vue-data-ui 3.22.4 → 3.22.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. package/dist/{Arrow-CgzmXCW_.js → Arrow-Ds4xmpiQ.js} +1 -1
  2. package/dist/{BaseDraggableDialog-DjzNWkiE.js → BaseDraggableDialog-VbypEaAa.js} +2 -2
  3. package/dist/{BaseIcon-xBuW2jjI.js → BaseIcon-DcUvOfxf.js} +1 -1
  4. package/dist/{BaseLegendToggle-C4Usj0LI.js → BaseLegendToggle-DFwIY5bE.js} +1 -1
  5. package/dist/{BaseZoomControls-Cg9o2J-q.js → BaseZoomControls-DwolSINF.js} +2 -2
  6. package/dist/{ColorPicker-Usv7badH.js → ColorPicker-UVDPcrjE.js} +2 -2
  7. package/dist/{DataTable-PidUPOit.js → DataTable-CXfvIulC.js} +2 -2
  8. package/dist/{Legend-DXOzbXb-.js → Legend-D-635Kag.js} +2 -2
  9. package/dist/{NonSvgPenAndPaper-OIs8I25K.js → NonSvgPenAndPaper-pR_1qp3s.js} +29 -29
  10. package/dist/{PackageVersion-Cm-3hwIF.js → PackageVersion-Da7hl-34.js} +1 -1
  11. package/dist/{PenAndPaper-ISUbDKXq.js → PenAndPaper-Bk2-E7V4.js} +18 -18
  12. package/dist/{Shape-BnF9aMPX.js → Shape-BSetplwm.js} +1 -1
  13. package/dist/{Slicer-hEvKOLw3.js → Slicer-ClIGOuoX.js} +2 -2
  14. package/dist/{SlicerPreview-BDI-aCXE.js → SlicerPreview-D1n9AW39.js} +4 -4
  15. package/dist/{SparkTooltip-DaWSTzfA.js → SparkTooltip-CjDAyolg.js} +1 -1
  16. package/dist/{Title-DDEEO-Nr.js → Title-C-p0ilWB.js} +1 -1
  17. package/dist/{Tooltip-BhKov422.js → Tooltip-YabpoXo1.js} +1 -1
  18. package/dist/{UserOptions-BxT1XHzN.js → UserOptions-BO4VFL8O.js} +2 -2
  19. package/dist/components/arrow.js +1 -1
  20. package/dist/components/vue-ui-3d-bar.js +1 -1
  21. package/dist/components/vue-ui-accordion.js +1 -1
  22. package/dist/components/vue-ui-age-pyramid.js +1 -1
  23. package/dist/components/vue-ui-annotator.js +1 -1
  24. package/dist/components/vue-ui-bullet.js +1 -1
  25. package/dist/components/vue-ui-bump.js +1 -1
  26. package/dist/components/vue-ui-candlestick.js +1 -1
  27. package/dist/components/vue-ui-carousel-table.js +1 -1
  28. package/dist/components/vue-ui-chestnut.js +1 -1
  29. package/dist/components/vue-ui-chord.js +1 -1
  30. package/dist/components/vue-ui-circle-pack.js +1 -1
  31. package/dist/components/vue-ui-cursor.js +1 -1
  32. package/dist/components/vue-ui-dag.js +1 -1
  33. package/dist/components/vue-ui-dashboard.js +1 -1
  34. package/dist/components/vue-ui-digits.js +1 -1
  35. package/dist/components/vue-ui-donut-evolution.js +1 -1
  36. package/dist/components/vue-ui-donut.js +1 -1
  37. package/dist/components/vue-ui-dumbbell.js +1 -1
  38. package/dist/components/vue-ui-flow.js +1 -1
  39. package/dist/components/vue-ui-funnel.js +1 -1
  40. package/dist/components/vue-ui-galaxy.js +1 -1
  41. package/dist/components/vue-ui-gauge.js +1 -1
  42. package/dist/components/vue-ui-geo.js +1 -1
  43. package/dist/components/vue-ui-gizmo.js +1 -1
  44. package/dist/components/vue-ui-heatmap.js +1 -1
  45. package/dist/components/vue-ui-history-plot.js +1 -1
  46. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  47. package/dist/components/vue-ui-icon.js +1 -1
  48. package/dist/components/vue-ui-kpi.js +1 -1
  49. package/dist/components/vue-ui-mini-loader.js +1 -1
  50. package/dist/components/vue-ui-molecule.js +1 -1
  51. package/dist/components/vue-ui-mood-radar.js +1 -1
  52. package/dist/components/vue-ui-nested-donuts.js +1 -1
  53. package/dist/components/vue-ui-onion.js +1 -1
  54. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  55. package/dist/components/vue-ui-quadrant.js +1 -1
  56. package/dist/components/vue-ui-quick-chart.js +1 -1
  57. package/dist/components/vue-ui-radar.js +1 -1
  58. package/dist/components/vue-ui-rating.js +1 -1
  59. package/dist/components/vue-ui-relation-circle.js +1 -1
  60. package/dist/components/vue-ui-ridgeline.js +1 -1
  61. package/dist/components/vue-ui-rings.js +1 -1
  62. package/dist/components/vue-ui-scatter.js +1 -1
  63. package/dist/components/vue-ui-skeleton.js +1 -1
  64. package/dist/components/vue-ui-smiley.js +1 -1
  65. package/dist/components/vue-ui-spark-trend.js +1 -1
  66. package/dist/components/vue-ui-sparkbar.js +1 -1
  67. package/dist/components/vue-ui-sparkgauge.js +1 -1
  68. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  69. package/dist/components/vue-ui-sparkline.js +1 -1
  70. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  71. package/dist/components/vue-ui-stackbar.js +1 -1
  72. package/dist/components/vue-ui-stackline.js +1 -1
  73. package/dist/components/vue-ui-strip-plot.js +1 -1
  74. package/dist/components/vue-ui-table-heatmap.js +1 -1
  75. package/dist/components/vue-ui-table-sparkline.js +1 -1
  76. package/dist/components/vue-ui-table.js +1 -1
  77. package/dist/components/vue-ui-thermometer.js +1 -1
  78. package/dist/components/vue-ui-timer.js +1 -1
  79. package/dist/components/vue-ui-tiremarks.js +1 -1
  80. package/dist/components/vue-ui-treemap.js +1 -1
  81. package/dist/components/vue-ui-vertical-bar.js +1 -1
  82. package/dist/components/vue-ui-waffle.js +1 -1
  83. package/dist/components/vue-ui-wheel.js +1 -1
  84. package/dist/components/vue-ui-word-cloud.js +1 -1
  85. package/dist/components/vue-ui-world.js +1 -1
  86. package/dist/components/vue-ui-xy-canvas.js +1 -1
  87. package/dist/components/vue-ui-xy.js +1 -1
  88. package/dist/{dom-to-png-ZOysoMwu.js → dom-to-png-CVJfsfwL.js} +1 -1
  89. package/dist/exposedLib-CjwriUaG.js +19 -0
  90. package/dist/{img-B29J8tV5.js → img-B_y5qDdm.js} +1 -1
  91. package/dist/{labelUtils-BFcL_t-A.js → labelUtils-CyVwqXSh.js} +1 -1
  92. package/dist/{lib-CuwHGt1j.js → lib-DRBJCmHW.js} +6 -9
  93. package/dist/{package-CRlwXCDr.js → package-DyQ_PQis.js} +1 -1
  94. package/dist/{pdf-ymYt9Lee.js → pdf-CG02qhAH.js} +1 -1
  95. package/dist/{render-common-D6ny-Fwu.js → render-common-CUAlQvAQ.js} +22 -22
  96. package/dist/ssr/vue-ui-donut.js +1 -1
  97. package/dist/ssr/vue-ui-xy.js +1 -1
  98. package/dist/ssr.js +2 -2
  99. package/dist/style.css +1 -1
  100. package/dist/types/vue-data-ui.d.ts +14 -0
  101. package/dist/types/vue-ui-treemap.d.ts +3 -0
  102. package/dist/{useAutoSizeLabelsInsideViewbox-DzAZ-MeY.js → useAutoSizeLabelsInsideViewbox-DPMOys9n.js} +1 -1
  103. package/dist/{useConfig-pVLia3dt.js → useConfig-DYM3f6EI.js} +5 -3
  104. package/dist/{useNestedProp-BjkuFaz1.js → useNestedProp-BEo2N1Db.js} +1 -1
  105. package/dist/{useObjectBindings-C1XuDxFr.js → useObjectBindings-CD31syQb.js} +1 -1
  106. package/dist/{usePrinter-C0wAS8yc.js → usePrinter-CRp5IW3v.js} +2 -2
  107. package/dist/utils.js +10 -10
  108. package/dist/{vue-data-ui-DTWqd0R2.js → vue-data-ui-Bpu4kxlm.js} +68 -68
  109. package/dist/vue-data-ui.js +73 -73
  110. package/dist/vue-ui-3d-bar-BAH0jNtT.js +1757 -0
  111. package/dist/{vue-ui-accordion-B64IJyPU.js → vue-ui-accordion-CfMrbDoq.js} +4 -4
  112. package/dist/vue-ui-age-pyramid-BF5ZuuyI.js +1238 -0
  113. package/dist/{vue-ui-annotator-CU4CdKMm.js → vue-ui-annotator-CG6rhFpy.js} +68 -68
  114. package/dist/{vue-ui-bullet-tlj5_z_z.js → vue-ui-bullet-C_oBS1cr.js} +18 -18
  115. package/dist/{vue-ui-bump-BD0Uq3As.js → vue-ui-bump-BZB1Na8h.js} +243 -243
  116. package/dist/{vue-ui-candlestick-CZxsNGKS.js → vue-ui-candlestick-8d_1xO8X.js} +27 -27
  117. package/dist/{vue-ui-carousel-table-ycbcmBKt.js → vue-ui-carousel-table-BfZNcwmY.js} +43 -43
  118. package/dist/vue-ui-chestnut-Cx8T3NEl.js +2010 -0
  119. package/dist/vue-ui-chord-B-sauvLo.js +1391 -0
  120. package/dist/{vue-ui-circle-pack-BPC6zUis.js → vue-ui-circle-pack-BLh8HnGK.js} +32 -32
  121. package/dist/{vue-ui-cursor-DF_e5k1s.js → vue-ui-cursor-DVsEm_4l.js} +4 -4
  122. package/dist/{vue-ui-dag-BIo4-Oa8.js → vue-ui-dag-Cfi0b9qm.js} +24 -24
  123. package/dist/{vue-ui-dashboard-BEtF6UX2.js → vue-ui-dashboard-F_NZ1xoQ.js} +70 -70
  124. package/dist/{vue-ui-digits-07IxTlNO.js → vue-ui-digits-BfP1kbj3.js} +4 -4
  125. package/dist/vue-ui-donut-BwAyvV3-.js +2410 -0
  126. package/dist/{vue-ui-donut-C5oRCxAO.js → vue-ui-donut-DlVRnVr_.js} +120 -120
  127. package/dist/{vue-ui-donut-evolution-BSeyPC9k.js → vue-ui-donut-evolution-D1k4u6cA.js} +419 -419
  128. package/dist/vue-ui-dumbbell-DgmvPpK2.js +1530 -0
  129. package/dist/{vue-ui-flow-R_dLE1WS.js → vue-ui-flow-D_7Idmmw.js} +84 -84
  130. package/dist/vue-ui-funnel-BYCFV5TD.js +777 -0
  131. package/dist/vue-ui-galaxy-Bjxbg5_B.js +1077 -0
  132. package/dist/{vue-ui-gauge-AbzY-7Gg.js → vue-ui-gauge-Dt0H7DgC.js} +217 -217
  133. package/dist/{vue-ui-geo-DVT9XEC3.js → vue-ui-geo-89DEQb5l.js} +18 -18
  134. package/dist/{vue-ui-gizmo-DJTRXao8.js → vue-ui-gizmo-CQyLK18v.js} +62 -62
  135. package/dist/{vue-ui-heatmap-BCFId15K.js → vue-ui-heatmap-o6MvoxBK.js} +247 -247
  136. package/dist/vue-ui-history-plot-B7zuCfdg.js +1715 -0
  137. package/dist/{vue-ui-horizontal-bar-j3jszojt.js → vue-ui-horizontal-bar-CwB4sc6M.js} +275 -275
  138. package/dist/{vue-ui-kpi-DJjF6tcf.js → vue-ui-kpi-4C-j92D-.js} +4 -4
  139. package/dist/{vue-ui-mini-loader-nOsOsA2V.js → vue-ui-mini-loader-Bj4Wv-i8.js} +3 -3
  140. package/dist/vue-ui-molecule-BDrRmwmm.js +925 -0
  141. package/dist/{vue-ui-mood-radar-DP_4LHfZ.js → vue-ui-mood-radar-B5W35Fvp.js} +30 -30
  142. package/dist/{vue-ui-nested-donuts-DFsLZEqx.js → vue-ui-nested-donuts-wfesrzle.js} +105 -105
  143. package/dist/{vue-ui-onion-CzXx3Rme.js → vue-ui-onion-B8-psLbF.js} +40 -40
  144. package/dist/vue-ui-parallel-coordinate-plot-DBpHCFxa.js +1416 -0
  145. package/dist/vue-ui-quadrant-BzyGOJR2.js +1978 -0
  146. package/dist/{vue-ui-quick-chart-CnIFPFPv.js → vue-ui-quick-chart-so_8PzvS.js} +663 -663
  147. package/dist/{vue-ui-radar-CNwKFbHc.js → vue-ui-radar-5fQ5AAWD.js} +63 -63
  148. package/dist/{vue-ui-rating-CRziryE2.js → vue-ui-rating-CKWHDKOT.js} +34 -34
  149. package/dist/vue-ui-relation-circle-Bd_ONHCz.js +924 -0
  150. package/dist/{vue-ui-ridgeline-Kw50zROq.js → vue-ui-ridgeline-DVbYznRz.js} +102 -102
  151. package/dist/vue-ui-rings-c-yLWFHr.js +1246 -0
  152. package/dist/{vue-ui-scatter-DoL5Kh1Y.js → vue-ui-scatter-QhmE7n1H.js} +87 -87
  153. package/dist/{vue-ui-skeleton-BOHwJSdz.js → vue-ui-skeleton-BkxB6Dik.js} +4 -4
  154. package/dist/{vue-ui-smiley-BTvDy8Fm.js → vue-ui-smiley-C4g0iaF7.js} +10 -10
  155. package/dist/{vue-ui-spark-trend-OgSFIFh0.js → vue-ui-spark-trend-0FELlq4x.js} +98 -98
  156. package/dist/{vue-ui-sparkbar-D8FdqMB_.js → vue-ui-sparkbar-D-i_VLO6.js} +87 -87
  157. package/dist/{vue-ui-sparkgauge-CBpPbVkw.js → vue-ui-sparkgauge-CWw6w_ng.js} +48 -48
  158. package/dist/{vue-ui-sparkhistogram-BQjbLa2k.js → vue-ui-sparkhistogram-DuGpkfma.js} +105 -105
  159. package/dist/{vue-ui-sparkline-BJfh5Lje.js → vue-ui-sparkline-Bi06lHQd.js} +252 -252
  160. package/dist/vue-ui-sparkstackbar-DrKgBUmt.js +662 -0
  161. package/dist/{vue-ui-stackbar-Dqs7_g8D.js → vue-ui-stackbar-DDvuDGQ_.js} +85 -85
  162. package/dist/vue-ui-stackline-C0NHBUaE.js +2416 -0
  163. package/dist/{vue-ui-strip-plot-B7D6Hk8R.js → vue-ui-strip-plot-_6LL45i9.js} +369 -369
  164. package/dist/{vue-ui-table-Bqi9XNvY.js → vue-ui-table-DBlZswRi.js} +26 -26
  165. package/dist/{vue-ui-table-heatmap-D38YSxhJ.js → vue-ui-table-heatmap-3xYIDKcP.js} +6 -6
  166. package/dist/{vue-ui-table-sparkline-0Ffb2jdf.js → vue-ui-table-sparkline-BH5PzEnJ.js} +201 -201
  167. package/dist/{vue-ui-thermometer-Di5PXtEO.js → vue-ui-thermometer-BxMzAqoT.js} +119 -119
  168. package/dist/{vue-ui-timer-9CDcd-gP.js → vue-ui-timer-ONSitYDm.js} +30 -30
  169. package/dist/{vue-ui-tiremarks-BAQ-cCSq.js → vue-ui-tiremarks-DWXM-9nR.js} +15 -15
  170. package/dist/vue-ui-treemap-B03c4RIy.js +1713 -0
  171. package/dist/{vue-ui-waffle-DG2IfACo.js → vue-ui-waffle-afa8HSxz.js} +160 -160
  172. package/dist/{vue-ui-wheel-BfXJFCjv.js → vue-ui-wheel-DRP7X8S2.js} +37 -37
  173. package/dist/{vue-ui-word-cloud-3NJy1z6d.js → vue-ui-word-cloud-AKpMO97a.js} +38 -38
  174. package/dist/{vue-ui-world-vrGT5g1H.js → vue-ui-world-CqS-HhZl.js} +400 -400
  175. package/dist/{vue-ui-xy-Dg0wxSeC.js → vue-ui-xy-Bmd11BxR.js} +656 -656
  176. package/dist/{vue-ui-xy-Cb7u46JN.js → vue-ui-xy-DJ8YKPgs.js} +244 -244
  177. package/dist/{vue-ui-xy-canvas-CjbjJ70r.js → vue-ui-xy-canvas-DO_PDGKf.js} +47 -47
  178. package/package.json +1 -1
  179. package/dist/exposedLib-C2U48XK7.js +0 -19
  180. package/dist/vue-ui-3d-bar-DBpSRV-C.js +0 -1757
  181. package/dist/vue-ui-age-pyramid-e09oK-Fp.js +0 -1238
  182. package/dist/vue-ui-chestnut-CnEsjvh4.js +0 -2010
  183. package/dist/vue-ui-chord-BZhXsZXp.js +0 -1391
  184. package/dist/vue-ui-donut-C4FcvXm3.js +0 -2410
  185. package/dist/vue-ui-dumbbell-Cykw4WYn.js +0 -1530
  186. package/dist/vue-ui-funnel-Ct5xQdak.js +0 -777
  187. package/dist/vue-ui-galaxy-B5BkdIt5.js +0 -1077
  188. package/dist/vue-ui-history-plot-DCeroetw.js +0 -1700
  189. package/dist/vue-ui-molecule-2pfoR63d.js +0 -925
  190. package/dist/vue-ui-parallel-coordinate-plot-BY6dptUG.js +0 -1416
  191. package/dist/vue-ui-quadrant-Br_iZmcw.js +0 -1978
  192. package/dist/vue-ui-relation-circle-BVDIikGi.js +0 -924
  193. package/dist/vue-ui-rings-BDJyoWvT.js +0 -1246
  194. package/dist/vue-ui-sparkstackbar-1WUQrqd7.js +0 -662
  195. package/dist/vue-ui-stackline-IRjugedp.js +0 -2416
  196. package/dist/vue-ui-treemap-CLOlWiDE.js +0 -1587
@@ -1,2416 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { Gt as t, Ht as n, I as r, Lt as i, Ot as a, Q as o, R as s, S as c, Tt as l, Ut as u, Vt as d, W as f, X as p, b as m, g as h, h as g, i as _, it as v, j as ee, jt as te, k as y, ot as ne, q as re, s as ie, t as ae, ut as oe, v as se, vt as ce, w as le, yt as ue } from "./lib-CuwHGt1j.js";
3
- import { n as de, r as fe, t as pe } from "./useTimeLabels-BmBRv27Y.js";
4
- import { t as me } from "./useConfig-pVLia3dt.js";
5
- import { t as he } from "./usePrinter-C0wAS8yc.js";
6
- import { n as ge, t as _e } from "./BaseScanner-DZvpgOjM.js";
7
- import { t as ve } from "./useSvgExport-SVIsDot8.js";
8
- import { t as ye } from "./useNestedProp-BjkuFaz1.js";
9
- import { t as be } from "./useThemeCheck-C43Tcqmk.js";
10
- import { t as xe } from "./useStableElementSize-C7KADDKj.js";
11
- import { t as Se } from "./useTimeLabelCollider-AEcY4Ioe.js";
12
- import { t as Ce } from "./img-B29J8tV5.js";
13
- import { n as we } from "./Title-DDEEO-Nr.js";
14
- import { t as Te } from "./Shape-BnF9aMPX.js";
15
- import { t as Ee } from "./_plugin-vue_export-helper-B3ysoDQm.js";
16
- import { c as De } from "./canvas-lib-BOP_HS11.js";
17
- import { t as Oe } from "./useResponsive-BfnK0KxU.js";
18
- import { t as ke } from "./SlicerPreview-BDI-aCXE.js";
19
- import { t as Ae } from "./BaseLegendToggle-C4Usj0LI.js";
20
- import { t as je } from "./A11yDataTable-DdRsVULz.js";
21
- import { t as Me } from "./useUserOptionState-DK-_1ddE.js";
22
- import { t as Ne } from "./useChartAccessibility-DYqac8yF.js";
23
- import { t as Pe } from "./Legend-DXOzbXb-.js";
24
- import { t as Fe } from "./vue_ui_stackline-DQqKPA9z.js";
25
- import { Fragment as b, Teleport as Ie, computed as x, createBlock as S, createCommentVNode as C, createElementBlock as w, createElementVNode as T, createSlots as Le, createTextVNode as Re, createVNode as ze, defineAsyncComponent as Be, guardReactiveProps as E, mergeProps as Ve, nextTick as He, normalizeClass as Ue, normalizeProps as D, normalizeStyle as We, onBeforeUnmount as Ge, onMounted as Ke, openBlock as O, ref as k, renderList as A, renderSlot as j, resolveDynamicComponent as qe, shallowRef as Je, toDisplayString as Ye, toRefs as Xe, unref as M, useSlots as Ze, watch as Qe, watchEffect as $e, withCtx as N } from "vue";
26
- //#region src/components/vue-ui-stackline.vue
27
- var et = /* @__PURE__ */ e({ default: () => Bt }), tt = ["id"], nt = ["id"], rt = ["id"], it = { style: { position: "relative" } }, at = [
28
- "aria-describedby",
29
- "xmlns",
30
- "viewBox"
31
- ], ot = { key: 0 }, st = [
32
- "x",
33
- "y",
34
- "width",
35
- "height"
36
- ], ct = { key: 1 }, lt = ["id"], ut = ["stop-color"], dt = ["stop-color"], ft = [
37
- "x1",
38
- "x2",
39
- "y1",
40
- "y2",
41
- "stroke",
42
- "stroke-width",
43
- "stroke-dasharray"
44
- ], pt = [
45
- "x1",
46
- "x2",
47
- "y1",
48
- "y2",
49
- "stroke",
50
- "stroke-width",
51
- "stroke-dasharray"
52
- ], mt = [
53
- "x1",
54
- "x2",
55
- "y1",
56
- "y2",
57
- "stroke",
58
- "stroke-width"
59
- ], ht = [
60
- "x1",
61
- "x2",
62
- "y1",
63
- "y2",
64
- "stroke",
65
- "stroke-width"
66
- ], gt = [
67
- "x",
68
- "y",
69
- "font-size",
70
- "fill",
71
- "font-weight"
72
- ], _t = [
73
- "transform",
74
- "font-size",
75
- "fill",
76
- "font-weight"
77
- ], vt = [
78
- "x",
79
- "y",
80
- "width",
81
- "height",
82
- "stroke",
83
- "stroke-width",
84
- "stroke-linecap",
85
- "stroke-linejoin",
86
- "stroke-dasharray"
87
- ], yt = [
88
- "d",
89
- "fill",
90
- "opacity"
91
- ], bt = [
92
- "d",
93
- "stroke",
94
- "stroke-width"
95
- ], xt = [
96
- "x1",
97
- "x2",
98
- "y1",
99
- "y2",
100
- "stroke"
101
- ], St = [
102
- "x",
103
- "y",
104
- "font-size",
105
- "font-weight",
106
- "fill",
107
- "text-anchor"
108
- ], Ct = { key: 0 }, wt = { key: 1 }, Tt = [
109
- "text-anchor",
110
- "font-size",
111
- "font-weight",
112
- "fill",
113
- "transform",
114
- "onClick"
115
- ], Et = [
116
- "text-anchor",
117
- "font-size",
118
- "fill",
119
- "transform",
120
- "innerHTML",
121
- "onClick"
122
- ], Dt = [
123
- "x",
124
- "y",
125
- "height",
126
- "width",
127
- "fill"
128
- ], Ot = { key: 0 }, kt = [
129
- "x1",
130
- "x2",
131
- "y1",
132
- "y2",
133
- "stroke",
134
- "stroke-width",
135
- "stroke-dasharray"
136
- ], At = { key: 0 }, jt = [
137
- "x",
138
- "y",
139
- "font-size",
140
- "fill",
141
- "font-weight"
142
- ], Mt = [
143
- "x",
144
- "y",
145
- "font-size",
146
- "font-weight",
147
- "fill"
148
- ], Nt = ["data-start", "data-end"], Pt = {
149
- key: 0,
150
- style: {
151
- position: "absolute",
152
- top: "100%",
153
- left: "0",
154
- width: "100%"
155
- },
156
- "data-dom-to-png-ignore": "",
157
- "aria-hidden": "true"
158
- }, Ft = {
159
- key: 5,
160
- class: "vue-data-ui-watermark"
161
- }, It = ["onClick"], Lt = ["innerHTML"], Rt = ["innerHTML"], zt = ["id"], Bt = /*#__PURE__*/ Ee({
162
- __name: "vue-ui-stackline",
163
- props: {
164
- config: {
165
- type: Object,
166
- default() {
167
- return {};
168
- }
169
- },
170
- dataset: {
171
- type: Array,
172
- default() {
173
- return [];
174
- }
175
- },
176
- selectedXIndex: {
177
- type: Number,
178
- default: void 0
179
- }
180
- },
181
- emits: [
182
- "selectDatapoint",
183
- "selectLegend",
184
- "selectTimeLabel",
185
- "selectX",
186
- "copyAlt"
187
- ],
188
- setup(e, { expose: Ee, emit: et }) {
189
- let Bt = Be(() => import("./Tooltip-BhKov422.js")), Vt = Be(() => import("./BaseIcon-xBuW2jjI.js").then((e) => e.n)), Ht = Be(() => import("./vue-ui-accordion-B64IJyPU.js").then((e) => e.n)), Ut = Be(() => import("./DataTable-PidUPOit.js")), Wt = Be(() => import("./PenAndPaper-ISUbDKXq.js").then((e) => e.t)), Gt = Be(() => import("./UserOptions-BxT1XHzN.js").then((e) => e.n)), Kt = Be(() => import("./PackageVersion-Cm-3hwIF.js").then((e) => e.t)), qt = Be(() => import("./BaseDraggableDialog-DjzNWkiE.js").then((e) => e.n)), { vue_ui_stackline: Jt } = me(), { isThemeValid: Yt, warnInvalidTheme: Xt } = be(), Zt = Ze(), P = e, F = et, Qt = x({
190
- get() {
191
- return !!P.dataset && P.dataset.length;
192
- },
193
- set(e) {
194
- return e;
195
- }
196
- }), I = k(null), L = k(f()), $t = k(!1), R = k([]), en = k(0), tn = k(null), nn = k(null), rn = k(null), an = k(null), on = k(null), sn = k(!1), cn = k(!1), ln = k(0), un = k(0), dn = k(0), fn = k(!1), pn = k(null), mn = k(null), hn = k(!1), gn = k(!1), _n = k(!1), vn = k(null), yn = k(null), bn = k(null), xn = k(null), Sn = k(null), Cn = Je(null), wn = k(!1), Tn = k(0), En = k(0), z = k(null), Dn = k({
197
- x: 0,
198
- y: 0
199
- }), On = k("pointer"), kn = xe({
200
- elementRef: Cn,
201
- minimumWidth: 2,
202
- minimumHeight: 2,
203
- stableFramesRequired: 2,
204
- once: !1,
205
- onSizeAccepted: () => {
206
- Mn();
207
- }
208
- });
209
- function An() {
210
- Cn.value = I.value?.parentNode ?? null;
211
- }
212
- function jn() {
213
- return new Promise((e) => {
214
- requestAnimationFrame(() => {
215
- requestAnimationFrame(e);
216
- });
217
- });
218
- }
219
- async function Mn() {
220
- let e = ++En.value;
221
- wn.value = !1, await He(), await jn(), await jn(), e === En.value && (Tn.value += 1, wn.value = !0);
222
- }
223
- let Nn = k(null), Pn = k(!1);
224
- function Fn() {
225
- Pn.value = !Pn.value;
226
- }
227
- Ke(() => {
228
- An(), kn.start(), fn.value = !0, ar(), Mn();
229
- });
230
- let B = k(Kn()), V = x(() => B.value.userOptions.useCursorPointer), In = x(() => t({
231
- defaultConfig: {
232
- userOptions: { show: !1 },
233
- useCssAnimation: !1,
234
- table: { show: !1 },
235
- tooltip: { show: !1 },
236
- style: { chart: {
237
- backgroundColor: "#99999930",
238
- lines: {
239
- totalValues: { show: !1 },
240
- dataLabels: { show: !1 }
241
- },
242
- grid: {
243
- frame: { stroke: "#6A6A6A" },
244
- scale: {
245
- scaleMin: 0,
246
- scaleMax: 144
247
- },
248
- x: {
249
- axisColor: "#6A6A6A",
250
- linesColor: "#6A6A6A",
251
- axisName: { show: !1 },
252
- timeLabels: { show: !1 }
253
- },
254
- y: {
255
- axisColor: "#6A6A6A",
256
- linesColor: "#6A6A6A",
257
- axisName: { show: !1 },
258
- axisLabels: { show: !1 }
259
- }
260
- },
261
- legend: { backgroundColor: "transparent" },
262
- padding: {
263
- left: 24,
264
- right: 24,
265
- bottom: 12
266
- },
267
- zoom: {
268
- show: !1,
269
- startIndex: null,
270
- endIndex: null,
271
- keepState: !1
272
- }
273
- } }
274
- },
275
- userConfig: B.value.skeletonConfig ?? {}
276
- })), { loading: Ln, FINAL_DATASET: Rn, manualLoading: zn } = ge({
277
- ...Xe(P),
278
- FINAL_CONFIG: B,
279
- prepareConfig: Kn,
280
- callback: () => {
281
- Promise.resolve().then(async () => {
282
- (!B.value.style.chart.zoom.keepState || !Zr.value || q.value.start === 0 && q.value.end === 0) && await $r();
283
- });
284
- },
285
- skeletonDataset: P.config?.skeletonDataset ?? [{
286
- name: "",
287
- series: [
288
- 3,
289
- 2,
290
- 1,
291
- 5,
292
- 13,
293
- 21,
294
- 8,
295
- 89,
296
- 34,
297
- 55
298
- ],
299
- color: "#8A8A8A"
300
- }, {
301
- name: "",
302
- series: [
303
- 1,
304
- 2,
305
- 3,
306
- 5,
307
- 8,
308
- 13,
309
- 21,
310
- 34,
311
- 55,
312
- 89
313
- ],
314
- color: "#CACACA"
315
- }],
316
- skeletonConfig: t({
317
- defaultConfig: B.value,
318
- userConfig: In.value
319
- })
320
- }), { userOptionsVisible: Bn, setUserOptionsVisibility: Vn, keepUserOptionState: Hn } = Me({ config: B.value }), { svgRef: Un } = Ne({ config: B.value.style.chart.title });
321
- function Wn() {
322
- hn.value = !0, Vn(!0);
323
- }
324
- function Gn() {
325
- Vn(!1), hn.value = !1, z.value = null, On.value = "pointer", $t.value = !1, $.value = null, F("selectX", {
326
- index: null,
327
- indexLabel: null,
328
- dataset: null
329
- });
330
- }
331
- function Kn() {
332
- let e = ye({
333
- userConfig: P.config,
334
- defaultConfig: Jt
335
- }), t = {}, n = e.theme;
336
- if (n) if (!Yt.value(e)) Xt(e), t = e;
337
- else {
338
- let r = ye({
339
- userConfig: Fe[n] || P.config,
340
- defaultConfig: e
341
- });
342
- t = {
343
- ...ye({
344
- userConfig: P.config,
345
- defaultConfig: r
346
- }),
347
- customPalette: e.customPalette.length ? e.customPalette : u[n] || te
348
- };
349
- }
350
- else t = e;
351
- return t;
352
- }
353
- let qn = x(() => B.value.style.chart.lines.dataLabels.hideUnderValue !== null), Jn = x(() => B.value.style.chart.lines.dataLabels.hideUnderPercentage !== null);
354
- Qe(() => P.config, (e) => {
355
- Ln.value || (B.value = Kn()), Bn.value = !B.value.userOptions.showOnChartHover, ar({ resetSlicer: !B.value.style.chart.zoom.keepState }), ln.value += 1, un.value += 1, dn.value += 1, H.value.dataLabels.show = B.value.style.chart.lines.dataLabels.show, H.value.showTable = B.value.table.show, H.value.showTooltip = B.value.style.chart.tooltip.show, U.value.width = B.value.style.chart.width, U.value.height = B.value.style.chart.height, U.value.paddingRatio = {
356
- top: B.value.style.chart.padding.top / B.value.style.chart.height,
357
- right: B.value.style.chart.padding.right / B.value.style.chart.width,
358
- bottom: B.value.style.chart.padding.bottom / B.value.style.chart.height,
359
- left: B.value.style.chart.padding.left / B.value.style.chart.width
360
- }, An(), Mn(), !B.value.style.chart.zoom.keepState || !Zr.value || q.value.start === 0 && q.value.end === 0 ? $r() : xr();
361
- }, { deep: !0 }), Qe(() => P.dataset, (e) => {
362
- Array.isArray(e) && e.length > 0 && (zn.value = !1), B.value.style.chart.zoom.keepState ? xr() : wr(), An(), Mn();
363
- }, { deep: !0 });
364
- let H = k({
365
- dataLabels: { show: B.value.style.chart.lines.dataLabels.show },
366
- showTable: B.value.table.show,
367
- showTooltip: B.value.style.chart.tooltip.show
368
- });
369
- Qe(B, () => {
370
- H.value = {
371
- dataLabels: { show: B.value.style.chart.lines.dataLabels.show },
372
- showTable: B.value.table.show,
373
- showTooltip: B.value.style.chart.tooltip.show
374
- };
375
- }, { immediate: !0 });
376
- let { isPrinting: Yn, isImaging: Xn, generatePdf: Zn, generateImage: Qn } = he({
377
- elementId: `stackline_${L.value}`,
378
- fileName: B.value.style.chart.title.text || "vue-ui-stackline",
379
- options: B.value.userOptions.print
380
- }), $n = x(() => B.value.userOptions.show && !B.value.style.chart.title.text), U = k({
381
- width: B.value.style.chart.width,
382
- height: B.value.style.chart.height,
383
- paddingRatio: {
384
- top: B.value.style.chart.padding.top / B.value.style.chart.height,
385
- right: B.value.style.chart.padding.right / B.value.style.chart.width,
386
- bottom: B.value.style.chart.padding.bottom / B.value.style.chart.height,
387
- left: B.value.style.chart.padding.left / B.value.style.chart.width
388
- }
389
- }), er = x(() => c(B.value.customPalette)), tr = Je(null), nr = Je(null), rr = k(null), ir = x(() => !!B.value.debug);
390
- function ar({ resetSlicer: e = !0 } = {}) {
391
- if (a(P.dataset) ? (o({
392
- componentName: "VueUiStackline",
393
- type: "dataset",
394
- debug: ir.value
395
- }), zn.value = !0) : P.dataset.forEach((e, t) => {
396
- oe({
397
- datasetObject: e,
398
- requiredAttributes: ["name", "series"]
399
- }).forEach((e) => {
400
- Qt.value = !1, o({
401
- componentName: "VueUiStackline",
402
- type: "datasetSerieAttribute",
403
- property: e,
404
- index: t,
405
- debug: ir.value
406
- }), zn.value = !0;
407
- });
408
- }), a(P.dataset) || (zn.value = B.value.loading), setTimeout(() => {
409
- cn.value = !0;
410
- }, 10), B.value.responsive) {
411
- let e = De(() => {
412
- cn.value = !1;
413
- let { width: e, height: t } = Oe({
414
- chart: I.value,
415
- noTitle: an.value,
416
- title: B.value.style.chart.title.text ? tn.value : null,
417
- legend: B.value.style.chart.legend.show ? nn.value : null,
418
- slicer: B.value.style.chart.zoom.show && K.value > 6 ? rn.value.$el : null,
419
- source: on.value
420
- });
421
- requestAnimationFrame(() => {
422
- U.value.width = e, U.value.height = t - 12, clearTimeout(rr.value), rr.value = setTimeout(() => {
423
- cn.value = !0;
424
- }, 10);
425
- });
426
- });
427
- tr.value && (nr.value && tr.value.unobserve(nr.value), tr.value.disconnect()), tr.value = new ResizeObserver(e), nr.value = I.value.parentNode, tr.value.observe(nr.value);
428
- }
429
- e && $r();
430
- }
431
- Ge(() => {
432
- kn.stop(), tr.value && (nr.value && tr.value.unobserve(nr.value), tr.value.disconnect());
433
- });
434
- let or = x(() => B.value.style.chart.grid.y.position === "right");
435
- function sr() {
436
- let e = 0;
437
- bn.value && (e = Array.from(bn.value.querySelectorAll("text")).reduce((e, t) => {
438
- let n = t.getComputedTextLength();
439
- return n > e ? n : e;
440
- }, 0));
441
- let t = yn.value ? yn.value.getBoundingClientRect().width + B.value.style.chart.grid.y.axisName.fontSize + B.value.style.chart.grid.y.axisName.offsetX : 0;
442
- return {
443
- left: or.value ? 0 : e + t,
444
- right: or.value ? e + t : 0,
445
- scaleLabelsWidth: e,
446
- yAxisLabelWidth: t
447
- };
448
- }
449
- let cr = k(0), lr = k(0), ur = k(0);
450
- function dr() {
451
- let e = xn.value;
452
- if (!e) {
453
- lr.value = 0;
454
- return;
455
- }
456
- try {
457
- let t = e.getBBox();
458
- lr.value = Number.isFinite(t?.height) ? t.height : 0;
459
- } catch {
460
- lr.value = 0;
461
- }
462
- }
463
- function fr() {
464
- ur.value && cancelAnimationFrame(ur.value), ur.value = requestAnimationFrame(() => {
465
- requestAnimationFrame(() => {
466
- dr();
467
- });
468
- });
469
- }
470
- Ge(() => {
471
- ur.value && cancelAnimationFrame(ur.value), lr.value = 0, cr.value = 0;
472
- });
473
- let pr = x(() => {
474
- let e = 0;
475
- if (vn.value) try {
476
- e = vn.value.getBBox().height;
477
- } catch {
478
- e = 0;
479
- }
480
- let t = B.value.style.chart.grid.x.timeLabels.show ? lr.value : 0;
481
- return e + t;
482
- }), W = x(() => {
483
- Tn.value;
484
- let { height: e, width: t } = U.value, { right: n } = U.value.paddingRatio, r = B.value.style.chart.lines.totalValues.show && P.dataset && P.dataset.length > 1 ? B.value.style.chart.lines.totalValues.fontSize * 1.3 : 0, i = 0, a = 0, o = 0, s = 0;
485
- if (B.value.style.chart.grid.y.axisLabels.show) {
486
- let e = sr();
487
- i = e.left, a = e.right, o = e.scaleLabelsWidth, s = e.yAxisLabelWidth;
488
- }
489
- let c = B.value.style.chart.padding.top + r, l = t - t * n - cr.value - a, u = e - B.value.style.chart.padding.bottom - pr.value - r, d = B.value.style.chart.padding.left + i, f = t - d - t * n - cr.value - a, p = e - c - B.value.style.chart.padding.bottom - pr.value - r;
490
- return {
491
- chartHeight: Math.max(0, e),
492
- chartWidth: Math.max(0, t),
493
- top: c,
494
- right: Math.max(0, l),
495
- bottom: Math.max(0, u),
496
- left: Math.max(0, d),
497
- width: Math.max(0, f),
498
- height: Math.max(0, p),
499
- offsetLeftAxis: i,
500
- offsetRightAxis: a,
501
- scaleLabelsWidth: o,
502
- yAxisLabelWidth: s
503
- };
504
- }), mr = x(() => {
505
- let { left: e, top: t, width: n, height: r } = W.value, i = q.value.start, a = q.value.end, o = Math.max(1, a - i), s = Math.max(0, Math.min(o, (J.value.start ?? i) - i)), c = Math.max(0, Math.min(o, (J.value.end ?? a) - i)), l = Math.max(0, c - s), u = {
506
- fill: B.value.style.chart.zoom.preview.fill,
507
- stroke: B.value.style.chart.zoom.preview.stroke,
508
- "stroke-width": B.value.style.chart.zoom.preview.strokeWidth,
509
- "stroke-dasharray": B.value.style.chart.zoom.preview.strokeDasharray,
510
- "stroke-linecap": "round",
511
- "stroke-linejoin": "round",
512
- style: {
513
- pointerEvents: "none",
514
- transition: "none !important",
515
- animation: "none !important"
516
- }
517
- }, d = n / o;
518
- return {
519
- x: e + s * d,
520
- y: t,
521
- width: l * d,
522
- height: r,
523
- ...u
524
- };
525
- }), G = x(() => Rn.value.map((e, t) => {
526
- let n = `stackline_serie_${t}`, r = m(e.color) || er.value[t] || te[t] || te[t % te.length];
527
- return {
528
- ...e,
529
- shape: e.shape || "circle",
530
- standalone: !!e.standalone,
531
- series: JSON.parse(JSON.stringify(e.series)).map((e) => B.value.style.chart.lines.distributed ? Math.abs(e) : e),
532
- seriesSource: e.series,
533
- signedSeries: e.series.map((e) => e >= 0 ? 1 : -1),
534
- absoluteIndex: t,
535
- id: n,
536
- color: r
537
- };
538
- })), hr = x(() => G.value.filter((e) => !R.value.includes(e.id) && !e.standalone)), gr = x(() => G.value.filter((e) => !R.value.includes(e.id) && e.standalone)), K = x(() => {
539
- let e = Math.max(...G.value.filter((e) => !R.value.includes(e.id)).map((e) => e.series.length));
540
- return isFinite(e) ? e : Math.max(...G.value.map((e) => e.series.length));
541
- });
542
- function _r(e) {
543
- Nn.value = e;
544
- }
545
- let q = k({
546
- start: 0,
547
- end: Math.max(...Rn.value.map((e) => e.series.length))
548
- }), J = k({
549
- start: 0,
550
- end: Math.max(...Rn.value.map((e) => e.series.length))
551
- });
552
- function vr(e) {
553
- return (q.value.start ?? 0) + (e ?? 0);
554
- }
555
- let yr = x(() => B.value.style.chart.zoom.preview.enable && (J.value.start !== q.value.start || J.value.end !== q.value.end));
556
- function br(e, t) {
557
- J.value[e] = t;
558
- }
559
- function xr() {
560
- let e = K.value, t = Math.max(0, Math.min(q.value.start ?? 0, e - 1)), n = Math.max(t + 1, Math.min(q.value.end ?? e, e));
561
- (!Number.isFinite(t) || !Number.isFinite(n) || n <= t) && (t = 0, n = e), q.value.start = t, q.value.end = n, J.value.start = t, J.value.end = n, rn.value && (rn.value.setStartValue(t), rn.value.setEndValue(n));
562
- }
563
- let Sr = k(null);
564
- function Cr() {
565
- return new Promise((e) => requestAnimationFrame(() => requestAnimationFrame(() => e())));
566
- }
567
- Ge(() => {
568
- Sr.value && cancelAnimationFrame(Sr.value);
569
- });
570
- async function wr({ force: e = !1 } = {}) {
571
- if (B.value.style.chart.zoom.keepState && !e && Zr.value && !(q.value.start === 0 && q.value.end === 0)) {
572
- xr();
573
- return;
574
- }
575
- $r(), await He(), Sr.value && cancelAnimationFrame(Sr.value), Sr.value = requestAnimationFrame(async () => {
576
- await Cr(), $r();
577
- });
578
- }
579
- let Tr = x(() => Math.max(0, W.value.width / (q.value.end - q.value.start))), Er = x(() => d(hr.value.map((e) => ({
580
- ...e,
581
- series: e.series.map((e) => e ?? 0)
582
- }))).slice(q.value.start, q.value.end)), Dr = x(() => R.value.length === G.value.length), Or = x(() => {
583
- if (!B.value.style.chart.zoom.minimap.show) return [];
584
- let e = G.value.filter((e) => Dr.value ? !0 : !R.value.includes(e.id) && !e.standalone);
585
- if (e.length) return d(e.map((e) => ({
586
- ...e,
587
- series: (e.series || []).map((e) => e ?? 0)
588
- })));
589
- let t = gr.value;
590
- if (!t.length) return [];
591
- let n = Math.max(...t.map((e) => e.series.length || 0));
592
- return Array.from({ length: n }, (e, n) => t.reduce((e, t) => e + Math.abs(t.series[n] ?? 0), 0));
593
- }), kr = x(() => {
594
- if (!B.value.style.chart.zoom.minimap.show) return [];
595
- let e = G.value.filter((e) => Dr.value ? !0 : !R.value.includes(e.id) && !e.standalone), t = gr.value, n = e.length ? [{
596
- name: "",
597
- series: Or.value,
598
- color: "#000000",
599
- isVisible: !0
600
- }] : [], r = t.map((e) => ({
601
- name: e.name || "",
602
- series: (e.series || []).map((e) => e ?? 0),
603
- color: e.color,
604
- isVisible: !0
605
- }));
606
- return n.concat(r);
607
- }), Ar = x(() => d(hr.value.filter((e) => !R.value.includes(e.id)).map((e) => ({
608
- ...e,
609
- series: e.series.map((t, n) => {
610
- let r = t ?? 0;
611
- return e.signedSeries[n] === -1 && r >= 0 ? -r : r;
612
- })
613
- }))).slice(q.value.start, q.value.end)), jr = x(() => {
614
- let e = hr.value.filter((e) => !R.value.includes(e.id));
615
- return {
616
- positive: d(e.map((e) => ({
617
- ...e,
618
- series: e.series.slice(q.value.start, q.value.end).map((e) => (e ?? 0) >= 0 ? e ?? 0 : 0)
619
- }))),
620
- negative: d(e.map((e) => ({
621
- ...e,
622
- series: e.series.slice(q.value.start, q.value.end).map((e) => (e ?? 0) < 0 ? e ?? 0 : 0)
623
- })))
624
- };
625
- }), Mr = x(() => {
626
- let e = Math.max(0, q.value.end - q.value.start), t = Array(e).fill(0), n = Array(e).fill(0);
627
- return gr.value.forEach((r) => {
628
- for (let i = 0; i < e; i += 1) {
629
- let e = r.series[q.value.start + i] ?? 0;
630
- e > 0 && (t[i] = Math.max(t[i], e)), e < 0 && (n[i] = Math.min(n[i], e));
631
- }
632
- }), {
633
- positive: t,
634
- negative: n
635
- };
636
- }), Nr = x(() => Ar.value.map((e, t) => ({
637
- value: e,
638
- sign: e >= 0 ? 1 : -1
639
- })));
640
- function Pr() {
641
- return { y0: Ir.value?.[0]?.zero ?? W.value.bottom };
642
- }
643
- function Fr(e) {
644
- let { y0: t } = Pr(), n = B.value.style.chart.lines.totalValues, r = Math.max(2, n.fontSize * 1.3 + n.offsetY), i = (e) => Math.min(Math.max(e, W.value.top - B.value.style.chart.lines.totalValues.fontSize * 1.3), W.value.bottom + B.value.style.chart.lines.totalValues.fontSize * 2);
645
- if ((Nr.value?.[e]?.value ?? 0) >= 0 || B.value.style.chart.lines.distributed) {
646
- let n = Infinity;
647
- for (let t of Y.value || []) {
648
- let r = t?.series?.[e], i = t?.topY?.[e];
649
- (r ?? 0) > 0 && Number.isFinite(i) && i < n && (n = i);
650
- }
651
- return i((Number.isFinite(n) ? n : t) - r - B.value.style.chart.lines.totalValues.offsetY);
652
- } else {
653
- let a = -Infinity;
654
- for (let t of Y.value || []) {
655
- let n = t?.series?.[e], r = t?.topY?.[e];
656
- (n ?? 0) < 0 && Number.isFinite(r) && r > a && (a = r);
657
- }
658
- return i((Number.isFinite(a) ? a : t) + r + n.fontSize * .7 + B.value.style.chart.lines.totalValues.offsetY);
659
- }
660
- }
661
- let Ir = x(() => {
662
- let e = Math.max(...jr.value.positive, 0), t = Math.min(...jr.value.negative, 0), n = Math.max(...Mr.value.positive, 0), r = Math.min(...Mr.value.negative, 0), i = Math.max(e, n), a = Math.min(t, r), o = [
663
- -Infinity,
664
- Infinity,
665
- NaN,
666
- void 0,
667
- null
668
- ].includes(a) ? 0 : a, s = B.value.style.chart.grid.scale.scaleMin, c = B.value.style.chart.grid.scale.scaleMax, l = !B.value.style.chart.lines.distributed && (s !== null || c !== null), u = s !== null && !B.value.style.chart.lines.distributed ? s : o > 0 ? 0 : o, d = c !== null && !B.value.style.chart.lines.distributed ? c : i < 0 ? 0 : i, f = l ? h(u, d, B.value.style.chart.grid.scale.ticks) : g(u, d, B.value.style.chart.grid.scale.ticks), p = Math.abs(Number(f.min) || 0), m = (Number(f.max) || 0) + p, _ = m === 0 || !Number.isFinite(m) ? 1 : m, v = Array.isArray(f.ticks) && f.ticks.length ? f.ticks : [0], ee = W.value.bottom - W.value.height * (p / _);
669
- return v.map((e) => {
670
- let t = Number(e) || 0;
671
- return {
672
- zero: ee,
673
- y: W.value.bottom - W.value.height * ((t + p) / _),
674
- x: or.value ? X.value.right + 8 : X.value.left - 8,
675
- value: t
676
- };
677
- });
678
- }), Lr = k([]), Rr = k([]), zr = 0;
679
- $e(() => {
680
- let e = ++zr;
681
- (async () => {
682
- let t = await pe({
683
- values: B.value.style.chart.grid.x.timeLabels.values,
684
- maxDatapoints: K.value,
685
- formatter: B.value.style.chart.grid.x.timeLabels.datetimeFormatter,
686
- start: q.value.start,
687
- end: q.value.end
688
- });
689
- e === zr && (Lr.value = t);
690
- })();
691
- });
692
- let Br = 0;
693
- $e(() => {
694
- let e = ++Br;
695
- (async () => {
696
- let t = await pe({
697
- values: B.value.style.chart.grid.x.timeLabels.values,
698
- maxDatapoints: K.value,
699
- formatter: B.value.style.chart.grid.x.timeLabels.datetimeFormatter,
700
- start: 0,
701
- end: K.value
702
- });
703
- e === Br && (Rr.value = t);
704
- })();
705
- });
706
- let Vr = x(() => {
707
- let e = B.value.style.chart.grid.x.timeLabels.modulo;
708
- return Lr.value.length ? Math.min(e, [...new Set(Lr.value.map((e) => e.text))].length) : e;
709
- }), Hr = x(() => {
710
- let e = B.value.style.chart.grid.x.timeLabels, t = Lr.value || [], n = Rr.value || [], r = q.value.start ?? 0, i = $.value, a = K.value, o = t.map((e) => e?.text ?? ""), s = n.map((e) => e?.text ?? "");
711
- return ie(!!e.showOnlyFirstAndLast, !!e.showOnlyAtModulo, Math.max(1, Vr.value || 1), o, s, r, i, a);
712
- });
713
- $e(() => {
714
- B.value.style.chart.grid.x.timeLabels.show, B.value.style.chart.grid.x.timeLabels.fontSize, B.value.style.chart.grid.x.timeLabels.rotation, B.value.style.chart.grid.x.timeLabels.offsetY, (Hr.value || []).map((e) => e?.text ?? "").join("|"), U.value.width, U.value.height, xn.value, vn.value, fr();
715
- }, { flush: "post" });
716
- let Ur = k({
717
- months: [],
718
- shortMonths: [],
719
- days: [],
720
- shortDays: []
721
- }), Wr = 0;
722
- $e(() => {
723
- let e = ++Wr, t = B.value.style.chart.grid.x.timeLabels.datetimeFormatter;
724
- (async () => {
725
- let n = await fe(t.locale).catch(() => fe("en"));
726
- e === Wr && (Ur.value = n.data);
727
- })();
728
- });
729
- let Gr = x(() => {
730
- let e = B.value.style.chart.grid.x.timeLabels.datetimeFormatter, t = de({
731
- useUTC: e.useUTC,
732
- locale: Ur.value,
733
- januaryAsYear: e.januaryAsYear
734
- });
735
- return (e, n) => {
736
- let r = B.value.style.chart.grid.x.timeLabels.values?.[e];
737
- return r == null ? "" : t.formatDate(new Date(r), n);
738
- };
739
- }), Kr = x(() => (B.value.style.chart.grid.x.timeLabels.values || []).map((e, t) => ({
740
- text: Gr.value(t, B.value.style.chart.zoom.timeFormat),
741
- absoluteIndex: t
742
- }))), qr = x(() => (B.value.style.chart.grid.x.timeLabels.values || []).map((e, t) => ({
743
- text: Gr.value(t, B.value.style.chart.tooltip.timeFormat),
744
- absoluteIndex: t
745
- }))), Jr = x(() => {
746
- if (!Qt.value && !Ln.value) return [];
747
- let e = W.value.height, t = Ir.value[0] ? Ir.value[0].zero : W.value.bottom, n = q.value.start ?? 0, r = q.value.end ?? 0, i = Math.max(1, r - n), a = Math.max(...jr.value.positive, 0), o = Math.min(...jr.value.negative, 0), s = Math.max(...Mr.value.positive, 0), c = Math.min(...Mr.value.negative, 0), l = Math.max(a, s), u = Math.min(o, c), { min: d, max: f } = !B.value.style.chart.lines.distributed && (B.value.style.chart.grid.scale.scaleMax !== null || B.value.style.chart.grid.scale.scaleMin !== null) ? h(B.value.style.chart.grid.scale.scaleMin === null ? u > 0 ? 0 : u : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? l < 0 ? 0 : l : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks) : g(B.value.style.chart.grid.scale.scaleMin === null ? u > 0 ? 0 : u : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? l < 0 ? 0 : l : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks), p = f + (d >= 0 ? 0 : Math.abs(d)) || 1, m = Array(i).fill(0), _ = Array(i).fill(0), v = (e) => i <= 1 ? W.value.left + W.value.width / 2 : W.value.left + e / (i - 1) * W.value.width;
748
- return G.value.filter((e) => !R.value.includes(e.id)).map((r) => {
749
- let a = [], o = [], s = [], c = Array(i).fill(null), l = Array(i).fill(null);
750
- for (let u = 0; u < i; u += 1) {
751
- let i = n + u, d = r.series?.[i], f = r.signedSeries?.[i], h = d == null || Number.isNaN(d) ? 0 : d, g = r.standalone ? h / p : B.value.style.chart.lines.distributed ? h / (Er.value[u] || 1) : h / p;
752
- if (h >= 0) {
753
- let n = e * Math.abs(g);
754
- if (r.standalone) c[u] = t, l[u] = t - n;
755
- else {
756
- let e = m[u], r = e + n;
757
- c[u] = t - e, l[u] = t - r, m[u] = r;
758
- }
759
- } else {
760
- let n = e * Math.abs(g);
761
- if (r.standalone) c[u] = t, l[u] = t + n;
762
- else {
763
- let e = _[u], r = e + n;
764
- c[u] = t + e, l[u] = t + r, _[u] = r;
765
- }
766
- }
767
- a.push(u), o.push(h), s.push(f ?? (h >= 0 ? 1 : -1));
768
- }
769
- let u = a.map((e) => ({
770
- x: v(e),
771
- y: l[e]
772
- })), d = u.map((e) => e.x), f = o.reduce((e, t) => e + Math.abs(t || 0), 0), h = f === 0 ? 1 : f, g = o.map((e, t) => {
773
- if (B.value.style.chart.lines.distributed && !r.standalone) {
774
- let n = a[t], r = Er.value[n] || 1;
775
- return (e || 0) / r;
776
- }
777
- return (e || 0) / h;
778
- });
779
- return {
780
- ...r,
781
- x: d,
782
- points: u,
783
- baseY: a.map((e) => c[e]),
784
- topY: a.map((e) => l[e]),
785
- series: o,
786
- signedSeries: s,
787
- proportions: g,
788
- rel: a,
789
- fullSeries: Array.isArray(r.fullSeries) ? r.fullSeries : r.series
790
- };
791
- });
792
- }), Y = x(() => {
793
- let e = (e) => typeof e == "string" ? e.replace(/^M\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*,?\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*/i, "").trim() : "", t = Math.max(...jr.value.positive, 0), n = Math.min(...jr.value.negative, 0), r = Math.max(...Mr.value.positive, 0), i = Math.min(...Mr.value.negative, 0), a = Math.max(t, r), o = Math.min(n, i), c = !B.value.style.chart.lines.distributed && (B.value.style.chart.grid.scale.scaleMax !== null || B.value.style.chart.grid.scale.scaleMin !== null) ? h(B.value.style.chart.grid.scale.scaleMin === null ? o > 0 ? 0 : o : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? a < 0 ? 0 : a : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks) : g(B.value.style.chart.grid.scale.scaleMin === null ? o > 0 ? 0 : o : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? a < 0 ? 0 : a : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks), l = Number(c.min) || 0, u = Number(c.max) || 0, d = Math.abs(l), f = u + d || 1, p = (e) => {
794
- if (B.value.style.chart.lines.distributed) {
795
- let t = Math.max(0, Math.min(1, e));
796
- return minimapH - minimapH * t;
797
- }
798
- return clampY(minimapH - minimapH * (((e ?? 0) + d) / f));
799
- };
800
- return Jr.value.map((t) => {
801
- let n = t.x.length, r = Array.isArray(t.fullSeries) ? t.fullSeries : t.series, i = ({ left: e = 0, unitW: t }) => {
802
- let n = r.length;
803
- return !Number.isFinite(t) || t <= 0 || n <= 0 ? [] : n === 1 ? [e + t * .5] : r.map((n, r) => e + r * t);
804
- }, a = ({ minimapH: e }) => !Number.isFinite(e) || e <= 0 ? [] : r.map((t) => p(t || 0, e)), o = ({ minimapH: e }) => {
805
- if (!Number.isFinite(e) || e <= 0) return [];
806
- let t = p(0, e);
807
- return r.map(() => t);
808
- };
809
- if (n === 0) return {
810
- ...t,
811
- points: [],
812
- smoothPath: "",
813
- straightPath: "",
814
- smoothArea: "",
815
- straightArea: "",
816
- xMinimap: i,
817
- yMinimap: a,
818
- yMinimapBase: o
819
- };
820
- let c = t.x.map((e, n) => ({
821
- x: e,
822
- y: t.topY[n]
823
- })), l = t.x.map((e, n) => ({
824
- x: e,
825
- y: t.baseY[n]
826
- })), u = n >= 2 ? ee(c) : `M${c[0].x},${c[0].y}`, d = n >= 2 ? s(c) : `M${c[0].x},${c[0].y}`, f = n >= 2 ? `M${e(u)}` : u, m = n >= 2 ? `M${e(d)}` : d, h = "", g = "";
827
- if (B.value.style.chart.lines.useArea && n >= 2) {
828
- let t = ee([...l].reverse()), n = s([...l].reverse()), r = l[l.length - 1];
829
- h = `M${c[0].x},${c[0].y} ${e(u)} L${r.x},${r.y} ${e(t)} Z`, g = `M${c[0].x},${c[0].y} ${e(d)} L${r.x},${r.y} ${e(n)} Z`;
830
- }
831
- return {
832
- ...t,
833
- points: c,
834
- smoothPath: f,
835
- straightPath: m,
836
- smoothArea: h,
837
- straightArea: g,
838
- xMinimap: i,
839
- yMinimap: a,
840
- yMinimapBase: o
841
- };
842
- });
843
- }), Yr = x(() => $.value === null || $.value === void 0 ? null : {
844
- timeLabel: pi($.value),
845
- absoluteIndex: $.value + q.value.start,
846
- seriesIndex: $.value,
847
- datapoint: fi.value,
848
- series: Y.value,
849
- config: B.value
850
- }), Xr = k(!1), Zr = k(!1);
851
- function Qr(e) {
852
- let t = K.value;
853
- return e > t ? t : e < 0 || e < q.value.start ? B.value.style.chart.zoom.startIndex === null ? 1 : q.value.start + 1 : e;
854
- }
855
- function $r() {
856
- if (!Xr.value) {
857
- Xr.value = !0;
858
- try {
859
- let { startIndex: e, endIndex: t, keepState: n } = B.value.style.chart.zoom, r = n ? Math.max(0, K.value) : K.value;
860
- if (n && r <= 0) return;
861
- let i = e ?? 0, a = t == null ? r : Math.min(Qr(t + 1), r);
862
- ni.value = !0, q.value.start = i, q.value.end = a, J.value.start = i, J.value.end = a, xr(), Zr.value = !0;
863
- } finally {
864
- queueMicrotask(() => {
865
- ni.value = !1;
866
- }), Xr.value = !1;
867
- }
868
- }
869
- }
870
- function ei(e) {
871
- Xr.value || ni.value || e !== q.value.start && (q.value.start = e, J.value.start = e, xr());
872
- }
873
- function ti(e) {
874
- if (Xr.value || ni.value) return;
875
- let t = Qr(e);
876
- t !== q.value.end && (q.value.end = t, J.value.end = t, xr());
877
- }
878
- let X = x(() => ({
879
- left: W.value.left,
880
- right: W.value.right,
881
- width: W.value.width
882
- }));
883
- Qe([
884
- x(() => {
885
- let e = B.value.style.chart.grid.y.axisLabels, { prefix: t, suffix: n } = B.value.style.chart.lines.dataLabels;
886
- return Ir.value.map((r) => String(_(e.formatter, r.value, re({
887
- p: t,
888
- v: r.value,
889
- s: n,
890
- r: e.rounding
891
- }), { datapoint: r }) ?? "")).join("|");
892
- }),
893
- () => B.value.style.chart.grid.y.axisLabels.show,
894
- () => B.value.style.chart.grid.y.axisLabels.fontSize,
895
- () => B.value.style.chart.grid.y.axisLabels.bold,
896
- () => B.value.style.chart.grid.y.position
897
- ], () => {
898
- B.value.style.chart.grid.y.axisLabels.show && Mn();
899
- }, { flush: "post" });
900
- let ni = k(!1);
901
- Se({
902
- timeLabelsEls: xn,
903
- timeLabels: Lr,
904
- slicer: q,
905
- configRef: B,
906
- rotationPath: [
907
- "style",
908
- "chart",
909
- "grid",
910
- "x",
911
- "timeLabels",
912
- "rotation"
913
- ],
914
- autoRotatePath: [
915
- "style",
916
- "chart",
917
- "grid",
918
- "x",
919
- "timeLabels",
920
- "autoRotate",
921
- "enable"
922
- ],
923
- isAutoSize: !1,
924
- width: x(() => U.value.width),
925
- height: x(() => U.value.height),
926
- rotation: B.value.style.chart.grid.x.timeLabels.autoRotate.angle
927
- });
928
- let ri = k(null);
929
- function ii(e) {
930
- let t = Un.value;
931
- if (!t) return null;
932
- if (t.createSVGPoint && t.getScreenCTM) {
933
- let n = t.createSVGPoint();
934
- n.x = e.clientX, n.y = e.clientY;
935
- let r = t.getScreenCTM();
936
- if (r) {
937
- let e = n.matrixTransform(r.inverse());
938
- return {
939
- x: e.x,
940
- y: e.y,
941
- ok: !0
942
- };
943
- }
944
- }
945
- let n = t.getBoundingClientRect(), r = t.viewBox?.baseVal || {
946
- x: 0,
947
- y: 0,
948
- width: n.width,
949
- height: n.height
950
- }, i = Math.min(n.width / r.width, n.height / r.height), a = r.width * i, o = r.height * i, s = (n.width - a) / 2, c = (n.height - o) / 2;
951
- return {
952
- x: (e.clientX - n.left - s) / i + r.x,
953
- y: (e.clientY - n.top - c) / i + r.y,
954
- ok: !0
955
- };
956
- }
957
- let ai = 0, Z = x(() => Math.max(1, q.value.end - q.value.start)), oi = x(() => Z.value > 1 ? W.value.width / (Z.value - 1) : 0);
958
- function Q(e) {
959
- return Z.value <= 1 ? W.value.left + W.value.width / 2 : W.value.left + e * oi.value;
960
- }
961
- function si(e) {
962
- if (Z.value <= 1) return {
963
- x: W.value.left,
964
- width: W.value.width
965
- };
966
- let t = e === 0 ? W.value.left : (Q(e - 1) + Q(e)) / 2, n = e === Z.value - 1 ? W.value.left + W.value.width : (Q(e) + Q(e + 1)) / 2;
967
- return {
968
- x: t,
969
- width: Math.max(0, n - t)
970
- };
971
- }
972
- function ci(e) {
973
- Pn.value || (ai && cancelAnimationFrame(ai), ai = requestAnimationFrame(() => {
974
- ai = 0;
975
- let t = ii(e);
976
- if (!t || !Un.value) {
977
- di();
978
- return;
979
- }
980
- let { left: n, right: r, top: i, bottom: a } = W.value;
981
- if (t.x < n || t.x > r || t.y < i || t.y > a) {
982
- di();
983
- return;
984
- }
985
- let o = 0;
986
- if (Z.value > 1) {
987
- let e = (t.x - n) / oi.value;
988
- o = Math.round(e);
989
- } else o = 0;
990
- o < 0 && (o = 0), o > Z.value - 1 && (o = Z.value - 1), ri.value !== o && (ri.value = o, hi(!0, o));
991
- }));
992
- }
993
- function li(e) {
994
- let t = ii(e);
995
- if (!t || !Un.value) return;
996
- let { left: n, right: r, top: i, bottom: a } = W.value;
997
- if (t.x < n || t.x > r || t.y < i || t.y > a) return;
998
- let o = 0;
999
- if (Z.value > 1) {
1000
- let e = (t.x - n) / oi.value;
1001
- o = Math.round(e);
1002
- } else o = 0;
1003
- o < 0 && (o = 0), o > Z.value - 1 && (o = Z.value - 1), Ji({
1004
- seriesIndex: o,
1005
- datapoint: Bi(o)
1006
- }), ui(o);
1007
- }
1008
- function ui(e) {
1009
- let t = JSON.parse(JSON.stringify(Y.value)).map((t) => ({
1010
- name: t.name,
1011
- value: t.series[e] === 0 ? 0 : t.series[e] || null,
1012
- proportion: t.proportions[e] || null,
1013
- color: t.color,
1014
- id: t.id
1015
- }));
1016
- B.value.events.datapointClick && B.value.events.datapointClick({
1017
- datapoint: t,
1018
- seriesIndex: e + q.value.start
1019
- }), F("selectDatapoint", {
1020
- datapoint: t,
1021
- period: Lr.value[e]
1022
- });
1023
- }
1024
- Qe(() => [
1025
- q.value.start,
1026
- q.value.end,
1027
- Y.value.length
1028
- ], () => {
1029
- let e = Z.value;
1030
- if ($.value != null) {
1031
- if (e <= 0) {
1032
- $.value = null;
1033
- return;
1034
- }
1035
- $.value < 0 && ($.value = 0), $.value > e - 1 && ($.value = e - 1);
1036
- }
1037
- });
1038
- function di() {
1039
- ai &&= (cancelAnimationFrame(ai), 0), ri.value = null, hi(!1, null);
1040
- }
1041
- let $ = k(null), fi = x(() => {
1042
- let e = $.value, t = e == null ? null : vr(e);
1043
- return Y.value.map((n) => ({
1044
- slotAbsoluteIndex: n.absoluteIndex,
1045
- shape: n.shape || "circle",
1046
- name: n.name,
1047
- color: n.color,
1048
- value: e == null ? null : n.series.find((t, n) => n === e),
1049
- sourceValue: t == null ? null : n.seriesSource?.[t],
1050
- comments: n.comments || [],
1051
- id: n.id,
1052
- standalone: !!n.standalone
1053
- }));
1054
- });
1055
- function pi(e) {
1056
- if (e == null || !B.value.style.chart.tooltip.showTimeLabel) return null;
1057
- let t = Lr.value?.[e]?.text || null, n = qr.value?.[e]?.text || null, r = Rr.value?.[e]?.text || null;
1058
- return B.value.style.chart.tooltip.useDefaultTimeFormat ? t : n || r;
1059
- }
1060
- let mi = x(() => {
1061
- let e = B.value.style.chart.tooltip.customFormat, t = [...fi.value].reverse(), n = t.filter((e) => !e.standalone), i = t.filter((e) => e.standalone), a = n.map((e) => e.value).filter((e) => ue(e) && e !== null).reduce((e, t) => Math.abs(e) + Math.abs(t), 0);
1062
- if (ce(e) && ne(() => e({
1063
- absoluteIndex: $.value + q.value.start,
1064
- seriesIndex: $.value,
1065
- datapoint: fi.value,
1066
- series: G.value,
1067
- config: B.value
1068
- }))) return e({
1069
- absoluteIndex: $.value + q.value.start,
1070
- seriesIndex: $.value,
1071
- datapoint: fi.value,
1072
- series: G.value,
1073
- config: B.value
1074
- });
1075
- let { showValue: o, showTotal: s, totalTranslation: c, showPercentage: l, borderColor: u, roundingValue: d, roundingPercentage: f } = B.value.style.chart.tooltip, p = (e) => !e.shape || ![
1076
- "star",
1077
- "triangle",
1078
- "square",
1079
- "diamond",
1080
- "pentagon",
1081
- "hexagon"
1082
- ].includes(e.shape) ? `<svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" fill="${e.color}" /></svg>` : e.shape === "star" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><polygon stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" fill="${e.color}" points="${r({
1083
- plot: {
1084
- x: 6,
1085
- y: 6
1086
- },
1087
- radius: 5
1088
- })}" /></svg>` : e.shape === "triangle" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${y({
1089
- plot: {
1090
- x: 6,
1091
- y: 6
1092
- },
1093
- radius: 6,
1094
- sides: 3,
1095
- rotation: .52
1096
- }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : e.shape === "square" ? `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${y({
1097
- plot: {
1098
- x: 6,
1099
- y: 6
1100
- },
1101
- radius: 6,
1102
- sides: 4,
1103
- rotation: .8
1104
- }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : e.shape === "diamond" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${y({
1105
- plot: {
1106
- x: 6,
1107
- y: 6
1108
- },
1109
- radius: 5,
1110
- sides: 4,
1111
- rotation: 0
1112
- }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : e.shape === "pentagon" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${y({
1113
- plot: {
1114
- x: 6,
1115
- y: 6
1116
- },
1117
- radius: 5,
1118
- sides: 5,
1119
- rotation: .95
1120
- }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${y({
1121
- plot: {
1122
- x: 6,
1123
- y: 6
1124
- },
1125
- radius: 5,
1126
- sides: 6,
1127
- rotation: 0
1128
- }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`, m = (e, t) => {
1129
- let n = t ? re({
1130
- v: isNaN((e.value ?? 0) / (a || 1)) ? 0 : Math.abs(e.value ?? 0) / (a || 1) * 100,
1131
- s: "%",
1132
- r: f
1133
- }) : "", r = o && t ? "(" : "", i = o && t ? ")" : "";
1134
- return `
1135
- <div style="display:flex;flex-direction:row;align-items:center;gap:4px">
1136
- <div style="width:20px;height:20px;display:flex;align-items:center;justify-content:center;">${p(e)}</div>
1137
- ${e.name}${o || t ? ":" : ""}
1138
- ${o ? _(B.value.style.chart.lines.dataLabels.formatter, e.sourceValue, re({
1139
- p: B.value.style.chart.lines.dataLabels.prefix,
1140
- v: e.sourceValue,
1141
- s: B.value.style.chart.lines.dataLabels.suffix,
1142
- r: d
1143
- }, { datapoint: e })) : ""} ${r}${n}${i}
1144
- </div>
1145
- `;
1146
- }, h = "", g = pi($.value);
1147
- return g && (h += `<div style="width:100%;text-align:center;border-bottom:1px solid ${u};padding-bottom:6px;margin-bottom:3px;">${g}</div>`), s && n.length > 1 && (h += `<div class="vue-data-ui-tooltip-total" style="display:flex;flex-direction:row;align-items:center;gap:4px">
1148
- <span>${c}:</span>
1149
- <span>${_(B.value.style.chart.lines.dataLabels.formatter, v(a), re({
1150
- p: B.value.style.chart.lines.dataLabels.prefix,
1151
- v: v(a),
1152
- s: B.value.style.chart.lines.dataLabels.suffix,
1153
- r: d
1154
- }), { datapoint: {
1155
- name: c,
1156
- value: v(a)
1157
- } })}</span>
1158
- </div>`), n.forEach((e) => {
1159
- h += m(e, l);
1160
- }), i.length && (h += `<div style="border-top:1px solid ${hr.value.length ? u : "transparent"}; margin:${hr.value.length ? "6px 0" : "0"};"></div>`, i.forEach((e) => {
1161
- h += m(e, !1);
1162
- })), `<div>${h}</div>`;
1163
- });
1164
- function hi(e, t = null, n = "pointer") {
1165
- if (Dr.value) return;
1166
- On.value = n, $t.value = e;
1167
- let r = Y.value.map((e) => ({
1168
- name: e.name,
1169
- value: [
1170
- null,
1171
- void 0,
1172
- NaN
1173
- ].includes(e.series[t]) ? null : e.series[t],
1174
- color: e.color
1175
- }));
1176
- e ? (z.value = t, $.value = t, Ji({
1177
- seriesIndex: t,
1178
- datapoint: r
1179
- }), B.value.events.datapointEnter && B.value.events.datapointEnter({
1180
- datapoint: r,
1181
- seriesIndex: t + q.value.start
1182
- })) : (z.value = null, $.value = null, F("selectX", {
1183
- index: null,
1184
- indexLabel: null,
1185
- dataset: null
1186
- }), B.value.events.datapointLeave && B.value.events.datapointLeave({
1187
- datapoint: r,
1188
- seriesIndex: t + q.value.start
1189
- }));
1190
- }
1191
- function gi(e, t) {
1192
- F("selectTimeLabel", {
1193
- datapoint: JSON.parse(JSON.stringify(Y.value)).map((e) => ({
1194
- name: e.name,
1195
- value: e.series[t] === 0 ? 0 : (e.signedSeries[t] === -1 && e.series[t] >= 0 ? -e.series[t] : e.series[t]) || null,
1196
- proportion: e.proportions[t] || null,
1197
- color: e.color,
1198
- id: e.id
1199
- })),
1200
- absoluteIndex: e.absoluteIndex,
1201
- label: e.text
1202
- });
1203
- }
1204
- function _i() {
1205
- R.value.length ? R.value = [] : yi.value.forEach((e) => {
1206
- R.value.push(e.id);
1207
- }), F("selectLegend", Y.value);
1208
- }
1209
- function vi(e) {
1210
- if (R.value.includes(e.id)) R.value = R.value.filter((t) => t !== e.id);
1211
- else {
1212
- if (R.value.length === G.value.length - 1) return;
1213
- R.value.push(e.id);
1214
- }
1215
- F("selectLegend", Y.value);
1216
- }
1217
- let yi = x(() => G.value.map((e) => ({
1218
- ...e,
1219
- opacity: R.value.includes(e.id) ? .5 : 1,
1220
- segregate: () => vi(e),
1221
- isSegregated: R.value.includes(e.id)
1222
- }))), bi = x(() => ({
1223
- cy: "stackline-legend",
1224
- backgroundColor: B.value.style.chart.legend.backgroundColor,
1225
- color: B.value.style.chart.legend.color,
1226
- fontSize: B.value.style.chart.legend.fontSize,
1227
- paddingBottom: 12,
1228
- fontWeight: B.value.style.chart.legend.bold ? "bold" : ""
1229
- }));
1230
- function xi(e) {
1231
- return G.value.length ? G.value.find((t) => t.name === e) || (B.value.debug && console.warn(`VueUiStackline - Series name not found "${e}"`), null) : (B.value.debug && console.warn("VueUiStackline - There are no series to show."), null);
1232
- }
1233
- function Si(e) {
1234
- let t = xi(e);
1235
- t !== null && R.value.includes(t.id) && vi({ id: t.id });
1236
- }
1237
- function Ci(e) {
1238
- let t = xi(e);
1239
- t !== null && (R.value.includes(t.id) || vi({ id: t.id }));
1240
- }
1241
- let wi = x(() => {
1242
- if (Y.value.length === 0) return {
1243
- head: [],
1244
- body: [],
1245
- config: {},
1246
- columnNames: []
1247
- };
1248
- let e = Y.value.map(({ name: e, color: t }) => ({
1249
- label: e,
1250
- color: t
1251
- })), t = [];
1252
- return Hr.value.forEach((e) => {
1253
- let n = e.absoluteIndex, r = [B.value.style.chart.grid.x.timeLabels.values?.[n] ? e.text : n + 1];
1254
- G.value.forEach((e) => {
1255
- let t = e.series?.[n], i = Number((t ?? 0).toFixed(B.value.table.td.roundingValue));
1256
- r.push(i);
1257
- }), t.push(r);
1258
- }), {
1259
- head: e,
1260
- body: t
1261
- };
1262
- });
1263
- function Ti(e = null) {
1264
- let t = [
1265
- [B.value.style.chart.title.text],
1266
- [B.value.style.chart.title.subtitle.text],
1267
- [""]
1268
- ], n = ["", ...wi.value.head.map((e) => e.label)], r = wi.value.body, i = le(t.concat([n]).concat(r));
1269
- e ? e(i) : p({
1270
- csvContent: i,
1271
- title: B.value.style.chart.title.text || "vue-ui-stackline"
1272
- });
1273
- }
1274
- let Ei = x(() => {
1275
- let e = [""].concat(Y.value.map((e) => e.name), " <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2\" /></svg>"), t = [], n = Math.max(0, q.value.end - q.value.start);
1276
- for (let e = 0; e < n; e += 1) {
1277
- let n = vr(e), r = B.value.style.chart.grid.x.timeLabels.values?.[n] ? Lr.value?.[e]?.text ?? n + 1 : n + 1, i = Y.value.map((t) => {
1278
- let n = t.series?.[e] ?? 0;
1279
- return Number(n.toFixed(B.value.table.td.roundingValue));
1280
- }), a = Y.value.filter((e) => !e.standalone).map((t) => t.series?.[e] ?? 0).reduce((e, t) => e + t, 0);
1281
- t.push([r].concat(i, Number(a.toFixed(B.value.table.td.roundingValue))));
1282
- }
1283
- return {
1284
- head: e,
1285
- body: t,
1286
- config: {
1287
- th: {
1288
- backgroundColor: B.value.table.th.backgroundColor,
1289
- color: B.value.table.th.color,
1290
- outline: B.value.table.th.outline
1291
- },
1292
- td: {
1293
- backgroundColor: B.value.table.td.backgroundColor,
1294
- color: B.value.table.td.color,
1295
- outline: B.value.table.td.outline
1296
- },
1297
- breakpoint: B.value.table.responsiveBreakpoint
1298
- },
1299
- colNames: [B.value.table.columnNames.period].concat(Y.value.map((e) => e.name), B.value.table.columnNames.total)
1300
- };
1301
- }), Di = x(() => B.value.style.chart.backgroundColor), Oi = x(() => B.value.style.chart.legend), { exportSvg: ki, getSvg: Ai } = ve({
1302
- svg: Un,
1303
- title: x(() => B.value.style.chart.title),
1304
- legend: Oi,
1305
- legendItems: yi,
1306
- backgroundColor: Di
1307
- });
1308
- async function ji({ isCb: e }) {
1309
- _n.value = !0, await He();
1310
- try {
1311
- if (e) {
1312
- let { blob: e, url: t, text: n, dataUrl: r } = await Ai();
1313
- await Promise.resolve(B.value.userOptions.callbacks.svg({
1314
- blob: e,
1315
- url: t,
1316
- text: n,
1317
- dataUrl: r
1318
- }));
1319
- } else await Promise.resolve(ki());
1320
- } finally {
1321
- _n.value = !1;
1322
- }
1323
- }
1324
- async function Mi({ scale: e = 2 } = {}) {
1325
- if (!I.value) return;
1326
- let { width: t, height: n } = I.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await Ce({
1327
- domElement: I.value,
1328
- base64: !0,
1329
- img: !0,
1330
- scale: e
1331
- });
1332
- return {
1333
- imageUri: i,
1334
- base64: a,
1335
- title: B.value.style.chart.title.text,
1336
- width: t,
1337
- height: n,
1338
- aspectRatio: r
1339
- };
1340
- }
1341
- let Ni = x(() => {
1342
- let e = B.value.table.useDialog && !B.value.table.show, t = H.value.showTable;
1343
- return {
1344
- component: e ? qt : Ht,
1345
- title: `${B.value.style.chart.title.text}${B.value.style.chart.title.subtitle.text ? `: ${B.value.style.chart.title.subtitle.text}` : ""}`,
1346
- props: e ? {
1347
- backgroundColor: B.value.table.th.backgroundColor,
1348
- color: B.value.table.th.color,
1349
- headerColor: B.value.table.th.color,
1350
- headerBg: B.value.table.th.backgroundColor,
1351
- isFullscreen: sn.value,
1352
- fullscreenParent: I.value,
1353
- forcedWidth: Math.min(800, window.innerWidth * .8),
1354
- isCursorPointer: V.value
1355
- } : {
1356
- hideDetails: !0,
1357
- config: {
1358
- open: t,
1359
- maxHeight: 1e4,
1360
- body: {
1361
- backgroundColor: B.value.style.chart.backgroundColor,
1362
- color: B.value.style.chart.color
1363
- },
1364
- head: {
1365
- backgroundColor: B.value.style.chart.backgroundColor,
1366
- color: B.value.style.chart.color
1367
- }
1368
- }
1369
- }
1370
- };
1371
- });
1372
- Qe(() => H.value.showTable, (e) => {
1373
- B.value.table.show || (e && B.value.table.useDialog && pn.value ? pn.value.open() : "close" in pn.value && pn.value.close());
1374
- });
1375
- function Pi() {
1376
- H.value.showTable = !1, mn.value && mn.value.setTableIconState(!1);
1377
- }
1378
- function Fi(e) {
1379
- sn.value = e, en.value += 1;
1380
- }
1381
- function Ii() {
1382
- H.value.showTable = !H.value.showTable;
1383
- }
1384
- function Li() {
1385
- H.value.dataLabels.show = !H.value.dataLabels.show;
1386
- }
1387
- function Ri() {
1388
- H.value.showTooltip = !H.value.showTooltip;
1389
- }
1390
- function zi() {
1391
- return Y.value;
1392
- }
1393
- function Bi(e) {
1394
- let t = e ?? 0, n = vr(t);
1395
- return JSON.parse(JSON.stringify(Y.value)).map((e) => {
1396
- let r = e.series[t], i = e.signedSeries?.[t], a = r === 0 ? 0 : (i === -1 && r >= 0 ? -r : r) || null;
1397
- return {
1398
- name: e.name,
1399
- absoluteIndex: e.absoluteIndex,
1400
- value: a,
1401
- proportion: e.proportions?.[t] || null,
1402
- color: e.color,
1403
- id: e.id,
1404
- timeLabel: Rr.value?.[n] || null
1405
- };
1406
- });
1407
- }
1408
- let Vi = x(() => Array(K.value).fill(0).map((e, t) => Bi(t)));
1409
- Qe(() => P.selectedXIndex, (e) => {
1410
- if ([null, void 0].includes(P.selectedXIndex)) {
1411
- $.value = null;
1412
- return;
1413
- }
1414
- let t = e - q.value.start;
1415
- t < 0 || e >= q.value.end ? $.value = null : $.value = t ?? null;
1416
- }, { immediate: !0 });
1417
- let Hi = x(() => {
1418
- if (B.value.style.chart.lines.distributed) return {
1419
- min: -1,
1420
- max: 1
1421
- };
1422
- let e = hr.value, t = gr.value, n = Math.max(1, ...[...e, ...t].map((e) => e.series?.length || 0)), r = Array(n).fill(0), i = Array(n).fill(0);
1423
- e.forEach((e) => {
1424
- for (let t = 0; t < n; t += 1) {
1425
- let n = e.series[t] ?? 0;
1426
- n >= 0 ? r[t] += n : i[t] += n;
1427
- }
1428
- });
1429
- let a = Array(n).fill(0), o = Array(n).fill(0);
1430
- t.forEach((e) => {
1431
- for (let t = 0; t < n; t += 1) {
1432
- let n = e.series[t] ?? 0;
1433
- n > 0 && (a[t] = Math.max(a[t], n)), n < 0 && (o[t] = Math.min(o[t], n));
1434
- }
1435
- });
1436
- let s = Math.max(0, ...r, ...a), c = Math.min(0, ...i, ...o), l = B.value.style.chart.grid.scale.scaleMin, u = B.value.style.chart.grid.scale.scaleMax, d = B.value.style.chart.grid.scale.ticks, f = !B.value.style.chart.lines.distributed && (l !== null || u !== null) ? h(l === null ? c > 0 ? 0 : c : l, u === null ? s < 0 ? 0 : s : u, d) : g(l === null ? c > 0 ? 0 : c : l, u === null ? s < 0 ? 0 : s : u, d);
1437
- return {
1438
- min: Number(f.min) || 0,
1439
- max: Number(f.max) || 0
1440
- };
1441
- });
1442
- function Ui({ minimapH: e, unitW: t }) {
1443
- let n = (e) => typeof e == "string" ? e.replace(/^M\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*,?\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*/i, "").trim() : "";
1444
- if (!Number.isFinite(e) || e <= 0 || !Number.isFinite(t) || t <= 0) return "";
1445
- let r = Y.value.filter((e) => !e.standalone), i = Y.value.filter((e) => e.standalone), a = Math.max(0, ...Y.value.map((e) => Array.isArray(e.fullSeries) ? e.fullSeries.length : e.series.length));
1446
- if (a <= 0) return "";
1447
- let o = a === 1 ? [t * .5] : Array.from({ length: a }, (e, n) => n * t);
1448
- if (B.value.style.chart.lines.distributed) {
1449
- let t = Array.from({ length: a }, (e, t) => {
1450
- let n = 0;
1451
- return r.forEach((e) => {
1452
- let r = (Array.isArray(e.fullSeries) ? e.fullSeries : e.series)?.[t];
1453
- r != null && !Number.isNaN(r) && (n += Math.abs(r));
1454
- }), n || 1;
1455
- }), c = (t) => e - e * Math.max(0, Math.min(1, t || 0)), l = [], u = Array(a).fill(0);
1456
- return r.forEach((e) => {
1457
- let r = Array.isArray(e.fullSeries) ? e.fullSeries : e.series, i = Array(a), d = Array(a);
1458
- for (let e = 0; e < a; e += 1) {
1459
- let n = r?.[e], a = n == null || Number.isNaN(n) ? 0 : Math.abs(n) / t[e];
1460
- d[e] = u[e], u[e] += a, i[e] = u[e];
1461
- }
1462
- let f = i.map(c), p = d.map(c), m = o.map((e, t) => ({
1463
- x: e,
1464
- y: f[t]
1465
- })), h = o.map((e, t) => ({
1466
- x: e,
1467
- y: p[t]
1468
- })), g = ee(m), _ = ee([...h].reverse()), v = s(m), te = s([...h].reverse()), y = h[h.length - 1];
1469
- if (B.value.style.chart.lines.useArea) {
1470
- let t = B.value.style.chart.lines.smooth ? `M${m[0].x},${m[0].y} ${n(g)} L${y.x},${y.y} ${n(_)} Z` : `M${m[0].x},${m[0].y} ${n(v)} L${y.x},${y.y} ${n(te)} Z`;
1471
- l.push(`<path d="${t}"
1472
- fill="${Zt.pattern ? `url(#pattern_${L.value}_${e.absoluteIndex})` : (B.value.style.chart.lines.gradient.show, e.color)}"
1473
- opacity="${B.value.style.chart.lines.areaOpacity}"
1474
- stroke="none" />`);
1475
- }
1476
- let ne = B.value.style.chart.lines.smooth ? `M${m[0].x},${m[0].y} ${n(g)}` : `M${m[0].x},${m[0].y} ${n(v)}`;
1477
- l.push(`<path d="${ne}"
1478
- fill="none"
1479
- stroke="${e.color}"
1480
- stroke-width="${B.value.style.chart.lines.strokeWidth}"
1481
- stroke-linecap="round" />`);
1482
- }), i.length && i.forEach((e) => {
1483
- let r = Array.isArray(e.fullSeries) ? e.fullSeries : e.series, i = Array.from({ length: a }, (e, n) => c(Math.abs(r?.[n] ?? 0) / t[n])), u = o.map((e, t) => ({
1484
- x: e,
1485
- y: i[t]
1486
- })), d = ee(u), f = s(u), p = B.value.style.chart.lines.smooth ? `M${u[0].x},${u[0].y} ${n(d)}` : `M${u[0].x},${u[0].y} ${n(f)}`;
1487
- l.push(`<path d="${p}"
1488
- fill="none"
1489
- stroke="${e.color}"
1490
- stroke-width="${B.value.style.chart.lines.strokeWidth}"
1491
- stroke-linecap="round" />`);
1492
- }), l.join("");
1493
- }
1494
- let c = Hi.value.min, l = Hi.value.max, u = Math.abs(c), d = l + u || 1, f = (t) => Math.max(0, Math.min(e, t)), p = (t) => f(e - e * (((t ?? 0) + u) / d)), m = [];
1495
- if (r.length) {
1496
- let e = Array(a).fill(0), t = Array(a).fill(0);
1497
- r.forEach((r) => {
1498
- let i = Array.isArray(r.fullSeries) ? r.fullSeries : r.series, c = Array(a), l = Array(a);
1499
- for (let n = 0; n < a; n += 1) {
1500
- let r = i?.[n] ?? 0;
1501
- r >= 0 ? (l[n] = e[n], e[n] += r, c[n] = e[n]) : (l[n] = t[n], t[n] += r, c[n] = t[n]);
1502
- }
1503
- let u = c.map(p), d = l.map(p), f = o.map((e, t) => ({
1504
- x: e,
1505
- y: u[t]
1506
- })), h = o.map((e, t) => ({
1507
- x: e,
1508
- y: d[t]
1509
- })), g = ee(f), _ = ee([...h].reverse()), v = s(f), te = s([...h].reverse()), y = h[h.length - 1];
1510
- if (B.value.style.chart.lines.useArea) {
1511
- let e = B.value.style.chart.lines.smooth ? `M${f[0].x},${f[0].y} ${n(g)} L${y.x},${y.y} ${n(_)} Z` : `M${f[0].x},${f[0].y} ${n(v)} L${y.x},${y.y} ${n(te)} Z`;
1512
- m.push(`<path d="${e}"
1513
- fill="${Zt.pattern ? `url(#pattern_${L.value}_${r.absoluteIndex})` : (B.value.style.chart.lines.gradient.show, r.color)}"
1514
- opacity="${B.value.style.chart.lines.areaOpacity}"
1515
- stroke="none" />`);
1516
- }
1517
- let ne = B.value.style.chart.lines.smooth ? `M${f[0].x},${f[0].y} ${n(g)}` : `M${f[0].x},${f[0].y} ${n(v)}`;
1518
- m.push(`<path d="${ne}"
1519
- fill="none"
1520
- stroke="${r.color}"
1521
- stroke-width="${B.value.style.chart.lines.strokeWidth}"
1522
- stroke-linecap="round" />`);
1523
- });
1524
- }
1525
- return i.length && i.forEach((e) => {
1526
- let t = (Array.isArray(e.fullSeries) ? e.fullSeries : e.series).map(p), r = o.map((e, n) => ({
1527
- x: e,
1528
- y: t[n]
1529
- })), i = ee(r), a = s(r), c = B.value.style.chart.lines.smooth ? `M${r[0].x},${r[0].y} ${n(i)}` : `M${r[0].x},${r[0].y} ${n(a)}`;
1530
- m.push(`<path d="${c}"
1531
- fill="none"
1532
- stroke="${e.color}"
1533
- stroke-width="${B.value.style.chart.lines.strokeWidth}"
1534
- stroke-linecap="round" />`);
1535
- }), m.join("");
1536
- }
1537
- function Wi(e, t) {
1538
- let n = B.value.style.chart.lines, r = n.dataLabels;
1539
- return n.showDistributedPercentage && n.distributed ? Jn.value ? t === 0 ? !r.hideEmptyPercentages : Math.abs(t) * 100 >= r.hideUnderPercentage : r.hideEmptyPercentages ? Math.abs(t) > 0 : !0 : Jn.value ? (qn.value && ir.value && console.warn("Vue Data UI - VueUiStackline - You cannot set both dataLabels.hideUnderPercentage and dataLabels.hideUnderValue. Note that dataLabels.hideUnderPercentage takes precedence in this case."), Math.abs(e) > Gi.value * r.hideUnderPercentage / 100) : qn.value ? Math.abs(e) >= r.hideUnderValue : r.hideEmptyValues ? e !== 0 : !0;
1540
- }
1541
- let Gi = x(() => Math.max(...Y.value.flatMap((e) => e.series)));
1542
- function Ki(e, t, n, r, i) {
1543
- let a = i === -1 && e >= 0 ? -e : e;
1544
- return _(B.value.style.chart.lines.dataLabels.formatter, a, re({
1545
- p: B.value.style.chart.lines.dataLabels.prefix,
1546
- v: a,
1547
- s: B.value.style.chart.lines.dataLabels.suffix,
1548
- r: B.value.style.chart.lines.dataLabels.rounding
1549
- }), {
1550
- datapoint: t,
1551
- seriesIndex: n,
1552
- datapointIndex: r
1553
- });
1554
- }
1555
- function qi(e, t, n, r) {
1556
- return _(B.value.style.chart.lines.dataLabels.formatter, e, re({
1557
- v: isNaN(e) ? 0 : e,
1558
- s: "%",
1559
- r: B.value.style.chart.lines.dataLabels.rounding
1560
- }), {
1561
- datapoint: t,
1562
- seriesIndex: n,
1563
- datapointIndex: r
1564
- });
1565
- }
1566
- function Ji({ seriesIndex: e, datapoint: t }) {
1567
- let n = q.value.start + e;
1568
- F("selectX", {
1569
- dataset: t,
1570
- index: n,
1571
- indexLabel: B.value.style.chart.grid.x.timeLabels.values[n]
1572
- });
1573
- }
1574
- function Yi(e) {
1575
- if (e?.stage === "start") {
1576
- gn.value = !0;
1577
- return;
1578
- }
1579
- if (e?.stage === "end") {
1580
- gn.value = !1;
1581
- return;
1582
- }
1583
- Qn();
1584
- }
1585
- async function Xi() {
1586
- if (F("copyAlt", {
1587
- config: B.value,
1588
- dataset: Y.value
1589
- }), !B.value.userOptions.callbacks.altCopy) {
1590
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
1591
- return;
1592
- }
1593
- await Promise.resolve(B.value.userOptions.callbacks.altCopy({
1594
- config: B.value,
1595
- dataset: Y.value
1596
- }));
1597
- }
1598
- let Zi = k(!1);
1599
- function Qi() {
1600
- z.value = null, Zi.value = !0;
1601
- }
1602
- function $i() {
1603
- z.value = null, On.value = "pointer", $t.value = !1, $.value = null, F("selectX", {
1604
- index: null,
1605
- indexLabel: null,
1606
- dataset: null
1607
- }), Zi.value = !1;
1608
- }
1609
- function ea(e) {
1610
- if (!Un.value || Pn.value || document.activeElement !== Un.value || Dr.value || !Z.value) return;
1611
- let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
1612
- if (!t && !n && !r && !i) return;
1613
- if (e.preventDefault(), e.stopPropagation(), i) {
1614
- z.value = null, On.value = "pointer", $t.value = !1, $.value = null, F("selectX", {
1615
- index: null,
1616
- indexLabel: null,
1617
- dataset: null
1618
- });
1619
- return;
1620
- }
1621
- if (r) {
1622
- if (z.value === null) return;
1623
- ui(z.value);
1624
- return;
1625
- }
1626
- let a = z.value, o = ri.value, s = a !== null && a >= 0 && a < Z.value, c = o !== null && o >= 0 && o < Z.value;
1627
- s ? n ? (a += 1, a >= Z.value && (a = 0)) : t && (--a, a < 0 && (a = Z.value - 1)) : c ? (a = n ? o + 1 : o - 1, a >= Z.value && (a = 0), a < 0 && (a = Z.value - 1)) : a = n ? 0 : Z.value - 1, z.value = a, ta(a), hi(!0, a, "keyboard");
1628
- }
1629
- function ta(e) {
1630
- if (!Number.isFinite(e) || !Un.value) return;
1631
- let t = n(W.value.left + e * oi.value, W.value.top + W.value.height / 2, Un.value);
1632
- t && (Dn.value = t);
1633
- }
1634
- let na = x(() => ({
1635
- headers: Ei.value?.colNames ?? [],
1636
- rows: Ei.value?.body ?? []
1637
- }));
1638
- return Ee({
1639
- getData: zi,
1640
- getImage: Mi,
1641
- generatePdf: Zn,
1642
- generateCsv: Ti,
1643
- generateImage: Qn,
1644
- generateSvg: ji,
1645
- hideSeries: Ci,
1646
- showSeries: Si,
1647
- toggleTable: Ii,
1648
- toggleLabels: Li,
1649
- toggleTooltip: Ri,
1650
- toggleAnnotator: Fn,
1651
- toggleFullscreen: Fi,
1652
- copyAlt: Xi
1653
- }), (t, n) => (O(), w("div", {
1654
- id: `stackline_${L.value}`,
1655
- ref_key: "stacklineChart",
1656
- ref: I,
1657
- class: Ue({
1658
- "vue-data-ui-component": !0,
1659
- "vue-ui-stackline": !0,
1660
- "vue-data-ui-wrapper-fullscreen": sn.value
1661
- }),
1662
- style: We(`background:${B.value.style.chart.backgroundColor};color:${B.value.style.chart.color};font-family:${B.value.style.fontFamily}; position: relative; ${B.value.responsive ? "height: 100%" : ""}`),
1663
- onMouseenter: Wn,
1664
- onMouseleave: Gn
1665
- }, [
1666
- T("div", {
1667
- id: `chart-instructions-${L.value}`,
1668
- class: "sr-only"
1669
- }, [T("p", null, Ye(B.value.a11y.translations.keyboardNavigation), 1)], 8, nt),
1670
- na.value?.rows?.length ? (O(), S(je, {
1671
- key: 0,
1672
- uid: L.value,
1673
- head: na.value.headers,
1674
- body: na.value.rows,
1675
- notice: B.value.a11y.translations.tableAvailable,
1676
- caption: B.value.a11y.translations.tableCaption
1677
- }, null, 8, [
1678
- "uid",
1679
- "head",
1680
- "body",
1681
- "notice",
1682
- "caption"
1683
- ])) : C("", !0),
1684
- B.value.userOptions.buttons.annotator ? (O(), S(M(Wt), {
1685
- key: 1,
1686
- svgRef: M(Un),
1687
- backgroundColor: B.value.style.chart.backgroundColor,
1688
- color: B.value.style.chart.color,
1689
- active: Pn.value,
1690
- isCursorPointer: V.value,
1691
- onClose: Fn
1692
- }, {
1693
- "annotator-action-close": N(() => [j(t.$slots, "annotator-action-close", {}, void 0, !0)]),
1694
- "annotator-action-color": N(({ color: e }) => [j(t.$slots, "annotator-action-color", D(E({ color: e })), void 0, !0)]),
1695
- "annotator-action-draw": N(({ mode: e }) => [j(t.$slots, "annotator-action-draw", D(E({ mode: e })), void 0, !0)]),
1696
- "annotator-action-undo": N(({ disabled: e }) => [j(t.$slots, "annotator-action-undo", D(E({ disabled: e })), void 0, !0)]),
1697
- "annotator-action-redo": N(({ disabled: e }) => [j(t.$slots, "annotator-action-redo", D(E({ disabled: e })), void 0, !0)]),
1698
- "annotator-action-delete": N(({ disabled: e }) => [j(t.$slots, "annotator-action-delete", D(E({ disabled: e })), void 0, !0)]),
1699
- _: 3
1700
- }, 8, [
1701
- "svgRef",
1702
- "backgroundColor",
1703
- "color",
1704
- "active",
1705
- "isCursorPointer"
1706
- ])) : C("", !0),
1707
- j(t.$slots, "userConfig", {}, void 0, !0),
1708
- $n.value ? (O(), w("div", {
1709
- key: 2,
1710
- ref_key: "noTitle",
1711
- ref: an,
1712
- class: "vue-data-ui-no-title-space",
1713
- style: "height:36px; width: 100%;background:transparent"
1714
- }, null, 512)) : C("", !0),
1715
- B.value.style.chart.title.text ? (O(), w("div", {
1716
- key: 3,
1717
- ref_key: "chartTitle",
1718
- ref: tn,
1719
- style: "width:100%;background:transparent;"
1720
- }, [(O(), S(we, {
1721
- key: `title_${ln.value}`,
1722
- config: {
1723
- title: {
1724
- cy: "stackline-title",
1725
- ...B.value.style.chart.title
1726
- },
1727
- subtitle: {
1728
- cy: "stackline-subtitle",
1729
- ...B.value.style.chart.title.subtitle
1730
- }
1731
- }
1732
- }, null, 8, ["config"]))], 512)) : C("", !0),
1733
- T("div", { id: `legend-top-${L.value}` }, null, 8, rt),
1734
- B.value.userOptions.show && Qt.value && (M(Hn) || M(Bn)) ? (O(), S(M(Gt), {
1735
- ref_key: "userOptionsRef",
1736
- ref: mn,
1737
- key: `user_option_${en.value}`,
1738
- backgroundColor: B.value.style.chart.backgroundColor,
1739
- color: B.value.style.chart.color,
1740
- isPrinting: M(Yn),
1741
- isImaging: M(Xn),
1742
- uid: L.value,
1743
- hasTooltip: B.value.style.chart.tooltip.show && B.value.userOptions.buttons.tooltip,
1744
- hasPdf: B.value.userOptions.buttons.pdf,
1745
- hasImg: B.value.userOptions.buttons.img,
1746
- hasSvg: B.value.userOptions.buttons.svg,
1747
- hasXls: B.value.userOptions.buttons.csv,
1748
- hasTable: B.value.userOptions.buttons.table,
1749
- hasLabel: B.value.userOptions.buttons.labels,
1750
- hasFullscreen: B.value.userOptions.buttons.fullscreen,
1751
- hasAltCopy: B.value.userOptions.buttons.altCopy,
1752
- isFullscreen: sn.value,
1753
- chartElement: I.value,
1754
- position: B.value.userOptions.position,
1755
- isTooltip: H.value.showTooltip,
1756
- titles: { ...B.value.userOptions.buttonTitles },
1757
- hasAnnotator: B.value.userOptions.buttons.annotator,
1758
- isAnnotation: Pn.value,
1759
- callbacks: B.value.userOptions.callbacks,
1760
- printScale: B.value.userOptions.print.scale,
1761
- tableDialog: B.value.table.useDialog,
1762
- isCursorPointer: V.value,
1763
- onToggleFullscreen: Fi,
1764
- onGeneratePdf: M(Zn),
1765
- onGenerateCsv: Ti,
1766
- onGenerateImage: Yi,
1767
- onGenerateSvg: ji,
1768
- onToggleTable: Ii,
1769
- onToggleLabels: Li,
1770
- onToggleTooltip: Ri,
1771
- onToggleAnnotator: Fn,
1772
- onCopyAlt: Xi,
1773
- style: We({ visibility: M(Hn) ? M(Bn) ? "visible" : "hidden" : "visible" })
1774
- }, Le({ _: 2 }, [
1775
- t.$slots.menuIcon ? {
1776
- name: "menuIcon",
1777
- fn: N(({ isOpen: e, color: n }) => [j(t.$slots, "menuIcon", D(E({
1778
- isOpen: e,
1779
- color: n
1780
- })), void 0, !0)]),
1781
- key: "0"
1782
- } : void 0,
1783
- t.$slots.optionTooltip ? {
1784
- name: "optionTooltip",
1785
- fn: N(() => [j(t.$slots, "optionTooltip", {}, void 0, !0)]),
1786
- key: "1"
1787
- } : void 0,
1788
- t.$slots.optionPdf ? {
1789
- name: "optionPdf",
1790
- fn: N(() => [j(t.$slots, "optionPdf", {}, void 0, !0)]),
1791
- key: "2"
1792
- } : void 0,
1793
- t.$slots.optionCsv ? {
1794
- name: "optionCsv",
1795
- fn: N(() => [j(t.$slots, "optionCsv", {}, void 0, !0)]),
1796
- key: "3"
1797
- } : void 0,
1798
- t.$slots.optionImg ? {
1799
- name: "optionImg",
1800
- fn: N(() => [j(t.$slots, "optionImg", {}, void 0, !0)]),
1801
- key: "4"
1802
- } : void 0,
1803
- t.$slots.optionSvg ? {
1804
- name: "optionSvg",
1805
- fn: N(() => [j(t.$slots, "optionSvg", {}, void 0, !0)]),
1806
- key: "5"
1807
- } : void 0,
1808
- t.$slots.optionTable ? {
1809
- name: "optionTable",
1810
- fn: N(() => [j(t.$slots, "optionTable", {}, void 0, !0)]),
1811
- key: "6"
1812
- } : void 0,
1813
- t.$slots.optionLabels ? {
1814
- name: "optionLabels",
1815
- fn: N(() => [j(t.$slots, "optionLabels", {}, void 0, !0)]),
1816
- key: "7"
1817
- } : void 0,
1818
- t.$slots.optionFullscreen ? {
1819
- name: "optionFullscreen",
1820
- fn: N(({ toggleFullscreen: e, isFullscreen: n }) => [j(t.$slots, "optionFullscreen", D(E({
1821
- toggleFullscreen: e,
1822
- isFullscreen: n
1823
- })), void 0, !0)]),
1824
- key: "8"
1825
- } : void 0,
1826
- t.$slots.optionAnnotator ? {
1827
- name: "optionAnnotator",
1828
- fn: N(({ toggleAnnotator: e, isAnnotator: n }) => [j(t.$slots, "optionAnnotator", D(E({
1829
- toggleAnnotator: e,
1830
- isAnnotator: n
1831
- })), void 0, !0)]),
1832
- key: "9"
1833
- } : void 0,
1834
- t.$slots.optionAltCopy ? {
1835
- name: "optionAltCopy",
1836
- fn: N(({ altCopy: e }) => [j(t.$slots, "optionAltCopy", D(E({ altCopy: e })), void 0, !0)]),
1837
- key: "10"
1838
- } : void 0,
1839
- t.$slots["custom-menu-before"] ? {
1840
- name: "custom-menu-before",
1841
- fn: N(() => [j(t.$slots, "custom-menu-before", {}, void 0, !0)]),
1842
- key: "11"
1843
- } : void 0,
1844
- t.$slots["custom-menu-after"] ? {
1845
- name: "custom-menu-after",
1846
- fn: N(() => [j(t.$slots, "custom-menu-after", {}, void 0, !0)]),
1847
- key: "12"
1848
- } : void 0
1849
- ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasLabel.hasFullscreen.hasAltCopy.isFullscreen.chartElement.position.isTooltip.titles.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.style".split("."))) : C("", !0),
1850
- T("div", it, [(O(), w("svg", {
1851
- ref_key: "svgRef",
1852
- ref: Un,
1853
- "aria-describedby": `chart-instructions-${L.value}`,
1854
- xmlns: M(ae),
1855
- viewBox: `0 0 ${W.value.chartWidth <= 0 ? 10 : W.value.chartWidth} ${W.value.chartHeight <= 0 ? 10 : W.value.chartHeight}`,
1856
- class: Ue({
1857
- "vue-data-ui-loading": M(Ln),
1858
- "no-transition": !B.value.useCssAnimation
1859
- }),
1860
- style: We(`max-width:100%;overflow:visible;background:transparent;color:${B.value.style.chart.color}`),
1861
- role: "img",
1862
- "aria-live": "polite",
1863
- tabindex: "0",
1864
- preserveAspectRatio: "xMidYMid",
1865
- onMousemove: ci,
1866
- onMouseleave: di,
1867
- onClick: li,
1868
- onFocus: Qi,
1869
- onBlur: $i,
1870
- onKeydown: ea
1871
- }, [
1872
- ze(M(Kt)),
1873
- (O(!0), w(b, null, A(hr.value, (e) => (O(), w(b, null, [t.$slots.pattern ? (O(), w("defs", ot, [j(t.$slots, "pattern", Ve({ ref_for: !0 }, {
1874
- seriesIndex: e.absoluteIndex,
1875
- patternId: `pattern_${L.value}_${e.absoluteIndex}`
1876
- }), void 0, !0)])) : C("", !0)], 64))), 256)),
1877
- t.$slots["chart-background"] ? (O(), w("foreignObject", {
1878
- key: 0,
1879
- x: X.value.left,
1880
- y: W.value.top,
1881
- width: X.value.width,
1882
- height: W.value.height,
1883
- style: { pointerEvents: "none" }
1884
- }, [j(t.$slots, "chart-background", {}, void 0, !0)], 8, st)) : C("", !0),
1885
- B.value.style.chart.lines.gradient.show ? (O(), w("defs", ct, [(O(!0), w(b, null, A(Y.value, (e, t) => (O(), w("linearGradient", {
1886
- id: `gradient_${e.id}`,
1887
- x1: "0%",
1888
- y1: "0%",
1889
- x2: "0%",
1890
- y2: "100%"
1891
- }, [T("stop", {
1892
- offset: "0%",
1893
- "stop-color": e.color
1894
- }, null, 8, ut), T("stop", {
1895
- offset: "100%",
1896
- "stop-color": M(l)(e.color, B.value.style.chart.lines.gradient.intensity / 100)
1897
- }, null, 8, dt)], 8, lt))), 256))])) : C("", !0),
1898
- B.value.style.chart.grid.x.showHorizontalLines ? (O(!0), w(b, { key: 2 }, A(Ir.value, (e, t) => (O(), w("line", {
1899
- x1: X.value.left,
1900
- x2: X.value.right,
1901
- y1: e.y,
1902
- y2: e.y,
1903
- stroke: B.value.style.chart.grid.x.linesColor,
1904
- "stroke-width": B.value.style.chart.grid.x.linesThickness,
1905
- "stroke-dasharray": B.value.style.chart.grid.x.linesStrokeDasharray,
1906
- "stroke-linecap": "round"
1907
- }, null, 8, ft))), 256)) : C("", !0),
1908
- B.value.style.chart.grid.y.showVerticalLines ? (O(!0), w(b, { key: 3 }, A(q.value.end - q.value.start, (e, t) => (O(), w("line", {
1909
- x1: Q(t),
1910
- x2: Q(t),
1911
- y1: W.value.top,
1912
- y2: W.value.bottom,
1913
- stroke: B.value.style.chart.grid.y.linesColor,
1914
- "stroke-width": B.value.style.chart.grid.y.linesThickness,
1915
- "stroke-dasharray": B.value.style.chart.grid.y.linesStrokeDasharray,
1916
- "stroke-linecap": "round"
1917
- }, null, 8, pt))), 256)) : C("", !0),
1918
- B.value.style.chart.grid.x.showAxis ? (O(), w("line", {
1919
- key: 4,
1920
- x1: X.value.left,
1921
- x2: X.value.right,
1922
- y1: W.value.bottom,
1923
- y2: W.value.bottom,
1924
- stroke: B.value.style.chart.grid.x.axisColor,
1925
- "stroke-width": B.value.style.chart.grid.x.axisThickness,
1926
- "stroke-linecap": "round",
1927
- "stroke-linejoin": "round"
1928
- }, null, 8, mt)) : C("", !0),
1929
- B.value.style.chart.grid.y.showAxis && !B.value.style.chart.lines.distributed ? (O(), w("line", {
1930
- key: 5,
1931
- x1: or.value ? X.value.right : X.value.left,
1932
- x2: or.value ? X.value.right : X.value.left,
1933
- y1: W.value.top,
1934
- y2: W.value.bottom,
1935
- stroke: B.value.style.chart.grid.y.axisColor,
1936
- "stroke-width": B.value.style.chart.grid.y.axisThickness,
1937
- "stroke-linecap": "round",
1938
- "stroke-linejoin": "round"
1939
- }, null, 8, ht)) : C("", !0),
1940
- B.value.style.chart.grid.x.axisName.show && B.value.style.chart.grid.x.axisName.text ? (O(), w("text", {
1941
- key: 6,
1942
- ref_key: "xAxisLabel",
1943
- ref: vn,
1944
- x: W.value.left + W.value.width / 2,
1945
- y: W.value.chartHeight - 3,
1946
- "font-size": B.value.style.chart.grid.x.axisName.fontSize,
1947
- fill: B.value.style.chart.grid.x.axisName.color,
1948
- "font-weight": B.value.style.chart.grid.x.axisName.bold ? "bold" : "normal",
1949
- "text-anchor": "middle"
1950
- }, Ye(B.value.style.chart.grid.x.axisName.text), 9, gt)) : C("", !0),
1951
- B.value.style.chart.grid.y.axisName.show && B.value.style.chart.grid.y.axisName.text ? (O(), w("text", {
1952
- key: 7,
1953
- ref_key: "yAxisLabel",
1954
- ref: yn,
1955
- transform: `translate(${or.value ? W.value.chartWidth - B.value.style.chart.grid.y.axisName.fontSize / 2 - B.value.style.chart.grid.y.axisName.offsetX : B.value.style.chart.grid.y.axisName.fontSize + B.value.style.chart.grid.y.axisName.offsetX}, ${W.value.top + W.value.height / 2}) rotate(-90)`,
1956
- "font-size": B.value.style.chart.grid.y.axisName.fontSize,
1957
- fill: B.value.style.chart.grid.y.axisName.color,
1958
- "font-weight": B.value.style.chart.grid.y.axisName.bold ? "bold" : "normal",
1959
- "text-anchor": "middle"
1960
- }, Ye(B.value.style.chart.grid.y.axisName.text), 9, _t)) : C("", !0),
1961
- B.value.style.chart.grid.frame.show ? (O(), w("rect", {
1962
- key: 8,
1963
- style: {
1964
- pointerEvents: "none",
1965
- transition: "none",
1966
- animation: "none !important"
1967
- },
1968
- x: X.value.left,
1969
- y: W.value.top,
1970
- width: X.value.width,
1971
- height: W.value.height,
1972
- fill: "transparent",
1973
- stroke: B.value.style.chart.grid.frame.stroke,
1974
- "stroke-width": B.value.style.chart.grid.frame.strokeWidth,
1975
- "stroke-linecap": B.value.style.chart.grid.frame.strokeLinecap,
1976
- "stroke-linejoin": B.value.style.chart.grid.frame.strokeLinejoin,
1977
- "stroke-dasharray": B.value.style.chart.grid.frame.strokeDasharray
1978
- }, null, 8, vt)) : C("", !0),
1979
- (O(!0), w(b, null, A(Y.value, (e) => (O(), w(b, null, [B.value.style.chart.lines.useArea && !e.standalone ? (O(), w("path", {
1980
- key: 0,
1981
- d: B.value.style.chart.lines.smooth ? e.smoothArea : e.straightArea,
1982
- fill: t.$slots.pattern ? `url(#pattern_${L.value}_${e.absoluteIndex})` : B.value.style.chart.lines.gradient.show ? `url(#gradient_${e.id})` : e.color,
1983
- opacity: B.value.style.chart.lines.areaOpacity,
1984
- style: We({ transition: M(Ln) || !B.value.useCssAnimation ? void 0 : "all 0.3s ease-in-out" })
1985
- }, null, 12, yt)) : C("", !0)], 64))), 256)),
1986
- (O(!0), w(b, null, A(Y.value, (e) => (O(), w("path", {
1987
- d: B.value.style.chart.lines.smooth ? e.smoothPath : e.straightPath,
1988
- stroke: B.value.style.chart.lines.path.useSerieColor ? e.color : B.value.style.chart.lines.path.stroke,
1989
- "stroke-width": B.value.style.chart.lines.strokeWidth,
1990
- fill: "none",
1991
- "stroke-linecap": "round",
1992
- style: We({ transition: M(Ln) || !B.value.useCssAnimation ? void 0 : "all 0.3s ease-in-out" })
1993
- }, null, 12, bt))), 256)),
1994
- B.value.style.chart.grid.y.axisLabels.show && !B.value.style.chart.lines.distributed ? (O(), w("g", {
1995
- key: 9,
1996
- ref_key: "scaleLabels",
1997
- ref: bn
1998
- }, [(O(!0), w(b, null, A(Ir.value, (e, t) => (O(), w("line", {
1999
- x1: or.value ? X.value.right : X.value.left,
2000
- x2: or.value ? X.value.right + 6 : X.value.left - 6,
2001
- y1: e.y,
2002
- y2: e.y,
2003
- stroke: B.value.style.chart.grid.x.axisColor,
2004
- "stroke-width": 1
2005
- }, null, 8, xt))), 256)), (O(!0), w(b, null, A(Ir.value, (e, t) => (O(), w("text", {
2006
- x: e.x,
2007
- y: e.y + B.value.style.chart.grid.y.axisLabels.fontSize / 3,
2008
- "font-size": B.value.style.chart.grid.y.axisLabels.fontSize,
2009
- "font-weight": B.value.style.chart.grid.y.axisLabels.bold ? "bold" : "normal",
2010
- fill: B.value.style.chart.grid.y.axisLabels.color,
2011
- "text-anchor": or.value ? "start" : "end"
2012
- }, Ye(M(_)(B.value.style.chart.grid.y.axisLabels.formatter, e.value, M(re)({
2013
- p: B.value.style.chart.lines.dataLabels.prefix,
2014
- v: e.value,
2015
- s: B.value.style.chart.lines.dataLabels.suffix,
2016
- r: B.value.style.chart.grid.y.axisLabels.rounding
2017
- }), { datapoint: e })), 9, St))), 256))], 512)) : C("", !0),
2018
- B.value.style.chart.grid.x.timeLabels.show ? (O(), w("g", {
2019
- key: 10,
2020
- ref_key: "timeLabelsEls",
2021
- ref: xn
2022
- }, [t.$slots["time-label"] ? (O(), w("g", Ct, [(O(!0), w(b, null, A(Hr.value, (e, n) => (O(), w("g", null, [j(t.$slots, "time-label", Ve({ ref_for: !0 }, {
2023
- x: W.value.left + Tr.value * n + Tr.value / 2,
2024
- y: W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY,
2025
- fontSize: B.value.style.chart.grid.x.timeLabels.fontSize,
2026
- fill: B.value.style.chart.grid.x.timeLabels.color,
2027
- transform: `translate(${W.value.left + Tr.value * n + Tr.value / 2}, ${W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${B.value.style.chart.grid.x.timeLabels.rotation})`,
2028
- absoluteIndex: e.absoluteIndex,
2029
- content: e.text,
2030
- textAnchor: B.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : B.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
2031
- show: !0
2032
- }), void 0, !0)]))), 256))])) : (O(), w("g", wt, [(O(!0), w(b, null, A(Hr.value, (e, n) => (O(), w("g", null, [String(e.text).includes("\n") ? (O(), w("text", {
2033
- key: n + "-multi",
2034
- "text-anchor": B.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : B.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
2035
- "font-size": B.value.style.chart.grid.x.timeLabels.fontSize,
2036
- fill: B.value.style.chart.grid.x.timeLabels.color,
2037
- transform: `
2038
- translate(
2039
- ${Q(n)},
2040
- ${W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY}
2041
- ),
2042
- rotate(${B.value.style.chart.grid.x.timeLabels.rotation})
2043
- `,
2044
- style: We({ cursor: V.value ? "pointer" : "default" }),
2045
- innerHTML: t.createTSpansFromLineBreaksOnX({
2046
- content: String(e.text),
2047
- fontSize: B.value.style.chart.grid.x.timeLabels.fontSize,
2048
- fill: B.value.style.chart.grid.x.timeLabels.color,
2049
- x: 0,
2050
- y: 0
2051
- }),
2052
- onClick: () => gi(e, n)
2053
- }, null, 12, Et)) : (O(), w("text", {
2054
- class: "vue-data-ui-time-label",
2055
- key: n,
2056
- "text-anchor": B.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : B.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
2057
- "font-size": B.value.style.chart.grid.x.timeLabels.fontSize,
2058
- "font-weight": B.value.style.chart.grid.x.timeLabels.bold ? "bold" : "normal",
2059
- fill: B.value.style.chart.grid.x.timeLabels.color,
2060
- transform: `translate(${Q(n)}, ${W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${B.value.style.chart.grid.x.timeLabels.rotation})`,
2061
- style: We({ cursor: V.value ? "pointer" : "default" }),
2062
- onClick: () => gi(e, n)
2063
- }, Ye(e.text), 13, Tt))]))), 256))]))], 512)) : C("", !0),
2064
- (hn.value || ![null, void 0].includes($.value)) && !B.value.style.chart.highlighter.useLine ? (O(!0), w(b, { key: 11 }, A(q.value.end - q.value.start, (e, t) => (O(), w("g", { key: `tooltip_trap_highlighter_${t}` }, [T("rect", {
2065
- x: si(t).x,
2066
- y: W.value.top,
2067
- height: W.value.height,
2068
- width: si(t).width,
2069
- fill: [Nn.value, $.value].includes(t) ? M(i)(B.value.style.chart.highlighter.color, B.value.style.chart.highlighter.opacity) : "transparent",
2070
- style: {
2071
- transition: "none !important",
2072
- animation: "none !important"
2073
- }
2074
- }, null, 8, Dt)]))), 128)) : C("", !0),
2075
- (hn.value || ![null, void 0].includes($.value)) && B.value.style.chart.highlighter.useLine ? (O(), w(b, { key: 12 }, [![null, void 0].includes($.value) || ![null, void 0].includes(Nn.value) ? (O(), w("g", Ot, [T("line", {
2076
- x1: Q(($.value ?? Nn.value) || 0),
2077
- x2: Q(($.value ?? Nn.value) || 0),
2078
- y1: M(v)(W.value.top),
2079
- y2: M(v)(W.value.bottom),
2080
- stroke: B.value.style.chart.highlighter.color,
2081
- "stroke-width": B.value.style.chart.highlighter.lineWidth,
2082
- "stroke-dasharray": B.value.style.chart.highlighter.lineDasharray,
2083
- "stroke-linecap": "round",
2084
- style: {
2085
- transition: "none !important",
2086
- animation: "none !important",
2087
- "pointer-events": "none"
2088
- }
2089
- }, null, 8, kt)])) : C("", !0)], 64)) : C("", !0),
2090
- (O(!0), w(b, null, A(Y.value, (e) => (O(), w(b, null, [hn.value && q.value.end - q.value.start > B.value.style.chart.lines.dot.hideAboveMaxSerieLength ? (O(), w("g", At, [$.value == null ? C("", !0) : (O(), w(b, { key: 0 }, [e.rel.includes($.value) && e.fullSeries?.[q.value.start + $.value] != null && !Number.isNaN(e.fullSeries?.[q.value.start + $.value]) ? (O(), S(Te, {
2091
- key: 0,
2092
- shape: [
2093
- "triangle",
2094
- "square",
2095
- "diamond",
2096
- "pentagon",
2097
- "hexagon",
2098
- "star"
2099
- ].includes(e.shape) ? e.shape : "circle",
2100
- color: B.value.style.chart.lines.dot.useSerieColor ? e.color : B.value.style.chart.lines.dot.fill,
2101
- plot: {
2102
- x: M(se)(e.points[e.rel.indexOf($.value)].x),
2103
- y: M(se)(e.points[e.rel.indexOf($.value)].y)
2104
- },
2105
- radius: B.value.style.chart.lines.dot.radius * 1.3,
2106
- stroke: B.value.style.chart.lines.dot.useSerieColor ? B.value.style.chart.lines.dot.stroke : e.color,
2107
- strokeWidth: B.value.style.chart.lines.dot.strokeWidth,
2108
- transition: M(Ln) ? void 0 : `all ${B.value.style.chart.lines.transitionDurationMs}ms ease-in-out`
2109
- }, null, 8, [
2110
- "shape",
2111
- "color",
2112
- "plot",
2113
- "radius",
2114
- "stroke",
2115
- "strokeWidth",
2116
- "transition"
2117
- ])) : C("", !0)], 64))])) : C("", !0)], 64))), 256)),
2118
- (O(!0), w(b, null, A(Y.value, (e) => (O(), w(b, null, [q.value.end - q.value.start < B.value.style.chart.lines.dot.hideAboveMaxSerieLength ? (O(!0), w(b, { key: 0 }, A(e.points, (t, n) => (O(), w("g", { key: n }, [e.fullSeries?.[q.value.start + e.rel[n]] != null && !Number.isNaN(e.fullSeries?.[q.value.start + e.rel[n]]) ? (O(), S(Te, {
2119
- key: 0,
2120
- shape: [
2121
- "triangle",
2122
- "square",
2123
- "diamond",
2124
- "pentagon",
2125
- "hexagon",
2126
- "star"
2127
- ].includes(e.shape) ? e.shape : "circle",
2128
- color: B.value.style.chart.lines.dot.useSerieColor ? e.color : B.value.style.chart.lines.dot.fill,
2129
- plot: {
2130
- x: t.x,
2131
- y: t.y
2132
- },
2133
- radius: hn.value && $.value === e.rel[n] ? B.value.style.chart.lines.dot.radius * 1.3 : B.value.style.chart.lines.dot.radius,
2134
- stroke: B.value.style.chart.lines.dot.useSerieColor ? B.value.style.chart.lines.dot.stroke : e.color,
2135
- strokeWidth: B.value.style.chart.lines.dot.strokeWidth,
2136
- transition: M(Ln) ? void 0 : `all ${B.value.style.chart.lines.transitionDurationMs}ms ease-in-out`
2137
- }, null, 8, [
2138
- "shape",
2139
- "color",
2140
- "plot",
2141
- "radius",
2142
- "stroke",
2143
- "strokeWidth",
2144
- "transition"
2145
- ])) : C("", !0)]))), 128)) : C("", !0)], 64))), 256)),
2146
- H.value.dataLabels.show && B.value.style.chart.lines.dataLabels.hideAboveMaxSerieLength > q.value.end - q.value.start ? (O(), w(b, { key: 13 }, [(O(!0), w(b, null, A(Y.value, (e, t) => (O(), w("g", { key: t }, [(O(!0), w(b, null, A(e.points, (n, r) => (O(), w(b, { key: r }, [Wi(e.series[r], e.proportions[r]) ? (O(), w("text", {
2147
- key: 0,
2148
- x: n.x,
2149
- y: n.y + (e.series[r] >= 0 ? -B.value.style.chart.lines.dataLabels.fontSize / 2 + B.value.style.chart.lines.dataLabels.offsetY : B.value.style.chart.lines.dataLabels.fontSize * 1.2 - B.value.style.chart.lines.dataLabels.offsetY),
2150
- "font-size": B.value.style.chart.lines.dataLabels.fontSize,
2151
- fill: B.value.style.chart.lines.dataLabels.color,
2152
- "font-weight": B.value.style.chart.lines.dataLabels.bold ? "bold" : "normal",
2153
- "text-anchor": "middle"
2154
- }, Ye(B.value.style.chart.lines.showDistributedPercentage && B.value.style.chart.lines.distributed ? qi(e.proportions[r] * 100, e, t, e.rel[r]) : Ki(e.series[r], e, t, e.rel[r], e.signedSeries[r])), 9, jt)) : C("", !0)], 64))), 128))]))), 128)), B.value.style.chart.lines.totalValues.show && Y.value.length > 1 ? (O(), w("g", {
2155
- key: 0,
2156
- ref_key: "sumTop",
2157
- ref: Sn
2158
- }, [(O(!0), w(b, null, A(Nr.value, (e, t) => (O(), w(b, null, [!B.value.style.chart.lines.dataLabels.hideEmptyValues || e.value !== 0 ? (O(), w("text", {
2159
- key: 0,
2160
- x: Q(t),
2161
- y: Fr(t),
2162
- "text-anchor": "middle",
2163
- "font-size": B.value.style.chart.lines.totalValues.fontSize,
2164
- "font-weight": B.value.style.chart.lines.totalValues.bold ? "bold" : "normal",
2165
- fill: B.value.style.chart.lines.totalValues.color
2166
- }, Ye(Ki(e.value, e, t, t, e.sign)), 9, Mt)) : C("", !0)], 64))), 256))], 512)) : C("", !0)], 64)) : C("", !0),
2167
- yr.value ? (O(), w("rect", Ve({ key: 14 }, mr.value, {
2168
- "data-start": q.value.start,
2169
- "data-end": q.value.end
2170
- }), null, 16, Nt)) : C("", !0),
2171
- j(t.$slots, "svg", { svg: {
2172
- drawingArea: W.value,
2173
- data: Y.value,
2174
- isPrintingImg: M(Yn) || M(Xn) || gn.value,
2175
- isPrintingSvg: _n.value
2176
- } }, void 0, !0)
2177
- ], 46, at)), t.$slots.hint ? (O(), w("div", Pt, [j(t.$slots, "hint", D(E({
2178
- hint: B.value.a11y.translations.keyboardNavigation,
2179
- isVisible: Zi.value
2180
- })), void 0, !0)])) : C("", !0)]),
2181
- t.$slots.watermark ? (O(), w("div", Ft, [j(t.$slots, "watermark", D(E({ isPrinting: M(Yn) || M(Xn) || gn.value || _n.value })), void 0, !0)])) : C("", !0),
2182
- fn.value && (B.value.style.chart.legend.show || t.$slots.legend) ? (O(), S(Ie, {
2183
- key: 6,
2184
- to: B.value.style.chart.legend.position === "top" ? `#legend-top-${L.value}` : `#legend-bottom-${L.value}`
2185
- }, [T("div", {
2186
- ref_key: "chartLegend",
2187
- ref: nn
2188
- }, [j(t.$slots, "legend", { legend: yi.value }, () => [B.value.style.chart.legend.show ? (O(), S(Pe, {
2189
- key: 0,
2190
- legendSet: yi.value,
2191
- config: bi.value,
2192
- isCursorPointer: V.value,
2193
- onClickMarker: n[0] ||= ({ legend: e }) => e.segregate()
2194
- }, Le({
2195
- item: N(({ legend: e }) => [M(Ln) ? C("", !0) : (O(), w("div", {
2196
- key: 0,
2197
- onClick: (t) => e.segregate(),
2198
- style: We(`opacity:${R.value.includes(e.id) ? .5 : 1}`)
2199
- }, Ye(e.name), 13, It))]),
2200
- legendToggle: N(() => [yi.value.length > 2 && B.value.style.chart.legend.selectAllToggle.show && !M(Ln) ? (O(), S(Ae, {
2201
- key: 0,
2202
- backgroundColor: B.value.style.chart.legend.selectAllToggle.backgroundColor,
2203
- color: B.value.style.chart.legend.selectAllToggle.color,
2204
- fontSize: B.value.style.chart.legend.fontSize,
2205
- checked: R.value.length > 0,
2206
- isCursorPointer: V.value,
2207
- onToggle: _i
2208
- }, null, 8, [
2209
- "backgroundColor",
2210
- "color",
2211
- "fontSize",
2212
- "checked",
2213
- "isCursorPointer"
2214
- ])) : C("", !0)]),
2215
- _: 2
2216
- }, [t.$slots.pattern ? {
2217
- name: "legend-pattern",
2218
- fn: N(({ legend: e, index: t }) => [ze(Te, {
2219
- shape: e.shape,
2220
- radius: 30,
2221
- stroke: "none",
2222
- plot: {
2223
- x: 30,
2224
- y: 30
2225
- },
2226
- fill: `url(#pattern_${L.value}_${t})`
2227
- }, null, 8, ["shape", "fill"])]),
2228
- key: "0"
2229
- } : void 0]), 1032, [
2230
- "legendSet",
2231
- "config",
2232
- "isCursorPointer"
2233
- ])) : C("", !0)], !0)], 512)], 8, ["to"])) : C("", !0),
2234
- Qt.value && B.value.userOptions.buttons.table ? (O(), S(qe(Ni.value.component), Ve({ key: 7 }, Ni.value.props, {
2235
- ref_key: "tableUnit",
2236
- ref: pn,
2237
- onClose: Pi
2238
- }), Le({
2239
- content: N(() => [ze(M(Ut), {
2240
- colNames: Ei.value.colNames,
2241
- head: Ei.value.head,
2242
- body: Ei.value.body,
2243
- config: Ei.value.config,
2244
- title: B.value.table.useDialog ? "" : Ni.value.title,
2245
- withCloseButton: !B.value.table.useDialog,
2246
- isCursorPointer: V.value,
2247
- onClose: Pi
2248
- }, {
2249
- th: N(({ th: e }) => [T("div", { innerHTML: e }, null, 8, Lt)]),
2250
- td: N(({ td: e }) => [Re(Ye(isNaN(Number(e)) ? e : M(re)({
2251
- p: B.value.style.chart.lines.dataLabels.prefix,
2252
- v: e,
2253
- s: B.value.style.chart.lines.dataLabels.suffix,
2254
- r: B.value.table.td.roundingValue
2255
- })), 1)]),
2256
- _: 1
2257
- }, 8, [
2258
- "colNames",
2259
- "head",
2260
- "body",
2261
- "config",
2262
- "title",
2263
- "withCloseButton",
2264
- "isCursorPointer"
2265
- ])]),
2266
- _: 2
2267
- }, [B.value.table.useDialog ? {
2268
- name: "title",
2269
- fn: N(() => [Re(Ye(Ni.value.title), 1)]),
2270
- key: "0"
2271
- } : void 0, B.value.table.useDialog ? {
2272
- name: "actions",
2273
- fn: N(() => [T("button", {
2274
- tabindex: "0",
2275
- class: "vue-ui-user-options-button",
2276
- onClick: n[1] ||= (e) => Ti(B.value.userOptions.callbacks.csv),
2277
- style: We({ cursor: V.value ? "pointer" : "default" })
2278
- }, [ze(M(Vt), {
2279
- name: "fileCsv",
2280
- stroke: Ni.value.props.color
2281
- }, null, 8, ["stroke"])], 4)]),
2282
- key: "1"
2283
- } : void 0]), 1040)) : C("", !0),
2284
- B.value.style.chart.zoom.show && Qt.value && Zr.value && K.value > 6 ? (O(), S(ke, {
2285
- key: 8,
2286
- ref_key: "chartSlicer",
2287
- ref: rn,
2288
- allMinimaps: kr.value,
2289
- background: B.value.style.chart.zoom.color,
2290
- borderColor: B.value.style.chart.backgroundColor,
2291
- customFormat: B.value.style.chart.zoom.customFormat,
2292
- cutNullValues: !1,
2293
- enableRangeHandles: B.value.style.chart.zoom.enableRangeHandles,
2294
- enableSelectionDrag: B.value.style.chart.zoom.enableSelectionDrag,
2295
- end: q.value.end,
2296
- focusOnDrag: B.value.style.chart.zoom.focusOnDrag,
2297
- focusRangeRatio: B.value.style.chart.zoom.focusRangeRatio,
2298
- fontSize: B.value.style.chart.zoom.fontSize,
2299
- immediate: !B.value.style.chart.zoom.preview.enable,
2300
- inputColor: B.value.style.chart.zoom.color,
2301
- isPreview: yr.value,
2302
- labelLeft: B.value.style.chart.grid.x.timeLabels.values[q.value.start] ? Lr.value?.[0]?.text ?? "" : "",
2303
- labelRight: B.value.style.chart.grid.x.timeLabels.values[q.value.end - 1] ? Lr.value?.at(-1)?.text ?? "" : "",
2304
- max: Math.max(...e.dataset.map((e) => e.series.length)),
2305
- min: 0,
2306
- minimap: Or.value,
2307
- minimapCompact: B.value.style.chart.zoom.minimap.compact,
2308
- minimapFrameColor: B.value.style.chart.zoom.minimap.frameColor,
2309
- minimapIndicatorColor: B.value.style.chart.zoom.minimap.indicatorColor,
2310
- minimapMerged: !1,
2311
- minimapSelectedColor: B.value.style.chart.zoom.minimap.selectedColor,
2312
- minimapSelectedColorOpacity: B.value.style.chart.zoom.minimap.selectedColorOpacity,
2313
- minimapSelectedIndex: $.value,
2314
- minimapSelectionRadius: 1,
2315
- preciseLabels: Kr.value.length ? Kr.value : Rr.value,
2316
- refreshEndPoint: B.value.style.chart.zoom.endIndex === null ? Math.max(...e.dataset.map((e) => e.series.length)) : B.value.style.chart.zoom.endIndex + 1,
2317
- refreshStartPoint: B.value.style.chart.zoom.startIndex === null ? 0 : B.value.style.chart.zoom.startIndex,
2318
- selectColor: B.value.style.chart.zoom.highlightColor,
2319
- selectedSeries: Vi.value,
2320
- smoothMinimap: !1,
2321
- start: q.value.start,
2322
- textColor: B.value.style.chart.color,
2323
- timeLabels: Rr.value,
2324
- usePreciseLabels: B.value.style.chart.grid.x.timeLabels.datetimeFormatter.enable && !B.value.style.chart.zoom.useDefaultFormat,
2325
- valueEnd: q.value.end,
2326
- valueStart: q.value.start,
2327
- verticalHandles: B.value.style.chart.zoom.minimap.verticalHandles,
2328
- maxWidth: B.value.style.chart.zoom.maxWidth,
2329
- isCursorPointer: V.value,
2330
- additionalMinimapHeight: B.value.style.chart.zoom.minimap.additionalHeight,
2331
- handleType: B.value.style.chart.zoom.minimap.handleType,
2332
- handleIconColor: B.value.style.chart.zoom.minimap.handleIconColor,
2333
- handleBorderWidth: B.value.style.chart.zoom.minimap.handleBorderWidth,
2334
- handleBorderColor: B.value.style.chart.zoom.minimap.handleBorderColor,
2335
- handleFill: B.value.style.chart.zoom.minimap.handleFill,
2336
- handleWidth: B.value.style.chart.zoom.minimap.handleWidth,
2337
- "onUpdate:end": ti,
2338
- "onUpdate:start": ei,
2339
- onTrapMouse: _r,
2340
- onReset: n[2] ||= () => wr({ force: !0 }),
2341
- onFutureEnd: n[3] ||= (e) => br("end", e),
2342
- onFutureStart: n[4] ||= (e) => br("start", e)
2343
- }, {
2344
- "reset-action": N(({ reset: e }) => [j(t.$slots, "reset-action", D(E({ reset: e })), void 0, !0)]),
2345
- slotMap: N(({ width: e, height: t, unitW: n }) => [T("g", { innerHTML: Ui({
2346
- minimapW: e,
2347
- minimapH: t,
2348
- unitW: n
2349
- }) }, null, 8, Rt)]),
2350
- _: 3
2351
- }, 8, /* @__PURE__ */ "allMinimaps.background.borderColor.customFormat.enableRangeHandles.enableSelectionDrag.end.focusOnDrag.focusRangeRatio.fontSize.immediate.inputColor.isPreview.labelLeft.labelRight.max.minimap.minimapCompact.minimapFrameColor.minimapIndicatorColor.minimapSelectedColor.minimapSelectedColorOpacity.minimapSelectedIndex.preciseLabels.refreshEndPoint.refreshStartPoint.selectColor.selectedSeries.start.textColor.timeLabels.usePreciseLabels.valueEnd.valueStart.verticalHandles.maxWidth.isCursorPointer.additionalMinimapHeight.handleType.handleIconColor.handleBorderWidth.handleBorderColor.handleFill.handleWidth".split("."))) : C("", !0),
2352
- T("div", { id: `legend-bottom-${L.value}` }, null, 8, zt),
2353
- ze(M(Bt), {
2354
- teleportTo: B.value.style.chart.tooltip.teleportTo,
2355
- show: H.value.showTooltip && $t.value,
2356
- backgroundColor: B.value.style.chart.tooltip.backgroundColor,
2357
- color: B.value.style.chart.tooltip.color,
2358
- fontSize: B.value.style.chart.tooltip.fontSize,
2359
- borderRadius: B.value.style.chart.tooltip.borderRadius,
2360
- borderColor: B.value.style.chart.tooltip.borderColor,
2361
- borderWidth: B.value.style.chart.tooltip.borderWidth,
2362
- backgroundOpacity: B.value.style.chart.tooltip.backgroundOpacity,
2363
- position: B.value.style.chart.tooltip.position,
2364
- offsetX: B.value.style.chart.tooltip.offsetX,
2365
- offsetY: B.value.style.chart.tooltip.offsetY,
2366
- parent: I.value,
2367
- content: mi.value,
2368
- isFullscreen: sn.value,
2369
- isCustom: B.value.style.chart.tooltip.customFormat && typeof B.value.style.chart.tooltip.customFormat == "function",
2370
- smooth: B.value.style.chart.tooltip.smooth,
2371
- backdropFilter: B.value.style.chart.tooltip.backdropFilter,
2372
- smoothForce: B.value.style.chart.tooltip.smoothForce,
2373
- smoothSnapThreshold: B.value.style.chart.tooltip.smoothSnapThreshold,
2374
- isA11yMode: On.value === "keyboard",
2375
- a11yPosition: Dn.value
2376
- }, {
2377
- "tooltip-before": N(() => [j(t.$slots, "tooltip-before", D(E({ ...Yr.value })), void 0, !0)]),
2378
- tooltip: N(() => [j(t.$slots, "tooltip", D(E({ ...Yr.value })), void 0, !0)]),
2379
- "tooltip-after": N(() => [j(t.$slots, "tooltip-after", D(E({ ...Yr.value })), void 0, !0)]),
2380
- _: 3
2381
- }, 8, [
2382
- "teleportTo",
2383
- "show",
2384
- "backgroundColor",
2385
- "color",
2386
- "fontSize",
2387
- "borderRadius",
2388
- "borderColor",
2389
- "borderWidth",
2390
- "backgroundOpacity",
2391
- "position",
2392
- "offsetX",
2393
- "offsetY",
2394
- "parent",
2395
- "content",
2396
- "isFullscreen",
2397
- "isCustom",
2398
- "smooth",
2399
- "backdropFilter",
2400
- "smoothForce",
2401
- "smoothSnapThreshold",
2402
- "isA11yMode",
2403
- "a11yPosition"
2404
- ]),
2405
- t.$slots.source ? (O(), w("div", {
2406
- key: 9,
2407
- ref_key: "source",
2408
- ref: on,
2409
- dir: "auto"
2410
- }, [j(t.$slots, "source", {}, void 0, !0)], 512)) : C("", !0),
2411
- j(t.$slots, "skeleton", {}, () => [M(Ln) ? (O(), S(_e, { key: 0 })) : C("", !0)], !0)
2412
- ], 46, tt));
2413
- }
2414
- }, [["__scopeId", "data-v-3de8d18e"]]);
2415
- //#endregion
2416
- export { et as n, Bt as t };