@wick-charts/vue 0.6.3 → 0.7.0

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 (67) hide show
  1. package/README.md +6 -6
  2. package/dist/BandSeries.vue.js +52 -0
  3. package/dist/BandSeries.vue2.js +4 -0
  4. package/dist/BarSeries.vue.js +15 -13
  5. package/dist/CandlestickSeries.vue.js +31 -29
  6. package/dist/ChartContainer.vue.js +75 -68
  7. package/dist/LineSeries.vue.js +19 -17
  8. package/dist/composables.js +46 -36
  9. package/dist/core/dist/animation/config.js +92 -75
  10. package/dist/core/dist/animation/viewport-engine.js +155 -96
  11. package/dist/core/dist/axis/dom-labels.js +56 -51
  12. package/dist/core/dist/chart/badge-animator.js +30 -22
  13. package/dist/core/dist/chart/edge-indicators.js +22 -21
  14. package/dist/core/dist/chart/last-value.js +33 -26
  15. package/dist/core/dist/chart/scale-guards.js +23 -5
  16. package/dist/core/dist/chart/x-guards.js +37 -0
  17. package/dist/core/dist/chart.js +1286 -842
  18. package/dist/core/dist/data/decimation.js +58 -39
  19. package/dist/core/dist/data/sync.js +37 -31
  20. package/dist/core/dist/navigator/controller.js +41 -41
  21. package/dist/core/dist/perf/perf-hud.js +3 -3
  22. package/dist/core/dist/scales/tick-tracker.js +2 -2
  23. package/dist/core/dist/scales/x-scale.js +167 -53
  24. package/dist/core/dist/scales/y-scale.js +36 -34
  25. package/dist/core/dist/series/band.js +723 -0
  26. package/dist/core/dist/series/bar.js +297 -291
  27. package/dist/core/dist/series/base-multi-layer.js +283 -237
  28. package/dist/core/dist/series/candlestick.js +32 -31
  29. package/dist/core/dist/series/heatmap.js +5 -5
  30. package/dist/core/dist/series/line-intro.js +47 -37
  31. package/dist/core/dist/series/line.js +489 -448
  32. package/dist/core/dist/series/painters/builtins.js +4 -4
  33. package/dist/core/dist/series/painters/canvas-path.js +64 -52
  34. package/dist/core/dist/series/register-builtins.js +9 -8
  35. package/dist/core/dist/snapshots.js +59 -46
  36. package/dist/core/dist/utils/point.js +10 -0
  37. package/dist/index.d.ts +552 -129
  38. package/dist/index.js +195 -191
  39. package/dist/ui/Crosshair.vue.js +51 -27
  40. package/dist/ui/InfoBar.vue.js +98 -79
  41. package/dist/ui/Marker.vue.js +14 -11
  42. package/dist/ui/Navigator.vue.js +23 -23
  43. package/dist/ui/ReferenceLine.vue.js +19 -16
  44. package/dist/ui/Tooltip.vue.js +116 -84
  45. package/dist/ui/XAxis.vue.js +48 -0
  46. package/dist/ui/XAxis.vue2.js +4 -0
  47. package/dist/ui/YAxis.vue.js +44 -28
  48. package/dist/ui/YLabel.vue.js +82 -85
  49. package/package.json +2 -2
  50. package/src/BandSeries.vue +92 -0
  51. package/src/BarSeries.vue +13 -6
  52. package/src/CandlestickSeries.vue +9 -5
  53. package/src/ChartContainer.vue +20 -0
  54. package/src/LineSeries.vue +13 -6
  55. package/src/composables.ts +23 -4
  56. package/src/index.ts +16 -1
  57. package/src/ui/Crosshair.vue +41 -1
  58. package/src/ui/InfoBar.vue +22 -2
  59. package/src/ui/Marker.vue +5 -1
  60. package/src/ui/Navigator.vue +2 -1
  61. package/src/ui/ReferenceLine.vue +5 -1
  62. package/src/ui/Tooltip.vue +43 -6
  63. package/src/ui/{TimeAxis.vue → XAxis.vue} +18 -5
  64. package/src/ui/YAxis.vue +66 -12
  65. package/src/ui/YLabel.vue +37 -18
  66. package/dist/ui/TimeAxis.vue.js +0 -44
  67. package/dist/ui/TimeAxis.vue2.js +0 -4
package/dist/index.js CHANGED
@@ -1,193 +1,197 @@
1
- import { default as o } from "./BarSeries.vue.js";
2
- import { default as a } from "./CandlestickSeries.vue.js";
3
- import { default as m } from "./ChartContainer.vue.js";
4
- import { useCrosshairPosition as i, useLastYValue as s, usePreviousClose as x, useVisibleRange as n, useYRange as l } from "./composables.js";
5
- import { useChartInstance as u, useTheme as c } from "./context.js";
6
- import { default as h } from "./HeatmapSeries.vue.js";
7
- import { default as S } from "./LineSeries.vue.js";
8
- import { default as P } from "./PieSeries.vue.js";
9
- import { default as T } from "./ui/Crosshair.vue.js";
10
- import { default as k } from "./ui/HeatmapTooltip.vue.js";
11
- import { default as w } from "./ui/InfoBar.vue.js";
12
- import { default as b } from "./ui/Legend.vue.js";
13
- import { default as A } from "./ui/Marker.vue.js";
14
- import { default as M } from "./ui/Navigator.vue.js";
15
- import { default as z } from "./ui/NumberFlow.vue.js";
16
- import { default as y } from "./ui/PieLegend.vue.js";
17
- import { default as q } from "./ui/PieTooltip.vue.js";
18
- import { default as V } from "./ui/ReferenceLine.vue.js";
19
- import { default as E, default as G } from "./ui/TimeAxis.vue.js";
20
- import { default as j } from "./ui/TimeRegion.vue.js";
21
- import { default as K } from "./ui/Title.vue.js";
22
- import { default as W } from "./ui/Tooltip.vue.js";
23
- import { default as _ } from "./ui/YAxis.vue.js";
24
- import { default as ee } from "./ui/YLabel.vue.js";
25
- import { BarSeriesDef as oe } from "./core/dist/series/bar.js";
26
- import { CandlestickSeriesDef as ae } from "./core/dist/series/candlestick.js";
27
- import { ChartInstance as me } from "./core/dist/chart.js";
28
- import { HeatmapSeriesDef as ie } from "./core/dist/series/heatmap.js";
29
- import { LineSeriesDef as xe } from "./core/dist/series/line.js";
30
- import { NavigatorController as le } from "./core/dist/navigator/controller.js";
31
- import { PerfMonitor as ue } from "./core/dist/perf/perf-monitor.js";
32
- import { PieSeriesDef as ge } from "./core/dist/series/pie.js";
33
- import { XScale as Ce } from "./core/dist/scales/x-scale.js";
34
- import { YScale as Ie } from "./core/dist/scales/y-scale.js";
35
- import { andromeda as ve } from "./core/dist/theme/themes/andromeda.js";
36
- import { autoGradient as Le, createTheme as ke, isDarkBg as De } from "./core/dist/theme/create.js";
37
- import { ayuMirage as Be } from "./core/dist/theme/themes/ayu-mirage.js";
38
- import { backfillSweepIntro as Re, centerOutIntro as Ae, plotterIntro as He, sweepIntro as Me, traceIntro as Ye, unfoldIntro as ze } from "./core/dist/series/line-intro.js";
39
- import { buildHoverSnapshots as ye, buildLastSnapshots as Ne } from "./core/dist/snapshots.js";
40
- import { candleUnfoldIntro as Oe, skeletonMorphIntro as Ve, wickBodyIntro as Xe } from "./core/dist/series/candlestick-intro.js";
41
- import { catppuccin as Ge } from "./core/dist/theme/themes/catppuccin.js";
42
- import { computeTooltipPosition as je } from "./core/dist/tooltip-position.js";
43
- import { deepEqual as Ke } from "./core/dist/utils/deep-equal.js";
44
- import { detectInterval as We, formatDate as Ze, formatTime as _e, normalizeTime as $e } from "./core/dist/utils/time.js";
45
- import { dracula as rr } from "./core/dist/theme/themes/dracula.js";
46
- import { fadeIntro as tr, riseIntro as ar, wipeIntro as fr } from "./core/dist/series/wave-intro.js";
47
- import { fillRoundedRect as pr, tracePath as ir } from "./core/dist/series/painters/canvas-path.js";
48
- import { formatCompact as xr, formatPriceAdaptive as nr } from "./core/dist/utils/format.js";
49
- import { githubLight as dr } from "./core/dist/theme/themes/github-light.js";
50
- import { growIntro as cr, springIntro as gr } from "./core/dist/series/bar-intro.js";
51
- import { gruvbox as Cr } from "./core/dist/theme/themes/gruvbox.js";
52
- import { handwritten as Ir } from "./core/dist/theme/themes/handwritten.js";
53
- import { hermite as vr } from "./core/dist/animation/y-range-hermite.js";
54
- import { highContrast as Lr } from "./core/dist/theme/themes/high-contrast.js";
55
- import { isTimeSeriesRenderer as Dr } from "./core/dist/series/types.js";
56
- import { lavenderMist as Br } from "./core/dist/theme/themes/lavender-mist.js";
57
- import { lightPink as Rr } from "./core/dist/theme/themes/light-pink.js";
58
- import { logScale as Hr } from "./core/dist/scales/log-scale.js";
59
- import { materialPalenight as Yr } from "./core/dist/theme/themes/material-palenight.js";
60
- import { minimalLight as Fr } from "./core/dist/theme/themes/minimal-light.js";
61
- import { mintBreeze as Nr } from "./core/dist/theme/themes/mint-breeze.js";
62
- import { mixColors as Or, sampleRamp as Vr } from "./core/dist/utils/color.js";
63
- import { monokaiPro as Er } from "./core/dist/theme/themes/monokai-pro.js";
64
- import { nightOwl as Ur } from "./core/dist/theme/themes/night-owl.js";
65
- import { oneDarkPro as Jr } from "./core/dist/theme/themes/one-dark-pro.js";
66
- import { panda as Qr } from "./core/dist/theme/themes/panda.js";
67
- import { parseAnimationTime as Zr } from "./core/dist/animation/time.js";
68
- import { peachCream as $r } from "./core/dist/theme/themes/peach-cream.js";
69
- import { perfHud as ro } from "./core/dist/perf/perf-hud.js";
70
- import { quietLight as to } from "./core/dist/theme/themes/quiet-light.js";
71
- import { registerBuiltinSeries as fo } from "./core/dist/series/register-builtins.js";
72
- import { registerSeriesDefinition as po } from "./core/dist/series/definition.js";
73
- import { resolveAxisFontSize as so, resolveAxisTextColor as xo, resolveCandlestickBodyColor as no } from "./core/dist/theme/resolve.js";
74
- import { rosePineDawn as uo } from "./core/dist/theme/themes/rose-pine-dawn.js";
75
- import { roundedBarFill as go, roundedCandleFill as ho, smoothCurve as Co, steppedCurve as So, straightCurve as Io } from "./core/dist/series/painters/builtins.js";
76
- import { sandDune as vo } from "./core/dist/theme/themes/sand-dune.js";
77
- import { skeletonLoadingIndicator as Lo } from "./core/dist/components/loading-indicator.js";
78
- import { snap as Do } from "./core/dist/animation/y-range-snap.js";
79
- import { solarizedLight as Bo } from "./core/dist/theme/themes/solarized-light.js";
80
- import { spring as Ro } from "./core/dist/animation/spring.js";
1
+ import { default as o } from "./BandSeries.vue.js";
2
+ import { default as a } from "./BarSeries.vue.js";
3
+ import { default as m } from "./CandlestickSeries.vue.js";
4
+ import { default as i } from "./ChartContainer.vue.js";
5
+ import { useCrosshairPosition as x, useLastYValue as n, usePreviousClose as l, useVisibleRange as d, useYRange as u } from "./composables.js";
6
+ import { useChartInstance as g, useTheme as h } from "./context.js";
7
+ import { default as C } from "./HeatmapSeries.vue.js";
8
+ import { default as P } from "./LineSeries.vue.js";
9
+ import { default as T } from "./PieSeries.vue.js";
10
+ import { default as k } from "./ui/Crosshair.vue.js";
11
+ import { default as B } from "./ui/HeatmapTooltip.vue.js";
12
+ import { default as b } from "./ui/InfoBar.vue.js";
13
+ import { default as A } from "./ui/Legend.vue.js";
14
+ import { default as M } from "./ui/Marker.vue.js";
15
+ import { default as z } from "./ui/Navigator.vue.js";
16
+ import { default as y } from "./ui/NumberFlow.vue.js";
17
+ import { default as q } from "./ui/PieLegend.vue.js";
18
+ import { default as V } from "./ui/PieTooltip.vue.js";
19
+ import { default as E } from "./ui/ReferenceLine.vue.js";
20
+ import { default as U } from "./ui/TimeRegion.vue.js";
21
+ import { default as J } from "./ui/Title.vue.js";
22
+ import { default as Q } from "./ui/Tooltip.vue.js";
23
+ import { default as Z, default as _ } from "./ui/XAxis.vue.js";
24
+ import { default as ee } from "./ui/YAxis.vue.js";
25
+ import { default as oe } from "./ui/YLabel.vue.js";
26
+ import { BandSeriesDef as ae } from "./core/dist/series/band.js";
27
+ import { BarSeriesDef as me } from "./core/dist/series/bar.js";
28
+ import { CandlestickSeriesDef as ie } from "./core/dist/series/candlestick.js";
29
+ import { ChartInstance as xe } from "./core/dist/chart.js";
30
+ import { HeatmapSeriesDef as le } from "./core/dist/series/heatmap.js";
31
+ import { LineSeriesDef as ue } from "./core/dist/series/line.js";
32
+ import { NavigatorController as ge } from "./core/dist/navigator/controller.js";
33
+ import { PerfMonitor as Se } from "./core/dist/perf/perf-monitor.js";
34
+ import { PieSeriesDef as Ie } from "./core/dist/series/pie.js";
35
+ import { XScale as ve } from "./core/dist/scales/x-scale.js";
36
+ import { YScale as Le } from "./core/dist/scales/y-scale.js";
37
+ import { andromeda as De } from "./core/dist/theme/themes/andromeda.js";
38
+ import { autoGradient as we, createTheme as be, isDarkBg as Re } from "./core/dist/theme/create.js";
39
+ import { ayuMirage as He } from "./core/dist/theme/themes/ayu-mirage.js";
40
+ import { backfillSweepIntro as Ye, centerOutIntro as ze, plotterIntro as Fe, sweepIntro as ye, traceIntro as Ne, unfoldIntro as qe } from "./core/dist/series/line-intro.js";
41
+ import { buildHoverSnapshots as Ve, buildLastSnapshots as Xe } from "./core/dist/snapshots.js";
42
+ import { candleUnfoldIntro as Ge, skeletonMorphIntro as Ue, wickBodyIntro as je } from "./core/dist/series/candlestick-intro.js";
43
+ import { catppuccin as Ke } from "./core/dist/theme/themes/catppuccin.js";
44
+ import { computeTooltipPosition as We } from "./core/dist/tooltip-position.js";
45
+ import { deepEqual as _e } from "./core/dist/utils/deep-equal.js";
46
+ import { detectInterval as er, formatDate as rr, formatTime as or, normalizeTime as tr } from "./core/dist/utils/time.js";
47
+ import { dracula as fr } from "./core/dist/theme/themes/dracula.js";
48
+ import { fadeIntro as pr, riseIntro as ir, wipeIntro as sr } from "./core/dist/series/wave-intro.js";
49
+ import { fillRoundedRect as nr, tracePath as lr } from "./core/dist/series/painters/canvas-path.js";
50
+ import { formatCompact as ur, formatPriceAdaptive as cr } from "./core/dist/utils/format.js";
51
+ import { githubLight as hr } from "./core/dist/theme/themes/github-light.js";
52
+ import { growIntro as Cr, springIntro as Ir } from "./core/dist/series/bar-intro.js";
53
+ import { gruvbox as vr } from "./core/dist/theme/themes/gruvbox.js";
54
+ import { handwritten as Lr } from "./core/dist/theme/themes/handwritten.js";
55
+ import { hermite as Dr } from "./core/dist/animation/y-range-hermite.js";
56
+ import { highContrast as wr } from "./core/dist/theme/themes/high-contrast.js";
57
+ import { isTimeSeriesRenderer as Rr } from "./core/dist/series/types.js";
58
+ import { lavenderMist as Hr } from "./core/dist/theme/themes/lavender-mist.js";
59
+ import { lightPink as Yr } from "./core/dist/theme/themes/light-pink.js";
60
+ import { logScale as Fr } from "./core/dist/scales/log-scale.js";
61
+ import { materialPalenight as Nr } from "./core/dist/theme/themes/material-palenight.js";
62
+ import { minimalLight as Or } from "./core/dist/theme/themes/minimal-light.js";
63
+ import { mintBreeze as Xr } from "./core/dist/theme/themes/mint-breeze.js";
64
+ import { mixColors as Gr, sampleRamp as Ur } from "./core/dist/utils/color.js";
65
+ import { monokaiPro as Jr } from "./core/dist/theme/themes/monokai-pro.js";
66
+ import { nightOwl as Qr } from "./core/dist/theme/themes/night-owl.js";
67
+ import { oneDarkPro as Zr } from "./core/dist/theme/themes/one-dark-pro.js";
68
+ import { panda as $r } from "./core/dist/theme/themes/panda.js";
69
+ import { parseAnimationTime as ro } from "./core/dist/animation/time.js";
70
+ import { peachCream as to } from "./core/dist/theme/themes/peach-cream.js";
71
+ import { perfHud as fo } from "./core/dist/perf/perf-hud.js";
72
+ import { quietLight as po } from "./core/dist/theme/themes/quiet-light.js";
73
+ import { registerBuiltinSeries as so } from "./core/dist/series/register-builtins.js";
74
+ import { registerSeriesDefinition as no } from "./core/dist/series/definition.js";
75
+ import { resolveAxisFontSize as uo, resolveAxisTextColor as co, resolveCandlestickBodyColor as go } from "./core/dist/theme/resolve.js";
76
+ import { rosePineDawn as So } from "./core/dist/theme/themes/rose-pine-dawn.js";
77
+ import { roundedBarFill as Io, roundedCandleFill as Po, smoothCurve as vo, steppedCurve as To, straightCurve as Lo } from "./core/dist/series/painters/builtins.js";
78
+ import { sandDune as Do } from "./core/dist/theme/themes/sand-dune.js";
79
+ import { skeletonLoadingIndicator as wo } from "./core/dist/components/loading-indicator.js";
80
+ import { snap as Ro } from "./core/dist/animation/y-range-snap.js";
81
+ import { solarizedLight as Ho } from "./core/dist/theme/themes/solarized-light.js";
82
+ import { spring as Yo } from "./core/dist/animation/spring.js";
81
83
  export {
82
- o as BarSeries,
83
- oe as BarSeriesDef,
84
- a as CandlestickSeries,
85
- ae as CandlestickSeriesDef,
86
- m as ChartContainer,
87
- me as ChartInstance,
88
- T as Crosshair,
89
- h as HeatmapSeries,
90
- ie as HeatmapSeriesDef,
91
- k as HeatmapTooltip,
92
- w as InfoBar,
93
- b as Legend,
94
- S as LineSeries,
95
- xe as LineSeriesDef,
96
- A as Marker,
97
- M as Navigator,
98
- le as NavigatorController,
99
- z as NumberFlow,
100
- ue as PerfMonitor,
101
- y as PieLegend,
102
- P as PieSeries,
103
- ge as PieSeriesDef,
104
- q as PieTooltip,
105
- V as ReferenceLine,
106
- E as TimeAxis,
107
- j as TimeRegion,
108
- K as Title,
109
- W as Tooltip,
110
- G as XAxis,
111
- Ce as XScale,
112
- _ as YAxis,
113
- ee as YLabel,
114
- Ie as YScale,
115
- ve as andromeda,
116
- Le as autoGradient,
117
- Be as ayuMirage,
118
- Re as backfillSweepIntro,
119
- ye as buildHoverSnapshots,
120
- Ne as buildLastSnapshots,
121
- Oe as candleUnfoldIntro,
122
- Ge as catppuccin,
123
- Ae as centerOutIntro,
124
- je as computeTooltipPosition,
125
- ke as createTheme,
126
- Ke as deepEqual,
127
- We as detectInterval,
128
- rr as dracula,
129
- tr as fadeIntro,
130
- pr as fillRoundedRect,
131
- xr as formatCompact,
132
- Ze as formatDate,
133
- nr as formatPriceAdaptive,
134
- _e as formatTime,
135
- dr as githubLight,
136
- cr as growIntro,
137
- Cr as gruvbox,
138
- Ir as handwritten,
139
- vr as hermite,
140
- Lr as highContrast,
141
- De as isDarkBg,
142
- Dr as isTimeSeriesRenderer,
143
- Br as lavenderMist,
144
- Rr as lightPink,
145
- Hr as logScale,
146
- Yr as materialPalenight,
147
- Fr as minimalLight,
148
- Nr as mintBreeze,
149
- Or as mixColors,
150
- Er as monokaiPro,
151
- Ur as nightOwl,
152
- $e as normalizeTime,
153
- Jr as oneDarkPro,
154
- Qr as panda,
155
- Zr as parseAnimationTime,
156
- $r as peachCream,
157
- ro as perfHud,
158
- He as plotterIntro,
159
- to as quietLight,
160
- fo as registerBuiltinSeries,
161
- po as registerSeriesDefinition,
162
- so as resolveAxisFontSize,
163
- xo as resolveAxisTextColor,
164
- no as resolveCandlestickBodyColor,
165
- ar as riseIntro,
166
- uo as rosePineDawn,
167
- go as roundedBarFill,
168
- ho as roundedCandleFill,
169
- Vr as sampleRamp,
170
- vo as sandDune,
171
- Lo as skeletonLoadingIndicator,
172
- Ve as skeletonMorphIntro,
173
- Co as smoothCurve,
174
- Do as snap,
175
- Bo as solarizedLight,
176
- Ro as spring,
177
- gr as springIntro,
178
- So as steppedCurve,
179
- Io as straightCurve,
180
- Me as sweepIntro,
181
- Ye as traceIntro,
182
- ir as tracePath,
183
- ze as unfoldIntro,
184
- u as useChartInstance,
185
- i as useCrosshairPosition,
186
- s as useLastYValue,
187
- x as usePreviousClose,
188
- c as useTheme,
189
- n as useVisibleRange,
190
- l as useYRange,
191
- Xe as wickBodyIntro,
192
- fr as wipeIntro
84
+ o as BandSeries,
85
+ ae as BandSeriesDef,
86
+ a as BarSeries,
87
+ me as BarSeriesDef,
88
+ m as CandlestickSeries,
89
+ ie as CandlestickSeriesDef,
90
+ i as ChartContainer,
91
+ xe as ChartInstance,
92
+ k as Crosshair,
93
+ C as HeatmapSeries,
94
+ le as HeatmapSeriesDef,
95
+ B as HeatmapTooltip,
96
+ b as InfoBar,
97
+ A as Legend,
98
+ P as LineSeries,
99
+ ue as LineSeriesDef,
100
+ M as Marker,
101
+ z as Navigator,
102
+ ge as NavigatorController,
103
+ y as NumberFlow,
104
+ Se as PerfMonitor,
105
+ q as PieLegend,
106
+ T as PieSeries,
107
+ Ie as PieSeriesDef,
108
+ V as PieTooltip,
109
+ E as ReferenceLine,
110
+ Z as TimeAxis,
111
+ U as TimeRegion,
112
+ J as Title,
113
+ Q as Tooltip,
114
+ _ as XAxis,
115
+ ve as XScale,
116
+ ee as YAxis,
117
+ oe as YLabel,
118
+ Le as YScale,
119
+ De as andromeda,
120
+ we as autoGradient,
121
+ He as ayuMirage,
122
+ Ye as backfillSweepIntro,
123
+ Ve as buildHoverSnapshots,
124
+ Xe as buildLastSnapshots,
125
+ Ge as candleUnfoldIntro,
126
+ Ke as catppuccin,
127
+ ze as centerOutIntro,
128
+ We as computeTooltipPosition,
129
+ be as createTheme,
130
+ _e as deepEqual,
131
+ er as detectInterval,
132
+ fr as dracula,
133
+ pr as fadeIntro,
134
+ nr as fillRoundedRect,
135
+ ur as formatCompact,
136
+ rr as formatDate,
137
+ cr as formatPriceAdaptive,
138
+ or as formatTime,
139
+ hr as githubLight,
140
+ Cr as growIntro,
141
+ vr as gruvbox,
142
+ Lr as handwritten,
143
+ Dr as hermite,
144
+ wr as highContrast,
145
+ Re as isDarkBg,
146
+ Rr as isTimeSeriesRenderer,
147
+ Hr as lavenderMist,
148
+ Yr as lightPink,
149
+ Fr as logScale,
150
+ Nr as materialPalenight,
151
+ Or as minimalLight,
152
+ Xr as mintBreeze,
153
+ Gr as mixColors,
154
+ Jr as monokaiPro,
155
+ Qr as nightOwl,
156
+ tr as normalizeTime,
157
+ Zr as oneDarkPro,
158
+ $r as panda,
159
+ ro as parseAnimationTime,
160
+ to as peachCream,
161
+ fo as perfHud,
162
+ Fe as plotterIntro,
163
+ po as quietLight,
164
+ so as registerBuiltinSeries,
165
+ no as registerSeriesDefinition,
166
+ uo as resolveAxisFontSize,
167
+ co as resolveAxisTextColor,
168
+ go as resolveCandlestickBodyColor,
169
+ ir as riseIntro,
170
+ So as rosePineDawn,
171
+ Io as roundedBarFill,
172
+ Po as roundedCandleFill,
173
+ Ur as sampleRamp,
174
+ Do as sandDune,
175
+ wo as skeletonLoadingIndicator,
176
+ Ue as skeletonMorphIntro,
177
+ vo as smoothCurve,
178
+ Ro as snap,
179
+ Ho as solarizedLight,
180
+ Yo as spring,
181
+ Ir as springIntro,
182
+ To as steppedCurve,
183
+ Lo as straightCurve,
184
+ ye as sweepIntro,
185
+ Ne as traceIntro,
186
+ lr as tracePath,
187
+ qe as unfoldIntro,
188
+ g as useChartInstance,
189
+ x as useCrosshairPosition,
190
+ n as useLastYValue,
191
+ l as usePreviousClose,
192
+ h as useTheme,
193
+ d as useVisibleRange,
194
+ u as useYRange,
195
+ je as wickBodyIntro,
196
+ sr as wipeIntro
193
197
  };
@@ -1,21 +1,34 @@
1
- import { defineComponent as v, ref as d, onMounted as f, onUnmounted as y, computed as n, unref as t, openBlock as h, createElementBlock as x, Fragment as g, createElementVNode as c, normalizeStyle as m, toDisplayString as u, createCommentVNode as b } from "vue";
2
- import { useCrosshairPosition as C } from "../composables.js";
3
- import { useChartInstance as S } from "../context.js";
4
- const E = /* @__PURE__ */ v({
1
+ import { defineComponent as C, ref as Y, onMounted as _, onUnmounted as I, computed as a, unref as n, openBlock as u, createElementBlock as c, Fragment as g, normalizeStyle as p, toDisplayString as v, createCommentVNode as h, renderList as T, createElementVNode as V } from "vue";
2
+ import { useCrosshairPosition as z } from "../composables.js";
3
+ import { useChartInstance as B } from "../context.js";
4
+ const P = /* @__PURE__ */ C({
5
5
  __name: "Crosshair",
6
- setup(k) {
7
- const e = S(), o = C(e), r = d(0), l = () => {
8
- r.value++;
6
+ setup(E) {
7
+ const e = B(), t = z(e), l = Y(0), d = () => {
8
+ l.value++;
9
9
  };
10
- f(() => e.on("overlayChange", l)), y(() => e.off("overlayChange", l));
11
- const a = n(() => (r.value, e.getTheme())), i = n(() => e.getDataInterval()), p = n(() => (o.value, e.timeScale.niceTickValues(i.value).tickInterval || i.value)), s = n(() => ({
10
+ _(() => e.on("overlayChange", d)), I(() => e.off("overlayChange", d));
11
+ const i = a(() => (l.value, e.getTheme())), f = a(() => e.getDataInterval()), S = a(() => (t.value, e.timeScale.niceTickValues(f.value).tickInterval || f.value)), b = a(() => {
12
+ l.value;
13
+ const o = t.value;
14
+ return o === null ? "" : e.yScale.formatY(o.y);
15
+ }), y = a(() => {
16
+ l.value;
17
+ const o = t.value;
18
+ return o === null ? [] : e.getYScaleIds().flatMap((s) => {
19
+ const r = e.getYScaleColumn(s);
20
+ if (r === null) return [];
21
+ const x = e.getYScale(s);
22
+ return [{ scale: s, position: r.position, text: x.formatY(x.yToValue(o.mediaY)) }];
23
+ });
24
+ }), k = a(() => y.value.some((o) => o.position === e.yAxisPosition)), m = a(() => ({
12
25
  // Blend the theme's labelBackground at 80% opacity so the axis grid
13
26
  // shows through — keeps the badge from looking like an opaque block
14
27
  // while still masking whatever tick sits underneath.
15
- background: `color-mix(in srgb, ${a.value.crosshair.labelBackground} 80%, transparent)`,
16
- color: a.value.crosshair.labelTextColor,
17
- fontSize: a.value.axis.fontSize + "px",
18
- fontFamily: a.value.typography.fontFamily,
28
+ background: `color-mix(in srgb, ${i.value.crosshair.labelBackground} 80%, transparent)`,
29
+ color: i.value.crosshair.labelTextColor,
30
+ fontSize: i.value.axis.fontSize + "px",
31
+ fontFamily: i.value.typography.fontFamily,
19
32
  fontVariantNumeric: "tabular-nums",
20
33
  padding: "2px 6px",
21
34
  borderRadius: "2px",
@@ -25,28 +38,39 @@ const E = /* @__PURE__ */ v({
25
38
  // live last-value stays visible when the crosshair crosses its row.
26
39
  zIndex: 2
27
40
  }));
28
- return (_, I) => t(o) ? (h(), x(g, { key: 0 }, [
29
- c("div", {
30
- style: m({
41
+ return (o, s) => n(t) ? (u(), c(g, { key: 0 }, [
42
+ k.value ? h("", !0) : (u(), c("div", {
43
+ key: 0,
44
+ style: p({
31
45
  position: "absolute",
32
- [t(e).yAxisPosition]: "0",
33
- top: t(o).mediaY + "px",
46
+ [n(e).yAxisPosition]: "0",
47
+ top: n(t).mediaY + "px",
34
48
  transform: "translateY(-50%)",
35
- ...s.value
49
+ ...m.value
36
50
  })
37
- }, u(t(e).yScale.formatY(t(o).y)), 5),
38
- c("div", {
39
- style: m({
51
+ }, v(b.value), 5)),
52
+ (u(!0), c(g, null, T(y.value, (r) => (u(), c("div", {
53
+ key: r.scale,
54
+ style: p({
55
+ position: "absolute",
56
+ [r.position]: "0",
57
+ top: n(t).mediaY + "px",
58
+ transform: "translateY(-50%)",
59
+ ...m.value
60
+ })
61
+ }, v(r.text), 5))), 128)),
62
+ V("div", {
63
+ style: p({
40
64
  position: "absolute",
41
65
  bottom: "0",
42
- left: t(o).mediaX + "px",
66
+ left: n(t).mediaX + "px",
43
67
  transform: "translateX(-50%)",
44
- ...s.value
68
+ ...m.value
45
69
  })
46
- }, u(t(e).timeScale.formatX(t(o).time, p.value)), 5)
47
- ], 64)) : b("", !0);
70
+ }, v(n(e).timeScale.formatX(n(t).time, S.value)), 5)
71
+ ], 64)) : h("", !0);
48
72
  }
49
73
  });
50
74
  export {
51
- E as default
75
+ P as default
52
76
  };