vue-data-ui 3.19.6 → 3.19.7

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 (158) hide show
  1. package/dist/{BaseDraggableDialog-BQcmQAK5.js → BaseDraggableDialog-DUUu2E2Q.js} +1 -1
  2. package/dist/{BaseIcon-CEmt3Ifx.js → BaseIcon-DM1x8hQF.js} +6 -3
  3. package/dist/{BaseLegendToggle-DUIqQmwM.js → BaseLegendToggle-CJTwLGXL.js} +1 -1
  4. package/dist/{BaseZoomControls-Ce1yqas1.js → BaseZoomControls-BkajQ8q9.js} +1 -1
  5. package/dist/{ColorPicker-DS_QkH3W.js → ColorPicker-DTQeqKUV.js} +1 -1
  6. package/dist/{DataTable-BvDJEAma.js → DataTable-DmE8Oo4i.js} +1 -1
  7. package/dist/{NonSvgPenAndPaper-D4Gh7O43.js → NonSvgPenAndPaper-tvWXeCsd.js} +2 -2
  8. package/dist/{PackageVersion-C7CvErYQ.js → PackageVersion-DUU5Aku2.js} +1 -1
  9. package/dist/{PenAndPaper-DwpL8Z0l.js → PenAndPaper-DNgm6y3l.js} +2 -2
  10. package/dist/{Slicer-BlfyiHHD.js → Slicer-CPWGgGSp.js} +1 -1
  11. package/dist/{SlicerPreview-CG1jpZqZ.js → SlicerPreview-BU3ZeHjR.js} +1 -1
  12. package/dist/{UserOptions-B57xo6D2.js → UserOptions-D7zR0tnR.js} +1 -1
  13. package/dist/components/vue-ui-3d-bar.js +1 -1
  14. package/dist/components/vue-ui-accordion.js +1 -1
  15. package/dist/components/vue-ui-age-pyramid.js +1 -1
  16. package/dist/components/vue-ui-annotator.js +1 -1
  17. package/dist/components/vue-ui-bullet.js +1 -1
  18. package/dist/components/vue-ui-bump.js +1 -1
  19. package/dist/components/vue-ui-candlestick.js +1 -1
  20. package/dist/components/vue-ui-carousel-table.js +1 -1
  21. package/dist/components/vue-ui-chestnut.js +1 -1
  22. package/dist/components/vue-ui-chord.js +1 -1
  23. package/dist/components/vue-ui-circle-pack.js +1 -1
  24. package/dist/components/vue-ui-cursor.js +1 -1
  25. package/dist/components/vue-ui-dag.js +1 -1
  26. package/dist/components/vue-ui-dashboard.js +1 -1
  27. package/dist/components/vue-ui-digits.js +1 -1
  28. package/dist/components/vue-ui-donut-evolution.js +1 -1
  29. package/dist/components/vue-ui-donut.js +1 -1
  30. package/dist/components/vue-ui-dumbbell.js +1 -1
  31. package/dist/components/vue-ui-flow.js +1 -1
  32. package/dist/components/vue-ui-funnel.js +1 -1
  33. package/dist/components/vue-ui-galaxy.js +1 -1
  34. package/dist/components/vue-ui-gauge.js +1 -1
  35. package/dist/components/vue-ui-geo.js +1 -1
  36. package/dist/components/vue-ui-gizmo.js +1 -1
  37. package/dist/components/vue-ui-heatmap.js +1 -1
  38. package/dist/components/vue-ui-history-plot.js +1 -1
  39. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  40. package/dist/components/vue-ui-icon.js +1 -1
  41. package/dist/components/vue-ui-kpi.js +1 -1
  42. package/dist/components/vue-ui-mini-loader.js +1 -1
  43. package/dist/components/vue-ui-molecule.js +1 -1
  44. package/dist/components/vue-ui-mood-radar.js +1 -1
  45. package/dist/components/vue-ui-nested-donuts.js +1 -1
  46. package/dist/components/vue-ui-onion.js +1 -1
  47. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  48. package/dist/components/vue-ui-quadrant.js +1 -1
  49. package/dist/components/vue-ui-quick-chart.js +1 -1
  50. package/dist/components/vue-ui-radar.js +1 -1
  51. package/dist/components/vue-ui-rating.js +1 -1
  52. package/dist/components/vue-ui-relation-circle.js +1 -1
  53. package/dist/components/vue-ui-ridgeline.js +1 -1
  54. package/dist/components/vue-ui-rings.js +1 -1
  55. package/dist/components/vue-ui-scatter.js +1 -1
  56. package/dist/components/vue-ui-skeleton.js +1 -1
  57. package/dist/components/vue-ui-smiley.js +1 -1
  58. package/dist/components/vue-ui-spark-trend.js +1 -1
  59. package/dist/components/vue-ui-sparkbar.js +1 -1
  60. package/dist/components/vue-ui-sparkgauge.js +1 -1
  61. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  62. package/dist/components/vue-ui-sparkline.js +1 -1
  63. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  64. package/dist/components/vue-ui-stackbar.js +1 -1
  65. package/dist/components/vue-ui-stackline.js +1 -1
  66. package/dist/components/vue-ui-strip-plot.js +1 -1
  67. package/dist/components/vue-ui-table-heatmap.js +1 -1
  68. package/dist/components/vue-ui-table-sparkline.js +1 -1
  69. package/dist/components/vue-ui-table.js +1 -1
  70. package/dist/components/vue-ui-thermometer.js +1 -1
  71. package/dist/components/vue-ui-timer.js +1 -1
  72. package/dist/components/vue-ui-tiremarks.js +1 -1
  73. package/dist/components/vue-ui-treemap.js +1 -1
  74. package/dist/components/vue-ui-vertical-bar.js +1 -1
  75. package/dist/components/vue-ui-waffle.js +1 -1
  76. package/dist/components/vue-ui-wheel.js +1 -1
  77. package/dist/components/vue-ui-word-cloud.js +1 -1
  78. package/dist/components/vue-ui-world.js +1 -1
  79. package/dist/components/vue-ui-xy-canvas.js +1 -1
  80. package/dist/components/vue-ui-xy.js +1 -1
  81. package/dist/style.css +1 -1
  82. package/dist/types/vue-data-ui.d.ts +11 -0
  83. package/dist/{useConfig-lKgU652n.js → useConfig-ByaaSKhz.js} +5 -0
  84. package/dist/{useObjectBindings-C3q0I8Zm.js → useObjectBindings-BR1sGimd.js} +1 -1
  85. package/dist/utils.js +1 -1
  86. package/dist/{vue-data-ui-BBnKbdCT.js → vue-data-ui-DBjj6t8B.js} +68 -68
  87. package/dist/vue-data-ui.js +69 -69
  88. package/dist/{vue-ui-3d-bar-gMuK6OMP.js → vue-ui-3d-bar-CmAc1xBL.js} +2 -2
  89. package/dist/{vue-ui-accordion-CNtzLReQ.js → vue-ui-accordion-BX9WL-QF.js} +2 -2
  90. package/dist/{vue-ui-age-pyramid-B_D1wPY4.js → vue-ui-age-pyramid-CFvux3-S.js} +2 -2
  91. package/dist/{vue-ui-annotator-KPkeXw8q.js → vue-ui-annotator-Be3VpH8Z.js} +4 -4
  92. package/dist/{vue-ui-bullet-Ci3tqx6A.js → vue-ui-bullet-C4xEb3fq.js} +2 -2
  93. package/dist/{vue-ui-bump-31Kryh02.js → vue-ui-bump-BW76g7ep.js} +3 -3
  94. package/dist/vue-ui-candlestick-ShTn9uzH.js +1826 -0
  95. package/dist/{vue-ui-carousel-table-D3j0UTQ1.js → vue-ui-carousel-table-DMan_IZb.js} +2 -2
  96. package/dist/{vue-ui-chestnut-Cgf0vAxo.js → vue-ui-chestnut-BIfaNOqy.js} +2 -2
  97. package/dist/{vue-ui-chord-DGma5NsS.js → vue-ui-chord-GDJiAjfD.js} +2 -2
  98. package/dist/{vue-ui-circle-pack-EvRfcXnZ.js → vue-ui-circle-pack-Bo4ljiP_.js} +2 -2
  99. package/dist/{vue-ui-cursor-BX8kHXVE.js → vue-ui-cursor-BuLoDOFw.js} +2 -2
  100. package/dist/{vue-ui-dag-DuOokTx4.js → vue-ui-dag-BmbwijZi.js} +3 -3
  101. package/dist/{vue-ui-dashboard-BeZCujZv.js → vue-ui-dashboard-CyzIaw6M.js} +67 -67
  102. package/dist/{vue-ui-digits-nIgbeL-K.js → vue-ui-digits-B33dTRHj.js} +2 -2
  103. package/dist/{vue-ui-donut-FzQwgIbN.js → vue-ui-donut-BIgvjStd.js} +3 -3
  104. package/dist/{vue-ui-donut-evolution-CwLYRDws.js → vue-ui-donut-evolution-DT5F88LK.js} +228 -218
  105. package/dist/{vue-ui-dumbbell-BmujSKH2.js → vue-ui-dumbbell-SwLKpHuh.js} +2 -2
  106. package/dist/{vue-ui-flow-D4jeyY5a.js → vue-ui-flow-BqTUyRBS.js} +2 -2
  107. package/dist/{vue-ui-funnel-DQ1fOfXW.js → vue-ui-funnel-GOx4FfhB.js} +2 -2
  108. package/dist/{vue-ui-galaxy-Wldw6HHG.js → vue-ui-galaxy-CTMyOfp7.js} +3 -3
  109. package/dist/{vue-ui-gauge-BzV3y_h3.js → vue-ui-gauge-Clz_TmiX.js} +2 -2
  110. package/dist/{vue-ui-geo-WLEkf2a9.js → vue-ui-geo-2kZK_UVF.js} +3 -3
  111. package/dist/{vue-ui-gizmo-C0vr-wLL.js → vue-ui-gizmo-BpNEwLo7.js} +2 -2
  112. package/dist/{vue-ui-heatmap-RmaAnr9m.js → vue-ui-heatmap-B6FLZij5.js} +3 -3
  113. package/dist/{vue-ui-history-plot-Dyf2Atb2.js → vue-ui-history-plot-DpGwqYyg.js} +3 -3
  114. package/dist/{vue-ui-horizontal-bar-DG4paRTj.js → vue-ui-horizontal-bar-BHFd966c.js} +4 -4
  115. package/dist/{vue-ui-kpi-TBQhSM0a.js → vue-ui-kpi-DyIqCISK.js} +2 -2
  116. package/dist/{vue-ui-mini-loader-BpLz9pDO.js → vue-ui-mini-loader-DDJUya9e.js} +1 -1
  117. package/dist/{vue-ui-molecule-Df4zCHL5.js → vue-ui-molecule-BtQOQ32e.js} +2 -2
  118. package/dist/{vue-ui-mood-radar-RQqmJU_9.js → vue-ui-mood-radar-CZSLnIMi.js} +2 -2
  119. package/dist/{vue-ui-nested-donuts-C7VIp7mz.js → vue-ui-nested-donuts-Lhteboo1.js} +3 -3
  120. package/dist/{vue-ui-onion-DP4NWU3Y.js → vue-ui-onion-uCUgmyF1.js} +3 -3
  121. package/dist/{vue-ui-parallel-coordinate-plot-a7OvbsVh.js → vue-ui-parallel-coordinate-plot-_u_VTAjF.js} +3 -3
  122. package/dist/{vue-ui-quadrant-C4GxyyE3.js → vue-ui-quadrant-CgalDMyS.js} +3 -3
  123. package/dist/{vue-ui-quick-chart-BNCkZiiG.js → vue-ui-quick-chart-BAWcSaDB.js} +4 -4
  124. package/dist/{vue-ui-radar-Dcq3bWA4.js → vue-ui-radar-64HPFASp.js} +3 -3
  125. package/dist/{vue-ui-rating-DBxf9Vwv.js → vue-ui-rating-D_QR_A3V.js} +1 -1
  126. package/dist/{vue-ui-relation-circle-CZ1UtEIM.js → vue-ui-relation-circle-DT4So4-6.js} +2 -2
  127. package/dist/{vue-ui-ridgeline-CsNDB48W.js → vue-ui-ridgeline-5fZANTS9.js} +3 -3
  128. package/dist/{vue-ui-rings-Bwd_i2eo.js → vue-ui-rings-QFY794j3.js} +3 -3
  129. package/dist/{vue-ui-scatter-DAa8MnhH.js → vue-ui-scatter-BPCY-u36.js} +3 -3
  130. package/dist/{vue-ui-skeleton-CPy9DsSC.js → vue-ui-skeleton-Dj_ZVfSX.js} +2 -2
  131. package/dist/{vue-ui-smiley-2xc8AwPP.js → vue-ui-smiley-rFdGxZK6.js} +1 -1
  132. package/dist/{vue-ui-spark-trend-CM06cEvG.js → vue-ui-spark-trend-DB0VHzm0.js} +2 -2
  133. package/dist/{vue-ui-sparkbar-CSDRWMhb.js → vue-ui-sparkbar-DVGRTFO5.js} +2 -2
  134. package/dist/{vue-ui-sparkgauge-CKeKTyBH.js → vue-ui-sparkgauge-3UFZaDF9.js} +2 -2
  135. package/dist/{vue-ui-sparkhistogram-BSnU2_Q0.js → vue-ui-sparkhistogram-DRmBVef7.js} +2 -2
  136. package/dist/{vue-ui-sparkline-DhkrfLYf.js → vue-ui-sparkline-vsqKnakQ.js} +2 -2
  137. package/dist/{vue-ui-sparkstackbar-D3vn49rn.js → vue-ui-sparkstackbar-BNUhunuQ.js} +3 -3
  138. package/dist/vue-ui-stackbar-9jP1s0MN.js +2267 -0
  139. package/dist/vue-ui-stackline-D1o_afno.js +2395 -0
  140. package/dist/{vue-ui-strip-plot-DLH2Jc91.js → vue-ui-strip-plot-CogQ8VSl.js} +2 -2
  141. package/dist/{vue-ui-table-DBWGRgw6.js → vue-ui-table-Bub1v0eM.js} +5 -5
  142. package/dist/{vue-ui-table-heatmap-D0SM6A1L.js → vue-ui-table-heatmap-BFKyJTr1.js} +2 -2
  143. package/dist/{vue-ui-table-sparkline-BShpt1UR.js → vue-ui-table-sparkline-BPts9wTR.js} +2 -2
  144. package/dist/{vue-ui-thermometer-BIH00QYu.js → vue-ui-thermometer-CJJ4cVt0.js} +2 -2
  145. package/dist/{vue-ui-timer-vcaC2CGp.js → vue-ui-timer-BEPXWd20.js} +3 -3
  146. package/dist/{vue-ui-tiremarks-BmhvsqeP.js → vue-ui-tiremarks-BC7bLLQD.js} +2 -2
  147. package/dist/{vue-ui-treemap-C-M5PHTS.js → vue-ui-treemap-Cja-vZoa.js} +4 -4
  148. package/dist/{vue-ui-waffle-DnpUe9aj.js → vue-ui-waffle-BRj-YBlz.js} +3 -3
  149. package/dist/{vue-ui-wheel-D21hTOn0.js → vue-ui-wheel-AOTFpTWN.js} +2 -2
  150. package/dist/{vue-ui-word-cloud-C4SPxSlX.js → vue-ui-word-cloud-dqfAdhW-.js} +3 -3
  151. package/dist/{vue-ui-world-DSq_cPCv.js → vue-ui-world-DqwsIYze.js} +3 -3
  152. package/dist/vue-ui-xy-Dhult6gR.js +4181 -0
  153. package/dist/{vue-ui-xy-canvas-DjTurM4m.js → vue-ui-xy-canvas-B06Rit63.js} +6 -6
  154. package/package.json +1 -1
  155. package/dist/vue-ui-candlestick-DU0MXtKT.js +0 -1814
  156. package/dist/vue-ui-stackbar-BR7tZmWR.js +0 -2253
  157. package/dist/vue-ui-stackline-Dj9N60Js.js +0 -2381
  158. package/dist/vue-ui-xy-Iep0AjyV.js +0 -4151
@@ -1,1814 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-CAFD8bLK.js";
2
- import { G as t, H as n, J as r, Mt as i, Rt as a, S as o, St as s, X as c, h as l, jt as ee, nt as te, pt as ne, s as re, t as ie, v as u, zt as ae } from "./lib-BkiwukKO.js";
3
- import { n as oe, r as se, t as ce } from "./useTimeLabels-C0x7zUXP.js";
4
- import { t as le } from "./useConfig-lKgU652n.js";
5
- import { t as ue } from "./usePrinter-X0yWOynH.js";
6
- import { n as de, t as fe } from "./BaseScanner-C7dmAref.js";
7
- import { t as pe } from "./useSvgExport-Dtu973wa.js";
8
- import { t as me } from "./useNestedProp-Ck4hsrpu.js";
9
- import { t as he } from "./useThemeCheck-rFK9Zlb_.js";
10
- import { t as ge } from "./useTimeLabelCollider-Dm55Emzg.js";
11
- import { t as _e } from "./img-BjOr008R.js";
12
- import { n as ve } from "./Title-__gWq2g6.js";
13
- import { t as ye } from "./_plugin-vue_export-helper-Dq1MygBL.js";
14
- import { c as be } from "./canvas-lib-DTaADQOK.js";
15
- import { t as xe } from "./useResponsive-CrAInupd.js";
16
- import { t as Se } from "./SlicerPreview-CG1jpZqZ.js";
17
- import { t as Ce } from "./A11yDataTable-q2-8fSlJ.js";
18
- import { t as we } from "./useUserOptionState-CjPJPTg2.js";
19
- import { t as Te } from "./useChartAccessibility-Do37qcw2.js";
20
- import { t as Ee } from "./vue_ui_candlestick-sY6UtOop.js";
21
- import { Fragment as d, computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createSlots as De, createTextVNode as Oe, createVNode as ke, defineAsyncComponent as _, guardReactiveProps as v, mergeProps as Ae, nextTick as je, normalizeClass as y, normalizeProps as b, normalizeStyle as x, onBeforeUnmount as Me, onMounted as Ne, openBlock as S, ref as C, renderList as w, renderSlot as T, resolveDynamicComponent as Pe, shallowRef as Fe, toDisplayString as E, toRefs as Ie, unref as D, watch as Le, watchEffect as Re, withCtx as O } from "vue";
22
- //#region src/components/vue-ui-candlestick.vue
23
- var ze = /* @__PURE__ */ e({ default: () => Dt }), Be = ["id"], Ve = ["id"], He = { style: { position: "relative" } }, Ue = [
24
- "xmlns",
25
- "aria-describedby",
26
- "viewBox"
27
- ], We = [
28
- "x",
29
- "y",
30
- "width",
31
- "height"
32
- ], Ge = { key: 1 }, Ke = ["id"], qe = ["stop-color"], Je = ["stop-color"], Ye = ["stop-color"], Xe = ["id"], Ze = ["stop-color"], Qe = ["stop-color"], $e = ["stop-color"], et = { key: 0 }, tt = [
33
- "x1",
34
- "x2",
35
- "y1",
36
- "y2",
37
- "stroke",
38
- "stroke-width"
39
- ], nt = [
40
- "x1",
41
- "x2",
42
- "y1",
43
- "y2",
44
- "stroke",
45
- "stroke-width"
46
- ], rt = [
47
- "x1",
48
- "x2",
49
- "y1",
50
- "y2",
51
- "stroke",
52
- "stroke-width",
53
- "stroke-dasharray"
54
- ], it = [
55
- "x1",
56
- "x2",
57
- "y1",
58
- "y2",
59
- "stroke",
60
- "stroke-width",
61
- "stroke-dasharray"
62
- ], at = [
63
- "x1",
64
- "x2",
65
- "y1",
66
- "y2",
67
- "stroke",
68
- "stroke-width"
69
- ], ot = [
70
- "x1",
71
- "x2",
72
- "y1",
73
- "y2",
74
- "stroke",
75
- "stroke-width"
76
- ], st = [
77
- "x",
78
- "y",
79
- "font-size",
80
- "fill",
81
- "font-weight"
82
- ], ct = [
83
- "transform",
84
- "text-anchor",
85
- "font-size",
86
- "fill",
87
- "font-weight"
88
- ], lt = [
89
- "transform",
90
- "text-anchor",
91
- "font-size",
92
- "fill",
93
- "font-weight"
94
- ], ut = [
95
- "x",
96
- "y",
97
- "width",
98
- "height",
99
- "fill",
100
- "rx"
101
- ], dt = { key: 0 }, ft = [
102
- "cx",
103
- "cy",
104
- "r",
105
- "fill"
106
- ], pt = [
107
- "cx",
108
- "cy",
109
- "r",
110
- "fill"
111
- ], mt = { key: 1 }, ht = [
112
- "x",
113
- "y",
114
- "width",
115
- "height",
116
- "rx",
117
- "fill"
118
- ], gt = [
119
- "x",
120
- "y",
121
- "width",
122
- "height",
123
- "fill",
124
- "rx"
125
- ], _t = [
126
- "x",
127
- "y",
128
- "height",
129
- "width",
130
- "fill",
131
- "rx"
132
- ], vt = [
133
- "x",
134
- "y",
135
- "height",
136
- "width",
137
- "fill",
138
- "rx",
139
- "stroke",
140
- "stroke-width"
141
- ], yt = ["d", "stroke"], bt = [
142
- "x",
143
- "y",
144
- "height",
145
- "width",
146
- "fill",
147
- "onMouseover",
148
- "onMouseleave",
149
- "onClick"
150
- ], xt = ["data-start", "data-end"], St = {
151
- key: 0,
152
- style: {
153
- position: "absolute",
154
- top: "100%",
155
- left: "0",
156
- width: "100%"
157
- },
158
- "data-dom-to-png-ignore": "",
159
- "aria-hidden": "true"
160
- }, Ct = {
161
- key: 5,
162
- class: "vue-data-ui-watermark"
163
- }, wt = ["d", "stroke"], Tt = [
164
- "d",
165
- "stroke",
166
- "stroke-width"
167
- ], Et = ["innerHTML"], Dt = /* @__PURE__ */ ye({
168
- __name: "vue-ui-candlestick",
169
- props: {
170
- config: {
171
- type: Object,
172
- default() {
173
- return {};
174
- }
175
- },
176
- dataset: {
177
- type: Array,
178
- default() {
179
- return [];
180
- }
181
- },
182
- selectedXIndex: {
183
- type: Number,
184
- default: void 0
185
- }
186
- },
187
- emits: ["selectX", "copyAlt"],
188
- setup(e, { expose: ye, emit: ze }) {
189
- let Dt = _(() => import("./BaseIcon-CEmt3Ifx.js").then((e) => e.n)), Ot = _(() => import("./Tooltip-CuWEYGr3.js")), kt = _(() => import("./vue-ui-accordion-CNtzLReQ.js").then((e) => e.n)), At = _(() => import("./DataTable-BvDJEAma.js")), jt = _(() => import("./PenAndPaper-DwpL8Z0l.js").then((e) => e.t)), Mt = _(() => import("./UserOptions-B57xo6D2.js").then((e) => e.n)), Nt = _(() => import("./PackageVersion-C7CvErYQ.js").then((e) => e.t)), Pt = _(() => import("./BaseDraggableDialog-BQcmQAK5.js").then((e) => e.n)), { vue_ui_candlestick: Ft } = le(), { isThemeValid: It, warnInvalidTheme: Lt } = he(), k = e, Rt = ze, zt = f(() => !!k.dataset && k.dataset.length), A = C(!1), Bt = C(null), j = C(n()), Vt = C(!1), Ht = C(""), M = C(void 0), Ut = C(0), N = C(null), Wt = C(null), Gt = C(null), Kt = C(null), qt = C(null), Jt = C(null), Yt = C(0), Xt = C(0), Zt = C(0), Qt = C(null), $t = C(null), en = C(null), tn = C(null), nn = C(null), rn = C(!1), an = C(!1), P = C(null), on = C({
190
- x: 0,
191
- y: 0
192
- }), sn = C("pointer"), cn = C(!1), F = C(_n()), ln = f(() => F.value.userOptions.useCursorPointer), un = f(() => ae({
193
- defaultConfig: {
194
- useCssAnimation: !1,
195
- userOptions: { show: !1 },
196
- table: { show: !1 },
197
- style: {
198
- backgroundColor: "#99999930",
199
- layout: {
200
- candle: { colors: {
201
- bearish: "#BABABA",
202
- bullish: "#CACACA"
203
- } },
204
- grid: {
205
- stroke: "#6A6A6A",
206
- verticalLines: { stroke: "#6A6A6A" },
207
- horizontalLines: { stroke: "#6A6A6A" },
208
- yAxis: {
209
- dataLabels: { show: !1 },
210
- scale: {
211
- min: null,
212
- max: null
213
- }
214
- }
215
- },
216
- wick: {
217
- stroke: "#6A6A6A",
218
- extremity: { color: "#6A6A6A" }
219
- }
220
- },
221
- tooltip: { show: !1 },
222
- zoom: {
223
- show: !1,
224
- startIndex: null,
225
- endIndex: null
226
- }
227
- }
228
- },
229
- userConfig: F.value.skeletonConfig ?? {}
230
- })), { loading: I, FINAL_DATASET: L, manualLoading: dn } = de({
231
- ...Ie(k),
232
- FINAL_CONFIG: F,
233
- prepareConfig: _n,
234
- callback: () => {
235
- Promise.resolve().then(async () => {
236
- await ur();
237
- });
238
- },
239
- skeletonDataset: k.config?.skeletonDataset ?? [
240
- [
241
- 17040672e5,
242
- 10,
243
- 20,
244
- 2,
245
- 10,
246
- 30
247
- ],
248
- [
249
- 17067456e5,
250
- 10,
251
- 30,
252
- 5,
253
- 20,
254
- 50
255
- ],
256
- [
257
- 17092512e5,
258
- 20,
259
- 50,
260
- 10,
261
- 30,
262
- 80
263
- ],
264
- [
265
- 17119296e5,
266
- 30,
267
- 80,
268
- 20,
269
- 50,
270
- 130
271
- ],
272
- [
273
- 17145216e5,
274
- 50,
275
- 130,
276
- 30,
277
- 100,
278
- 210
279
- ],
280
- [
281
- 17172e8,
282
- 80,
283
- 210,
284
- 50,
285
- 150,
286
- 340
287
- ],
288
- [
289
- 1719792e6,
290
- 130,
291
- 340,
292
- 80,
293
- 280,
294
- 550
295
- ],
296
- [
297
- 17224704e5,
298
- 210,
299
- 550,
300
- 130,
301
- 450,
302
- 890
303
- ],
304
- [
305
- 17251488e5,
306
- 340,
307
- 890,
308
- 210,
309
- 750,
310
- 1440
311
- ],
312
- [
313
- 17277408e5,
314
- 550,
315
- 1440,
316
- 340,
317
- 1230,
318
- 2330
319
- ],
320
- [
321
- 17304192e5,
322
- 890,
323
- 2330,
324
- 550,
325
- 1950,
326
- 3770
327
- ],
328
- [
329
- 17330112e5,
330
- 1440,
331
- 3770,
332
- 890,
333
- 3200,
334
- 5100
335
- ]
336
- ],
337
- skeletonConfig: ae({
338
- defaultConfig: F.value,
339
- userConfig: un.value
340
- })
341
- }), { userOptionsVisible: fn, setUserOptionsVisibility: pn, keepUserOptionState: mn } = we({ config: F.value }), { svgRef: R } = Te({ config: F.value.style.title });
342
- function hn() {
343
- pn(!0);
344
- }
345
- function gn() {
346
- pn(!1), Rt("selectX", {
347
- seriesIndex: null,
348
- datapoint: null
349
- }), M.value = null;
350
- }
351
- function _n() {
352
- let e = me({
353
- userConfig: k.config,
354
- defaultConfig: Ft
355
- }), t = {}, n = e.theme;
356
- if (n) if (!It.value(e)) Lt(e), t = e;
357
- else {
358
- let r = me({
359
- userConfig: Ee[n] || k.config,
360
- defaultConfig: e
361
- });
362
- t = { ...me({
363
- userConfig: k.config,
364
- defaultConfig: r
365
- }) };
366
- }
367
- else t = e;
368
- return t;
369
- }
370
- Le(() => k.config, (e) => {
371
- I.value || (F.value = _n()), fn.value = !F.value.userOptions.showOnChartHover, vn(), Yt.value += 1, Zt.value += 1, Xt.value += 1, U.value.showTable = F.value.table.show, U.value.showTooltip = F.value.style.tooltip.show, jn();
372
- }, { deep: !0 }), Le(() => k.dataset, (e) => {
373
- Array.isArray(e) && e.length > 0 && (dn.value = !1), or();
374
- }, { deep: !0 });
375
- let z = C({
376
- height: F.value.style.height,
377
- width: F.value.style.width,
378
- xAxisFontSize: F.value.style.layout.grid.xAxis.dataLabels.fontSize,
379
- yAxisFontSize: F.value.style.layout.grid.yAxis.dataLabels.fontSize
380
- }), B = Fe(null), V = Fe(null);
381
- Ne(() => {
382
- vn();
383
- });
384
- let H = f(() => !!F.value.debug);
385
- function vn() {
386
- if (s(k.dataset) && (c({
387
- componentName: "VueUiCandlestick",
388
- type: "dataset",
389
- debug: H.value
390
- }), dn.value = !0), s(k.dataset) || (dn.value = F.value.loading), setTimeout(() => {
391
- A.value = !0;
392
- }, 10), F.value.responsive) {
393
- let e = be(() => {
394
- A.value = !1;
395
- let { width: e, height: t } = xe({
396
- chart: N.value,
397
- title: F.value.style.title.text ? Wt.value : null,
398
- slicer: F.value.style.zoom.show && G.value > 6 ? Kt.value.$el : null,
399
- legend: Gt.value,
400
- source: qt.value,
401
- noTitle: Jt.value
402
- });
403
- requestAnimationFrame(() => {
404
- z.value.width = e, z.value.height = t - 12, F.value.responsiveProportionalSizing ? (z.value.xAxisFontSize = a({
405
- relator: Math.min(e, t),
406
- adjuster: F.value.style.width,
407
- source: F.value.style.layout.grid.xAxis.dataLabels.fontSize,
408
- threshold: 6,
409
- fallback: 6
410
- }), z.value.yAxisFontSize = a({
411
- relator: Math.min(e, t),
412
- adjuster: F.value.style.width,
413
- source: F.value.style.layout.grid.yAxis.dataLabels.fontSize,
414
- threshold: 6,
415
- fallback: 6
416
- })) : (z.value.xAxisFontSize = F.value.style.layout.grid.xAxis.dataLabels.fontSize, z.value.yAxisFontSize = F.value.style.layout.grid.yAxis.dataLabels.fontSize), Bt.value && clearTimeout(Bt.value), Bt.value = setTimeout(() => {
417
- A.value = !0;
418
- }, 10);
419
- });
420
- });
421
- B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect()), B.value = new ResizeObserver(e), V.value = N.value.parentNode, B.value.observe(V.value);
422
- }
423
- ur();
424
- }
425
- Me(() => {
426
- B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect());
427
- });
428
- let { isPrinting: yn, isImaging: bn, generatePdf: xn, generateImage: Sn } = ue({
429
- elementId: `vue-ui-candlestick_${j.value}`,
430
- fileName: F.value.style.title.text || "vue-ui-candlestick",
431
- options: F.value.userOptions.print
432
- }), Cn = f(() => F.value.userOptions.show && !F.value.style.title.text), U = C({
433
- showTable: F.value.table.show,
434
- showTooltip: F.value.style.tooltip.show
435
- }), wn = C(0), Tn = be((e) => {
436
- wn.value = e;
437
- }, 100);
438
- Re((e) => {
439
- let t = $t.value;
440
- if (!t) return;
441
- let n = new ResizeObserver((e) => {
442
- Tn(e[0].contentRect.height);
443
- });
444
- n.observe(t), e(() => n.disconnect());
445
- }), Me(() => {
446
- wn.value = 0;
447
- });
448
- let En = f(() => {
449
- let e = 0;
450
- return $t.value && (e = wn.value + z.value.xAxisFontSize), e;
451
- });
452
- function Dn() {
453
- let e = F.value.style.layout.grid.yAxis.dataLabels.offsetX;
454
- return Qt.value && (e = Array.from(Qt.value.querySelectorAll("text")).reduce((e, t) => {
455
- let n = t.getComputedTextLength();
456
- return n > e ? n : e;
457
- }, 0)), e + 13;
458
- }
459
- let W = f(() => {
460
- let { top: e, right: t, bottom: n, left: r } = F.value.style.layout.padding, i = Dn();
461
- return {
462
- top: e + 12,
463
- right: z.value.width - t,
464
- left: r + i,
465
- bottom: z.value.height - n - En.value,
466
- width: z.value.width - r - t - i,
467
- height: z.value.height - e - n - En.value - 12
468
- };
469
- }), On = f(() => {
470
- let { left: e, top: t, width: n, height: r } = W.value, i = K.value.start, a = K.value.end - i, o = n / a, s = q.value.start - i, c = q.value.end - i, l = Math.max(0, Math.min(a, s)), ee = Math.max(0, Math.min(a, c));
471
- return {
472
- x: e + l * o,
473
- y: t,
474
- width: (ee - l) * o,
475
- height: r,
476
- fill: F.value.style.zoom.preview.fill,
477
- stroke: F.value.style.zoom.preview.stroke,
478
- "stroke-width": F.value.style.zoom.preview.strokeWidth,
479
- "stroke-dasharray": F.value.style.zoom.preview.strokeDasharray,
480
- "stroke-linecap": "round",
481
- "stroke-linejoin": "round",
482
- style: {
483
- pointerEvents: "none",
484
- transition: "none !important",
485
- animation: "none !important"
486
- }
487
- };
488
- }), G = f(() => L.value.length), K = C({
489
- start: 0,
490
- end: G.value
491
- }), q = C({
492
- start: 0,
493
- end: G.value
494
- }), kn = f(() => F.value.style.zoom.preview.enable && (q.value.start !== K.value.start || q.value.end !== K.value.end));
495
- function An(e, t) {
496
- q.value[e] = t;
497
- }
498
- function jn() {
499
- let e = Math.max(0, Math.min(K.value.start ?? 0, G.value - 1)), t = Math.max(e + 1, Math.min(K.value.end ?? G.value, G.value));
500
- (!Number.isFinite(e) || !Number.isFinite(t) || t <= e) && (e = 0, t = G.value), K.value.start = e, K.value.end = t, q.value.start = e, q.value.end = t, Kt.value && (Kt.value.setStartValue(e), Kt.value.setEndValue(t));
501
- }
502
- let Mn = f(() => L.value.map((e, t) => ({
503
- ...e,
504
- absoluteIndex: t
505
- }))), Nn = f(() => Mn.value.slice(K.value.start, K.value.end)), J = f(() => (L.value.forEach((e, t) => {
506
- [null, void 0].includes(e[0]) && c({
507
- componentName: "VueUiCandlestick",
508
- type: "datasetAttribute",
509
- property: "period (index 0)",
510
- index: t,
511
- debug: H.value
512
- }), [null, void 0].includes(e[1]) && c({
513
- componentName: "VueUiCandlestick",
514
- type: "datasetAttribute",
515
- property: "open (index 1)",
516
- index: t,
517
- debug: H.value
518
- }), [null, void 0].includes(e[2]) && c({
519
- componentName: "VueUiCandlestick",
520
- type: "datasetAttribute",
521
- property: "high (index 2)",
522
- index: t,
523
- debug: H.value
524
- }), [null, void 0].includes(e[3]) && c({
525
- componentName: "VueUiCandlestick",
526
- type: "datasetAttribute",
527
- property: "low (index 3)",
528
- index: t,
529
- debug: H.value
530
- }), [null, void 0].includes(e[4]) && c({
531
- componentName: "VueUiCandlestick",
532
- type: "datasetAttribute",
533
- property: "close (index 4)",
534
- index: t,
535
- debug: H.value
536
- }), [null, void 0].includes(e[5]) && c({
537
- componentName: "VueUiCandlestick",
538
- type: "datasetAttribute",
539
- property: "volume (index 5)",
540
- index: t,
541
- debug: H.value
542
- });
543
- }), Nn.value.map((e) => ({
544
- absoluteIndex: e.absoluteIndex,
545
- period: e[0],
546
- open: e[1],
547
- high: e[2],
548
- low: e[3],
549
- close: e[4],
550
- volume: e[5]
551
- })))), Pn = f(() => Mn.value.map((e) => ({
552
- absoluteIndex: e.absoluteIndex,
553
- period: e[0],
554
- open: e[1],
555
- high: e[2],
556
- low: e[3],
557
- close: e[4],
558
- volume: e[5]
559
- }))), Y = f(() => W.value.width / Nn.value.length), Fn = f(() => ({
560
- max: F.value.style.layout.grid.yAxis.scale.max === null ? Math.max(...J.value.map((e) => e.high)) : F.value.style.layout.grid.yAxis.scale.max,
561
- min: F.value.style.layout.grid.yAxis.scale.min === null ? 0 : F.value.style.layout.grid.yAxis.scale.min
562
- })), X = f(() => l(Fn.value.min, Fn.value.max, F.value.style.layout.grid.yAxis.dataLabels.steps));
563
- function In(e, t, n = null, r = null) {
564
- return {
565
- ...e,
566
- x: u(W.value.left + t * Y.value + Y.value / 2),
567
- y: u(W.value.top + (1 - (e - X.value.min) / (X.value.max - X.value.min)) * W.value.height),
568
- value: u(e),
569
- isMax: e === n,
570
- isMin: e === r
571
- };
572
- }
573
- let Z = f(() => {
574
- let e = {
575
- o: Math.max(...J.value.map((e) => e.open)),
576
- h: Math.max(...J.value.map((e) => e.high)),
577
- l: Math.max(...J.value.map((e) => e.low)),
578
- c: Math.max(...J.value.map((e) => e.low))
579
- }, t = {
580
- o: Math.min(...J.value.map((e) => e.open)),
581
- h: Math.min(...J.value.map((e) => e.high)),
582
- l: Math.min(...J.value.map((e) => e.low)),
583
- c: Math.min(...J.value.map((e) => e.low))
584
- }, n = Math.max(...J.value.map((e) => e.volume)), r = Math.min(...J.value.map((e) => e.volume));
585
- return J.value.map((i, a) => {
586
- let o = In(i.open, a, e.o, t.o), s = In(i.high, a, e.h, t.h), c = In(i.low, a, e.l, t.l), l = In(i.close, a, e.c, t.c), ee = i.close > i.open, te = i.volume === n, ne = i.volume === r;
587
- return {
588
- period: i.period,
589
- open: o,
590
- high: s,
591
- low: c,
592
- close: l,
593
- volume: i.volume,
594
- isBullish: ee,
595
- absoluteIndex: i.absoluteIndex,
596
- isMaxVolume: te,
597
- isMinVolume: ne
598
- };
599
- });
600
- });
601
- function Ln({ item: e, index: t, minimapH: n, unitW: r }) {
602
- let i = F.value.style.layout.grid.yAxis.scale.min ?? 0, a = F.value.style.layout.grid.yAxis.scale.max ?? Math.max(...L.value.map((e) => e[2]));
603
- return {
604
- ...e,
605
- x: u(t * r),
606
- y: u((1 - (e - i) / (a - i)) * n),
607
- value: u(e)
608
- };
609
- }
610
- let Rn = f(() => ({ minimapH: e, unitW: t }) => Pn.value.map((n, r) => {
611
- let i = Ln({
612
- item: n.open,
613
- index: r,
614
- minimapH: e,
615
- unitW: t
616
- }), a = Ln({
617
- item: n.high,
618
- index: r,
619
- minimapH: e,
620
- unitW: t
621
- }), o = Ln({
622
- item: n.low,
623
- index: r,
624
- minimapH: e,
625
- unitW: t
626
- }), s = Ln({
627
- item: n.close,
628
- index: r,
629
- minimapH: e,
630
- unitW: t
631
- }), c = n.close > n.open;
632
- return {
633
- period: n.period,
634
- open: i,
635
- high: a,
636
- low: o,
637
- close: s,
638
- volume: n.volume,
639
- isBullish: c,
640
- absoluteIndex: n.absoluteIndex
641
- };
642
- })), zn = f(() => F.value.style.zoom.minimap.show ? [{
643
- name: "",
644
- series: L.value.map((e) => e[2]),
645
- color: "#000000",
646
- isVisible: !0
647
- }] : []);
648
- function Bn(e) {
649
- return u((e - X.value.min) / (X.value.max - X.value.min));
650
- }
651
- let Vn = f(() => X.value.ticks.map((e) => ({
652
- y: W.value.bottom - W.value.height * Bn(e),
653
- value: u(e)
654
- }))), Hn = f(() => J.value.map((e) => e.period)), Q = C([]), Un = C([]), Wn = 0;
655
- Re(() => {
656
- let e = ++Wn;
657
- (async () => {
658
- let t = await ce({
659
- values: L.value.map((e) => e[0]),
660
- maxDatapoints: L.value.length,
661
- formatter: F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter,
662
- start: K.value.start,
663
- end: K.value.end
664
- });
665
- e === Wn && (Q.value = t);
666
- })();
667
- });
668
- let Gn = 0;
669
- Re(() => {
670
- let e = ++Gn;
671
- (async () => {
672
- let t = await ce({
673
- values: L.value.map((e) => e[0]),
674
- maxDatapoints: L.value.length,
675
- formatter: F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter,
676
- start: 0,
677
- end: G.value
678
- });
679
- e === Gn && (Un.value = t);
680
- })();
681
- });
682
- let Kn = f(() => {
683
- let e = F.value.style.layout.grid.xAxis.dataLabels.modulo;
684
- return Q.value.length ? Math.min(e, [...new Set(Q.value.map((e) => e.text))].length) : e;
685
- }), qn = C({
686
- months: [],
687
- shortMonths: [],
688
- days: [],
689
- shortDays: []
690
- }), Jn = 0;
691
- Re(() => {
692
- let e = ++Jn, t = F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter;
693
- (async () => {
694
- let n = await se(t.locale).catch(() => se("en"));
695
- e === Jn && (qn.value = n.data);
696
- })();
697
- });
698
- let Yn = f(() => {
699
- let e = F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter, t = oe({
700
- useUTC: e.useUTC,
701
- locale: qn.value,
702
- januaryAsYear: e.januaryAsYear
703
- });
704
- return (e, n) => {
705
- let r = L.value.map((e) => e[0])?.[e];
706
- return r == null ? "" : t.formatDate(new Date(r), n);
707
- };
708
- }), Xn = f(() => (L.value.map((e) => e[0]) || []).map((e, t) => ({
709
- text: Yn.value(t, F.value.style.tooltip.timeFormat),
710
- absoluteIndex: t
711
- }))), Zn = f(() => (L.value.map((e) => e[0]) || []).map((e, t) => ({
712
- text: Yn.value(t, F.value.style.zoom.timeFormat),
713
- absoluteIndex: t
714
- }))), Qn = f(() => {
715
- let e = F.value.style.layout.grid.xAxis.dataLabels, t = Q.value || [], n = Un.value || [], r = K.value.start ?? 0, i = M.value, a = G.value, o = t.map((e) => e?.text ?? ""), s = n.map((e) => e?.text ?? "");
716
- return re(!!e.showOnlyFirstAndLast, !!e.showOnlyAtModulo, Math.max(1, Kn.value || 1), o, s, r, i, a);
717
- }), $n = f(() => F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? {
718
- start: Q.value.find((e) => e.absoluteIndex === K.value.start)?.text ?? "",
719
- end: Q.value.find((e) => e.absoluteIndex === K.value.end - 1)?.text ?? ""
720
- } : {
721
- start: L.value[K.value.start] ? L.value[K.value.start][0] : L.value[0][0],
722
- end: L.value[K.value.end - 1] ? L.value[K.value.end - 1][0] : L.value.at(-1)[0]
723
- }), er = C(null);
724
- function tr(e, t) {
725
- F.value.events.datapointClick && F.value.events.datapointClick({
726
- datapoint: t,
727
- seriesIndex: e + K.value.start
728
- });
729
- }
730
- function nr(e, t) {
731
- F.value.events.datapointLeave && F.value.events.datapointLeave({
732
- datapoint: t,
733
- seriesIndex: e + K.value.start
734
- }), M.value = void 0, Vt.value = !1, P.value = null, sn.value = "pointer";
735
- }
736
- Le(() => k.selectedXIndex, (e) => {
737
- if ([null, void 0].includes(k.selectedXIndex)) {
738
- M.value = null;
739
- return;
740
- }
741
- let t = e - K.value.start;
742
- t < 0 || e >= K.value.end ? M.value = null : M.value = t ?? null;
743
- }, { immediate: !0 });
744
- function rr(e, n, r = "pointer") {
745
- F.value.events.datapointEnter && F.value.events.datapointEnter({
746
- datapoint: n,
747
- seriesIndex: e + K.value.start
748
- }), M.value = e, P.value = e, sn.value = r, er.value = {
749
- datapoint: n,
750
- seriesIndex: e,
751
- series: Z.value,
752
- config: F.value
753
- }, jr({
754
- seriesIndex: e,
755
- datapoint: n
756
- });
757
- let i = F.value.style.tooltip.customFormat;
758
- if (ne(i) && te(() => i({
759
- seriesIndex: e,
760
- datapoint: n,
761
- series: Z.value,
762
- config: F.value
763
- }))) Ht.value = i({
764
- seriesIndex: e,
765
- datapoint: n,
766
- series: Z.value,
767
- config: F.value
768
- });
769
- else if (F.value.style.tooltip.show) {
770
- let r = "", { period: i, open: a, high: o, low: s, close: c, volume: l, isBullish: ee } = Z.value[e], { period: te, open: ne, high: re, low: ie, close: u, volume: ae } = F.value.translations, oe = F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? F.value.style.tooltip.useDefaultTimeFormat ? Q.value[e].text : Xn.value[e].text : i;
771
- r += `<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="${F.value.style.layout.candle.borderRadius * 3}" stroke="${F.value.style.layout.candle.stroke}" stroke-width="${F.value.style.layout.candle.strokeWidth}"
772
- fill="${F.value.style.layout.candle.gradient.show ? ee ? `url(#bullish_gradient_${j.value})` : `url(#bearish_gradient_${j.value})` : ee ? F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.colors.bearish}"/></svg>${oe}</div>`, r += `${ae} : <b>${isNaN(l) ? "-" : Number(l.toFixed(F.value.style.tooltip.roundingValue)).toLocaleString()}</b>`, r += `<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${F.value.style.tooltip.borderColor}">`;
773
- let se = t({
774
- p: F.value.style.tooltip.prefix,
775
- v: a.value,
776
- s: F.value.style.tooltip.suffix,
777
- r: F.value.style.tooltip.roundingValue
778
- }), ce = t({
779
- p: F.value.style.tooltip.prefix,
780
- v: o.value,
781
- s: F.value.style.tooltip.suffix,
782
- r: F.value.style.tooltip.roundingValue
783
- }), le = t({
784
- p: F.value.style.tooltip.prefix,
785
- v: s.value,
786
- s: F.value.style.tooltip.suffix,
787
- r: F.value.style.tooltip.roundingValue
788
- }), ue = t({
789
- p: F.value.style.tooltip.prefix,
790
- v: c.value,
791
- s: F.value.style.tooltip.suffix,
792
- r: F.value.style.tooltip.roundingValue
793
- });
794
- F.value.style.tooltip.showChart ? r += `<div style="width:100%;display:flex;align-items:center;justify-content:center;">
795
- <svg viewBox="0 0 100 100" width="100px" style="background: transparent; overflow: visible">
796
- <g>
797
- <line x1="50" x2="50" y1="20" y2="80" stroke="${n.isBullish ? F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.colors.bearish}" stroke-width="2" stroke-linecap="round" />
798
- ${n.isBullish ? `
799
- <line x1="45" x2="50" y1="65" y2="65" stroke="${F.value.style.layout.candle.colors.bullish}" stroke-width="1.5" stroke-linecap="round" />
800
- <line x1="50" x2="55" y1="35" y2="35" stroke="${F.value.style.layout.candle.colors.bullish}" stroke-width="1.5" stroke-linecap="round" />
801
- <text x="38" y="70" text-anchor="end" fill="${F.value.style.tooltip.color}">${se}</text>
802
- <text x="62" y="40" text-anchor="start" fill="${F.value.style.tooltip.color}">${ue}</text>
803
- ` : `
804
- <line x1="45" x2="50" y1="35" y2="35" stroke="${F.value.style.layout.candle.colors.bearish}" stroke-width="1.5" stroke-linecap="round" />
805
- <line x1="50" x2="55" y1="65" y2="65" stroke="${F.value.style.layout.candle.colors.bearish}" stroke-width="1.5" stroke-linecap="round" />
806
- <text x="40" y="40" text-anchor="end" fill="${F.value.style.tooltip.color}">${se}</text>
807
- <text x="60" y="70" text-anchor="start" fill="${F.value.style.tooltip.color}">${ue}</text>
808
- `}
809
- <text x="50" y="13" text-anchor="middle" fill="${F.value.style.tooltip.color}">${ce}</text>
810
- <text x="50" y="97" text-anchor="middle" fill="${F.value.style.tooltip.color}">${le}</text>
811
- <g>
812
- </svg>
813
- <div>
814
- ` : (r += `<div>${ne}: <b>${se}</b></div>`, r += `<div>${re}: <b>${ce}</b></div>`, r += `<div>${ie}: <b>${le}</b></div>`, r += `<div>${u}: <b>${ue}</b></div>`), r += "</div>", Ht.value = `<div style="text-align:right">${r}</div>`;
815
- }
816
- Vt.value = !0;
817
- }
818
- let ir = C(null);
819
- function ar() {
820
- return new Promise((e) => requestAnimationFrame(() => requestAnimationFrame(() => e())));
821
- }
822
- Me(() => {
823
- ir.value && cancelAnimationFrame(ir.value);
824
- });
825
- async function or() {
826
- ur(), await je(), ir.value && cancelAnimationFrame(ir.value), ir.value = requestAnimationFrame(async () => {
827
- await ar(), ur();
828
- });
829
- }
830
- let sr = C(!1), cr = C(!1), lr = C(!1);
831
- function ur() {
832
- if (!sr.value) {
833
- sr.value = !0;
834
- try {
835
- let { startIndex: e, endIndex: t } = F.value.style.zoom, n = G.value, r = e ?? 0, i = t == null ? n : Math.min(dr(t + 1), n);
836
- lr.value = !0, K.value.start = r, K.value.end = i, q.value.start = r, q.value.end = i, jn(), cr.value = !0;
837
- } finally {
838
- queueMicrotask(() => {
839
- lr.value = !1;
840
- }), sr.value = !1;
841
- }
842
- }
843
- }
844
- function dr(e) {
845
- let t = G.value;
846
- return e > t ? t : e < 0 || e < K.value.start ? F.value.style.zoom.startIndex === null ? 1 : F.value.style.zoom.startIndex + 1 : e;
847
- }
848
- function fr(e = null) {
849
- je(() => {
850
- let t = [
851
- F.value.translations.period,
852
- F.value.translations.open,
853
- F.value.translations.high,
854
- F.value.translations.low,
855
- F.value.translations.close,
856
- F.value.translations.volume
857
- ], n = Z.value.map((e, t) => [
858
- F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? Q.value[t].text : e.period,
859
- e.open.value,
860
- e.high.value,
861
- e.low.value,
862
- e.close.value,
863
- e.volume
864
- ]), i = o([
865
- [F.value.style.title.text],
866
- [F.value.style.title.subtitle.text],
867
- [
868
- [""],
869
- [""],
870
- [""]
871
- ],
872
- t
873
- ].concat(n));
874
- e ? e(i) : r({
875
- csvContent: i,
876
- title: F.value.style.title.text || "vue-ui-candlestick"
877
- });
878
- });
879
- }
880
- let pr = f(() => {
881
- let e = Z.value.map((e, n) => {
882
- let r = F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? Q.value?.[n]?.text ?? "" : e.period, i = t({
883
- p: F.value.table.td.prefix,
884
- v: e.open.value,
885
- s: F.value.table.td.suffix,
886
- r: F.value.table.td.roundingValue
887
- }), a = t({
888
- p: F.value.table.td.prefix,
889
- v: e.high.value,
890
- s: F.value.table.td.suffix,
891
- r: F.value.table.td.roundingValue
892
- }), o = t({
893
- p: F.value.table.td.prefix,
894
- v: e.low.value,
895
- s: F.value.table.td.suffix,
896
- r: F.value.table.td.roundingValue
897
- }), s = t({
898
- p: F.value.table.td.prefix,
899
- v: e.close.value,
900
- s: F.value.table.td.suffix,
901
- r: F.value.table.td.roundingValue
902
- });
903
- return [
904
- `<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="${F.value.style.layout.candle.borderRadius * 3}" fill="${F.value.style.layout.candle.gradient.show ? e.isBullish ? `url(#bullish_gradient_${j.value}` : `url(#bearish_gradient_${j.value})` : e.isBullish ? F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.colors.bearish}"/></svg> ${r}`,
905
- i,
906
- a,
907
- o,
908
- s,
909
- `${isNaN(e.volume) ? "-" : e.volume.toLocaleString()}`
910
- ];
911
- }), n = Z.value.map((e, n) => [
912
- F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? Q.value?.[n]?.text ?? "" : e.period,
913
- t({
914
- p: F.value.table.td.prefix,
915
- v: e.open.value,
916
- s: F.value.table.td.suffix,
917
- r: F.value.table.td.roundingValue
918
- }),
919
- t({
920
- p: F.value.table.td.prefix,
921
- v: e.high.value,
922
- s: F.value.table.td.suffix,
923
- r: F.value.table.td.roundingValue
924
- }),
925
- t({
926
- p: F.value.table.td.prefix,
927
- v: e.low.value,
928
- s: F.value.table.td.suffix,
929
- r: F.value.table.td.roundingValue
930
- }),
931
- t({
932
- p: F.value.table.td.prefix,
933
- v: e.close.value,
934
- s: F.value.table.td.suffix,
935
- r: F.value.table.td.roundingValue
936
- }),
937
- `${isNaN(e.volume) ? "-" : e.volume}`
938
- ]), r = {
939
- th: {
940
- backgroundColor: F.value.table.th.backgroundColor,
941
- color: F.value.table.th.color,
942
- outline: F.value.table.th.outline
943
- },
944
- td: {
945
- backgroundColor: F.value.table.td.backgroundColor,
946
- color: F.value.table.td.color,
947
- outline: F.value.table.td.outline
948
- },
949
- breakpoint: F.value.table.responsiveBreakpoint
950
- }, i = [
951
- F.value.translations.period,
952
- F.value.translations.open,
953
- F.value.translations.high,
954
- F.value.translations.low,
955
- F.value.translations.last,
956
- F.value.translations.volume
957
- ];
958
- return {
959
- head: i,
960
- body: e,
961
- bodyA11y: n,
962
- config: r,
963
- colNames: i
964
- };
965
- }), $ = C(!1);
966
- function mr(e) {
967
- $.value = e, Ut.value += 1;
968
- }
969
- function hr() {
970
- U.value.showTable = !U.value.showTable;
971
- }
972
- function gr() {
973
- U.value.showTooltip = !U.value.showTooltip;
974
- }
975
- let _r = C(!1);
976
- function vr() {
977
- _r.value = !_r.value;
978
- }
979
- async function yr({ scale: e = 2 } = {}) {
980
- if (!N.value) return;
981
- let { width: t, height: n } = N.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await _e({
982
- domElement: N.value,
983
- base64: !0,
984
- img: !0,
985
- scale: e
986
- });
987
- return {
988
- imageUri: i,
989
- base64: a,
990
- title: F.value.style.title.text,
991
- width: t,
992
- height: n,
993
- aspectRatio: r
994
- };
995
- }
996
- let br = f(() => z.value.width), xr = f(() => z.value.height);
997
- ge({
998
- timeLabelsEls: $t,
999
- timeLabels: Q,
1000
- slicer: K,
1001
- configRef: F,
1002
- rotationPath: [
1003
- "style",
1004
- "layout",
1005
- "grid",
1006
- "xAxis",
1007
- "dataLabels",
1008
- "rotation"
1009
- ],
1010
- autoRotatePath: [
1011
- "style",
1012
- "layout",
1013
- "grid",
1014
- "xAxis",
1015
- "dataLabels",
1016
- "autoRotate",
1017
- "enable"
1018
- ],
1019
- isAutoSize: !1,
1020
- rotation: F.value.style.layout.grid.xAxis.dataLabels.autoRotate.angle,
1021
- width: br,
1022
- height: xr
1023
- }), Le(F, () => {
1024
- U.value = {
1025
- showTable: F.value.table.show,
1026
- showTooltip: F.value.style.tooltip.show
1027
- };
1028
- }, { immediate: !0 });
1029
- let Sr = f(() => {
1030
- let e = F.value.table.useDialog && !F.value.table.show, t = U.value.showTable;
1031
- return {
1032
- component: e ? Pt : kt,
1033
- title: `${F.value.style.title.text}${F.value.style.title.subtitle.text ? `: ${F.value.style.title.subtitle.text}` : ""}`,
1034
- props: e ? {
1035
- backgroundColor: F.value.table.th.backgroundColor,
1036
- color: F.value.table.th.color,
1037
- headerColor: F.value.table.th.color,
1038
- headerBg: F.value.table.th.backgroundColor,
1039
- isFullscreen: $.value,
1040
- fullscreenParent: N.value,
1041
- forcedWidth: Math.min(800, window.innerWidth * .8),
1042
- isCursorPointer: ln.value
1043
- } : {
1044
- hideDetails: !0,
1045
- config: {
1046
- open: t,
1047
- maxHeight: 1e4,
1048
- body: {
1049
- backgroundColor: F.value.style.backgroundColor,
1050
- color: F.value.style.color
1051
- },
1052
- head: {
1053
- backgroundColor: F.value.style.backgroundColor,
1054
- color: F.value.style.color
1055
- }
1056
- }
1057
- }
1058
- };
1059
- });
1060
- Le(() => U.value.showTable, (e) => {
1061
- F.value.table.show || (e && F.value.table.useDialog && en.value ? en.value.open() : "close" in en.value && en.value.close());
1062
- });
1063
- function Cr() {
1064
- U.value.showTable = !1, tn.value && tn.value.setTableIconState(!1);
1065
- }
1066
- let wr = f(() => F.value.style.backgroundColor), { exportSvg: Tr, getSvg: Er } = pe({
1067
- svg: R,
1068
- title: f(() => F.value.style.title),
1069
- backgroundColor: wr
1070
- });
1071
- async function Dr({ isCb: e }) {
1072
- an.value = !0, await je();
1073
- try {
1074
- if (e) {
1075
- let { blob: e, url: t, text: n, dataUrl: r } = await Er();
1076
- await Promise.resolve(F.value.userOptions.callbacks.svg({
1077
- blob: e,
1078
- url: t,
1079
- text: n,
1080
- dataUrl: r
1081
- }));
1082
- } else await Promise.resolve(Tr());
1083
- } finally {
1084
- an.value = !1;
1085
- }
1086
- }
1087
- function Or(e) {
1088
- nn.value = e;
1089
- }
1090
- function kr(e) {
1091
- sr.value || lr.value || e !== K.value.start && (K.value.start = e, q.value.start = e, jn());
1092
- }
1093
- function Ar(e) {
1094
- if (sr.value || lr.value) return;
1095
- let t = dr(e);
1096
- t !== K.value.end && (K.value.end = t, q.value.end = t, jn());
1097
- }
1098
- function jr({ seriesIndex: e, datapoint: t }) {
1099
- Rt("selectX", {
1100
- dataset: t,
1101
- index: K.value.start + e,
1102
- indexLabel: ""
1103
- });
1104
- }
1105
- function Mr(e) {
1106
- if (e?.stage === "start") {
1107
- rn.value = !0;
1108
- return;
1109
- }
1110
- if (e?.stage === "end") {
1111
- rn.value = !1;
1112
- return;
1113
- }
1114
- Sn();
1115
- }
1116
- async function Nr() {
1117
- if (Rt("copyAlt", {
1118
- config: F.value,
1119
- dataset: Z.value
1120
- }), !F.value.userOptions.callbacks.altCopy) {
1121
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
1122
- return;
1123
- }
1124
- await Promise.resolve(F.value.userOptions.callbacks.altCopy({
1125
- config: F.value,
1126
- dataset: Z.value
1127
- }));
1128
- }
1129
- function Pr() {
1130
- P.value = null, cn.value = !0;
1131
- }
1132
- function Fr() {
1133
- P.value = null, sn.value = "pointer", Vt.value = !1, M.value = void 0, cn.value = !1;
1134
- }
1135
- function Ir(e) {
1136
- if (!R.value || _r.value || document.activeElement !== R.value || !Z.value.length) return;
1137
- let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
1138
- if (!t && !n && !r && !i) return;
1139
- if (e.preventDefault(), e.stopPropagation(), i) {
1140
- P.value = null, sn.value = "pointer", Vt.value = !1, M.value = void 0;
1141
- return;
1142
- }
1143
- if (r) {
1144
- if (P.value === null) return;
1145
- let e = Z.value[P.value];
1146
- if (!e) return;
1147
- tr(P.value, e);
1148
- return;
1149
- }
1150
- let a = P.value, o = M.value, s = a !== null && a >= 0 && a < Z.value.length, c = o != null && o >= 0 && o < Z.value.length;
1151
- s ? n ? (a += 1, a >= Z.value.length && (a = 0)) : t && (--a, a < 0 && (a = Z.value.length - 1)) : c ? (a = n ? o + 1 : o - 1, a >= Z.value.length && (a = 0), a < 0 && (a = Z.value.length - 1)) : a = n ? 0 : Z.value.length - 1;
1152
- let l = Z.value[a];
1153
- l && (Lr(a), rr(a, l, "keyboard"));
1154
- }
1155
- function Lr(e) {
1156
- if (!Number.isFinite(e) || !R.value) return;
1157
- let t = W.value.left + Y.value * e + Y.value / 2, n = W.value.top + W.value.height / 2, r = R.value.getBoundingClientRect();
1158
- on.value = {
1159
- x: r.left + t / z.value.width * r.width,
1160
- y: r.top + n / z.value.height * r.height
1161
- };
1162
- }
1163
- let Rr = f(() => ({
1164
- headers: pr.value?.colNames ?? [],
1165
- rows: pr.value?.bodyA11y ?? []
1166
- }));
1167
- return ye({
1168
- getImage: yr,
1169
- generatePdf: xn,
1170
- generateCsv: fr,
1171
- generateImage: Sn,
1172
- generateSvg: Dr,
1173
- toggleTable: hr,
1174
- toggleTooltip: gr,
1175
- toggleAnnotator: vr,
1176
- toggleFullscreen: mr,
1177
- copyAlt: Nr
1178
- }), (e, n) => (S(), h("div", {
1179
- ref_key: "candlestickChart",
1180
- ref: N,
1181
- class: y(`vue-data-ui-component vue-ui-candlestick ${$.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${F.value.useCssAnimation ? "" : "vue-ui-dna"}`),
1182
- style: x(`position:relative;font-family:${F.value.style.fontFamily}; text-align:center;background:${F.value.style.backgroundColor}; ${F.value.responsive ? "height: 100%" : ""}`),
1183
- id: `vue-ui-candlestick_${j.value}`,
1184
- onMouseenter: hn,
1185
- onMouseleave: gn
1186
- }, [
1187
- g("div", {
1188
- id: `chart-instructions-${j.value}`,
1189
- class: "sr-only"
1190
- }, [g("p", null, E(F.value.a11y.translations.keyboardNavigation), 1)], 8, Ve),
1191
- Rr.value?.rows?.length ? (S(), p(Ce, {
1192
- key: 0,
1193
- uid: j.value,
1194
- head: Rr.value.headers,
1195
- body: Rr.value.rows,
1196
- notice: F.value.a11y.translations.tableAvailable,
1197
- caption: F.value.a11y.translations.tableCaption
1198
- }, null, 8, [
1199
- "uid",
1200
- "head",
1201
- "body",
1202
- "notice",
1203
- "caption"
1204
- ])) : m("", !0),
1205
- F.value.userOptions.buttons.annotator ? (S(), p(D(jt), {
1206
- key: 1,
1207
- svgRef: D(R),
1208
- backgroundColor: F.value.style.backgroundColor,
1209
- color: F.value.style.color,
1210
- active: _r.value,
1211
- isCursorPointer: ln.value,
1212
- onClose: vr
1213
- }, {
1214
- "annotator-action-close": O(() => [T(e.$slots, "annotator-action-close", {}, void 0, !0)]),
1215
- "annotator-action-color": O(({ color: t }) => [T(e.$slots, "annotator-action-color", b(v({ color: t })), void 0, !0)]),
1216
- "annotator-action-draw": O(({ mode: t }) => [T(e.$slots, "annotator-action-draw", b(v({ mode: t })), void 0, !0)]),
1217
- "annotator-action-undo": O(({ disabled: t }) => [T(e.$slots, "annotator-action-undo", b(v({ disabled: t })), void 0, !0)]),
1218
- "annotator-action-redo": O(({ disabled: t }) => [T(e.$slots, "annotator-action-redo", b(v({ disabled: t })), void 0, !0)]),
1219
- "annotator-action-delete": O(({ disabled: t }) => [T(e.$slots, "annotator-action-delete", b(v({ disabled: t })), void 0, !0)]),
1220
- _: 3
1221
- }, 8, [
1222
- "svgRef",
1223
- "backgroundColor",
1224
- "color",
1225
- "active",
1226
- "isCursorPointer"
1227
- ])) : m("", !0),
1228
- Cn.value ? (S(), h("div", {
1229
- key: 2,
1230
- ref_key: "noTitle",
1231
- ref: Jt,
1232
- class: "vue-data-ui-no-title-space",
1233
- style: "height:36px; width: 100%;background:transparent"
1234
- }, null, 512)) : m("", !0),
1235
- F.value.style.title.text ? (S(), h("div", {
1236
- key: 3,
1237
- ref_key: "chartTitle",
1238
- ref: Wt,
1239
- style: "width:100%;background:transparent"
1240
- }, [(S(), p(ve, {
1241
- key: `title_${Zt.value}`,
1242
- config: {
1243
- title: {
1244
- cy: "candlestick-div-title",
1245
- ...F.value.style.title
1246
- },
1247
- subtitle: {
1248
- cy: "candlestick-div-subtitle",
1249
- ...F.value.style.title.subtitle
1250
- }
1251
- }
1252
- }, null, 8, ["config"]))], 512)) : m("", !0),
1253
- F.value.userOptions.show && zt.value && (D(mn) || D(fn)) ? (S(), p(D(Mt), {
1254
- ref_key: "userOptionsRef",
1255
- ref: tn,
1256
- key: `user_options_${Ut.value}`,
1257
- backgroundColor: F.value.style.backgroundColor,
1258
- color: F.value.style.color,
1259
- isImaging: D(bn),
1260
- isPrinting: D(yn),
1261
- uid: j.value,
1262
- hasTooltip: F.value.userOptions.buttons.tooltip && F.value.style.tooltip.show,
1263
- hasPdf: F.value.userOptions.buttons.pdf,
1264
- hasImg: F.value.userOptions.buttons.img,
1265
- hasSvg: F.value.userOptions.buttons.svg,
1266
- hasXls: F.value.userOptions.buttons.csv,
1267
- hasTable: F.value.userOptions.buttons.table,
1268
- hasFullscreen: F.value.userOptions.buttons.fullscreen,
1269
- hasAltCopy: F.value.userOptions.buttons.altCopy,
1270
- isFullscreen: $.value,
1271
- isTooltip: U.value.showTooltip,
1272
- titles: { ...F.value.userOptions.buttonTitles },
1273
- chartElement: N.value,
1274
- position: F.value.userOptions.position,
1275
- hasAnnotator: F.value.userOptions.buttons.annotator,
1276
- isAnnotation: _r.value,
1277
- callbacks: F.value.userOptions.callbacks,
1278
- printScale: F.value.userOptions.print.scale,
1279
- tableDialog: F.value.table.useDialog,
1280
- isCursorPointer: ln.value,
1281
- onToggleFullscreen: mr,
1282
- onGeneratePdf: D(xn),
1283
- onGenerateCsv: fr,
1284
- onGenerateImage: Mr,
1285
- onGenerateSvg: Dr,
1286
- onToggleTable: hr,
1287
- onToggleTooltip: gr,
1288
- onToggleAnnotator: vr,
1289
- onCopyAlt: Nr,
1290
- style: x({ visibility: D(mn) ? D(fn) ? "visible" : "hidden" : "visible" })
1291
- }, De({ _: 2 }, [
1292
- e.$slots.menuIcon ? {
1293
- name: "menuIcon",
1294
- fn: O(({ isOpen: t, color: n }) => [T(e.$slots, "menuIcon", b(v({
1295
- isOpen: t,
1296
- color: n
1297
- })), void 0, !0)]),
1298
- key: "0"
1299
- } : void 0,
1300
- e.$slots.optionTooltip ? {
1301
- name: "optionTooltip",
1302
- fn: O(() => [T(e.$slots, "optionTooltip", {}, void 0, !0)]),
1303
- key: "1"
1304
- } : void 0,
1305
- e.$slots.optionPdf ? {
1306
- name: "optionPdf",
1307
- fn: O(() => [T(e.$slots, "optionPdf", {}, void 0, !0)]),
1308
- key: "2"
1309
- } : void 0,
1310
- e.$slots.optionCsv ? {
1311
- name: "optionCsv",
1312
- fn: O(() => [T(e.$slots, "optionCsv", {}, void 0, !0)]),
1313
- key: "3"
1314
- } : void 0,
1315
- e.$slots.optionImg ? {
1316
- name: "optionImg",
1317
- fn: O(() => [T(e.$slots, "optionImg", {}, void 0, !0)]),
1318
- key: "4"
1319
- } : void 0,
1320
- e.$slots.optionSvg ? {
1321
- name: "optionSvg",
1322
- fn: O(() => [T(e.$slots, "optionSvg", {}, void 0, !0)]),
1323
- key: "5"
1324
- } : void 0,
1325
- e.$slots.optionTable ? {
1326
- name: "optionTable",
1327
- fn: O(() => [T(e.$slots, "optionTable", {}, void 0, !0)]),
1328
- key: "6"
1329
- } : void 0,
1330
- e.$slots.optionFullscreen ? {
1331
- name: "optionFullscreen",
1332
- fn: O(({ toggleFullscreen: t, isFullscreen: n }) => [T(e.$slots, "optionFullscreen", b(v({
1333
- toggleFullscreen: t,
1334
- isFullscreen: n
1335
- })), void 0, !0)]),
1336
- key: "7"
1337
- } : void 0,
1338
- e.$slots.optionAnnotator ? {
1339
- name: "optionAnnotator",
1340
- fn: O(({ toggleAnnotator: t, isAnnotator: n }) => [T(e.$slots, "optionAnnotator", b(v({
1341
- toggleAnnotator: t,
1342
- isAnnotator: n
1343
- })), void 0, !0)]),
1344
- key: "8"
1345
- } : void 0,
1346
- e.$slots.optionAltCopy ? {
1347
- name: "optionAltCopy",
1348
- fn: O(({ altCopy: t }) => [T(e.$slots, "optionAltCopy", b(v({ altCopy: t })), void 0, !0)]),
1349
- key: "9"
1350
- } : void 0,
1351
- e.$slots["custom-menu-before"] ? {
1352
- name: "custom-menu-before",
1353
- fn: O(() => [T(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1354
- key: "10"
1355
- } : void 0,
1356
- e.$slots["custom-menu-after"] ? {
1357
- name: "custom-menu-after",
1358
- fn: O(() => [T(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1359
- key: "11"
1360
- } : void 0
1361
- ]), 1032, /* @__PURE__ */ "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".split("."))) : m("", !0),
1362
- g("div", He, [(S(), h("svg", {
1363
- ref_key: "svgRef",
1364
- ref: R,
1365
- xmlns: D(ie),
1366
- "aria-describedby": `chart-instructions-${j.value}`,
1367
- class: y({
1368
- "vue-data-ui-fullscreen--on": $.value,
1369
- "vue-data-ui-fulscreen--off": !$.value
1370
- }),
1371
- viewBox: `0 0 ${z.value.width <= 0 ? 10 : z.value.width} ${z.value.height <= 0 ? 10 : z.value.height}`,
1372
- style: x(`max-width:100%;overflow:visible;background:transparent;color:${F.value.style.color}`),
1373
- tabindex: "0",
1374
- onFocus: Pr,
1375
- onBlur: Fr,
1376
- onKeydown: Ir
1377
- }, [
1378
- ke(D(Nt)),
1379
- e.$slots["chart-background"] ? (S(), h("foreignObject", {
1380
- key: 0,
1381
- x: W.value.left,
1382
- y: W.value.top,
1383
- width: Math.max(.1, W.value.width),
1384
- height: Math.max(.1, W.value.height),
1385
- style: { pointerEvents: "none" }
1386
- }, [T(e.$slots, "chart-background", {}, void 0, !0)], 8, We)) : m("", !0),
1387
- Z.value.length > 0 ? (S(), h("g", Ge, [
1388
- g("defs", null, [g("linearGradient", {
1389
- id: `bearish_gradient_${j.value}`,
1390
- x2: "0%",
1391
- y2: "100%"
1392
- }, [
1393
- g("stop", {
1394
- offset: "0%",
1395
- "stop-color": F.value.style.layout.candle.colors.bearish
1396
- }, null, 8, qe),
1397
- g("stop", {
1398
- offset: "50%",
1399
- "stop-color": `${D(i)(F.value.style.layout.candle.colors.bearish, .02)}DE`
1400
- }, null, 8, Je),
1401
- g("stop", {
1402
- offset: "100%",
1403
- "stop-color": `${D(i)(F.value.style.layout.candle.colors.bearish, .05)}66`
1404
- }, null, 8, Ye)
1405
- ], 8, Ke), g("linearGradient", {
1406
- id: `bullish_gradient_${j.value}`,
1407
- x2: "0%",
1408
- y2: "100%"
1409
- }, [
1410
- g("stop", {
1411
- offset: "0%",
1412
- "stop-color": F.value.style.layout.candle.colors.bullish
1413
- }, null, 8, Ze),
1414
- g("stop", {
1415
- offset: "50%",
1416
- "stop-color": `${D(i)(F.value.style.layout.candle.colors.bullish, .02)}DE`
1417
- }, null, 8, Qe),
1418
- g("stop", {
1419
- offset: "100%",
1420
- "stop-color": `${D(i)(F.value.style.layout.candle.colors.bullish, .05)}66`
1421
- }, null, 8, $e)
1422
- ], 8, Xe)]),
1423
- F.value.style.layout.grid.show ? (S(), h("g", et, [
1424
- g("line", {
1425
- x1: W.value.left,
1426
- x2: W.value.left,
1427
- y1: W.value.top,
1428
- y2: W.value.bottom,
1429
- stroke: F.value.style.layout.grid.stroke,
1430
- "stroke-width": F.value.style.layout.grid.strokeWidth,
1431
- "stroke-linecap": "round"
1432
- }, null, 8, tt),
1433
- g("line", {
1434
- x1: W.value.left,
1435
- x2: W.value.right,
1436
- y1: W.value.bottom,
1437
- y2: W.value.bottom,
1438
- stroke: F.value.style.layout.grid.stroke,
1439
- "stroke-width": F.value.style.layout.grid.strokeWidth,
1440
- "stroke-linecap": "round"
1441
- }, null, 8, nt),
1442
- F.value.style.layout.grid.horizontalLines.show ? (S(!0), h(d, { key: 0 }, w(Vn.value, (e) => (S(), h("line", {
1443
- x1: W.value.left,
1444
- x2: W.value.right,
1445
- y1: e.y,
1446
- y2: e.y,
1447
- stroke: F.value.style.layout.grid.horizontalLines.stroke,
1448
- "stroke-width": F.value.style.layout.grid.horizontalLines.strokeWidth,
1449
- "stroke-dasharray": F.value.style.layout.grid.horizontalLines.strokeDasharray,
1450
- "stroke-linecap": "round"
1451
- }, null, 8, rt))), 256)) : m("", !0),
1452
- F.value.style.layout.grid.verticalLines.show ? (S(!0), h(d, { key: 1 }, w(Qn.value, (e, t) => (S(), h("g", null, [e.text ? (S(), h("line", {
1453
- key: 0,
1454
- x1: W.value.left + Y.value * t + Y.value / 2,
1455
- x2: W.value.left + Y.value * t + Y.value / 2,
1456
- y1: W.value.top,
1457
- y2: W.value.bottom,
1458
- stroke: F.value.style.layout.grid.verticalLines.stroke,
1459
- "stroke-width": F.value.style.layout.grid.verticalLines.strokeWidth,
1460
- "stroke-dasharray": F.value.style.layout.grid.verticalLines.strokeDasharray,
1461
- "stroke-linecap": "round"
1462
- }, null, 8, it)) : m("", !0)]))), 256)) : m("", !0),
1463
- F.value.style.layout.grid.xAxis.ticks.show ? (S(!0), h(d, { key: 2 }, w(Qn.value, (e, t) => (S(), h("g", null, [e.text ? (S(), h("line", {
1464
- key: 0,
1465
- x1: W.value.left + Y.value * t + Y.value / 2,
1466
- x2: W.value.left + Y.value * t + Y.value / 2,
1467
- y1: W.value.bottom,
1468
- y2: W.value.bottom + 3,
1469
- stroke: F.value.style.layout.grid.stroke,
1470
- "stroke-width": F.value.style.layout.grid.strokeWidth,
1471
- "stroke-linecap": "round"
1472
- }, null, 8, at)) : m("", !0)]))), 256)) : m("", !0)
1473
- ])) : m("", !0),
1474
- F.value.style.layout.grid.yAxis.dataLabels.show ? (S(), h("g", {
1475
- key: 1,
1476
- ref_key: "scaleLabels",
1477
- ref: Qt
1478
- }, [(S(!0), h(d, null, w(Vn.value, (e, n) => (S(), h("g", null, [e.value >= X.value.min && e.value <= X.value.max ? (S(), h("line", {
1479
- key: 0,
1480
- x1: W.value.left,
1481
- x2: W.value.left - 5,
1482
- y1: e.y,
1483
- y2: e.y,
1484
- stroke: F.value.style.layout.grid.stroke,
1485
- "stroke-width": F.value.style.layout.grid.strokeWidth,
1486
- "stroke-linecap": "round"
1487
- }, null, 8, ot)) : m("", !0), e.value >= X.value.min && e.value <= X.value.max ? (S(), h("text", {
1488
- key: 1,
1489
- x: W.value.left - 8 + F.value.style.layout.grid.yAxis.dataLabels.offsetX,
1490
- y: e.y + z.value.yAxisFontSize / 3,
1491
- "font-size": z.value.yAxisFontSize,
1492
- "text-anchor": "end",
1493
- fill: F.value.style.layout.grid.yAxis.dataLabels.color,
1494
- "font-weight": F.value.style.layout.grid.yAxis.dataLabels.bold ? "bold" : "normal"
1495
- }, E(D(t)({
1496
- p: F.value.style.layout.grid.yAxis.dataLabels.prefix,
1497
- v: e.value,
1498
- s: F.value.style.layout.grid.yAxis.dataLabels.suffix,
1499
- r: F.value.style.layout.grid.yAxis.dataLabels.roundingValue
1500
- })), 9, st)) : m("", !0)]))), 256))], 512)) : m("", !0),
1501
- F.value.style.layout.grid.xAxis.dataLabels.show && !F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? (S(), h("g", {
1502
- key: 2,
1503
- ref_key: "timeLabelsEls",
1504
- ref: $t
1505
- }, [(S(!0), h(d, null, w(Hn.value, (e, t) => (S(), h("g", null, [g("text", {
1506
- class: "vue-data-ui-time-label",
1507
- transform: `translate(${W.value.left + Y.value * t + Y.value / 2}, ${W.value.bottom + z.value.xAxisFontSize * 1.5}), rotate(${F.value.style.layout.grid.xAxis.dataLabels.rotation})`,
1508
- "text-anchor": F.value.style.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : F.value.style.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
1509
- "font-size": z.value.xAxisFontSize,
1510
- fill: F.value.style.layout.grid.xAxis.dataLabels.color,
1511
- "font-weight": F.value.style.layout.grid.xAxis.dataLabels.bold ? "bold" : "normal"
1512
- }, E(e), 9, ct)]))), 256))], 512)) : m("", !0),
1513
- F.value.style.layout.grid.xAxis.dataLabels.show && F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable ? (S(), h("g", {
1514
- key: 3,
1515
- ref_key: "timeLabelsEls",
1516
- ref: $t
1517
- }, [(S(!0), h(d, null, w(Qn.value, (e, t) => (S(), h("g", null, [g("text", {
1518
- class: "vue-data-ui-time-label",
1519
- transform: `translate(${W.value.left + Y.value * t + Y.value / 2}, ${W.value.bottom + z.value.xAxisFontSize * 1.5}), rotate(${F.value.style.layout.grid.xAxis.dataLabels.rotation})`,
1520
- "text-anchor": F.value.style.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : F.value.style.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
1521
- "font-size": z.value.xAxisFontSize,
1522
- fill: F.value.style.layout.grid.xAxis.dataLabels.color,
1523
- "font-weight": F.value.style.layout.grid.xAxis.dataLabels.bold ? "bold" : "normal"
1524
- }, E(e?.text ?? ""), 9, lt)]))), 256))], 512)) : m("", !0),
1525
- F.value.type === "candlestick" ? (S(), h(d, { key: 4 }, [g("g", null, [(S(!0), h(d, null, w(Z.value, (e, t) => (S(), h("g", null, [
1526
- g("rect", {
1527
- x: e.open.x - F.value.style.layout.wick.strokeWidth / 2,
1528
- y: e.high.y,
1529
- width: F.value.style.layout.wick.strokeWidth,
1530
- height: Math.abs(e.high.y - e.low.y),
1531
- fill: F.value.style.layout.wick.stroke,
1532
- stroke: "none",
1533
- rx: F.value.style.layout.wick.strokeWidth / 2,
1534
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1535
- }, null, 10, ut),
1536
- F.value.style.layout.wick.extremity.shape === "circle" ? (S(), h("g", dt, [g("circle", {
1537
- cx: e.high.x,
1538
- cy: e.high.y,
1539
- r: F.value.style.layout.wick.extremity.size === "auto" ? Y.value / 20 : F.value.style.layout.wick.extremity.size,
1540
- fill: F.value.style.layout.wick.extremity.color,
1541
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1542
- }, null, 10, ft), g("circle", {
1543
- cx: e.low.x,
1544
- cy: e.low.y,
1545
- r: F.value.style.layout.wick.extremity.size === "auto" ? Y.value / 20 : F.value.style.layout.wick.extremity.size,
1546
- fill: F.value.style.layout.wick.extremity.color,
1547
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1548
- }, null, 10, pt)])) : m("", !0),
1549
- F.value.style.layout.wick.extremity.shape === "line" ? (S(), h("g", mt, [g("rect", {
1550
- x: e.high.x - (F.value.style.layout.wick.extremity.size === "auto" ? Y.value * F.value.style.layout.candle.widthRatio : F.value.style.layout.wick.extremity.size) / 2,
1551
- y: e.high.y - F.value.style.layout.wick.strokeWidth / 2,
1552
- width: Math.abs(e.high.x - (F.value.style.layout.wick.extremity.size === "auto" ? Y.value * F.value.style.layout.candle.widthRatio : F.value.style.layout.wick.extremity.size) / 2 - (e.high.x + (F.value.style.layout.wick.extremity.size === "auto" ? Y.value * F.value.style.layout.candle.widthRatio : F.value.style.layout.wick.extremity.size) / 2)),
1553
- height: F.value.style.layout.wick.strokeWidth,
1554
- rx: F.value.style.layout.wick.strokeWidth / 2,
1555
- fill: F.value.style.layout.wick.extremity.color,
1556
- stroke: "none",
1557
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1558
- }, null, 10, ht), g("rect", {
1559
- x: e.low.x - (F.value.style.layout.wick.extremity.size === "auto" ? Y.value * F.value.style.layout.candle.widthRatio : F.value.style.layout.wick.extremity.size) / 2,
1560
- y: e.low.y - F.value.style.layout.wick.strokeWidth / 2,
1561
- width: Math.abs(e.low.x - (F.value.style.layout.wick.extremity.size === "auto" ? Y.value * F.value.style.layout.candle.widthRatio : F.value.style.layout.wick.extremity.size) / 2 - (e.low.x + (F.value.style.layout.wick.extremity.size === "auto" ? Y.value * F.value.style.layout.candle.widthRatio : F.value.style.layout.wick.extremity.size) / 2)),
1562
- height: F.value.style.layout.wick.strokeWidth,
1563
- fill: F.value.style.layout.wick.extremity.color,
1564
- stroke: "none",
1565
- rx: F.value.style.layout.wick.strokeWidth / 2,
1566
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1567
- }, null, 10, gt)])) : m("", !0)
1568
- ]))), 256))]), g("g", null, [(S(!0), h(d, null, w(Z.value, (e, t) => (S(), h("rect", {
1569
- x: e.open.x - Y.value / 2 + Y.value * (1 - F.value.style.layout.candle.widthRatio) / 2,
1570
- y: e.isBullish ? e.close.y : e.open.y,
1571
- height: Math.abs(e.close.y - e.open.y) <= 0 ? 1e-4 : Math.abs(e.close.y - e.open.y),
1572
- width: Y.value * F.value.style.layout.candle.widthRatio <= 0 ? 1e-4 : Y.value * F.value.style.layout.candle.widthRatio,
1573
- fill: F.value.style.layout.candle.gradient.underlayer,
1574
- rx: F.value.style.layout.candle.borderRadius,
1575
- stroke: "none",
1576
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1577
- }, null, 10, _t))), 256)), (S(!0), h(d, null, w(Z.value, (e, t) => (S(), h("rect", {
1578
- x: e.open.x - Y.value / 2 + Y.value * (1 - F.value.style.layout.candle.widthRatio) / 2,
1579
- y: e.isBullish ? e.close.y : e.open.y,
1580
- height: Math.abs(e.close.y - e.open.y) <= 0 ? 1e-4 : Math.abs(e.close.y - e.open.y),
1581
- width: Y.value * F.value.style.layout.candle.widthRatio <= 0 ? 1e-4 : Y.value * F.value.style.layout.candle.widthRatio,
1582
- fill: e.isBullish ? F.value.style.layout.candle.gradient.show ? `url(#bullish_gradient_${j.value})` : F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.gradient.show ? `url(#bearish_gradient_${j.value})` : F.value.style.layout.candle.colors.bearish,
1583
- rx: F.value.style.layout.candle.borderRadius,
1584
- stroke: F.value.style.layout.candle.stroke,
1585
- "stroke-width": F.value.style.layout.candle.strokeWidth,
1586
- "stroke-linecap": "round",
1587
- "stroke-linejoin": "round",
1588
- class: y({ "vue-data-ui-transition": A.value && !D(I) })
1589
- }, null, 10, vt))), 256))])], 64)) : m("", !0),
1590
- F.value.type === "ohlc" ? (S(!0), h(d, { key: 5 }, w(Z.value, (e, t) => (S(), h("g", null, [g("path", {
1591
- d: `M ${e.high.x},${e.high.y} ${e.low.x},${e.low.y} M${e.open.x - Math.min(6, Y.value / 3)},${e.open.y} ${e.open.x},${e.open.y} M${e.close.x},${e.close.y} ${e.close.x + Math.min(6, Y.value / 3)},${e.close.y}`,
1592
- stroke: e.isBullish ? F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.colors.bearish,
1593
- "stroke-width": 1
1594
- }, null, 8, yt)]))), 256)) : m("", !0),
1595
- g("g", null, [(S(!0), h(d, null, w(Z.value, (e, t) => (S(), h("rect", {
1596
- x: W.value.left + t * Y.value,
1597
- y: W.value.top,
1598
- height: W.value.height <= 0 ? 1e-4 : W.value.height,
1599
- width: Y.value <= 0 ? 1e-4 : Y.value,
1600
- fill: M.value === t || nn.value === t ? D(ee)(F.value.style.layout.selector.color, F.value.style.layout.selector.opacity) : "transparent",
1601
- onMouseover: () => rr(t, e, "pointer"),
1602
- onMouseleave: () => nr(t, e),
1603
- onClick: () => tr(t, e)
1604
- }, null, 40, bt))), 256))])
1605
- ])) : m("", !0),
1606
- kn.value ? (S(), h("rect", Ae({ key: 2 }, On.value, {
1607
- "data-start": K.value.start,
1608
- "data-end": K.value.end
1609
- }), null, 16, xt)) : m("", !0),
1610
- T(e.$slots, "svg", { svg: {
1611
- ...z.value,
1612
- data: Z.value,
1613
- drawingArea: W.value,
1614
- isPrintingImg: D(yn) || D(bn) || rn.value,
1615
- isPrintingSvg: an.value
1616
- } }, void 0, !0)
1617
- ], 46, Ue)), e.$slots.hint ? (S(), h("div", St, [T(e.$slots, "hint", b(v({
1618
- hint: F.value.a11y.translations.keyboardNavigation,
1619
- isVisible: cn.value
1620
- })), void 0, !0)])) : m("", !0)]),
1621
- e.$slots.watermark ? (S(), h("div", Ct, [T(e.$slots, "watermark", b(v({ isPrinting: D(yn) || D(bn) || rn.value || an.value })), void 0, !0)])) : m("", !0),
1622
- F.value.style.zoom.show && G.value > 6 && zt.value && cr.value ? (S(), p(Se, {
1623
- key: 6,
1624
- ref_key: "chartSlicer",
1625
- ref: Kt,
1626
- allMinimaps: zn.value,
1627
- background: F.value.style.zoom.color,
1628
- borderColor: F.value.style.backgroundColor,
1629
- customFormat: F.value.style.zoom.customFormat,
1630
- cutNullValues: !1,
1631
- enableRangeHandles: F.value.style.zoom.enableRangeHandles,
1632
- enableSelectionDrag: F.value.style.zoom.enableSelectionDrag,
1633
- end: K.value.end,
1634
- focusOnDrag: F.value.style.zoom.focusOnDrag,
1635
- focusRangeRatio: F.value.style.zoom.focusRangeRatio,
1636
- fontSize: F.value.style.zoom.fontSize,
1637
- immediate: !F.value.style.zoom.preview.enable,
1638
- inputColor: F.value.style.zoom.color,
1639
- isPreview: kn.value,
1640
- labelLeft: $n.value.start || "",
1641
- labelRight: $n.value.end || "",
1642
- max: G.value,
1643
- min: 0,
1644
- minimap: F.value.style.zoom.minimap.show ? D(L).map((e) => e[2]) : [],
1645
- minimapCompact: F.value.style.zoom.minimap.compact,
1646
- minimapFrameColor: F.value.style.zoom.minimap.frameColor,
1647
- minimapIndicatorColor: F.value.style.zoom.minimap.indicatorColor,
1648
- minimapMerged: !1,
1649
- minimapSelectedColor: F.value.style.zoom.minimap.selectedColor,
1650
- minimapSelectedColorOpacity: F.value.style.zoom.minimap.selectedColorOpacity,
1651
- minimapSelectedIndex: M.value,
1652
- minimapSelectionRadius: 1,
1653
- preciseLabels: Zn.value,
1654
- refreshEndPoint: F.value.style.zoom.endIndex === null ? G.value : F.value.style.zoom.endIndex + 1,
1655
- refreshStartPoint: F.value.style.zoom.startIndex === null ? 0 : F.value.style.zoom.startIndex,
1656
- selectColor: F.value.style.zoom.highlightColor,
1657
- selectedSeries: D(L),
1658
- smoothMinimap: !1,
1659
- start: K.value.start,
1660
- textColor: F.value.style.color,
1661
- timeLabels: Un.value,
1662
- usePreciseLabels: F.value.style.layout.grid.xAxis.dataLabels.datetimeFormatter.enable && !F.value.style.zoom.useDefaultFormat,
1663
- useResetSlot: F.value.style.zoom.useResetSlot,
1664
- valueEnd: K.value.end,
1665
- valueStart: K.value.start,
1666
- verticalHandles: F.value.style.zoom.minimap.verticalHandles,
1667
- minScale: F.value.style.layout.grid.yAxis.scale.min,
1668
- maxScale: F.value.style.layout.grid.yAxis.scale.max,
1669
- maxWidth: F.value.style.zoom.maxWidth,
1670
- additionalMinimapHeight: F.value.style.zoom.minimap.additionalHeight,
1671
- handleType: F.value.style.zoom.minimap.handleType,
1672
- handleIconColor: F.value.style.zoom.minimap.handleIconColor,
1673
- handleBorderWidth: F.value.style.zoom.minimap.handleBorderWidth,
1674
- handleBorderColor: F.value.style.zoom.minimap.handleBorderColor,
1675
- handleFill: F.value.style.zoom.minimap.handleFill,
1676
- handleWidth: F.value.style.zoom.minimap.handleWidth,
1677
- "onUpdate:end": Ar,
1678
- "onUpdate:start": kr,
1679
- onTrapMouse: Or,
1680
- onReset: or,
1681
- onFutureEnd: n[0] ||= (e) => An("end", e),
1682
- onFutureStart: n[1] ||= (e) => An("start", e)
1683
- }, {
1684
- "reset-action": O(({ reset: t }) => [T(e.$slots, "reset-action", b(v({ reset: t })), void 0, !0)]),
1685
- slotMap: O(({ height: e, unitW: t }) => [(S(!0), h(d, null, w(Rn.value({
1686
- minimapH: e,
1687
- unitW: t
1688
- }), (e, n) => (S(), h("g", null, [g("path", {
1689
- d: `M ${e.high.x},${e.high.y} ${e.low.x},${e.low.y}`,
1690
- stroke: e.isBullish ? F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.colors.bearish,
1691
- "stroke-width": 1,
1692
- style: x({ opacity: n >= q.value.start && n <= q.value.end ? 1 : .6 })
1693
- }, null, 12, wt), g("path", {
1694
- d: `M ${e.open.x},${e.open.y} ${e.close.x},${e.close.y}`,
1695
- stroke: e.isBullish ? F.value.style.layout.candle.colors.bullish : F.value.style.layout.candle.colors.bearish,
1696
- "stroke-width": Math.min(6, t / 1.5),
1697
- style: x({ opacity: n >= q.value.start && n <= q.value.end ? 1 : .6 })
1698
- }, null, 12, Tt)]))), 256))]),
1699
- _: 3
1700
- }, 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.useResetSlot.valueEnd.valueStart.verticalHandles.minScale.maxScale.maxWidth.additionalMinimapHeight.handleType.handleIconColor.handleBorderWidth.handleBorderColor.handleFill.handleWidth".split("."))) : m("", !0),
1701
- g("div", {
1702
- ref_key: "chartLegend",
1703
- ref: Gt
1704
- }, [T(e.$slots, "legend", { legend: Z.value }, void 0, !0)], 512),
1705
- e.$slots.source ? (S(), h("div", {
1706
- key: 7,
1707
- ref_key: "source",
1708
- ref: qt,
1709
- dir: "auto"
1710
- }, [T(e.$slots, "source", {}, void 0, !0)], 512)) : m("", !0),
1711
- ke(D(Ot), {
1712
- teleportTo: F.value.style.tooltip.teleportTo,
1713
- show: U.value.showTooltip && Vt.value,
1714
- backgroundColor: F.value.style.tooltip.backgroundColor,
1715
- color: F.value.style.tooltip.color,
1716
- borderRadius: F.value.style.tooltip.borderRadius,
1717
- borderColor: F.value.style.tooltip.borderColor,
1718
- borderWidth: F.value.style.tooltip.borderWidth,
1719
- fontSize: F.value.style.tooltip.fontSize,
1720
- backgroundOpacity: F.value.style.tooltip.backgroundOpacity,
1721
- position: F.value.style.tooltip.position,
1722
- offsetX: F.value.style.tooltip.offsetX,
1723
- offsetY: F.value.style.tooltip.offsetY,
1724
- parent: N.value,
1725
- content: Ht.value,
1726
- isFullscreen: $.value,
1727
- isCustom: F.value.style.tooltip.customFormat && typeof F.value.style.tooltip.customFormat == "function",
1728
- smooth: F.value.style.tooltip.smooth,
1729
- backdropFilter: F.value.style.tooltip.backdropFilter,
1730
- smoothForce: F.value.style.tooltip.smoothForce,
1731
- smoothSnapThreshold: F.value.style.tooltip.smoothSnapThreshold,
1732
- isA11yMode: sn.value === "keyboard",
1733
- a11yPosition: on.value
1734
- }, {
1735
- "tooltip-before": O(() => [T(e.$slots, "tooltip-before", b(v({ ...er.value })), void 0, !0)]),
1736
- tooltip: O(() => [T(e.$slots, "tooltip", b(v({ ...er.value })), void 0, !0)]),
1737
- "tooltip-after": O(() => [T(e.$slots, "tooltip-after", b(v({ ...er.value })), void 0, !0)]),
1738
- _: 3
1739
- }, 8, [
1740
- "teleportTo",
1741
- "show",
1742
- "backgroundColor",
1743
- "color",
1744
- "borderRadius",
1745
- "borderColor",
1746
- "borderWidth",
1747
- "fontSize",
1748
- "backgroundOpacity",
1749
- "position",
1750
- "offsetX",
1751
- "offsetY",
1752
- "parent",
1753
- "content",
1754
- "isFullscreen",
1755
- "isCustom",
1756
- "smooth",
1757
- "backdropFilter",
1758
- "smoothForce",
1759
- "smoothSnapThreshold",
1760
- "isA11yMode",
1761
- "a11yPosition"
1762
- ]),
1763
- zt.value && F.value.userOptions.buttons.table ? (S(), p(Pe(Sr.value.component), Ae({ key: 8 }, Sr.value.props, {
1764
- ref_key: "tableUnit",
1765
- ref: en,
1766
- onClose: Cr
1767
- }), De({
1768
- content: O(() => [(S(), p(D(At), {
1769
- key: `table_${Xt.value}`,
1770
- colNames: pr.value.colNames,
1771
- head: pr.value.head,
1772
- body: pr.value.body,
1773
- config: pr.value.config,
1774
- title: F.value.table.useDialog ? "" : Sr.value.title,
1775
- withCloseButton: !F.value.table.useDialog,
1776
- isCursorPointer: ln.value,
1777
- onClose: Cr
1778
- }, {
1779
- th: O(({ th: e }) => [Oe(E(e), 1)]),
1780
- td: O(({ td: e }) => [g("div", { innerHTML: e }, null, 8, Et)]),
1781
- _: 1
1782
- }, 8, [
1783
- "colNames",
1784
- "head",
1785
- "body",
1786
- "config",
1787
- "title",
1788
- "withCloseButton",
1789
- "isCursorPointer"
1790
- ]))]),
1791
- _: 2
1792
- }, [F.value.table.useDialog ? {
1793
- name: "title",
1794
- fn: O(() => [Oe(E(Sr.value.title), 1)]),
1795
- key: "0"
1796
- } : void 0, F.value.table.useDialog ? {
1797
- name: "actions",
1798
- fn: O(() => [g("button", {
1799
- tabindex: "0",
1800
- class: "vue-ui-user-options-button",
1801
- onClick: n[2] ||= (e) => fr(F.value.userOptions.callbacks.csv),
1802
- style: x({ cursor: ln.value ? "pointer" : "default" })
1803
- }, [ke(D(Dt), {
1804
- name: "fileCsv",
1805
- stroke: Sr.value.props.color
1806
- }, null, 8, ["stroke"])], 4)]),
1807
- key: "1"
1808
- } : void 0]), 1040)) : m("", !0),
1809
- T(e.$slots, "skeleton", {}, () => [D(I) ? (S(), p(fe, { key: 0 })) : m("", !0)], !0)
1810
- ], 46, Be));
1811
- }
1812
- }, [["__scopeId", "data-v-89b901f6"]]);
1813
- //#endregion
1814
- export { ze as n, Dt as t };