vue-data-ui 3.22.7 → 3.22.9

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 (206) hide show
  1. package/dist/{Arrow-DaGI9u-b.js → Arrow-DdymhUfY.js} +1 -1
  2. package/dist/{BaseDraggableDialog-1wwwdwV2.js → BaseDraggableDialog-Av7Uxq5V.js} +2 -2
  3. package/dist/BaseIcon-UdRAvP2h.js +483 -0
  4. package/dist/{BaseLegendToggle-CHnlKalt.js → BaseLegendToggle-DWtet-Hh.js} +1 -1
  5. package/dist/{BaseZoomControls-C9bdZSCj.js → BaseZoomControls-BY2KLqs6.js} +2 -2
  6. package/dist/{ColorPicker-TB3KhY3j.js → ColorPicker-DR_ummtM.js} +2 -2
  7. package/dist/{DataTable-CVF7DoZn.js → DataTable-BxpTMgfK.js} +2 -2
  8. package/dist/DefGrad-DVBqDjhO.js +48 -0
  9. package/dist/{Legend-kAr7Vqqu.js → Legend-ROt6ugzW.js} +2 -2
  10. package/dist/{NonSvgPenAndPaper-CEiv7_gM.js → NonSvgPenAndPaper-B6EG_Sga.js} +3 -3
  11. package/dist/{PackageVersion-Dse0n05o.js → PackageVersion-D__dRVRA.js} +1 -1
  12. package/dist/{PenAndPaper-gaV1QPpP.js → PenAndPaper-DsXi7GJ-.js} +3 -3
  13. package/dist/{Shape-CiQIxyyT.js → Shape-UpH0a4Ur.js} +3 -3
  14. package/dist/{Slicer-6FOtg9py.js → Slicer-CW_XPIKL.js} +369 -364
  15. package/dist/{SlicerPreview-DUywypFu.js → SlicerPreview-CTz41lOu.js} +542 -537
  16. package/dist/{SparkTooltip-B-qsPj68.js → SparkTooltip-BTLN-Kex.js} +6 -6
  17. package/dist/{Title-PiTKr6sp.js → Title-CcNiYzEo.js} +1 -1
  18. package/dist/{Tooltip-B8yYfISA.js → Tooltip-CxOrWlFy.js} +1 -1
  19. package/dist/{UserOptions-BL9VlHop.js → UserOptions-trvJ26nz.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-history-plot.js +1 -1
  47. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  48. package/dist/components/vue-ui-icon.js +1 -1
  49. package/dist/components/vue-ui-kpi.js +1 -1
  50. package/dist/components/vue-ui-mini-loader.js +1 -1
  51. package/dist/components/vue-ui-molecule.js +1 -1
  52. package/dist/components/vue-ui-mood-radar.js +1 -1
  53. package/dist/components/vue-ui-nested-donuts.js +1 -1
  54. package/dist/components/vue-ui-onion.js +1 -1
  55. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  56. package/dist/components/vue-ui-quadrant.js +1 -1
  57. package/dist/components/vue-ui-quick-chart.js +1 -1
  58. package/dist/components/vue-ui-radar.js +1 -1
  59. package/dist/components/vue-ui-rating.js +1 -1
  60. package/dist/components/vue-ui-relation-circle.js +1 -1
  61. package/dist/components/vue-ui-ridgeline.js +1 -1
  62. package/dist/components/vue-ui-rings.js +1 -1
  63. package/dist/components/vue-ui-scatter.js +1 -1
  64. package/dist/components/vue-ui-skeleton.js +1 -1
  65. package/dist/components/vue-ui-smiley.js +1 -1
  66. package/dist/components/vue-ui-spark-trend.js +1 -1
  67. package/dist/components/vue-ui-sparkbar.js +1 -1
  68. package/dist/components/vue-ui-sparkgauge.js +1 -1
  69. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  70. package/dist/components/vue-ui-sparkline.js +1 -1
  71. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  72. package/dist/components/vue-ui-stackbar.js +1 -1
  73. package/dist/components/vue-ui-stackline.js +1 -1
  74. package/dist/components/vue-ui-strip-plot.js +1 -1
  75. package/dist/components/vue-ui-table-heatmap.js +1 -1
  76. package/dist/components/vue-ui-table-sparkline.js +1 -1
  77. package/dist/components/vue-ui-table.js +1 -1
  78. package/dist/components/vue-ui-thermometer.js +1 -1
  79. package/dist/components/vue-ui-timer.js +1 -1
  80. package/dist/components/vue-ui-tiremarks.js +1 -1
  81. package/dist/components/vue-ui-treemap.js +1 -1
  82. package/dist/components/vue-ui-vertical-bar.js +1 -1
  83. package/dist/components/vue-ui-waffle.js +1 -1
  84. package/dist/components/vue-ui-wheel.js +1 -1
  85. package/dist/components/vue-ui-word-cloud.js +1 -1
  86. package/dist/components/vue-ui-world.js +1 -1
  87. package/dist/components/vue-ui-xy-canvas.js +1 -1
  88. package/dist/components/vue-ui-xy.js +1 -1
  89. package/dist/{dom-to-png-BZjYWNEg.js → dom-to-png-BbwhsRIr.js} +1 -1
  90. package/dist/exposedLib-VXFp3Z2c.js +19 -0
  91. package/dist/{geoProjections-Czak6Jn1.js → geoProjections-BbN7z57k.js} +172 -15
  92. package/dist/{img-B_abIg0o.js → img-DnP3eXuv.js} +1 -1
  93. package/dist/{labelUtils-CTDRZdP1.js → labelUtils-DBEh078l.js} +1 -1
  94. package/dist/{lib-EAmk-PgA.js → lib-JqW18y5I.js} +36 -30
  95. package/dist/{package-DeMimPej.js → package-ByOT60IK.js} +1 -1
  96. package/dist/{pdf-B6qrdEqB.js → pdf-hj3gzrE7.js} +1 -1
  97. package/dist/{render-common-DMai0gHB.js → render-common-D18VrP0h.js} +20 -20
  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/utils.d.ts +18 -0
  103. package/dist/{useAutoSizeLabelsInsideViewbox-CyOGrdD_.js → useAutoSizeLabelsInsideViewbox-BGnDfZdg.js} +1 -1
  104. package/dist/{useNestedProp-D8XqxgOU.js → useNestedProp-DIuuzG1r.js} +1 -1
  105. package/dist/{usePrinter-DnGzpp6Q.js → usePrinter-CqqHmnBI.js} +2 -2
  106. package/dist/utils.js +24 -24
  107. package/dist/{vue-data-ui-D6qVWloL.js → vue-data-ui-ub3fCh6P.js} +68 -68
  108. package/dist/vue-data-ui.js +77 -77
  109. package/dist/vue-ui-3d-bar-taPI41_I.js +1825 -0
  110. package/dist/{vue-ui-accordion-Dzz8XhX3.js → vue-ui-accordion-CjAGqEJg.js} +3 -3
  111. package/dist/vue-ui-age-pyramid-jvQZbF8E.js +1247 -0
  112. package/dist/{vue-ui-annotator-DXZumSP8.js → vue-ui-annotator-BIucnT0L.js} +67 -67
  113. package/dist/vue-ui-bullet-CIATzlsk.js +710 -0
  114. package/dist/vue-ui-bump-D8MxltQE.js +1249 -0
  115. package/dist/vue-ui-candlestick-DULUMU-Q.js +1840 -0
  116. package/dist/vue-ui-carousel-table-BSmdexG7.js +455 -0
  117. package/dist/{vue-ui-chestnut-C3IbAdkQ.js → vue-ui-chestnut-BIh1nQ7q.js} +585 -553
  118. package/dist/vue-ui-chord-DL1M7cgL.js +1391 -0
  119. package/dist/{vue-ui-circle-pack-Cq4lkmee.js → vue-ui-circle-pack-C1Pgq6si.js} +424 -418
  120. package/dist/{vue-ui-cursor-DLJcFwRZ.js → vue-ui-cursor-d2uLAKTQ.js} +61 -61
  121. package/dist/{vue-ui-dag-DemsIecS.js → vue-ui-dag-CVh9FpZr.js} +43 -43
  122. package/dist/{vue-ui-dashboard-DWHD_wNN.js → vue-ui-dashboard-BH0N3ebj.js} +69 -69
  123. package/dist/{vue-ui-digits-sIKc85vS.js → vue-ui-digits-R6wi3J-Y.js} +3 -3
  124. package/dist/{vue-ui-donut-Dp6GW0dw.js → vue-ui-donut-BWDeVzLc.js} +201 -201
  125. package/dist/{vue-ui-donut-CLheJPcO.js → vue-ui-donut-BoZdciGh.js} +825 -816
  126. package/dist/{vue-ui-donut-evolution-zmRPpJLj.js → vue-ui-donut-evolution-CpC9EMro.js} +486 -474
  127. package/dist/{vue-ui-dumbbell-bSbgHd0U.js → vue-ui-dumbbell-DGA5Bfnl.js} +520 -486
  128. package/dist/{vue-ui-flow-q_M7O1BK.js → vue-ui-flow-CNczKwTh.js} +119 -119
  129. package/dist/vue-ui-funnel-CaD2tZCT.js +782 -0
  130. package/dist/{vue-ui-galaxy-DCCWmIyH.js → vue-ui-galaxy-v3cTbUiM.js} +342 -342
  131. package/dist/vue-ui-gauge-DxvMjfoc.js +926 -0
  132. package/dist/{vue-ui-geo-CM59rpnj.js → vue-ui-geo-BgmLkZZ2.js} +14 -14
  133. package/dist/{vue-ui-gizmo-D2RL6IVp.js → vue-ui-gizmo-n1kmcGeE.js} +66 -61
  134. package/dist/{vue-ui-heatmap-BX6PQxML.js → vue-ui-heatmap-dSTh8ah_.js} +163 -163
  135. package/dist/{vue-ui-history-plot-DaHAeQph.js → vue-ui-history-plot-N8BqMFVU.js} +572 -561
  136. package/dist/vue-ui-horizontal-bar-CwiQxYzv.js +1689 -0
  137. package/dist/{vue-ui-kpi-DLbP7lJR.js → vue-ui-kpi-BKrUk9o8.js} +4 -4
  138. package/dist/{vue-ui-mini-loader-DPHzHsM7.js → vue-ui-mini-loader-D5we7V_W.js} +2 -2
  139. package/dist/vue-ui-molecule--kK1JfnP.js +931 -0
  140. package/dist/{vue-ui-mood-radar-CCWaPr0P.js → vue-ui-mood-radar-CpBRHQo_.js} +246 -241
  141. package/dist/vue-ui-nested-donuts-8Ehwcuns.js +1493 -0
  142. package/dist/vue-ui-onion-Cf6JiYTH.js +1200 -0
  143. package/dist/vue-ui-parallel-coordinate-plot-Blnqp1DB.js +1416 -0
  144. package/dist/{vue-ui-quadrant-T_UmRAAy.js → vue-ui-quadrant-CxU0jiOm.js} +410 -404
  145. package/dist/vue-ui-quick-chart-BO98uEPl.js +2469 -0
  146. package/dist/{vue-ui-radar-CHjeGOMC.js → vue-ui-radar-eH2Qih4_.js} +323 -317
  147. package/dist/{vue-ui-rating-Bek8Tgr-.js → vue-ui-rating-CN-ZiAES.js} +137 -128
  148. package/dist/{vue-ui-relation-circle-DRZGQ_UX.js → vue-ui-relation-circle-BIcP-aAt.js} +167 -167
  149. package/dist/{vue-ui-ridgeline-DIODGiu8.js → vue-ui-ridgeline-ChXHzEJw.js} +538 -532
  150. package/dist/vue-ui-rings-J990vNbX.js +1252 -0
  151. package/dist/vue-ui-scatter-BeJB0EKg.js +2422 -0
  152. package/dist/{vue-ui-skeleton-Fmue6DAG.js → vue-ui-skeleton-DC2bZ0nk.js} +385 -382
  153. package/dist/{vue-ui-smiley-BVMI5vUy.js → vue-ui-smiley-Dyyu1je3.js} +119 -106
  154. package/dist/vue-ui-spark-trend-CpDX85H3.js +443 -0
  155. package/dist/vue-ui-sparkbar-DhIo1qsW.js +398 -0
  156. package/dist/{vue-ui-sparkgauge-DDNNBIdf.js → vue-ui-sparkgauge-D0Fo3Hts.js} +79 -74
  157. package/dist/vue-ui-sparkhistogram-CUjFiuAh.js +576 -0
  158. package/dist/{vue-ui-sparkline-BNxdO-Bx.js → vue-ui-sparkline-ApivEMBP.js} +397 -384
  159. package/dist/{vue-ui-sparkstackbar-BfF5-Wg2.js → vue-ui-sparkstackbar-DsKQJx_n.js} +207 -195
  160. package/dist/{vue-ui-stackbar-B-2Me3d-.js → vue-ui-stackbar-Ds4hXATH.js} +595 -588
  161. package/dist/vue-ui-stackline-DJbcVvmN.js +2425 -0
  162. package/dist/vue-ui-strip-plot-C3ZHf4bD.js +1736 -0
  163. package/dist/{vue-ui-table-heatmap-D-Qrm3oX.js → vue-ui-table-heatmap-CNXNXXBU.js} +14 -14
  164. package/dist/vue-ui-table-sparkline-B9JJ4pFF.js +712 -0
  165. package/dist/{vue-ui-table-Dr1dK3d_.js → vue-ui-table-uudidrYt.js} +62 -62
  166. package/dist/vue-ui-thermometer-Bvw3oQb3.js +770 -0
  167. package/dist/{vue-ui-timer-B5bkNNHS.js → vue-ui-timer-5NAWw5BN.js} +94 -89
  168. package/dist/{vue-ui-tiremarks-Bn8b-ZSz.js → vue-ui-tiremarks-Caz_g1c5.js} +13 -13
  169. package/dist/vue-ui-treemap-F9upPyOI.js +1718 -0
  170. package/dist/vue-ui-waffle-Bk9AsrPp.js +1368 -0
  171. package/dist/{vue-ui-wheel-CeVwXtEX.js → vue-ui-wheel-DD6Q39BA.js} +130 -130
  172. package/dist/{vue-ui-word-cloud-D81-qJLw.js → vue-ui-word-cloud-BZLT5svo.js} +27 -27
  173. package/dist/vue-ui-world-DbEJN5NA.js +3027 -0
  174. package/dist/{vue-ui-xy-C2p9H2IX.js → vue-ui-xy-BYMAITk_.js} +1655 -1629
  175. package/dist/{vue-ui-xy-OhwS0kcZ.js → vue-ui-xy-Cn9Q8YPr.js} +116 -116
  176. package/dist/{vue-ui-xy-canvas-DLKDdH35.js → vue-ui-xy-canvas-Dcm2ftwm.js} +58 -58
  177. package/package.json +1 -1
  178. package/dist/BaseIcon-_-BX7be3.js +0 -502
  179. package/dist/exposedLib-Be0ifkti.js +0 -19
  180. package/dist/vue-ui-3d-bar-CjNuWXoA.js +0 -1757
  181. package/dist/vue-ui-age-pyramid-CC7Dxli-.js +0 -1238
  182. package/dist/vue-ui-bullet-Dde6FhbR.js +0 -710
  183. package/dist/vue-ui-bump-C5pni1JV.js +0 -1249
  184. package/dist/vue-ui-candlestick-Ctw65O4_.js +0 -1829
  185. package/dist/vue-ui-carousel-table-BEUvhUH0.js +0 -455
  186. package/dist/vue-ui-chord-5eCWG4br.js +0 -1391
  187. package/dist/vue-ui-funnel-BEZUEuuh.js +0 -777
  188. package/dist/vue-ui-gauge-B1ljgfE1.js +0 -920
  189. package/dist/vue-ui-horizontal-bar-CTW6l4n3.js +0 -1683
  190. package/dist/vue-ui-molecule-aD0SMTiX.js +0 -925
  191. package/dist/vue-ui-nested-donuts--BCPWkl7.js +0 -1487
  192. package/dist/vue-ui-onion-s4iMCGAP.js +0 -1200
  193. package/dist/vue-ui-parallel-coordinate-plot-CfgvpyoC.js +0 -1416
  194. package/dist/vue-ui-quick-chart-D1OWBgQJ.js +0 -2469
  195. package/dist/vue-ui-rings-CcdUSXGG.js +0 -1246
  196. package/dist/vue-ui-scatter-CixnqLoi.js +0 -2413
  197. package/dist/vue-ui-spark-trend-DfZeLiWA.js +0 -438
  198. package/dist/vue-ui-sparkbar-Cl1e49sw.js +0 -393
  199. package/dist/vue-ui-sparkhistogram-ny_liYa6.js +0 -560
  200. package/dist/vue-ui-stackline-CdvVPQUM.js +0 -2419
  201. package/dist/vue-ui-strip-plot-CRXPXA5V.js +0 -1729
  202. package/dist/vue-ui-table-sparkline-C31Q32My.js +0 -712
  203. package/dist/vue-ui-thermometer-BUrtIfuo.js +0 -763
  204. package/dist/vue-ui-treemap-LMWiicop.js +0 -1713
  205. package/dist/vue-ui-waffle-B_L3gkky.js +0 -1362
  206. package/dist/vue-ui-world-B7npRmTa.js +0 -14264
@@ -1,1729 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { Gt as t, H as n, Jt as r, K as i, Ot as a, Q as o, S as s, Tt as c, Ut as ee, W as l, Wt as te, X as ne, at as re, b as ie, h as ae, i as oe, jt as u, q as se, t as ce, ut as le, v as ue, vt as de, w as fe, y as d } from "./lib-EAmk-PgA.js";
3
- import { t as pe } from "./useConfig-DYM3f6EI.js";
4
- import { t as me } from "./usePrinter-DnGzpp6Q.js";
5
- import { n as he, t as ge } from "./BaseScanner-DZvpgOjM.js";
6
- import { t as _e } from "./useSvgExport-SVIsDot8.js";
7
- import { t as ve } from "./useNestedProp-D8XqxgOU.js";
8
- import { t as ye } from "./useThemeCheck-C43Tcqmk.js";
9
- import { t as be } from "./useTimeLabelCollider-AEcY4Ioe.js";
10
- import { t as xe } from "./img-B_abIg0o.js";
11
- import { n as Se } from "./Title-PiTKr6sp.js";
12
- import { t as Ce } from "./Shape-CiQIxyyT.js";
13
- import { t as we } from "./_plugin-vue_export-helper-B3ysoDQm.js";
14
- import { c as Te } from "./canvas-lib-BOP_HS11.js";
15
- import { t as Ee } from "./useResponsive-BfnK0KxU.js";
16
- import { t as De } from "./A11yDataTable-DdRsVULz.js";
17
- import { t as Oe } from "./useUserOptionState-DK-_1ddE.js";
18
- import { t as ke } from "./useChartAccessibility-DYqac8yF.js";
19
- import { t as Ae } from "./vue_ui_strip_plot-BaHbnnwN.js";
20
- import { Fragment as f, computed as p, createBlock as m, createCommentVNode as h, createElementBlock as g, createElementVNode as _, createSlots as je, createTextVNode as Me, createVNode as Ne, defineAsyncComponent as v, guardReactiveProps as y, mergeProps as Pe, nextTick as Fe, normalizeClass as Ie, normalizeProps as b, normalizeStyle as x, onBeforeUnmount as Le, onMounted as Re, openBlock as S, ref as C, renderList as w, renderSlot as T, resolveDynamicComponent as ze, shallowRef as Be, toDisplayString as E, toRefs as Ve, unref as D, watch as He, watchEffect as Ue, withCtx as O } from "vue";
21
- //#region src/components/vue-ui-strip-plot.vue
22
- var We = /* @__PURE__ */ e({ default: () => Et }), Ge = ["id"], Ke = ["id"], qe = { style: { position: "relative" } }, Je = [
23
- "xmlns",
24
- "viewBox",
25
- "aria-describedby"
26
- ], Ye = [
27
- "x",
28
- "y",
29
- "width",
30
- "height"
31
- ], Xe = { key: 1 }, Ze = { key: 0 }, Qe = [
32
- "x1",
33
- "x2",
34
- "y1",
35
- "y2",
36
- "stroke",
37
- "stroke-width",
38
- "stroke-dasharray"
39
- ], $e = { key: 1 }, et = [
40
- "x1",
41
- "x2",
42
- "y1",
43
- "y2",
44
- "stroke",
45
- "stroke-width",
46
- "stroke-dasharray"
47
- ], tt = [
48
- "x1",
49
- "x2",
50
- "y1",
51
- "y2",
52
- "stroke",
53
- "stroke-width"
54
- ], nt = [
55
- "x1",
56
- "x2",
57
- "y1",
58
- "y2",
59
- "stroke",
60
- "stroke-width"
61
- ], rt = [
62
- "x",
63
- "y",
64
- "fill",
65
- "font-size"
66
- ], it = [
67
- "transform",
68
- "font-size",
69
- "fill",
70
- "text-anchor"
71
- ], at = [
72
- "transform",
73
- "font-size",
74
- "fill",
75
- "text-anchor",
76
- "innerHTML"
77
- ], ot = [
78
- "fill",
79
- "font-size",
80
- "transform"
81
- ], st = [
82
- "fill",
83
- "font-size",
84
- "x",
85
- "y"
86
- ], ct = [
87
- "x1",
88
- "x2",
89
- "y1",
90
- "y2",
91
- "stroke"
92
- ], lt = [
93
- "cx",
94
- "cy",
95
- "fill"
96
- ], ut = [
97
- "cx",
98
- "cy",
99
- "fill"
100
- ], dt = ["id"], ft = ["stop-color"], pt = ["stop-color"], mt = ["stop-color"], ht = [
101
- "d",
102
- "fill",
103
- "stroke",
104
- "fill-opacity",
105
- "stroke-opacity",
106
- "stroke-width",
107
- "onMouseenter"
108
- ], gt = [
109
- "x1",
110
- "x2",
111
- "y1",
112
- "y2",
113
- "stroke",
114
- "stroke-opacity",
115
- "stroke-width"
116
- ], _t = ["onMouseenter"], vt = [
117
- "x1",
118
- "x2",
119
- "y1",
120
- "y2",
121
- "stroke",
122
- "stroke-width"
123
- ], yt = [
124
- "x",
125
- "y",
126
- "width",
127
- "height",
128
- "fill",
129
- "stroke",
130
- "stroke-width",
131
- "rx"
132
- ], bt = [
133
- "cx",
134
- "cy",
135
- "r",
136
- "fill",
137
- "stroke"
138
- ], xt = { key: 1 }, St = [
139
- "x",
140
- "y",
141
- "font-size",
142
- "fill"
143
- ], Ct = {
144
- key: 0,
145
- style: {
146
- position: "absolute",
147
- top: "100%",
148
- left: "0",
149
- width: "100%"
150
- },
151
- "data-dom-to-png-ignore": "",
152
- "aria-hidden": "true"
153
- }, wt = {
154
- key: 5,
155
- class: "vue-data-ui-watermark"
156
- }, Tt = ["innerHTML"], Et = /*#__PURE__*/ we({
157
- __name: "vue-ui-strip-plot",
158
- props: {
159
- config: {
160
- type: Object,
161
- default() {
162
- return {};
163
- }
164
- },
165
- dataset: {
166
- type: Array,
167
- default() {
168
- return [];
169
- }
170
- }
171
- },
172
- emits: ["selectDatapoint", "copyAlt"],
173
- setup(e, { expose: we, emit: We }) {
174
- let Et = v(() => import("./Tooltip-B8yYfISA.js")), Dt = v(() => import("./BaseIcon-_-BX7be3.js").then((e) => e.n)), Ot = v(() => import("./vue-ui-accordion-Dzz8XhX3.js").then((e) => e.n)), kt = v(() => import("./DataTable-CVF7DoZn.js")), At = v(() => import("./UserOptions-BL9VlHop.js").then((e) => e.n)), jt = v(() => import("./PenAndPaper-gaV1QPpP.js").then((e) => e.t)), Mt = v(() => import("./PackageVersion-Dse0n05o.js").then((e) => e.t)), Nt = v(() => import("./BaseDraggableDialog-1wwwdwV2.js").then((e) => e.n)), Pt = [
175
- "classic",
176
- "scatter",
177
- "violin"
178
- ], { vue_ui_strip_plot: Ft } = pe(), { isThemeValid: It, warnInvalidTheme: Lt } = ye(), k = e, Rt = We, zt = p({
179
- get() {
180
- return !!k.dataset && k.dataset.length;
181
- },
182
- set(e) {
183
- return e;
184
- }
185
- }), A = C(l()), Bt = C(0), j = C(!1), Vt = C(""), M = C(null), Ht = C(null), Ut = C(null), Wt = C(null), Gt = C(!1), Kt = C(0), qt = C(0), Jt = C(null), Yt = C(null), Xt = C(!1), Zt = C(!1), Qt = C(null), $t = C(null), en = C(null), tn = C(null), nn = C(null), rn = C(null), N = C("pointer"), an = C({
186
- x: 0,
187
- y: 0
188
- }), on = C(!1), P = C(hn()), sn = p(() => gn(P.value.type)), F = p(() => P.value.userOptions.useCursorPointer), cn = p(() => t({
189
- defaultConfig: {
190
- userOptions: { show: !1 },
191
- table: { show: !1 },
192
- style: { chart: {
193
- backgroundColor: "#99999930",
194
- padding: {
195
- top: 24,
196
- left: 24,
197
- right: 24,
198
- bottom: 24
199
- },
200
- grid: {
201
- stroke: "#6A6A6A",
202
- horizontalGrid: { stroke: "#6A6A6A" },
203
- verticalGrid: { stroke: "#6A6A6A" }
204
- },
205
- plots: { stroke: "#6A6A6A" },
206
- labels: {
207
- bestPlotLabel: { show: !1 },
208
- axis: {
209
- xLabel: "",
210
- yLabel: ""
211
- },
212
- xAxisLabels: { show: !1 },
213
- yAxisLabels: { show: !1 }
214
- }
215
- } }
216
- },
217
- userConfig: P.value.skeletonConfig ?? {}
218
- })), { loading: ln, FINAL_DATASET: un, manualLoading: dn } = he({
219
- ...Ve(k),
220
- FINAL_CONFIG: P,
221
- prepareConfig: hn,
222
- skeletonDataset: k.config?.skeletonDataset ?? [
223
- {
224
- name: "_",
225
- color: "#DBDBDB",
226
- plots: [
227
- {
228
- name: "_",
229
- value: 1
230
- },
231
- {
232
- name: "_",
233
- value: 2
234
- },
235
- {
236
- name: "_",
237
- value: 3
238
- }
239
- ]
240
- },
241
- {
242
- name: "_",
243
- color: "#C4C4C4",
244
- plots: [
245
- {
246
- name: "_",
247
- value: 3
248
- },
249
- {
250
- name: "_",
251
- value: 5
252
- },
253
- {
254
- name: "_",
255
- value: 8
256
- }
257
- ]
258
- },
259
- {
260
- name: "_",
261
- color: "#ADADAD",
262
- plots: [
263
- {
264
- name: "_",
265
- value: 8
266
- },
267
- {
268
- name: "_",
269
- value: 13
270
- },
271
- {
272
- name: "_",
273
- value: 21
274
- }
275
- ]
276
- },
277
- {
278
- name: "_",
279
- color: "#969696",
280
- plots: [
281
- {
282
- name: "_",
283
- value: 21
284
- },
285
- {
286
- name: "_",
287
- value: 34
288
- },
289
- {
290
- name: "_",
291
- value: 55
292
- }
293
- ]
294
- },
295
- {
296
- name: "_",
297
- color: "#808080",
298
- plots: [
299
- {
300
- name: "_",
301
- value: 55
302
- },
303
- {
304
- name: "_",
305
- value: 89
306
- },
307
- {
308
- name: "_",
309
- value: 144
310
- }
311
- ]
312
- }
313
- ],
314
- skeletonConfig: t({
315
- defaultConfig: P.value,
316
- userConfig: cn.value
317
- })
318
- }), { userOptionsVisible: fn, setUserOptionsVisibility: pn, keepUserOptionState: mn } = Oe({ config: P.value }), { svgRef: I } = ke({ config: P.value.style.chart.title });
319
- function hn() {
320
- let e = ve({
321
- userConfig: k.config,
322
- defaultConfig: Ft
323
- }), t = e.theme;
324
- if (!t) return e;
325
- if (!It.value(e)) return Lt(e), e;
326
- let n = ve({
327
- userConfig: Ae[t] || k.config,
328
- defaultConfig: e
329
- }), r = ve({
330
- userConfig: k.config,
331
- defaultConfig: n
332
- });
333
- return {
334
- ...r,
335
- customPalette: r.customPalette.length ? r.customPalette : ee[t] || u
336
- };
337
- }
338
- function gn(e) {
339
- return Pt.includes(e) ? e : "classic";
340
- }
341
- He(() => k.config, async (e) => {
342
- ln.value || (P.value = hn()), fn.value = !P.value.userOptions.showOnChartHover, vn(), Kt.value += 1, qt.value += 1, V.value.dataLabels.show = P.value.style.chart.labels.bestPlotLabel.show, V.value.showTable = P.value.table.show, V.value.showTooltip = P.value.style.chart.tooltip.show, z.value = P.value.style.chart.width, B.value = P.value.style.chart.height, On.value = P.value.style.chart.plots.radius;
343
- }, { deep: !0 }), He(() => k.dataset, (e) => {
344
- Array.isArray(e) && e.length > 0 && (dn.value = !1);
345
- }, { deep: !0 });
346
- let L = Be(null), R = Be(null);
347
- Re(() => {
348
- vn();
349
- });
350
- let _n = p(() => !!P.value.debug);
351
- function vn() {
352
- if (a(k.dataset) ? (o({
353
- componentName: "VueUiStripPlot",
354
- type: "dataset",
355
- debug: _n.value
356
- }), dn.value = !0) : k.dataset.forEach((e, t) => {
357
- le({
358
- datasetObject: e,
359
- requiredAttributes: ["name", "plots"]
360
- }).forEach((e) => {
361
- zt.value = !1, o({
362
- componentName: "VueUiStripPlot",
363
- type: "datasetSerieAttribute",
364
- property: e,
365
- index: t,
366
- debug: _n.value
367
- });
368
- }), e.plots && e.plots.forEach((e, n) => {
369
- le({
370
- datasetObject: e,
371
- requiredAttributes: ["name", "value"]
372
- }).forEach((e) => {
373
- zt.value = !1, o({
374
- componentName: "VueUiStripPlot",
375
- type: "datasetSerieAttribute",
376
- property: e,
377
- index: `${t},${n}`,
378
- debug: _n.value
379
- });
380
- });
381
- });
382
- }), a(k.dataset) || (dn.value = P.value.loading), P.value.responsive) {
383
- let e = Te(() => {
384
- let { width: e, height: t } = Ee({
385
- chart: M.value,
386
- title: P.value.style.chart.title.text ? Ht.value : null,
387
- source: Ut.value,
388
- noTitle: Wt.value
389
- });
390
- requestAnimationFrame(() => {
391
- Dn.value = t, z.value = Math.max(.1, e), B.value = Math.max(.1, t - 12), P.value.responsiveProportionalSizing ? On.value = te({
392
- relator: Math.min(t, e),
393
- adjuster: 600,
394
- source: P.value.style.chart.plots.radius,
395
- threshold: 6,
396
- fallback: 6
397
- }) : On.value = P.value.style.chart.plots.radius;
398
- });
399
- });
400
- L.value && (R.value && L.value.unobserve(R.value), L.value.disconnect()), L.value = new ResizeObserver(e), R.value = M.value.parentNode, L.value.observe(R.value);
401
- }
402
- Gt.value = !0, setTimeout(() => {
403
- Tn.value = !1;
404
- }, Fn.value * 50);
405
- }
406
- Le(() => {
407
- L.value && (R.value && L.value.unobserve(R.value), L.value.disconnect());
408
- });
409
- let { isPrinting: yn, isImaging: bn, generatePdf: xn, generateImage: Sn } = me({
410
- elementId: `strip-plot_${A.value}`,
411
- fileName: P.value.style.chart.title.text || "vue-ui-strip-plot",
412
- options: P.value.userOptions.print
413
- }), Cn = p(() => P.value.userOptions.show && !P.value.style.chart.title.text), wn = p(() => s(P.value.customPalette)), Tn = C(P.value.useCssAnimation), En = C({
414
- top: P.value.style.chart.padding.top,
415
- bottom: P.value.style.chart.padding.bottom,
416
- left: P.value.style.chart.padding.left,
417
- right: P.value.style.chart.padding.right
418
- }), z = C(P.value.style.chart.width), B = C(P.value.style.chart.height), Dn = C(P.value.style.chart.height), On = C(P.value.style.chart.plots.radius), V = C({
419
- showTable: P.value.table.show,
420
- dataLabels: { show: P.value.style.chart.labels.bestPlotLabel.show },
421
- showTooltip: P.value.style.chart.tooltip.show
422
- });
423
- He(P, () => {
424
- V.value = {
425
- showTable: P.value.table.show,
426
- dataLabels: { show: P.value.style.chart.labels.bestPlotLabel.show },
427
- showTooltip: P.value.style.chart.tooltip.show
428
- }, z.value = P.value.style.chart.width, B.value = P.value.style.chart.height, On.value = P.value.style.chart.plots.radius;
429
- }, { immediate: !0 });
430
- let H = p(() => Math.min(On.value, W.value.stripWidth / 2 * .9));
431
- function U(e) {
432
- return Number.isFinite(e) ? Number(e.toFixed(2)) : 0;
433
- }
434
- function kn() {
435
- return Math.max(0, (W.value.stripWidth / 2 - H.value * 1.8) * .86) * Math.min(1, P.value.style.chart.violin.widthRatio);
436
- }
437
- function An() {
438
- let e = 0;
439
- tn.value && (e = Array.from(tn.value.querySelectorAll("text")).reduce((e, t) => {
440
- let n = t.getComputedTextLength();
441
- return n > e ? n : e;
442
- }, 0));
443
- let t = $t.value ? $t.value.getBoundingClientRect().width : 0;
444
- return e + t + (t ? 24 : 0);
445
- }
446
- let jn = C(0), Mn = Te((e) => {
447
- jn.value = e;
448
- }, 100);
449
- Ue((e) => {
450
- let t = en.value;
451
- if (!t) return;
452
- let n = new ResizeObserver((e) => {
453
- Mn(e[0].contentRect.height);
454
- });
455
- n.observe(t), e(() => n.disconnect());
456
- }), Le(() => {
457
- jn.value = 0;
458
- });
459
- let Nn = p(() => {
460
- let e = 0;
461
- Qt.value && (e = Qt.value.getBBox().height + P.value.style.chart.labels.axis.fontSize / 3 + 12 + P.value.style.chart.labels.axis.xLabelOffsetY);
462
- let t = 0;
463
- return en.value && (t = jn.value + 12), e + t;
464
- }), W = p(() => {
465
- let e = An(), t = En.value.left + e + P.value.style.chart.labels.axis.yLabelOffsetX + 5, n = z.value - En.value.right, r = Math.max(0, n - t), i = En.value.top + P.value.style.chart.plots.radius + P.value.style.chart.labels.bestPlotLabel.fontSize, a = B.value - En.value.bottom - Nn.value, o = Math.max(0, a - i), s = Array.isArray(un.value) ? un.value.length : 0;
466
- return {
467
- left: t,
468
- right: n,
469
- top: i,
470
- bottom: a,
471
- width: r,
472
- height: o,
473
- stripWidth: s > 0 ? r / s : 0,
474
- absoluteHeight: B.value
475
- };
476
- });
477
- function Pn(e) {
478
- return W.value.left + (e + 1) * W.value.stripWidth - W.value.stripWidth / 2;
479
- }
480
- let G = p(() => un.value.map((e, t) => {
481
- let n = l();
482
- return {
483
- ...e,
484
- id: n,
485
- color: e.color ? ie(e.color) : wn.value[t] || u[t] || u[t % u.length],
486
- plots: e.plots.map((r, i) => ({
487
- ...r,
488
- value: ue(r.value),
489
- parentId: n,
490
- parentName: e.name,
491
- parentIndex: t,
492
- plotIndex: i,
493
- color: e.color ? ie(e.color) : wn.value[t] || u[t] || u[t % u.length],
494
- id: l()
495
- })).sort((e, t) => e.value - t.value)
496
- };
497
- })), K = p(() => (G.value || []).map((e, t) => ({
498
- ...e,
499
- plots: e.plots.map((e) => ({
500
- ...e,
501
- x: Pn(t)
502
- }))
503
- }))), Fn = p(() => Math.max(...K.value.map((e) => e.plots.length))), In = p(() => {
504
- let e = K.value.flatMap((e) => e.plots.map((e) => e.value));
505
- return {
506
- max: Math.max(...e),
507
- min: Math.min(...e)
508
- };
509
- }), q = p(() => ae(In.value.min < 0 ? In.value.min : 0, In.value.max, P.value.style.chart.grid.scaleSteps)), J = p(() => (K.value || []).map((e, t) => {
510
- let n = e.plots.map((e) => ({
511
- ...e,
512
- y: W.value.bottom - (e.value + Math.abs(q.value.min)) / (q.value.max + Math.abs(q.value.min)) * W.value.height
513
- })), r = sn.value === "classic" ? n.map(() => 0) : Vn(n);
514
- return {
515
- ...e,
516
- plots: n.map((e, t) => ({
517
- ...e,
518
- x: e.x + r[t]
519
- }))
520
- };
521
- })), Y = p(() => sn.value === "violin" && !!P.value.style.chart.violin?.boxPlot?.show);
522
- function Ln(e, t) {
523
- if (!e.length) return 0;
524
- if (e.length === 1) return e[0];
525
- let n = (e.length - 1) * t, r = Math.floor(n), i = n - r, a = e[r + 1];
526
- return a === void 0 ? e[r] : e[r] + i * (a - e[r]);
527
- }
528
- function Rn(e) {
529
- let t = q.value.max + Math.abs(q.value.min);
530
- return t ? W.value.bottom - (e + Math.abs(q.value.min)) / t * W.value.height : W.value.bottom;
531
- }
532
- let zn = p(() => Y.value ? J.value.map((e, t) => {
533
- let n = e.plots.map((e) => e.value).sort((e, t) => e - t), r = Ln(n, .25), i = Ln(n, .5), a = Ln(n, .75), o = a - r, s = r - o * 1.5, c = a + o * 1.5, ee = n.find((e) => e >= s), l = n.slice().reverse().find((e) => e <= c), te = Pn(t), ne = Math.max(H.value * 2.8, Math.min(kn() * .32, W.value.stripWidth * .12)) * Math.min(1.5, P.value.style.chart.violin.boxPlot.widthRatio);
534
- return {
535
- id: e.id,
536
- boxPlotColor: P.value.style.chart.violin.boxPlot.useSerieColor ? e.color : P.value.style.chart.violin.boxPlot.color,
537
- color: e.color,
538
- name: e.name,
539
- count: n.length,
540
- lowerAdjacent: ee ?? n[0],
541
- q1: r,
542
- median: i,
543
- q3: a,
544
- upperAdjacent: l ?? n[n.length - 1],
545
- iqr: o,
546
- lowerFence: s,
547
- upperFence: c,
548
- centerX: te,
549
- boxLeft: te - ne / 2,
550
- boxWidth: ne,
551
- q1Y: Rn(r),
552
- medianY: Rn(i),
553
- q3Y: Rn(a),
554
- lowerY: Rn(ee ?? n[0]),
555
- upperY: Rn(l ?? n[n.length - 1])
556
- };
557
- }) : []), Bn = p(() => [
558
- P.value.table.columnNames.series,
559
- P.value.style.chart.violin.tooltipLabels.lowerAdjacent,
560
- P.value.style.chart.violin.tooltipLabels.q1,
561
- P.value.style.chart.violin.tooltipLabels.median,
562
- P.value.style.chart.violin.tooltipLabels.q3,
563
- P.value.style.chart.violin.tooltipLabels.upperAdjacent,
564
- P.value.style.chart.violin.tooltipLabels.iqr,
565
- P.value.style.chart.violin.tooltipLabels.count
566
- ]);
567
- function X(e) {
568
- return se({
569
- p: P.value.style.chart.labels.prefix,
570
- v: e,
571
- s: P.value.style.chart.labels.suffix,
572
- r: P.value.table.td.roundingValue
573
- });
574
- }
575
- function Vn(e) {
576
- let t = sn.value === "violin" ? Math.max(0, kn() - H.value * 1.15) : Math.max(0, W.value.stripWidth / 2 - H.value * 1.5);
577
- if (!e.length || !t) return e.map(() => 0);
578
- let n = e.map(() => 0), r = H.value * 2.1, i = Math.min(t, r), a = [0];
579
- for (let e = i; e <= t + i / 2; e += i) a.push(-Math.min(e, t)), a.push(Math.min(e, t));
580
- let o = [];
581
- return e.forEach((e, t) => {
582
- let i = a.find((t) => o.every((n) => {
583
- let i = t - n.offset, a = e.y - n.y;
584
- return Math.hypot(i, a) >= r;
585
- })) ?? 0;
586
- n[t] = i, o.push({
587
- y: e.y,
588
- offset: i
589
- });
590
- }), n;
591
- }
592
- let Hn = p(() => sn.value === "violin" ? J.value.map((e, t) => ({
593
- id: e.id,
594
- color: P.value.style.chart.violin.useSerieColor ? e.color : P.value.style.chart.violin.stroke,
595
- fill: P.value.style.chart.violin.useSerieColor ? e.color : P.value.style.chart.violin.fill,
596
- path: Un(e.plots, t),
597
- connectors: Wn(e.plots, t)
598
- })) : []);
599
- function Un(e, t) {
600
- let n = kn();
601
- if (!e.length || !W.value.height || !n) return "";
602
- let r = Pn(t), i = e.map((e) => e.y), a = Z(i), o = Kn({
603
- yValues: i,
604
- bandwidth: a
605
- });
606
- return o.length > 1 ? o.map((e) => Jn({
607
- yValues: e,
608
- centerX: r,
609
- maxWidth: Gn({
610
- clusterLength: e.length,
611
- totalLength: i.length,
612
- maxWidth: n
613
- }),
614
- bandwidth: Z(e)
615
- })).join(" ") : Jn({
616
- yValues: i,
617
- centerX: r,
618
- maxWidth: n,
619
- bandwidth: a
620
- });
621
- }
622
- function Wn(e, t) {
623
- if (!e.length) return [];
624
- let n = Pn(t), r = e.map((e) => e.y), i = Kn({
625
- yValues: r,
626
- bandwidth: Z(r)
627
- });
628
- return i.length < 2 ? [] : i.slice(1).map((e, t) => {
629
- let r = i[t], a = Z(r), o = Z(e), s = d(Math.max(...r) + a * 2.35, W.value.top, W.value.bottom), c = d(Math.min(...e) - o * 2.35, W.value.top, W.value.bottom);
630
- return {
631
- x: U(n),
632
- y1: U(s),
633
- y2: U(c)
634
- };
635
- });
636
- }
637
- function Gn({ clusterLength: e, totalLength: t, maxWidth: n }) {
638
- let r = (e / t) ** .6, i = e <= 2 ? .72 : 1;
639
- return Math.max(H.value * 2.2, n * d(r * i, .18, 1));
640
- }
641
- function Z(e) {
642
- let t = e.reduce((e, t) => e + t, 0) / Math.max(1, e.length), n = e.reduce((e, n) => e + (n - t) ** 2, 0) / Math.max(1, e.length), r = Math.sqrt(n), i = e.length < 2 ? Math.max(H.value * 2.6, W.value.height / 48) : H.value * 2.1;
643
- return d(1.06 * r * e.length ** -.2, i, W.value.height / 5);
644
- }
645
- function Kn({ yValues: e, bandwidth: t }) {
646
- if (e.length < 2) return [e];
647
- let n = [...e].sort((e, t) => e - t), r = Math.max(t * 1.45, H.value * 5), i = [], a = [n[0]];
648
- for (let e = 1; e < n.length; e += 1) Math.abs(n[e] - n[e - 1]) > r ? (i.push(a), a = [n[e]]) : a.push(n[e]);
649
- return i.push(a), qn(i);
650
- }
651
- function qn(e) {
652
- return e.reduce((e, t) => {
653
- let n = e[e.length - 1];
654
- if (!n) return e.push(t), e;
655
- let r = Z(n), i = Z(t);
656
- return Math.max(...n) + r * 2.35 >= Math.min(...t) - i * 2.35 ? n.push(...t) : e.push(t), e;
657
- }, []);
658
- }
659
- function Jn({ yValues: e, centerX: t, maxWidth: n, bandwidth: r }) {
660
- let i = d(Math.min(...e) - r * 2.35, W.value.top, W.value.bottom), a = d(Math.max(...e) + r * 2.35, W.value.top, W.value.bottom), o = Math.max(48, Math.min(120, Math.round((a - i) / Math.max(1, r / 4)))), s = Array.from({ length: o }, (t, n) => {
661
- let s = i + (a - i) * n / Math.max(1, o - 1);
662
- return {
663
- y: s,
664
- density: e.reduce((e, t) => {
665
- let n = (s - t) / r;
666
- return e + Math.exp(-.5 * n * n);
667
- }, 0)
668
- };
669
- }), c = Math.max(...s.map((e) => e.density));
670
- if (!c) return "";
671
- let ee = s.map((e, t) => {
672
- let r = t === 0 || t === s.length - 1 ? 0 : e.density / c * n;
673
- return {
674
- y: U(e.y),
675
- width: U(r)
676
- };
677
- }), l = ee.map((e) => ({
678
- x: U(t - e.width),
679
- y: e.y
680
- })), te = ee.slice(0, -1).reverse().map((e) => ({
681
- x: U(t + e.width),
682
- y: e.y
683
- }));
684
- return `${Yn([...l, ...te])} Z`;
685
- }
686
- function Yn(e) {
687
- if (!e.length) return "";
688
- if (e.length === 1) return `M ${e[0].x} ${e[0].y}`;
689
- let t = `M ${e[0].x} ${e[0].y}`;
690
- for (let n = 1; n < e.length - 1; n += 1) {
691
- let r = e[n], i = e[n + 1], a = U((r.x + i.x) / 2), o = U((r.y + i.y) / 2);
692
- t += ` Q ${r.x} ${r.y} ${a} ${o}`;
693
- }
694
- let n = e[e.length - 1];
695
- return `${t} L ${n.x} ${n.y}`;
696
- }
697
- let Xn = p(() => q.value.ticks.map((e) => ({
698
- y: W.value.bottom - W.value.height * ((e + Math.abs(q.value.min)) / (q.value.max + Math.abs(q.value.min))),
699
- x1: W.value.left,
700
- x2: W.value.right,
701
- value: e
702
- }))), Zn = C(null), Q = C(null);
703
- function Qn({ datapoint: e, seriesIndex: t }) {
704
- N.value !== "keyboard" && (j.value = !1, Q.value = null, P.value.events.datapointLeave && P.value.events.datapointLeave({
705
- datapoint: e,
706
- seriesIndex: t
707
- }));
708
- }
709
- function $n({ datapoint: e, seriesIndex: t }) {
710
- Rt("selectDatapoint", e), P.value.events.datapointClick && P.value.events.datapointClick({
711
- datapoint: e,
712
- seriesIndex: t
713
- });
714
- }
715
- function er(e, t = {}) {
716
- return oe(P.value.style.chart.labels.formatter, e, se({
717
- p: P.value.style.chart.labels.prefix,
718
- v: e,
719
- s: P.value.style.chart.labels.suffix,
720
- r: P.value.style.chart.tooltip.roundingValue
721
- }), t);
722
- }
723
- function tr({ datapoint: e, seriesIndex: t, triggerMode: n = "pointer" }) {
724
- P.value.events.datapointEnter && P.value.events.datapointEnter({
725
- datapoint: e,
726
- seriesIndex: t
727
- }), N.value = n, Zn.value = {
728
- datapoint: e,
729
- seriesIndex: t,
730
- config: P.value,
731
- series: G.value
732
- }, j.value = !0, Q.value = e;
733
- let r = P.value.style.chart.tooltip.customFormat;
734
- if (de(r) && re(() => r({
735
- seriesIndex: t,
736
- datapoint: e,
737
- series: G.value,
738
- config: P.value
739
- }))) Vt.value = r({
740
- seriesIndex: t,
741
- datapoint: e,
742
- series: G.value,
743
- config: P.value
744
- });
745
- else {
746
- let n = "";
747
- n += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${P.value.style.chart.plots.gradient.show ? `url(#${e.parentId})` : e.color}"/></svg>${e.name}</div>`, n += `<div>${er(e.value, {
748
- datapoint: e,
749
- seriesIndex: t
750
- })}</div>`, Vt.value = `<div>${n}</div>`;
751
- }
752
- }
753
- function nr() {
754
- N.value !== "keyboard" && (j.value = !1, Q.value = null);
755
- }
756
- function rr({ boxPlot: e, seriesIndex: t, triggerMode: n = "pointer" }) {
757
- N.value = n, Q.value = null, j.value = !0, Zn.value = {
758
- boxPlot: e,
759
- seriesIndex: t,
760
- config: P.value,
761
- series: G.value
762
- };
763
- let r = P.value.style.chart.tooltip.customFormat;
764
- if (de(r)) try {
765
- let n = {
766
- boxPlot: e,
767
- seriesIndex: t,
768
- series: G.value,
769
- config: P.value
770
- };
771
- if (re(() => r(n))) {
772
- Vt.value = r(n);
773
- return;
774
- }
775
- } catch {}
776
- let i = [
777
- [P.value.style.chart.violin.tooltipLabels.upperAdjacent, e.upperAdjacent],
778
- [P.value.style.chart.violin.tooltipLabels.q3, e.q3],
779
- [P.value.style.chart.violin.tooltipLabels.median, e.median],
780
- [P.value.style.chart.violin.tooltipLabels.q1, e.q1],
781
- [P.value.style.chart.violin.tooltipLabels.lowerAdjacent, e.lowerAdjacent],
782
- [P.value.style.chart.violin.tooltipLabels.iqr, e.iqr]
783
- ], a = `<svg viewBox="0 0 12 12" height="14" width="14"><rect x="1" y="1" width="10" height="10" rx="2" stroke="none" fill="${e.color}"/></svg>`, o = i.map(([n, r]) => `<div style="display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between;"><span>${n}</span><b>${er(r, {
784
- boxPlot: e,
785
- seriesIndex: t
786
- })}</b></div>`).join("");
787
- Vt.value = `<div style="min-width:160px;"><div style="display:flex;flex-direction:row;gap:6px;align-items:center;margin-bottom:6px;">${a}${e.name}</div>` + o + `<div style="display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between;margin-top:6px;"><span>${P.value.style.chart.violin.tooltipLabels.count}</span><b>${e.count}</b></div></div>`;
788
- }
789
- let ir = p(() => ({
790
- head: K.value.flatMap((e) => JSON.parse(JSON.stringify(e.plots)).sort((e, t) => t.value - e.value).map((t) => ({
791
- name: `${e.name} - ${t.name}`,
792
- color: t.color
793
- }))),
794
- body: K.value.flatMap((e) => JSON.parse(JSON.stringify(e.plots)).sort((e, t) => t.value - e.value).map((e) => e.value))
795
- }));
796
- function ar(e = null) {
797
- Fe(() => {
798
- let t = [], n = [P.value.table.columnNames.series, P.value.table.columnNames.value];
799
- Y.value ? (n = Bn.value, t = zn.value.map((e) => [
800
- [e.name],
801
- [e.lowerAdjacent],
802
- [e.q1],
803
- [e.median],
804
- [e.q3],
805
- [e.upperAdjacent],
806
- [e.iqr],
807
- [e.count]
808
- ])) : t = ir.value.head.map((e, t) => [[e.name], [ir.value.body[t]]]);
809
- let r = fe([
810
- [P.value.style.chart.title.text],
811
- [P.value.style.chart.title.subtitle.text],
812
- n.map((e) => [e])
813
- ].concat(t));
814
- e ? e(r) : ne({
815
- csvContent: r,
816
- title: P.value.style.chart.title.text || "vue-ui-strip-plot"
817
- });
818
- });
819
- }
820
- let or = p(() => {
821
- if (Y.value) {
822
- let e = Bn.value;
823
- return {
824
- colNames: e,
825
- head: e,
826
- body: zn.value.map((e) => [
827
- {
828
- color: e.color,
829
- name: e.name
830
- },
831
- X(e.lowerAdjacent),
832
- X(e.q1),
833
- X(e.median),
834
- X(e.q3),
835
- X(e.upperAdjacent),
836
- X(e.iqr),
837
- e.count
838
- ]),
839
- config: {
840
- th: {
841
- backgroundColor: P.value.table.th.backgroundColor,
842
- color: P.value.table.th.color,
843
- outline: P.value.table.th.outline
844
- },
845
- td: {
846
- backgroundColor: P.value.table.td.backgroundColor,
847
- color: P.value.table.td.color,
848
- outline: P.value.table.td.outline
849
- },
850
- breakpoint: P.value.table.responsiveBreakpoint
851
- }
852
- };
853
- }
854
- let e = [P.value.table.columnNames.series, P.value.table.columnNames.value], t = ir.value.head.map((e, t) => {
855
- let n = se({
856
- p: P.value.style.chart.labels.prefix,
857
- v: ir.value.body[t],
858
- s: P.value.style.chart.labels.suffix,
859
- r: P.value.table.td.roundingValue
860
- });
861
- return [{
862
- color: e.color,
863
- name: e.name
864
- }, n];
865
- }), n = {
866
- th: {
867
- backgroundColor: P.value.table.th.backgroundColor,
868
- color: P.value.table.th.color,
869
- outline: P.value.table.th.outline
870
- },
871
- td: {
872
- backgroundColor: P.value.table.td.backgroundColor,
873
- color: P.value.table.td.color,
874
- outline: P.value.table.td.outline
875
- },
876
- breakpoint: P.value.table.responsiveBreakpoint
877
- };
878
- return {
879
- colNames: [P.value.table.columnNames.series, P.value.table.columnNames.value],
880
- head: e,
881
- body: t,
882
- config: n
883
- };
884
- }), $ = C(!1);
885
- function sr(e) {
886
- $.value = e, Bt.value += 1;
887
- }
888
- function cr() {
889
- return K.value;
890
- }
891
- function lr() {
892
- V.value.showTable = !V.value.showTable;
893
- }
894
- function ur() {
895
- V.value.dataLabels.show = !V.value.dataLabels.show;
896
- }
897
- function dr() {
898
- V.value.showTooltip = !V.value.showTooltip;
899
- }
900
- let fr = C(!1);
901
- function pr() {
902
- fr.value = !fr.value;
903
- }
904
- async function mr({ scale: e = 2 } = {}) {
905
- if (!M.value) return;
906
- let { width: t, height: n } = M.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await xe({
907
- domElement: M.value,
908
- base64: !0,
909
- img: !0,
910
- scale: e
911
- });
912
- return {
913
- imageUri: i,
914
- base64: a,
915
- title: P.value.style.chart.title.text,
916
- width: t,
917
- height: n,
918
- aspectRatio: r
919
- };
920
- }
921
- let hr = p(() => K.value.map((e) => e.name));
922
- be({
923
- timeLabelsEls: en,
924
- timeLabels: hr,
925
- slicer: C({
926
- start: 0,
927
- end: K.value.length
928
- }),
929
- configRef: P,
930
- rotationPath: [
931
- "style",
932
- "chart",
933
- "labels",
934
- "xAxisLabels",
935
- "rotation"
936
- ],
937
- autoRotatePath: [
938
- "style",
939
- "chart",
940
- "labels",
941
- "xAxisLabels",
942
- "autoRotate",
943
- "enable"
944
- ],
945
- isAutoSize: !1,
946
- width: z,
947
- height: B,
948
- targetClass: ".vue-ui-strip-plot-category-name",
949
- rotation: P.value.style.chart.labels.xAxisLabels.autoRotate.angle
950
- });
951
- let gr = p(() => {
952
- let e = P.value.table.useDialog && !P.value.table.show, t = V.value.showTable;
953
- return {
954
- component: e ? Nt : Ot,
955
- title: `${P.value.style.chart.title.text}${P.value.style.chart.title.subtitle.text ? `: ${P.value.style.chart.title.subtitle.text}` : ""}`,
956
- props: e ? {
957
- backgroundColor: P.value.table.th.backgroundColor,
958
- color: P.value.table.th.color,
959
- headerColor: P.value.table.th.color,
960
- headerBg: P.value.table.th.backgroundColor,
961
- isFullscreen: $.value,
962
- fullscreenParent: M.value,
963
- forcedWidth: Math.min(800, window.innerWidth * .8),
964
- isCursorPointer: F.value
965
- } : {
966
- hideDetails: !0,
967
- config: {
968
- open: t,
969
- maxHeight: 1e4,
970
- body: {
971
- backgroundColor: P.value.style.chart.backgroundColor,
972
- color: P.value.style.chart.color
973
- },
974
- head: {
975
- backgroundColor: P.value.style.chart.backgroundColor,
976
- color: P.value.style.chart.color
977
- }
978
- }
979
- }
980
- };
981
- });
982
- He(() => V.value.showTable, (e) => {
983
- P.value.table.show || (e && P.value.table.useDialog && Jt.value ? Jt.value.open() : "close" in Jt.value && Jt.value.close());
984
- });
985
- function _r() {
986
- V.value.showTable = !1, Yt.value && Yt.value.setTableIconState(!1);
987
- }
988
- let vr = p(() => P.value.style.chart.backgroundColor), { exportSvg: yr, getSvg: br } = _e({
989
- svg: I,
990
- title: p(() => P.value.style.chart.title),
991
- backgroundColor: vr
992
- });
993
- async function xr({ isCb: e }) {
994
- Zt.value = !0, await Fe();
995
- try {
996
- if (e) {
997
- let { blob: e, url: t, text: n, dataUrl: r } = await br();
998
- await Promise.resolve(P.value.userOptions.callbacks.svg({
999
- blob: e,
1000
- url: t,
1001
- text: n,
1002
- dataUrl: r
1003
- }));
1004
- } else await Promise.resolve(yr());
1005
- } finally {
1006
- Zt.value = !1;
1007
- }
1008
- }
1009
- function Sr(e) {
1010
- if (e?.stage === "start") {
1011
- Xt.value = !0;
1012
- return;
1013
- }
1014
- if (e?.stage === "end") {
1015
- Xt.value = !1;
1016
- return;
1017
- }
1018
- Sn();
1019
- }
1020
- async function Cr() {
1021
- if (Rt("copyAlt", {
1022
- config: P.value,
1023
- dataset: J.value
1024
- }), !P.value.userOptions.callbacks.altCopy) {
1025
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
1026
- return;
1027
- }
1028
- await Promise.resolve(P.value.userOptions.callbacks.altCopy({
1029
- config: P.value,
1030
- dataset: J.value
1031
- }));
1032
- }
1033
- function wr() {
1034
- return J.value.length;
1035
- }
1036
- function Tr(e) {
1037
- return J.value[e]?.plots ?? [];
1038
- }
1039
- function Er(e = nn.value, t = rn.value) {
1040
- return !Number.isInteger(e) || !Number.isInteger(t) ? null : Tr(e)[t] ?? null;
1041
- }
1042
- function Dr() {
1043
- nn.value = null, rn.value = null, N.value = "pointer", j.value = !1, Q.value = null;
1044
- }
1045
- function Or(e) {
1046
- if (!e || !I.value) return;
1047
- let t = I.value.getBoundingClientRect();
1048
- an.value = {
1049
- x: t.left + e.x / z.value * t.width,
1050
- y: t.top + e.y / B.value * t.height
1051
- };
1052
- }
1053
- function kr(e, t) {
1054
- let n = Er(e, t);
1055
- n && (nn.value = e, rn.value = t, N.value = "keyboard", Or(n), tr({
1056
- datapoint: n,
1057
- seriesIndex: e,
1058
- triggerMode: "keyboard"
1059
- }));
1060
- }
1061
- function Ar() {
1062
- on.value = !0, nn.value = null, rn.value = null;
1063
- }
1064
- function jr() {
1065
- on.value = !1, Dr();
1066
- }
1067
- function Mr(e) {
1068
- if (!I.value || fr.value || document.activeElement !== I.value || !wr()) return;
1069
- 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";
1070
- if (!t && !n && !r && !i && !a && !o) return;
1071
- if (e.preventDefault(), e.stopPropagation(), o) {
1072
- Dr();
1073
- return;
1074
- }
1075
- let s = nn.value, c = rn.value;
1076
- if (s === null || c === null) s = 0, c = 0;
1077
- else if (t || n) {
1078
- let e = wr();
1079
- s = n ? (s + 1) % e : (s - 1 + e) % e;
1080
- let t = Tr(s);
1081
- if (!t.length) return;
1082
- c = Math.min(c, t.length - 1);
1083
- } else if (r || i) {
1084
- let e = Tr(s);
1085
- if (!e.length) return;
1086
- c = r ? (c + 1) % e.length : (c - 1 + e.length) % e.length;
1087
- }
1088
- if (a) {
1089
- let e = Er();
1090
- if (!e) return;
1091
- $n({
1092
- datapoint: e,
1093
- seriesIndex: nn.value
1094
- });
1095
- return;
1096
- }
1097
- kr(s, c);
1098
- }
1099
- let Nr = p(() => ({
1100
- headers: or.value?.colNames ?? [],
1101
- rows: or.value?.body?.map((e) => e.map((e) => e && typeof e == "object" && "name" in e ? e.name : e)) ?? []
1102
- }));
1103
- return we({
1104
- getData: cr,
1105
- getImage: mr,
1106
- generatePdf: xn,
1107
- generateCsv: ar,
1108
- generateImage: Sn,
1109
- generateSvg: xr,
1110
- toggleTable: lr,
1111
- toggleLabels: ur,
1112
- toggleTooltip: dr,
1113
- toggleAnnotator: pr,
1114
- toggleFullscreen: sr,
1115
- copyAlt: Cr
1116
- }), (e, t) => (S(), g("div", {
1117
- ref_key: "stripPlotChart",
1118
- ref: M,
1119
- class: Ie(`vue-data-ui-component vue-ui-strip-plot ${$.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${P.value.useCssAnimation ? "" : "vue-ui-dna"}`),
1120
- style: x(`font-family:${P.value.style.fontFamily};width:100%; text-align:center;background:${P.value.style.chart.backgroundColor};${P.value.responsive ? "height:100%" : ""}`),
1121
- id: `strip-plot_${A.value}`,
1122
- onMouseenter: t[2] ||= () => D(pn)(!0),
1123
- onMouseleave: t[3] ||= () => D(pn)(!1)
1124
- }, [
1125
- _("div", {
1126
- id: `chart-instructions-${A.value}`,
1127
- class: "sr-only"
1128
- }, [_("p", null, E(P.value.a11y.translations.keyboardNavigation), 1)], 8, Ke),
1129
- Nr.value?.rows?.length ? (S(), m(De, {
1130
- key: 0,
1131
- uid: A.value,
1132
- head: Nr.value.headers,
1133
- body: Nr.value.rows,
1134
- notice: P.value.a11y.translations.tableAvailable,
1135
- caption: P.value.a11y.translations.tableCaption
1136
- }, null, 8, [
1137
- "uid",
1138
- "head",
1139
- "body",
1140
- "notice",
1141
- "caption"
1142
- ])) : h("", !0),
1143
- P.value.userOptions.buttons.annotator ? (S(), m(D(jt), {
1144
- key: 1,
1145
- svgRef: D(I),
1146
- backgroundColor: P.value.style.chart.backgroundColor,
1147
- color: P.value.style.chart.color,
1148
- active: fr.value,
1149
- isCursorPointer: F.value,
1150
- onClose: pr
1151
- }, {
1152
- "annotator-action-close": O(() => [T(e.$slots, "annotator-action-close", {}, void 0, !0)]),
1153
- "annotator-action-color": O(({ color: t }) => [T(e.$slots, "annotator-action-color", b(y({ color: t })), void 0, !0)]),
1154
- "annotator-action-draw": O(({ mode: t }) => [T(e.$slots, "annotator-action-draw", b(y({ mode: t })), void 0, !0)]),
1155
- "annotator-action-undo": O(({ disabled: t }) => [T(e.$slots, "annotator-action-undo", b(y({ disabled: t })), void 0, !0)]),
1156
- "annotator-action-redo": O(({ disabled: t }) => [T(e.$slots, "annotator-action-redo", b(y({ disabled: t })), void 0, !0)]),
1157
- "annotator-action-delete": O(({ disabled: t }) => [T(e.$slots, "annotator-action-delete", b(y({ disabled: t })), void 0, !0)]),
1158
- _: 3
1159
- }, 8, [
1160
- "svgRef",
1161
- "backgroundColor",
1162
- "color",
1163
- "active",
1164
- "isCursorPointer"
1165
- ])) : h("", !0),
1166
- Cn.value ? (S(), g("div", {
1167
- key: 2,
1168
- ref_key: "noTitle",
1169
- ref: Wt,
1170
- class: "vue-data-ui-no-title-space",
1171
- style: "height:36px; width: 100%;background:transparent"
1172
- }, null, 512)) : h("", !0),
1173
- P.value.style.chart.title.text ? (S(), g("div", {
1174
- key: 3,
1175
- ref_key: "chartTitle",
1176
- ref: Ht,
1177
- style: "width:100%;background:transparent;padding-bottom:24px"
1178
- }, [(S(), m(Se, {
1179
- key: `title_${Kt.value}`,
1180
- config: {
1181
- title: {
1182
- cy: "donut-div-title",
1183
- ...P.value.style.chart.title
1184
- },
1185
- subtitle: {
1186
- cy: "donut-div-subtitle",
1187
- ...P.value.style.chart.title.subtitle
1188
- }
1189
- }
1190
- }, null, 8, ["config"]))], 512)) : h("", !0),
1191
- P.value.userOptions.show && zt.value && (D(mn) || D(fn)) ? (S(), m(D(At), {
1192
- ref_key: "userOptionsRef",
1193
- ref: Yt,
1194
- key: `user_option_${Bt.value}`,
1195
- backgroundColor: P.value.style.chart.backgroundColor,
1196
- color: P.value.style.chart.color,
1197
- isPrinting: D(yn),
1198
- isImaging: D(bn),
1199
- uid: A.value,
1200
- hasTooltip: P.value.userOptions.buttons.tooltip && P.value.style.chart.tooltip.show,
1201
- hasPdf: P.value.userOptions.buttons.pdf,
1202
- hasXls: P.value.userOptions.buttons.csv,
1203
- hasImg: P.value.userOptions.buttons.img,
1204
- hasSvg: P.value.userOptions.buttons.svg,
1205
- hasTable: P.value.userOptions.buttons.table,
1206
- hasLabel: P.value.userOptions.buttons.labels && P.value.type !== "violin",
1207
- hasFullscreen: P.value.userOptions.buttons.fullscreen,
1208
- hasAltCopy: P.value.userOptions.buttons.altCopy,
1209
- isTooltip: V.value.showTooltip,
1210
- isFullscreen: $.value,
1211
- titles: { ...P.value.userOptions.buttonTitles },
1212
- chartElement: M.value,
1213
- position: P.value.userOptions.position,
1214
- hasAnnotator: P.value.userOptions.buttons.annotator,
1215
- isAnnotation: fr.value,
1216
- callbacks: P.value.userOptions.callbacks,
1217
- printScale: P.value.userOptions.print.scale,
1218
- tableDialog: P.value.table.useDialog,
1219
- isCursorPointer: F.value,
1220
- onToggleFullscreen: sr,
1221
- onGeneratePdf: D(xn),
1222
- onGenerateCsv: ar,
1223
- onGenerateImage: Sr,
1224
- onGenerateSvg: xr,
1225
- onToggleTable: lr,
1226
- onToggleLabels: ur,
1227
- onToggleTooltip: dr,
1228
- onToggleAnnotator: pr,
1229
- onCopyAlt: Cr,
1230
- style: x({ visibility: D(mn) ? D(fn) ? "visible" : "hidden" : "visible" })
1231
- }, je({ _: 2 }, [
1232
- e.$slots.menuIcon ? {
1233
- name: "menuIcon",
1234
- fn: O(({ isOpen: t, color: n }) => [T(e.$slots, "menuIcon", b(y({
1235
- isOpen: t,
1236
- color: n
1237
- })), void 0, !0)]),
1238
- key: "0"
1239
- } : void 0,
1240
- e.$slots.optionTooltip ? {
1241
- name: "optionTooltip",
1242
- fn: O(() => [T(e.$slots, "optionTooltip", {}, void 0, !0)]),
1243
- key: "1"
1244
- } : void 0,
1245
- e.$slots.optionPdf ? {
1246
- name: "optionPdf",
1247
- fn: O(() => [T(e.$slots, "optionPdf", {}, void 0, !0)]),
1248
- key: "2"
1249
- } : void 0,
1250
- e.$slots.optionCsv ? {
1251
- name: "optionCsv",
1252
- fn: O(() => [T(e.$slots, "optionCsv", {}, void 0, !0)]),
1253
- key: "3"
1254
- } : void 0,
1255
- e.$slots.optionImg ? {
1256
- name: "optionImg",
1257
- fn: O(() => [T(e.$slots, "optionImg", {}, void 0, !0)]),
1258
- key: "4"
1259
- } : void 0,
1260
- e.$slots.optionSvg ? {
1261
- name: "optionSvg",
1262
- fn: O(() => [T(e.$slots, "optionSvg", {}, void 0, !0)]),
1263
- key: "5"
1264
- } : void 0,
1265
- e.$slots.optionTable ? {
1266
- name: "optionTable",
1267
- fn: O(() => [T(e.$slots, "optionTable", {}, void 0, !0)]),
1268
- key: "6"
1269
- } : void 0,
1270
- e.$slots.optionLabels ? {
1271
- name: "optionLabels",
1272
- fn: O(() => [T(e.$slots, "optionLabels", {}, void 0, !0)]),
1273
- key: "7"
1274
- } : void 0,
1275
- e.$slots.optionFullscreen ? {
1276
- name: "optionFullscreen",
1277
- fn: O(({ toggleFullscreen: t, isFullscreen: n }) => [T(e.$slots, "optionFullscreen", b(y({
1278
- toggleFullscreen: t,
1279
- isFullscreen: n
1280
- })), void 0, !0)]),
1281
- key: "8"
1282
- } : void 0,
1283
- e.$slots.optionAnnotator ? {
1284
- name: "optionAnnotator",
1285
- fn: O(({ toggleAnnotator: t, isAnnotator: n }) => [T(e.$slots, "optionAnnotator", b(y({
1286
- toggleAnnotator: t,
1287
- isAnnotator: n
1288
- })), void 0, !0)]),
1289
- key: "9"
1290
- } : void 0,
1291
- e.$slots.optionAltCopy ? {
1292
- name: "optionAltCopy",
1293
- fn: O(({ altCopy: t }) => [T(e.$slots, "optionAltCopy", b(y({ altCopy: t })), void 0, !0)]),
1294
- key: "10"
1295
- } : void 0,
1296
- e.$slots["custom-menu-before"] ? {
1297
- name: "custom-menu-before",
1298
- fn: O(() => [T(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1299
- key: "11"
1300
- } : void 0,
1301
- e.$slots["custom-menu-after"] ? {
1302
- name: "custom-menu-after",
1303
- fn: O(() => [T(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1304
- key: "12"
1305
- } : void 0
1306
- ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasLabel.hasFullscreen.hasAltCopy.isTooltip.isFullscreen.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.style".split("."))) : h("", !0),
1307
- _("div", qe, [(S(), g("svg", {
1308
- ref_key: "svgRef",
1309
- ref: I,
1310
- xmlns: D(ce),
1311
- class: Ie({
1312
- "vue-data-ui-fullscreen--on": $.value,
1313
- "vue-data-ui-fulscreen--off": !$.value
1314
- }),
1315
- viewBox: `0 0 ${z.value} ${B.value}`,
1316
- style: x(`max-width:100%; overflow: visible; background:transparent;color:${P.value.style.chart.color};`),
1317
- "aria-describedby": `chart-instructions-${A.value}`,
1318
- tabindex: "0",
1319
- onFocus: Ar,
1320
- onBlur: jr,
1321
- onKeydown: Mr
1322
- }, [
1323
- Ne(D(Mt)),
1324
- e.$slots["chart-background"] ? (S(), g("foreignObject", {
1325
- key: 0,
1326
- x: W.value.left,
1327
- y: W.value.top,
1328
- width: Math.max(.1, W.value.width),
1329
- height: Math.max(.1, W.value.height),
1330
- style: { pointerEvents: "none" }
1331
- }, [T(e.$slots, "chart-background", {}, void 0, !0)], 8, Ye)) : h("", !0),
1332
- P.value.style.chart.grid.show ? (S(), g("g", Xe, [
1333
- P.value.style.chart.grid.horizontalGrid.show ? (S(), g("g", Ze, [(S(!0), g(f, null, w(Xn.value, (e) => (S(), g("line", {
1334
- x1: e.x1,
1335
- x2: e.x2,
1336
- y1: e.y,
1337
- y2: e.y,
1338
- stroke: P.value.style.chart.grid.horizontalGrid.stroke,
1339
- "stroke-width": P.value.style.chart.grid.horizontalGrid.strokeWidth,
1340
- "stroke-dasharray": P.value.style.chart.grid.horizontalGrid.strokeDasharray,
1341
- "stroke-linecap": "round"
1342
- }, null, 8, Qe))), 256))])) : h("", !0),
1343
- P.value.style.chart.grid.verticalGrid.show ? (S(), g("g", $e, [(S(!0), g(f, null, w(K.value, (e, t) => (S(), g("line", {
1344
- x1: W.value.left + (t + 1) * W.value.stripWidth,
1345
- x2: W.value.left + (t + 1) * W.value.stripWidth,
1346
- y1: W.value.top,
1347
- y2: W.value.bottom,
1348
- stroke: P.value.style.chart.grid.verticalGrid.stroke,
1349
- "stroke-width": P.value.style.chart.grid.verticalGrid.strokeWidth,
1350
- "stroke-dasharray": P.value.style.chart.grid.verticalGrid.strokeDasharray,
1351
- "stroke-linecap": "round"
1352
- }, null, 8, et))), 256))])) : h("", !0),
1353
- _("line", {
1354
- x1: W.value.left,
1355
- x2: W.value.left,
1356
- y1: W.value.top,
1357
- y2: W.value.bottom,
1358
- stroke: P.value.style.chart.grid.stroke,
1359
- "stroke-width": P.value.style.chart.grid.strokeWidth,
1360
- "stroke-linecap": "round"
1361
- }, null, 8, tt),
1362
- _("line", {
1363
- x1: W.value.left,
1364
- x2: W.value.right,
1365
- y1: W.value.bottom,
1366
- y2: W.value.bottom,
1367
- stroke: P.value.style.chart.grid.stroke,
1368
- "stroke-width": P.value.style.chart.grid.strokeWidth,
1369
- "stroke-linecap": "round"
1370
- }, null, 8, nt)
1371
- ])) : h("", !0),
1372
- P.value.style.chart.labels.yAxisLabels.show ? (S(), g("g", {
1373
- key: 2,
1374
- ref_key: "scaleLabels",
1375
- ref: tn
1376
- }, [(S(!0), g(f, null, w(Xn.value, (e, t) => (S(), g("text", {
1377
- x: e.x1 + P.value.style.chart.labels.yAxisLabels.offsetX - 5,
1378
- y: e.y + P.value.style.chart.labels.yAxisLabels.fontSize / 3,
1379
- fill: P.value.style.chart.labels.yAxisLabels.color,
1380
- "font-size": P.value.style.chart.labels.yAxisLabels.fontSize,
1381
- "text-anchor": "end"
1382
- }, E(D(oe)(P.value.style.chart.labels.formatter, e.value, D(se)({
1383
- p: P.value.style.chart.labels.prefix,
1384
- v: e.value,
1385
- s: P.value.style.chart.labels.suffix,
1386
- r: P.value.style.chart.labels.yAxisLabels.rounding
1387
- }), {
1388
- datapoint: e,
1389
- seriesIndex: t
1390
- })), 9, rt))), 256))], 512)) : h("", !0),
1391
- P.value.style.chart.labels.xAxisLabels.show ? (S(), g("g", {
1392
- key: 3,
1393
- ref_key: "timeLabelsEls",
1394
- ref: en
1395
- }, [(S(!0), g(f, null, w(hr.value, (e, t) => (S(), g("g", null, [String(e).includes("\n") ? (S(), g("text", {
1396
- key: 1,
1397
- class: "vue-ui-strip-plot-category-name",
1398
- transform: `translate(${W.value.left + (t + 1) * W.value.stripWidth - W.value.stripWidth / 2}, ${W.value.bottom + P.value.style.chart.labels.xAxisLabels.fontSize * 2 + P.value.style.chart.labels.xAxisLabels.offsetY}), rotate(${P.value.style.chart.labels.xAxisLabels.rotation})`,
1399
- "font-size": P.value.style.chart.labels.xAxisLabels.fontSize,
1400
- fill: P.value.style.chart.labels.xAxisLabels.color,
1401
- "text-anchor": P.value.style.chart.labels.xAxisLabels.rotation > 0 ? "start" : P.value.style.chart.labels.xAxisLabels.rotation < 0 ? "end" : "middle",
1402
- innerHTML: D(n)({
1403
- content: D(r)(String(e)),
1404
- fontSize: P.value.style.chart.labels.xAxisLabels.fontSize,
1405
- fill: P.value.style.chart.labels.xAxisLabels.color,
1406
- x: 0,
1407
- y: 0
1408
- })
1409
- }, null, 8, at)) : (S(), g("text", {
1410
- key: 0,
1411
- class: "vue-ui-strip-plot-category-name",
1412
- transform: `translate(${W.value.left + (t + 1) * W.value.stripWidth - W.value.stripWidth / 2}, ${W.value.bottom + P.value.style.chart.labels.xAxisLabels.fontSize * 2 + P.value.style.chart.labels.xAxisLabels.offsetY}), rotate(${P.value.style.chart.labels.xAxisLabels.rotation})`,
1413
- "font-size": P.value.style.chart.labels.xAxisLabels.fontSize,
1414
- fill: P.value.style.chart.labels.xAxisLabels.color,
1415
- "text-anchor": P.value.style.chart.labels.xAxisLabels.rotation > 0 ? "start" : P.value.style.chart.labels.xAxisLabels.rotation < 0 ? "end" : "middle"
1416
- }, E(String(e)), 9, it))]))), 256))], 512)) : h("", !0),
1417
- P.value.style.chart.labels.axis.yLabel ? (S(), g("text", {
1418
- key: 4,
1419
- ref_key: "yAxisLabel",
1420
- ref: $t,
1421
- fill: P.value.style.chart.labels.axis.color,
1422
- "font-size": P.value.style.chart.labels.axis.fontSize,
1423
- transform: `translate(${P.value.style.chart.labels.axis.fontSize}, ${W.value.top + W.value.height / 2}) rotate(-90)`,
1424
- "text-anchor": "middle"
1425
- }, E(P.value.style.chart.labels.axis.yLabel), 9, ot)) : h("", !0),
1426
- P.value.style.chart.labels.axis.xLabel ? (S(), g("text", {
1427
- key: 5,
1428
- ref_key: "xAxisLabel",
1429
- ref: Qt,
1430
- fill: P.value.style.chart.labels.axis.color,
1431
- "font-size": P.value.style.chart.labels.axis.fontSize,
1432
- x: W.value.left + W.value.width / 2,
1433
- y: B.value - P.value.style.chart.labels.axis.fontSize / 3,
1434
- "text-anchor": "middle"
1435
- }, E(P.value.style.chart.labels.axis.xLabel), 9, st)) : h("", !0),
1436
- Q.value ? (S(), g(f, { key: 6 }, [
1437
- _("line", {
1438
- x1: W.value.left,
1439
- x2: W.value.right,
1440
- y1: Q.value.y,
1441
- y2: Q.value.y,
1442
- stroke: Q.value.color,
1443
- "stroke-width": 1,
1444
- class: Ie({ "select-circle": P.value.useCssAnimation })
1445
- }, null, 10, ct),
1446
- _("circle", {
1447
- cx: W.value.left,
1448
- cy: Q.value.y,
1449
- r: 3,
1450
- fill: Q.value.color,
1451
- class: Ie({ "select-circle": P.value.useCssAnimation })
1452
- }, null, 10, lt),
1453
- _("circle", {
1454
- cx: W.value.right,
1455
- cy: Q.value.y,
1456
- r: 3,
1457
- fill: Q.value.color,
1458
- class: Ie({ "select-circle": P.value.useCssAnimation })
1459
- }, null, 10, ut)
1460
- ], 64)) : h("", !0),
1461
- _("defs", null, [(S(!0), g(f, null, w(K.value, (e) => (S(), g("radialGradient", {
1462
- id: e.id,
1463
- fy: "30%"
1464
- }, [
1465
- _("stop", {
1466
- offset: "10%",
1467
- "stop-color": D(c)(e.color, P.value.style.chart.plots.gradient.intensity / 100)
1468
- }, null, 8, ft),
1469
- _("stop", {
1470
- offset: "90%",
1471
- "stop-color": D(i)(e.color, .1)
1472
- }, null, 8, pt),
1473
- _("stop", {
1474
- offset: "100%",
1475
- "stop-color": e.color
1476
- }, null, 8, mt)
1477
- ], 8, dt))), 256))]),
1478
- (S(!0), g(f, null, w(Hn.value, (e, n) => (S(), g(f, { key: e.id }, [e.path ? (S(), g("path", {
1479
- key: 0,
1480
- d: e.path,
1481
- fill: e.fill,
1482
- stroke: e.color,
1483
- "fill-opacity": P.value.style.chart.violin.opacity,
1484
- "stroke-opacity": P.value.style.chart.violin.strokeOpacity,
1485
- "stroke-width": P.value.style.chart.violin.strokeWidth,
1486
- style: x({
1487
- pointerEvents: Y.value ? "auto" : "none",
1488
- cursor: Y.value && F.value ? "pointer" : "default"
1489
- }),
1490
- onMouseenter: (e) => Y.value && zn.value[n] && rr({
1491
- boxPlot: zn.value[n],
1492
- seriesIndex: n,
1493
- triggerMode: "pointer"
1494
- }),
1495
- onMouseleave: t[0] ||= (e) => Y.value && nr()
1496
- }, null, 44, ht)) : h("", !0), (S(!0), g(f, null, w(e.connectors, (t, n) => (S(), g("line", {
1497
- key: `violin_connector_${e.id}_${n}`,
1498
- x1: t.x,
1499
- x2: t.x,
1500
- y1: t.y1,
1501
- y2: t.y2,
1502
- stroke: e.color,
1503
- "stroke-opacity": P.value.style.chart.violin.strokeOpacity,
1504
- "stroke-width": P.value.style.chart.violin.strokeWidth,
1505
- "stroke-linecap": "round",
1506
- style: { "pointer-events": "none" }
1507
- }, null, 8, gt))), 128))], 64))), 128)),
1508
- (S(!0), g(f, null, w(zn.value, (e, t) => (S(), g("g", {
1509
- key: `boxplot_${e.id}`,
1510
- style: x({ cursor: F.value ? "pointer" : "default" }),
1511
- onMouseenter: (n) => rr({
1512
- boxPlot: e,
1513
- seriesIndex: t,
1514
- triggerMode: "pointer"
1515
- }),
1516
- onMouseleave: nr
1517
- }, [
1518
- _("line", {
1519
- x1: e.centerX,
1520
- x2: e.centerX,
1521
- y1: e.upperY,
1522
- y2: e.lowerY,
1523
- stroke: D(i)(e.boxPlotColor, .2),
1524
- "stroke-width": Math.max(1, P.value.style.chart.violin.strokeWidth),
1525
- "stroke-linecap": "round"
1526
- }, null, 8, vt),
1527
- _("rect", {
1528
- x: e.boxLeft,
1529
- y: Math.min(e.q1Y, e.q3Y),
1530
- width: e.boxWidth,
1531
- height: Math.max(1, Math.abs(e.q3Y - e.q1Y)),
1532
- fill: e.boxPlotColor,
1533
- stroke: D(i)(e.boxPlotColor, .2),
1534
- "stroke-width": Math.max(1, P.value.style.chart.violin.strokeWidth),
1535
- rx: e.boxWidth / 20
1536
- }, null, 8, yt),
1537
- _("circle", {
1538
- cx: e.boxLeft + e.boxWidth / 2,
1539
- cy: e.medianY,
1540
- r: e.boxWidth / 3 * Math.min(1, P.value.style.chart.violin.boxPlot.medianCircleRadiusRatio),
1541
- fill: P.value.style.chart.violin.boxPlot.medianCircleFill,
1542
- stroke: D(i)(e.boxPlotColor, .2)
1543
- }, null, 8, bt)
1544
- ], 44, _t))), 128)),
1545
- (S(!0), g(f, null, w(J.value, (t, n) => (S(), g(f, null, [Y.value ? h("", !0) : (S(!0), g(f, { key: 0 }, w(t.plots, (n, r) => (S(), m(Ce, Pe({ ref_for: !0 }, e.$attrs, {
1546
- plot: {
1547
- x: n.x,
1548
- y: Gt.value ? n.y : W.value.top
1549
- },
1550
- radius: Q.value && Q.value.id === n.id ? H.value * 1.5 : H.value,
1551
- shape: P.value.style.chart.plots.shape,
1552
- stroke: P.value.style.chart.plots.stroke,
1553
- strokeWidth: P.value.style.chart.plots.strokeWidth,
1554
- color: P.value.style.chart.plots.gradient.show ? `url(#${t.id})` : t.color,
1555
- style: `transition: all 0.2s ease-in-out; opacity:${Q.value ? Q.value.id === n.id ? 1 : .2 : P.value.style.chart.plots.opacity};${Tn.value ? `transition-delay:${r * 50}ms` : ""}`,
1556
- class: {
1557
- "vue-ui-strip-plot-animated": P.value.useCssAnimation && Tn.value && !D(ln),
1558
- "vue-ui-strip-plot-select-circle": P.value.useCssAnimation && !Tn.value
1559
- },
1560
- onMouseenter: (e) => tr({
1561
- datapoint: n,
1562
- seriesIndex: r,
1563
- triggerMode: "pointer"
1564
- }),
1565
- onMouseleave: (e) => Qn({
1566
- datapoint: n,
1567
- seriesIndex: r
1568
- }),
1569
- onClick: (e) => $n({
1570
- datapoint: n,
1571
- seriesIndex: r
1572
- })
1573
- }), null, 16, [
1574
- "plot",
1575
- "radius",
1576
- "shape",
1577
- "stroke",
1578
- "strokeWidth",
1579
- "color",
1580
- "style",
1581
- "class",
1582
- "onMouseenter",
1583
- "onMouseleave",
1584
- "onClick"
1585
- ]))), 256)), V.value.dataLabels.show && !Y.value ? (S(), g("g", xt, [(S(!0), g(f, null, w(t.plots, (e, n) => (S(), g(f, null, [n === t.plots.length - 1 || Q.value && Q.value.id === e.id && !V.value.showTooltip ? (S(), g("text", {
1586
- key: 0,
1587
- x: e.x,
1588
- y: e.y + P.value.style.chart.labels.bestPlotLabel.offsetY - H.value * (Q.value && Q.value.id === e.id && !V.value.showTooltip ? 2 : 1.5),
1589
- "font-size": P.value.style.chart.labels.bestPlotLabel.fontSize,
1590
- fill: P.value.style.chart.labels.bestPlotLabel.color,
1591
- "text-anchor": "middle",
1592
- style: x(`opacity:${P.value.useCssAnimation ? +!Tn.value : 1};transition:opacity 0.2s ease-in;`)
1593
- }, E(e.name) + " " + E(P.value.style.chart.labels.bestPlotLabel.showValue ? D(oe)(P.value.style.chart.labels.formatter, e.value, D(se)({
1594
- p: `(${P.value.style.chart.labels.prefix}`,
1595
- v: e.value,
1596
- s: `${P.value.style.chart.labels.suffix})`,
1597
- r: P.value.style.chart.labels.bestPlotLabel.rounding
1598
- }), {
1599
- datapoint: e,
1600
- seriesIndex: n
1601
- }) : ""), 13, St)) : h("", !0)], 64))), 256))])) : h("", !0)], 64))), 256)),
1602
- T(e.$slots, "svg", { svg: {
1603
- ...W.value,
1604
- isPrintingImg: D(yn) || D(bn) || Xt.value,
1605
- isPrintingSvg: Zt.value,
1606
- boxPlotSummaries: zn.value,
1607
- series: K.value
1608
- } }, void 0, !0)
1609
- ], 46, Je)), e.$slots.hint ? (S(), g("div", Ct, [T(e.$slots, "hint", b(y({
1610
- hint: P.value.a11y.translations.keyboardNavigation,
1611
- isVisible: on.value
1612
- })), void 0, !0)])) : h("", !0)]),
1613
- e.$slots.watermark ? (S(), g("div", wt, [T(e.$slots, "watermark", b(y({ isPrinting: D(yn) || D(bn) || Xt.value || Zt.value })), void 0, !0)])) : h("", !0),
1614
- e.$slots.source ? (S(), g("div", {
1615
- key: 6,
1616
- ref_key: "source",
1617
- ref: Ut,
1618
- dir: "auto"
1619
- }, [T(e.$slots, "source", {}, void 0, !0)], 512)) : h("", !0),
1620
- Ne(D(Et), {
1621
- teleportTo: P.value.style.chart.tooltip.teleportTo,
1622
- show: V.value.showTooltip && j.value,
1623
- backgroundColor: P.value.style.chart.tooltip.backgroundColor,
1624
- color: P.value.style.chart.tooltip.color,
1625
- borderRadius: P.value.style.chart.tooltip.borderRadius,
1626
- borderColor: P.value.style.chart.tooltip.borderColor,
1627
- borderWidth: P.value.style.chart.tooltip.borderWidth,
1628
- fontSize: P.value.style.chart.tooltip.fontSize,
1629
- backgroundOpacity: P.value.style.chart.tooltip.backgroundOpacity,
1630
- position: P.value.style.chart.tooltip.position,
1631
- offsetX: P.value.style.chart.tooltip.offsetX,
1632
- offsetY: P.value.style.chart.tooltip.offsetY,
1633
- parent: M.value,
1634
- content: Vt.value,
1635
- isFullscreen: $.value,
1636
- isCustom: D(de)(P.value.style.chart.tooltip.customFormat),
1637
- smooth: P.value.style.chart.tooltip.smooth,
1638
- backdropFilter: P.value.style.chart.tooltip.backdropFilter,
1639
- smoothForce: P.value.style.chart.tooltip.smoothForce,
1640
- smoothSnapThreshold: P.value.style.chart.tooltip.smoothSnapThreshold,
1641
- isA11yMode: N.value === "keyboard",
1642
- a11yPosition: an.value
1643
- }, {
1644
- "tooltip-before": O(() => [T(e.$slots, "tooltip-before", b(y({ ...Zn.value })), void 0, !0)]),
1645
- tooltip: O(() => [T(e.$slots, "tooltip", b(y({ ...Zn.value })), void 0, !0)]),
1646
- "tooltip-after": O(() => [T(e.$slots, "tooltip-after", b(y({ ...Zn.value })), void 0, !0)]),
1647
- _: 3
1648
- }, 8, [
1649
- "teleportTo",
1650
- "show",
1651
- "backgroundColor",
1652
- "color",
1653
- "borderRadius",
1654
- "borderColor",
1655
- "borderWidth",
1656
- "fontSize",
1657
- "backgroundOpacity",
1658
- "position",
1659
- "offsetX",
1660
- "offsetY",
1661
- "parent",
1662
- "content",
1663
- "isFullscreen",
1664
- "isCustom",
1665
- "smooth",
1666
- "backdropFilter",
1667
- "smoothForce",
1668
- "smoothSnapThreshold",
1669
- "isA11yMode",
1670
- "a11yPosition"
1671
- ]),
1672
- zt.value && P.value.userOptions.buttons.table ? (S(), m(ze(gr.value.component), Pe({ key: 7 }, gr.value.props, {
1673
- ref_key: "tableUnit",
1674
- ref: Jt,
1675
- onClose: _r
1676
- }), je({
1677
- content: O(() => [(S(), m(D(kt), {
1678
- key: `table_${qt.value}`,
1679
- colNames: or.value.colNames,
1680
- head: or.value.head,
1681
- body: or.value.body,
1682
- config: or.value.config,
1683
- title: P.value.table.useDialog ? "" : gr.value.title,
1684
- withCloseButton: !P.value.table.useDialog,
1685
- isCursorPointer: F.value,
1686
- onClose: _r
1687
- }, {
1688
- th: O(({ th: e }) => [_("div", {
1689
- innerHTML: e,
1690
- style: {
1691
- display: "flex",
1692
- "align-items": "center"
1693
- }
1694
- }, null, 8, Tt)]),
1695
- td: O(({ td: e }) => [Me(E(e.name || e), 1)]),
1696
- _: 1
1697
- }, 8, [
1698
- "colNames",
1699
- "head",
1700
- "body",
1701
- "config",
1702
- "title",
1703
- "withCloseButton",
1704
- "isCursorPointer"
1705
- ]))]),
1706
- _: 2
1707
- }, [P.value.table.useDialog ? {
1708
- name: "title",
1709
- fn: O(() => [Me(E(gr.value.title), 1)]),
1710
- key: "0"
1711
- } : void 0, P.value.table.useDialog ? {
1712
- name: "actions",
1713
- fn: O(() => [_("button", {
1714
- tabindex: "0",
1715
- class: "vue-ui-user-options-button",
1716
- onClick: t[1] ||= (e) => ar(P.value.userOptions.callbacks.csv),
1717
- style: x({ cursor: F.value ? "pointer" : "default" })
1718
- }, [Ne(D(Dt), {
1719
- name: "fileCsv",
1720
- stroke: gr.value.props.color
1721
- }, null, 8, ["stroke"])], 4)]),
1722
- key: "1"
1723
- } : void 0]), 1040)) : h("", !0),
1724
- T(e.$slots, "skeleton", {}, () => [D(ln) ? (S(), m(ge, { key: 0 })) : h("", !0)], !0)
1725
- ], 46, Ge));
1726
- }
1727
- }, [["__scopeId", "data-v-2a046a41"]]);
1728
- //#endregion
1729
- export { We as n, Et as t };