vue-data-ui 3.25.3 → 3.25.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/dist/{Arrow-Bvx4_tSN.js → Arrow-DLn-pcrh.js} +1 -1
  2. package/dist/{BaseDraggableDialog-BCQY4Tir.js → BaseDraggableDialog-BM_R41j8.js} +2 -2
  3. package/dist/{BaseIcon-CVrQHhw1.js → BaseIcon-t83PDe9k.js} +1 -1
  4. package/dist/{BaseLegendToggle-BF-thEu0.js → BaseLegendToggle-__JnV08B.js} +1 -1
  5. package/dist/{BaseZoomControls-BAHeLgV8.js → BaseZoomControls-Xo16vFa4.js} +2 -2
  6. package/dist/{ColorPicker-B0CMtFkc.js → ColorPicker-ZJrR3Olp.js} +2 -2
  7. package/dist/{DataTable-BBpTEQY5.js → DataTable-COIO9gi4.js} +2 -2
  8. package/dist/{HillActions-ChMsbYib.js → HillActions-Cl-dNBZR.js} +1 -1
  9. package/dist/{Legend-DmitJZi5.js → Legend-X4kF4PvW.js} +2 -2
  10. package/dist/{NonSvgPenAndPaper-DNIpZGOP.js → NonSvgPenAndPaper-DS84BAOx.js} +12 -12
  11. package/dist/{PackageVersion-hRJtldYi.js → PackageVersion-5SWftabm.js} +1 -1
  12. package/dist/{PenAndPaper-DzM1vUXR.js → PenAndPaper-B_SdRSKH.js} +12 -12
  13. package/dist/{Shape-BBKymE00.js → Shape-CIqU-p2F.js} +1 -1
  14. package/dist/{SlicerPreview-W4PWXK69.js → SlicerPreview-GvsdvE-h.js} +27 -27
  15. package/dist/{SparkTooltip-9hXY74AD.js → SparkTooltip-C-Y-mDrc.js} +1 -1
  16. package/dist/{Title-DIf1lG-_.js → Title-CPHi-evi.js} +1 -1
  17. package/dist/{Tooltip-C3jBTIhR.js → Tooltip-hhrkQ3Lk.js} +1 -1
  18. package/dist/{UserOptions-m0uxKoiy.js → UserOptions-f3Q0nqrj.js} +2 -2
  19. package/dist/components/arrow.js +1 -1
  20. package/dist/components/vue-ui-3d-bar.js +1 -1
  21. package/dist/components/vue-ui-accordion.js +1 -1
  22. package/dist/components/vue-ui-age-pyramid.js +1 -1
  23. package/dist/components/vue-ui-annotator.js +1 -1
  24. package/dist/components/vue-ui-bullet.js +1 -1
  25. package/dist/components/vue-ui-bump.js +1 -1
  26. package/dist/components/vue-ui-candlestick.js +1 -1
  27. package/dist/components/vue-ui-carousel-table.js +1 -1
  28. package/dist/components/vue-ui-chestnut.js +1 -1
  29. package/dist/components/vue-ui-chord.js +1 -1
  30. package/dist/components/vue-ui-circle-pack.js +1 -1
  31. package/dist/components/vue-ui-cursor.js +1 -1
  32. package/dist/components/vue-ui-dag.js +1 -1
  33. package/dist/components/vue-ui-dashboard.js +1 -1
  34. package/dist/components/vue-ui-digits.js +1 -1
  35. package/dist/components/vue-ui-donut-evolution.js +1 -1
  36. package/dist/components/vue-ui-donut.js +1 -1
  37. package/dist/components/vue-ui-dumbbell.js +1 -1
  38. package/dist/components/vue-ui-flow.js +1 -1
  39. package/dist/components/vue-ui-funnel.js +1 -1
  40. package/dist/components/vue-ui-galaxy.js +1 -1
  41. package/dist/components/vue-ui-gauge.js +1 -1
  42. package/dist/components/vue-ui-geo.js +1 -1
  43. package/dist/components/vue-ui-gizmo.js +1 -1
  44. package/dist/components/vue-ui-heatmap.js +1 -1
  45. package/dist/components/vue-ui-hill.js +1 -1
  46. package/dist/components/vue-ui-history-plot.js +1 -1
  47. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  48. package/dist/components/vue-ui-icon.js +1 -1
  49. package/dist/components/vue-ui-kpi.js +1 -1
  50. package/dist/components/vue-ui-label.js +1 -1
  51. package/dist/components/vue-ui-mini-loader.js +1 -1
  52. package/dist/components/vue-ui-molecule.js +1 -1
  53. package/dist/components/vue-ui-mood-radar.js +1 -1
  54. package/dist/components/vue-ui-nested-donuts.js +1 -1
  55. package/dist/components/vue-ui-onion.js +1 -1
  56. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  57. package/dist/components/vue-ui-quadrant.js +1 -1
  58. package/dist/components/vue-ui-quick-chart.js +1 -1
  59. package/dist/components/vue-ui-radar.js +1 -1
  60. package/dist/components/vue-ui-rating.js +1 -1
  61. package/dist/components/vue-ui-relation-circle.js +1 -1
  62. package/dist/components/vue-ui-ridgeline.js +1 -1
  63. package/dist/components/vue-ui-rings.js +1 -1
  64. package/dist/components/vue-ui-scatter.js +1 -1
  65. package/dist/components/vue-ui-skeleton.js +1 -1
  66. package/dist/components/vue-ui-smiley.js +1 -1
  67. package/dist/components/vue-ui-spark-trend.js +1 -1
  68. package/dist/components/vue-ui-sparkbar.js +1 -1
  69. package/dist/components/vue-ui-sparkgauge.js +1 -1
  70. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  71. package/dist/components/vue-ui-sparkline.js +1 -1
  72. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  73. package/dist/components/vue-ui-stackbar.js +1 -1
  74. package/dist/components/vue-ui-stackline.js +1 -1
  75. package/dist/components/vue-ui-strip-plot.js +1 -1
  76. package/dist/components/vue-ui-table-heatmap.js +1 -1
  77. package/dist/components/vue-ui-table-sparkline.js +1 -1
  78. package/dist/components/vue-ui-table.js +1 -1
  79. package/dist/components/vue-ui-thermometer.js +1 -1
  80. package/dist/components/vue-ui-timer.js +1 -1
  81. package/dist/components/vue-ui-tiremarks.js +1 -1
  82. package/dist/components/vue-ui-treemap.js +1 -1
  83. package/dist/components/vue-ui-vertical-bar.js +1 -1
  84. package/dist/components/vue-ui-waffle.js +1 -1
  85. package/dist/components/vue-ui-wheel.js +1 -1
  86. package/dist/components/vue-ui-word-cloud.js +1 -1
  87. package/dist/components/vue-ui-world.js +1 -1
  88. package/dist/components/vue-ui-xy-canvas.js +1 -1
  89. package/dist/components/vue-ui-xy.js +1 -1
  90. package/dist/{dom-to-png-DPcw-QzB.js → dom-to-png-C6cQJ5Hq.js} +1 -1
  91. package/dist/{exposedLib-BGrCpxDo.js → exposedLib-CG3aXJ-v.js} +9 -9
  92. package/dist/{img-IjqD_xWl.js → img-DhGApYG0.js} +1 -1
  93. package/dist/{labelUtils-Bgt85NUY.js → labelUtils-BXX2NzRe.js} +1 -1
  94. package/dist/{lib-C7t_vY8w.js → lib-Dql7cqyA.js} +200 -177
  95. package/dist/{package-NccReU84.js → package-DmsdiyeS.js} +1 -1
  96. package/dist/{pdf-HBji623H.js → pdf-Di5yPEw9.js} +1 -1
  97. package/dist/{render-common-CHj9aLwI.js → render-common-zoPh9a78.js} +2 -2
  98. package/dist/ssr/vue-ui-donut.js +1 -1
  99. package/dist/ssr/vue-ui-xy.js +1 -1
  100. package/dist/ssr.js +2 -2
  101. package/dist/style.css +1 -1
  102. package/dist/{useNestedProp-BfTgFMXF.js → useNestedProp-Chvyfpl-.js} +1 -1
  103. package/dist/{usePrinter-VVTuFI6H.js → usePrinter-DISD7q5m.js} +2 -2
  104. package/dist/utils.js +2 -2
  105. package/dist/{vue-data-ui-xQI9KcZd.js → vue-data-ui-DTj71yB7.js} +70 -70
  106. package/dist/vue-data-ui.js +73 -73
  107. package/dist/vue-ui-3d-bar-CH8SpxS2.js +1829 -0
  108. package/dist/{vue-ui-accordion-DuARUUdY.js → vue-ui-accordion-D4zsdacF.js} +3 -3
  109. package/dist/{vue-ui-age-pyramid-D-ggLbES.js → vue-ui-age-pyramid-B9MUVi75.js} +214 -214
  110. package/dist/{vue-ui-annotator-MvDwnq7k.js → vue-ui-annotator-CmlcWPIm.js} +6 -6
  111. package/dist/vue-ui-bullet-n8KNnDwh.js +700 -0
  112. package/dist/{vue-ui-bump-DiH9-DLV.js → vue-ui-bump-BkOtQNWe.js} +54 -54
  113. package/dist/{vue-ui-candlestick-B486ChH8.js → vue-ui-candlestick-Bxlvqk49.js} +450 -446
  114. package/dist/vue-ui-carousel-table-CRgbs7jR.js +467 -0
  115. package/dist/{vue-ui-chestnut-DGESmviK.js → vue-ui-chestnut-ByDKbkG9.js} +273 -273
  116. package/dist/{vue-ui-chord-DQJ7RuvS.js → vue-ui-chord-DQRBgVOx.js} +31 -31
  117. package/dist/{vue-ui-circle-pack-YXuSpTIB.js → vue-ui-circle-pack-CBBc0HOe.js} +28 -28
  118. package/dist/{vue-ui-cursor-Dju_nWZh.js → vue-ui-cursor-BHyXRadA.js} +3 -3
  119. package/dist/{vue-ui-dag-C2f1v-IC.js → vue-ui-dag-CyVqaLbF.js} +75 -75
  120. package/dist/{vue-ui-dashboard-pNI0se0n.js → vue-ui-dashboard-7I-7wvCP.js} +69 -69
  121. package/dist/{vue-ui-digits-C5Z_lpSZ.js → vue-ui-digits-BBL8uERO.js} +3 -3
  122. package/dist/{vue-ui-donut-DZXYGFJc.js → vue-ui-donut-DcgUuefk.js} +101 -101
  123. package/dist/vue-ui-donut-DfiocufT.js +2413 -0
  124. package/dist/{vue-ui-donut-evolution-DQn-87Ak.js → vue-ui-donut-evolution-BoqO8By2.js} +374 -374
  125. package/dist/{vue-ui-dumbbell-CDtBLV2m.js → vue-ui-dumbbell-7M_oUQdi.js} +137 -137
  126. package/dist/{vue-ui-flow-B0L2gQ3k.js → vue-ui-flow-CoylrfnO.js} +40 -40
  127. package/dist/vue-ui-funnel-DaBYHWIC.js +747 -0
  128. package/dist/{vue-ui-galaxy-yF4pKrlD.js → vue-ui-galaxy-BIebStQ3.js} +245 -245
  129. package/dist/vue-ui-gauge-CwdTmiRP.js +932 -0
  130. package/dist/{vue-ui-geo-CFz30xe0.js → vue-ui-geo-jR4P4pbt.js} +36 -36
  131. package/dist/{vue-ui-gizmo-ys9jjs02.js → vue-ui-gizmo-D6W86s9o.js} +3 -3
  132. package/dist/{vue-ui-heatmap-qigx4Z5I.js → vue-ui-heatmap-DXYlGwqR.js} +180 -180
  133. package/dist/{vue-ui-hill-K3JKKF1b.js → vue-ui-hill-fFq7pm-g.js} +9 -9
  134. package/dist/vue-ui-history-plot-CgIELoD2.js +1696 -0
  135. package/dist/vue-ui-horizontal-bar-D3Sft4kp.js +1709 -0
  136. package/dist/{vue-ui-kpi-0W2GpUBQ.js → vue-ui-kpi-fzLsKlyE.js} +3 -3
  137. package/dist/{vue-ui-label-CBM2b0Aq.js → vue-ui-label-BSgLalWD.js} +64 -64
  138. package/dist/{vue-ui-mini-loader-C-2BQ3hi.js → vue-ui-mini-loader-BL2odRfu.js} +2 -2
  139. package/dist/vue-ui-molecule-DeHWkkhy.js +929 -0
  140. package/dist/{vue-ui-mood-radar-VCVoA-i7.js → vue-ui-mood-radar-bvGx6XgG.js} +201 -201
  141. package/dist/{vue-ui-nested-donuts-CFPhvIy3.js → vue-ui-nested-donuts-CeAV2xPk.js} +124 -124
  142. package/dist/{vue-ui-onion-BMucjktR.js → vue-ui-onion-B7oFulsQ.js} +119 -119
  143. package/dist/{vue-ui-parallel-coordinate-plot-BhahYf50.js → vue-ui-parallel-coordinate-plot-B_QJ4N9o.js} +376 -376
  144. package/dist/{vue-ui-quadrant-77idomwS.js → vue-ui-quadrant-DrKnz37q.js} +46 -46
  145. package/dist/{vue-ui-quick-chart-CNKuNur5.js → vue-ui-quick-chart-BFscCR59.js} +185 -185
  146. package/dist/{vue-ui-radar-CuT1AXHF.js → vue-ui-radar-Bzx69q8f.js} +311 -311
  147. package/dist/{vue-ui-rating-CTuSylET.js → vue-ui-rating-CimC9FQ9.js} +2 -2
  148. package/dist/vue-ui-relation-circle-DIQYyDGb.js +903 -0
  149. package/dist/{vue-ui-ridgeline-CijnGJ6-.js → vue-ui-ridgeline-CPEnM45x.js} +199 -199
  150. package/dist/{vue-ui-rings-DDGKIiGT.js → vue-ui-rings-qPL5Iwji.js} +327 -327
  151. package/dist/vue-ui-scatter-BB0ClTsU.js +2403 -0
  152. package/dist/{vue-ui-skeleton-Clzzx8hc.js → vue-ui-skeleton-zmbcOVEf.js} +59 -59
  153. package/dist/{vue-ui-smiley-DILPVI14.js → vue-ui-smiley-DzPkCMN-.js} +2 -2
  154. package/dist/{vue-ui-spark-trend-CYIyrTQj.js → vue-ui-spark-trend-Ciq7-k_q.js} +8 -8
  155. package/dist/{vue-ui-sparkbar-C2HcYmPm.js → vue-ui-sparkbar-D1M7-naP.js} +142 -142
  156. package/dist/{vue-ui-sparkgauge-BLJ0mImj.js → vue-ui-sparkgauge-rsqaeR_n.js} +33 -33
  157. package/dist/{vue-ui-sparkhistogram-1FYy_qM3.js → vue-ui-sparkhistogram-C4WXt2Ni.js} +26 -26
  158. package/dist/{vue-ui-sparkline-C11KKbIn.js → vue-ui-sparkline-Dv7XrEzO.js} +253 -253
  159. package/dist/vue-ui-sparkstackbar-DDOXdeV-.js +738 -0
  160. package/dist/vue-ui-stackbar-C_hMnOLb.js +2353 -0
  161. package/dist/vue-ui-stackline-BHGi63lD.js +2467 -0
  162. package/dist/vue-ui-strip-plot-Cygpn-l8.js +1738 -0
  163. package/dist/vue-ui-table-BQna1wL6.js +1352 -0
  164. package/dist/{vue-ui-table-heatmap-Dj06PSQK.js → vue-ui-table-heatmap-Dv_ZKKm3.js} +9 -9
  165. package/dist/{vue-ui-table-sparkline-1h7A5F1N.js → vue-ui-table-sparkline-BCuimtk6.js} +13 -13
  166. package/dist/{vue-ui-thermometer-CVKlj7fU.js → vue-ui-thermometer-DytlLJ32.js} +28 -28
  167. package/dist/{vue-ui-timer-BWz6K56E.js → vue-ui-timer-CvHP4HoW.js} +5 -5
  168. package/dist/{vue-ui-tiremarks-D26MLo5F.js → vue-ui-tiremarks-BvjdZwgh.js} +6 -6
  169. package/dist/{vue-ui-treemap-33VL-HnF.js → vue-ui-treemap-C5OpqzSc.js} +39 -39
  170. package/dist/vue-ui-waffle-B7T_Zzan.js +1619 -0
  171. package/dist/{vue-ui-wheel-BPbR_-t8.js → vue-ui-wheel-D1B0k7IW.js} +23 -23
  172. package/dist/{vue-ui-word-cloud-RFcpvswb.js → vue-ui-word-cloud-C4pX6jop.js} +27 -27
  173. package/dist/{vue-ui-world-CseHQjz7.js → vue-ui-world-D0_2upjg.js} +116 -116
  174. package/dist/{vue-ui-xy-D_biv7Wg.js → vue-ui-xy-Ck41KYqF.js} +1493 -1489
  175. package/dist/{vue-ui-xy-C3UI9YIM.js → vue-ui-xy-D_5FfaH-.js} +423 -422
  176. package/dist/{vue-ui-xy-canvas-R1I0sffy.js → vue-ui-xy-canvas-B_8Mu19r.js} +77 -77
  177. package/package.json +1 -1
  178. package/dist/vue-ui-3d-bar-Cf5mJEzr.js +0 -1829
  179. package/dist/vue-ui-bullet-DWe51l3b.js +0 -700
  180. package/dist/vue-ui-carousel-table-BPNQQVsu.js +0 -467
  181. package/dist/vue-ui-donut-CaMaNvIF.js +0 -2413
  182. package/dist/vue-ui-funnel-G5nO77o5.js +0 -747
  183. package/dist/vue-ui-gauge-DA92q6HZ.js +0 -932
  184. package/dist/vue-ui-history-plot-DUoXwHLn.js +0 -1696
  185. package/dist/vue-ui-horizontal-bar-C51hv9PU.js +0 -1709
  186. package/dist/vue-ui-molecule-B1ChvZql.js +0 -929
  187. package/dist/vue-ui-relation-circle-DxONGvTM.js +0 -903
  188. package/dist/vue-ui-scatter-Cwlhv9y6.js +0 -2403
  189. package/dist/vue-ui-sparkstackbar-B4H_cgzW.js +0 -738
  190. package/dist/vue-ui-stackbar-CBOAAVtS.js +0 -2349
  191. package/dist/vue-ui-stackline-24PeB3yN.js +0 -2463
  192. package/dist/vue-ui-strip-plot-C3Q1lECl.js +0 -1738
  193. package/dist/vue-ui-table-DMJWplCT.js +0 -1352
  194. package/dist/vue-ui-waffle-DIFpyE2V.js +0 -1619
@@ -0,0 +1,903 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { Lt as t, Pt as n, X as r, Xt as i, Yt as a, Zt as o, ht as ee, i as s, nt as te, q as ne, r as re, t as ie, w as ae } from "./lib-Dql7cqyA.js";
3
+ import { n as oe, t as se } from "./useHints-Dq_w2E8B.js";
4
+ import { t as ce } from "./useConfig-CyCVHo81.js";
5
+ import { t as le } from "./usePrinter-DISD7q5m.js";
6
+ import { n as ue, t as de } from "./BaseScanner-DZvpgOjM.js";
7
+ import { t as c } from "./useNestedProp-Chvyfpl-.js";
8
+ import { t as fe } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as pe } from "./useChartExport-iwOqiIWX.js";
10
+ import { t as me } from "./img-DhGApYG0.js";
11
+ import { n as he } from "./Title-CPHi-evi.js";
12
+ import { t as ge } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
+ import { l as _e, t as ve } from "./useResponsive-ZtArZtUf.js";
14
+ import { t as ye } from "./A11yDataTable-DdRsVULz.js";
15
+ import { t as be } from "./useUserOptionState-DK-_1ddE.js";
16
+ import { t as xe } from "./useChartAccessibility-DYqac8yF.js";
17
+ import { t as Se } from "./useAutoSizeLabelsInsideViewbox-DvDwcwi_.js";
18
+ import { t as Ce } from "./vue_ui_relation_circle-D0p4mXmv.js";
19
+ import { Fragment as l, computed as u, createBlock as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createSlots as we, createTextVNode as Te, createVNode as Ee, defineAsyncComponent as De, guardReactiveProps as h, mergeProps as Oe, normalizeClass as ke, normalizeProps as g, normalizeStyle as _, onBeforeUnmount as Ae, onMounted as je, openBlock as v, ref as y, renderList as b, renderSlot as x, shallowRef as Me, toDisplayString as S, toRefs as Ne, unref as C, useCssVars as Pe, watch as w, withCtx as T } from "vue";
20
+ //#region src/components/vue-ui-relation-circle.vue
21
+ var Fe = /* @__PURE__ */ e({ default: () => E }), Ie = ["id"], Le = ["id"], Re = { style: { position: "relative" } }, ze = [
22
+ "xmlns",
23
+ "viewBox",
24
+ "aria-describedby"
25
+ ], Be = ["width", "height"], Ve = [
26
+ "cx",
27
+ "cy",
28
+ "r",
29
+ "stroke",
30
+ "stroke-width"
31
+ ], He = { key: 1 }, Ue = [
32
+ "stroke",
33
+ "d",
34
+ "stroke-width"
35
+ ], We = { style: { "pointer-events": "none" } }, Ge = [
36
+ "cx",
37
+ "cy",
38
+ "fill",
39
+ "r",
40
+ "stroke"
41
+ ], Ke = [
42
+ "x",
43
+ "y",
44
+ "fill",
45
+ "font-size"
46
+ ], qe = { key: 2 }, Je = [
47
+ "stroke",
48
+ "stroke-width",
49
+ "x1",
50
+ "x2",
51
+ "y1",
52
+ "y2"
53
+ ], Ye = { style: { "pointer-events": "none" } }, Xe = [
54
+ "cx",
55
+ "cy",
56
+ "fill",
57
+ "r",
58
+ "stroke"
59
+ ], Ze = [
60
+ "x",
61
+ "y",
62
+ "fill",
63
+ "font-size"
64
+ ], Qe = [
65
+ "text-anchor",
66
+ "transform",
67
+ "x",
68
+ "y",
69
+ "font-weight",
70
+ "font-size",
71
+ "fill",
72
+ "text-decoration",
73
+ "onClick",
74
+ "onMouseenter",
75
+ "onMouseleave"
76
+ ], $e = [
77
+ "cx",
78
+ "cy",
79
+ "fill",
80
+ "stroke",
81
+ "r",
82
+ "onClick",
83
+ "onMouseenter",
84
+ "onMouseleave"
85
+ ], et = {
86
+ key: 0,
87
+ style: {
88
+ position: "absolute",
89
+ top: "100%",
90
+ left: "0",
91
+ width: "100%"
92
+ },
93
+ "data-dom-to-png-ignore": "",
94
+ "aria-hidden": "true"
95
+ }, tt = {
96
+ key: 5,
97
+ class: "vue-data-ui-watermark"
98
+ }, E = /*#__PURE__*/ ge({
99
+ __name: "vue-ui-relation-circle",
100
+ props: {
101
+ dataset: {
102
+ type: Array,
103
+ default() {
104
+ return [];
105
+ }
106
+ },
107
+ config: {
108
+ type: Object,
109
+ default() {
110
+ return {};
111
+ }
112
+ }
113
+ },
114
+ emits: ["copyAlt"],
115
+ setup(e, { expose: ge, emit: Fe }) {
116
+ Pe((e) => ({
117
+ ebbe27d4: jt.value,
118
+ v6d2782f5: At.value,
119
+ cec75fd2: Mt.value
120
+ }));
121
+ let E = De(() => import("./PenAndPaper-B_SdRSKH.js").then((e) => e.t)), nt = De(() => import("./UserOptions-f3Q0nqrj.js").then((e) => e.n)), rt = De(() => import("./PackageVersion-5SWftabm.js").then((e) => e.t)), { vue_ui_relation_circle: it } = ce(), { isThemeValid: at, warnInvalidTheme: ot } = fe(), D = e, st = Fe, ct = u(() => !!D.dataset && Object.keys(D.dataset).length), O = y(ne()), lt = y(0), k = y(null), ut = y(null), dt = y(null), ft = y(null), pt = y(0), A = y(null), j = y(!1), M = y(xt());
122
+ oe({
123
+ config: () => M.value,
124
+ dataset: () => D.dataset,
125
+ component: "VueUiRelationCircle",
126
+ rules: [se.noHint]
127
+ });
128
+ let N = u(() => M.value.userOptions.useCursorPointer), mt = u(() => o({
129
+ defaultConfig: {
130
+ userOptions: { show: !1 },
131
+ customPalette: Array(7).fill("#CACACA"),
132
+ style: {
133
+ backgroundColor: "#99999930",
134
+ labels: { color: "#6A6A6A" },
135
+ circle: { stroke: "#6A6A6A" },
136
+ plot: {
137
+ color: "#6A6A6A",
138
+ useSerieColor: !0
139
+ },
140
+ links: { maxWidth: 2 }
141
+ }
142
+ },
143
+ userConfig: M.value.skeletonConfig ?? {}
144
+ })), { loading: ht, FINAL_DATASET: gt, manualLoading: _t } = ue({
145
+ ...Ne(D),
146
+ FINAL_CONFIG: M,
147
+ prepareConfig: xt,
148
+ skeletonDataset: D.config?.skeletonDataset ?? [
149
+ {
150
+ id: "A",
151
+ label: "_",
152
+ relations: [
153
+ "B",
154
+ "C",
155
+ "D",
156
+ "E",
157
+ "F",
158
+ "G"
159
+ ]
160
+ },
161
+ {
162
+ id: "B",
163
+ label: "_",
164
+ relations: ["A"]
165
+ },
166
+ {
167
+ id: "C",
168
+ label: "_",
169
+ relations: ["A"]
170
+ },
171
+ {
172
+ id: "D",
173
+ label: "_",
174
+ relations: ["A"]
175
+ },
176
+ {
177
+ id: "E",
178
+ label: "_",
179
+ relations: ["A"]
180
+ },
181
+ {
182
+ id: "F",
183
+ label: "_",
184
+ relations: ["A"]
185
+ },
186
+ {
187
+ id: "G",
188
+ label: "_",
189
+ relations: ["A"]
190
+ }
191
+ ],
192
+ skeletonConfig: o({
193
+ defaultConfig: M.value,
194
+ userConfig: mt.value
195
+ })
196
+ }), { userOptionsVisible: vt, setUserOptionsVisibility: yt, keepUserOptionState: bt } = be({ config: M.value }), { svgRef: P } = xe({ config: M.value.style.title });
197
+ function xt() {
198
+ let e = c({
199
+ userConfig: D.config,
200
+ defaultConfig: it
201
+ }), n = e.theme;
202
+ if (!n) return e;
203
+ if (!at.value(e)) return ot(e), e;
204
+ let r = c({
205
+ userConfig: Ce[n] || D.config,
206
+ defaultConfig: e
207
+ }), i = c({
208
+ userConfig: D.config,
209
+ defaultConfig: r
210
+ });
211
+ return {
212
+ ...i,
213
+ customPalette: i.customPalette.length ? i.customPalette : a[n] || t
214
+ };
215
+ }
216
+ w(() => D.config, (e) => {
217
+ M.value = xt(), vt.value = !M.value.userOptions.showOnChartHover, B.value = M.value.style.size, V.value = M.value.style.weightLabels.size, H.value = M.value.style.plot.radius, U.value = M.value.style.labels.fontSize, W.value.height = M.value.style.size, W.value.width = M.value.style.size, Pt(), pt.value += 1;
218
+ }, { deep: !0 }), w(() => D.dataset, (e) => {
219
+ Array.isArray(e) && e.length > 0 && (_t.value = !1);
220
+ }, { deep: !0 });
221
+ let { isPrinting: St, isImaging: Ct, generatePdf: wt, generateImage: Tt } = le({
222
+ elementId: `relation_circle_${O.value}`,
223
+ fileName: M.value.style.title.text || "vue-ui-relation-circle",
224
+ options: M.value.userOptions.print
225
+ }), Et = u(() => M.value.userOptions.show && !M.value.style.title.text), Dt = u(() => ae(M.value.customPalette)), F = y([]), I = y([]), L = y({}), R = y([]), Ot = y(0), z = u(() => gt.value.slice(0, M.value.style.limit).map((e) => {
226
+ let t = Array.isArray(e.relations) ? e.relations : [];
227
+ return {
228
+ ...e,
229
+ weights: Array.isArray(e.weights) ? e.weights : Array(t.length).fill(1),
230
+ relations: t
231
+ };
232
+ }));
233
+ w(z, () => {
234
+ F.value = [], I.value = [], Lt(), zt();
235
+ });
236
+ let B = y(M.value.style.size), V = y(M.value.style.weightLabels.size), H = y(M.value.style.plot.radius), U = y(M.value.style.labels.fontSize), W = y({
237
+ height: M.value.style.size,
238
+ width: M.value.style.size
239
+ }), G = u({
240
+ get() {
241
+ return B.value * M.value.style.circle.radiusProportion;
242
+ },
243
+ set(e) {
244
+ return e;
245
+ }
246
+ }), kt = u(() => M.value.style.links.curved), At = u(() => `${M.value.style.animation.speedMs}ms`), jt = u(() => G.value * 2), Mt = u(() => G.value * 4), K = Me(null), q = Me(null);
247
+ je(() => {
248
+ Pt(), document.getElementById(`relation_circle_${O.value}`).addEventListener("click", It);
249
+ });
250
+ let Nt = u(() => M.value.debug);
251
+ function Pt() {
252
+ if (n(D.dataset) ? (te({
253
+ componentName: "VueUiRelationCircle",
254
+ type: "dataset",
255
+ debug: Nt.value
256
+ }), _t.value = !0) : Nt.value && D.dataset.forEach((e, t) => {
257
+ ee({
258
+ datasetObject: e,
259
+ requiredAttributes: [
260
+ "id",
261
+ "label",
262
+ "relations",
263
+ "weights"
264
+ ]
265
+ }).forEach((e) => {
266
+ te({
267
+ componentName: "VueUiRelationCircle",
268
+ type: "datasetSerieAttribute",
269
+ property: e,
270
+ index: t
271
+ });
272
+ });
273
+ }), n(D.dataset) || (_t.value = M.value.loading), M.value.responsive) {
274
+ let e = _e(() => {
275
+ let { width: e, height: t } = ve({
276
+ chart: k.value,
277
+ title: M.value.style.title.text ? ut.value : null,
278
+ source: dt.value,
279
+ noTitle: ft.value
280
+ });
281
+ requestAnimationFrame(() => {
282
+ B.value = Math.min(e, t), W.value.width = Math.max(.1, e), W.value.height = Math.max(.1, t - 12), G.value = B.value * M.value.style.circle.radiusProportion, F.value = [], I.value = [], Lt(), zt(), Ft(), M.value.responsiveProportionalSizing ? (V.value = i({
283
+ relator: B.value,
284
+ adjuster: M.value.style.size,
285
+ source: M.value.style.weightLabels.size,
286
+ threshold: 6,
287
+ fallback: 6
288
+ }), H.value = i({
289
+ relator: B.value,
290
+ adjuster: M.value.style.size,
291
+ source: M.value.style.plot.radius,
292
+ threshold: 1,
293
+ fallback: 1
294
+ }), U.value = i({
295
+ relator: B.value,
296
+ adjuster: M.value.style.size,
297
+ source: M.value.style.labels.fontSize,
298
+ threshold: 6,
299
+ fallback: 6
300
+ })) : (V.value = M.value.style.weightLabels.size, H.value = M.value.style.plot.radius, U.value = M.value.style.labels.fontSize);
301
+ });
302
+ });
303
+ K.value && (q.value && K.value.unobserve(q.value), K.value.disconnect()), K.value = new ResizeObserver(e), q.value = k.value.parentNode, K.value.observe(q.value);
304
+ } else F.value = [], I.value = [], Lt(), zt();
305
+ Ft();
306
+ }
307
+ Ae(() => {
308
+ document.getElementById(`relation_circle_${O.value}`).removeEventListener("click", It), K.value && (q.value && K.value.unobserve(q.value), K.value.disconnect());
309
+ });
310
+ let { autoSizeLabels: Ft } = Se({
311
+ svgRef: P,
312
+ fontSize: M.value.style.labels.fontSize,
313
+ minFontSize: M.value.style.labels.minFontSize,
314
+ sizeRef: U,
315
+ labelClass: ".vue-ui-relation-circle-legend"
316
+ });
317
+ function It(e) {
318
+ let t = e.target;
319
+ t && Array.from(t.classList).includes("vue-ui-user-options") || t && Array.from(t.classList).includes("vue-ui-user-options-summary") || t && Array.from(t.classList).includes("vue-data-ui-button") || t && Array.from(t.classList).includes("vue-ui-relation-circle-legend") || (L.value = {}, R.value = []);
320
+ }
321
+ function Lt() {
322
+ let e = 6.28319 / z.value.length, n = 360 / z.value.length, r = 0, i = 0;
323
+ z.value.forEach((a, o) => {
324
+ let ee = a.weights.reduce((e, t) => e + t, 0), s = G.value * Math.cos(r) + W.value.width / 2, te = G.value * Math.sin(r) + W.value.height / 2 + M.value.style.circle.offsetY;
325
+ F.value.push({
326
+ x: s,
327
+ y: te,
328
+ ...a,
329
+ color: a.color ? a.color : Dt.value[o] ? Dt.value[o] : t[o],
330
+ regAngle: i,
331
+ totalWeight: ee
332
+ }), r += e, i += n;
333
+ });
334
+ }
335
+ function Rt(e, t) {
336
+ return {
337
+ x: (e.x + t.x) / 2,
338
+ y: (e.y + t.y) / 2
339
+ };
340
+ }
341
+ function zt() {
342
+ I.value = [], F.value.forEach((e) => {
343
+ F.value.filter((t) => t.relations.includes(e.id)).forEach((t, n) => {
344
+ let r = t.relations.indexOf(e.id);
345
+ I.value.push({
346
+ weight: t.weights[r] ? t.weights[r] : 0,
347
+ relationId: `${e.id}_${t.id}`,
348
+ x1: e.x,
349
+ y1: e.y,
350
+ x2: t.x,
351
+ y2: t.y,
352
+ colorSource: e.color,
353
+ colorTarget: t.color,
354
+ midPointLine: Rt({
355
+ x: e.x,
356
+ y: e.y
357
+ }, {
358
+ x: t.x,
359
+ y: t.y
360
+ }),
361
+ midPointBezier: Bt({
362
+ x1: e.x,
363
+ x2: t.x,
364
+ y1: e.y,
365
+ y2: t.y
366
+ }),
367
+ ...e
368
+ });
369
+ });
370
+ });
371
+ }
372
+ function Bt(e) {
373
+ let t = {
374
+ x: e.x1,
375
+ y: e.y1
376
+ }, n = {
377
+ x: e.x2,
378
+ y: e.y2
379
+ }, r = {
380
+ x: e.x1,
381
+ y: e.y1
382
+ }, i = {
383
+ x: W.value.width / 2,
384
+ y: W.value.height / 2 + M.value.style.circle.offsetY
385
+ }, a = .5;
386
+ return {
387
+ x: .5 ** 3 * t.x + 3 * .5 ** 2 * a * r.x + 1.5 * a ** 2 * i.x + a ** 3 * n.x,
388
+ y: .5 ** 3 * t.y + 3 * .5 ** 2 * a * r.y + 1.5 * a ** 2 * i.y + a ** 3 * n.y
389
+ };
390
+ }
391
+ let Vt = u(() => Math.max(...I.value.map((e) => e.weight)));
392
+ function Ht(e) {
393
+ return Object.hasOwn(L.value, "x") ? R.value.includes(e.id) ? "opacity:1" : "opacity:0.1" : "opacity:1";
394
+ }
395
+ function J(e) {
396
+ return e.colorSource;
397
+ }
398
+ function Ut(e) {
399
+ return Object.hasOwn(L.value, "x") ? R.value.includes(e.id) && e.relationId === `${e.id}_${L.value.id}` || e.relationId === `${L.value.id}_${e.id}` ? `opacity:1;stroke-width:${Qt(e)}` : "opacity: 0" : "opacity: 1";
400
+ }
401
+ function Y(e) {
402
+ return Object.hasOwn(L.value, "x") ? !!(R.value.includes(e.id) && e.relationId === `${e.id}_${L.value.id}` || e.relationId === `${L.value.id}_${e.id}`) : !1;
403
+ }
404
+ function Wt(e) {
405
+ return e.regAngle > 90 && e.regAngle < 270 ? "end" : "start";
406
+ }
407
+ function Gt(e) {
408
+ return e.regAngle > 90 && e.regAngle < 270 ? e.x - 5 : e.x + 5;
409
+ }
410
+ function Kt(e) {
411
+ return Object.hasOwn(L.value, "x") ? L.value.id === e.id || R.value.includes(e.id) ? "opacity:1" : "opacity:0.2" : "opacity:1";
412
+ }
413
+ function qt(e) {
414
+ return e.regAngle > 90 && e.regAngle < 270 ? `rotate(${e.regAngle + 180},${e.x},${e.y})` : `rotate(${e.regAngle},${e.x},${e.y})`;
415
+ }
416
+ let X = y(null);
417
+ function Jt(e, t) {
418
+ X.value = t, A.value = t, M.value.events.datapointEnter && M.value.events.datapointEnter({
419
+ datapoint: e,
420
+ seriesIndex: t
421
+ });
422
+ }
423
+ function Yt(e, t) {
424
+ X.value = null, j.value || (A.value = null), M.value.events.datapointLeave && M.value.events.datapointLeave({
425
+ datapoint: e,
426
+ seriesIndex: t
427
+ });
428
+ }
429
+ function Xt(e, t) {
430
+ e && (M.value.events.datapointClick && M.value.events.datapointClick({
431
+ datapoint: e,
432
+ seriesIndex: t
433
+ }), Ot.value = 360 - e.regAngle, L.value.id && e.id === L.value.id ? (L.value = {}, R.value = []) : (L.value = e, R.value = [...e.relations]));
434
+ }
435
+ function Zt(e, t) {
436
+ A.value = t, Xt(e, t);
437
+ }
438
+ function Qt(e) {
439
+ let t = e.weight / Vt.value * M.value.style.links.maxWidth;
440
+ return Math.max(.3, t);
441
+ }
442
+ let Z = y(!1);
443
+ function $t(e) {
444
+ Z.value = e, lt.value += 1;
445
+ }
446
+ let Q = y(!1);
447
+ function $() {
448
+ Q.value = !Q.value;
449
+ }
450
+ async function en({ scale: e = 2 } = {}) {
451
+ if (!k.value) return;
452
+ let { width: t, height: n } = k.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await me({
453
+ domElement: k.value,
454
+ base64: !0,
455
+ img: !0,
456
+ scale: e
457
+ });
458
+ return {
459
+ imageUri: i,
460
+ base64: a,
461
+ title: M.value.style.title.text,
462
+ width: t,
463
+ height: n,
464
+ aspectRatio: r
465
+ };
466
+ }
467
+ let tn = u(() => M.value.style.backgroundColor), nn = u(() => M.value.style.title), { isCallbackImaging: rn, isCallbackSvg: an, generateSvg: on, onGenerateImage: sn } = pe({
468
+ svg: P,
469
+ title: nn,
470
+ legend: null,
471
+ legendItems: null,
472
+ backgroundColor: tn,
473
+ getSvgCallback: () => M.value.userOptions.callbacks.svg,
474
+ generateImage: Tt
475
+ });
476
+ async function cn() {
477
+ if (st("copyAlt", {
478
+ config: M.value,
479
+ dataset: z.value
480
+ }), !M.value.userOptions.callbacks.altCopy) {
481
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
482
+ return;
483
+ }
484
+ await Promise.resolve(M.value.userOptions.callbacks.altCopy({
485
+ config: M.value,
486
+ dataset: z.value
487
+ }));
488
+ }
489
+ function ln() {
490
+ j.value = !0, F.value.length && A.value === null && (A.value = 0);
491
+ }
492
+ function un() {
493
+ j.value = !1, A.value = null;
494
+ }
495
+ function dn(e) {
496
+ if (!P.value || Q.value || document.activeElement !== P.value || !F.value.length) return;
497
+ let t = ["ArrowLeft", "ArrowUp"].includes(e.key), n = ["ArrowRight", "ArrowDown"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
498
+ if (!t && !n && !r && !i) return;
499
+ if (e.preventDefault(), e.stopPropagation(), i) {
500
+ A.value = null, L.value = {}, R.value = [];
501
+ return;
502
+ }
503
+ if (r) {
504
+ if (A.value === null) return;
505
+ let e = F.value[A.value];
506
+ if (!e) return;
507
+ Xt(e, A.value);
508
+ return;
509
+ }
510
+ let a = A.value;
511
+ a === null || a < 0 || a >= F.value.length ? a = n ? 0 : F.value.length - 1 : n ? (a += 1, a >= F.value.length && (a = 0)) : t && (--a, a < 0 && (a = F.value.length - 1)), A.value = a, X.value = a;
512
+ let o = F.value[a];
513
+ o && M.value.events.datapointEnter && M.value.events.datapointEnter({
514
+ datapoint: o,
515
+ seriesIndex: a
516
+ });
517
+ }
518
+ let fn = u(() => ({
519
+ headers: [
520
+ "ID",
521
+ "Label",
522
+ "Total weight",
523
+ "Relations count",
524
+ "Relations"
525
+ ],
526
+ rows: z.value.map((e) => {
527
+ let t = e.relations.map((e) => z.value.find((t) => t.id === e)?.label || e).join(", "), n = (e.weights || []).reduce((e, t) => e + Number(t || 0), 0);
528
+ return [
529
+ e.id,
530
+ e.label,
531
+ n,
532
+ e.relations.length,
533
+ t
534
+ ];
535
+ })
536
+ }));
537
+ return ge({
538
+ getImage: en,
539
+ generatePdf: wt,
540
+ generateSvg: on,
541
+ generateImage: Tt,
542
+ toggleAnnotator: $,
543
+ toggleFullscreen: $t,
544
+ copyAlt: cn
545
+ }), (e, t) => (v(), p("div", {
546
+ ref_key: "relationCircleChart",
547
+ ref: k,
548
+ class: "vue-data-ui-component vue-ui-relation-circle",
549
+ style: _(`width:100%;background:${M.value.style.backgroundColor};text-align:center;${M.value.responsive ? "height: 100%" : ""}`),
550
+ id: `relation_circle_${O.value}`,
551
+ onMouseenter: t[0] ||= () => C(yt)(!0),
552
+ onMouseleave: t[1] ||= () => C(yt)(!1)
553
+ }, [
554
+ m("div", {
555
+ id: `chart-instructions-${O.value}`,
556
+ class: "sr-only"
557
+ }, [m("p", null, S(M.value.a11y.translations.keyboardNavigation), 1)], 8, Le),
558
+ fn.value?.rows?.length ? (v(), d(ye, {
559
+ key: 0,
560
+ uid: O.value,
561
+ head: fn.value.headers,
562
+ body: fn.value.rows,
563
+ notice: M.value.a11y.translations.tableAvailable,
564
+ caption: M.value.a11y.translations.tableCaption
565
+ }, null, 8, [
566
+ "uid",
567
+ "head",
568
+ "body",
569
+ "notice",
570
+ "caption"
571
+ ])) : f("", !0),
572
+ M.value.userOptions.buttons.annotator ? (v(), d(C(E), {
573
+ key: 1,
574
+ svgRef: C(P),
575
+ backgroundColor: M.value.style.backgroundColor,
576
+ color: M.value.style.color,
577
+ active: Q.value,
578
+ isCursorPointer: N.value,
579
+ onClose: $
580
+ }, {
581
+ "annotator-action-close": T(() => [x(e.$slots, "annotator-action-close", {}, void 0, !0)]),
582
+ "annotator-action-color": T(({ color: t }) => [x(e.$slots, "annotator-action-color", g(h({ color: t })), void 0, !0)]),
583
+ "annotator-action-draw": T(({ mode: t }) => [x(e.$slots, "annotator-action-draw", g(h({ mode: t })), void 0, !0)]),
584
+ "annotator-action-undo": T(({ disabled: t }) => [x(e.$slots, "annotator-action-undo", g(h({ disabled: t })), void 0, !0)]),
585
+ "annotator-action-redo": T(({ disabled: t }) => [x(e.$slots, "annotator-action-redo", g(h({ disabled: t })), void 0, !0)]),
586
+ "annotator-action-delete": T(({ disabled: t }) => [x(e.$slots, "annotator-action-delete", g(h({ disabled: t })), void 0, !0)]),
587
+ _: 3
588
+ }, 8, [
589
+ "svgRef",
590
+ "backgroundColor",
591
+ "color",
592
+ "active",
593
+ "isCursorPointer"
594
+ ])) : f("", !0),
595
+ Et.value ? (v(), p("div", {
596
+ key: 2,
597
+ ref_key: "noTitle",
598
+ ref: ft,
599
+ class: "vue-data-ui-no-title-space",
600
+ style: "height:36px; width: 100%;background:transparent"
601
+ }, null, 512)) : f("", !0),
602
+ M.value.style.title.text ? (v(), p("div", {
603
+ key: 3,
604
+ ref_key: "chartTitle",
605
+ ref: ut,
606
+ style: "width:100%;background:transparent"
607
+ }, [(v(), d(he, {
608
+ key: `title_${pt.value}`,
609
+ config: {
610
+ title: {
611
+ cy: "relation-div-title",
612
+ ...M.value.style.title
613
+ },
614
+ subtitle: {
615
+ cy: "relation-div-subtitle",
616
+ ...M.value.style.title.subtitle
617
+ }
618
+ }
619
+ }, null, 8, ["config"]))], 512)) : f("", !0),
620
+ M.value.userOptions.show && ct.value && (C(bt) || C(vt)) ? (v(), d(C(nt), {
621
+ ref: "details",
622
+ key: `user_options_${lt.value}`,
623
+ backgroundColor: M.value.style.backgroundColor,
624
+ color: M.value.style.color,
625
+ isPrinting: C(St),
626
+ isImaging: C(Ct),
627
+ uid: O.value,
628
+ hasPdf: M.value.userOptions.buttons.pdf,
629
+ hasImg: M.value.userOptions.buttons.img,
630
+ hasSvg: M.value.userOptions.buttons.svg,
631
+ hasFullscreen: M.value.userOptions.buttons.fullscreen,
632
+ hasAltCopy: M.value.userOptions.buttons.altCopy,
633
+ hasXls: !1,
634
+ isFullscreen: Z.value,
635
+ titles: { ...M.value.userOptions.buttonTitles },
636
+ chartElement: k.value,
637
+ position: M.value.userOptions.position,
638
+ hasAnnotator: M.value.userOptions.buttons.annotator,
639
+ isAnnotation: Q.value,
640
+ callbacks: M.value.userOptions.callbacks,
641
+ printScale: M.value.userOptions.print.scale,
642
+ isCursorPointer: N.value,
643
+ onToggleFullscreen: $t,
644
+ onGeneratePdf: C(wt),
645
+ onGenerateImage: C(sn),
646
+ onGenerateSvg: C(on),
647
+ onToggleAnnotator: $,
648
+ onCopyAlt: cn,
649
+ style: _({ visibility: C(bt) ? C(vt) ? "visible" : "hidden" : "visible" })
650
+ }, we({ _: 2 }, [
651
+ e.$slots.menuIcon ? {
652
+ name: "menuIcon",
653
+ fn: T(({ isOpen: t, color: n }) => [x(e.$slots, "menuIcon", g(h({
654
+ isOpen: t,
655
+ color: n
656
+ })), void 0, !0)]),
657
+ key: "0"
658
+ } : void 0,
659
+ e.$slots.optionPdf ? {
660
+ name: "optionPdf",
661
+ fn: T(() => [x(e.$slots, "optionPdf", {}, void 0, !0)]),
662
+ key: "1"
663
+ } : void 0,
664
+ e.$slots.optionImg ? {
665
+ name: "optionImg",
666
+ fn: T(() => [x(e.$slots, "optionImg", {}, void 0, !0)]),
667
+ key: "2"
668
+ } : void 0,
669
+ e.$slots.optionSvg ? {
670
+ name: "optionSvg",
671
+ fn: T(() => [x(e.$slots, "optionSvg", {}, void 0, !0)]),
672
+ key: "3"
673
+ } : void 0,
674
+ e.$slots.optionFullscreen ? {
675
+ name: "optionFullscreen",
676
+ fn: T(({ toggleFullscreen: t, isFullscreen: n }) => [x(e.$slots, "optionFullscreen", g(h({
677
+ toggleFullscreen: t,
678
+ isFullscreen: n
679
+ })), void 0, !0)]),
680
+ key: "4"
681
+ } : void 0,
682
+ e.$slots.optionAnnotator ? {
683
+ name: "optionAnnotator",
684
+ fn: T(({ toggleAnnotator: t, isAnnotator: n }) => [x(e.$slots, "optionAnnotator", g(h({
685
+ toggleAnnotator: t,
686
+ isAnnotator: n
687
+ })), void 0, !0)]),
688
+ key: "5"
689
+ } : void 0,
690
+ e.$slots.optionAltCopy ? {
691
+ name: "optionAltCopy",
692
+ fn: T(({ altCopy: t }) => [x(e.$slots, "optionAltCopy", g(h({ altCopy: t })), void 0, !0)]),
693
+ key: "6"
694
+ } : void 0,
695
+ e.$slots["custom-menu-before"] ? {
696
+ name: "custom-menu-before",
697
+ fn: T(() => [x(e.$slots, "custom-menu-before", {}, void 0, !0)]),
698
+ key: "7"
699
+ } : void 0,
700
+ e.$slots["custom-menu-after"] ? {
701
+ name: "custom-menu-after",
702
+ fn: T(() => [x(e.$slots, "custom-menu-after", {}, void 0, !0)]),
703
+ key: "8"
704
+ } : void 0
705
+ ]), 1032, [
706
+ "backgroundColor",
707
+ "color",
708
+ "isPrinting",
709
+ "isImaging",
710
+ "uid",
711
+ "hasPdf",
712
+ "hasImg",
713
+ "hasSvg",
714
+ "hasFullscreen",
715
+ "hasAltCopy",
716
+ "isFullscreen",
717
+ "titles",
718
+ "chartElement",
719
+ "position",
720
+ "hasAnnotator",
721
+ "isAnnotation",
722
+ "callbacks",
723
+ "printScale",
724
+ "isCursorPointer",
725
+ "onGeneratePdf",
726
+ "onGenerateImage",
727
+ "onGenerateSvg",
728
+ "style"
729
+ ])) : f("", !0),
730
+ m("div", Re, [(v(), p("svg", {
731
+ ref_key: "svgRef",
732
+ ref: P,
733
+ xmlns: C(ie),
734
+ class: ke([{
735
+ "vue-data-ui-fullscreen--on": Z.value,
736
+ "vue-data-ui-fulscreen--off": !Z.value
737
+ }, "relation-circle"]),
738
+ viewBox: `0 0 ${W.value.width <= 0 ? 10 : W.value.width} ${W.value.height <= 0 ? 10 : W.value.height}`,
739
+ width: "100%",
740
+ style: "user-select:none; background:transparent",
741
+ "aria-describedby": `chart-instructions-${O.value}`,
742
+ tabindex: "0",
743
+ onFocus: ln,
744
+ onBlur: un,
745
+ onKeydown: dn
746
+ }, [
747
+ Ee(C(rt)),
748
+ e.$slots["chart-background"] ? (v(), p("foreignObject", {
749
+ key: 0,
750
+ x: 0,
751
+ y: 0,
752
+ width: W.value.width <= 0 ? 10 : W.value.width,
753
+ height: W.value.height <= 0 ? 10 : W.value.height,
754
+ style: { pointerEvents: "none" }
755
+ }, [x(e.$slots, "chart-background", {}, void 0, !0)], 8, Be)) : f("", !0),
756
+ m("circle", {
757
+ cx: (W.value.width <= 0 ? 1e-4 : W.value.width) / 2,
758
+ cy: (W.value.height <= 0 ? 1e-4 : W.value.height) / 2 + M.value.style.circle.offsetY,
759
+ r: G.value <= 0 ? 1e-4 : G.value,
760
+ stroke: M.value.style.circle.stroke,
761
+ "stroke-width": M.value.style.circle.strokeWidth,
762
+ fill: "transparent",
763
+ class: "main-circle"
764
+ }, null, 8, Ve),
765
+ kt.value ? (v(), p("g", He, [(v(!0), p(l, null, b(I.value, (e, t) => (v(), p("path", {
766
+ key: `relation_${t}`,
767
+ style: _(Ut(e)),
768
+ stroke: J(e),
769
+ class: ke(["relation", { "vue-ui-relation-circle-selected": L.value.hasOwnProperty("id") && R.value.includes(e.id) }]),
770
+ d: `M${e.x1},${e.y1} C${e.x1},${e.y1} ${W.value.width / 2},${W.value.height / 2 + M.value.style.circle.offsetY} ${e.x2},${e.y2}`,
771
+ fill: "none",
772
+ "stroke-width": Qt(e),
773
+ "stroke-linecap": "round"
774
+ }, null, 14, Ue))), 128)), (v(!0), p(l, null, b(I.value, (t, n) => (v(), p("g", We, [
775
+ Y(t) ? x(e.$slots, "dataLabel", Oe({ ref_for: !0 }, {
776
+ x: t.midPointBezier.x,
777
+ y: t.midPointBezier.y,
778
+ color: J(t),
779
+ weight: t.weight,
780
+ fontSize: V.value
781
+ }), void 0, !0, 0) : f("", !0),
782
+ Y(t) && !e.$slots.dataLabel ? (v(), p("circle", {
783
+ key: 1,
784
+ cx: t.midPointBezier.x,
785
+ cy: t.midPointBezier.y,
786
+ fill: J(t),
787
+ r: V.value,
788
+ stroke: M.value.style.backgroundColor,
789
+ "stroke-width": "1"
790
+ }, null, 8, Ge)) : f("", !0),
791
+ Y(t) && !e.$slots.dataLabel ? (v(), p("text", {
792
+ key: 2,
793
+ x: t.midPointBezier.x,
794
+ y: t.midPointBezier.y + V.value / 3,
795
+ fill: C(re)(J(t)),
796
+ "text-anchor": "middle",
797
+ "font-size": V.value
798
+ }, S(C(s)(M.value.style.weightLabels.formatter, t.weight, C(r)({
799
+ p: M.value.style.weightLabels.prefix,
800
+ v: t.weight,
801
+ s: M.value.style.weightLabels.suffix,
802
+ r: M.value.style.weightLabels.rounding
803
+ }), { ...t })), 9, Ke)) : f("", !0)
804
+ ]))), 256))])) : (v(), p("g", qe, [(v(!0), p(l, null, b(I.value, (e, t) => (v(), p("line", {
805
+ key: `relation_${t}`,
806
+ stroke: J(e),
807
+ "stroke-width": Qt(e),
808
+ style: _(Ut(e)),
809
+ x1: e.x1,
810
+ x2: e.x2,
811
+ y1: e.y1,
812
+ y2: e.y2,
813
+ class: ke({ "vue-ui-relation-circle-selected": L.value.hasOwnProperty("id") && R.value.includes(e.id) }),
814
+ "stroke-linecap": "round"
815
+ }, null, 14, Je))), 128)), (v(!0), p(l, null, b(I.value, (t, n) => (v(), p("g", Ye, [
816
+ Y(t) ? x(e.$slots, "dataLabel", Oe({ ref_for: !0 }, {
817
+ x: t.midPointLine.x,
818
+ y: t.midPointLine.y,
819
+ color: J(t),
820
+ weight: t.weight,
821
+ fontSize: V.value
822
+ }), void 0, !0, 0) : f("", !0),
823
+ Y(t) && !e.$slots.dataLabel && M.value.style.weightLabels.show ? (v(), p("circle", {
824
+ key: 1,
825
+ cx: t.midPointLine.x,
826
+ cy: t.midPointLine.y,
827
+ fill: J(t),
828
+ r: V.value,
829
+ stroke: M.value.style.backgroundColor,
830
+ "stroke-width": "1"
831
+ }, null, 8, Xe)) : f("", !0),
832
+ Y(t) && !e.$slots.dataLabel && M.value.style.weightLabels.show ? (v(), p("text", {
833
+ key: 2,
834
+ x: t.midPointLine.x,
835
+ y: t.midPointLine.y + V.value / 3,
836
+ fill: C(re)(J(t)),
837
+ "text-anchor": "middle",
838
+ "font-size": V.value
839
+ }, S(C(s)(M.value.style.weightLabels.formatter, t.weight, C(r)({
840
+ p: M.value.style.weightLabels.prefix,
841
+ v: t.weight,
842
+ s: M.value.style.weightLabels.suffix,
843
+ r: M.value.style.weightLabels.rounding
844
+ }), { ...t })), 9, Ze)) : f("", !0)
845
+ ]))), 256))])),
846
+ (v(!0), p(l, null, b(F.value, (e, t) => (v(), p("text", {
847
+ key: `plot_text_${t}`,
848
+ "text-anchor": Wt(e),
849
+ transform: qt(e),
850
+ x: Gt(e),
851
+ y: e.y + 5,
852
+ class: "vue-ui-relation-circle-legend",
853
+ "transform-origin": "start",
854
+ "font-weight": L.value.id === e.id ? "900" : "400",
855
+ style: _(`font-family:${M.value.style.fontFamily};${Kt(e)};cursor:${N.value ? "pointer" : "default"}`),
856
+ "font-size": U.value,
857
+ fill: M.value.style.labels.color,
858
+ "text-decoration": t === X.value || t === A.value ? "underline" : void 0,
859
+ onClick: (n) => Zt(e, t),
860
+ onMouseenter: (n) => Jt(e, t),
861
+ onMouseleave: (n) => Yt(e, t)
862
+ }, [C(ht) ? (v(), p(l, { key: 0 }, [Te("--------")], 64)) : (v(), p(l, { key: 1 }, [Te(S(e.label) + " (" + S(C(s)(M.value.style.weightLabels.formatter, e.totalWeight, C(r)({
863
+ p: M.value.style.weightLabels.prefix,
864
+ v: e.totalWeight,
865
+ s: M.value.style.weightLabels.suffix,
866
+ r: M.value.style.weightLabels.rounding
867
+ }), { ...e })) + ") ", 1)], 64))], 44, Qe))), 128)),
868
+ (v(!0), p(l, null, b(F.value, (e, t) => (v(), p("circle", {
869
+ cx: e.x,
870
+ cy: e.y,
871
+ key: `plot_${t}`,
872
+ style: _(`${Ht(e)}; transition: r 0.2s ease-in-out; cursor:${N.value ? "pointer" : "default"}`),
873
+ class: "vue-ui-relation-circle-plot",
874
+ fill: M.value.style.plot.useSerieColor ? e.color : M.value.style.plot.color,
875
+ stroke: M.value.style.backgroundColor,
876
+ "stroke-width": "1",
877
+ r: H.value * (t === X.value || t === A.value ? 2 : 1),
878
+ onClick: (n) => Zt(e, t),
879
+ onMouseenter: (n) => Jt(e, t),
880
+ onMouseleave: (n) => Yt(e, t)
881
+ }, null, 44, $e))), 128)),
882
+ x(e.$slots, "svg", { svg: {
883
+ ...W.value,
884
+ isPrintingImg: C(St) || C(Ct) || C(rn),
885
+ isPrintingSvg: C(an)
886
+ } }, void 0, !0)
887
+ ], 42, ze)), e.$slots.hint ? (v(), p("div", et, [x(e.$slots, "hint", g(h({
888
+ hint: M.value.a11y.translations.keyboardNavigation,
889
+ isVisible: j.value
890
+ })), void 0, !0)])) : f("", !0)]),
891
+ e.$slots.watermark ? (v(), p("div", tt, [x(e.$slots, "watermark", g(h({ isPrinting: C(St) || C(Ct) || C(rn) || C(an) })), void 0, !0)])) : f("", !0),
892
+ e.$slots.source ? (v(), p("div", {
893
+ key: 6,
894
+ ref_key: "source",
895
+ ref: dt,
896
+ dir: "auto"
897
+ }, [x(e.$slots, "source", {}, void 0, !0)], 512)) : f("", !0),
898
+ x(e.$slots, "skeleton", {}, () => [C(ht) ? (v(), d(de, { key: 0 })) : f("", !0)], !0)
899
+ ], 44, Ie));
900
+ }
901
+ }, [["__scopeId", "data-v-09b3c31c"]]);
902
+ //#endregion
903
+ export { Fe as n, E as t };