vue-data-ui 3.23.9 → 3.23.11

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 (200) hide show
  1. package/README.md +40 -40
  2. package/dist/{Arrow-CF0VFcBH.js → Arrow-DrF4NNJO.js} +1 -1
  3. package/dist/{BaseDraggableDialog-LoqqwRtV.js → BaseDraggableDialog-Dr_Q6Yt5.js} +2 -2
  4. package/dist/{BaseIcon-BfndwIWE.js → BaseIcon-BbElSC8_.js} +1 -1
  5. package/dist/{BaseLegendToggle-DZVucLnv.js → BaseLegendToggle-CtEdLr4R.js} +1 -1
  6. package/dist/{BaseZoomControls-BZvCnZEi.js → BaseZoomControls-Cvq4UmNG.js} +2 -2
  7. package/dist/{ColorPicker--ayG2YHf.js → ColorPicker-ChOgAmCi.js} +2 -2
  8. package/dist/{DataTable-BbKgJ5UI.js → DataTable-CmyEubtT.js} +2 -2
  9. package/dist/{HillActions-BD9j_sOU.js → HillActions-3HneGJhS.js} +1 -1
  10. package/dist/{Legend-CQxUgOd-.js → Legend-BJtY2RA9.js} +2 -2
  11. package/dist/{NonSvgPenAndPaper-4ypecDg1.js → NonSvgPenAndPaper-DmxzHJtV.js} +3 -3
  12. package/dist/{PackageVersion-B629oKuX.js → PackageVersion-C0b7KAMa.js} +1 -1
  13. package/dist/{PenAndPaper-C0UZ74fa.js → PenAndPaper-CIa1F5Jq.js} +3 -3
  14. package/dist/{Shape-C21CMlWS.js → Shape-BAL5bQmA.js} +1 -1
  15. package/dist/{SlicerPreview-wUw1hFwe.js → SlicerPreview-BRRyc1p7.js} +426 -426
  16. package/dist/{SparkTooltip-CjsbIhzi.js → SparkTooltip-Bou05CV_.js} +1 -1
  17. package/dist/{Title-BE3qg9xl.js → Title-CaVA8EIw.js} +1 -1
  18. package/dist/{Tooltip-DhjyfHwz.js → Tooltip-CVxJe3UW.js} +1 -1
  19. package/dist/{UserOptions-Dt98of5H.js → UserOptions-WH7-49V0.js} +2 -2
  20. package/dist/components/arrow.js +1 -1
  21. package/dist/components/vue-ui-3d-bar.js +1 -1
  22. package/dist/components/vue-ui-accordion.js +1 -1
  23. package/dist/components/vue-ui-age-pyramid.js +1 -1
  24. package/dist/components/vue-ui-annotator.js +1 -1
  25. package/dist/components/vue-ui-bullet.js +1 -1
  26. package/dist/components/vue-ui-bump.js +1 -1
  27. package/dist/components/vue-ui-candlestick.js +1 -1
  28. package/dist/components/vue-ui-carousel-table.js +1 -1
  29. package/dist/components/vue-ui-chestnut.js +1 -1
  30. package/dist/components/vue-ui-chord.js +1 -1
  31. package/dist/components/vue-ui-circle-pack.js +1 -1
  32. package/dist/components/vue-ui-cursor.js +1 -1
  33. package/dist/components/vue-ui-dag.js +1 -1
  34. package/dist/components/vue-ui-dashboard.js +1 -1
  35. package/dist/components/vue-ui-digits.js +1 -1
  36. package/dist/components/vue-ui-donut-evolution.js +1 -1
  37. package/dist/components/vue-ui-donut.js +1 -1
  38. package/dist/components/vue-ui-dumbbell.js +1 -1
  39. package/dist/components/vue-ui-flow.js +1 -1
  40. package/dist/components/vue-ui-funnel.js +1 -1
  41. package/dist/components/vue-ui-galaxy.js +1 -1
  42. package/dist/components/vue-ui-gauge.js +1 -1
  43. package/dist/components/vue-ui-geo.js +1 -1
  44. package/dist/components/vue-ui-gizmo.js +1 -1
  45. package/dist/components/vue-ui-heatmap.js +1 -1
  46. package/dist/components/vue-ui-hill.js +1 -1
  47. package/dist/components/vue-ui-history-plot.js +1 -1
  48. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  49. package/dist/components/vue-ui-icon.js +1 -1
  50. package/dist/components/vue-ui-kpi.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-BYIvdTe8.js → dom-to-png-COvyU2SG.js} +1 -1
  91. package/dist/exposedLib-DrUEXSyf.js +28 -0
  92. package/dist/{img-Bnokohej.js → img-Bkzj3lDD.js} +1 -1
  93. package/dist/{labelUtils-BeVpDvTJ.js → labelUtils-iX76cA2-.js} +1 -1
  94. package/dist/{lib-Bttd6u5E.js → lib-Dqr_-I6Y.js} +166 -163
  95. package/dist/{package-C01DAl-Z.js → package-D7_0M69J.js} +1 -1
  96. package/dist/{pdf-CVIDfCrS.js → pdf-Bk_9lTdQ.js} +1 -1
  97. package/dist/{render-common-Dv5BvuwZ.js → render-common-B0f5NTO9.js} +12 -12
  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/types/vue-data-ui.d.ts +13 -2
  103. package/dist/types/vue-ui-dag.d.ts +2 -0
  104. package/dist/{useNestedProp-vPNvh7rV.js → useNestedProp-CulPqtou.js} +1 -1
  105. package/dist/{usePrinter-DN5bYhTG.js → usePrinter-CEiH1b6R.js} +2 -2
  106. package/dist/utils.js +9 -9
  107. package/dist/{vue-data-ui-DDZLOx_v.js → vue-data-ui-BlZHZHoH.js} +69 -69
  108. package/dist/vue-data-ui.js +73 -73
  109. package/dist/{vue-ui-3d-bar-C9Y9Uklb.js → vue-ui-3d-bar-CtT2BovY.js} +379 -381
  110. package/dist/{vue-ui-accordion-CLU_su1P.js → vue-ui-accordion-C6L7glHU.js} +3 -3
  111. package/dist/{vue-ui-age-pyramid-D98P16h3.js → vue-ui-age-pyramid-BhGNgnLB.js} +27 -27
  112. package/dist/{vue-ui-annotator-QjHngrui.js → vue-ui-annotator-BwIu0JUV.js} +9 -9
  113. package/dist/vue-ui-bullet-BI7KJyJx.js +700 -0
  114. package/dist/{vue-ui-bump-BP7UOMFX.js → vue-ui-bump-BCQ97z1G.js} +325 -325
  115. package/dist/{vue-ui-candlestick-XPQeeduK.js → vue-ui-candlestick-Cs7I5MQS.js} +245 -245
  116. package/dist/{vue-ui-carousel-table-D39rMqRb.js → vue-ui-carousel-table-CDjAjc4b.js} +108 -108
  117. package/dist/{vue-ui-chestnut-B0xezYHS.js → vue-ui-chestnut-d6GxjfcP.js} +86 -86
  118. package/dist/vue-ui-chord-BuConnPN.js +1345 -0
  119. package/dist/vue-ui-circle-pack-CmxANHap.js +1633 -0
  120. package/dist/{vue-ui-cursor-JXCd2JAw.js → vue-ui-cursor-CQcnZYBv.js} +3 -3
  121. package/dist/{vue-ui-dag-D42c5rJN.js → vue-ui-dag-DKUZN-aQ.js} +923 -885
  122. package/dist/{vue-ui-dashboard-9-9eUWEy.js → vue-ui-dashboard-ciI4wMe6.js} +69 -69
  123. package/dist/{vue-ui-digits-CCkSVNpz.js → vue-ui-digits-DWf1vzYE.js} +3 -3
  124. package/dist/{vue-ui-donut-BnVCS9Ll.js → vue-ui-donut-CvCViwSI.js} +64 -64
  125. package/dist/vue-ui-donut-DZTtuFAG.js +2413 -0
  126. package/dist/{vue-ui-donut-evolution-CgjBE6EG.js → vue-ui-donut-evolution-BvZX3Gi8.js} +347 -347
  127. package/dist/{vue-ui-dumbbell-CVX2tGDU.js → vue-ui-dumbbell-BZywCpHd.js} +233 -236
  128. package/dist/vue-ui-flow-D5jcKr_S.js +1214 -0
  129. package/dist/vue-ui-funnel-7zX5QnQx.js +747 -0
  130. package/dist/{vue-ui-galaxy-CThLjvdQ.js → vue-ui-galaxy-BuGd-Ojm.js} +323 -325
  131. package/dist/vue-ui-gauge-BlDQIpBk.js +932 -0
  132. package/dist/{vue-ui-geo-DwNCnH_W.js → vue-ui-geo-PWGZw4Un.js} +34 -34
  133. package/dist/{vue-ui-gizmo-BkQUnPvN.js → vue-ui-gizmo-CTxB3PAl.js} +10 -10
  134. package/dist/{vue-ui-heatmap-COX6rafn.js → vue-ui-heatmap-sFF5IbM8.js} +472 -472
  135. package/dist/{vue-ui-hill-7BisXEYH.js → vue-ui-hill-DO3r2s-i.js} +10 -10
  136. package/dist/vue-ui-history-plot-Cj-Olvhn.js +1695 -0
  137. package/dist/vue-ui-horizontal-bar-B34aYuDZ.js +1708 -0
  138. package/dist/{vue-ui-kpi-R9bl7je_.js → vue-ui-kpi-Co6y1YlE.js} +3 -3
  139. package/dist/{vue-ui-mini-loader-SNMKnmMa.js → vue-ui-mini-loader-BVSIAFYi.js} +2 -2
  140. package/dist/{vue-ui-molecule-CNtY2_yF.js → vue-ui-molecule-ERAB4YzZ.js} +157 -163
  141. package/dist/{vue-ui-mood-radar-DUxhOQpR.js → vue-ui-mood-radar-BPp7L6OP.js} +302 -304
  142. package/dist/{vue-ui-nested-donuts-Bbub_wCe.js → vue-ui-nested-donuts-CX5ut2yp.js} +110 -113
  143. package/dist/vue-ui-onion-CWYJTUCq.js +1233 -0
  144. package/dist/vue-ui-parallel-coordinate-plot-DJrV-dVt.js +1430 -0
  145. package/dist/{vue-ui-quadrant-CFvonilu.js → vue-ui-quadrant-wj8Up03L.js} +32 -32
  146. package/dist/{vue-ui-quick-chart-iEJt6333.js → vue-ui-quick-chart-CPYdScHL.js} +153 -153
  147. package/dist/{vue-ui-radar-ClZ_OIr5.js → vue-ui-radar-D3gLQcI5.js} +41 -41
  148. package/dist/{vue-ui-rating-BnXrMeGg.js → vue-ui-rating-dBCk6ECe.js} +26 -26
  149. package/dist/vue-ui-relation-circle-DeNBOPjz.js +903 -0
  150. package/dist/vue-ui-ridgeline-DQcZJ_hv.js +1614 -0
  151. package/dist/vue-ui-rings-CF9NfFW2.js +1250 -0
  152. package/dist/vue-ui-scatter-U_xxKOte.js +2403 -0
  153. package/dist/{vue-ui-skeleton-Drk48XZi.js → vue-ui-skeleton-GA4wzjXV.js} +3 -3
  154. package/dist/{vue-ui-smiley-BQuXRW4o.js → vue-ui-smiley-D1pW2Fdy.js} +23 -23
  155. package/dist/{vue-ui-spark-trend-CYcS6-FN.js → vue-ui-spark-trend-BXRGMn5-.js} +23 -23
  156. package/dist/{vue-ui-sparkbar-eqLrT50j.js → vue-ui-sparkbar-96D0eR-o.js} +24 -24
  157. package/dist/{vue-ui-sparkgauge-C_b1h4DY.js → vue-ui-sparkgauge-BWBek2u2.js} +61 -61
  158. package/dist/{vue-ui-sparkhistogram-BzJr83-i.js → vue-ui-sparkhistogram-Cqs068RX.js} +15 -15
  159. package/dist/vue-ui-sparkline-B8cyY_P1.js +1584 -0
  160. package/dist/{vue-ui-sparkstackbar-O6Ojc2m8.js → vue-ui-sparkstackbar-C0BkLc2b.js} +207 -207
  161. package/dist/vue-ui-stackbar-DtsOc7B_.js +2332 -0
  162. package/dist/{vue-ui-stackline-D7d_Yqid.js → vue-ui-stackline-MSs0pdhE.js} +751 -747
  163. package/dist/{vue-ui-strip-plot-AljSBqsw.js → vue-ui-strip-plot-Df-TomML.js} +63 -66
  164. package/dist/vue-ui-table-BKSRQGVK.js +1352 -0
  165. package/dist/{vue-ui-table-heatmap-DRABMw2H.js → vue-ui-table-heatmap-CglQqfWH.js} +84 -84
  166. package/dist/{vue-ui-table-sparkline-OScDr7Z5.js → vue-ui-table-sparkline-B7Dh-fN2.js} +11 -11
  167. package/dist/vue-ui-thermometer-DXuLn8NC.js +756 -0
  168. package/dist/{vue-ui-timer--q-f8RPJ.js → vue-ui-timer-orCjVwS4.js} +12 -12
  169. package/dist/{vue-ui-tiremarks-B2Fji5g0.js → vue-ui-tiremarks-DNoQ6Fl2.js} +12 -12
  170. package/dist/{vue-ui-treemap-CHqCU3Mt.js → vue-ui-treemap-90_Clj0e.js} +51 -54
  171. package/dist/vue-ui-waffle-BSQXyJ1S.js +1610 -0
  172. package/dist/{vue-ui-wheel-Dz2QzZcJ.js → vue-ui-wheel-CfU0Nnn0.js} +28 -28
  173. package/dist/{vue-ui-word-cloud-DBp8kZ4A.js → vue-ui-word-cloud-AgMvmPlI.js} +38 -41
  174. package/dist/{vue-ui-world-DbYSOiC4.js → vue-ui-world-D0Z9B6M2.js} +120 -123
  175. package/dist/{vue-ui-xy-C23skZ-G.js → vue-ui-xy-5Te2TfRK.js} +1645 -1641
  176. package/dist/vue-ui-xy-canvas-BHpBO5dS.js +1823 -0
  177. package/dist/{vue-ui-xy-CrHCmWhv.js → vue-ui-xy-ua_mFu_a.js} +99 -99
  178. package/package.json +1 -1
  179. package/dist/exposedLib-C0DPCgFj.js +0 -28
  180. package/dist/vue-ui-bullet-GgRg9sbN.js +0 -700
  181. package/dist/vue-ui-chord-eOIKOfDO.js +0 -1345
  182. package/dist/vue-ui-circle-pack-kCN1R-pw.js +0 -1636
  183. package/dist/vue-ui-donut-HrEXYDqO.js +0 -2415
  184. package/dist/vue-ui-flow-R-fW_EeT.js +0 -1217
  185. package/dist/vue-ui-funnel-CT3ixpCM.js +0 -750
  186. package/dist/vue-ui-gauge-DRXsVxYq.js +0 -932
  187. package/dist/vue-ui-history-plot-Bn_M0AFg.js +0 -1698
  188. package/dist/vue-ui-horizontal-bar-CkRRidx3.js +0 -1708
  189. package/dist/vue-ui-onion-Bix9MN3w.js +0 -1233
  190. package/dist/vue-ui-parallel-coordinate-plot-6SI2vJOo.js +0 -1430
  191. package/dist/vue-ui-relation-circle-CZ68uWhc.js +0 -903
  192. package/dist/vue-ui-ridgeline-BSiPLA08.js +0 -1614
  193. package/dist/vue-ui-rings-mGN_bpo1.js +0 -1252
  194. package/dist/vue-ui-scatter-C0PouRMY.js +0 -2403
  195. package/dist/vue-ui-sparkline-CyJKVGYw.js +0 -1584
  196. package/dist/vue-ui-stackbar-J5QzbBaA.js +0 -2328
  197. package/dist/vue-ui-table-CBdCPS2r.js +0 -1352
  198. package/dist/vue-ui-thermometer-DWmM_Hn9.js +0 -756
  199. package/dist/vue-ui-waffle-C1ksX6OD.js +0 -1612
  200. package/dist/vue-ui-xy-canvas-B-KxaFGF.js +0 -1819
@@ -0,0 +1,1214 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { $ as t, D as n, It as r, Jt as i, Nt as a, S as o, St as s, X as c, Xt as l, b as u, i as d, n as f, nt as p, q as ee, r as m, t as h, w as g } from "./lib-Dqr_-I6Y.js";
3
+ import { n as te, t as _ } from "./useHints-Dq_w2E8B.js";
4
+ import { t as v } from "./useConfig-DwdGsXTx.js";
5
+ import { t as y } from "./usePrinter-CEiH1b6R.js";
6
+ import { n as b, t as x } from "./BaseScanner-DZvpgOjM.js";
7
+ import { t as S } from "./useNestedProp-CulPqtou.js";
8
+ import { t as ne } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as C } from "./useChartExport-DNiwdPmb.js";
10
+ import { t as re } from "./img-Bkzj3lDD.js";
11
+ import { n as ie } from "./Title-CaVA8EIw.js";
12
+ import { t as ae } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
+ import { l as oe, t as se } from "./useResponsive-ZtArZtUf.js";
14
+ import { t as ce } from "./A11yDataTable-DdRsVULz.js";
15
+ import { t as le } from "./useUserOptionState-DK-_1ddE.js";
16
+ import { t as ue } from "./useChartAccessibility-DYqac8yF.js";
17
+ import { t as de } from "./Legend-BJtY2RA9.js";
18
+ import { t as fe } from "./vue_ui_flow-BewZjjKG.js";
19
+ import { Fragment as pe, Teleport as me, computed as w, createBlock as T, createCommentVNode as E, createElementBlock as D, createElementVNode as O, createSlots as he, createTextVNode as ge, createVNode as _e, defineAsyncComponent as k, guardReactiveProps as A, mergeProps as ve, nextTick as ye, normalizeClass as be, normalizeProps as j, normalizeStyle as M, onMounted as xe, openBlock as N, ref as P, renderList as Se, renderSlot as F, resolveDynamicComponent as Ce, toDisplayString as I, toRefs as we, unref as L, watch as Te, withCtx as R } from "vue";
20
+ //#region src/components/vue-ui-flow.vue
21
+ var Ee = /* @__PURE__ */ e({ default: () => qe }), De = ["id"], Oe = ["id"], ke = {
22
+ key: 2,
23
+ ref: "noTitle",
24
+ class: "vue-data-ui-no-title-space",
25
+ style: "height:36px; width: 100%;background:transparent"
26
+ }, Ae = ["id"], je = { style: { position: "relative" } }, Me = [
27
+ "xmlns",
28
+ "aria-describedby",
29
+ "viewBox"
30
+ ], Ne = ["width", "height"], Pe = ["id"], Fe = ["stop-color"], Ie = ["stop-color"], Le = [
31
+ "d",
32
+ "fill",
33
+ "stroke",
34
+ "stroke-width"
35
+ ], Re = [
36
+ "data-a11y-node-id",
37
+ "x",
38
+ "y",
39
+ "height",
40
+ "width",
41
+ "fill",
42
+ "stroke",
43
+ "stroke-width",
44
+ "rx",
45
+ "aria-label",
46
+ "onMouseenter",
47
+ "onMouseleave",
48
+ "onClick"
49
+ ], ze = { key: 1 }, Be = [
50
+ "x",
51
+ "y",
52
+ "font-size",
53
+ "fill"
54
+ ], Ve = [
55
+ "x",
56
+ "y",
57
+ "font-size",
58
+ "fill"
59
+ ], He = {
60
+ key: 0,
61
+ style: {
62
+ position: "absolute",
63
+ top: "100%",
64
+ left: "0",
65
+ width: "100%"
66
+ },
67
+ "data-dom-to-png-ignore": "",
68
+ "aria-hidden": "true"
69
+ }, Ue = {
70
+ key: 5,
71
+ class: "vue-data-ui-watermark"
72
+ }, We = ["id"], Ge = ["onClick"], Ke = { style: {
73
+ display: "flex",
74
+ "align-items": "center"
75
+ } }, qe = /*#__PURE__*/ ae({
76
+ __name: "vue-ui-flow",
77
+ props: {
78
+ config: {
79
+ type: Object,
80
+ default() {
81
+ return {};
82
+ }
83
+ },
84
+ dataset: {
85
+ type: Array,
86
+ default() {
87
+ return [];
88
+ }
89
+ }
90
+ },
91
+ emits: ["copyAlt"],
92
+ setup(e, { expose: ae, emit: Ee }) {
93
+ let qe = k(() => import("./Tooltip-CVxJe3UW.js")), Je = k(() => import("./BaseIcon-BbElSC8_.js").then((e) => e.n)), Ye = k(() => import("./vue-ui-accordion-C6L7glHU.js").then((e) => e.n)), Xe = k(() => import("./DataTable-CmyEubtT.js")), Ze = k(() => import("./PenAndPaper-CIa1F5Jq.js").then((e) => e.t)), Qe = k(() => import("./UserOptions-WH7-49V0.js").then((e) => e.n)), $e = k(() => import("./PackageVersion-C0b7KAMa.js").then((e) => e.t)), et = k(() => import("./BaseDraggableDialog-Dr_Q6Yt5.js").then((e) => e.n)), { vue_ui_flow: tt } = v(), { isThemeValid: nt, warnInvalidTheme: rt } = ne(), z = e, it = Ee, B = P(ee()), V = P(null), at = P(0), ot = P(0), st = P(!1), ct = P(""), lt = P(null), ut = P(null), dt = P(null), ft = P(null), pt = P(null), mt = P(!1), ht = P(null), gt = P(null), _t = P(null), vt = P(null), H = P(null), yt = P({
94
+ x: 0,
95
+ y: 0
96
+ }), bt = P("pointer"), xt = P(!1), St = w(() => !!z.dataset && z.dataset.length);
97
+ xe(() => {
98
+ mt.value = !0, kt();
99
+ });
100
+ let U = P(!1);
101
+ function Ct(e) {
102
+ U.value = e, at.value += 1;
103
+ }
104
+ let W = P(Nt());
105
+ te({
106
+ config: () => W.value,
107
+ dataset: () => z.dataset,
108
+ component: "VueUiFlow",
109
+ rules: [_.emptyArray, _.noHint]
110
+ });
111
+ let G = w(() => W.value.userOptions.useCursorPointer), wt = w(() => l({
112
+ defaultConfig: {
113
+ userOptions: { show: !1 },
114
+ nodeCategories: {
115
+ B: "A",
116
+ C: "B"
117
+ },
118
+ nodeCategoryColors: {
119
+ A: "#CACACA",
120
+ B: "#AAAAAA"
121
+ },
122
+ table: { show: !1 },
123
+ style: { chart: {
124
+ backgroundColor: "#99999930",
125
+ legend: { backgroundColor: "transparent" },
126
+ nodes: {
127
+ labels: { show: !1 },
128
+ stroke: "#666666"
129
+ },
130
+ links: { stroke: "#666666" }
131
+ } }
132
+ },
133
+ userConfig: W.value.skeletonConfig ?? {}
134
+ })), { loading: Tt, FINAL_DATASET: Et, manualLoading: Dt } = b({
135
+ ...we(z),
136
+ FINAL_CONFIG: W,
137
+ prepareConfig: Nt,
138
+ skeletonDataset: z.config?.skeletonDataset ?? [
139
+ [
140
+ "A",
141
+ "B",
142
+ 2,
143
+ "#CACACA"
144
+ ],
145
+ [
146
+ "B",
147
+ "C",
148
+ 1,
149
+ "#CACACA"
150
+ ],
151
+ [
152
+ "C",
153
+ "D",
154
+ .5,
155
+ "#CACACA"
156
+ ],
157
+ [
158
+ "E",
159
+ "F",
160
+ 1,
161
+ "#AAAAAA"
162
+ ],
163
+ [
164
+ "F",
165
+ "G",
166
+ .5,
167
+ "#AAAAAA"
168
+ ],
169
+ [
170
+ "G",
171
+ "H",
172
+ .25,
173
+ "#AAAAAA"
174
+ ]
175
+ ],
176
+ skeletonConfig: l({
177
+ defaultConfig: W.value,
178
+ userConfig: wt.value
179
+ })
180
+ }), Ot = w(() => W.value.debug);
181
+ function kt() {
182
+ if (a(z.dataset) && (p({
183
+ componentName: "VueUiFlow",
184
+ type: "dataset",
185
+ debug: Ot.value
186
+ }), Dt.value = !0), a(z.dataset) || (Dt.value = W.value.loading), W.value.responsive) {
187
+ let e = oe(() => {
188
+ let { width: e, height: t } = se({
189
+ chart: V.value,
190
+ title: W.value.style.chart.title.text ? ut.value : null,
191
+ legend: W.value.style.chart.legend.show ? lt.value : null,
192
+ source: dt.value
193
+ });
194
+ requestAnimationFrame(() => {
195
+ Pt.value = e, Ft.value = t;
196
+ });
197
+ });
198
+ ft.value && (pt.value && ft.value.unobserve(pt.value), ft.value.disconnect()), ft.value = new ResizeObserver(e), pt.value = V.value.parentNode, ft.value.observe(pt.value);
199
+ }
200
+ }
201
+ let { userOptionsVisible: At, setUserOptionsVisibility: jt, keepUserOptionState: Mt } = le({ config: W.value }), { svgRef: K } = ue({ config: W.value.style.chart.title });
202
+ function Nt() {
203
+ let e = S({
204
+ userConfig: z.config,
205
+ defaultConfig: tt
206
+ }), t = e, n = e.theme;
207
+ if (n) if (!nt.value(e)) rt(e), t = e;
208
+ else {
209
+ let a = S({
210
+ userConfig: fe[n] || z.config,
211
+ defaultConfig: e
212
+ });
213
+ t = {
214
+ ...S({
215
+ userConfig: z.config,
216
+ defaultConfig: a
217
+ }),
218
+ customPalette: e.customPalette.length ? e.customPalette : i[n] || r
219
+ };
220
+ }
221
+ else t = e;
222
+ return t.nodeCategories = z.config.nodeCategories || {}, t.nodeCategoryColors = z.config.nodeCategoryColors || {}, t;
223
+ }
224
+ let Pt = P(W.value.style.chart.width), Ft = P(W.value.style.chart.height);
225
+ Te(() => z.config, (e) => {
226
+ Tt.value || (W.value = Nt()), At.value = !W.value.userOptions.showOnChartHover, kt(), ot.value += 1, q.value.showTable = W.value.table.show;
227
+ }, { deep: !0 }), Te(() => z.dataset, (e) => {
228
+ Array.isArray(e) && e.length > 0 && (Dt.value = !1);
229
+ }, { deep: !0 });
230
+ let { isPrinting: It, isImaging: Lt, generatePdf: Rt, generateImage: zt } = y({
231
+ elementId: `flow_${B.value}`,
232
+ fileName: W.value.style.chart.title.text || "vue-ui-flow",
233
+ options: W.value.userOptions.print
234
+ }), Bt = w(() => W.value.userOptions.show && !W.value.style.chart.title.text), Vt = w(() => g(W.value.customPalette)), Ht = w(() => W.value.style.chart.nodes.width), q = P({
235
+ showTable: W.value.table.show,
236
+ showTooltip: W.value.style.chart.tooltip.show
237
+ });
238
+ Te(W, () => {
239
+ q.value = {
240
+ showTable: W.value.table.show,
241
+ showTooltip: W.value.style.chart.tooltip.show
242
+ };
243
+ }, { immediate: !0 });
244
+ let Ut = w(() => !Et.value || !Et.value.length ? [] : Et.value.map((e, t) => [
245
+ e[0],
246
+ e[1],
247
+ u(e[2]),
248
+ e[3] ? o(e[3]) : Vt.value[t] || Vt.value[t % Vt.value.length] || r[t] || r[t % r.length]
249
+ ]));
250
+ function Wt(e) {
251
+ let t = {}, n = {};
252
+ function i(e, r) {
253
+ t[e] || (t[e] = {
254
+ level: null,
255
+ inflow: 0,
256
+ outflow: 0,
257
+ children: [],
258
+ color: null,
259
+ uid: ee()
260
+ }), t[e].level === null && (t[e].level = r), n[r] || (n[r] = []), n[r].includes(e) || n[r].push(e);
261
+ }
262
+ e.forEach(([e, n, r]) => {
263
+ let a = t[e]?.level ?? 0, o = a + 1;
264
+ i(e, a), i(n, o), t[e].children.push({
265
+ target: n,
266
+ value: r
267
+ }), t[e].outflow += r, t[n].inflow += r;
268
+ });
269
+ let a = new Set(e.map(([e]) => e)), o = new Set(e.map(([, e]) => e)), s = Array.from(a).filter((e) => !o.has(e)), c = {};
270
+ s.forEach((e, t) => {
271
+ c[e] = Vt.value[t] || r[t % r.length];
272
+ });
273
+ let l = {};
274
+ e.forEach(([e, t, n, r]) => {
275
+ r && (l[e] = r, l[t] = r);
276
+ }), Object.keys(t).forEach((e, n) => {
277
+ let i = W.value.nodeCategories?.[e], a = i ? W.value.nodeCategoryColors?.[i] : null;
278
+ t[e].color = l[e] || a || (s.includes(e) ? c[e] : null) || r[n % r.length];
279
+ }), Object.keys(t).forEach((e) => {
280
+ t[e].value = Math.max(t[e].inflow, t[e].outflow);
281
+ });
282
+ let d = qt.value, f = Jt.value.width, p = Jt.value.height, m = Object.keys(n).map(Number).sort((e, t) => e - t), h = m.length || 1, g = h > 1 ? f / (h - 1) : 0, te = Number(Ht.value), _ = Number(W.value.style.chart.nodes.gapPx ?? W.value.style.chart.nodes.gap ?? 8), v = Number(W.value.style.chart.nodes.minHeight || 0);
283
+ function y(e) {
284
+ let r = n[e], i = r.length;
285
+ if (!i) return Infinity;
286
+ let a = Math.max(0, (i - 1) * _), o = Math.max(0, p - a), s = Math.min(v, i ? o / i : 0), c = 0, l = r.map((e) => t[e].value || 0), u = l.reduce((e, t) => e + t, 0);
287
+ for (let e = 0; e < 12; e += 1) {
288
+ let e = u > 0 ? (o - c) / u : 0, t = [];
289
+ for (let n = 0; n < l.length; n += 1) {
290
+ let r = l[n];
291
+ r < 0 || r * e < s && t.push(n);
292
+ }
293
+ if (!t.length) return Math.max(0, e);
294
+ for (let e of t) c += s, u -= l[e], l[e] = -1;
295
+ if (u <= 0) return 0;
296
+ }
297
+ return u > 0 ? Math.max(0, (o - c) / u) : 0;
298
+ }
299
+ let b = m.map(y), x = b.length ? Math.min(...b) : 0, S = {};
300
+ m.forEach((e) => {
301
+ let r = n[e], i = r.length, a = Math.max(0, (i - 1) * _), o = Math.max(0, p - a), s = Math.min(v, i ? o / i : 0), c = r.map((e) => Math.max(s, (t[e].value || 0) * x)), l = c.reduce((e, t) => e + t, 0) + a, u = Math.max(0, (p - l) / 2);
302
+ r.forEach((n, r) => {
303
+ let a = c[r], o = d.left + e * g, s = u;
304
+ S[n] = {
305
+ x: o,
306
+ y: s,
307
+ absoluteY: s,
308
+ height: a,
309
+ i: r,
310
+ color: t[n].color,
311
+ value: t[n].value,
312
+ id: ee()
313
+ }, u += a, r < i - 1 && (u += _);
314
+ });
315
+ });
316
+ let ne = [], C = d.top, re = {}, ie = {};
317
+ Object.keys(t).forEach((e) => {
318
+ re[e] = S[e]?.y ?? 0, ie[e] = 0;
319
+ });
320
+ let ae = !!W.value.style.chart.links.smooth, oe = .5;
321
+ return m.forEach((e) => {
322
+ n[e].forEach((e) => {
323
+ let n = t[e], r = S[e];
324
+ if (!n.children || !n.children.length) return;
325
+ let i = r.y;
326
+ n.children.forEach(({ target: a, value: o }) => {
327
+ let s = S[a], c = t[a], l = n.outflow > 0 ? o / n.outflow : 0, d = c.inflow > 0 ? o / c.inflow : 0, f = u(i + C), p = u(i + l * r.height + C), m = re[a], h = m + d * s.height;
328
+ ie[a] += o;
329
+ let g = c.inflow > 0 && ie[a] >= c.inflow - 1e-6, _ = s.y + s.height;
330
+ (g || h > _ - .25) && (h = _);
331
+ let v = u(m + C), y = u(h + C), b = u(r.x + te), x = u(s.x), se;
332
+ if (!ae || x <= b) se = `M ${b} ${f} L ${b} ${p} L ${x} ${y} L ${x} ${v} Z`;
333
+ else {
334
+ let e = x - b, t = u(b + e * oe), n = u(x - e * oe), r = f, i = v, a = p, o = y;
335
+ se = `M ${b} ${r} C ${t} ${r}, ${n} ${i}, ${x} ${i} L ${x} ${o} C ${n} ${o}, ${t} ${a}, ${b} ${a} Z`;
336
+ }
337
+ ne.push({
338
+ id: ee(),
339
+ source: e,
340
+ target: a,
341
+ path: se,
342
+ value: o,
343
+ sourceColor: n.color,
344
+ targetColor: t[a].color
345
+ }), i = p - C, re[a] = h;
346
+ });
347
+ });
348
+ }), {
349
+ nodeCoordinates: S,
350
+ links: ne
351
+ };
352
+ }
353
+ let J = w(() => {
354
+ let e = Wt(Et.value);
355
+ return {
356
+ nodes: Object.keys(e.nodeCoordinates).map((t, n) => ({
357
+ ...e.nodeCoordinates[t],
358
+ name: t
359
+ })),
360
+ links: e.links
361
+ };
362
+ }), Gt = w(() => Pt.value), Kt = w(() => Ft.value), qt = w(() => W.value.style.chart.padding), Jt = w(() => ({
363
+ width: Math.max(0, Gt.value - 40 - qt.value.right - qt.value.left),
364
+ height: Math.max(0, Kt.value - qt.value.top - qt.value.bottom)
365
+ })), Yt = w(() => ({
366
+ width: Gt.value,
367
+ height: Kt.value
368
+ }));
369
+ function Xt(e) {
370
+ let t = {}, n = {}, r = /* @__PURE__ */ new Set();
371
+ return Ut.value.forEach(([e, r, i]) => {
372
+ t[e] || (t[e] = []), n[r] || (n[r] = []), t[e].push(r), n[r].push(e);
373
+ }), t[e] && t[e].forEach((e) => r.add(e)), n[e] && n[e].forEach((e) => r.add(e)), Array.from(r).concat(e);
374
+ }
375
+ let Y = P(null), X = P(null), Z = P(null), Zt = P(!1), Qt = P(null);
376
+ function $t() {
377
+ Qt.value = null, Y.value = null, X.value = null, st.value = !1, vt.value = null, H.value = null;
378
+ }
379
+ function en(e) {
380
+ if (!K.value || !e) return;
381
+ let t = K.value.querySelector(`[data-a11y-node-id="${e}"]`);
382
+ if (!t) return;
383
+ let n = t.getBoundingClientRect();
384
+ yt.value = {
385
+ x: n.left + n.width / 2,
386
+ y: n.top + n.height / 2
387
+ };
388
+ }
389
+ function tn(e, t, n = "pointer", r = null) {
390
+ $.value = [], Y.value = Xt(e.name), X.value = e.name, Qt.value = e.id, bt.value = n, vt.value = r, H.value = e.id;
391
+ let i = e.name, a = Ut.value, o = 0, l = 0, u = [], f = [], p = new Set(a.map(([e]) => e)), ee = new Set(a.map(([, e]) => e)), m = Array.from(p).filter((e) => !ee.has(e)), h = a.filter(([e]) => m.includes(e)).reduce((e, [t, n, r]) => e + r, 0), g = {};
392
+ J.value.nodes.forEach((e) => {
393
+ g[e.name] = e.color;
394
+ }), a.forEach(([e, t, n]) => {
395
+ t === i && (o += n, u.push({
396
+ source: e,
397
+ value: n,
398
+ color: g[e]
399
+ })), e === i && (l += n, f.push({
400
+ target: t,
401
+ value: n,
402
+ color: g[t]
403
+ }));
404
+ });
405
+ let te = h > 0 ? Math.max(o, l) / h * 100 : 0, _ = {
406
+ name: i,
407
+ inflow: o,
408
+ outflow: l,
409
+ from: u,
410
+ to: f,
411
+ percentOfTotal: te,
412
+ color: g[i] || "#000000"
413
+ };
414
+ W.value.events.datapointEnter && W.value.events.datapointEnter({
415
+ datapoint: _,
416
+ seriesIndex: t
417
+ }), Z.value = {
418
+ datapoint: _,
419
+ config: W.value,
420
+ seriesIndex: t,
421
+ series: J.value
422
+ }, st.value = !0;
423
+ let v = "", y = W.value.style.chart.tooltip.customFormat;
424
+ if (Zt.value = !1, s(y)) try {
425
+ let e = y({
426
+ datapoint: _,
427
+ series: J.value,
428
+ config: W.value
429
+ });
430
+ typeof e == "string" && (ct.value = e, Zt.value = !0);
431
+ } catch {
432
+ console.warn("Custom format cannot be applied.");
433
+ }
434
+ if (!Zt.value) {
435
+ let e = W.value.style.chart.tooltip.showPercentage ? `<div>${c({
436
+ p: W.value.style.chart.tooltip.translations.percentOfTotal,
437
+ v: _.percentOfTotal,
438
+ s: "%",
439
+ r: W.value.style.chart.tooltip.roundingPercentage
440
+ })}</div>` : "";
441
+ v += `<div style="width:100%;text-align:center;border-bottom:1px solid ${W.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;"><span style="margin-right:4px; color:${_.color}">⏹</span>${_.name}${e}</div>`, _.from.length && (v += `<div>${W.value.style.chart.tooltip.translations.from}</div>`, _.from.forEach((e) => {
442
+ v += `<div><span style="color:${e.color}">⏹←</span> ${e.source}: ${d(W.value.style.chart.nodes.labels.formatter, e.value, c({
443
+ p: W.value.style.chart.nodes.labels.prefix,
444
+ v: e.value,
445
+ s: W.value.style.chart.nodes.labels.suffix,
446
+ r: W.value.style.chart.nodes.labels.rounding
447
+ }))}</div>`;
448
+ })), _.to.length && (v += `<div style="margin-top:6px;">${W.value.style.chart.tooltip.translations.to}</div>`, _.to.forEach((e) => {
449
+ v += `<div><span style="color:${e.color}">⏹→</span> ${e.target}: ${d(W.value.style.chart.nodes.labels.formatter, e.value, c({
450
+ p: W.value.style.chart.nodes.labels.prefix,
451
+ v: e.value,
452
+ s: W.value.style.chart.nodes.labels.suffix,
453
+ r: W.value.style.chart.nodes.labels.rounding
454
+ }))}</div>`;
455
+ })), ct.value = v;
456
+ }
457
+ n === "keyboard" && ye(() => {
458
+ en(e.id);
459
+ });
460
+ }
461
+ function nn(e) {
462
+ let t = Z.value;
463
+ W.value.events.datapointLeave && W.value.events.datapointLeave({
464
+ datapoint: t,
465
+ seriesIndex: e
466
+ }), !(bt.value === "keyboard" && H.value) && (Qt.value = null, Y.value = null, X.value = null, st.value = !1);
467
+ }
468
+ function rn(e) {
469
+ let t = Z.value;
470
+ W.value.events.datapointClick && W.value.events.datapointClick({
471
+ datapoint: t,
472
+ seriesIndex: e
473
+ });
474
+ }
475
+ let an = w(() => J.value.links.map(({ source: e, target: t, sourceColor: n, targetColor: r, value: i }) => ({
476
+ source: e,
477
+ target: t,
478
+ sourceColor: n,
479
+ targetColor: r,
480
+ value: i
481
+ })));
482
+ function on(e = null) {
483
+ ye(() => {
484
+ let r = an.value.map((e, t) => [
485
+ [e.source],
486
+ [e.target],
487
+ [e.value]
488
+ ]), i = [
489
+ [W.value.style.chart.title.text],
490
+ [W.value.style.chart.title.subtitle.text],
491
+ [
492
+ [W.value.table.columnNames.source],
493
+ [W.value.table.columnNames.target],
494
+ [W.value.table.columnNames.value]
495
+ ]
496
+ ].concat(r), a = n(i);
497
+ e ? e(a) : t({
498
+ csvContent: a,
499
+ title: W.value.style.chart.title.text || "vue-ui-flow"
500
+ });
501
+ });
502
+ }
503
+ let sn = w(() => {
504
+ let e = [
505
+ W.value.table.columnNames.source,
506
+ W.value.table.columnNames.target,
507
+ W.value.table.columnNames.value
508
+ ], t = an.value.map((e, t) => [
509
+ {
510
+ color: e.sourceColor,
511
+ name: e.source,
512
+ shape: "square"
513
+ },
514
+ {
515
+ color: e.targetColor,
516
+ name: e.target,
517
+ shape: "square"
518
+ },
519
+ c({
520
+ p: W.value.style.chart.nodes.labels.prefix,
521
+ v: e.value,
522
+ s: W.value.style.chart.nodes.labels.suffix,
523
+ r: W.value.style.chart.nodes.labels.rounding
524
+ })
525
+ ]), n = {
526
+ th: {
527
+ backgroundColor: W.value.table.th.backgroundColor,
528
+ color: W.value.table.th.color,
529
+ outline: W.value.table.th.outline
530
+ },
531
+ td: {
532
+ backgroundColor: W.value.table.td.backgroundColor,
533
+ color: W.value.table.td.color,
534
+ outline: W.value.table.td.outline
535
+ },
536
+ breakpoint: W.value.table.responsiveBreakpoint
537
+ };
538
+ return {
539
+ colNames: [
540
+ W.value.table.columnNames.source,
541
+ W.value.table.columnNames.target,
542
+ W.value.table.columnNames.value
543
+ ],
544
+ head: e,
545
+ body: t,
546
+ config: n
547
+ };
548
+ }), cn = w(() => ({
549
+ headers: sn.value?.colNames ?? [],
550
+ rows: sn.value?.body ?? []
551
+ })), ln = w(() => [...J.value.nodes].map((e, t) => ({
552
+ ...e,
553
+ index: t,
554
+ centerX: e.x + Ht.value / 2,
555
+ centerY: u(e.absoluteY) + W.value.style.chart.padding.top + e.height / 2
556
+ })).sort((e, t) => e.x === t.x ? e.absoluteY - t.absoluteY : e.x - t.x)), Q = w(() => {
557
+ let e = [];
558
+ return ln.value.forEach((t) => {
559
+ let n = e.find((e) => Math.abs(e.x - t.x) <= 1);
560
+ n ? n.nodes.push(t) : e.push({
561
+ x: t.x,
562
+ nodes: [t]
563
+ });
564
+ }), e.forEach((e) => {
565
+ e.nodes.sort((e, t) => e.absoluteY - t.absoluteY);
566
+ }), e.sort((e, t) => e.x - t.x);
567
+ }), un = w(() => {
568
+ let e = /* @__PURE__ */ new Map();
569
+ return ln.value.forEach((t, n) => {
570
+ e.set(t.id, n);
571
+ }), e;
572
+ });
573
+ function dn() {
574
+ return J.value;
575
+ }
576
+ function fn() {
577
+ q.value.showTable = !q.value.showTable;
578
+ }
579
+ let pn = P(!1);
580
+ function mn() {
581
+ pn.value = !pn.value;
582
+ }
583
+ function hn() {
584
+ q.value.showTooltip = !q.value.showTooltip;
585
+ }
586
+ let gn = w(() => {
587
+ let e = new Set(J.value.nodes.map((e) => W.value.nodeCategories[e.name] || "__uncategorized__"));
588
+ return Array.from(e).map((e) => ({
589
+ name: e,
590
+ color: W.value.nodeCategoryColors[e] || r[0],
591
+ shape: "square",
592
+ count: J.value.nodes.filter((t) => (W.value.nodeCategories[t.name] || "__uncategorized__") === e).length
593
+ })).map((e, t) => {
594
+ let n = $.value.includes(t);
595
+ return {
596
+ ...e,
597
+ segregate: () => vn({
598
+ legend: e,
599
+ i: t
600
+ }),
601
+ isSegregated: n,
602
+ opacity: $.value.length ? n ? 1 : .5 : 1,
603
+ display: `${e.name} (${e.count})`
604
+ };
605
+ });
606
+ }), _n = w(() => gn.value.filter((e) => e.name !== "__uncategorized__")), $ = P([]);
607
+ function vn({ legend: e, i: t }) {
608
+ let n = e.name;
609
+ if (Y.value?.every((e) => W.value.nodeCategories[e] === n)) {
610
+ Y.value = null, X.value = null, $.value = [];
611
+ return;
612
+ }
613
+ $.value = [t], Y.value = J.value.nodes.filter((e) => W.value.nodeCategories[e.name] === n).map((e) => e.name), X.value = null;
614
+ }
615
+ let yn = w(() => ({
616
+ cy: "flow-legend",
617
+ backgroundColor: W.value.style.chart.legend.backgroundColor,
618
+ color: W.value.style.chart.legend.color,
619
+ fontSize: W.value.style.chart.legend.fontSize,
620
+ paddingBottom: W.value.style.chart.legend.paddingBottom,
621
+ fontWeight: W.value.style.chart.legend.bold ? "bold" : "normal"
622
+ }));
623
+ async function bn({ scale: e = 2 } = {}) {
624
+ if (!V.value) return;
625
+ let { width: t, height: n } = V.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await re({
626
+ domElement: V.value,
627
+ base64: !0,
628
+ img: !0,
629
+ scale: e
630
+ });
631
+ return {
632
+ imageUri: i,
633
+ base64: a,
634
+ title: W.value.style.chart.title.text,
635
+ width: t,
636
+ height: n,
637
+ aspectRatio: r
638
+ };
639
+ }
640
+ let xn = w(() => {
641
+ let e = W.value.table.useDialog && !W.value.table.show, t = q.value.showTable;
642
+ return {
643
+ component: e ? et : Ye,
644
+ title: `${W.value.style.chart.title.text}${W.value.style.chart.title.subtitle.text ? `: ${W.value.style.chart.title.subtitle.text}` : ""}`,
645
+ props: e ? {
646
+ backgroundColor: W.value.table.th.backgroundColor,
647
+ color: W.value.table.th.color,
648
+ headerColor: W.value.table.th.color,
649
+ headerBg: W.value.table.th.backgroundColor,
650
+ isFullscreen: U.value,
651
+ fullscreenParent: V.value,
652
+ forcedWidth: Math.min(800, window.innerWidth * .8),
653
+ isCursorPointer: G.value
654
+ } : {
655
+ hideDetails: !0,
656
+ config: {
657
+ open: t,
658
+ maxHeight: 1e4,
659
+ body: {
660
+ backgroundColor: W.value.style.chart.backgroundColor,
661
+ color: W.value.style.chart.color
662
+ },
663
+ head: {
664
+ backgroundColor: W.value.style.chart.backgroundColor,
665
+ color: W.value.style.chart.color
666
+ }
667
+ }
668
+ }
669
+ };
670
+ });
671
+ Te(() => q.value.showTable, (e) => {
672
+ W.value.table.show || (e && W.value.table.useDialog && ht.value ? ht.value.open() : "close" in ht.value && ht.value.close());
673
+ });
674
+ function Sn() {
675
+ q.value.showTable = !1, gt.value && gt.value.setTableIconState(!1);
676
+ }
677
+ let Cn = w(() => _n.value.map((e) => ({
678
+ ...e,
679
+ name: e.display
680
+ }))), wn = w(() => W.value.style.chart.backgroundColor), Tn = w(() => W.value.style.chart.legend), En = w(() => W.value.style.chart.title), { isCallbackImaging: Dn, isCallbackSvg: On, generateSvg: kn, onGenerateImage: An } = C({
681
+ svg: K,
682
+ title: En,
683
+ legend: Tn,
684
+ legendItems: Cn,
685
+ backgroundColor: wn,
686
+ getSvgCallback: () => W.value.userOptions.callbacks.svg,
687
+ generateImage: zt
688
+ });
689
+ async function jn() {
690
+ if (it("copyAlt", {
691
+ config: W.value,
692
+ dataset: J.value
693
+ }), !W.value.userOptions.callbacks.altCopy) {
694
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
695
+ return;
696
+ }
697
+ await Promise.resolve(W.value.userOptions.callbacks.altCopy({
698
+ config: W.value,
699
+ dataset: J.value
700
+ }));
701
+ }
702
+ function Mn(e) {
703
+ return Q.value.findIndex((t) => t.nodes.some((t) => t.id === e));
704
+ }
705
+ function Nn(e, t) {
706
+ let n = Q.value[e];
707
+ return n ? n.nodes.findIndex((e) => e.id === t) : -1;
708
+ }
709
+ function Pn(e, t) {
710
+ let n = Q.value[e];
711
+ if (!n || !n.nodes.length) return null;
712
+ let r = n.nodes[0], i = Math.abs(r.centerY - t);
713
+ for (let e = 1; e < n.nodes.length; e += 1) {
714
+ let a = n.nodes[e], o = Math.abs(a.centerY - t);
715
+ o < i && (r = a, i = o);
716
+ }
717
+ return r;
718
+ }
719
+ function Fn() {
720
+ vt.value = null, H.value = null, xt.value = !0;
721
+ }
722
+ function In() {
723
+ $t(), xt.value = !1;
724
+ }
725
+ function Ln(e) {
726
+ if (!K.value || pn.value || document.activeElement !== K.value || !ln.value.length) return;
727
+ let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "ArrowUp", i = e.key === "ArrowDown", a = e.key === "Enter" || e.key === " ", o = e.key === "Escape";
728
+ if (!t && !n && !r && !i && !a && !o) return;
729
+ if (e.preventDefault(), e.stopPropagation(), o) {
730
+ $t();
731
+ return;
732
+ }
733
+ if (a) {
734
+ if (vt.value === null) return;
735
+ rn(vt.value);
736
+ return;
737
+ }
738
+ if (H.value === null) {
739
+ let e = Q.value[0]?.nodes?.[0];
740
+ if (!e) return;
741
+ let t = un.value.get(e.id) ?? 0;
742
+ tn(e, t, "keyboard", t);
743
+ return;
744
+ }
745
+ let s = un.value.get(H.value);
746
+ if (s === void 0) return;
747
+ let c = ln.value[s];
748
+ if (!c) return;
749
+ let l = Mn(c.id);
750
+ if (l < 0) return;
751
+ let u = null;
752
+ if (r || i) {
753
+ let e = Nn(l, c.id);
754
+ if (e < 0) return;
755
+ let t = Q.value[l];
756
+ if (!t?.nodes?.length) return;
757
+ let n = e + (i ? 1 : -1);
758
+ n < 0 && (n = t.nodes.length - 1), n >= t.nodes.length && (n = 0), u = t.nodes[n];
759
+ }
760
+ if (t || n) {
761
+ let e = l + (n ? 1 : -1);
762
+ e < 0 && (e = Q.value.length - 1), e >= Q.value.length && (e = 0), u = Pn(e, c.centerY);
763
+ }
764
+ if (!u) return;
765
+ let d = un.value.get(u.id);
766
+ d !== void 0 && tn(u, d, "keyboard", d);
767
+ }
768
+ return ae({
769
+ getData: dn,
770
+ getImage: bn,
771
+ generateCsv: on,
772
+ generateImage: zt,
773
+ generateSvg: kn,
774
+ generatePdf: Rt,
775
+ toggleTable: fn,
776
+ toggleAnnotator: mn,
777
+ toggleTooltip: hn,
778
+ drillCategory: vn,
779
+ unselectNode: nn,
780
+ toggleFullscreen: Ct,
781
+ copyAlt: jn
782
+ }), (e, t) => (N(), D("div", {
783
+ ref_key: "flowChart",
784
+ ref: V,
785
+ class: be(`vue-data-ui-component vue-ui-flow ${U.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
786
+ style: M(`font-family:${W.value.style.fontFamily};width:100%; text-align:center;background:${W.value.style.chart.backgroundColor}`),
787
+ id: `flow_${B.value}`,
788
+ onMouseenter: t[2] ||= () => L(jt)(!0),
789
+ onMouseleave: t[3] ||= () => {
790
+ L(jt)(!1), xt.value || $t();
791
+ }
792
+ }, [
793
+ O("div", {
794
+ id: `chart-instructions-${B.value}`,
795
+ class: "sr-only"
796
+ }, [O("p", null, I(W.value.a11y.translations.keyboardNavigation), 1)], 8, Oe),
797
+ cn.value?.rows?.length ? (N(), T(ce, {
798
+ key: 0,
799
+ uid: B.value,
800
+ head: cn.value.headers,
801
+ body: cn.value.rows,
802
+ notice: W.value.a11y.translations.tableAvailable,
803
+ caption: W.value.a11y.translations.tableCaption
804
+ }, null, 8, [
805
+ "uid",
806
+ "head",
807
+ "body",
808
+ "notice",
809
+ "caption"
810
+ ])) : E("", !0),
811
+ W.value.userOptions.buttons.annotator ? (N(), T(L(Ze), {
812
+ key: 1,
813
+ svgRef: L(K),
814
+ backgroundColor: W.value.style.chart.backgroundColor,
815
+ color: W.value.style.chart.color,
816
+ active: pn.value,
817
+ onClose: mn,
818
+ isCursorPointer: G.value
819
+ }, {
820
+ "annotator-action-close": R(() => [F(e.$slots, "annotator-action-close", {}, void 0, !0)]),
821
+ "annotator-action-color": R(({ color: t }) => [F(e.$slots, "annotator-action-color", j(A({ color: t })), void 0, !0)]),
822
+ "annotator-action-draw": R(({ mode: t }) => [F(e.$slots, "annotator-action-draw", j(A({ mode: t })), void 0, !0)]),
823
+ "annotator-action-undo": R(({ disabled: t }) => [F(e.$slots, "annotator-action-undo", j(A({ disabled: t })), void 0, !0)]),
824
+ "annotator-action-redo": R(({ disabled: t }) => [F(e.$slots, "annotator-action-redo", j(A({ disabled: t })), void 0, !0)]),
825
+ "annotator-action-delete": R(({ disabled: t }) => [F(e.$slots, "annotator-action-delete", j(A({ disabled: t })), void 0, !0)]),
826
+ _: 3
827
+ }, 8, [
828
+ "svgRef",
829
+ "backgroundColor",
830
+ "color",
831
+ "active",
832
+ "isCursorPointer"
833
+ ])) : E("", !0),
834
+ Bt.value ? (N(), D("div", ke, null, 512)) : E("", !0),
835
+ W.value.style.chart.title.text ? (N(), D("div", {
836
+ key: 3,
837
+ ref_key: "chartTitle",
838
+ ref: ut,
839
+ style: "width:100%;background:transparent;padding-bottom:24px"
840
+ }, [(N(), T(ie, {
841
+ key: `title_${ot.value}`,
842
+ config: {
843
+ title: {
844
+ cy: "flow-title",
845
+ ...W.value.style.chart.title
846
+ },
847
+ subtitle: {
848
+ cy: "flow-subtitle",
849
+ ...W.value.style.chart.title.subtitle
850
+ }
851
+ }
852
+ }, null, 8, ["config"]))], 512)) : E("", !0),
853
+ O("div", { id: `legend-top-${B.value}` }, null, 8, Ae),
854
+ W.value.userOptions.show && St.value && (L(Mt) || L(At)) ? (N(), T(L(Qe), {
855
+ ref_key: "userOptionsRef",
856
+ ref: gt,
857
+ key: `user_option_${at.value}`,
858
+ backgroundColor: W.value.style.chart.backgroundColor,
859
+ color: W.value.style.chart.color,
860
+ isPrinting: L(It),
861
+ isImaging: L(Lt),
862
+ uid: B.value,
863
+ hasPdf: W.value.userOptions.buttons.pdf,
864
+ hasXls: W.value.userOptions.buttons.csv,
865
+ hasImg: W.value.userOptions.buttons.img,
866
+ hasSvg: W.value.userOptions.buttons.svg,
867
+ hasTable: W.value.userOptions.buttons.table,
868
+ callbacks: W.value.userOptions.callbacks,
869
+ hasFullscreen: W.value.userOptions.buttons.fullscreen,
870
+ hasAltCopy: W.value.userOptions.buttons.altCopy,
871
+ isFullscreen: U.value,
872
+ titles: { ...W.value.userOptions.buttonTitles },
873
+ chartElement: V.value,
874
+ position: W.value.userOptions.position,
875
+ hasAnnotator: W.value.userOptions.buttons.annotator,
876
+ printScale: W.value.userOptions.print.scale,
877
+ isAnnotation: pn.value,
878
+ hasTooltip: W.value.style.chart.tooltip.show && W.value.userOptions.buttons.tooltip,
879
+ isTooltip: q.value.showTooltip,
880
+ tableDialog: W.value.table.useDialog,
881
+ isCursorPointer: G.value,
882
+ onToggleTooltip: hn,
883
+ onToggleFullscreen: Ct,
884
+ onGeneratePdf: L(Rt),
885
+ onGenerateCsv: on,
886
+ onGenerateImage: L(An),
887
+ onGenerateSvg: L(kn),
888
+ onToggleTable: fn,
889
+ onToggleAnnotator: mn,
890
+ onCopyAlt: jn,
891
+ style: M({ visibility: L(Mt) ? L(At) ? "visible" : "hidden" : "visible" })
892
+ }, he({ _: 2 }, [
893
+ e.$slots.menuIcon ? {
894
+ name: "menuIcon",
895
+ fn: R(({ isOpen: t, color: n }) => [F(e.$slots, "menuIcon", j(A({
896
+ isOpen: t,
897
+ color: n
898
+ })), void 0, !0)]),
899
+ key: "0"
900
+ } : void 0,
901
+ e.$slots.optionTooltip ? {
902
+ name: "optionTooltip",
903
+ fn: R(() => [F(e.$slots, "optionTooltip", {}, void 0, !0)]),
904
+ key: "1"
905
+ } : void 0,
906
+ e.$slots.optionPdf ? {
907
+ name: "optionPdf",
908
+ fn: R(() => [F(e.$slots, "optionPdf", {}, void 0, !0)]),
909
+ key: "2"
910
+ } : void 0,
911
+ e.$slots.optionCsv ? {
912
+ name: "optionCsv",
913
+ fn: R(() => [F(e.$slots, "optionCsv", {}, void 0, !0)]),
914
+ key: "3"
915
+ } : void 0,
916
+ e.$slots.optionImg ? {
917
+ name: "optionImg",
918
+ fn: R(() => [F(e.$slots, "optionImg", {}, void 0, !0)]),
919
+ key: "4"
920
+ } : void 0,
921
+ e.$slots.optionSvg ? {
922
+ name: "optionSvg",
923
+ fn: R(() => [F(e.$slots, "optionSvg", {}, void 0, !0)]),
924
+ key: "5"
925
+ } : void 0,
926
+ e.$slots.optionTable ? {
927
+ name: "optionTable",
928
+ fn: R(() => [F(e.$slots, "optionTable", {}, void 0, !0)]),
929
+ key: "6"
930
+ } : void 0,
931
+ e.$slots.optionFullscreen ? {
932
+ name: "optionFullscreen",
933
+ fn: R(({ toggleFullscreen: t, isFullscreen: n }) => [F(e.$slots, "optionFullscreen", j(A({
934
+ toggleFullscreen: t,
935
+ isFullscreen: n
936
+ })), void 0, !0)]),
937
+ key: "7"
938
+ } : void 0,
939
+ e.$slots.optionAnnotator ? {
940
+ name: "optionAnnotator",
941
+ fn: R(({ toggleAnnotator: t, isAnnotator: n }) => [F(e.$slots, "optionAnnotator", j(A({
942
+ toggleAnnotator: t,
943
+ isAnnotator: n
944
+ })), void 0, !0)]),
945
+ key: "8"
946
+ } : void 0,
947
+ e.$slots.optionAltCopy ? {
948
+ name: "optionAltCopy",
949
+ fn: R(({ altCopy: t }) => [F(e.$slots, "optionAltCopy", j(A({ altCopy: t })), void 0, !0)]),
950
+ key: "9"
951
+ } : void 0,
952
+ e.$slots["custom-menu-before"] ? {
953
+ name: "custom-menu-before",
954
+ fn: R(() => [F(e.$slots, "custom-menu-before", {}, void 0, !0)]),
955
+ key: "10"
956
+ } : void 0,
957
+ e.$slots["custom-menu-after"] ? {
958
+ name: "custom-menu-after",
959
+ fn: R(() => [F(e.$slots, "custom-menu-after", {}, void 0, !0)]),
960
+ key: "11"
961
+ } : void 0
962
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasPdf.hasXls.hasImg.hasSvg.hasTable.callbacks.hasFullscreen.hasAltCopy.isFullscreen.titles.chartElement.position.hasAnnotator.printScale.isAnnotation.hasTooltip.isTooltip.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style".split("."))) : E("", !0),
963
+ O("div", je, [(N(), D("svg", {
964
+ ref_key: "svgRef",
965
+ ref: K,
966
+ xmlns: L(h),
967
+ "aria-describedby": `chart-instructions-${B.value}`,
968
+ viewBox: `0 0 ${Yt.value.width} ${Yt.value.height}`,
969
+ class: be({
970
+ "vue-data-ui-fullscreen--on": U.value,
971
+ "vue-data-ui-fulscreen--off": !U.value
972
+ }),
973
+ style: M({
974
+ maxWidth: "100%",
975
+ overflow: "visible",
976
+ background: "transparent",
977
+ color: W.value.style.chart.color
978
+ }),
979
+ tabindex: "0",
980
+ onFocus: Fn,
981
+ onBlur: In,
982
+ onKeydown: Ln
983
+ }, [
984
+ _e(L($e)),
985
+ e.$slots["chart-background"] ? (N(), D("foreignObject", {
986
+ key: 0,
987
+ x: 0,
988
+ y: 0,
989
+ width: Yt.value.width,
990
+ height: Yt.value.height,
991
+ style: { pointerEvents: "none" }
992
+ }, [F(e.$slots, "chart-background", {}, void 0, !0)], 8, Ne)) : E("", !0),
993
+ O("defs", null, [(N(!0), D(pe, null, Se(J.value.links, (e, t) => (N(), D("linearGradient", {
994
+ id: e.id,
995
+ x1: "0%",
996
+ y1: "0%",
997
+ x2: "100%",
998
+ y2: "0%"
999
+ }, [O("stop", {
1000
+ offset: "0%",
1001
+ "stop-color": e.sourceColor
1002
+ }, null, 8, Fe), O("stop", {
1003
+ offset: "100%",
1004
+ "stop-color": e.targetColor
1005
+ }, null, 8, Ie)], 8, Pe))), 256))]),
1006
+ (N(!0), D(pe, null, Se(J.value.links, (e) => (N(), D("path", {
1007
+ class: "vue-ui-flow-link",
1008
+ d: e.path,
1009
+ "stroke-linejoin": "round",
1010
+ "stroke-miterlimit": "1",
1011
+ fill: `url(#${e.id})`,
1012
+ stroke: W.value.style.chart.links.stroke,
1013
+ "stroke-width": W.value.style.chart.links.strokeWidth,
1014
+ style: M(`
1015
+ opacity:${Y.value ? Y.value.includes(e.source) && Y.value.includes(e.target) ? 1 : .3 : X.value ? [e.target, e.source].includes(X.value) ? 1 : .3 : W.value.style.chart.links.opacity}
1016
+ `)
1017
+ }, null, 12, Le))), 256)),
1018
+ (N(!0), D(pe, null, Se(J.value.nodes, (e, t) => (N(), D("rect", {
1019
+ "data-a11y-node-id": e.id,
1020
+ class: "vue-ui-flow-node",
1021
+ x: e.x,
1022
+ y: L(u)(e.absoluteY) + W.value.style.chart.padding.top,
1023
+ height: L(u)(e.height),
1024
+ width: Ht.value,
1025
+ fill: e.color,
1026
+ stroke: W.value.style.chart.nodes.stroke,
1027
+ "stroke-width": W.value.style.chart.nodes.strokeWidth,
1028
+ rx: W.value.style.chart.nodes.borderRadius,
1029
+ style: M({
1030
+ opacity: Y.value ? Y.value.includes(e.name) ? 1 : .3 : 1,
1031
+ outline: Qt.value !== null && Qt.value === e.id ? "2px solid currentColor" : void 0
1032
+ }),
1033
+ "aria-label": `${e.name}: ${L(d)(W.value.style.chart.nodes.labels.formatter, e.value, L(c)({
1034
+ p: W.value.style.chart.nodes.labels.prefix,
1035
+ v: e.value,
1036
+ s: W.value.style.chart.nodes.labels.suffix,
1037
+ r: W.value.style.chart.nodes.labels.rounding
1038
+ }))}`,
1039
+ onMouseenter: (n) => tn(e, t, "pointer", un.value.get(e.id)),
1040
+ onMouseleave: (e) => nn(t),
1041
+ onClick: (e) => rn(t)
1042
+ }, null, 44, Re))), 256)),
1043
+ W.value.style.chart.nodes.labels.show ? (N(), D("g", ze, [(N(!0), D(pe, null, Se(J.value.nodes, (e, t) => (N(), D("text", {
1044
+ x: e.x + Ht.value / 2,
1045
+ y: (W.value.style.chart.nodes.labels.showValue ? L(u)(e.absoluteY + e.height / 2 - W.value.style.chart.nodes.labels.fontSize / 4) : e.absoluteY + e.height / 2 + W.value.style.chart.nodes.labels.fontSize / 3) + W.value.style.chart.padding.top,
1046
+ "font-size": W.value.style.chart.nodes.labels.fontSize,
1047
+ fill: L(m)(e.color),
1048
+ "text-anchor": "middle",
1049
+ style: M(`pointer-events: none; opacity:${Y.value ? +!!Y.value.includes(e.name) : 1}`)
1050
+ }, I(W.value.style.chart.nodes.labels.abbreviation.use ? L(f)({
1051
+ source: e.name,
1052
+ length: W.value.style.chart.nodes.labels.abbreviation.length
1053
+ }) : e.name), 13, Be))), 256)), W.value.style.chart.nodes.labels.showValue ? (N(!0), D(pe, { key: 0 }, Se(J.value.nodes, (e, t) => (N(), D("text", {
1054
+ x: e.x + Ht.value / 2,
1055
+ y: L(u)(e.absoluteY + e.height / 2 + W.value.style.chart.nodes.labels.fontSize / 1.3) + W.value.style.chart.padding.top,
1056
+ "font-size": W.value.style.chart.nodes.labels.fontSize,
1057
+ fill: L(m)(e.color),
1058
+ "text-anchor": "middle",
1059
+ style: M(`pointer-events: none; opacity:${Y.value ? +!!Y.value.includes(e.name) : 1}`)
1060
+ }, I(L(d)(W.value.style.chart.nodes.labels.formatter, e.value, L(c)({
1061
+ p: W.value.style.chart.nodes.labels.prefix,
1062
+ v: e.value,
1063
+ s: W.value.style.chart.nodes.labels.suffix,
1064
+ r: W.value.style.chart.nodes.labels.rounding
1065
+ }), {
1066
+ datapoint: e,
1067
+ seriesIndex: t
1068
+ })), 13, Ve))), 256)) : E("", !0)])) : E("", !0),
1069
+ F(e.$slots, "svg", { svg: {
1070
+ ...Yt.value,
1071
+ isPrintingImg: L(It) || L(Lt) || L(Dn),
1072
+ isPrintingSvg: L(On)
1073
+ } }, void 0, !0)
1074
+ ], 46, Me)), e.$slots.hint ? (N(), D("div", He, [F(e.$slots, "hint", j(A({
1075
+ hint: W.value.a11y.translations.keyboardNavigation,
1076
+ isVisible: xt.value
1077
+ })), void 0, !0)])) : E("", !0)]),
1078
+ e.$slots.watermark ? (N(), D("div", Ue, [F(e.$slots, "watermark", j(A({ isPrinting: L(It) || L(Lt) || L(Dn) || L(On) })), void 0, !0)])) : E("", !0),
1079
+ O("div", { id: `legend-bottom-${B.value}` }, null, 8, We),
1080
+ mt.value && (W.value.style.chart.legend.show || e.$slots.legend) ? (N(), T(me, {
1081
+ key: 6,
1082
+ to: W.value.style.chart.legend.position === "top" ? `#legend-top-${B.value}` : `#legend-bottom-${B.value}`
1083
+ }, [O("div", {
1084
+ ref_key: "chartLegend",
1085
+ ref: lt
1086
+ }, [F(e.$slots, "legend", { legend: gn.value }, () => [W.value.style.chart.legend.show && _n.value.length ? (N(), T(de, {
1087
+ key: 0,
1088
+ legendSet: _n.value,
1089
+ config: yn.value,
1090
+ isCursorPointer: G.value,
1091
+ onClickMarker: t[0] ||= (e) => vn(e)
1092
+ }, {
1093
+ item: R(({ legend: e, index: t }) => [L(Tt) ? E("", !0) : (N(), D("div", {
1094
+ key: 0,
1095
+ onClick: (t) => e.segregate(),
1096
+ style: M(`opacity:${$.value.length ? $.value.includes(t) ? 1 : .5 : 1}`)
1097
+ }, I(e.display), 13, Ge))]),
1098
+ _: 1
1099
+ }, 8, [
1100
+ "legendSet",
1101
+ "config",
1102
+ "isCursorPointer"
1103
+ ])) : E("", !0)], !0)], 512)], 8, ["to"])) : E("", !0),
1104
+ e.$slots.source ? (N(), D("div", {
1105
+ key: 7,
1106
+ ref_key: "source",
1107
+ ref: dt,
1108
+ dir: "auto"
1109
+ }, [F(e.$slots, "source", {}, void 0, !0)], 512)) : E("", !0),
1110
+ _e(L(qe), {
1111
+ ref_key: "tooltip",
1112
+ ref: _t,
1113
+ teleportTo: W.value.style.chart.tooltip.teleportTo,
1114
+ show: q.value.showTooltip && st.value,
1115
+ backgroundColor: W.value.style.chart.tooltip.backgroundColor,
1116
+ color: W.value.style.chart.tooltip.color,
1117
+ fontSize: W.value.style.chart.tooltip.fontSize,
1118
+ borderRadius: W.value.style.chart.tooltip.borderRadius,
1119
+ borderColor: W.value.style.chart.tooltip.borderColor,
1120
+ borderWidth: W.value.style.chart.tooltip.borderWidth,
1121
+ backgroundOpacity: W.value.style.chart.tooltip.backgroundOpacity,
1122
+ position: W.value.style.chart.tooltip.position,
1123
+ offsetX: W.value.style.chart.tooltip.offsetX,
1124
+ offsetY: W.value.style.chart.tooltip.offsetY,
1125
+ parent: V.value,
1126
+ content: ct.value,
1127
+ isCustom: Zt.value,
1128
+ isFullscreen: U.value,
1129
+ smooth: W.value.style.chart.tooltip.smooth,
1130
+ backdropFilter: W.value.style.chart.tooltip.backdropFilter,
1131
+ smoothForce: W.value.style.chart.tooltip.smoothForce,
1132
+ smoothSnapThreshold: W.value.style.chart.tooltip.smoothSnapThreshold,
1133
+ isA11yMode: bt.value === "keyboard",
1134
+ a11yPosition: yt.value
1135
+ }, {
1136
+ "tooltip-before": R(() => [F(e.$slots, "tooltip-before", j(A({ ...Z.value })), void 0, !0)]),
1137
+ tooltip: R(() => [F(e.$slots, "tooltip", j(A({ ...Z.value })), void 0, !0)]),
1138
+ "tooltip-after": R(() => [F(e.$slots, "tooltip-after", j(A({ ...Z.value })), void 0, !0)]),
1139
+ _: 3
1140
+ }, 8, [
1141
+ "teleportTo",
1142
+ "show",
1143
+ "backgroundColor",
1144
+ "color",
1145
+ "fontSize",
1146
+ "borderRadius",
1147
+ "borderColor",
1148
+ "borderWidth",
1149
+ "backgroundOpacity",
1150
+ "position",
1151
+ "offsetX",
1152
+ "offsetY",
1153
+ "parent",
1154
+ "content",
1155
+ "isCustom",
1156
+ "isFullscreen",
1157
+ "smooth",
1158
+ "backdropFilter",
1159
+ "smoothForce",
1160
+ "smoothSnapThreshold",
1161
+ "isA11yMode",
1162
+ "a11yPosition"
1163
+ ]),
1164
+ St.value && W.value.userOptions.buttons.table ? (N(), T(Ce(xn.value.component), ve({ key: 8 }, xn.value.props, {
1165
+ ref_key: "tableUnit",
1166
+ ref: ht,
1167
+ onClose: Sn
1168
+ }), he({
1169
+ content: R(() => [_e(L(Xe), {
1170
+ colNames: sn.value.colNames,
1171
+ head: sn.value.head,
1172
+ body: sn.value.body,
1173
+ config: sn.value.config,
1174
+ title: W.value.table.useDialog ? "" : xn.value.title,
1175
+ withCloseButton: !W.value.table.useDialog,
1176
+ isCursorPointer: G.value,
1177
+ onClose: Sn
1178
+ }, {
1179
+ th: R(({ th: e }) => [O("div", Ke, I(e), 1)]),
1180
+ td: R(({ td: e }) => [ge(I(e.name || e), 1)]),
1181
+ _: 1
1182
+ }, 8, [
1183
+ "colNames",
1184
+ "head",
1185
+ "body",
1186
+ "config",
1187
+ "title",
1188
+ "withCloseButton",
1189
+ "isCursorPointer"
1190
+ ])]),
1191
+ _: 2
1192
+ }, [W.value.table.useDialog ? {
1193
+ name: "title",
1194
+ fn: R(() => [ge(I(xn.value.title), 1)]),
1195
+ key: "0"
1196
+ } : void 0, W.value.table.useDialog ? {
1197
+ name: "actions",
1198
+ fn: R(() => [O("button", {
1199
+ tabindex: "0",
1200
+ class: "vue-ui-user-options-button",
1201
+ onClick: t[1] ||= (e) => on(W.value.userOptions.callbacks.csv),
1202
+ style: M({ cursor: G.value ? "pointer" : "default" })
1203
+ }, [_e(L(Je), {
1204
+ name: "fileCsv",
1205
+ stroke: xn.value.props.color
1206
+ }, null, 8, ["stroke"])], 4)]),
1207
+ key: "1"
1208
+ } : void 0]), 1040)) : E("", !0),
1209
+ F(e.$slots, "skeleton", {}, () => [L(Tt) ? (N(), T(x, { key: 0 })) : E("", !0)], !0)
1210
+ ], 46, De));
1211
+ }
1212
+ }, [["__scopeId", "data-v-2d049e51"]]);
1213
+ //#endregion
1214
+ export { Ee as n, qe as t };