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,1430 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { $ as t, D as n, G as r, It as i, Jt as a, Nt as o, P as s, S as ee, St as te, V as ne, X as re, Xt as ie, Yt as ae, _ as oe, gt as se, i as ce, lt as le, mt as ue, nt as de, q as fe, qt as pe, t as me, w as he } from "./lib-Dqr_-I6Y.js";
3
+ import { n as ge, t as _e } from "./useHints-Dq_w2E8B.js";
4
+ import { t as ve } from "./useConfig-DwdGsXTx.js";
5
+ import { t as ye } from "./usePrinter-CEiH1b6R.js";
6
+ import { n as be, t as xe } from "./BaseScanner-DZvpgOjM.js";
7
+ import { t as Se } from "./useNestedProp-CulPqtou.js";
8
+ import { t as Ce } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as we } from "./useChartExport-DNiwdPmb.js";
10
+ import { t as Te } from "./useTransitions-g_zBREk2.js";
11
+ import { t as Ee } from "./useTimeLabelCollider-AEcY4Ioe.js";
12
+ import { t as De } from "./img-Bkzj3lDD.js";
13
+ import { n as Oe } from "./Title-CaVA8EIw.js";
14
+ import { t as ke } from "./Shape-BAL5bQmA.js";
15
+ import { t as Ae } from "./_plugin-vue_export-helper-B3ysoDQm.js";
16
+ import { l as je, t as Me } from "./useResponsive-ZtArZtUf.js";
17
+ import { t as Ne } from "./BaseLegendToggle-CtEdLr4R.js";
18
+ import { t as Pe } from "./A11yDataTable-DdRsVULz.js";
19
+ import { t as Fe } from "./useUserOptionState-DK-_1ddE.js";
20
+ import { t as Ie } from "./useChartAccessibility-DYqac8yF.js";
21
+ import { t as Le } from "./Legend-BJtY2RA9.js";
22
+ import { t as Re } from "./vue_ui_parallel_coordinate_plot-CBiOBira.js";
23
+ import { Fragment as c, Teleport as ze, computed as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createSlots as Be, createTextVNode as Ve, createVNode as He, defineAsyncComponent as m, guardReactiveProps as h, mergeProps as Ue, nextTick as We, normalizeClass as g, normalizeProps as _, normalizeStyle as v, onBeforeUnmount as Ge, onMounted as Ke, openBlock as y, ref as b, renderList as x, renderSlot as S, resolveDynamicComponent as qe, shallowRef as Je, toDisplayString as C, toRefs as Ye, unref as w, watch as Xe, watchEffect as Ze, withCtx as T } from "vue";
24
+ //#region src/components/vue-ui-parallel-coordinate-plot.vue
25
+ var Qe = /* @__PURE__ */ e({ default: () => Ct }), $e = ["id"], et = ["id"], tt = ["id"], nt = { style: { position: "relative" } }, rt = [
26
+ "xmlns",
27
+ "aria-describedby",
28
+ "viewBox"
29
+ ], it = [
30
+ "x",
31
+ "y",
32
+ "width",
33
+ "height"
34
+ ], at = { style: { "pointer-events": "none" } }, ot = [
35
+ "x1",
36
+ "x2",
37
+ "y1",
38
+ "y2",
39
+ "stroke",
40
+ "stroke-width"
41
+ ], st = [
42
+ "d",
43
+ "stroke",
44
+ "stroke-width"
45
+ ], ct = { key: 0 }, lt = [
46
+ "transform",
47
+ "fill",
48
+ "font-size",
49
+ "font-weight"
50
+ ], ut = [
51
+ "fill",
52
+ "font-size",
53
+ "font-weight",
54
+ "text-anchor",
55
+ "transform"
56
+ ], dt = [
57
+ "fill",
58
+ "font-size",
59
+ "font-weight",
60
+ "text-anchor",
61
+ "transform",
62
+ "innerHTML"
63
+ ], ft = { key: 0 }, pt = [
64
+ "x",
65
+ "y",
66
+ "font-size",
67
+ "fill"
68
+ ], mt = [
69
+ "width",
70
+ "x",
71
+ "y"
72
+ ], ht = { style: { width: "100%" } }, gt = [
73
+ "d",
74
+ "stroke",
75
+ "stroke-width",
76
+ "onMouseenter",
77
+ "onMouseleave",
78
+ "onClick"
79
+ ], _t = [
80
+ "d",
81
+ "onMouseenter",
82
+ "onMouseleave",
83
+ "onClick"
84
+ ], vt = [
85
+ "transform",
86
+ "fill",
87
+ "font-weight",
88
+ "font-size",
89
+ "stroke",
90
+ "onMouseenter",
91
+ "onMouseleave",
92
+ "onClick"
93
+ ], yt = {
94
+ key: 0,
95
+ style: {
96
+ position: "absolute",
97
+ top: "100%",
98
+ left: "0",
99
+ width: "100%"
100
+ },
101
+ "data-dom-to-png-ignore": "",
102
+ "aria-hidden": "true"
103
+ }, bt = {
104
+ key: 5,
105
+ class: "vue-data-ui-watermark"
106
+ }, xt = ["id"], St = ["onClick"], Ct = /*#__PURE__*/ Ae({
107
+ __name: "vue-ui-parallel-coordinate-plot",
108
+ props: {
109
+ config: {
110
+ type: Object,
111
+ default() {
112
+ return {};
113
+ }
114
+ },
115
+ dataset: {
116
+ type: Array,
117
+ default() {
118
+ return [];
119
+ }
120
+ }
121
+ },
122
+ emits: [
123
+ "selectLegend",
124
+ "selectDatapoint",
125
+ "copyAlt"
126
+ ],
127
+ setup(e, { expose: Ae, emit: Qe }) {
128
+ let Ct = m(() => import("./Tooltip-CVxJe3UW.js")), wt = m(() => import("./BaseIcon-BbElSC8_.js").then((e) => e.n)), Tt = m(() => import("./vue-ui-accordion-C6L7glHU.js").then((e) => e.n)), Et = m(() => import("./DataTable-CmyEubtT.js")), Dt = m(() => import("./PenAndPaper-CIa1F5Jq.js").then((e) => e.t)), Ot = m(() => import("./UserOptions-WH7-49V0.js").then((e) => e.n)), kt = m(() => import("./PackageVersion-C0b7KAMa.js").then((e) => e.t)), At = m(() => import("./BaseDraggableDialog-Dr_Q6Yt5.js").then((e) => e.n)), { vue_ui_parallel_coordinate_plot: jt } = ve(), { isThemeValid: Mt, warnInvalidTheme: Nt } = Ce(), E = e, Pt = l({
129
+ get() {
130
+ return !!E.dataset && E.dataset.length;
131
+ },
132
+ set(e) {
133
+ return e;
134
+ }
135
+ }), Ft = b(0), D = b(null), It = b(null), Lt = b(null), Rt = b(null), zt = b(null), Bt = b(0), Vt = b(0), Ht = b(0), Ut = b(!1), O = b(null), Wt = b(null), Gt = b(null), k = b(null), Kt = b({
136
+ x: 0,
137
+ y: 0
138
+ }), qt = b("pointer"), Jt = b(!1), A = b(fe()), j = b(!1);
139
+ function Yt(e) {
140
+ j.value = e, Ft.value += 1;
141
+ }
142
+ let M = b(nn()), { transitionEnabled: N } = Te({
143
+ config: () => M.value.transitions,
144
+ dataset: () => E.dataset
145
+ });
146
+ ge({
147
+ config: () => M.value,
148
+ dataset: () => E.dataset,
149
+ component: "VueUiParallelCoordinatePlot",
150
+ rules: [
151
+ _e.emptyArray,
152
+ {
153
+ test: (e) => e.length > 10,
154
+ message: [
155
+ "👀 There are > 10 series. Consider:",
156
+ "",
157
+ "▶️ Using filters, to show less series at the same time and make the chart more readable."
158
+ ]
159
+ },
160
+ {
161
+ test: (e) => e.some((e) => (e?.series ?? []).some((e) => (e?.values ?? []).length > 15)),
162
+ message: [
163
+ "👀 There are > 15 axes, which can make the chart hard to read. Consider:",
164
+ "",
165
+ "▶️ Using filters, to allow users to select a maximum set of metrics."
166
+ ]
167
+ },
168
+ {
169
+ test: (e) => e.some((e) => e?.series?.length > 5),
170
+ message: [
171
+ "👀 Some series have > 5 datapoints. Consider:",
172
+ "",
173
+ "▶️ Using filters, to allow users to select a maximum set of metrics."
174
+ ]
175
+ }
176
+ ]
177
+ });
178
+ let P = l(() => M.value.userOptions.useCursorPointer), Xt = l(() => ie({
179
+ defaultConfig: {
180
+ useCssAnimation: !1,
181
+ userOptions: { show: !1 },
182
+ table: { show: !1 },
183
+ style: { chart: {
184
+ backgroundColor: "#99999930",
185
+ legend: {
186
+ show: !0,
187
+ backgroundColor: "transparent"
188
+ },
189
+ yAxis: {
190
+ stroke: "#6A6A6A",
191
+ labels: {
192
+ showAxisNames: !1,
193
+ axisNames: [],
194
+ ticks: { color: "#6A6A6A" }
195
+ }
196
+ }
197
+ } }
198
+ },
199
+ userConfig: M.value.skeletonConfig ?? {}
200
+ })), { loading: F, FINAL_DATASET: Zt, manualLoading: Qt } = be({
201
+ ...Ye(E),
202
+ FINAL_CONFIG: M,
203
+ prepareConfig: nn,
204
+ callback: () => {
205
+ Promise.resolve().then(async () => {
206
+ await We(), H.value.showTable = M.value.table.show;
207
+ });
208
+ },
209
+ skeletonDataset: E.config?.skeletonDataset ?? [
210
+ {
211
+ name: "",
212
+ shape: "circle",
213
+ color: "transparent",
214
+ series: [{
215
+ name: "",
216
+ values: [
217
+ 1,
218
+ 10,
219
+ 100,
220
+ 1e3
221
+ ]
222
+ }]
223
+ },
224
+ {
225
+ name: "",
226
+ shape: "circle",
227
+ color: "#CACACA",
228
+ series: [{
229
+ name: "",
230
+ values: [
231
+ .2,
232
+ 3,
233
+ 50,
234
+ 800
235
+ ]
236
+ }]
237
+ },
238
+ {
239
+ name: "",
240
+ shape: "circle",
241
+ color: "transparent",
242
+ series: [{
243
+ name: "",
244
+ values: [
245
+ 0,
246
+ 0,
247
+ 0,
248
+ 0
249
+ ]
250
+ }]
251
+ }
252
+ ],
253
+ skeletonConfig: ie({
254
+ defaultConfig: M.value,
255
+ userConfig: Xt.value
256
+ })
257
+ }), { userOptionsVisible: $t, setUserOptionsVisibility: en, keepUserOptionState: tn } = Fe({ config: M.value }), { svgRef: I } = Ie({ config: M.value.style.chart.title });
258
+ function nn() {
259
+ let e = Se({
260
+ userConfig: E.config,
261
+ defaultConfig: jt
262
+ }), t = e.theme;
263
+ if (!t) return e;
264
+ if (!Mt.value(e)) return Nt(e), e;
265
+ let n = Se({
266
+ userConfig: Re[t] || E.config,
267
+ defaultConfig: e
268
+ }), r = Se({
269
+ userConfig: E.config,
270
+ defaultConfig: n
271
+ });
272
+ return {
273
+ ...r,
274
+ customPalette: r.customPalette.length ? r.customPalette : a[t] || i
275
+ };
276
+ }
277
+ Xe(() => E.config, (e) => {
278
+ F.value || (M.value = nn()), $t.value = !M.value.userOptions.showOnChartHover, an(), Bt.value += 1, Ht.value += 1, Vt.value += 1, H.value.dataLabels.show = M.value.style.chart.yAxis.labels.datapoints.show, H.value.showTable = M.value.table.show, H.value.showTooltip = M.value.style.chart.tooltip.show;
279
+ }, { deep: !0 }), Xe(() => E.dataset, (e) => {
280
+ Array.isArray(e) && e.length > 0 && (Qt.value = !1);
281
+ }, { deep: !0 });
282
+ let L = Je(null), R = Je(null);
283
+ Ke(() => {
284
+ Ut.value = !0, an();
285
+ });
286
+ let rn = l(() => M.value.debug);
287
+ function an() {
288
+ if (o(E.dataset) ? (de({
289
+ componentName: "VueUiParallelCoordinatePlot",
290
+ type: "dataset",
291
+ debug: rn.value
292
+ }), Qt.value = !0) : E.dataset.forEach((e, t) => {
293
+ ue({
294
+ datasetObject: e,
295
+ requiredAttributes: ["name", "series"]
296
+ }).forEach((e) => {
297
+ Pt.value = !1, de({
298
+ componentName: "VueUiParallelCoordinatePlot",
299
+ type: "datasetSerieAttribute",
300
+ property: e,
301
+ index: t,
302
+ debug: rn.value
303
+ });
304
+ });
305
+ }), o(E.dataset) || (Qt.value = M.value.loading), M.value.responsive) {
306
+ let e = je(() => {
307
+ let { width: e, height: t } = Me({
308
+ chart: D.value,
309
+ title: M.value.style.chart.title.text ? It.value : null,
310
+ legend: M.value.style.chart.legend.show ? Lt.value : null,
311
+ source: Rt.value,
312
+ noTitle: zt.value
313
+ });
314
+ requestAnimationFrame(() => {
315
+ z.value.width = e, z.value.height = t - 12, M.value.responsiveProportionalSizing ? (z.value.plotSize = ae({
316
+ relator: Math.min(e, t),
317
+ adjuster: 600,
318
+ source: M.value.style.chart.plots.radius,
319
+ threshold: 2,
320
+ fallback: 2
321
+ }), z.value.ticksFontSize = ae({
322
+ relator: Math.min(e, t),
323
+ adjuster: 600,
324
+ source: M.value.style.chart.yAxis.labels.ticks.fontSize,
325
+ threshold: 10,
326
+ fallback: 10
327
+ }), z.value.datapointFontSize = ae({
328
+ relator: Math.min(e, t),
329
+ adjuster: 600,
330
+ source: M.value.style.chart.yAxis.labels.datapoints.fontSize,
331
+ threshold: 10,
332
+ fallback: 10
333
+ }), z.value.axisNameFontSize = ae({
334
+ relator: Math.min(e, t),
335
+ adjuster: 600,
336
+ source: M.value.style.chart.yAxis.labels.axisNamesFontSize,
337
+ threshold: 12,
338
+ fallback: 12
339
+ })) : (z.value.plotSize = M.value.style.chart.plots.radius, z.value.ticksFontSize = M.value.style.chart.yAxis.labels.ticks.fontSize, z.value.datapointFontSize = M.value.style.chart.yAxis.labels.datapoints.fontSize, z.value.axisNameFontSize = M.value.style.chart.yAxis.labels.axisNamesFontSize);
340
+ });
341
+ });
342
+ L.value && (R.value && L.value.unobserve(R.value), L.value.disconnect()), L.value = new ResizeObserver(e), R.value = D.value.parentNode, L.value.observe(R.value);
343
+ }
344
+ }
345
+ Ge(() => {
346
+ L.value && (R.value && L.value.unobserve(R.value), L.value.disconnect());
347
+ });
348
+ let { isPrinting: on, isImaging: sn, generatePdf: cn, generateImage: ln } = ye({
349
+ elementId: `pcp_${A.value}`,
350
+ fileName: M.value.style.chart.title.text || "vue-ui-parallel-coordinate-plot",
351
+ options: M.value.userOptions.print
352
+ }), un = l(() => M.value.userOptions.show && !M.value.style.chart.title.text), z = b({
353
+ height: M.value.style.chart.height,
354
+ width: M.value.style.chart.width,
355
+ plotSize: M.value.style.chart.plots.radius,
356
+ ticksFontSize: M.value.style.chart.yAxis.labels.ticks.fontSize,
357
+ datapointFontSize: M.value.style.chart.yAxis.labels.datapoints.fontSize,
358
+ axisNameFontSize: M.value.style.chart.yAxis.labels.axisNamesFontSize
359
+ }), dn = l(() => z.value.width), fn = l(() => z.value.height), B = b(0), pn = je((e) => {
360
+ B.value = e;
361
+ }, 100);
362
+ Ze((e) => {
363
+ let t = Gt.value;
364
+ if (!t) return;
365
+ let n = new ResizeObserver((e) => {
366
+ pn(e[0].contentRect.height);
367
+ });
368
+ n.observe(t), e(() => n.disconnect());
369
+ });
370
+ let V = l(() => {
371
+ let { top: e, right: t, bottom: n, left: r } = M.value.style.chart.padding, i = fn.value, a = dn.value;
372
+ return {
373
+ chartHeight: Math.max(.001, i),
374
+ chartWidth: Math.max(.001, a),
375
+ height: Math.max(.001, i - e - n - B.value - z.value.datapointFontSize * 2),
376
+ width: Math.max(.001, a - r - t),
377
+ top: e + B.value + z.value.datapointFontSize,
378
+ left: r,
379
+ right: a - t,
380
+ bottom: i - n - z.value.datapointFontSize
381
+ };
382
+ }), mn = l(() => he(M.value.customPalette)), H = b({
383
+ dataLabels: { show: M.value.style.chart.yAxis.labels.datapoints.show },
384
+ showTable: M.value.table.show,
385
+ showTooltip: M.value.style.chart.tooltip.show
386
+ });
387
+ Xe(M, () => {
388
+ H.value = {
389
+ dataLabels: { show: M.value.style.chart.yAxis.labels.datapoints.show },
390
+ showTable: M.value.table.show,
391
+ showTooltip: M.value.style.chart.tooltip.show
392
+ };
393
+ }, { immediate: !0 });
394
+ let U = b([]);
395
+ function hn() {
396
+ U.value.length ? U.value = [] : G.value.forEach((e) => {
397
+ U.value.push(e.id);
398
+ }), jn("selectLegend", q.value);
399
+ }
400
+ function gn(e) {
401
+ U.value.includes(e) ? U.value = U.value.filter((t) => t !== e) : U.value.push(e), jn("selectLegend", q.value);
402
+ }
403
+ let W = l(() => Zt.value.map((e, t) => {
404
+ let n = ee(e.color) || mn.value[t] || i[t] || i[t % i.length];
405
+ return {
406
+ ...e,
407
+ series: e.series.map((e) => ({
408
+ ...e,
409
+ id: fe(),
410
+ color: n
411
+ })),
412
+ seriesIndex: t,
413
+ color: n,
414
+ id: fe(),
415
+ shape: e.shape || "circle"
416
+ };
417
+ }));
418
+ function _n(e) {
419
+ return W.value.length ? W.value.find((t) => t.name === e) || (rn.value && console.warn(`VueUiParallelCoordinatePlot - Series name not found "${e}"`), null) : (rn.value && console.warn("VueUiParallelCoordinatePlot - There are no series to show."), null);
420
+ }
421
+ function vn(e) {
422
+ let t = _n(e);
423
+ t !== null && U.value.includes(t.id) && gn(t.id);
424
+ }
425
+ function yn(e) {
426
+ let t = _n(e);
427
+ t !== null && (U.value.includes(t.id) || gn(t.id));
428
+ }
429
+ let G = l(() => W.value.map((e) => ({
430
+ ...e,
431
+ opacity: U.value.includes(e.id) ? .5 : 1,
432
+ segregate: () => gn(e.id),
433
+ isSegregated: U.value.includes(e.id),
434
+ shape: e.shape || "circle"
435
+ }))), bn = l(() => ({
436
+ cy: "pcp-div-legend",
437
+ backgroundColor: M.value.style.chart.legend.backgroundColor,
438
+ color: M.value.style.chart.legend.color,
439
+ fontSize: M.value.style.chart.legend.fontSize,
440
+ paddingBottom: 12,
441
+ fontWeight: M.value.style.chart.legend.bold ? "bold" : ""
442
+ })), xn = l(() => Math.max(...W.value.filter((e) => !U.value.includes(e.id)).map((e) => Math.max(...e.series.flatMap((e) => e.values.length))))), K = l(() => V.value.width / xn.value), q = l(() => W.value.filter((e) => !U.value.includes(e.id))), J = l(() => {
443
+ let e = [];
444
+ for (let t = 0; t < xn.value; t += 1) {
445
+ let n = Math.min(...q.value.flatMap((e) => e.series.map((e) => e.values[t] || 0) || 0)), r = Math.max(...q.value.flatMap((e) => e.series.map((e) => e.values[t] || 0) || 0)), i = r === n ? n / 4 : n, a = r === n ? r * 2 : r, o = oe(i, a, M.value.style.chart.yAxis.scaleTicks), s = o.ticks.map((e, n) => {
446
+ let r = o.min < 0 ? e + Math.abs(o.min) : e - Math.abs(o.min), i = o.min < 0 ? o.max + Math.abs(o.min) : o.max - Math.abs(o.min);
447
+ return {
448
+ y: V.value.bottom - V.value.height * (r / i),
449
+ x: V.value.left + K.value * t + K.value / 2,
450
+ value: e
451
+ };
452
+ });
453
+ e.push({
454
+ scale: o,
455
+ ticks: s,
456
+ name: M.value.style.chart.yAxis.labels.axisNames[t] || `Y-${t + 1}`
457
+ });
458
+ }
459
+ return e;
460
+ }), Y = l(() => q.value.map((e, t) => ({
461
+ ...e,
462
+ series: e.series.map((n, r) => ({
463
+ ...n,
464
+ datapoints: n.values.map((i, a) => {
465
+ let o = J.value[a].scale.min < 0 ? (i || 0) + Math.abs(J.value[a].scale.min) : (i || 0) - Math.abs(J.value[a].scale.min), s = J.value[a].scale.min < 0 ? J.value[a].scale.max + Math.abs(J.value[a].scale.min) : J.value[a].scale.max - Math.abs(J.value[a].scale.min);
466
+ return {
467
+ name: n.name,
468
+ seriesName: e.name,
469
+ axisIndex: a,
470
+ datapointIndex: r,
471
+ seriesIndex: t,
472
+ value: i || 0,
473
+ x: V.value.left + K.value * a + K.value / 2,
474
+ y: V.value.bottom - V.value.height * (o / s),
475
+ comment: n.comments && n.comments[a] || ""
476
+ };
477
+ })
478
+ }))
479
+ })).map((e) => ({
480
+ ...e,
481
+ series: e.series.map((e) => {
482
+ let t = ne(e.datapoints), n = s(e.datapoints, .12), r = se(M.value.style.chart.lines.smooth ? `M ${n}` : `M ${t}`);
483
+ return {
484
+ ...e,
485
+ smoothPath: n,
486
+ straightPath: t,
487
+ pathLength: r
488
+ };
489
+ })
490
+ }))), X = l(() => Y.value.flatMap((e, t) => e.series.map((n, r) => ({
491
+ shape: e.shape,
492
+ serieName: e.name,
493
+ serie: n,
494
+ relativeIndex: r,
495
+ seriesIndex: n.seriesIndex,
496
+ S: t,
497
+ key: `${t}_${r}`
498
+ }))));
499
+ function Sn({ value: e, index: t, datapoint: n }) {
500
+ return ce(M.value.style.chart.yAxis.labels.formatters[t] || null, e, re({
501
+ p: M.value.style.chart.yAxis.labels.prefixes[t] || "",
502
+ v: e,
503
+ s: M.value.style.chart.yAxis.labels.suffixes[t] || "",
504
+ r: M.value.style.chart.yAxis.labels.roundings[t] || 0
505
+ }), {
506
+ datapoint: n,
507
+ seriesIndex: t
508
+ });
509
+ }
510
+ let Z = b(null), Cn = b(null), wn = b(!1), Tn = b("");
511
+ function Q({ shape: e, serie: t, S: n }) {
512
+ M.value.events.datapointLeave && M.value.events.datapointLeave({
513
+ datapoint: {
514
+ ...t,
515
+ shape: e
516
+ },
517
+ seriesIndex: n
518
+ });
519
+ let r = k.value === null ? null : X.value[k.value];
520
+ qt.value === "keyboard" && r && r.serie.id === t.id || (Z.value = null, wn.value = !1);
521
+ }
522
+ function En(e) {
523
+ if (!I.value || !e?.datapoints?.length) return;
524
+ let t = e.datapoints[Math.floor(e.datapoints.length / 2)];
525
+ if (!t) return;
526
+ let n = pe(t.x, t.y, I.value);
527
+ n && (Kt.value = n);
528
+ }
529
+ function Dn({ shape: e, serieName: t, serie: n, relativeIndex: r, seriesIndex: i, S: a, triggerMode: o = "pointer" }) {
530
+ M.value.events.datapointEnter && M.value.events.datapointEnter({
531
+ datapoint: {
532
+ ...n,
533
+ shape: e
534
+ },
535
+ seriesIndex: a
536
+ }), qt.value = o, Cn.value = {
537
+ config: M.value,
538
+ datapoint: n,
539
+ serie: n,
540
+ relativeIndex: r,
541
+ seriesIndex: i,
542
+ series: W.value,
543
+ scales: J.value
544
+ }, wn.value = !0, Z.value = n.id;
545
+ let s = "", ee = M.value.style.chart.tooltip.customFormat;
546
+ te(ee) && le(() => ee({
547
+ serie: n,
548
+ seriesIndex: n.seriesIndex,
549
+ series: W.value,
550
+ config: M.value,
551
+ scales: J.value
552
+ })) ? Tn.value = ee({
553
+ serie: n,
554
+ seriesIndex: n.seriesIndex,
555
+ series: W.value,
556
+ config: M.value,
557
+ scales: J.value
558
+ }) : (s += `<div style="width:100%;text-align:center;border-bottom:1px solid ${M.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${t ? t + " - " : ""}${n.name}</div>`, J.value.map((e) => e.name).forEach((e, t) => {
559
+ s += `
560
+ <div class="vue-ui-tooltip-item" style="text-align:left">
561
+ <span>${e}: </span>
562
+ <span>
563
+ ${ce(M.value.style.chart.yAxis.labels.formatters[t] || null, n.datapoints[t].value, re({
564
+ p: M.value.style.chart.yAxis.labels.prefixes[t] || "",
565
+ v: n.datapoints[t].value,
566
+ s: M.value.style.chart.yAxis.labels.suffixes[t] || "",
567
+ r: M.value.style.chart.yAxis.labels.roundings[t] || ""
568
+ }), {
569
+ datapoint: n.datapoints[t],
570
+ seriesIndex: t
571
+ })}
572
+ </span>
573
+ </div>
574
+ `, M.value.style.chart.comments.showInTooltip && n.datapoints[t].comment && (s += `<div class="vue-data-ui-tooltip-comment" style="background:${n.color}20; padding: 6px; margin-bottom: 6px; border-left: 1px solid ${n.color}">${n.datapoints[t].comment}</div>`);
575
+ }), Tn.value = `<div>${s}</div>`), o === "keyboard" && We(() => {
576
+ En(n);
577
+ });
578
+ }
579
+ function On() {
580
+ return W.value;
581
+ }
582
+ let $ = l(() => {
583
+ let e = [M.value.table.columnNames.series, M.value.table.columnNames.item].concat(J.value.map((e) => e.name));
584
+ return {
585
+ body: Y.value.flatMap((e, t) => e.series.map((t) => [e.name, t.name].concat(t.values))),
586
+ head: e,
587
+ config: {
588
+ th: {
589
+ backgroundColor: M.value.table.th.backgroundColor,
590
+ color: M.value.table.th.color,
591
+ outline: M.value.table.th.outline
592
+ },
593
+ td: {
594
+ backgroundColor: M.value.table.td.backgroundColor,
595
+ color: M.value.table.td.color,
596
+ outline: M.value.table.td.outline
597
+ },
598
+ breakpoint: M.value.table.responsiveBreakpoint
599
+ },
600
+ colNames: [M.value.table.columnNames.series, M.value.table.columnNames.item].concat(J.value.map((e) => e.name))
601
+ };
602
+ }), kn = l(() => Y.value.length === 0 ? {
603
+ head: [],
604
+ body: [],
605
+ config: {},
606
+ columnNames: []
607
+ } : {
608
+ head: $.value.head,
609
+ body: $.value.body
610
+ });
611
+ function An(e = null) {
612
+ let r = [
613
+ [M.value.style.chart.title.text],
614
+ [M.value.style.chart.title.subtitle.text],
615
+ [""]
616
+ ], i = kn.value.head, a = kn.value.body, o = r.concat([i]).concat(a), s = n(o);
617
+ e ? e(s) : t({
618
+ csvContent: s,
619
+ title: M.value.style.chart.title.text || "vue-ui-parallel-coordinate-plot"
620
+ });
621
+ }
622
+ let jn = Qe;
623
+ function Mn({ serie: e, shape: t, S: n }) {
624
+ M.value.events.datapointClick && M.value.events.datapointClick({
625
+ datapoint: {
626
+ ...e,
627
+ shape: t
628
+ },
629
+ seriesIndex: n
630
+ }), jn("selectDatapoint", e);
631
+ }
632
+ function Nn() {
633
+ H.value.showTable = !H.value.showTable;
634
+ }
635
+ function Pn() {
636
+ H.value.dataLabels.show = !H.value.dataLabels.show;
637
+ }
638
+ function Fn() {
639
+ H.value.showTooltip = !H.value.showTooltip;
640
+ }
641
+ let In = b(!1);
642
+ function Ln() {
643
+ In.value = !In.value;
644
+ }
645
+ async function Rn({ scale: e = 2 } = {}) {
646
+ if (!D.value) return;
647
+ let { width: t, height: n } = D.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await De({
648
+ domElement: D.value,
649
+ base64: !0,
650
+ img: !0,
651
+ scale: e
652
+ });
653
+ return {
654
+ imageUri: i,
655
+ base64: a,
656
+ title: M.value.style.chart.title.text,
657
+ width: t,
658
+ height: n,
659
+ aspectRatio: r
660
+ };
661
+ }
662
+ let zn = b({
663
+ start: 0,
664
+ end: 1
665
+ }), Bn = l(() => J.value.map((e) => e.name));
666
+ Ee({
667
+ timeLabelsEls: Gt,
668
+ timeLabels: Bn,
669
+ slicer: zn,
670
+ configRef: M,
671
+ rotationPath: [
672
+ "style",
673
+ "chart",
674
+ "yAxis",
675
+ "labels",
676
+ "axisNamesRotation"
677
+ ],
678
+ autoRotatePath: [
679
+ "style",
680
+ "chart",
681
+ "yAxis",
682
+ "labels",
683
+ "axisNamesAutoRotate",
684
+ "enable"
685
+ ],
686
+ isAutoSize: !1,
687
+ width: dn,
688
+ height: fn,
689
+ targetClass: ".vue-ui-parallel-coordinate-plot-x-label",
690
+ rotation: M.value.style.chart.yAxis.labels.axisNamesAutoRotate.angle
691
+ });
692
+ let Vn = l(() => {
693
+ let e = M.value.table.useDialog && !M.value.table.show, t = H.value.showTable;
694
+ return {
695
+ component: e ? At : Tt,
696
+ title: `${M.value.style.chart.title.text}${M.value.style.chart.title.subtitle.text ? `: ${M.value.style.chart.title.subtitle.text}` : ""}`,
697
+ props: e ? {
698
+ backgroundColor: M.value.table.th.backgroundColor,
699
+ color: M.value.table.th.color,
700
+ headerColor: M.value.table.th.color,
701
+ headerBg: M.value.table.th.backgroundColor,
702
+ isFullscreen: j.value,
703
+ fullscreenParent: D.value,
704
+ forcedWidth: Math.min(800, window.innerWidth * .8),
705
+ isCursorPointer: P.value
706
+ } : {
707
+ hideDetails: !0,
708
+ config: {
709
+ open: t,
710
+ maxHeight: 1e4,
711
+ body: {
712
+ backgroundColor: M.value.style.chart.backgroundColor,
713
+ color: M.value.style.chart.color
714
+ },
715
+ head: {
716
+ backgroundColor: M.value.style.chart.backgroundColor,
717
+ color: M.value.style.chart.color
718
+ }
719
+ }
720
+ }
721
+ };
722
+ });
723
+ Xe(() => H.value.showTable, (e) => {
724
+ M.value.table.show || (e && M.value.table.useDialog && O.value ? O.value.open() : "close" in O.value && O.value.close());
725
+ });
726
+ function Hn() {
727
+ H.value.showTable = !1, Wt.value && Wt.value.setTableIconState(!1);
728
+ }
729
+ let Un = l(() => M.value.style.chart.backgroundColor), Wn = l(() => M.value.style.chart.legend), Gn = l(() => M.value.style.chart.title), { isCallbackImaging: Kn, isCallbackSvg: qn, generateSvg: Jn, onGenerateImage: Yn } = we({
730
+ svg: I,
731
+ title: Gn,
732
+ legend: Wn,
733
+ legendItems: G,
734
+ backgroundColor: Un,
735
+ getSvgCallback: () => M.value.userOptions.callbacks.svg,
736
+ generateImage: ln
737
+ });
738
+ async function Xn() {
739
+ if (jn("copyAlt", {
740
+ config: M.value,
741
+ dataset: Y.value
742
+ }), !M.value.userOptions.callbacks.altCopy) {
743
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
744
+ return;
745
+ }
746
+ await Promise.resolve(M.value.userOptions.callbacks.altCopy({
747
+ config: M.value,
748
+ dataset: Y.value
749
+ }));
750
+ }
751
+ function Zn(e) {
752
+ let t = X.value.length;
753
+ return t ? (e % t + t) % t : null;
754
+ }
755
+ function Qn() {
756
+ if (k.value !== null) {
757
+ let e = X.value[k.value];
758
+ e && Q({
759
+ shape: e.shape,
760
+ serie: e.serie,
761
+ S: e.S
762
+ });
763
+ }
764
+ k.value = null, qt.value = "pointer", Z.value = null, wn.value = !1;
765
+ }
766
+ function $n() {
767
+ k.value = null, Jt.value = !0;
768
+ }
769
+ function er() {
770
+ Qn(), Jt.value = !1;
771
+ }
772
+ function tr(e) {
773
+ if (!I.value || In.value || document.activeElement !== I.value || !X.value.length) return;
774
+ let t = ["ArrowUp", "ArrowLeft"].includes(e.key), n = ["ArrowDown", "ArrowRight"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
775
+ if (!t && !n && !r && !i) return;
776
+ if (e.preventDefault(), e.stopPropagation(), i) {
777
+ Qn();
778
+ return;
779
+ }
780
+ if (r) {
781
+ if (k.value === null) return;
782
+ let e = X.value[k.value];
783
+ if (!e) return;
784
+ Mn({
785
+ serie: e.serie,
786
+ shape: e.shape,
787
+ S: e.S
788
+ });
789
+ return;
790
+ }
791
+ let a = k.value;
792
+ a = a === null ? n ? 0 : X.value.length - 1 : Zn(a + (n ? 1 : -1));
793
+ let o = X.value[a];
794
+ o && (k.value = a, Dn({
795
+ shape: o.shape,
796
+ serieName: o.serieName,
797
+ serie: o.serie,
798
+ relativeIndex: o.relativeIndex,
799
+ seriesIndex: o.seriesIndex,
800
+ S: o.S,
801
+ triggerMode: "keyboard"
802
+ }));
803
+ }
804
+ let nr = l(() => ({
805
+ head: $.value.head,
806
+ body: $.value.body.map((e) => [
807
+ e[0] ?? "",
808
+ e[1] ?? "",
809
+ ...e.slice(2)
810
+ ]),
811
+ caption: M.value.a11y.translations.tableCaption,
812
+ notice: M.value.a11y.translations.tableAvailable
813
+ }));
814
+ return Ae({
815
+ getData: On,
816
+ getImage: Rn,
817
+ generateCsv: An,
818
+ generatePdf: cn,
819
+ generateImage: ln,
820
+ generateSvg: Jn,
821
+ hideSeries: yn,
822
+ showSeries: vn,
823
+ toggleTable: Nn,
824
+ toggleLabels: Pn,
825
+ toggleTooltip: Fn,
826
+ toggleAnnotator: Ln,
827
+ toggleFullscreen: Yt,
828
+ copyAlt: Xn
829
+ }), (e, t) => (y(), f("div", {
830
+ ref_key: "pcpChart",
831
+ ref: D,
832
+ class: g(`vue-data-ui-component vue-ui-pcp ${j.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${M.value.useCssAnimation ? "" : "vue-ui-dna"}`),
833
+ style: v(`font-family:${M.value.style.fontFamily};width:100%; text-align:center;background:${M.value.style.chart.backgroundColor};${M.value.responsive ? "height:100%" : ""}`),
834
+ id: `pcp_${A.value}`,
835
+ onMouseenter: t[2] ||= () => w(en)(!0),
836
+ onMouseleave: t[3] ||= () => w(en)(!1)
837
+ }, [
838
+ p("div", {
839
+ id: `chart-instructions-${A.value}`,
840
+ class: "sr-only"
841
+ }, [p("p", null, C(M.value.a11y.translations.keyboardNavigation), 1)], 8, et),
842
+ nr.value.body.length ? (y(), u(Pe, {
843
+ key: 0,
844
+ uid: A.value,
845
+ head: nr.value.head,
846
+ body: nr.value.body,
847
+ caption: nr.value.caption,
848
+ notice: nr.value.notice
849
+ }, null, 8, [
850
+ "uid",
851
+ "head",
852
+ "body",
853
+ "caption",
854
+ "notice"
855
+ ])) : d("", !0),
856
+ M.value.userOptions.buttons.annotator ? (y(), u(w(Dt), {
857
+ key: 1,
858
+ svgRef: w(I),
859
+ backgroundColor: M.value.style.chart.backgroundColor,
860
+ color: M.value.style.chart.color,
861
+ active: In.value,
862
+ isCursorPointer: P.value,
863
+ onClose: Ln
864
+ }, {
865
+ "annotator-action-close": T(() => [S(e.$slots, "annotator-action-close", {}, void 0, !0)]),
866
+ "annotator-action-color": T(({ color: t }) => [S(e.$slots, "annotator-action-color", _(h({ color: t })), void 0, !0)]),
867
+ "annotator-action-draw": T(({ mode: t }) => [S(e.$slots, "annotator-action-draw", _(h({ mode: t })), void 0, !0)]),
868
+ "annotator-action-undo": T(({ disabled: t }) => [S(e.$slots, "annotator-action-undo", _(h({ disabled: t })), void 0, !0)]),
869
+ "annotator-action-redo": T(({ disabled: t }) => [S(e.$slots, "annotator-action-redo", _(h({ disabled: t })), void 0, !0)]),
870
+ "annotator-action-delete": T(({ disabled: t }) => [S(e.$slots, "annotator-action-delete", _(h({ disabled: t })), void 0, !0)]),
871
+ _: 3
872
+ }, 8, [
873
+ "svgRef",
874
+ "backgroundColor",
875
+ "color",
876
+ "active",
877
+ "isCursorPointer"
878
+ ])) : d("", !0),
879
+ un.value ? (y(), f("div", {
880
+ key: 2,
881
+ ref_key: "noTitle",
882
+ ref: zt,
883
+ class: "vue-data-ui-no-title-space",
884
+ style: "height:36px; width: 100%;background:transparent"
885
+ }, null, 512)) : d("", !0),
886
+ M.value.style.chart.title.text ? (y(), f("div", {
887
+ key: 3,
888
+ ref_key: "chartTitle",
889
+ ref: It,
890
+ style: "width:100%;background:transparent;padding-bottom:24px"
891
+ }, [(y(), u(Oe, {
892
+ key: `title_${Bt.value}`,
893
+ config: {
894
+ title: {
895
+ cy: "pcp-div-title",
896
+ ...M.value.style.chart.title
897
+ },
898
+ subtitle: {
899
+ cy: "pcp-div-subtitle",
900
+ ...M.value.style.chart.title.subtitle
901
+ }
902
+ }
903
+ }, null, 8, ["config"]))], 512)) : d("", !0),
904
+ p("div", { id: `legend-top-${A.value}` }, null, 8, tt),
905
+ M.value.userOptions.show && Pt.value && (w(tn) || w($t)) ? (y(), u(w(Ot), {
906
+ ref_key: "userOptionsRef",
907
+ ref: Wt,
908
+ key: `user_options_${Ft.value}`,
909
+ backgroundColor: M.value.style.chart.backgroundColor,
910
+ color: M.value.style.chart.color,
911
+ isPrinting: w(on),
912
+ isImaging: w(sn),
913
+ uid: A.value,
914
+ hasTooltip: M.value.userOptions.buttons.tooltip && M.value.style.chart.tooltip.show,
915
+ hasPdf: M.value.userOptions.buttons.pdf,
916
+ hasXls: M.value.userOptions.buttons.csv,
917
+ hasImg: M.value.userOptions.buttons.img,
918
+ hasSvg: M.value.userOptions.buttons.svg,
919
+ hasTable: M.value.userOptions.buttons.table,
920
+ hasLabel: M.value.userOptions.buttons.labels,
921
+ hasFullscreen: M.value.userOptions.buttons.fullscreen,
922
+ hasAltCopy: M.value.userOptions.buttons.altCopy,
923
+ isFullscreen: j.value,
924
+ isTooltip: H.value.showTooltip,
925
+ titles: { ...M.value.userOptions.buttonTitles },
926
+ chartElement: D.value,
927
+ position: M.value.userOptions.position,
928
+ hasAnnotator: M.value.userOptions.buttons.annotator,
929
+ isAnnotation: In.value,
930
+ callbacks: M.value.userOptions.callbacks,
931
+ printScale: M.value.userOptions.print.scale,
932
+ tableDialog: M.value.table.useDialog,
933
+ isCursorPointer: P.value,
934
+ onToggleFullscreen: Yt,
935
+ onGeneratePdf: w(cn),
936
+ onGenerateCsv: An,
937
+ onGenerateImage: w(Yn),
938
+ onGenerateSvg: w(Jn),
939
+ onToggleTable: Nn,
940
+ onToggleLabels: Pn,
941
+ onToggleTooltip: Fn,
942
+ onToggleAnnotator: Ln,
943
+ onCopyAlt: Xn,
944
+ style: v({ visibility: w(tn) ? w($t) ? "visible" : "hidden" : "visible" })
945
+ }, Be({ _: 2 }, [
946
+ e.$slots.menuIcon ? {
947
+ name: "menuIcon",
948
+ fn: T(({ isOpen: t, color: n }) => [S(e.$slots, "menuIcon", _(h({
949
+ isOpen: t,
950
+ color: n
951
+ })), void 0, !0)]),
952
+ key: "0"
953
+ } : void 0,
954
+ e.$slots.optionTooltip ? {
955
+ name: "optionTooltip",
956
+ fn: T(() => [S(e.$slots, "optionTooltip", {}, void 0, !0)]),
957
+ key: "1"
958
+ } : void 0,
959
+ e.$slots.optionPdf ? {
960
+ name: "optionPdf",
961
+ fn: T(() => [S(e.$slots, "optionPdf", {}, void 0, !0)]),
962
+ key: "2"
963
+ } : void 0,
964
+ e.$slots.optionCsv ? {
965
+ name: "optionCsv",
966
+ fn: T(() => [S(e.$slots, "optionCsv", {}, void 0, !0)]),
967
+ key: "3"
968
+ } : void 0,
969
+ e.$slots.optionImg ? {
970
+ name: "optionImg",
971
+ fn: T(() => [S(e.$slots, "optionImg", {}, void 0, !0)]),
972
+ key: "4"
973
+ } : void 0,
974
+ e.$slots.optionSvg ? {
975
+ name: "optionSvg",
976
+ fn: T(() => [S(e.$slots, "optionSvg", {}, void 0, !0)]),
977
+ key: "5"
978
+ } : void 0,
979
+ e.$slots.optionTable ? {
980
+ name: "optionTable",
981
+ fn: T(() => [S(e.$slots, "optionTable", {}, void 0, !0)]),
982
+ key: "6"
983
+ } : void 0,
984
+ e.$slots.optionLabels ? {
985
+ name: "optionLabels",
986
+ fn: T(() => [S(e.$slots, "optionLabels", {}, void 0, !0)]),
987
+ key: "7"
988
+ } : void 0,
989
+ e.$slots.optionFullscreen ? {
990
+ name: "optionFullscreen",
991
+ fn: T(({ toggleFullscreen: t, isFullscreen: n }) => [S(e.$slots, "optionFullscreen", _(h({
992
+ toggleFullscreen: t,
993
+ isFullscreen: n
994
+ })), void 0, !0)]),
995
+ key: "8"
996
+ } : void 0,
997
+ e.$slots.optionAnnotator ? {
998
+ name: "optionAnnotator",
999
+ fn: T(({ toggleAnnotator: t, isAnnotator: n }) => [S(e.$slots, "optionAnnotator", _(h({
1000
+ toggleAnnotator: t,
1001
+ isAnnotator: n
1002
+ })), void 0, !0)]),
1003
+ key: "9"
1004
+ } : void 0,
1005
+ e.$slots.optionAltCopy ? {
1006
+ name: "optionAltCopy",
1007
+ fn: T(({ altCopy: t }) => [S(e.$slots, "optionAltCopy", _(h({ altCopy: t })), void 0, !0)]),
1008
+ key: "10"
1009
+ } : void 0,
1010
+ e.$slots["custom-menu-before"] ? {
1011
+ name: "custom-menu-before",
1012
+ fn: T(() => [S(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1013
+ key: "11"
1014
+ } : void 0,
1015
+ e.$slots["custom-menu-after"] ? {
1016
+ name: "custom-menu-after",
1017
+ fn: T(() => [S(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1018
+ key: "12"
1019
+ } : void 0
1020
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasLabel.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style".split("."))) : d("", !0),
1021
+ p("div", nt, [(y(), f("svg", {
1022
+ ref_key: "svgRef",
1023
+ ref: I,
1024
+ xmlns: w(me),
1025
+ "aria-describedby": `chart-instructions-${A.value}`,
1026
+ class: g({
1027
+ "vue-data-ui-fullscreen--on": j.value,
1028
+ "vue-data-ui-fulscreen--off": !j.value,
1029
+ "vue-data-ui-no-transition": !w(N)
1030
+ }),
1031
+ viewBox: `0 0 ${V.value.chartWidth <= 0 ? 10 : V.value.chartWidth} ${V.value.chartHeight <= 0 ? 10 : V.value.chartHeight}`,
1032
+ style: v(`max-width:100%; overflow: visible; background:transparent;color:${M.value.style.chart.color}`),
1033
+ tabindex: "0",
1034
+ onFocus: $n,
1035
+ onBlur: er,
1036
+ onKeydown: tr
1037
+ }, [
1038
+ He(w(kt)),
1039
+ e.$slots["chart-background"] ? (y(), f("foreignObject", {
1040
+ key: 0,
1041
+ x: V.value.left,
1042
+ y: V.value.top,
1043
+ width: V.value.width,
1044
+ height: V.value.height,
1045
+ style: { pointerEvents: "none" }
1046
+ }, [S(e.$slots, "chart-background", {}, void 0, !0)], 8, it)) : d("", !0),
1047
+ (y(!0), f(c, null, x(J.value, (e, t) => (y(), f("g", at, [p("line", {
1048
+ x1: V.value.left + K.value * t + K.value / 2,
1049
+ x2: V.value.left + K.value * t + K.value / 2,
1050
+ y1: V.value.top,
1051
+ y2: V.value.bottom,
1052
+ stroke: M.value.style.chart.yAxis.stroke,
1053
+ "stroke-width": M.value.style.chart.yAxis.strokeWidth
1054
+ }, null, 8, ot), M.value.style.chart.yAxis.labels.ticks.show ? (y(), f(c, { key: 0 }, [(y(!0), f(c, null, x(e.ticks, (t, n) => (y(), f("path", {
1055
+ class: g({ "vue-data-ui-transition": w(N) }),
1056
+ key: `tick_${e.name}_${n}`,
1057
+ d: `M${t.x},${t.y} ${t.x - 10},${t.y}`,
1058
+ stroke: M.value.style.chart.yAxis.stroke,
1059
+ "stroke-width": M.value.style.chart.yAxis.strokeWidth,
1060
+ style: v(`opacity:${Z.value && !H.value.showTooltip ? .2 : 1}`)
1061
+ }, null, 14, st))), 128)), w(F) ? d("", !0) : (y(), f("g", ct, [(y(!0), f(c, null, x(e.ticks, (n, r) => (y(), f("text", {
1062
+ key: `tl_${e.name}_${r}`,
1063
+ class: g({ "vue-data-ui-transition": w(N) }),
1064
+ transform: `translate(${n.x - 12 + M.value.style.chart.yAxis.labels.ticks.offsetX}, ${n.y + M.value.style.chart.yAxis.labels.ticks.offsetY + z.value.ticksFontSize / 3})`,
1065
+ fill: M.value.style.chart.yAxis.labels.ticks.color,
1066
+ "text-anchor": "end",
1067
+ "font-size": z.value.ticksFontSize,
1068
+ "font-weight": M.value.style.chart.yAxis.labels.ticks.bold ? "bold" : "normal",
1069
+ style: v(`opacity:${Z.value && !H.value.showTooltip ? .2 : 1}`)
1070
+ }, C(Sn({
1071
+ value: n.value,
1072
+ index: t,
1073
+ datapoint: n
1074
+ })), 15, lt))), 128))]))], 64)) : d("", !0)]))), 256)),
1075
+ M.value.style.chart.yAxis.labels.showAxisNames ? (y(), f("g", {
1076
+ key: 1,
1077
+ ref_key: "xAxisLabels",
1078
+ ref: Gt
1079
+ }, [(y(!0), f(c, null, x(J.value, (e, t) => (y(), f(c, null, [String(e.name).includes("\n") ? (y(), f("text", {
1080
+ key: 1,
1081
+ class: "vue-ui-parallel-coordinate-plot-x-label",
1082
+ fill: M.value.style.chart.yAxis.labels.axisNamesColor,
1083
+ "font-size": z.value.axisNameFontSize,
1084
+ "font-weight": M.value.style.chart.yAxis.labels.axisNamesBold ? "bold" : "",
1085
+ "text-anchor": M.value.style.chart.yAxis.labels.axisNamesRotation === 0 ? "middle" : M.value.style.chart.yAxis.labels.axisNamesRotation < 0 ? "start" : "end",
1086
+ transform: `translate(${V.value.left + K.value * t + K.value / 2}, ${B.value - z.value.axisNameFontSize}), rotate(${M.value.style.chart.yAxis.labels.axisNamesRotation})`,
1087
+ innerHTML: w(r)({
1088
+ content: String(e.name),
1089
+ fontSize: z.value.axisNameFontSize,
1090
+ fill: M.value.style.chart.yAxis.labels.axisNamesColor,
1091
+ x: 0,
1092
+ y: 0
1093
+ })
1094
+ }, null, 8, dt)) : (y(), f("text", {
1095
+ key: 0,
1096
+ class: "vue-ui-parallel-coordinate-plot-x-label",
1097
+ fill: M.value.style.chart.yAxis.labels.axisNamesColor,
1098
+ "font-size": z.value.axisNameFontSize,
1099
+ "font-weight": M.value.style.chart.yAxis.labels.axisNamesBold ? "bold" : "",
1100
+ "text-anchor": M.value.style.chart.yAxis.labels.axisNamesRotation === 0 ? "middle" : M.value.style.chart.yAxis.labels.axisNamesRotation < 0 ? "start" : "end",
1101
+ transform: `translate(${V.value.left + K.value * t + K.value / 2}, ${B.value - z.value.axisNameFontSize}), rotate(${M.value.style.chart.yAxis.labels.axisNamesRotation})`
1102
+ }, C(e.name), 9, ut))], 64))), 256))], 512)) : d("", !0),
1103
+ (y(!0), f(c, null, x(Y.value, (t, n) => (y(), f("g", null, [(y(!0), f(c, null, x(t.series, (r, i) => (y(), f("g", null, [
1104
+ M.value.style.chart.plots.show ? (y(), f("g", ft, [
1105
+ (y(!0), f(c, null, x(r.datapoints, (e, a) => (y(), u(ke, {
1106
+ plot: {
1107
+ x: e.x,
1108
+ y: e.y
1109
+ },
1110
+ color: t.color,
1111
+ shape: t.shape,
1112
+ radius: t.shape === "triangle" ? z.value.plotSize * 1.2 : z.value.plotSize,
1113
+ stroke: M.value.style.chart.backgroundColor,
1114
+ strokeWidth: .5,
1115
+ onMouseenter: (e) => Dn({
1116
+ shape: t.shape,
1117
+ serieName: t.name,
1118
+ serie: r,
1119
+ relativeIndex: i,
1120
+ seriesIndex: r.seriesIndex,
1121
+ S: n,
1122
+ triggerMode: "pointer"
1123
+ }),
1124
+ onMouseleave: (e) => Q({
1125
+ serie: r,
1126
+ shape: t.shape,
1127
+ S: n
1128
+ }),
1129
+ style: v(`opacity:${Z.value ? Z.value === r.id ? M.value.style.chart.plots.opacity : .2 : M.value.style.chart.plots.opacity}`),
1130
+ onClick: () => Mn({
1131
+ serie: r,
1132
+ shape: t.shape,
1133
+ S: n
1134
+ })
1135
+ }, null, 8, [
1136
+ "plot",
1137
+ "color",
1138
+ "shape",
1139
+ "radius",
1140
+ "stroke",
1141
+ "onMouseenter",
1142
+ "onMouseleave",
1143
+ "style",
1144
+ "onClick"
1145
+ ]))), 256)),
1146
+ H.value.showTooltip ? d("", !0) : (y(), f(c, { key: 0 }, [Z.value && Z.value === r.id && r.datapoints.length ? (y(), f("text", {
1147
+ key: 0,
1148
+ x: r.datapoints[0].x - z.value.ticksFontSize,
1149
+ y: r.datapoints[0].y + z.value.ticksFontSize / 3,
1150
+ "text-anchor": "end",
1151
+ "font-size": z.value.ticksFontSize,
1152
+ fill: t.color,
1153
+ "font-weight": "bold"
1154
+ }, C(r.name), 9, pt)) : d("", !0)], 64)),
1155
+ M.value.style.chart.comments.show ? (y(!0), f(c, { key: 1 }, x(r.datapoints, (n) => (y(), f("g", null, [n.comment ? (y(), f("foreignObject", {
1156
+ key: 0,
1157
+ style: { overflow: "visible" },
1158
+ height: "12",
1159
+ width: M.value.style.chart.comments.width,
1160
+ x: n.x - M.value.style.chart.comments.width / 2 + M.value.style.chart.comments.offsetX,
1161
+ y: n.y + M.value.style.chart.comments.offsetY + 6
1162
+ }, [p("div", ht, [S(e.$slots, "plot-comment", { plot: {
1163
+ ...n,
1164
+ color: t.color
1165
+ } }, void 0, !0)])], 8, mt)) : d("", !0)]))), 256)) : d("", !0)
1166
+ ])) : d("", !0),
1167
+ p("path", {
1168
+ d: `M${M.value.style.chart.lines.smooth ? r.smoothPath : r.straightPath}`,
1169
+ stroke: t.color,
1170
+ "stroke-width": M.value.style.chart.lines.strokeWidth,
1171
+ fill: "none",
1172
+ class: g({
1173
+ "vue-ui-pcp-animated vue-data-ui-line-animated": M.value.useCssAnimation,
1174
+ "vue-data-ui-transition": w(N)
1175
+ }),
1176
+ onMouseenter: (e) => Dn({
1177
+ shape: t.shape,
1178
+ serieName: t.name,
1179
+ serie: r,
1180
+ relativeIndex: i,
1181
+ seriesIndex: r.seriesIndex,
1182
+ S: n,
1183
+ triggerMode: "pointer"
1184
+ }),
1185
+ onMouseleave: (e) => Q({
1186
+ serie: r,
1187
+ shape: t.shape,
1188
+ S: n
1189
+ }),
1190
+ onClick: () => Mn({
1191
+ serie: r,
1192
+ shape: t.shape,
1193
+ S: n
1194
+ }),
1195
+ style: v(`opacity:${Z.value ? Z.value === r.id ? M.value.style.chart.lines.opacity : .2 : M.value.style.chart.lines.opacity}; stroke-dasharray:${r.pathLength}; stroke-dashoffset: ${M.value.useCssAnimation ? r.pathLength : 0}`)
1196
+ }, null, 46, gt),
1197
+ H.value.showTooltip ? (y(), f("path", {
1198
+ key: 1,
1199
+ d: `M${M.value.style.chart.lines.smooth ? r.smoothPath : r.straightPath}`,
1200
+ stroke: "transparent",
1201
+ "stroke-width": 12,
1202
+ fill: "none",
1203
+ class: g({
1204
+ "vue-ui-pcp-animated vue-data-ui-line-animated": M.value.useCssAnimation,
1205
+ "vue-data-ui-transition": w(N)
1206
+ }),
1207
+ onMouseenter: (e) => Dn({
1208
+ shape: t.shape,
1209
+ serieName: t.name,
1210
+ serie: r,
1211
+ relativeIndex: i,
1212
+ seriesIndex: r.seriesIndex,
1213
+ S: n,
1214
+ triggerMode: "pointer"
1215
+ }),
1216
+ onMouseleave: (e) => Q({
1217
+ serie: r,
1218
+ shape: t.shape,
1219
+ S: n
1220
+ }),
1221
+ onClick: () => Mn({
1222
+ serie: r,
1223
+ shape: t.shape,
1224
+ S: n
1225
+ }),
1226
+ style: { opacity: "0" }
1227
+ }, null, 42, _t)) : d("", !0)
1228
+ ]))), 256))]))), 256)),
1229
+ (y(!0), f(c, null, x(Y.value, (e, t) => (y(), f("g", null, [(y(!0), f(c, null, x(e.series, (n, r) => (y(), f("g", null, [!w(F) && (H.value.dataLabels.show || Z.value && Z.value === n.id) ? (y(!0), f(c, { key: 0 }, x(n.datapoints, (i, a) => (y(), f("text", {
1230
+ key: `pl_${n.id}_${a}`,
1231
+ transform: `translate(${i.x + 12 + M.value.style.chart.yAxis.labels.datapoints.offsetX}, ${i.y + M.value.style.chart.yAxis.labels.datapoints.offsetY + z.value.datapointFontSize / 3})`,
1232
+ fill: M.value.style.chart.yAxis.labels.datapoints.useSerieColor ? e.color : M.value.style.chart.yAxis.labels.datapoints.color,
1233
+ "text-anchor": "start",
1234
+ "font-weight": M.value.style.chart.yAxis.labels.datapoints.bold ? "bold" : "normal",
1235
+ class: g({
1236
+ "vue-ui-pcp-plot-label": !0,
1237
+ "vue-data-ui-transition": w(N)
1238
+ }),
1239
+ "font-size": z.value.datapointFontSize,
1240
+ stroke: M.value.style.chart.backgroundColor,
1241
+ "stroke-width": 3,
1242
+ "stroke-linecap": "round",
1243
+ "stroke-linejoin": "round",
1244
+ "paint-order": "stroke fill",
1245
+ onMouseenter: (i) => Dn({
1246
+ shape: e.shape,
1247
+ serieName: e.name,
1248
+ serie: n,
1249
+ relativeIndex: r,
1250
+ seriesIndex: n.seriesIndex,
1251
+ S: t,
1252
+ triggerMode: "pointer"
1253
+ }),
1254
+ onMouseleave: (r) => Q({
1255
+ serie: n,
1256
+ shape: e.shape,
1257
+ S: t
1258
+ }),
1259
+ onClick: () => Mn({
1260
+ serie: n,
1261
+ shape: e.shape,
1262
+ S: t
1263
+ }),
1264
+ style: v(`opacity:${Z.value ? Z.value === n.id ? 1 : .2 : 1}`)
1265
+ }, C(Sn({
1266
+ value: i.value,
1267
+ index: a,
1268
+ datapoint: i
1269
+ })), 47, vt))), 128)) : d("", !0)]))), 256))]))), 256)),
1270
+ S(e.$slots, "svg", { svg: {
1271
+ ...V.value,
1272
+ isPrintingImg: w(on) || w(sn) || w(Kn),
1273
+ isPrintingSvg: w(qn)
1274
+ } }, void 0, !0)
1275
+ ], 46, rt)), e.$slots.hint ? (y(), f("div", yt, [S(e.$slots, "hint", _(h({
1276
+ hint: M.value.a11y.translations.keyboardNavigation,
1277
+ isVisible: Jt.value
1278
+ })), void 0, !0)])) : d("", !0)]),
1279
+ e.$slots.watermark ? (y(), f("div", bt, [S(e.$slots, "watermark", _(h({ isPrinting: w(on) || w(sn) || w(Kn) || w(qn) })), void 0, !0)])) : d("", !0),
1280
+ p("div", { id: `legend-bottom-${A.value}` }, null, 8, xt),
1281
+ Ut.value && (M.value.style.chart.legend.show || e.$slots.legend) ? (y(), u(ze, {
1282
+ key: 6,
1283
+ to: M.value.style.chart.legend.position === "top" ? `#legend-top-${A.value}` : `#legend-bottom-${A.value}`
1284
+ }, [p("div", {
1285
+ ref_key: "chartLegend",
1286
+ ref: Lt
1287
+ }, [S(e.$slots, "legend", { legend: G.value }, () => [M.value.style.chart.legend.show && Pt.value ? (y(), u(Le, {
1288
+ key: `legend_${Vt.value}`,
1289
+ legendSet: G.value,
1290
+ config: bn.value,
1291
+ isCursorPointer: P.value,
1292
+ onClickMarker: t[0] ||= ({ legend: e }) => {
1293
+ gn(e.id);
1294
+ }
1295
+ }, {
1296
+ item: T(({ legend: e, index: t }) => [p("div", {
1297
+ onClick: (t) => e.segregate(),
1298
+ style: v(`opacity:${U.value.includes(e.id) ? .5 : 1}`)
1299
+ }, C(e.name), 13, St)]),
1300
+ legendToggle: T(() => [G.value.length > 2 && M.value.style.chart.legend.selectAllToggle.show && !w(F) ? (y(), u(Ne, {
1301
+ key: 0,
1302
+ backgroundColor: M.value.style.chart.legend.selectAllToggle.backgroundColor,
1303
+ color: M.value.style.chart.legend.selectAllToggle.color,
1304
+ fontSize: M.value.style.chart.legend.fontSize,
1305
+ checked: U.value.length > 0,
1306
+ isCursorPointer: P.value,
1307
+ onToggle: hn
1308
+ }, null, 8, [
1309
+ "backgroundColor",
1310
+ "color",
1311
+ "fontSize",
1312
+ "checked",
1313
+ "isCursorPointer"
1314
+ ])) : d("", !0)]),
1315
+ _: 1
1316
+ }, 8, [
1317
+ "legendSet",
1318
+ "config",
1319
+ "isCursorPointer"
1320
+ ])) : d("", !0)], !0)], 512)], 8, ["to"])) : d("", !0),
1321
+ e.$slots.source ? (y(), f("div", {
1322
+ key: 7,
1323
+ ref_key: "source",
1324
+ ref: Rt,
1325
+ dir: "auto"
1326
+ }, [S(e.$slots, "source", {}, void 0, !0)], 512)) : d("", !0),
1327
+ He(w(Ct), {
1328
+ teleportTo: M.value.style.chart.tooltip.teleportTo,
1329
+ show: H.value.showTooltip && wn.value,
1330
+ backgroundColor: M.value.style.chart.tooltip.backgroundColor,
1331
+ color: M.value.style.chart.tooltip.color,
1332
+ fontSize: M.value.style.chart.tooltip.fontSize,
1333
+ borderRadius: M.value.style.chart.tooltip.borderRadius,
1334
+ borderColor: M.value.style.chart.tooltip.borderColor,
1335
+ borderWidth: M.value.style.chart.tooltip.borderWidth,
1336
+ backgroundOpacity: M.value.style.chart.tooltip.backgroundOpacity,
1337
+ position: M.value.style.chart.tooltip.position,
1338
+ offsetX: M.value.style.chart.tooltip.offsetX,
1339
+ offsetY: M.value.style.chart.tooltip.offsetY,
1340
+ parent: D.value,
1341
+ content: Tn.value,
1342
+ isFullscreen: j.value,
1343
+ isCustom: w(te)(M.value.style.chart.tooltip.customFormat),
1344
+ smooth: M.value.style.chart.tooltip.smooth,
1345
+ backdropFilter: M.value.style.chart.tooltip.backdropFilter,
1346
+ smoothForce: M.value.style.chart.tooltip.smoothForce,
1347
+ smoothSnapThreshold: M.value.style.chart.tooltip.smoothSnapThreshold,
1348
+ isA11yMode: qt.value === "keyboard",
1349
+ a11yPosition: Kt.value
1350
+ }, {
1351
+ "tooltip-before": T(() => [S(e.$slots, "tooltip-before", _(h({ ...Cn.value })), void 0, !0)]),
1352
+ tooltip: T(() => [S(e.$slots, "tooltip", _(h({ ...Cn.value })), void 0, !0)]),
1353
+ "tooltip-after": T(() => [S(e.$slots, "tooltip-after", _(h({ ...Cn.value })), void 0, !0)]),
1354
+ _: 3
1355
+ }, 8, [
1356
+ "teleportTo",
1357
+ "show",
1358
+ "backgroundColor",
1359
+ "color",
1360
+ "fontSize",
1361
+ "borderRadius",
1362
+ "borderColor",
1363
+ "borderWidth",
1364
+ "backgroundOpacity",
1365
+ "position",
1366
+ "offsetX",
1367
+ "offsetY",
1368
+ "parent",
1369
+ "content",
1370
+ "isFullscreen",
1371
+ "isCustom",
1372
+ "smooth",
1373
+ "backdropFilter",
1374
+ "smoothForce",
1375
+ "smoothSnapThreshold",
1376
+ "isA11yMode",
1377
+ "a11yPosition"
1378
+ ]),
1379
+ Pt.value && M.value.userOptions.buttons.table ? (y(), u(qe(Vn.value.component), Ue({ key: 8 }, Vn.value.props, {
1380
+ ref_key: "tableUnit",
1381
+ ref: O,
1382
+ onClose: Hn
1383
+ }), Be({
1384
+ content: T(() => [(y(), u(w(Et), {
1385
+ key: `table_${Ht.value}`,
1386
+ colNames: $.value.colNames,
1387
+ head: $.value.head,
1388
+ body: $.value.body,
1389
+ config: $.value.config,
1390
+ title: M.value.table.useDialog ? "" : Vn.value.title,
1391
+ withCloseButton: !M.value.table.useDialog,
1392
+ isCursorPointer: P.value,
1393
+ onClose: Hn
1394
+ }, {
1395
+ th: T(({ th: e }) => [p("div", null, C(e), 1)]),
1396
+ td: T(({ td: e }) => [Ve(C(e), 1)]),
1397
+ _: 1
1398
+ }, 8, [
1399
+ "colNames",
1400
+ "head",
1401
+ "body",
1402
+ "config",
1403
+ "title",
1404
+ "withCloseButton",
1405
+ "isCursorPointer"
1406
+ ]))]),
1407
+ _: 2
1408
+ }, [M.value.table.useDialog ? {
1409
+ name: "title",
1410
+ fn: T(() => [Ve(C(Vn.value.title), 1)]),
1411
+ key: "0"
1412
+ } : void 0, M.value.table.useDialog ? {
1413
+ name: "actions",
1414
+ fn: T(() => [p("button", {
1415
+ tabindex: "0",
1416
+ class: "vue-ui-user-options-button",
1417
+ onClick: t[1] ||= (e) => An(M.value.userOptions.callbacks.csv),
1418
+ style: v({ cursor: P.value ? "pointer" : "default" })
1419
+ }, [He(w(wt), {
1420
+ name: "fileCsv",
1421
+ stroke: Vn.value.props.color
1422
+ }, null, 8, ["stroke"])], 4)]),
1423
+ key: "1"
1424
+ } : void 0]), 1040)) : d("", !0),
1425
+ S(e.$slots, "skeleton", {}, () => [w(F) ? (y(), u(xe, { key: 0 })) : d("", !0)], !0)
1426
+ ], 46, $e));
1427
+ }
1428
+ }, [["__scopeId", "data-v-b9d21e86"]]);
1429
+ //#endregion
1430
+ export { Qe as n, Ct as t };