vue-data-ui 3.15.12 → 3.16.1

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 (218) hide show
  1. package/README.md +132 -59
  2. package/dist/A11yDataTable-KcVAX2cP.js +54 -0
  3. package/dist/{Arrow-DlPyR6HQ.js → Arrow-Bn-9n3bm.js} +1 -1
  4. package/dist/{BaseDraggableDialog-DSpKTn3R.js → BaseDraggableDialog-CIb-iD9g.js} +2 -2
  5. package/dist/{BaseIcon-CNx8Tzl5.js → BaseIcon-Cb3zzG6s.js} +1 -1
  6. package/dist/{BaseLegendToggle-Y61xahI4.js → BaseLegendToggle-BQVIawmA.js} +1 -1
  7. package/dist/{BaseZoomControls-CoFievy9.js → BaseZoomControls-DievbOeJ.js} +2 -2
  8. package/dist/ColorPicker-B0mV4xzu.js +255 -0
  9. package/dist/{DataTable-Bo1pmAqG.js → DataTable-DT2kIdQ6.js} +2 -2
  10. package/dist/Legend-CS7Xo5LK.js +101 -0
  11. package/dist/{NonSvgPenAndPaper-CGk_xThe.js → NonSvgPenAndPaper-VyJFyJ6X.js} +3 -3
  12. package/dist/{PackageVersion-DN9d0ME5.js → PackageVersion-DPO-OOVI.js} +1 -1
  13. package/dist/{PenAndPaper-DWV1FMIi.js → PenAndPaper-Ct3qJ4lA.js} +109 -101
  14. package/dist/{Shape-CSyWYgXc.js → Shape-BKRUOeKk.js} +1 -1
  15. package/dist/{Slicer-DZJA9IG-.js → Slicer-DUycDH_N.js} +2 -2
  16. package/dist/{SlicerPreview-I2J0UUF_.js → SlicerPreview-DTjwV0iY.js} +2 -2
  17. package/dist/{SparkTooltip-BiseJed3.js → SparkTooltip-BorBpltj.js} +1 -1
  18. package/dist/{Title-BfyrP-jp.js → Title-BeMKE1cj.js} +1 -1
  19. package/dist/{Tooltip-DL3QgjZf.js → Tooltip-Bf-kM3_A.js} +86 -68
  20. package/dist/{UserOptions-CrLqEimB.js → UserOptions-rW2fRf3V.js} +228 -222
  21. package/dist/components/arrow.js +1 -1
  22. package/dist/components/vue-ui-3d-bar.js +1 -1
  23. package/dist/components/vue-ui-accordion.js +1 -1
  24. package/dist/components/vue-ui-age-pyramid.js +1 -1
  25. package/dist/components/vue-ui-annotator.js +1 -1
  26. package/dist/components/vue-ui-bullet.js +1 -1
  27. package/dist/components/vue-ui-bump.js +1 -1
  28. package/dist/components/vue-ui-candlestick.js +1 -1
  29. package/dist/components/vue-ui-carousel-table.js +1 -1
  30. package/dist/components/vue-ui-chestnut.js +1 -1
  31. package/dist/components/vue-ui-chord.js +1 -1
  32. package/dist/components/vue-ui-circle-pack.js +1 -1
  33. package/dist/components/vue-ui-cursor.js +1 -1
  34. package/dist/components/vue-ui-dag.js +1 -1
  35. package/dist/components/vue-ui-dashboard.js +1 -1
  36. package/dist/components/vue-ui-digits.js +1 -1
  37. package/dist/components/vue-ui-donut-evolution.js +1 -1
  38. package/dist/components/vue-ui-donut.js +1 -1
  39. package/dist/components/vue-ui-dumbbell.js +1 -1
  40. package/dist/components/vue-ui-flow.js +1 -1
  41. package/dist/components/vue-ui-funnel.js +1 -1
  42. package/dist/components/vue-ui-galaxy.js +1 -1
  43. package/dist/components/vue-ui-gauge.js +1 -1
  44. package/dist/components/vue-ui-geo.js +1 -1
  45. package/dist/components/vue-ui-gizmo.js +1 -1
  46. package/dist/components/vue-ui-heatmap.js +1 -1
  47. package/dist/components/vue-ui-history-plot.js +1 -1
  48. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  49. package/dist/components/vue-ui-icon.js +1 -1
  50. package/dist/components/vue-ui-kpi.js +1 -1
  51. package/dist/components/vue-ui-mini-loader.js +1 -1
  52. package/dist/components/vue-ui-molecule.js +1 -1
  53. package/dist/components/vue-ui-mood-radar.js +1 -1
  54. package/dist/components/vue-ui-nested-donuts.js +1 -1
  55. package/dist/components/vue-ui-onion.js +1 -1
  56. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  57. package/dist/components/vue-ui-quadrant.js +1 -1
  58. package/dist/components/vue-ui-quick-chart.js +1 -1
  59. package/dist/components/vue-ui-radar.js +1 -1
  60. package/dist/components/vue-ui-rating.js +1 -1
  61. package/dist/components/vue-ui-relation-circle.js +1 -1
  62. package/dist/components/vue-ui-ridgeline.js +1 -1
  63. package/dist/components/vue-ui-rings.js +1 -1
  64. package/dist/components/vue-ui-scatter.js +1 -1
  65. package/dist/components/vue-ui-skeleton.js +1 -1
  66. package/dist/components/vue-ui-smiley.js +1 -1
  67. package/dist/components/vue-ui-spark-trend.js +1 -1
  68. package/dist/components/vue-ui-sparkbar.js +1 -1
  69. package/dist/components/vue-ui-sparkgauge.js +1 -1
  70. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  71. package/dist/components/vue-ui-sparkline.js +1 -1
  72. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  73. package/dist/components/vue-ui-stackbar.js +1 -1
  74. package/dist/components/vue-ui-stackline.js +1 -1
  75. package/dist/components/vue-ui-strip-plot.js +1 -1
  76. package/dist/components/vue-ui-table-heatmap.js +1 -1
  77. package/dist/components/vue-ui-table-sparkline.js +1 -1
  78. package/dist/components/vue-ui-table.js +1 -1
  79. package/dist/components/vue-ui-thermometer.js +1 -1
  80. package/dist/components/vue-ui-timer.js +1 -1
  81. package/dist/components/vue-ui-tiremarks.js +1 -1
  82. package/dist/components/vue-ui-treemap.js +1 -1
  83. package/dist/components/vue-ui-vertical-bar.js +1 -1
  84. package/dist/components/vue-ui-waffle.js +1 -1
  85. package/dist/components/vue-ui-wheel.js +1 -1
  86. package/dist/components/vue-ui-word-cloud.js +1 -1
  87. package/dist/components/vue-ui-world.js +1 -1
  88. package/dist/components/vue-ui-xy-canvas.js +1 -1
  89. package/dist/components/vue-ui-xy.js +1 -1
  90. package/dist/{dom-to-png-BAqzNjb1.js → dom-to-png-CtxhhdWb.js} +1 -1
  91. package/dist/{exposedLib-H4lmBl1t.js → exposedLib-DlqmhBx3.js} +1 -1
  92. package/dist/{img-BYYzY_QU.js → img-LXxMLmCg.js} +1 -1
  93. package/dist/{labelUtils-CTXUc3V9.js → labelUtils-CqTHa20R.js} +1 -1
  94. package/dist/{lib-GwPnJSrY.js → lib-DBptbyyI.js} +106 -84
  95. package/dist/{pdf-z-YiJeJQ.js → pdf-B4tTdfvl.js} +1 -1
  96. package/dist/style.css +1 -1
  97. package/dist/types/vue-data-ui.d.ts +59 -0
  98. package/dist/{useAutoSizeLabelsInsideViewbox-80fzdfxt.js → useAutoSizeLabelsInsideViewbox-DX7LdvFX.js} +1 -1
  99. package/dist/{useConfig-CIgyKZ6R.js → useConfig-DO94Aj5s.js} +953 -700
  100. package/dist/{useNestedProp-BBT0mbHh.js → useNestedProp-Bf5XFbs8.js} +1 -1
  101. package/dist/{useObjectBindings-BlXBVtRa.js → useObjectBindings-DQ8g8Jwi.js} +1 -1
  102. package/dist/usePrefersMotion-CUKm8_t8.js +15 -0
  103. package/dist/{usePrinter-DiK5R6k-.js → usePrinter-CEpYU3r5.js} +2 -2
  104. package/dist/utils.js +3 -3
  105. package/dist/{vue-data-ui-C2kPofmi.js → vue-data-ui-DXGkXRnC.js} +68 -68
  106. package/dist/vue-data-ui.js +72 -72
  107. package/dist/vue-ui-3d-bar-BaFpQnd5.js +1597 -0
  108. package/dist/{vue-ui-accordion-BGHTqIBt.js → vue-ui-accordion-nvggWcGN.js} +4 -4
  109. package/dist/vue-ui-age-pyramid-CRM498Pc.js +1069 -0
  110. package/dist/{vue-ui-annotator-B1GWVtPp.js → vue-ui-annotator-CkPi9moo.js} +7 -7
  111. package/dist/{vue-ui-bullet-DPoGGtaG.js → vue-ui-bullet-BBiwof3c.js} +158 -150
  112. package/dist/vue-ui-bump-Brxpu4xV.js +1147 -0
  113. package/dist/vue-ui-candlestick-DAnZv77-.js +1587 -0
  114. package/dist/{vue-ui-carousel-table-CmiHTJ8E.js → vue-ui-carousel-table-BHRZBYY0.js} +168 -160
  115. package/dist/vue-ui-chestnut-CbrYnRgm.js +1812 -0
  116. package/dist/vue-ui-chord-CaX_IUVs.js +1326 -0
  117. package/dist/vue-ui-circle-pack-CR3h53sc.js +988 -0
  118. package/dist/{vue-ui-cursor-B4mHR7QC.js → vue-ui-cursor-Cjfazw7Z.js} +4 -4
  119. package/dist/vue-ui-dag-B9vH3c66.js +3047 -0
  120. package/dist/{vue-ui-dashboard-Bo5FX73U.js → vue-ui-dashboard-DWll05qs.js} +70 -70
  121. package/dist/{vue-ui-digits-mpo2IcM5.js → vue-ui-digits-DcM67rMx.js} +76 -66
  122. package/dist/vue-ui-donut-Be5G38P5.js +2229 -0
  123. package/dist/vue-ui-donut-evolution-BLSesj3c.js +1358 -0
  124. package/dist/vue-ui-dumbbell-DIMiCY4r.js +1380 -0
  125. package/dist/vue-ui-flow-zvZylhgr.js +1202 -0
  126. package/dist/{vue-ui-funnel-BRkaEkBb.js → vue-ui-funnel-CSri-oWm.js} +7 -7
  127. package/dist/vue-ui-galaxy-CGykxsAI.js +1012 -0
  128. package/dist/{vue-ui-gauge-J2VYHsQe.js → vue-ui-gauge-D1MNB9Jq.js} +8 -8
  129. package/dist/vue-ui-geo-DdJDGhG2.js +1437 -0
  130. package/dist/{vue-ui-gizmo-DEec3-v9.js → vue-ui-gizmo-BZYRHGFm.js} +77 -68
  131. package/dist/vue-ui-heatmap-CryOx6XK.js +1500 -0
  132. package/dist/vue-ui-history-plot-C85iw9Kl.js +1449 -0
  133. package/dist/vue-ui-horizontal-bar-BoBZOybC.js +1637 -0
  134. package/dist/vue-ui-kpi-DHrolXw6.js +109 -0
  135. package/dist/{vue-ui-mini-loader-CoOHvZUk.js → vue-ui-mini-loader-Bc3fEQ9j.js} +3 -3
  136. package/dist/{vue-ui-molecule-Chq1qWDK.js → vue-ui-molecule-DJ_BQ4DK.js} +6 -6
  137. package/dist/vue-ui-mood-radar-CBE02TpQ.js +1086 -0
  138. package/dist/vue-ui-nested-donuts-YTFtb4CL.js +1595 -0
  139. package/dist/vue-ui-onion-B9l81-PS.js +1124 -0
  140. package/dist/vue-ui-parallel-coordinate-plot-C1e_rs8J.js +1252 -0
  141. package/dist/vue-ui-quadrant-C1qsLCRn.js +1759 -0
  142. package/dist/vue-ui-quick-chart-DFoz3WiA.js +2216 -0
  143. package/dist/vue-ui-radar-Cmo3p-UA.js +1139 -0
  144. package/dist/{vue-ui-rating-zV58MDQh.js → vue-ui-rating-BAHhYt_A.js} +3 -3
  145. package/dist/vue-ui-relation-circle-BqwznVwf.js +782 -0
  146. package/dist/vue-ui-ridgeline-CDk9eXJq.js +1473 -0
  147. package/dist/vue-ui-rings-BRkGoQdL.js +1156 -0
  148. package/dist/vue-ui-scatter-BxDtWASQ.js +1831 -0
  149. package/dist/{vue-ui-skeleton-CbqNz9IE.js → vue-ui-skeleton-D6kTb9aO.js} +4 -4
  150. package/dist/{vue-ui-smiley-BK5EKp9u.js → vue-ui-smiley-CzVaLlpB.js} +3 -3
  151. package/dist/vue-ui-spark-trend-D8Mf2A1w.js +378 -0
  152. package/dist/{vue-ui-sparkbar-DUDWvTo-.js → vue-ui-sparkbar-BbYj56c3.js} +86 -84
  153. package/dist/vue-ui-sparkgauge-DXzOSLRb.js +256 -0
  154. package/dist/vue-ui-sparkhistogram-DMfSx1iH.js +474 -0
  155. package/dist/vue-ui-sparkline-D-rQ9PsC.js +1327 -0
  156. package/dist/vue-ui-sparkstackbar-DK5n8IKP.js +621 -0
  157. package/dist/vue-ui-stackbar-BHthy6jf.js +2070 -0
  158. package/dist/vue-ui-stackline-C6-WNpKD.js +2164 -0
  159. package/dist/vue-ui-strip-plot-CHu-1ilI.js +1183 -0
  160. package/dist/{vue-ui-table-BHuXI4Eq.js → vue-ui-table-DW9JGsLq.js} +6 -6
  161. package/dist/{vue-ui-table-heatmap-y88sBfu3.js → vue-ui-table-heatmap-LYqoBit9.js} +6 -6
  162. package/dist/{vue-ui-table-sparkline-ClpLLKi2.js → vue-ui-table-sparkline-CXK1dFr-.js} +5 -5
  163. package/dist/{vue-ui-thermometer-sjruUGQx.js → vue-ui-thermometer-BN8tflOz.js} +272 -256
  164. package/dist/{vue-ui-timer-CgdgMKIc.js → vue-ui-timer-DGT0UBOF.js} +6 -6
  165. package/dist/{vue-ui-tiremarks-UBDpAIVr.js → vue-ui-tiremarks-BZ-osQqY.js} +204 -191
  166. package/dist/vue-ui-treemap-98KaVRyd.js +1723 -0
  167. package/dist/vue-ui-waffle-Cb7oJnIc.js +1321 -0
  168. package/dist/vue-ui-wheel-sfew1fjw.js +738 -0
  169. package/dist/vue-ui-word-cloud-vq1t9JHr.js +1548 -0
  170. package/dist/{vue-ui-world-D-3wgoTn.js → vue-ui-world-CN0f6elD.js} +8 -8
  171. package/dist/vue-ui-xy-BdzEiImZ.js +3877 -0
  172. package/dist/vue-ui-xy-canvas-CWQzUQzY.js +1810 -0
  173. package/package.json +2 -2
  174. package/dist/ColorPicker-j0ySewhI.js +0 -244
  175. package/dist/Legend-1LMMsPxL.js +0 -90
  176. package/dist/vue-ui-3d-bar-BhNgFaJA.js +0 -1484
  177. package/dist/vue-ui-age-pyramid-CuYRf5v-.js +0 -997
  178. package/dist/vue-ui-bump-C_fKharc.js +0 -1059
  179. package/dist/vue-ui-candlestick-BY-_E7eZ.js +0 -1487
  180. package/dist/vue-ui-chestnut-C-bQYaNI.js +0 -1557
  181. package/dist/vue-ui-chord-uQYQgyGM.js +0 -1220
  182. package/dist/vue-ui-circle-pack-CdbDcuDw.js +0 -907
  183. package/dist/vue-ui-dag-DsHUvjvm.js +0 -2885
  184. package/dist/vue-ui-donut-CzCgCVsx.js +0 -2139
  185. package/dist/vue-ui-donut-evolution-C_ck_TOR.js +0 -1297
  186. package/dist/vue-ui-dumbbell-CVSA90b2.js +0 -1293
  187. package/dist/vue-ui-flow-CsbSaFnu.js +0 -1075
  188. package/dist/vue-ui-galaxy-DWKHDciu.js +0 -914
  189. package/dist/vue-ui-geo-DykhEWVq.js +0 -1331
  190. package/dist/vue-ui-heatmap-BEDirv8T.js +0 -1334
  191. package/dist/vue-ui-history-plot-Bs96PebH.js +0 -1292
  192. package/dist/vue-ui-horizontal-bar-ClQcB9nL.js +0 -1522
  193. package/dist/vue-ui-kpi-DlUEHKuw.js +0 -101
  194. package/dist/vue-ui-mood-radar-A2LBLgUi.js +0 -967
  195. package/dist/vue-ui-nested-donuts-DFX251aT.js +0 -1513
  196. package/dist/vue-ui-onion-CW0YO9Ro.js +0 -1045
  197. package/dist/vue-ui-parallel-coordinate-plot-UFg10bHP.js +0 -1134
  198. package/dist/vue-ui-quadrant-C1pLW2zA.js +0 -1647
  199. package/dist/vue-ui-quick-chart-FaxttnJY.js +0 -2030
  200. package/dist/vue-ui-radar-DE70LPBZ.js +0 -1067
  201. package/dist/vue-ui-relation-circle-iuRXIyRU.js +0 -704
  202. package/dist/vue-ui-ridgeline-CwvDh5pG.js +0 -1385
  203. package/dist/vue-ui-rings-80ZUki42.js +0 -1083
  204. package/dist/vue-ui-scatter-FdAAYJOK.js +0 -1670
  205. package/dist/vue-ui-spark-trend-C68p8-Xp.js +0 -349
  206. package/dist/vue-ui-sparkgauge-DdRtHQDe.js +0 -245
  207. package/dist/vue-ui-sparkhistogram-C9DvzQae.js +0 -396
  208. package/dist/vue-ui-sparkline-B2RDrdiR.js +0 -1273
  209. package/dist/vue-ui-sparkstackbar-BsIOHUE5.js +0 -475
  210. package/dist/vue-ui-stackbar-BZl0kEkb.js +0 -2001
  211. package/dist/vue-ui-stackline-2VKxwFei.js +0 -2099
  212. package/dist/vue-ui-strip-plot-B9nBSRyY.js +0 -1080
  213. package/dist/vue-ui-treemap-BS5EilZf.js +0 -1645
  214. package/dist/vue-ui-waffle-CbX5K9Q2.js +0 -1211
  215. package/dist/vue-ui-wheel-BIJ09H5D.js +0 -723
  216. package/dist/vue-ui-word-cloud-DJmJ-oYT.js +0 -1466
  217. package/dist/vue-ui-xy-canvas-4auyhlTr.js +0 -1717
  218. package/dist/vue-ui-xy-f67V1xjd.js +0 -3713
@@ -1,1487 +0,0 @@
1
- import { defineAsyncComponent as X, computed as h, ref as v, toRefs as Dl, watch as ie, shallowRef as Tt, onMounted as Bl, onBeforeUnmount as Ue, watchEffect as be, nextTick as He, openBlock as u, createElementBlock as i, normalizeStyle as Z, normalizeClass as V, createBlock as K, unref as y, withCtx as f, renderSlot as g, normalizeProps as z, guardReactiveProps as L, createCommentVNode as m, createSlots as It, createVNode as Xe, createElementVNode as p, Fragment as T, renderList as M, toDisplayString as ne, mergeProps as Ft, resolveDynamicComponent as Nl, createTextVNode as Mt } from "vue";
2
- import { j as El, t as Rt, o as Pt, q as J, D as Vl, K as q, I as Wl, l as W, X as Ul, v as xe, u as Hl, a0 as Xl, a1 as ql, T as jl, U as Gl, a2 as Ot } from "./lib-GwPnJSrY.js";
3
- import { t as Dt, u as Yl } from "./useResponsive-DfdjqQps.js";
4
- import { u as Kl } from "./useConfig-CIgyKZ6R.js";
5
- import { u as Bt, a as Nt, b as Jl } from "./useTimeLabels-C-A2uZKi.js";
6
- import { u as Ql } from "./usePrinter-DiK5R6k-.js";
7
- import { u as Zl, B as ea } from "./BaseScanner-BhhkKVoj.js";
8
- import { u as ta } from "./useSvgExport-ByUukOZt.js";
9
- import { u as qe } from "./useNestedProp-BBT0mbHh.js";
10
- import { u as la } from "./useThemeCheck-D1ZYXUwG.js";
11
- import { u as aa } from "./useUserOptionState-BIvW1Kz7.js";
12
- import { u as oa } from "./useChartAccessibility-9icAAmYg.js";
13
- import { u as sa } from "./useTimeLabelCollider-CIsgDrl9.js";
14
- import ua from "./img-BYYzY_QU.js";
15
- import ia from "./Title-BfyrP-jp.js";
16
- import na from "./vue_ui_candlestick-BAMn-VGw.js";
17
- import { S as ra } from "./SlicerPreview-I2J0UUF_.js";
18
- import { _ as va } from "./_plugin-vue_export-helper-CHgC5LLL.js";
19
- const da = ["id"], ca = ["xmlns", "aria-label", "viewBox"], ya = ["x", "y", "width", "height"], ha = { key: 1 }, ma = ["id"], pa = ["stop-color"], fa = ["stop-color"], ga = ["stop-color"], ba = ["id"], xa = ["stop-color"], ka = ["stop-color"], wa = ["stop-color"], Ca = { key: 0 }, Aa = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], $a = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Sa = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], _a = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], za = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], La = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ta = ["x", "y", "font-size", "fill", "font-weight"], Ia = ["transform", "text-anchor", "font-size", "fill", "font-weight"], Fa = ["transform", "text-anchor", "font-size", "fill", "font-weight"], Ma = ["x", "y", "width", "height", "fill", "rx"], Ra = { key: 0 }, Pa = ["cx", "cy", "r", "fill"], Oa = ["cx", "cy", "r", "fill"], Da = { key: 1 }, Ba = ["x", "y", "width", "height", "rx", "fill"], Na = ["x", "y", "width", "height", "fill", "rx"], Ea = ["x", "y", "height", "width", "fill", "rx"], Va = ["x", "y", "height", "width", "fill", "rx", "stroke", "stroke-width"], Wa = ["d", "stroke"], Ua = ["x", "y", "height", "width", "fill", "onMouseover", "onMouseleave", "onClick"], Ha = ["data-start", "data-end"], Xa = {
20
- key: 4,
21
- class: "vue-data-ui-watermark"
22
- }, qa = ["d", "stroke"], ja = ["d", "stroke", "stroke-width"], Ga = ["innerHTML"], Ya = {
23
- __name: "vue-ui-candlestick",
24
- props: {
25
- config: {
26
- type: Object,
27
- default() {
28
- return {};
29
- }
30
- },
31
- dataset: {
32
- type: Array,
33
- default() {
34
- return [];
35
- }
36
- },
37
- selectedXIndex: {
38
- type: Number,
39
- default: void 0
40
- }
41
- },
42
- emits: ["selectX", "copyAlt"],
43
- setup(Et, { expose: Vt, emit: Wt }) {
44
- const Ut = X(() => import("./BaseIcon-CNx8Tzl5.js")), Ht = X(() => import("./Tooltip-DL3QgjZf.js")), Xt = X(() => import("./vue-ui-accordion-BGHTqIBt.js")), qt = X(() => import("./DataTable-Bo1pmAqG.js")), jt = X(() => import("./PenAndPaper-DWV1FMIi.js")), Gt = X(() => import("./UserOptions-CrLqEimB.js")), Yt = X(() => import("./PackageVersion-DN9d0ME5.js")), Kt = X(() => import("./BaseDraggableDialog-DSpKTn3R.js")), { vue_ui_candlestick: Jt } = Kl(), { isThemeValid: Qt, warnInvalidTheme: Zt } = la(), $ = Et, ke = Wt, we = h(() => !!$.dataset && $.dataset.length), O = v(!1), Ce = v(null), R = v(El()), Ae = v(!1), $e = v(""), B = v(void 0), je = v(0), N = v(null), Ge = v(null), Ye = v(null), ee = v(null), Ke = v(null), Je = v(null), el = v(0), Qe = v(0), Ze = v(0), Se = v(null), te = v(null), le = v(null), _e = v(null), et = v(null), re = v(!1), ve = v(!1), e = v(Ie()), ae = h(() => e.value.userOptions.useCursorPointer), tl = h(() => Rt({
45
- defaultConfig: {
46
- useCssAnimation: !1,
47
- userOptions: { show: !1 },
48
- table: { show: !1 },
49
- style: {
50
- backgroundColor: "#99999930",
51
- layout: {
52
- candle: {
53
- colors: {
54
- bearish: "#BABABA",
55
- bullish: "#CACACA"
56
- }
57
- },
58
- grid: {
59
- stroke: "#6A6A6A",
60
- verticalLines: {
61
- stroke: "#6A6A6A"
62
- },
63
- horizontalLines: {
64
- stroke: "#6A6A6A"
65
- },
66
- yAxis: {
67
- dataLabels: { show: !1 },
68
- scale: {
69
- min: null,
70
- max: null
71
- }
72
- }
73
- },
74
- wick: {
75
- stroke: "#6A6A6A",
76
- extremity: {
77
- color: "#6A6A6A"
78
- }
79
- }
80
- },
81
- tooltip: { show: !1 },
82
- zoom: {
83
- show: !1,
84
- startIndex: null,
85
- endIndex: null
86
- }
87
- }
88
- },
89
- userConfig: e.value.skeletonConfig ?? {}
90
- })), { loading: E, FINAL_DATASET: x, manualLoading: ze } = Zl({
91
- ...Dl($),
92
- FINAL_CONFIG: e,
93
- prepareConfig: Ie,
94
- callback: () => {
95
- Promise.resolve().then(async () => {
96
- await me();
97
- });
98
- },
99
- skeletonDataset: $.config?.skeletonDataset ?? [
100
- [17040672e5, 10, 20, 2, 10, 30],
101
- [17067456e5, 10, 30, 5, 20, 50],
102
- [17092512e5, 20, 50, 10, 30, 80],
103
- [17119296e5, 30, 80, 20, 50, 130],
104
- [17145216e5, 50, 130, 30, 100, 210],
105
- [17172e8, 80, 210, 50, 150, 340],
106
- [1719792e6, 130, 340, 80, 280, 550],
107
- [17224704e5, 210, 550, 130, 450, 890],
108
- [17251488e5, 340, 890, 210, 750, 1440],
109
- [17277408e5, 550, 1440, 340, 1230, 2330],
110
- [17304192e5, 890, 2330, 550, 1950, 3770],
111
- [17330112e5, 1440, 3770, 890, 3200, 5100]
112
- ],
113
- skeletonConfig: Rt({
114
- defaultConfig: e.value,
115
- userConfig: tl.value
116
- })
117
- }), { userOptionsVisible: Le, setUserOptionsVisibility: tt, keepUserOptionState: lt } = aa({ config: e.value }), { svgRef: Te } = oa({ config: e.value.style.title });
118
- function ll() {
119
- tt(!0);
120
- }
121
- function al() {
122
- tt(!1), ke("selectX", { seriesIndex: null, datapoint: null }), B.value = null;
123
- }
124
- function Ie() {
125
- const t = qe({
126
- userConfig: $.config,
127
- defaultConfig: Jt
128
- });
129
- let a = {};
130
- const l = t.theme;
131
- if (l)
132
- if (!Qt.value(t))
133
- Zt(t), a = t;
134
- else {
135
- const o = qe({
136
- userConfig: na[l] || $.config,
137
- defaultConfig: t
138
- });
139
- a = {
140
- ...qe({
141
- userConfig: $.config,
142
- defaultConfig: o
143
- })
144
- };
145
- }
146
- else
147
- a = t;
148
- return a;
149
- }
150
- ie(() => $.config, (t) => {
151
- E.value || (e.value = Ie()), Le.value = !e.value.userOptions.showOnChartHover, at(), el.value += 1, Ze.value += 1, Qe.value += 1, I.value.showTable = e.value.table.show, I.value.showTooltip = e.value.style.tooltip.show, de();
152
- }, { deep: !0 }), ie(() => $.dataset, (t) => {
153
- Array.isArray(t) && t.length > 0 && (ze.value = !1), bt();
154
- }, { deep: !0 });
155
- const b = v({
156
- height: e.value.style.height,
157
- width: e.value.style.width,
158
- xAxisFontSize: e.value.style.layout.grid.xAxis.dataLabels.fontSize,
159
- yAxisFontSize: e.value.style.layout.grid.yAxis.dataLabels.fontSize
160
- }), U = Tt(null), Q = Tt(null);
161
- Bl(() => {
162
- at();
163
- });
164
- const j = h(() => !!e.value.debug);
165
- function at() {
166
- if (Pt($.dataset) && (J({
167
- componentName: "VueUiCandlestick",
168
- type: "dataset",
169
- debug: j.value
170
- }), ze.value = !0), Pt($.dataset) || (ze.value = e.value.loading), setTimeout(() => {
171
- O.value = !0;
172
- }, 10), e.value.responsive) {
173
- const a = Dt(() => {
174
- O.value = !1;
175
- const { width: l, height: o } = Yl({
176
- chart: N.value,
177
- title: e.value.style.title.text ? Ge.value : null,
178
- slicer: e.value.style.zoom.show && A.value > 6 ? ee.value.$el : null,
179
- legend: Ye.value,
180
- source: Ke.value,
181
- noTitle: Je.value
182
- });
183
- requestAnimationFrame(() => {
184
- b.value.width = l, b.value.height = o - 12, e.value.responsiveProportionalSizing ? (b.value.xAxisFontSize = Ot({
185
- relator: Math.min(l, o),
186
- adjuster: e.value.style.width,
187
- source: e.value.style.layout.grid.xAxis.dataLabels.fontSize,
188
- threshold: 6,
189
- fallback: 6
190
- }), b.value.yAxisFontSize = Ot({
191
- relator: Math.min(l, o),
192
- adjuster: e.value.style.width,
193
- source: e.value.style.layout.grid.yAxis.dataLabels.fontSize,
194
- threshold: 6,
195
- fallback: 6
196
- })) : (b.value.xAxisFontSize = e.value.style.layout.grid.xAxis.dataLabels.fontSize, b.value.yAxisFontSize = e.value.style.layout.grid.yAxis.dataLabels.fontSize), Ce.value && clearTimeout(Ce.value), Ce.value = setTimeout(() => {
197
- O.value = !0;
198
- }, 10);
199
- });
200
- });
201
- U.value && (Q.value && U.value.unobserve(Q.value), U.value.disconnect()), U.value = new ResizeObserver(a), Q.value = N.value.parentNode, U.value.observe(Q.value);
202
- }
203
- me();
204
- }
205
- Ue(() => {
206
- U.value && (Q.value && U.value.unobserve(Q.value), U.value.disconnect());
207
- });
208
- const { isPrinting: Fe, isImaging: Me, generatePdf: ot, generateImage: st } = Ql({
209
- elementId: `vue-ui-candlestick_${R.value}`,
210
- fileName: e.value.style.title.text || "vue-ui-candlestick",
211
- options: e.value.userOptions.print
212
- }), ol = h(() => e.value.userOptions.show && !e.value.style.title.text), I = v({
213
- showTable: e.value.table.show,
214
- showTooltip: e.value.style.tooltip.show
215
- }), Re = v(0), sl = Dt((t) => {
216
- Re.value = t;
217
- }, 100);
218
- be((t) => {
219
- const a = te.value;
220
- if (!a) return;
221
- const l = new ResizeObserver((o) => {
222
- sl(o[0].contentRect.height);
223
- });
224
- l.observe(a), t(() => l.disconnect());
225
- }), Ue(() => {
226
- Re.value = 0;
227
- });
228
- const ut = h(() => {
229
- let t = 0;
230
- return te.value && (t = Re.value + b.value.xAxisFontSize), t;
231
- });
232
- function ul() {
233
- let t = e.value.style.layout.grid.yAxis.dataLabels.offsetX;
234
- return Se.value && (t = Array.from(Se.value.querySelectorAll("text")).reduce((o, s) => {
235
- const d = s.getComputedTextLength();
236
- return d > o ? d : o;
237
- }, 0)), t + 13;
238
- }
239
- const n = h(() => {
240
- const { top: t, right: a, bottom: l, left: o } = e.value.style.layout.padding, s = ul(), d = 12;
241
- return {
242
- top: t + d,
243
- right: b.value.width - a,
244
- left: o + s,
245
- bottom: b.value.height - l - ut.value,
246
- width: b.value.width - o - a - s,
247
- height: b.value.height - t - l - ut.value - d
248
- };
249
- }), il = h(() => {
250
- const { left: t, top: a, width: l, height: o } = n.value, s = r.value.start, k = r.value.end - s, F = l / k, _ = C.value.start - s, H = C.value.end - s, Y = Math.max(0, Math.min(k, _)), ge = Math.max(0, Math.min(k, H));
251
- return {
252
- x: t + Y * F,
253
- y: a,
254
- width: (ge - Y) * F,
255
- height: o,
256
- fill: e.value.style.zoom.preview.fill,
257
- stroke: e.value.style.zoom.preview.stroke,
258
- "stroke-width": e.value.style.zoom.preview.strokeWidth,
259
- "stroke-dasharray": e.value.style.zoom.preview.strokeDasharray,
260
- "stroke-linecap": "round",
261
- "stroke-linejoin": "round",
262
- style: {
263
- pointerEvents: "none",
264
- transition: "none !important",
265
- animation: "none !important"
266
- }
267
- };
268
- }), A = h(() => x.value.length), r = v({
269
- start: 0,
270
- end: A.value
271
- }), C = v({ start: 0, end: A.value }), it = h(() => e.value.style.zoom.preview.enable && (C.value.start !== r.value.start || C.value.end !== r.value.end));
272
- function nt(t, a) {
273
- C.value[t] = a;
274
- }
275
- function de() {
276
- let t = Math.max(0, Math.min(r.value.start ?? 0, A.value - 1)), a = Math.max(t + 1, Math.min(r.value.end ?? A.value, A.value));
277
- (!Number.isFinite(t) || !Number.isFinite(a) || a <= t) && (t = 0, a = A.value), r.value.start = t, r.value.end = a, C.value.start = t, C.value.end = a, ee.value && (ee.value.setStartValue(t), ee.value.setEndValue(a));
278
- }
279
- const rt = h(() => x.value.map((t, a) => ({
280
- ...t,
281
- absoluteIndex: a
282
- }))), vt = h(() => rt.value.slice(r.value.start, r.value.end)), S = h(() => (x.value.forEach((t, a) => {
283
- [null, void 0].includes(t[0]) && J({
284
- componentName: "VueUiCandlestick",
285
- type: "datasetAttribute",
286
- property: "period (index 0)",
287
- index: a,
288
- debug: j.value
289
- }), [null, void 0].includes(t[1]) && J({
290
- componentName: "VueUiCandlestick",
291
- type: "datasetAttribute",
292
- property: "open (index 1)",
293
- index: a,
294
- debug: j.value
295
- }), [null, void 0].includes(t[2]) && J({
296
- componentName: "VueUiCandlestick",
297
- type: "datasetAttribute",
298
- property: "high (index 2)",
299
- index: a,
300
- debug: j.value
301
- }), [null, void 0].includes(t[3]) && J({
302
- componentName: "VueUiCandlestick",
303
- type: "datasetAttribute",
304
- property: "low (index 3)",
305
- index: a,
306
- debug: j.value
307
- }), [null, void 0].includes(t[4]) && J({
308
- componentName: "VueUiCandlestick",
309
- type: "datasetAttribute",
310
- property: "close (index 4)",
311
- index: a,
312
- debug: j.value
313
- }), [null, void 0].includes(t[5]) && J({
314
- componentName: "VueUiCandlestick",
315
- type: "datasetAttribute",
316
- property: "volume (index 5)",
317
- index: a,
318
- debug: j.value
319
- });
320
- }), vt.value.map((t) => ({
321
- absoluteIndex: t.absoluteIndex,
322
- period: t[0],
323
- open: t[1],
324
- high: t[2],
325
- low: t[3],
326
- close: t[4],
327
- volume: t[5]
328
- })))), nl = h(() => rt.value.map((t) => ({
329
- absoluteIndex: t.absoluteIndex,
330
- period: t[0],
331
- open: t[1],
332
- high: t[2],
333
- low: t[3],
334
- close: t[4],
335
- volume: t[5]
336
- }))), c = h(() => n.value.width / vt.value.length), dt = h(() => {
337
- const t = e.value.style.layout.grid.yAxis.scale.max === null ? Math.max(...S.value.map((l) => l.high)) : e.value.style.layout.grid.yAxis.scale.max, a = e.value.style.layout.grid.yAxis.scale.min === null ? 0 : e.value.style.layout.grid.yAxis.scale.min;
338
- return {
339
- max: t,
340
- min: a
341
- };
342
- }), P = h(() => Vl(dt.value.min, dt.value.max, e.value.style.layout.grid.yAxis.dataLabels.steps));
343
- function ce(t, a, l = null, o = null) {
344
- return {
345
- ...t,
346
- x: q(n.value.left + a * c.value + c.value / 2),
347
- y: q(n.value.top + (1 - (t - P.value.min) / (P.value.max - P.value.min)) * n.value.height),
348
- value: q(t),
349
- isMax: t === l,
350
- isMin: t === o
351
- };
352
- }
353
- const w = h(() => {
354
- const t = {
355
- o: Math.max(...S.value.map((s) => s.open)),
356
- h: Math.max(...S.value.map((s) => s.high)),
357
- l: Math.max(...S.value.map((s) => s.low)),
358
- c: Math.max(...S.value.map((s) => s.low))
359
- }, a = {
360
- o: Math.min(...S.value.map((s) => s.open)),
361
- h: Math.min(...S.value.map((s) => s.high)),
362
- l: Math.min(...S.value.map((s) => s.low)),
363
- c: Math.min(...S.value.map((s) => s.low))
364
- }, l = Math.max(...S.value.map((s) => s.volume)), o = Math.min(...S.value.map((s) => s.volume));
365
- return S.value.map((s, d) => {
366
- const k = ce(s.open, d, t.o, a.o), F = ce(s.high, d, t.h, a.h), _ = ce(s.low, d, t.l, a.l), H = ce(s.close, d, t.c, a.c), Y = s.close > s.open, ge = s.volume === l, Ee = s.volume === o;
367
- return {
368
- period: s.period,
369
- open: k,
370
- high: F,
371
- low: _,
372
- close: H,
373
- volume: s.volume,
374
- isBullish: Y,
375
- absoluteIndex: s.absoluteIndex,
376
- isMaxVolume: ge,
377
- isMinVolume: Ee
378
- };
379
- });
380
- });
381
- function ye({ item: t, index: a, minimapH: l, unitW: o }) {
382
- const s = e.value.style.layout.grid.yAxis.scale.min ?? 0, d = e.value.style.layout.grid.yAxis.scale.max ?? Math.max(...x.value.map((k) => k[2]));
383
- return {
384
- ...t,
385
- x: q(a * o),
386
- y: q((1 - (t - s) / (d - s)) * l),
387
- value: q(t)
388
- };
389
- }
390
- const rl = h(() => ({ minimapH: t, unitW: a }) => nl.value.map((l, o) => {
391
- const s = ye({ item: l.open, index: o, minimapH: t, unitW: a }), d = ye({ item: l.high, index: o, minimapH: t, unitW: a }), k = ye({ item: l.low, index: o, minimapH: t, unitW: a }), F = ye({ item: l.close, index: o, minimapH: t, unitW: a }), _ = l.close > l.open;
392
- return {
393
- period: l.period,
394
- open: s,
395
- high: d,
396
- low: k,
397
- close: F,
398
- volume: l.volume,
399
- isBullish: _,
400
- absoluteIndex: l.absoluteIndex
401
- };
402
- })), vl = h(() => e.value.style.zoom.minimap.show ? [{
403
- name: "",
404
- series: x.value.map((t) => t[2]),
405
- color: "#000000",
406
- isVisible: !0
407
- }] : []);
408
- function dl(t) {
409
- return q((t - P.value.min) / (P.value.max - P.value.min));
410
- }
411
- const ct = h(() => P.value.ticks.map((t) => ({
412
- y: n.value.bottom - n.value.height * dl(t),
413
- value: q(t)
414
- }))), cl = h(() => S.value.map((t) => t.period)), D = v([]), Pe = v([]);
415
- let yt = 0;
416
- be(() => {
417
- const t = ++yt;
418
- (async () => {
419
- const a = await Bt({
420
- values: x.value.map((l) => l[0]),
421
- maxDatapoints: x.value.length,
422
- formatter: e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter,
423
- start: r.value.start,
424
- end: r.value.end
425
- });
426
- t === yt && (D.value = a);
427
- })();
428
- });
429
- let ht = 0;
430
- be(() => {
431
- const t = ++ht;
432
- (async () => {
433
- const a = await Bt({
434
- values: x.value.map((l) => l[0]),
435
- maxDatapoints: x.value.length,
436
- formatter: e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter,
437
- start: 0,
438
- end: A.value
439
- });
440
- t === ht && (Pe.value = a);
441
- })();
442
- });
443
- const yl = h(() => {
444
- const t = e.value.style.layout.grid.xAxis.dataLabels.modulo;
445
- return D.value.length ? Math.min(t, [...new Set(D.value.map((a) => a.text))].length) : t;
446
- }), mt = v({ months: [], shortMonths: [], days: [], shortDays: [] });
447
- let pt = 0;
448
- be(() => {
449
- const t = ++pt, a = e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter;
450
- (async () => {
451
- const l = await Nt(a.locale).catch(() => Nt("en"));
452
- t === pt && (mt.value = l.data);
453
- })();
454
- });
455
- const ft = h(() => {
456
- const t = e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter, a = Jl({
457
- useUTC: t.useUTC,
458
- locale: mt.value,
459
- januaryAsYear: t.januaryAsYear
460
- });
461
- return (l, o) => {
462
- const d = x.value.map((k) => k[0])?.[l];
463
- return d == null ? "" : a.formatDate(new Date(d), o);
464
- };
465
- }), hl = h(() => (x.value.map((a) => a[0]) || []).map((a, l) => ({
466
- text: ft.value(l, e.value.style.tooltip.timeFormat),
467
- absoluteIndex: l
468
- }))), ml = h(() => (x.value.map((a) => a[0]) || []).map((a, l) => ({
469
- text: ft.value(l, e.value.style.zoom.timeFormat),
470
- absoluteIndex: l
471
- }))), Oe = h(() => {
472
- const t = e.value.style.layout.grid.xAxis.dataLabels, a = D.value || [], l = Pe.value || [], o = r.value.start ?? 0, s = B.value, d = A.value, k = a.map((_) => _?.text ?? ""), F = l.map((_) => _?.text ?? "");
473
- return Wl(
474
- !!t.showOnlyFirstAndLast,
475
- !!t.showOnlyAtModulo,
476
- Math.max(1, yl.value || 1),
477
- k,
478
- F,
479
- o,
480
- s,
481
- d
482
- );
483
- }), gt = h(() => e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? {
484
- start: D.value.find((t) => t.absoluteIndex === r.value.start)?.text ?? "",
485
- end: D.value.find((t) => t.absoluteIndex === r.value.end - 1)?.text ?? ""
486
- } : {
487
- start: x.value[r.value.start] ? x.value[r.value.start][0] : x.value[0][0],
488
- end: x.value[r.value.end - 1] ? x.value[r.value.end - 1][0] : x.value.at(-1)[0]
489
- }), De = v(null);
490
- function pl(t, a) {
491
- e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: a, seriesIndex: t + r.value.start });
492
- }
493
- function fl(t, a) {
494
- e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: a, seriesIndex: t + r.value.start }), B.value = void 0, Ae.value = !1;
495
- }
496
- ie(() => $.selectedXIndex, (t) => {
497
- if ([null, void 0].includes($.selectedXIndex)) {
498
- B.value = null;
499
- return;
500
- }
501
- const a = t - r.value.start;
502
- a < 0 || t >= r.value.end ? B.value = null : B.value = a ?? null;
503
- }, { immediate: !0 });
504
- function gl(t, a) {
505
- e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: a, seriesIndex: t + r.value.start }), B.value = t, De.value = {
506
- datapoint: a,
507
- seriesIndex: t,
508
- series: w.value,
509
- config: e.value
510
- }, Tl({ seriesIndex: t, datapoint: a });
511
- const l = e.value.style.tooltip.customFormat;
512
- if (jl(l) && Gl(() => l({
513
- seriesIndex: t,
514
- datapoint: a,
515
- series: w.value,
516
- config: e.value
517
- })))
518
- $e.value = l({
519
- seriesIndex: t,
520
- datapoint: a,
521
- series: w.value,
522
- config: e.value
523
- });
524
- else if (e.value.style.tooltip.show) {
525
- let o = "";
526
- const { period: s, open: d, high: k, low: F, close: _, volume: H, isBullish: Y } = w.value[t], { period: ge, open: Ee, high: Fl, low: Ml, close: Rl, volume: Pl } = e.value.translations, Ol = e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? e.value.style.tooltip.useDefaultTimeFormat ? D.value[t].text : hl.value[t].text : s;
527
- o += `<div><svg style="margin-right:6px" viewBox="0 0 12 12" height="12" width="12"><rect x="0" y="0" height="12" width="12" rx="${e.value.style.layout.candle.borderRadius * 3}" stroke="${e.value.style.layout.candle.stroke}" stroke-width="${e.value.style.layout.candle.strokeWidth}"
528
- fill="${e.value.style.layout.candle.gradient.show ? Y ? `url(#bullish_gradient_${R.value})` : `url(#bearish_gradient_${R.value})` : Y ? e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.colors.bearish}"/></svg>${Ol}</div>`, o += `${Pl} : <b>${isNaN(H) ? "-" : Number(H.toFixed(e.value.style.tooltip.roundingValue)).toLocaleString()}</b>`, o += `<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${e.value.style.tooltip.borderColor}">`;
529
- const Ve = W({
530
- p: e.value.style.tooltip.prefix,
531
- v: d.value,
532
- s: e.value.style.tooltip.suffix,
533
- r: e.value.style.tooltip.roundingValue
534
- }), zt = W({
535
- p: e.value.style.tooltip.prefix,
536
- v: k.value,
537
- s: e.value.style.tooltip.suffix,
538
- r: e.value.style.tooltip.roundingValue
539
- }), Lt = W({
540
- p: e.value.style.tooltip.prefix,
541
- v: F.value,
542
- s: e.value.style.tooltip.suffix,
543
- r: e.value.style.tooltip.roundingValue
544
- }), We = W({
545
- p: e.value.style.tooltip.prefix,
546
- v: _.value,
547
- s: e.value.style.tooltip.suffix,
548
- r: e.value.style.tooltip.roundingValue
549
- });
550
- e.value.style.tooltip.showChart ? o += `<div style="width:100%;display:flex;align-items:center;justify-content:center;">
551
- <svg viewBox="0 0 100 100" width="100px" style="background: transparent; overflow: visible">
552
- <g>
553
- <line x1="50" x2="50" y1="20" y2="80" stroke="${a.isBullish ? e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.colors.bearish}" stroke-width="2" stroke-linecap="round" />
554
- ${a.isBullish ? `
555
- <line x1="45" x2="50" y1="65" y2="65" stroke="${e.value.style.layout.candle.colors.bullish}" stroke-width="1.5" stroke-linecap="round" />
556
- <line x1="50" x2="55" y1="35" y2="35" stroke="${e.value.style.layout.candle.colors.bullish}" stroke-width="1.5" stroke-linecap="round" />
557
- <text x="38" y="70" text-anchor="end" fill="${e.value.style.tooltip.color}">${Ve}</text>
558
- <text x="62" y="40" text-anchor="start" fill="${e.value.style.tooltip.color}">${We}</text>
559
- ` : `
560
- <line x1="45" x2="50" y1="35" y2="35" stroke="${e.value.style.layout.candle.colors.bearish}" stroke-width="1.5" stroke-linecap="round" />
561
- <line x1="50" x2="55" y1="65" y2="65" stroke="${e.value.style.layout.candle.colors.bearish}" stroke-width="1.5" stroke-linecap="round" />
562
- <text x="40" y="40" text-anchor="end" fill="${e.value.style.tooltip.color}">${Ve}</text>
563
- <text x="60" y="70" text-anchor="start" fill="${e.value.style.tooltip.color}">${We}</text>
564
- `}
565
- <text x="50" y="13" text-anchor="middle" fill="${e.value.style.tooltip.color}">${zt}</text>
566
- <text x="50" y="97" text-anchor="middle" fill="${e.value.style.tooltip.color}">${Lt}</text>
567
- <g>
568
- </svg>
569
- <div>
570
- ` : (o += `<div>${Ee}: <b>${Ve}</b></div>`, o += `<div>${Fl}: <b>${zt}</b></div>`, o += `<div>${Ml}: <b>${Lt}</b></div>`, o += `<div>${Rl}: <b>${We}</b></div>`), o += "</div>", $e.value = `<div style="text-align:right">${o}</div>`;
571
- }
572
- Ae.value = !0;
573
- }
574
- const oe = v(null);
575
- function bl() {
576
- return new Promise((t) => requestAnimationFrame(
577
- () => requestAnimationFrame(() => t())
578
- ));
579
- }
580
- Ue(() => {
581
- oe.value && cancelAnimationFrame(oe.value);
582
- });
583
- async function bt() {
584
- me(), await He(), oe.value && cancelAnimationFrame(oe.value), oe.value = requestAnimationFrame(async () => {
585
- await bl(), me();
586
- });
587
- }
588
- const se = v(!1), xt = v(!1), he = v(!1);
589
- function me() {
590
- if (!se.value) {
591
- se.value = !0;
592
- try {
593
- const { startIndex: t, endIndex: a } = e.value.style.zoom, l = A.value, o = t ?? 0, s = a != null ? Math.min(kt(a + 1), l) : l;
594
- he.value = !0, r.value.start = o, r.value.end = s, C.value.start = o, C.value.end = s, de(), xt.value = !0;
595
- } finally {
596
- queueMicrotask(() => {
597
- he.value = !1;
598
- }), se.value = !1;
599
- }
600
- }
601
- }
602
- function kt(t) {
603
- const a = A.value;
604
- return t > a ? a : t < 0 || t < r.value.start ? e.value.style.zoom.startIndex !== null ? e.value.style.zoom.startIndex + 1 : 1 : t;
605
- }
606
- function Be(t = null) {
607
- He(() => {
608
- const a = [e.value.translations.period, e.value.translations.open, e.value.translations.high, e.value.translations.low, e.value.translations.close, e.value.translations.volume], l = w.value.map((d, k) => [
609
- e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? D.value[k].text : d.period,
610
- d.open.value,
611
- d.high.value,
612
- d.low.value,
613
- d.close.value,
614
- d.volume
615
- ]), o = [[e.value.style.title.text], [e.value.style.title.subtitle.text], [[""], [""], [""]]].concat([a]).concat(l), s = Xl(o);
616
- t ? t(s) : ql({ csvContent: s, title: e.value.style.title.text || "vue-ui-candlestick" });
617
- });
618
- }
619
- const pe = h(() => {
620
- const t = w.value.map((o, s) => {
621
- const d = e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? D.value?.[s]?.text ?? "" : o.period, k = W({
622
- p: e.value.table.td.prefix,
623
- v: o.open.value,
624
- s: e.value.table.td.suffix,
625
- r: e.value.table.td.roundingValue
626
- }), F = W({
627
- p: e.value.table.td.prefix,
628
- v: o.high.value,
629
- s: e.value.table.td.suffix,
630
- r: e.value.table.td.roundingValue
631
- }), _ = W({
632
- p: e.value.table.td.prefix,
633
- v: o.low.value,
634
- s: e.value.table.td.suffix,
635
- r: e.value.table.td.roundingValue
636
- }), H = W({
637
- p: e.value.table.td.prefix,
638
- v: o.close.value,
639
- s: e.value.table.td.suffix,
640
- r: e.value.table.td.roundingValue
641
- });
642
- return [
643
- `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" height="12" width="12" style="margin-right: 6px"><rect x="0" y="0" height="12" width="12" rx="${e.value.style.layout.candle.borderRadius * 3}" fill="${e.value.style.layout.candle.gradient.show ? o.isBullish ? `url(#bullish_gradient_${R.value}` : `url(#bearish_gradient_${R.value})` : o.isBullish ? e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.colors.bearish}"/></svg> ${d}`,
644
- k,
645
- F,
646
- _,
647
- H,
648
- `${isNaN(o.volume) ? "-" : o.volume.toLocaleString()}`
649
- ];
650
- }), a = {
651
- th: {
652
- backgroundColor: e.value.table.th.backgroundColor,
653
- color: e.value.table.th.color,
654
- outline: e.value.table.th.outline
655
- },
656
- td: {
657
- backgroundColor: e.value.table.td.backgroundColor,
658
- color: e.value.table.td.color,
659
- outline: e.value.table.td.outline
660
- },
661
- breakpoint: e.value.table.responsiveBreakpoint
662
- }, l = [
663
- e.value.translations.period,
664
- e.value.translations.open,
665
- e.value.translations.high,
666
- e.value.translations.low,
667
- e.value.translations.last,
668
- e.value.translations.volume
669
- ];
670
- return { head: l, body: t, config: a, colNames: l };
671
- }), G = v(!1);
672
- function wt(t) {
673
- G.value = t, je.value += 1;
674
- }
675
- function Ct() {
676
- I.value.showTable = !I.value.showTable;
677
- }
678
- function At() {
679
- I.value.showTooltip = !I.value.showTooltip;
680
- }
681
- const fe = v(!1);
682
- function Ne() {
683
- fe.value = !fe.value;
684
- }
685
- async function xl({ scale: t = 2 } = {}) {
686
- if (!N.value) return;
687
- const { width: a, height: l } = N.value.getBoundingClientRect(), o = a / l, { imageUri: s, base64: d } = await ua({ domElement: N.value, base64: !0, img: !0, scale: t });
688
- return {
689
- imageUri: s,
690
- base64: d,
691
- title: e.value.style.title.text,
692
- width: a,
693
- height: l,
694
- aspectRatio: o
695
- };
696
- }
697
- const kl = h(() => b.value.width), wl = h(() => b.value.height);
698
- sa({
699
- timeLabelsEls: te,
700
- timeLabels: D,
701
- slicer: r,
702
- configRef: e,
703
- rotationPath: ["style", "layout", "grid", "xAxis", "dataLabels", "rotation"],
704
- autoRotatePath: ["style", "layout", "grid", "xAxis", "dataLabels", "autoRotate", "enable"],
705
- isAutoSize: !1,
706
- rotation: e.value.style.layout.grid.xAxis.dataLabels.autoRotate.angle,
707
- width: kl,
708
- height: wl
709
- }), ie(e, () => {
710
- I.value = {
711
- showTable: e.value.table.show,
712
- showTooltip: e.value.style.tooltip.show
713
- };
714
- }, { immediate: !0 });
715
- const ue = h(() => {
716
- const t = e.value.table.useDialog && !e.value.table.show, a = I.value.showTable;
717
- return {
718
- component: t ? Kt : Xt,
719
- title: `${e.value.style.title.text}${e.value.style.title.subtitle.text ? `: ${e.value.style.title.subtitle.text}` : ""}`,
720
- props: t ? {
721
- backgroundColor: e.value.table.th.backgroundColor,
722
- color: e.value.table.th.color,
723
- headerColor: e.value.table.th.color,
724
- headerBg: e.value.table.th.backgroundColor,
725
- isFullscreen: G.value,
726
- fullscreenParent: N.value,
727
- forcedWidth: Math.min(800, window.innerWidth * 0.8),
728
- isCursorPointer: ae.value
729
- } : {
730
- hideDetails: !0,
731
- config: {
732
- open: a,
733
- maxHeight: 1e4,
734
- body: {
735
- backgroundColor: e.value.style.backgroundColor,
736
- color: e.value.style.color
737
- },
738
- head: {
739
- backgroundColor: e.value.style.backgroundColor,
740
- color: e.value.style.color
741
- }
742
- }
743
- }
744
- };
745
- });
746
- ie(() => I.value.showTable, (t) => {
747
- e.value.table.show || (t && e.value.table.useDialog && le.value ? le.value.open() : "close" in le.value && le.value.close());
748
- });
749
- function $t() {
750
- I.value.showTable = !1, _e.value && _e.value.setTableIconState(!1);
751
- }
752
- const Cl = h(() => e.value.style.backgroundColor), Al = h(() => e.value.style.title), { exportSvg: $l, getSvg: Sl } = ta({
753
- svg: Te,
754
- title: Al,
755
- backgroundColor: Cl
756
- });
757
- async function St({ isCb: t }) {
758
- ve.value = !0, await He();
759
- try {
760
- if (t) {
761
- const { blob: a, url: l, text: o, dataUrl: s } = await Sl();
762
- await Promise.resolve(e.value.userOptions.callbacks.svg({ blob: a, url: l, text: o, dataUrl: s }));
763
- } else
764
- await Promise.resolve($l());
765
- } finally {
766
- ve.value = !1;
767
- }
768
- }
769
- function _l(t) {
770
- et.value = t;
771
- }
772
- function zl(t) {
773
- se.value || he.value || t !== r.value.start && (r.value.start = t, C.value.start = t, de());
774
- }
775
- function Ll(t) {
776
- if (se.value || he.value) return;
777
- const a = kt(t);
778
- a !== r.value.end && (r.value.end = a, C.value.end = a, de());
779
- }
780
- function Tl({ seriesIndex: t, datapoint: a }) {
781
- const l = r.value.start + t;
782
- ke("selectX", {
783
- dataset: a,
784
- index: l,
785
- indexLabel: ""
786
- });
787
- }
788
- function Il(t) {
789
- if (t?.stage === "start") {
790
- re.value = !0;
791
- return;
792
- }
793
- if (t?.stage === "end") {
794
- re.value = !1;
795
- return;
796
- }
797
- st();
798
- }
799
- async function _t() {
800
- if (ke("copyAlt", {
801
- config: e.value,
802
- dataset: w.value
803
- }), !e.value.userOptions.callbacks.altCopy) {
804
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
805
- return;
806
- }
807
- await Promise.resolve(e.value.userOptions.callbacks.altCopy({
808
- config: e.value,
809
- dataset: w.value
810
- }));
811
- }
812
- return Vt({
813
- getImage: xl,
814
- generatePdf: ot,
815
- generateCsv: Be,
816
- generateImage: st,
817
- generateSvg: St,
818
- toggleTable: Ct,
819
- toggleTooltip: At,
820
- toggleAnnotator: Ne,
821
- toggleFullscreen: wt,
822
- copyAlt: _t
823
- }), (t, a) => (u(), i("div", {
824
- ref_key: "candlestickChart",
825
- ref: N,
826
- class: V(`vue-data-ui-component vue-ui-candlestick ${G.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
827
- style: Z(`position:relative;font-family:${e.value.style.fontFamily}; text-align:center;background:${e.value.style.backgroundColor}; ${e.value.responsive ? "height: 100%" : ""}`),
828
- id: `vue-ui-candlestick_${R.value}`,
829
- onMouseenter: ll,
830
- onMouseleave: al
831
- }, [
832
- e.value.userOptions.buttons.annotator ? (u(), K(y(jt), {
833
- key: 0,
834
- svgRef: y(Te),
835
- backgroundColor: e.value.style.backgroundColor,
836
- color: e.value.style.color,
837
- active: fe.value,
838
- isCursorPointer: ae.value,
839
- onClose: Ne
840
- }, {
841
- "annotator-action-close": f(() => [
842
- g(t.$slots, "annotator-action-close", {}, void 0, !0)
843
- ]),
844
- "annotator-action-color": f(({ color: l }) => [
845
- g(t.$slots, "annotator-action-color", z(L({ color: l })), void 0, !0)
846
- ]),
847
- "annotator-action-draw": f(({ mode: l }) => [
848
- g(t.$slots, "annotator-action-draw", z(L({ mode: l })), void 0, !0)
849
- ]),
850
- "annotator-action-undo": f(({ disabled: l }) => [
851
- g(t.$slots, "annotator-action-undo", z(L({ disabled: l })), void 0, !0)
852
- ]),
853
- "annotator-action-redo": f(({ disabled: l }) => [
854
- g(t.$slots, "annotator-action-redo", z(L({ disabled: l })), void 0, !0)
855
- ]),
856
- "annotator-action-delete": f(({ disabled: l }) => [
857
- g(t.$slots, "annotator-action-delete", z(L({ disabled: l })), void 0, !0)
858
- ]),
859
- _: 3
860
- }, 8, ["svgRef", "backgroundColor", "color", "active", "isCursorPointer"])) : m("", !0),
861
- ol.value ? (u(), i("div", {
862
- key: 1,
863
- ref_key: "noTitle",
864
- ref: Je,
865
- class: "vue-data-ui-no-title-space",
866
- style: "height:36px; width: 100%;background:transparent"
867
- }, null, 512)) : m("", !0),
868
- e.value.style.title.text ? (u(), i("div", {
869
- key: 2,
870
- ref_key: "chartTitle",
871
- ref: Ge,
872
- style: "width:100%;background:transparent"
873
- }, [
874
- (u(), K(ia, {
875
- key: `title_${Ze.value}`,
876
- config: {
877
- title: {
878
- cy: "candlestick-div-title",
879
- ...e.value.style.title
880
- },
881
- subtitle: {
882
- cy: "candlestick-div-subtitle",
883
- ...e.value.style.title.subtitle
884
- }
885
- }
886
- }, null, 8, ["config"]))
887
- ], 512)) : m("", !0),
888
- e.value.userOptions.show && we.value && (y(lt) || y(Le)) ? (u(), K(y(Gt), {
889
- ref_key: "userOptionsRef",
890
- ref: _e,
891
- key: `user_options_${je.value}`,
892
- backgroundColor: e.value.style.backgroundColor,
893
- color: e.value.style.color,
894
- isImaging: y(Me),
895
- isPrinting: y(Fe),
896
- uid: R.value,
897
- hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.tooltip.show,
898
- hasPdf: e.value.userOptions.buttons.pdf,
899
- hasImg: e.value.userOptions.buttons.img,
900
- hasSvg: e.value.userOptions.buttons.svg,
901
- hasXls: e.value.userOptions.buttons.csv,
902
- hasTable: e.value.userOptions.buttons.table,
903
- hasFullscreen: e.value.userOptions.buttons.fullscreen,
904
- hasAltCopy: e.value.userOptions.buttons.altCopy,
905
- isFullscreen: G.value,
906
- isTooltip: I.value.showTooltip,
907
- titles: { ...e.value.userOptions.buttonTitles },
908
- chartElement: N.value,
909
- position: e.value.userOptions.position,
910
- hasAnnotator: e.value.userOptions.buttons.annotator,
911
- isAnnotation: fe.value,
912
- callbacks: e.value.userOptions.callbacks,
913
- printScale: e.value.userOptions.print.scale,
914
- tableDialog: e.value.table.useDialog,
915
- isCursorPointer: ae.value,
916
- onToggleFullscreen: wt,
917
- onGeneratePdf: y(ot),
918
- onGenerateCsv: Be,
919
- onGenerateImage: Il,
920
- onGenerateSvg: St,
921
- onToggleTable: Ct,
922
- onToggleTooltip: At,
923
- onToggleAnnotator: Ne,
924
- onCopyAlt: _t,
925
- style: Z({
926
- visibility: y(lt) ? y(Le) ? "visible" : "hidden" : "visible"
927
- })
928
- }, It({ _: 2 }, [
929
- t.$slots.menuIcon ? {
930
- name: "menuIcon",
931
- fn: f(({ isOpen: l, color: o }) => [
932
- g(t.$slots, "menuIcon", z(L({ isOpen: l, color: o })), void 0, !0)
933
- ]),
934
- key: "0"
935
- } : void 0,
936
- t.$slots.optionTooltip ? {
937
- name: "optionTooltip",
938
- fn: f(() => [
939
- g(t.$slots, "optionTooltip", {}, void 0, !0)
940
- ]),
941
- key: "1"
942
- } : void 0,
943
- t.$slots.optionPdf ? {
944
- name: "optionPdf",
945
- fn: f(() => [
946
- g(t.$slots, "optionPdf", {}, void 0, !0)
947
- ]),
948
- key: "2"
949
- } : void 0,
950
- t.$slots.optionCsv ? {
951
- name: "optionCsv",
952
- fn: f(() => [
953
- g(t.$slots, "optionCsv", {}, void 0, !0)
954
- ]),
955
- key: "3"
956
- } : void 0,
957
- t.$slots.optionImg ? {
958
- name: "optionImg",
959
- fn: f(() => [
960
- g(t.$slots, "optionImg", {}, void 0, !0)
961
- ]),
962
- key: "4"
963
- } : void 0,
964
- t.$slots.optionSvg ? {
965
- name: "optionSvg",
966
- fn: f(() => [
967
- g(t.$slots, "optionSvg", {}, void 0, !0)
968
- ]),
969
- key: "5"
970
- } : void 0,
971
- t.$slots.optionTable ? {
972
- name: "optionTable",
973
- fn: f(() => [
974
- g(t.$slots, "optionTable", {}, void 0, !0)
975
- ]),
976
- key: "6"
977
- } : void 0,
978
- t.$slots.optionFullscreen ? {
979
- name: "optionFullscreen",
980
- fn: f(({ toggleFullscreen: l, isFullscreen: o }) => [
981
- g(t.$slots, "optionFullscreen", z(L({ toggleFullscreen: l, isFullscreen: o })), void 0, !0)
982
- ]),
983
- key: "7"
984
- } : void 0,
985
- t.$slots.optionAnnotator ? {
986
- name: "optionAnnotator",
987
- fn: f(({ toggleAnnotator: l, isAnnotator: o }) => [
988
- g(t.$slots, "optionAnnotator", z(L({ toggleAnnotator: l, isAnnotator: o })), void 0, !0)
989
- ]),
990
- key: "8"
991
- } : void 0,
992
- t.$slots.optionAltCopy ? {
993
- name: "optionAltCopy",
994
- fn: f(({ altCopy: l }) => [
995
- g(t.$slots, "optionAltCopy", z(L({ altCopy: l })), void 0, !0)
996
- ]),
997
- key: "9"
998
- } : void 0
999
- ]), 1032, ["backgroundColor", "color", "isImaging", "isPrinting", "uid", "hasTooltip", "hasPdf", "hasImg", "hasSvg", "hasXls", "hasTable", "hasFullscreen", "hasAltCopy", "isFullscreen", "isTooltip", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "isCursorPointer", "onGeneratePdf", "style"])) : m("", !0),
1000
- (u(), i("svg", {
1001
- ref_key: "svgRef",
1002
- ref: Te,
1003
- xmlns: y(Ul),
1004
- "aria-label": e.value.style.title.text || "candlestick chart",
1005
- class: V({ "vue-data-ui-fullscreen--on": G.value, "vue-data-ui-fulscreen--off": !G.value }),
1006
- viewBox: `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`,
1007
- style: Z(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.color}`)
1008
- }, [
1009
- Xe(y(Yt)),
1010
- t.$slots["chart-background"] ? (u(), i("foreignObject", {
1011
- key: 0,
1012
- x: n.value.left,
1013
- y: n.value.top,
1014
- width: Math.max(0.1, n.value.width),
1015
- height: Math.max(0.1, n.value.height),
1016
- style: {
1017
- pointerEvents: "none"
1018
- }
1019
- }, [
1020
- g(t.$slots, "chart-background", {}, void 0, !0)
1021
- ], 8, ya)) : m("", !0),
1022
- w.value.length > 0 ? (u(), i("g", ha, [
1023
- p("defs", null, [
1024
- p("linearGradient", {
1025
- id: `bearish_gradient_${R.value}`,
1026
- x2: "0%",
1027
- y2: "100%"
1028
- }, [
1029
- p("stop", {
1030
- offset: "0%",
1031
- "stop-color": e.value.style.layout.candle.colors.bearish
1032
- }, null, 8, pa),
1033
- p("stop", {
1034
- offset: "50%",
1035
- "stop-color": `${y(xe)(e.value.style.layout.candle.colors.bearish, 0.02)}DE`
1036
- }, null, 8, fa),
1037
- p("stop", {
1038
- offset: "100%",
1039
- "stop-color": `${y(xe)(e.value.style.layout.candle.colors.bearish, 0.05)}66`
1040
- }, null, 8, ga)
1041
- ], 8, ma),
1042
- p("linearGradient", {
1043
- id: `bullish_gradient_${R.value}`,
1044
- x2: "0%",
1045
- y2: "100%"
1046
- }, [
1047
- p("stop", {
1048
- offset: "0%",
1049
- "stop-color": e.value.style.layout.candle.colors.bullish
1050
- }, null, 8, xa),
1051
- p("stop", {
1052
- offset: "50%",
1053
- "stop-color": `${y(xe)(e.value.style.layout.candle.colors.bullish, 0.02)}DE`
1054
- }, null, 8, ka),
1055
- p("stop", {
1056
- offset: "100%",
1057
- "stop-color": `${y(xe)(e.value.style.layout.candle.colors.bullish, 0.05)}66`
1058
- }, null, 8, wa)
1059
- ], 8, ba)
1060
- ]),
1061
- e.value.style.layout.grid.show ? (u(), i("g", Ca, [
1062
- p("line", {
1063
- x1: n.value.left,
1064
- x2: n.value.left,
1065
- y1: n.value.top,
1066
- y2: n.value.bottom,
1067
- stroke: e.value.style.layout.grid.stroke,
1068
- "stroke-width": e.value.style.layout.grid.strokeWidth,
1069
- "stroke-linecap": "round"
1070
- }, null, 8, Aa),
1071
- p("line", {
1072
- x1: n.value.left,
1073
- x2: n.value.right,
1074
- y1: n.value.bottom,
1075
- y2: n.value.bottom,
1076
- stroke: e.value.style.layout.grid.stroke,
1077
- "stroke-width": e.value.style.layout.grid.strokeWidth,
1078
- "stroke-linecap": "round"
1079
- }, null, 8, $a),
1080
- e.value.style.layout.grid.horizontalLines.show ? (u(!0), i(T, { key: 0 }, M(ct.value, (l) => (u(), i("line", {
1081
- x1: n.value.left,
1082
- x2: n.value.right,
1083
- y1: l.y,
1084
- y2: l.y,
1085
- stroke: e.value.style.layout.grid.horizontalLines.stroke,
1086
- "stroke-width": e.value.style.layout.grid.horizontalLines.strokeWidth,
1087
- "stroke-dasharray": e.value.style.layout.grid.horizontalLines.strokeDasharray,
1088
- "stroke-linecap": "round"
1089
- }, null, 8, Sa))), 256)) : m("", !0),
1090
- e.value.style.layout.grid.verticalLines.show ? (u(!0), i(T, { key: 1 }, M(Oe.value, (l, o) => (u(), i("g", null, [
1091
- l.text ? (u(), i("line", {
1092
- key: 0,
1093
- x1: n.value.left + c.value * o + c.value / 2,
1094
- x2: n.value.left + c.value * o + c.value / 2,
1095
- y1: n.value.top,
1096
- y2: n.value.bottom,
1097
- stroke: e.value.style.layout.grid.verticalLines.stroke,
1098
- "stroke-width": e.value.style.layout.grid.verticalLines.strokeWidth,
1099
- "stroke-dasharray": e.value.style.layout.grid.verticalLines.strokeDasharray,
1100
- "stroke-linecap": "round"
1101
- }, null, 8, _a)) : m("", !0)
1102
- ]))), 256)) : m("", !0),
1103
- e.value.style.layout.grid.xAxis.ticks.show ? (u(!0), i(T, { key: 2 }, M(Oe.value, (l, o) => (u(), i("g", null, [
1104
- l.text ? (u(), i("line", {
1105
- key: 0,
1106
- x1: n.value.left + c.value * o + c.value / 2,
1107
- x2: n.value.left + c.value * o + c.value / 2,
1108
- y1: n.value.bottom,
1109
- y2: n.value.bottom + 3,
1110
- stroke: e.value.style.layout.grid.stroke,
1111
- "stroke-width": e.value.style.layout.grid.strokeWidth,
1112
- "stroke-linecap": "round"
1113
- }, null, 8, za)) : m("", !0)
1114
- ]))), 256)) : m("", !0)
1115
- ])) : m("", !0),
1116
- e.value.style.layout.grid.yAxis.dataLabels.show ? (u(), i("g", {
1117
- key: 1,
1118
- ref_key: "scaleLabels",
1119
- ref: Se
1120
- }, [
1121
- (u(!0), i(T, null, M(ct.value, (l, o) => (u(), i("g", null, [
1122
- l.value >= P.value.min && l.value <= P.value.max ? (u(), i("line", {
1123
- key: 0,
1124
- x1: n.value.left,
1125
- x2: n.value.left - 5,
1126
- y1: l.y,
1127
- y2: l.y,
1128
- stroke: e.value.style.layout.grid.stroke,
1129
- "stroke-width": e.value.style.layout.grid.strokeWidth,
1130
- "stroke-linecap": "round"
1131
- }, null, 8, La)) : m("", !0),
1132
- l.value >= P.value.min && l.value <= P.value.max ? (u(), i("text", {
1133
- key: 1,
1134
- x: n.value.left - 8 + e.value.style.layout.grid.yAxis.dataLabels.offsetX,
1135
- y: l.y + b.value.yAxisFontSize / 3,
1136
- "font-size": b.value.yAxisFontSize,
1137
- "text-anchor": "end",
1138
- fill: e.value.style.layout.grid.yAxis.dataLabels.color,
1139
- "font-weight": e.value.style.layout.grid.yAxis.dataLabels.bold ? "bold" : "normal"
1140
- }, ne(y(W)({
1141
- p: e.value.style.layout.grid.yAxis.dataLabels.prefix,
1142
- v: l.value,
1143
- s: e.value.style.layout.grid.yAxis.dataLabels.suffix,
1144
- r: e.value.style.layout.grid.yAxis.dataLabels.roundingValue
1145
- })), 9, Ta)) : m("", !0)
1146
- ]))), 256))
1147
- ], 512)) : m("", !0),
1148
- e.value.style.layout.grid.xAxis.dataLabels.show && !e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? (u(), i("g", {
1149
- key: 2,
1150
- ref_key: "timeLabelsEls",
1151
- ref: te
1152
- }, [
1153
- (u(!0), i(T, null, M(cl.value, (l, o) => (u(), i("g", null, [
1154
- p("text", {
1155
- class: "vue-data-ui-time-label",
1156
- transform: `translate(${n.value.left + c.value * o + c.value / 2}, ${n.value.bottom + b.value.xAxisFontSize * 1.5}), rotate(${e.value.style.layout.grid.xAxis.dataLabels.rotation})`,
1157
- "text-anchor": e.value.style.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : e.value.style.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
1158
- "font-size": b.value.xAxisFontSize,
1159
- fill: e.value.style.layout.grid.xAxis.dataLabels.color,
1160
- "font-weight": e.value.style.layout.grid.xAxis.dataLabels.bold ? "bold" : "normal"
1161
- }, ne(l), 9, Ia)
1162
- ]))), 256))
1163
- ], 512)) : m("", !0),
1164
- e.value.style.layout.grid.xAxis.dataLabels.show && e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? (u(), i("g", {
1165
- key: 3,
1166
- ref_key: "timeLabelsEls",
1167
- ref: te
1168
- }, [
1169
- (u(!0), i(T, null, M(Oe.value, (l, o) => (u(), i("g", null, [
1170
- p("text", {
1171
- class: "vue-data-ui-time-label",
1172
- transform: `translate(${n.value.left + c.value * o + c.value / 2}, ${n.value.bottom + b.value.xAxisFontSize * 1.5}), rotate(${e.value.style.layout.grid.xAxis.dataLabels.rotation})`,
1173
- "text-anchor": e.value.style.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : e.value.style.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
1174
- "font-size": b.value.xAxisFontSize,
1175
- fill: e.value.style.layout.grid.xAxis.dataLabels.color,
1176
- "font-weight": e.value.style.layout.grid.xAxis.dataLabels.bold ? "bold" : "normal"
1177
- }, ne(l?.text ?? ""), 9, Fa)
1178
- ]))), 256))
1179
- ], 512)) : m("", !0),
1180
- e.value.type === "candlestick" ? (u(), i(T, { key: 4 }, [
1181
- p("g", null, [
1182
- (u(!0), i(T, null, M(w.value, (l, o) => (u(), i("g", null, [
1183
- p("rect", {
1184
- x: l.open.x - e.value.style.layout.wick.strokeWidth / 2,
1185
- y: l.high.y,
1186
- width: e.value.style.layout.wick.strokeWidth,
1187
- height: Math.abs(l.high.y - l.low.y),
1188
- fill: e.value.style.layout.wick.stroke,
1189
- stroke: "none",
1190
- rx: e.value.style.layout.wick.strokeWidth / 2,
1191
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1192
- }, null, 10, Ma),
1193
- e.value.style.layout.wick.extremity.shape === "circle" ? (u(), i("g", Ra, [
1194
- p("circle", {
1195
- cx: l.high.x,
1196
- cy: l.high.y,
1197
- r: e.value.style.layout.wick.extremity.size === "auto" ? c.value / 20 : e.value.style.layout.wick.extremity.size,
1198
- fill: e.value.style.layout.wick.extremity.color,
1199
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1200
- }, null, 10, Pa),
1201
- p("circle", {
1202
- cx: l.low.x,
1203
- cy: l.low.y,
1204
- r: e.value.style.layout.wick.extremity.size === "auto" ? c.value / 20 : e.value.style.layout.wick.extremity.size,
1205
- fill: e.value.style.layout.wick.extremity.color,
1206
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1207
- }, null, 10, Oa)
1208
- ])) : m("", !0),
1209
- e.value.style.layout.wick.extremity.shape === "line" ? (u(), i("g", Da, [
1210
- p("rect", {
1211
- x: l.high.x - (e.value.style.layout.wick.extremity.size === "auto" ? c.value * e.value.style.layout.candle.widthRatio : e.value.style.layout.wick.extremity.size) / 2,
1212
- y: l.high.y - e.value.style.layout.wick.strokeWidth / 2,
1213
- width: Math.abs(l.high.x - (e.value.style.layout.wick.extremity.size === "auto" ? c.value * e.value.style.layout.candle.widthRatio : e.value.style.layout.wick.extremity.size) / 2 - (l.high.x + (e.value.style.layout.wick.extremity.size === "auto" ? c.value * e.value.style.layout.candle.widthRatio : e.value.style.layout.wick.extremity.size) / 2)),
1214
- height: e.value.style.layout.wick.strokeWidth,
1215
- rx: e.value.style.layout.wick.strokeWidth / 2,
1216
- fill: e.value.style.layout.wick.extremity.color,
1217
- stroke: "none",
1218
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1219
- }, null, 10, Ba),
1220
- p("rect", {
1221
- x: l.low.x - (e.value.style.layout.wick.extremity.size === "auto" ? c.value * e.value.style.layout.candle.widthRatio : e.value.style.layout.wick.extremity.size) / 2,
1222
- y: l.low.y - e.value.style.layout.wick.strokeWidth / 2,
1223
- width: Math.abs(l.low.x - (e.value.style.layout.wick.extremity.size === "auto" ? c.value * e.value.style.layout.candle.widthRatio : e.value.style.layout.wick.extremity.size) / 2 - (l.low.x + (e.value.style.layout.wick.extremity.size === "auto" ? c.value * e.value.style.layout.candle.widthRatio : e.value.style.layout.wick.extremity.size) / 2)),
1224
- height: e.value.style.layout.wick.strokeWidth,
1225
- fill: e.value.style.layout.wick.extremity.color,
1226
- stroke: "none",
1227
- rx: e.value.style.layout.wick.strokeWidth / 2,
1228
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1229
- }, null, 10, Na)
1230
- ])) : m("", !0)
1231
- ]))), 256))
1232
- ]),
1233
- p("g", null, [
1234
- (u(!0), i(T, null, M(w.value, (l, o) => (u(), i("rect", {
1235
- x: l.open.x - c.value / 2 + c.value * (1 - e.value.style.layout.candle.widthRatio) / 2,
1236
- y: l.isBullish ? l.close.y : l.open.y,
1237
- height: Math.abs(l.close.y - l.open.y) <= 0 ? 1e-4 : Math.abs(l.close.y - l.open.y),
1238
- width: c.value * e.value.style.layout.candle.widthRatio <= 0 ? 1e-4 : c.value * e.value.style.layout.candle.widthRatio,
1239
- fill: e.value.style.layout.candle.gradient.underlayer,
1240
- rx: e.value.style.layout.candle.borderRadius,
1241
- stroke: "none",
1242
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1243
- }, null, 10, Ea))), 256)),
1244
- (u(!0), i(T, null, M(w.value, (l, o) => (u(), i("rect", {
1245
- x: l.open.x - c.value / 2 + c.value * (1 - e.value.style.layout.candle.widthRatio) / 2,
1246
- y: l.isBullish ? l.close.y : l.open.y,
1247
- height: Math.abs(l.close.y - l.open.y) <= 0 ? 1e-4 : Math.abs(l.close.y - l.open.y),
1248
- width: c.value * e.value.style.layout.candle.widthRatio <= 0 ? 1e-4 : c.value * e.value.style.layout.candle.widthRatio,
1249
- fill: l.isBullish ? e.value.style.layout.candle.gradient.show ? `url(#bullish_gradient_${R.value})` : e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.gradient.show ? `url(#bearish_gradient_${R.value})` : e.value.style.layout.candle.colors.bearish,
1250
- rx: e.value.style.layout.candle.borderRadius,
1251
- stroke: e.value.style.layout.candle.stroke,
1252
- "stroke-width": e.value.style.layout.candle.strokeWidth,
1253
- "stroke-linecap": "round",
1254
- "stroke-linejoin": "round",
1255
- class: V({ "vue-data-ui-transition": O.value && !y(E) })
1256
- }, null, 10, Va))), 256))
1257
- ])
1258
- ], 64)) : m("", !0),
1259
- e.value.type === "ohlc" ? (u(!0), i(T, { key: 5 }, M(w.value, (l, o) => (u(), i("g", null, [
1260
- p("path", {
1261
- d: `M ${l.high.x},${l.high.y} ${l.low.x},${l.low.y} M${l.open.x - Math.min(6, c.value / 3)},${l.open.y} ${l.open.x},${l.open.y} M${l.close.x},${l.close.y} ${l.close.x + Math.min(6, c.value / 3)},${l.close.y}`,
1262
- stroke: l.isBullish ? e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.colors.bearish,
1263
- "stroke-width": 1
1264
- }, null, 8, Wa)
1265
- ]))), 256)) : m("", !0),
1266
- p("g", null, [
1267
- (u(!0), i(T, null, M(w.value, (l, o) => (u(), i("rect", {
1268
- x: n.value.left + o * c.value,
1269
- y: n.value.top,
1270
- height: n.value.height <= 0 ? 1e-4 : n.value.height,
1271
- width: c.value <= 0 ? 1e-4 : c.value,
1272
- fill: B.value === o || et.value === o ? y(Hl)(e.value.style.layout.selector.color, e.value.style.layout.selector.opacity) : "transparent",
1273
- onMouseover: () => gl(o, l),
1274
- onMouseleave: () => fl(o, l),
1275
- onClick: () => pl(o, l)
1276
- }, null, 40, Ua))), 256))
1277
- ])
1278
- ])) : m("", !0),
1279
- it.value ? (u(), i("rect", Ft({ key: 2 }, il.value, {
1280
- "data-start": r.value.start,
1281
- "data-end": r.value.end
1282
- }), null, 16, Ha)) : m("", !0),
1283
- g(t.$slots, "svg", {
1284
- svg: {
1285
- ...b.value,
1286
- data: w.value,
1287
- drawingArea: n.value,
1288
- isPrintingImg: y(Fe) | y(Me) | re.value,
1289
- isPrintingSvg: ve.value
1290
- }
1291
- }, void 0, !0)
1292
- ], 14, ca)),
1293
- t.$slots.watermark ? (u(), i("div", Xa, [
1294
- g(t.$slots, "watermark", z(L({ isPrinting: y(Fe) || y(Me) || re.value || ve.value })), void 0, !0)
1295
- ])) : m("", !0),
1296
- e.value.style.zoom.show && A.value > 6 && we.value && xt.value ? (u(), K(ra, {
1297
- key: 5,
1298
- ref_key: "chartSlicer",
1299
- ref: ee,
1300
- allMinimaps: vl.value,
1301
- background: e.value.style.zoom.color,
1302
- borderColor: e.value.style.backgroundColor,
1303
- customFormat: e.value.style.zoom.customFormat,
1304
- cutNullValues: !1,
1305
- enableRangeHandles: e.value.style.zoom.enableRangeHandles,
1306
- enableSelectionDrag: e.value.style.zoom.enableSelectionDrag,
1307
- end: r.value.end,
1308
- focusOnDrag: e.value.style.zoom.focusOnDrag,
1309
- focusRangeRatio: e.value.style.zoom.focusRangeRatio,
1310
- fontSize: e.value.style.zoom.fontSize,
1311
- immediate: !e.value.style.zoom.preview.enable,
1312
- inputColor: e.value.style.zoom.color,
1313
- isPreview: it.value,
1314
- labelLeft: gt.value.start || "",
1315
- labelRight: gt.value.end || "",
1316
- max: A.value,
1317
- min: 0,
1318
- minimap: e.value.style.zoom.minimap.show ? y(x).map((l) => l[2]) : [],
1319
- minimapCompact: e.value.style.zoom.minimap.compact,
1320
- minimapFrameColor: e.value.style.zoom.minimap.frameColor,
1321
- minimapIndicatorColor: e.value.style.zoom.minimap.indicatorColor,
1322
- minimapMerged: !1,
1323
- minimapSelectedColor: e.value.style.zoom.minimap.selectedColor,
1324
- minimapSelectedColorOpacity: e.value.style.zoom.minimap.selectedColorOpacity,
1325
- minimapSelectedIndex: B.value,
1326
- minimapSelectionRadius: 1,
1327
- preciseLabels: ml.value,
1328
- refreshEndPoint: e.value.style.zoom.endIndex !== null ? e.value.style.zoom.endIndex + 1 : A.value,
1329
- refreshStartPoint: e.value.style.zoom.startIndex !== null ? e.value.style.zoom.startIndex : 0,
1330
- selectColor: e.value.style.zoom.highlightColor,
1331
- selectedSeries: y(x),
1332
- smoothMinimap: !1,
1333
- start: r.value.start,
1334
- textColor: e.value.style.color,
1335
- timeLabels: Pe.value,
1336
- usePreciseLabels: e.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable && !e.value.style.zoom.useDefaultFormat,
1337
- useResetSlot: e.value.style.zoom.useResetSlot,
1338
- valueEnd: r.value.end,
1339
- valueStart: r.value.start,
1340
- verticalHandles: e.value.style.zoom.minimap.verticalHandles,
1341
- minScale: e.value.style.layout.grid.yAxis.scale.min,
1342
- maxScale: e.value.style.layout.grid.yAxis.scale.max,
1343
- maxWidth: e.value.style.zoom.maxWidth,
1344
- additionalMinimapHeight: e.value.style.zoom.minimap.additionalHeight,
1345
- handleType: e.value.style.zoom.minimap.handleType,
1346
- handleIconColor: e.value.style.zoom.minimap.handleIconColor,
1347
- handleBorderWidth: e.value.style.zoom.minimap.handleBorderWidth,
1348
- handleBorderColor: e.value.style.zoom.minimap.handleBorderColor,
1349
- handleFill: e.value.style.zoom.minimap.handleFill,
1350
- handleWidth: e.value.style.zoom.minimap.handleWidth,
1351
- "onUpdate:end": Ll,
1352
- "onUpdate:start": zl,
1353
- onTrapMouse: _l,
1354
- onReset: bt,
1355
- onFutureEnd: a[0] || (a[0] = (l) => nt("end", l)),
1356
- onFutureStart: a[1] || (a[1] = (l) => nt("start", l))
1357
- }, {
1358
- "reset-action": f(({ reset: l }) => [
1359
- g(t.$slots, "reset-action", z(L({ reset: l })), void 0, !0)
1360
- ]),
1361
- slotMap: f(({ height: l, unitW: o }) => [
1362
- (u(!0), i(T, null, M(rl.value({ minimapH: l, unitW: o }), (s, d) => (u(), i("g", null, [
1363
- p("path", {
1364
- d: `M ${s.high.x},${s.high.y} ${s.low.x},${s.low.y}`,
1365
- stroke: s.isBullish ? e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.colors.bearish,
1366
- "stroke-width": 1,
1367
- style: Z({
1368
- opacity: d >= C.value.start && d <= C.value.end ? 1 : 0.6
1369
- })
1370
- }, null, 12, qa),
1371
- p("path", {
1372
- d: `M ${s.open.x},${s.open.y} ${s.close.x},${s.close.y}`,
1373
- stroke: s.isBullish ? e.value.style.layout.candle.colors.bullish : e.value.style.layout.candle.colors.bearish,
1374
- "stroke-width": Math.min(6, o / 1.5),
1375
- style: Z({
1376
- opacity: d >= C.value.start && d <= C.value.end ? 1 : 0.6
1377
- })
1378
- }, null, 12, ja)
1379
- ]))), 256))
1380
- ]),
1381
- _: 3
1382
- }, 8, ["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", "useResetSlot", "valueEnd", "valueStart", "verticalHandles", "minScale", "maxScale", "maxWidth", "additionalMinimapHeight", "handleType", "handleIconColor", "handleBorderWidth", "handleBorderColor", "handleFill", "handleWidth"])) : m("", !0),
1383
- p("div", {
1384
- ref_key: "chartLegend",
1385
- ref: Ye
1386
- }, [
1387
- g(t.$slots, "legend", { legend: w.value }, void 0, !0)
1388
- ], 512),
1389
- t.$slots.source ? (u(), i("div", {
1390
- key: 6,
1391
- ref_key: "source",
1392
- ref: Ke,
1393
- dir: "auto"
1394
- }, [
1395
- g(t.$slots, "source", {}, void 0, !0)
1396
- ], 512)) : m("", !0),
1397
- Xe(y(Ht), {
1398
- teleportTo: e.value.style.tooltip.teleportTo,
1399
- show: I.value.showTooltip && Ae.value,
1400
- backgroundColor: e.value.style.tooltip.backgroundColor,
1401
- color: e.value.style.tooltip.color,
1402
- borderRadius: e.value.style.tooltip.borderRadius,
1403
- borderColor: e.value.style.tooltip.borderColor,
1404
- borderWidth: e.value.style.tooltip.borderWidth,
1405
- fontSize: e.value.style.tooltip.fontSize,
1406
- backgroundOpacity: e.value.style.tooltip.backgroundOpacity,
1407
- position: e.value.style.tooltip.position,
1408
- offsetY: e.value.style.tooltip.offsetY,
1409
- parent: N.value,
1410
- content: $e.value,
1411
- isFullscreen: G.value,
1412
- isCustom: e.value.style.tooltip.customFormat && typeof e.value.style.tooltip.customFormat == "function",
1413
- smooth: e.value.style.tooltip.smooth,
1414
- backdropFilter: e.value.style.tooltip.backdropFilter,
1415
- smoothForce: e.value.style.tooltip.smoothForce,
1416
- smoothSnapThreshold: e.value.style.tooltip.smoothSnapThreshold
1417
- }, {
1418
- "tooltip-before": f(() => [
1419
- g(t.$slots, "tooltip-before", z(L({ ...De.value })), void 0, !0)
1420
- ]),
1421
- "tooltip-after": f(() => [
1422
- g(t.$slots, "tooltip-after", z(L({ ...De.value })), void 0, !0)
1423
- ]),
1424
- _: 3
1425
- }, 8, ["teleportTo", "show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
1426
- we.value && e.value.userOptions.buttons.table ? (u(), K(Nl(ue.value.component), Ft({ key: 7 }, ue.value.props, {
1427
- ref_key: "tableUnit",
1428
- ref: le,
1429
- onClose: $t
1430
- }), It({
1431
- content: f(() => [
1432
- (u(), K(y(qt), {
1433
- key: `table_${Qe.value}`,
1434
- colNames: pe.value.colNames,
1435
- head: pe.value.head,
1436
- body: pe.value.body,
1437
- config: pe.value.config,
1438
- title: e.value.table.useDialog ? "" : ue.value.title,
1439
- withCloseButton: !e.value.table.useDialog,
1440
- isCursorPointer: ae.value,
1441
- onClose: $t
1442
- }, {
1443
- th: f(({ th: l }) => [
1444
- Mt(ne(l), 1)
1445
- ]),
1446
- td: f(({ td: l }) => [
1447
- p("div", { innerHTML: l }, null, 8, Ga)
1448
- ]),
1449
- _: 1
1450
- }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton", "isCursorPointer"]))
1451
- ]),
1452
- _: 2
1453
- }, [
1454
- e.value.table.useDialog ? {
1455
- name: "title",
1456
- fn: f(() => [
1457
- Mt(ne(ue.value.title), 1)
1458
- ]),
1459
- key: "0"
1460
- } : void 0,
1461
- e.value.table.useDialog ? {
1462
- name: "actions",
1463
- fn: f(() => [
1464
- p("button", {
1465
- tabindex: "0",
1466
- class: "vue-ui-user-options-button",
1467
- onClick: a[2] || (a[2] = (l) => Be(e.value.userOptions.callbacks.csv)),
1468
- style: Z({ cursor: ae.value ? "pointer" : "default" })
1469
- }, [
1470
- Xe(y(Ut), {
1471
- name: "fileCsv",
1472
- stroke: ue.value.props.color
1473
- }, null, 8, ["stroke"])
1474
- ], 4)
1475
- ]),
1476
- key: "1"
1477
- } : void 0
1478
- ]), 1040)) : m("", !0),
1479
- g(t.$slots, "skeleton", {}, () => [
1480
- y(E) ? (u(), K(ea, { key: 0 })) : m("", !0)
1481
- ], !0)
1482
- ], 46, da));
1483
- }
1484
- }, mo = /* @__PURE__ */ va(Ya, [["__scopeId", "data-v-b191e88c"]]);
1485
- export {
1486
- mo as default
1487
- };