vue-data-ui 3.25.4 → 3.25.6

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 (213) hide show
  1. package/README.md +13 -13
  2. package/dist/{BaseDraggableDialog-BM_R41j8.js → BaseDraggableDialog-Gm4Q30j0.js} +1 -1
  3. package/dist/{BaseIcon-t83PDe9k.js → BaseIcon-D8R6_sKH.js} +5 -5
  4. package/dist/{BaseLegendToggle-__JnV08B.js → BaseLegendToggle-CXQrLjd-.js} +1 -1
  5. package/dist/{BaseZoomControls-Xo16vFa4.js → BaseZoomControls-BTzjVDPM.js} +1 -1
  6. package/dist/{ColorPicker-ZJrR3Olp.js → ColorPicker-CUy15T72.js} +102 -100
  7. package/dist/{DataTable-COIO9gi4.js → DataTable-oiM9uWrQ.js} +1 -1
  8. package/dist/{HillActions-Cl-dNBZR.js → HillActions-Dn8aKOVJ.js} +1 -1
  9. package/dist/{NonSvgPenAndPaper-DS84BAOx.js → NonSvgPenAndPaper-DFXjpRyl.js} +2 -2
  10. package/dist/{PackageVersion-5SWftabm.js → PackageVersion-ur6jKRL5.js} +1 -1
  11. package/dist/{PenAndPaper-B_SdRSKH.js → PenAndPaper-KFzKlvbi.js} +20 -4
  12. package/dist/{SlicerPreview-GvsdvE-h.js → SlicerPreview-B6iHOC9L.js} +1 -1
  13. package/dist/{UserOptions-f3Q0nqrj.js → UserOptions-2x4VklMW.js} +1 -1
  14. package/dist/components/vue-ui-3d-bar.js +1 -1
  15. package/dist/components/vue-ui-accordion.js +1 -1
  16. package/dist/components/vue-ui-age-pyramid.js +1 -1
  17. package/dist/components/vue-ui-annotator.js +1 -1
  18. package/dist/components/vue-ui-bullet.js +1 -1
  19. package/dist/components/vue-ui-bump.js +1 -1
  20. package/dist/components/vue-ui-candlestick.js +1 -1
  21. package/dist/components/vue-ui-carousel-table.js +1 -1
  22. package/dist/components/vue-ui-chestnut.js +1 -1
  23. package/dist/components/vue-ui-chord.js +1 -1
  24. package/dist/components/vue-ui-circle-pack.js +1 -1
  25. package/dist/components/vue-ui-cursor.js +1 -1
  26. package/dist/components/vue-ui-dag.js +1 -1
  27. package/dist/components/vue-ui-dashboard.js +1 -1
  28. package/dist/components/vue-ui-digits.js +1 -1
  29. package/dist/components/vue-ui-donut-evolution.js +1 -1
  30. package/dist/components/vue-ui-donut.js +1 -1
  31. package/dist/components/vue-ui-dumbbell.js +1 -1
  32. package/dist/components/vue-ui-flow.js +1 -1
  33. package/dist/components/vue-ui-funnel.js +1 -1
  34. package/dist/components/vue-ui-galaxy.js +1 -1
  35. package/dist/components/vue-ui-gauge.js +1 -1
  36. package/dist/components/vue-ui-geo.js +1 -1
  37. package/dist/components/vue-ui-gizmo.js +1 -1
  38. package/dist/components/vue-ui-heatmap.js +1 -1
  39. package/dist/components/vue-ui-hill.js +1 -1
  40. package/dist/components/vue-ui-history-plot.js +1 -1
  41. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  42. package/dist/components/vue-ui-icon.js +1 -1
  43. package/dist/components/vue-ui-kpi.js +1 -1
  44. package/dist/components/vue-ui-label.js +1 -1
  45. package/dist/components/vue-ui-mini-loader.js +1 -1
  46. package/dist/components/vue-ui-molecule.js +1 -1
  47. package/dist/components/vue-ui-mood-radar.js +1 -1
  48. package/dist/components/vue-ui-nested-donuts.js +1 -1
  49. package/dist/components/vue-ui-onion.js +1 -1
  50. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  51. package/dist/components/vue-ui-quadrant.js +1 -1
  52. package/dist/components/vue-ui-quick-chart.js +1 -1
  53. package/dist/components/vue-ui-radar.js +1 -1
  54. package/dist/components/vue-ui-rating.js +1 -1
  55. package/dist/components/vue-ui-relation-circle.js +1 -1
  56. package/dist/components/vue-ui-ridgeline.js +1 -1
  57. package/dist/components/vue-ui-rings.js +1 -1
  58. package/dist/components/vue-ui-scatter.js +1 -1
  59. package/dist/components/vue-ui-skeleton.js +1 -1
  60. package/dist/components/vue-ui-smiley.js +1 -1
  61. package/dist/components/vue-ui-spark-trend.js +1 -1
  62. package/dist/components/vue-ui-sparkbar.js +1 -1
  63. package/dist/components/vue-ui-sparkgauge.js +1 -1
  64. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  65. package/dist/components/vue-ui-sparkline.js +1 -1
  66. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  67. package/dist/components/vue-ui-stackbar.js +1 -1
  68. package/dist/components/vue-ui-stackline.js +1 -1
  69. package/dist/components/vue-ui-strip-plot.js +1 -1
  70. package/dist/components/vue-ui-table-heatmap.js +1 -1
  71. package/dist/components/vue-ui-table-sparkline.js +1 -1
  72. package/dist/components/vue-ui-table.js +1 -1
  73. package/dist/components/vue-ui-thermometer.js +1 -1
  74. package/dist/components/vue-ui-timer.js +1 -1
  75. package/dist/components/vue-ui-tiremarks.js +1 -1
  76. package/dist/components/vue-ui-treemap.js +1 -1
  77. package/dist/components/vue-ui-vertical-bar.js +1 -1
  78. package/dist/components/vue-ui-waffle.js +1 -1
  79. package/dist/components/vue-ui-wheel.js +1 -1
  80. package/dist/components/vue-ui-word-cloud.js +1 -1
  81. package/dist/components/vue-ui-world.js +1 -1
  82. package/dist/components/vue-ui-xy-canvas.js +1 -1
  83. package/dist/components/vue-ui-xy.js +1 -1
  84. package/dist/{package-DmsdiyeS.js → package-Dx7M6sYy.js} +1 -1
  85. package/dist/{render-common-zoPh9a78.js → render-common-DETHvNhl.js} +1 -1
  86. package/dist/ssr/vue-ui-donut.js +1 -1
  87. package/dist/ssr/vue-ui-xy.js +1 -1
  88. package/dist/ssr.js +2 -2
  89. package/dist/style.css +1 -1
  90. package/dist/types/vue-data-ui.d.ts +80 -1
  91. package/dist/types/vue-ui-annotator.d.ts +58 -2
  92. package/dist/{useConfig-CyCVHo81.js → useConfig-CIQZ6_r7.js} +1339 -1313
  93. package/dist/{useObjectBindings-ByORl1rV.js → useObjectBindings---mHNfbS.js} +2 -2
  94. package/dist/utils.js +1 -1
  95. package/dist/{vue-data-ui-DTj71yB7.js → vue-data-ui-Dh3_EsHb.js} +70 -70
  96. package/dist/vue-data-ui.js +71 -71
  97. package/dist/vue-ui-3d-bar-i1REAKnM.js +1831 -0
  98. package/dist/{vue-ui-accordion-D4zsdacF.js → vue-ui-accordion-BSmBUjwZ.js} +2 -2
  99. package/dist/vue-ui-age-pyramid-DuHblCNO.js +1293 -0
  100. package/dist/vue-ui-annotator-CTQHAPho.js +3325 -0
  101. package/dist/vue-ui-bullet-CYLnKrmM.js +702 -0
  102. package/dist/{vue-ui-bump-BkOtQNWe.js → vue-ui-bump-DhwySwgn.js} +382 -380
  103. package/dist/vue-ui-candlestick-BpiECaDj.js +1859 -0
  104. package/dist/{vue-ui-carousel-table-CRgbs7jR.js → vue-ui-carousel-table-D-T2yA7-.js} +2 -2
  105. package/dist/vue-ui-chestnut-1MsZ9Q3r.js +2016 -0
  106. package/dist/vue-ui-chord-QBQUSe7r.js +1347 -0
  107. package/dist/vue-ui-circle-pack-ZWEwtesD.js +1635 -0
  108. package/dist/{vue-ui-cursor-BHyXRadA.js → vue-ui-cursor-CHQcHAHQ.js} +2 -2
  109. package/dist/{vue-ui-dag-CyVqaLbF.js → vue-ui-dag-C_inEafb.js} +794 -792
  110. package/dist/{vue-ui-dashboard-7I-7wvCP.js → vue-ui-dashboard-Bs2mBur5.js} +74 -72
  111. package/dist/{vue-ui-digits-BBL8uERO.js → vue-ui-digits-DwE4MoXI.js} +2 -2
  112. package/dist/vue-ui-donut-BM9dMHXj.js +2415 -0
  113. package/dist/{vue-ui-donut-DcgUuefk.js → vue-ui-donut-CbOSJmRu.js} +2 -2
  114. package/dist/vue-ui-donut-evolution-C97_RHus.js +1552 -0
  115. package/dist/vue-ui-dumbbell-DwKa5EL5.js +1533 -0
  116. package/dist/vue-ui-flow-DTTr3YL9.js +1217 -0
  117. package/dist/vue-ui-funnel-C4pkBk3D.js +749 -0
  118. package/dist/vue-ui-galaxy-CuAPLOvX.js +1085 -0
  119. package/dist/vue-ui-gauge-DLDULH26.js +934 -0
  120. package/dist/{vue-ui-geo-jR4P4pbt.js → vue-ui-geo-DXIHhp-G.js} +431 -429
  121. package/dist/{vue-ui-gizmo-D6W86s9o.js → vue-ui-gizmo-PuURiePo.js} +2 -2
  122. package/dist/vue-ui-heatmap-mvWLKB99.js +1555 -0
  123. package/dist/{vue-ui-hill-fFq7pm-g.js → vue-ui-hill-DqsVJkmO.js} +472 -470
  124. package/dist/vue-ui-history-plot-BBVLgt9_.js +1698 -0
  125. package/dist/{vue-ui-horizontal-bar-D3Sft4kp.js → vue-ui-horizontal-bar-y8Q8PZwT.js} +513 -511
  126. package/dist/{vue-ui-kpi-fzLsKlyE.js → vue-ui-kpi-B2hf3kpp.js} +2 -2
  127. package/dist/{vue-ui-label-BSgLalWD.js → vue-ui-label-ClMQ5Gez.js} +1 -1
  128. package/dist/{vue-ui-mini-loader-BL2odRfu.js → vue-ui-mini-loader-DtPOVIkK.js} +1 -1
  129. package/dist/vue-ui-molecule-eeW1Pmg8.js +929 -0
  130. package/dist/{vue-ui-mood-radar-bvGx6XgG.js → vue-ui-mood-radar-Dd1qfUiu.js} +378 -376
  131. package/dist/vue-ui-nested-donuts-CUARCr6O.js +1503 -0
  132. package/dist/vue-ui-onion-NoxHP0cG.js +1235 -0
  133. package/dist/{vue-ui-parallel-coordinate-plot-B_QJ4N9o.js → vue-ui-parallel-coordinate-plot-Cp3pCyxK.js} +409 -407
  134. package/dist/vue-ui-quadrant-C3kQtaeX.js +1967 -0
  135. package/dist/{vue-ui-quick-chart-BFscCR59.js → vue-ui-quick-chart-BZq517pL.js} +8 -6
  136. package/dist/vue-ui-radar-DvNrl4uD.js +1374 -0
  137. package/dist/vue-ui-rating-CWFMoYpE.js +359 -0
  138. package/dist/vue-ui-relation-circle-1iS6C0xx.js +905 -0
  139. package/dist/vue-ui-ridgeline-B-EZiPCF.js +1630 -0
  140. package/dist/vue-ui-rings-BXuwrHos.js +1252 -0
  141. package/dist/vue-ui-scatter-ByL-ZZ3B.js +2405 -0
  142. package/dist/{vue-ui-skeleton-zmbcOVEf.js → vue-ui-skeleton-BcU1onF6.js} +698 -698
  143. package/dist/vue-ui-smiley-DJVusLnp.js +376 -0
  144. package/dist/vue-ui-spark-trend-DjS31avb.js +457 -0
  145. package/dist/vue-ui-sparkbar-1Al_TLw1.js +401 -0
  146. package/dist/vue-ui-sparkgauge-CwLo53Y8.js +268 -0
  147. package/dist/vue-ui-sparkhistogram-CGw6SThG.js +589 -0
  148. package/dist/{vue-ui-sparkline-Dv7XrEzO.js → vue-ui-sparkline-CSZGBFfI.js} +511 -511
  149. package/dist/vue-ui-sparkstackbar-B8dloLMp.js +738 -0
  150. package/dist/vue-ui-stackbar-FvNd77t1.js +2355 -0
  151. package/dist/vue-ui-stackline-CP7PkqiG.js +2469 -0
  152. package/dist/vue-ui-strip-plot-DSMlDkv1.js +1740 -0
  153. package/dist/{vue-ui-table-heatmap-Dv_ZKKm3.js → vue-ui-table-heatmap-DnP3pzh2.js} +2 -2
  154. package/dist/vue-ui-table-rwKtnJKt.js +1352 -0
  155. package/dist/vue-ui-table-sparkline-B6wyEAyC.js +738 -0
  156. package/dist/{vue-ui-thermometer-DytlLJ32.js → vue-ui-thermometer-D0_KsB-y.js} +194 -192
  157. package/dist/{vue-ui-timer-CvHP4HoW.js → vue-ui-timer-1Z2zginj.js} +153 -153
  158. package/dist/vue-ui-tiremarks-zbl7aooy.js +540 -0
  159. package/dist/vue-ui-treemap-Drs4gK6L.js +1733 -0
  160. package/dist/vue-ui-waffle-DqUVsVNE.js +1621 -0
  161. package/dist/vue-ui-wheel-DLCBPW9t.js +873 -0
  162. package/dist/vue-ui-word-cloud-8Agk9h6c.js +1710 -0
  163. package/dist/{vue-ui-world-D0_2upjg.js → vue-ui-world-BOBHo7-L.js} +526 -524
  164. package/dist/vue-ui-xy-CSTJzRkk.js +5283 -0
  165. package/dist/{vue-ui-xy-D_5FfaH-.js → vue-ui-xy-Dmk1gQkI.js} +2 -2
  166. package/dist/vue-ui-xy-canvas-DANPuyf4.js +1824 -0
  167. package/dist/{vue_ui_age_pyramid-BY6c-oX_.js → vue_ui_age_pyramid-B2R66DgQ.js} +15 -6
  168. package/package.json +1 -1
  169. package/dist/vue-ui-3d-bar-CH8SpxS2.js +0 -1829
  170. package/dist/vue-ui-age-pyramid-B9MUVi75.js +0 -1241
  171. package/dist/vue-ui-annotator-CmlcWPIm.js +0 -2886
  172. package/dist/vue-ui-bullet-n8KNnDwh.js +0 -700
  173. package/dist/vue-ui-candlestick-Bxlvqk49.js +0 -1857
  174. package/dist/vue-ui-chestnut-ByDKbkG9.js +0 -2014
  175. package/dist/vue-ui-chord-DQRBgVOx.js +0 -1345
  176. package/dist/vue-ui-circle-pack-CBBc0HOe.js +0 -1633
  177. package/dist/vue-ui-donut-DfiocufT.js +0 -2413
  178. package/dist/vue-ui-donut-evolution-BoqO8By2.js +0 -1550
  179. package/dist/vue-ui-dumbbell-7M_oUQdi.js +0 -1529
  180. package/dist/vue-ui-flow-CoylrfnO.js +0 -1215
  181. package/dist/vue-ui-funnel-DaBYHWIC.js +0 -747
  182. package/dist/vue-ui-galaxy-BIebStQ3.js +0 -1083
  183. package/dist/vue-ui-gauge-CwdTmiRP.js +0 -932
  184. package/dist/vue-ui-heatmap-DXYlGwqR.js +0 -1553
  185. package/dist/vue-ui-history-plot-CgIELoD2.js +0 -1696
  186. package/dist/vue-ui-molecule-DeHWkkhy.js +0 -929
  187. package/dist/vue-ui-nested-donuts-CeAV2xPk.js +0 -1501
  188. package/dist/vue-ui-onion-B7oFulsQ.js +0 -1233
  189. package/dist/vue-ui-quadrant-DrKnz37q.js +0 -1965
  190. package/dist/vue-ui-radar-Bzx69q8f.js +0 -1372
  191. package/dist/vue-ui-rating-CimC9FQ9.js +0 -359
  192. package/dist/vue-ui-relation-circle-DIQYyDGb.js +0 -903
  193. package/dist/vue-ui-ridgeline-CPEnM45x.js +0 -1621
  194. package/dist/vue-ui-rings-qPL5Iwji.js +0 -1250
  195. package/dist/vue-ui-scatter-BB0ClTsU.js +0 -2403
  196. package/dist/vue-ui-smiley-DzPkCMN-.js +0 -376
  197. package/dist/vue-ui-spark-trend-Ciq7-k_q.js +0 -457
  198. package/dist/vue-ui-sparkbar-D1M7-naP.js +0 -401
  199. package/dist/vue-ui-sparkgauge-rsqaeR_n.js +0 -268
  200. package/dist/vue-ui-sparkhistogram-C4WXt2Ni.js +0 -589
  201. package/dist/vue-ui-sparkstackbar-DDOXdeV-.js +0 -738
  202. package/dist/vue-ui-stackbar-C_hMnOLb.js +0 -2353
  203. package/dist/vue-ui-stackline-BHGi63lD.js +0 -2467
  204. package/dist/vue-ui-strip-plot-Cygpn-l8.js +0 -1738
  205. package/dist/vue-ui-table-BQna1wL6.js +0 -1352
  206. package/dist/vue-ui-table-sparkline-BCuimtk6.js +0 -738
  207. package/dist/vue-ui-tiremarks-BvjdZwgh.js +0 -538
  208. package/dist/vue-ui-treemap-C5OpqzSc.js +0 -1731
  209. package/dist/vue-ui-waffle-B7T_Zzan.js +0 -1619
  210. package/dist/vue-ui-wheel-D1B0k7IW.js +0 -871
  211. package/dist/vue-ui-word-cloud-C4pX6jop.js +0 -1708
  212. package/dist/vue-ui-xy-Ck41KYqF.js +0 -5281
  213. package/dist/vue-ui-xy-canvas-B_8Mu19r.js +0 -1824
@@ -0,0 +1,905 @@
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-CIQZ6_r7.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 fe } from "./useNestedProp-Chvyfpl-.js";
8
+ import { t as pe } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as me } from "./useChartExport-iwOqiIWX.js";
10
+ import { t as he } from "./img-DhGApYG0.js";
11
+ import { n as ge } from "./Title-CPHi-evi.js";
12
+ import { t as _e } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
+ import { l as ve, t as ye } from "./useResponsive-ZtArZtUf.js";
14
+ import { t as be } from "./A11yDataTable-DdRsVULz.js";
15
+ import { t as xe } from "./useUserOptionState-DK-_1ddE.js";
16
+ import { t as Se } from "./useChartAccessibility-DYqac8yF.js";
17
+ import { t as Ce } from "./useAutoSizeLabelsInsideViewbox-DvDwcwi_.js";
18
+ import { t as we } from "./vue_ui_relation_circle-D0p4mXmv.js";
19
+ import { Fragment as c, computed as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createSlots as Te, createTextVNode as Ee, createVNode as De, defineAsyncComponent as Oe, guardReactiveProps as m, mergeProps as ke, normalizeClass as Ae, normalizeProps as h, normalizeStyle as g, onBeforeUnmount as je, onMounted as Me, openBlock as _, ref as v, renderList as y, renderSlot as b, shallowRef as Ne, toDisplayString as x, toRefs as Pe, unref as S, useCssVars as Fe, watch as Ie, withCtx as C } from "vue";
20
+ //#region src/components/vue-ui-relation-circle.vue
21
+ var Le = /* @__PURE__ */ e({ default: () => it }), Re = ["id"], ze = ["id"], Be = { style: { position: "relative" } }, Ve = [
22
+ "xmlns",
23
+ "viewBox",
24
+ "aria-describedby"
25
+ ], He = ["width", "height"], Ue = [
26
+ "cx",
27
+ "cy",
28
+ "r",
29
+ "stroke",
30
+ "stroke-width"
31
+ ], We = { key: 1 }, Ge = [
32
+ "stroke",
33
+ "d",
34
+ "stroke-width"
35
+ ], Ke = { style: { "pointer-events": "none" } }, qe = [
36
+ "cx",
37
+ "cy",
38
+ "fill",
39
+ "r",
40
+ "stroke"
41
+ ], Je = [
42
+ "x",
43
+ "y",
44
+ "fill",
45
+ "font-size"
46
+ ], Ye = { key: 2 }, Xe = [
47
+ "stroke",
48
+ "stroke-width",
49
+ "x1",
50
+ "x2",
51
+ "y1",
52
+ "y2"
53
+ ], Ze = { style: { "pointer-events": "none" } }, Qe = [
54
+ "cx",
55
+ "cy",
56
+ "fill",
57
+ "r",
58
+ "stroke"
59
+ ], $e = [
60
+ "x",
61
+ "y",
62
+ "fill",
63
+ "font-size"
64
+ ], et = [
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
+ ], tt = [
77
+ "cx",
78
+ "cy",
79
+ "fill",
80
+ "stroke",
81
+ "r",
82
+ "onClick",
83
+ "onMouseenter",
84
+ "onMouseleave"
85
+ ], nt = {
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
+ }, rt = {
96
+ key: 5,
97
+ class: "vue-data-ui-watermark"
98
+ }, it = /*#__PURE__*/ _e({
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: _e, emit: Le }) {
116
+ Fe((e) => ({
117
+ v3a041b84: Pt.value,
118
+ v0fe94b63: Nt.value,
119
+ v471d47f6: Ft.value
120
+ }));
121
+ let it = Oe(() => import("./PenAndPaper-KFzKlvbi.js").then((e) => e.t)), at = Oe(() => import("./UserOptions-2x4VklMW.js").then((e) => e.n)), ot = Oe(() => import("./PackageVersion-ur6jKRL5.js").then((e) => e.t)), { vue_ui_relation_circle: st } = ce(), { isThemeValid: ct, warnInvalidTheme: lt } = pe(), w = e, ut = Le, dt = l(() => !!w.dataset && Object.keys(w.dataset).length), T = v(ne()), ft = v(0), E = v(null), pt = v(null), mt = v(null), ht = v(null), gt = v(0), D = v(null), O = v(!1), k = v(wt()), A = l(() => k.value.userOptions), j = l(() => k.value.style.weightLabels), M = l(() => k.value.style);
122
+ oe({
123
+ config: () => k.value,
124
+ dataset: () => w.dataset,
125
+ component: "VueUiRelationCircle",
126
+ rules: [se.noHint]
127
+ });
128
+ let N = l(() => k.value.userOptions.useCursorPointer), _t = l(() => 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: k.value.skeletonConfig ?? {}
144
+ })), { loading: vt, FINAL_DATASET: yt, manualLoading: bt } = ue({
145
+ ...Pe(w),
146
+ FINAL_CONFIG: k,
147
+ prepareConfig: wt,
148
+ skeletonDataset: w.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: k.value,
194
+ userConfig: _t.value
195
+ })
196
+ }), { userOptionsVisible: xt, setUserOptionsVisibility: St, keepUserOptionState: Ct } = xe({ config: k.value }), { svgRef: P } = Se({ config: M.value.title });
197
+ function wt() {
198
+ let e = fe({
199
+ userConfig: w.config,
200
+ defaultConfig: st
201
+ }), n = e.theme;
202
+ if (!n) return e;
203
+ if (!ct.value(e)) return lt(e), e;
204
+ let r = fe({
205
+ userConfig: we[n] || w.config,
206
+ defaultConfig: e
207
+ }), i = fe({
208
+ userConfig: w.config,
209
+ defaultConfig: r
210
+ });
211
+ return {
212
+ ...i,
213
+ customPalette: i.customPalette.length ? i.customPalette : a[n] || t
214
+ };
215
+ }
216
+ Ie(() => w.config, (e) => {
217
+ k.value = wt(), xt.value = !k.value.userOptions.showOnChartHover, B.value = M.value.size, V.value = j.value.size, H.value = M.value.plot.radius, U.value = M.value.labels.fontSize, W.value.height = M.value.size, W.value.width = M.value.size, Lt(), gt.value += 1;
218
+ }, { deep: !0 }), Ie(() => w.dataset, (e) => {
219
+ Array.isArray(e) && e.length > 0 && (bt.value = !1);
220
+ }, { deep: !0 });
221
+ let { isPrinting: Tt, isImaging: Et, generatePdf: Dt, generateImage: Ot } = le({
222
+ elementId: `relation_circle_${T.value}`,
223
+ fileName: M.value.title.text || "vue-ui-relation-circle",
224
+ options: k.value.userOptions.print
225
+ }), kt = l(() => k.value.userOptions.show && !M.value.title.text), At = l(() => ae(k.value.customPalette)), F = v([]), I = v([]), L = v({}), R = v([]), jt = v(0), z = l(() => yt.value.slice(0, M.value.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
+ Ie(z, () => {
234
+ F.value = [], I.value = [], Bt(), Ht();
235
+ });
236
+ let B = v(M.value.size), V = v(j.value.size), H = v(M.value.plot.radius), U = v(M.value.labels.fontSize), W = v({
237
+ height: M.value.size,
238
+ width: M.value.size
239
+ }), G = l({
240
+ get() {
241
+ return B.value * M.value.circle.radiusProportion;
242
+ },
243
+ set(e) {
244
+ return e;
245
+ }
246
+ }), Mt = l(() => M.value.links.curved), Nt = l(() => `${M.value.animation.speedMs}ms`), Pt = l(() => G.value * 2), Ft = l(() => G.value * 4), K = Ne(null), q = Ne(null);
247
+ Me(() => {
248
+ Lt(), document.getElementById(`relation_circle_${T.value}`).addEventListener("click", zt);
249
+ });
250
+ let It = l(() => k.value.debug);
251
+ function Lt() {
252
+ if (n(w.dataset) ? (te({
253
+ componentName: "VueUiRelationCircle",
254
+ type: "dataset",
255
+ debug: It.value
256
+ }), bt.value = !0) : It.value && w.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(w.dataset) || (bt.value = k.value.loading), k.value.responsive) {
274
+ let e = ve(() => {
275
+ let { width: e, height: t } = ye({
276
+ chart: E.value,
277
+ title: M.value.title.text ? pt.value : null,
278
+ source: mt.value,
279
+ noTitle: ht.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.circle.radiusProportion, F.value = [], I.value = [], Bt(), Ht(), Rt(), k.value.responsiveProportionalSizing ? (V.value = i({
283
+ relator: B.value,
284
+ adjuster: M.value.size,
285
+ source: j.value.size,
286
+ threshold: 6,
287
+ fallback: 6
288
+ }), H.value = i({
289
+ relator: B.value,
290
+ adjuster: M.value.size,
291
+ source: M.value.plot.radius,
292
+ threshold: 1,
293
+ fallback: 1
294
+ }), U.value = i({
295
+ relator: B.value,
296
+ adjuster: M.value.size,
297
+ source: M.value.labels.fontSize,
298
+ threshold: 6,
299
+ fallback: 6
300
+ })) : (V.value = j.value.size, H.value = M.value.plot.radius, U.value = M.value.labels.fontSize);
301
+ });
302
+ });
303
+ K.value && (q.value && K.value.unobserve(q.value), K.value.disconnect()), K.value = new ResizeObserver(e), q.value = E.value.parentNode, K.value.observe(q.value);
304
+ } else F.value = [], I.value = [], Bt(), Ht();
305
+ Rt();
306
+ }
307
+ je(() => {
308
+ document.getElementById(`relation_circle_${T.value}`).removeEventListener("click", zt), K.value && (q.value && K.value.unobserve(q.value), K.value.disconnect());
309
+ });
310
+ let { autoSizeLabels: Rt } = Ce({
311
+ svgRef: P,
312
+ fontSize: M.value.labels.fontSize,
313
+ minFontSize: M.value.labels.minFontSize,
314
+ sizeRef: U,
315
+ labelClass: ".vue-ui-relation-circle-legend"
316
+ });
317
+ function zt(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 Bt() {
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.circle.offsetY;
325
+ F.value.push({
326
+ x: s,
327
+ y: te,
328
+ ...a,
329
+ color: a.color ? a.color : At.value[o] ? At.value[o] : t[o],
330
+ regAngle: i,
331
+ totalWeight: ee
332
+ }), r += e, i += n;
333
+ });
334
+ }
335
+ function Vt(e, t) {
336
+ return {
337
+ x: (e.x + t.x) / 2,
338
+ y: (e.y + t.y) / 2
339
+ };
340
+ }
341
+ function Ht() {
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: Vt({
355
+ x: e.x,
356
+ y: e.y
357
+ }, {
358
+ x: t.x,
359
+ y: t.y
360
+ }),
361
+ midPointBezier: Ut({
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 Ut(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.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 Wt = l(() => Math.max(...I.value.map((e) => e.weight)));
392
+ function Gt(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 Kt(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:${tn(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 qt(e) {
405
+ return e.regAngle > 90 && e.regAngle < 270 ? "end" : "start";
406
+ }
407
+ function Jt(e) {
408
+ return e.regAngle > 90 && e.regAngle < 270 ? e.x - 5 : e.x + 5;
409
+ }
410
+ function Yt(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 Xt(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 = v(null);
417
+ function Zt(e, t) {
418
+ X.value = t, D.value = t, k.value.events.datapointEnter && k.value.events.datapointEnter({
419
+ datapoint: e,
420
+ seriesIndex: t
421
+ });
422
+ }
423
+ function Qt(e, t) {
424
+ X.value = null, O.value || (D.value = null), k.value.events.datapointLeave && k.value.events.datapointLeave({
425
+ datapoint: e,
426
+ seriesIndex: t
427
+ });
428
+ }
429
+ function $t(e, t) {
430
+ e && (k.value.events.datapointClick && k.value.events.datapointClick({
431
+ datapoint: e,
432
+ seriesIndex: t
433
+ }), jt.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 en(e, t) {
436
+ D.value = t, $t(e, t);
437
+ }
438
+ function tn(e) {
439
+ let t = e.weight / Wt.value * M.value.links.maxWidth;
440
+ return Math.max(.3, t);
441
+ }
442
+ let Z = v(!1);
443
+ function nn(e) {
444
+ Z.value = e, ft.value += 1;
445
+ }
446
+ let Q = v(!1);
447
+ function $() {
448
+ Q.value = !Q.value;
449
+ }
450
+ async function rn({ scale: e = 2 } = {}) {
451
+ if (!E.value) return;
452
+ let { width: t, height: n } = E.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await he({
453
+ domElement: E.value,
454
+ base64: !0,
455
+ img: !0,
456
+ scale: e
457
+ });
458
+ return {
459
+ imageUri: i,
460
+ base64: a,
461
+ title: M.value.title.text,
462
+ width: t,
463
+ height: n,
464
+ aspectRatio: r
465
+ };
466
+ }
467
+ let an = l(() => M.value.backgroundColor), on = l(() => M.value.title), { isCallbackImaging: sn, isCallbackSvg: cn, generateSvg: ln, onGenerateImage: un } = me({
468
+ svg: P,
469
+ title: on,
470
+ legend: null,
471
+ legendItems: null,
472
+ backgroundColor: an,
473
+ getSvgCallback: () => k.value.userOptions.callbacks.svg,
474
+ generateImage: Ot
475
+ });
476
+ async function dn() {
477
+ if (ut("copyAlt", {
478
+ config: k.value,
479
+ dataset: z.value
480
+ }), !k.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(k.value.userOptions.callbacks.altCopy({
485
+ config: k.value,
486
+ dataset: z.value
487
+ }));
488
+ }
489
+ function fn() {
490
+ O.value = !0, F.value.length && D.value === null && (D.value = 0);
491
+ }
492
+ function pn() {
493
+ O.value = !1, D.value = null;
494
+ }
495
+ function mn(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
+ D.value = null, L.value = {}, R.value = [];
501
+ return;
502
+ }
503
+ if (r) {
504
+ if (D.value === null) return;
505
+ let e = F.value[D.value];
506
+ if (!e) return;
507
+ $t(e, D.value);
508
+ return;
509
+ }
510
+ let a = D.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)), D.value = a, X.value = a;
512
+ let o = F.value[a];
513
+ o && k.value.events.datapointEnter && k.value.events.datapointEnter({
514
+ datapoint: o,
515
+ seriesIndex: a
516
+ });
517
+ }
518
+ let hn = l(() => ({
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 _e({
538
+ getImage: rn,
539
+ generatePdf: Dt,
540
+ generateSvg: ln,
541
+ generateImage: Ot,
542
+ toggleAnnotator: $,
543
+ toggleFullscreen: nn,
544
+ copyAlt: dn
545
+ }), (e, t) => (_(), f("div", {
546
+ ref_key: "relationCircleChart",
547
+ ref: E,
548
+ class: "vue-data-ui-component vue-ui-relation-circle",
549
+ style: g(`width:100%;background:${M.value.backgroundColor};text-align:center;${k.value.responsive ? "height: 100%" : ""}`),
550
+ id: `relation_circle_${T.value}`,
551
+ onMouseenter: t[0] ||= () => S(St)(!0),
552
+ onMouseleave: t[1] ||= () => S(St)(!1)
553
+ }, [
554
+ p("div", {
555
+ id: `chart-instructions-${T.value}`,
556
+ class: "sr-only"
557
+ }, [p("p", null, x(k.value.a11y.translations.keyboardNavigation), 1)], 8, ze),
558
+ hn.value?.rows?.length ? (_(), u(be, {
559
+ key: 0,
560
+ uid: T.value,
561
+ head: hn.value.headers,
562
+ body: hn.value.rows,
563
+ notice: k.value.a11y.translations.tableAvailable,
564
+ caption: k.value.a11y.translations.tableCaption
565
+ }, null, 8, [
566
+ "uid",
567
+ "head",
568
+ "body",
569
+ "notice",
570
+ "caption"
571
+ ])) : d("", !0),
572
+ A.value.buttons.annotator ? (_(), u(S(it), {
573
+ key: 1,
574
+ svgRef: S(P),
575
+ backgroundColor: M.value.backgroundColor,
576
+ color: M.value.color,
577
+ active: Q.value,
578
+ isCursorPointer: N.value,
579
+ palette: A.value.annotatorPalette,
580
+ onClose: $
581
+ }, {
582
+ "annotator-action-close": C(() => [b(e.$slots, "annotator-action-close", {}, void 0, !0)]),
583
+ "annotator-action-color": C(({ color: t }) => [b(e.$slots, "annotator-action-color", h(m({ color: t })), void 0, !0)]),
584
+ "annotator-action-draw": C(({ mode: t }) => [b(e.$slots, "annotator-action-draw", h(m({ mode: t })), void 0, !0)]),
585
+ "annotator-action-undo": C(({ disabled: t }) => [b(e.$slots, "annotator-action-undo", h(m({ disabled: t })), void 0, !0)]),
586
+ "annotator-action-redo": C(({ disabled: t }) => [b(e.$slots, "annotator-action-redo", h(m({ disabled: t })), void 0, !0)]),
587
+ "annotator-action-delete": C(({ disabled: t }) => [b(e.$slots, "annotator-action-delete", h(m({ disabled: t })), void 0, !0)]),
588
+ _: 3
589
+ }, 8, [
590
+ "svgRef",
591
+ "backgroundColor",
592
+ "color",
593
+ "active",
594
+ "isCursorPointer",
595
+ "palette"
596
+ ])) : d("", !0),
597
+ kt.value ? (_(), f("div", {
598
+ key: 2,
599
+ ref_key: "noTitle",
600
+ ref: ht,
601
+ class: "vue-data-ui-no-title-space",
602
+ style: "height:36px; width: 100%;background:transparent"
603
+ }, null, 512)) : d("", !0),
604
+ M.value.title.text ? (_(), f("div", {
605
+ key: 3,
606
+ ref_key: "chartTitle",
607
+ ref: pt,
608
+ style: "width:100%;background:transparent"
609
+ }, [(_(), u(ge, {
610
+ key: `title_${gt.value}`,
611
+ config: {
612
+ title: {
613
+ cy: "relation-div-title",
614
+ ...M.value.title
615
+ },
616
+ subtitle: {
617
+ cy: "relation-div-subtitle",
618
+ ...M.value.title.subtitle
619
+ }
620
+ }
621
+ }, null, 8, ["config"]))], 512)) : d("", !0),
622
+ A.value.show && dt.value && (S(Ct) || S(xt)) ? (_(), u(S(at), {
623
+ ref: "details",
624
+ key: `user_options_${ft.value}`,
625
+ backgroundColor: M.value.backgroundColor,
626
+ color: M.value.color,
627
+ isPrinting: S(Tt),
628
+ isImaging: S(Et),
629
+ uid: T.value,
630
+ hasPdf: A.value.buttons.pdf,
631
+ hasImg: A.value.buttons.img,
632
+ hasSvg: A.value.buttons.svg,
633
+ hasFullscreen: A.value.buttons.fullscreen,
634
+ hasAltCopy: A.value.buttons.altCopy,
635
+ hasXls: !1,
636
+ isFullscreen: Z.value,
637
+ titles: { ...A.value.buttonTitles },
638
+ chartElement: E.value,
639
+ position: A.value.position,
640
+ hasAnnotator: A.value.buttons.annotator,
641
+ isAnnotation: Q.value,
642
+ callbacks: A.value.callbacks,
643
+ printScale: A.value.print.scale,
644
+ isCursorPointer: N.value,
645
+ onToggleFullscreen: nn,
646
+ onGeneratePdf: S(Dt),
647
+ onGenerateImage: S(un),
648
+ onGenerateSvg: S(ln),
649
+ onToggleAnnotator: $,
650
+ onCopyAlt: dn,
651
+ style: g({ visibility: S(Ct) ? S(xt) ? "visible" : "hidden" : "visible" })
652
+ }, Te({ _: 2 }, [
653
+ e.$slots.menuIcon ? {
654
+ name: "menuIcon",
655
+ fn: C(({ isOpen: t, color: n }) => [b(e.$slots, "menuIcon", h(m({
656
+ isOpen: t,
657
+ color: n
658
+ })), void 0, !0)]),
659
+ key: "0"
660
+ } : void 0,
661
+ e.$slots.optionPdf ? {
662
+ name: "optionPdf",
663
+ fn: C(() => [b(e.$slots, "optionPdf", {}, void 0, !0)]),
664
+ key: "1"
665
+ } : void 0,
666
+ e.$slots.optionImg ? {
667
+ name: "optionImg",
668
+ fn: C(() => [b(e.$slots, "optionImg", {}, void 0, !0)]),
669
+ key: "2"
670
+ } : void 0,
671
+ e.$slots.optionSvg ? {
672
+ name: "optionSvg",
673
+ fn: C(() => [b(e.$slots, "optionSvg", {}, void 0, !0)]),
674
+ key: "3"
675
+ } : void 0,
676
+ e.$slots.optionFullscreen ? {
677
+ name: "optionFullscreen",
678
+ fn: C(({ toggleFullscreen: t, isFullscreen: n }) => [b(e.$slots, "optionFullscreen", h(m({
679
+ toggleFullscreen: t,
680
+ isFullscreen: n
681
+ })), void 0, !0)]),
682
+ key: "4"
683
+ } : void 0,
684
+ e.$slots.optionAnnotator ? {
685
+ name: "optionAnnotator",
686
+ fn: C(({ toggleAnnotator: t, isAnnotator: n }) => [b(e.$slots, "optionAnnotator", h(m({
687
+ toggleAnnotator: t,
688
+ isAnnotator: n
689
+ })), void 0, !0)]),
690
+ key: "5"
691
+ } : void 0,
692
+ e.$slots.optionAltCopy ? {
693
+ name: "optionAltCopy",
694
+ fn: C(({ altCopy: t }) => [b(e.$slots, "optionAltCopy", h(m({ altCopy: t })), void 0, !0)]),
695
+ key: "6"
696
+ } : void 0,
697
+ e.$slots["custom-menu-before"] ? {
698
+ name: "custom-menu-before",
699
+ fn: C(() => [b(e.$slots, "custom-menu-before", {}, void 0, !0)]),
700
+ key: "7"
701
+ } : void 0,
702
+ e.$slots["custom-menu-after"] ? {
703
+ name: "custom-menu-after",
704
+ fn: C(() => [b(e.$slots, "custom-menu-after", {}, void 0, !0)]),
705
+ key: "8"
706
+ } : void 0
707
+ ]), 1032, [
708
+ "backgroundColor",
709
+ "color",
710
+ "isPrinting",
711
+ "isImaging",
712
+ "uid",
713
+ "hasPdf",
714
+ "hasImg",
715
+ "hasSvg",
716
+ "hasFullscreen",
717
+ "hasAltCopy",
718
+ "isFullscreen",
719
+ "titles",
720
+ "chartElement",
721
+ "position",
722
+ "hasAnnotator",
723
+ "isAnnotation",
724
+ "callbacks",
725
+ "printScale",
726
+ "isCursorPointer",
727
+ "onGeneratePdf",
728
+ "onGenerateImage",
729
+ "onGenerateSvg",
730
+ "style"
731
+ ])) : d("", !0),
732
+ p("div", Be, [(_(), f("svg", {
733
+ ref_key: "svgRef",
734
+ ref: P,
735
+ xmlns: S(ie),
736
+ class: Ae([{
737
+ "vue-data-ui-fullscreen--on": Z.value,
738
+ "vue-data-ui-fulscreen--off": !Z.value
739
+ }, "relation-circle"]),
740
+ viewBox: `0 0 ${W.value.width <= 0 ? 10 : W.value.width} ${W.value.height <= 0 ? 10 : W.value.height}`,
741
+ width: "100%",
742
+ style: "user-select:none; background:transparent",
743
+ "aria-describedby": `chart-instructions-${T.value}`,
744
+ tabindex: "0",
745
+ onFocus: fn,
746
+ onBlur: pn,
747
+ onKeydown: mn
748
+ }, [
749
+ De(S(ot)),
750
+ e.$slots["chart-background"] ? (_(), f("foreignObject", {
751
+ key: 0,
752
+ x: 0,
753
+ y: 0,
754
+ width: W.value.width <= 0 ? 10 : W.value.width,
755
+ height: W.value.height <= 0 ? 10 : W.value.height,
756
+ style: { pointerEvents: "none" }
757
+ }, [b(e.$slots, "chart-background", {}, void 0, !0)], 8, He)) : d("", !0),
758
+ p("circle", {
759
+ cx: (W.value.width <= 0 ? 1e-4 : W.value.width) / 2,
760
+ cy: (W.value.height <= 0 ? 1e-4 : W.value.height) / 2 + M.value.circle.offsetY,
761
+ r: G.value <= 0 ? 1e-4 : G.value,
762
+ stroke: M.value.circle.stroke,
763
+ "stroke-width": M.value.circle.strokeWidth,
764
+ fill: "transparent",
765
+ class: "main-circle"
766
+ }, null, 8, Ue),
767
+ Mt.value ? (_(), f("g", We, [(_(!0), f(c, null, y(I.value, (e, t) => (_(), f("path", {
768
+ key: `relation_${t}`,
769
+ style: g(Kt(e)),
770
+ stroke: J(e),
771
+ class: Ae(["relation", { "vue-ui-relation-circle-selected": L.value.hasOwnProperty("id") && R.value.includes(e.id) }]),
772
+ d: `M${e.x1},${e.y1} C${e.x1},${e.y1} ${W.value.width / 2},${W.value.height / 2 + M.value.circle.offsetY} ${e.x2},${e.y2}`,
773
+ fill: "none",
774
+ "stroke-width": tn(e),
775
+ "stroke-linecap": "round"
776
+ }, null, 14, Ge))), 128)), (_(!0), f(c, null, y(I.value, (t, n) => (_(), f("g", Ke, [
777
+ Y(t) ? b(e.$slots, "dataLabel", ke({ ref_for: !0 }, {
778
+ x: t.midPointBezier.x,
779
+ y: t.midPointBezier.y,
780
+ color: J(t),
781
+ weight: t.weight,
782
+ fontSize: V.value
783
+ }), void 0, !0, 0) : d("", !0),
784
+ Y(t) && !e.$slots.dataLabel ? (_(), f("circle", {
785
+ key: 1,
786
+ cx: t.midPointBezier.x,
787
+ cy: t.midPointBezier.y,
788
+ fill: J(t),
789
+ r: V.value,
790
+ stroke: M.value.backgroundColor,
791
+ "stroke-width": "1"
792
+ }, null, 8, qe)) : d("", !0),
793
+ Y(t) && !e.$slots.dataLabel ? (_(), f("text", {
794
+ key: 2,
795
+ x: t.midPointBezier.x,
796
+ y: t.midPointBezier.y + V.value / 3,
797
+ fill: S(re)(J(t)),
798
+ "text-anchor": "middle",
799
+ "font-size": V.value
800
+ }, x(S(s)(j.value.formatter, t.weight, S(r)({
801
+ p: j.value.prefix,
802
+ v: t.weight,
803
+ s: j.value.suffix,
804
+ r: j.value.rounding
805
+ }), { ...t })), 9, Je)) : d("", !0)
806
+ ]))), 256))])) : (_(), f("g", Ye, [(_(!0), f(c, null, y(I.value, (e, t) => (_(), f("line", {
807
+ key: `relation_${t}`,
808
+ stroke: J(e),
809
+ "stroke-width": tn(e),
810
+ style: g(Kt(e)),
811
+ x1: e.x1,
812
+ x2: e.x2,
813
+ y1: e.y1,
814
+ y2: e.y2,
815
+ class: Ae({ "vue-ui-relation-circle-selected": L.value.hasOwnProperty("id") && R.value.includes(e.id) }),
816
+ "stroke-linecap": "round"
817
+ }, null, 14, Xe))), 128)), (_(!0), f(c, null, y(I.value, (t, n) => (_(), f("g", Ze, [
818
+ Y(t) ? b(e.$slots, "dataLabel", ke({ ref_for: !0 }, {
819
+ x: t.midPointLine.x,
820
+ y: t.midPointLine.y,
821
+ color: J(t),
822
+ weight: t.weight,
823
+ fontSize: V.value
824
+ }), void 0, !0, 0) : d("", !0),
825
+ Y(t) && !e.$slots.dataLabel && j.value.show ? (_(), f("circle", {
826
+ key: 1,
827
+ cx: t.midPointLine.x,
828
+ cy: t.midPointLine.y,
829
+ fill: J(t),
830
+ r: V.value,
831
+ stroke: M.value.backgroundColor,
832
+ "stroke-width": "1"
833
+ }, null, 8, Qe)) : d("", !0),
834
+ Y(t) && !e.$slots.dataLabel && j.value.show ? (_(), f("text", {
835
+ key: 2,
836
+ x: t.midPointLine.x,
837
+ y: t.midPointLine.y + V.value / 3,
838
+ fill: S(re)(J(t)),
839
+ "text-anchor": "middle",
840
+ "font-size": V.value
841
+ }, x(S(s)(j.value.formatter, t.weight, S(r)({
842
+ p: j.value.prefix,
843
+ v: t.weight,
844
+ s: j.value.suffix,
845
+ r: j.value.rounding
846
+ }), { ...t })), 9, $e)) : d("", !0)
847
+ ]))), 256))])),
848
+ (_(!0), f(c, null, y(F.value, (e, t) => (_(), f("text", {
849
+ key: `plot_text_${t}`,
850
+ "text-anchor": qt(e),
851
+ transform: Xt(e),
852
+ x: Jt(e),
853
+ y: e.y + 5,
854
+ class: "vue-ui-relation-circle-legend",
855
+ "transform-origin": "start",
856
+ "font-weight": L.value.id === e.id ? "900" : "400",
857
+ style: g(`font-family:${M.value.fontFamily};${Yt(e)};cursor:${N.value ? "pointer" : "default"}`),
858
+ "font-size": U.value,
859
+ fill: M.value.labels.color,
860
+ "text-decoration": t === X.value || t === D.value ? "underline" : void 0,
861
+ onClick: (n) => en(e, t),
862
+ onMouseenter: (n) => Zt(e, t),
863
+ onMouseleave: (n) => Qt(e, t)
864
+ }, [S(vt) ? (_(), f(c, { key: 0 }, [Ee("--------")], 64)) : (_(), f(c, { key: 1 }, [Ee(x(e.label) + " (" + x(S(s)(j.value.formatter, e.totalWeight, S(r)({
865
+ p: j.value.prefix,
866
+ v: e.totalWeight,
867
+ s: j.value.suffix,
868
+ r: j.value.rounding
869
+ }), { ...e })) + ") ", 1)], 64))], 44, et))), 128)),
870
+ (_(!0), f(c, null, y(F.value, (e, t) => (_(), f("circle", {
871
+ cx: e.x,
872
+ cy: e.y,
873
+ key: `plot_${t}`,
874
+ style: g(`${Gt(e)}; transition: r 0.2s ease-in-out; cursor:${N.value ? "pointer" : "default"}`),
875
+ class: "vue-ui-relation-circle-plot",
876
+ fill: M.value.plot.useSerieColor ? e.color : M.value.plot.color,
877
+ stroke: M.value.backgroundColor,
878
+ "stroke-width": "1",
879
+ r: H.value * (t === X.value || t === D.value ? 2 : 1),
880
+ onClick: (n) => en(e, t),
881
+ onMouseenter: (n) => Zt(e, t),
882
+ onMouseleave: (n) => Qt(e, t)
883
+ }, null, 44, tt))), 128)),
884
+ b(e.$slots, "svg", { svg: {
885
+ ...W.value,
886
+ isPrintingImg: S(Tt) || S(Et) || S(sn),
887
+ isPrintingSvg: S(cn)
888
+ } }, void 0, !0)
889
+ ], 42, Ve)), e.$slots.hint ? (_(), f("div", nt, [b(e.$slots, "hint", h(m({
890
+ hint: k.value.a11y.translations.keyboardNavigation,
891
+ isVisible: O.value
892
+ })), void 0, !0)])) : d("", !0)]),
893
+ e.$slots.watermark ? (_(), f("div", rt, [b(e.$slots, "watermark", h(m({ isPrinting: S(Tt) || S(Et) || S(sn) || S(cn) })), void 0, !0)])) : d("", !0),
894
+ e.$slots.source ? (_(), f("div", {
895
+ key: 6,
896
+ ref_key: "source",
897
+ ref: mt,
898
+ dir: "auto"
899
+ }, [b(e.$slots, "source", {}, void 0, !0)], 512)) : d("", !0),
900
+ b(e.$slots, "skeleton", {}, () => [S(vt) ? (_(), u(de, { key: 0 })) : d("", !0)], !0)
901
+ ], 44, Re));
902
+ }
903
+ }, [["__scopeId", "data-v-49dbbf69"]]);
904
+ //#endregion
905
+ export { Le as n, it as t };