@luxalgo/vela 0.6.9 → 0.6.10

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 (45) hide show
  1. package/dist/{DataProvider-8Z95Q-RJ.d.cts → DataProvider-CWmp31dA.d.ts} +49 -1
  2. package/dist/{DataProvider-DExJrfut.d.ts → DataProvider-l_eLMly_.d.cts} +49 -1
  3. package/dist/{chunk-EQCHJZOT.js → chunk-4KZVZ7QQ.js} +1 -1
  4. package/dist/{chunk-6WDDVMBJ.js → chunk-FFOP37FQ.js} +577 -321
  5. package/dist/{chunk-62SVGONC.js → chunk-G77Y7LK2.js} +2 -2
  6. package/dist/{chunk-WFSZBX3R.js → chunk-KG4YT3TI.js} +3 -1
  7. package/dist/{chunk-FCVIG7JG.js → chunk-MHY7MVXH.js} +5 -1
  8. package/dist/{chunk-STHSKXOR.js → chunk-NMTQXNT4.js} +591 -141
  9. package/dist/{contributions-D7PVZO2i.d.ts → contributions-BCz6Dr6a.d.ts} +6 -6
  10. package/dist/{contributions-C1U2Krwg.d.cts → contributions-D9vTzm5p.d.cts} +6 -6
  11. package/dist/index.cjs +580 -318
  12. package/dist/index.d.cts +31 -10
  13. package/dist/index.d.ts +31 -10
  14. package/dist/index.js +4 -4
  15. package/dist/{options-FM0peknS.d.ts → options-DSqHsQyN.d.cts} +6 -6
  16. package/dist/{options-FM0peknS.d.cts → options-DSqHsQyN.d.ts} +6 -6
  17. package/dist/{plugin-DfVqBz9p.d.cts → plugin-Bt8hLR8Z.d.cts} +3 -3
  18. package/dist/{plugin-7bkF32Rk.d.ts → plugin-CH7pfMrE.d.ts} +3 -3
  19. package/dist/plugin.cjs +3 -1
  20. package/dist/plugin.d.cts +4 -4
  21. package/dist/plugin.d.ts +4 -4
  22. package/dist/plugin.js +2 -2
  23. package/dist/providers/binance.d.cts +2 -2
  24. package/dist/providers/binance.d.ts +2 -2
  25. package/dist/providers/coinbase.d.cts +2 -2
  26. package/dist/providers/coinbase.d.ts +2 -2
  27. package/dist/providers/hyperliquid.d.cts +2 -2
  28. package/dist/providers/hyperliquid.d.ts +2 -2
  29. package/dist/{statusline-zdF4eZLr.d.ts → statusline-5K7y4Ya2.d.ts} +3 -3
  30. package/dist/{statusline-DOPiT6I6.d.cts → statusline-TYLQmoeh.d.cts} +3 -3
  31. package/dist/ui.cjs +7 -1
  32. package/dist/ui.d.cts +3 -1
  33. package/dist/ui.d.ts +3 -1
  34. package/dist/ui.js +3 -3
  35. package/dist/vela.global.js +580 -318
  36. package/dist/vela.global.min.js +50 -48
  37. package/dist/widget.cjs +1052 -340
  38. package/dist/widget.d.cts +17 -6
  39. package/dist/widget.d.ts +17 -6
  40. package/dist/widget.js +7 -7
  41. package/dist/workspace.cjs +1052 -340
  42. package/dist/workspace.d.cts +89 -5
  43. package/dist/workspace.d.ts +89 -5
  44. package/dist/workspace.js +6 -6
  45. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { M as MarketConfig, O as OHLCV, U as Unsubscribe } from './options-FM0peknS.cjs';
1
+ import { M as MarketConfig, O as OHLCV, U as Unsubscribe } from './options-DSqHsQyN.js';
2
2
 
3
3
  /**
4
4
  * Symbol metadata an engine may need (e.g. Pine `syminfo.*`). Free-form beyond
@@ -36,6 +36,16 @@ interface BarRange {
36
36
  interface MarketDataFeed {
37
37
  /** Load the initial history (from a provider or the offline `data` array). */
38
38
  load(cfg: MarketConfig): Promise<OHLCV[]>;
39
+ /**
40
+ * Progressive load: emit growing snapshots while the source heals a cold symbol,
41
+ * resolve with the final answer — `DataProvider.getBarsProgressive` semantics
42
+ * (cumulative, confirmed-from-the-newest-bar snapshots; each extends the last).
43
+ * Resolves NULL when the resolved source lacks the capability — the caller then
44
+ * runs its non-progressive paths (single load, deep head + backfill) untouched.
45
+ */
46
+ loadProgressive?(cfg: MarketConfig, onBatch: (bars: OHLCV[]) => void, opts?: {
47
+ signal?: AbortSignal;
48
+ }): Promise<OHLCV[] | null>;
39
49
  /** Subscribe to live forming-candle ticks. Returns an unsubscribe fn. */
40
50
  subscribe(cfg: MarketConfig, onBar: (bar: OHLCV) => void): Unsubscribe;
41
51
  /** Optional symbol metadata for engines that need it; absent/undefined ≡ engine synthesizes. */
@@ -70,6 +80,26 @@ interface SymbolDescriptor {
70
80
  description?: string;
71
81
  /** Instrument class, free-form (e.g. `crypto`, `futures`, `stock`). */
72
82
  type?: string;
83
+ /**
84
+ * The GROUP this row belongs to (futures: the product root — `ES1!` and `ES2!`
85
+ * carry `group: "ES"`). The group's own row repeats the value in `ticker` with a
86
+ * distinguishing `type` and is NOT directly loadable — pickers fold members under
87
+ * it and load the member marked {@link default} when the group itself is picked.
88
+ */
89
+ group?: string;
90
+ /**
91
+ * The member a picker loads when its whole GROUP is picked. At most one per group;
92
+ * the agreed fallback for zero-or-many is the group's FIRST listed member, so
93
+ * providers emit members in deliberate order.
94
+ */
95
+ default?: boolean;
96
+ /**
97
+ * The provider-side market (product class) serving this symbol, on providers whose
98
+ * markets differ in session shape (futures: index, grains, energy… hours differ on
99
+ * one source). Consumers resolving per-market vocabulary (session template,
100
+ * calendar windows) key on it; absent where the market is unambiguous.
101
+ */
102
+ market?: string;
73
103
  /**
74
104
  * The instrument's LISTING-venue prefix (`NASDAQ`, `NYSE`, `AMEX`) — a property of the
75
105
  * SYMBOL, not of the provider: AAPL is Nasdaq-listed and IBM NYSE-listed even when one
@@ -121,6 +151,24 @@ interface DataProvider {
121
151
  * sorted + de-duplicated by open-time.
122
152
  */
123
153
  getBars(ticker: string, timeframe: string, range: BarRange): Promise<OHLCV[]>;
154
+ /**
155
+ * Progressive variant of {@link getBars}, for sources that HEAL a cold symbol while
156
+ * answering: instead of holding the load until the whole depth converged, the
157
+ * provider emits growing snapshots as history lands and the chart paints each one.
158
+ * Every `onBatch` list (and the resolved final list) is the WHOLE answer so far —
159
+ * ascending, and CONFIRMED from its newest bar backward: a snapshot is cut at the
160
+ * newest stretch the SOURCE still owes (its own accounting of unanswered work,
161
+ * oldest-last), NEVER inferred from bar-time gaps — markets hold real empty
162
+ * stretches (holidays, quiet sessions) that must flow through immediately. Bars
163
+ * never move or vanish between snapshots; each extends the previous one. The
164
+ * resolved value is the final answer. `opts.signal` aborts the stream — the chart
165
+ * switched away: stop polling PROMPTLY and resolve with whatever is confirmed
166
+ * (an abandoned load left polling starves the browser's per-host connection pool
167
+ * and the next symbol with it). Absent ≡ single-answer `getBars` semantics.
168
+ */
169
+ getBarsProgressive?(ticker: string, timeframe: string, range: BarRange, onBatch: (bars: OHLCV[]) => void, opts?: {
170
+ signal?: AbortSignal;
171
+ }): Promise<OHLCV[]>;
124
172
  /** Provider metadata. Absent ⇒ the registry synthesizes a record from the methods present. */
125
173
  info?(): ProviderInfo;
126
174
  /**
@@ -1,4 +1,4 @@
1
- import { M as MarketConfig, O as OHLCV, U as Unsubscribe } from './options-FM0peknS.js';
1
+ import { M as MarketConfig, O as OHLCV, U as Unsubscribe } from './options-DSqHsQyN.cjs';
2
2
 
3
3
  /**
4
4
  * Symbol metadata an engine may need (e.g. Pine `syminfo.*`). Free-form beyond
@@ -36,6 +36,16 @@ interface BarRange {
36
36
  interface MarketDataFeed {
37
37
  /** Load the initial history (from a provider or the offline `data` array). */
38
38
  load(cfg: MarketConfig): Promise<OHLCV[]>;
39
+ /**
40
+ * Progressive load: emit growing snapshots while the source heals a cold symbol,
41
+ * resolve with the final answer — `DataProvider.getBarsProgressive` semantics
42
+ * (cumulative, confirmed-from-the-newest-bar snapshots; each extends the last).
43
+ * Resolves NULL when the resolved source lacks the capability — the caller then
44
+ * runs its non-progressive paths (single load, deep head + backfill) untouched.
45
+ */
46
+ loadProgressive?(cfg: MarketConfig, onBatch: (bars: OHLCV[]) => void, opts?: {
47
+ signal?: AbortSignal;
48
+ }): Promise<OHLCV[] | null>;
39
49
  /** Subscribe to live forming-candle ticks. Returns an unsubscribe fn. */
40
50
  subscribe(cfg: MarketConfig, onBar: (bar: OHLCV) => void): Unsubscribe;
41
51
  /** Optional symbol metadata for engines that need it; absent/undefined ≡ engine synthesizes. */
@@ -70,6 +80,26 @@ interface SymbolDescriptor {
70
80
  description?: string;
71
81
  /** Instrument class, free-form (e.g. `crypto`, `futures`, `stock`). */
72
82
  type?: string;
83
+ /**
84
+ * The GROUP this row belongs to (futures: the product root — `ES1!` and `ES2!`
85
+ * carry `group: "ES"`). The group's own row repeats the value in `ticker` with a
86
+ * distinguishing `type` and is NOT directly loadable — pickers fold members under
87
+ * it and load the member marked {@link default} when the group itself is picked.
88
+ */
89
+ group?: string;
90
+ /**
91
+ * The member a picker loads when its whole GROUP is picked. At most one per group;
92
+ * the agreed fallback for zero-or-many is the group's FIRST listed member, so
93
+ * providers emit members in deliberate order.
94
+ */
95
+ default?: boolean;
96
+ /**
97
+ * The provider-side market (product class) serving this symbol, on providers whose
98
+ * markets differ in session shape (futures: index, grains, energy… hours differ on
99
+ * one source). Consumers resolving per-market vocabulary (session template,
100
+ * calendar windows) key on it; absent where the market is unambiguous.
101
+ */
102
+ market?: string;
73
103
  /**
74
104
  * The instrument's LISTING-venue prefix (`NASDAQ`, `NYSE`, `AMEX`) — a property of the
75
105
  * SYMBOL, not of the provider: AAPL is Nasdaq-listed and IBM NYSE-listed even when one
@@ -121,6 +151,24 @@ interface DataProvider {
121
151
  * sorted + de-duplicated by open-time.
122
152
  */
123
153
  getBars(ticker: string, timeframe: string, range: BarRange): Promise<OHLCV[]>;
154
+ /**
155
+ * Progressive variant of {@link getBars}, for sources that HEAL a cold symbol while
156
+ * answering: instead of holding the load until the whole depth converged, the
157
+ * provider emits growing snapshots as history lands and the chart paints each one.
158
+ * Every `onBatch` list (and the resolved final list) is the WHOLE answer so far —
159
+ * ascending, and CONFIRMED from its newest bar backward: a snapshot is cut at the
160
+ * newest stretch the SOURCE still owes (its own accounting of unanswered work,
161
+ * oldest-last), NEVER inferred from bar-time gaps — markets hold real empty
162
+ * stretches (holidays, quiet sessions) that must flow through immediately. Bars
163
+ * never move or vanish between snapshots; each extends the previous one. The
164
+ * resolved value is the final answer. `opts.signal` aborts the stream — the chart
165
+ * switched away: stop polling PROMPTLY and resolve with whatever is confirmed
166
+ * (an abandoned load left polling starves the browser's per-host connection pool
167
+ * and the next symbol with it). Absent ≡ single-answer `getBars` semantics.
168
+ */
169
+ getBarsProgressive?(ticker: string, timeframe: string, range: BarRange, onBatch: (bars: OHLCV[]) => void, opts?: {
170
+ signal?: AbortSignal;
171
+ }): Promise<OHLCV[]>;
124
172
  /** Provider metadata. Absent ⇒ the registry synthesizes a record from the methods present. */
125
173
  info?(): ProviderInfo;
126
174
  /**
@@ -1,4 +1,4 @@
1
- import { svg24, NEUTRAL, BEARISH, WARNING, BULLISH, INFO, ACCENT_BRIGHT, VALID, INVALID, MARKER, ACCENT, injectStyles, iconEl } from './chunk-WFSZBX3R.js';
1
+ import { svg24, NEUTRAL, BEARISH, WARNING, BULLISH, INFO, ACCENT_BRIGHT, VALID, INVALID, MARKER, ACCENT, injectStyles, iconEl } from './chunk-KG4YT3TI.js';
2
2
 
3
3
  // src/core/native-indicators/NativeIndicator.ts
4
4
  var REGISTRY = /* @__PURE__ */ new Map();