@luxalgo/vela 0.5.1 → 0.5.2
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.
- package/dist/{DataProvider-DGesjOJT.d.ts → DataProvider-DTOEXKTI.d.ts} +1 -1
- package/dist/{DataProvider-BBQ3Hr21.d.cts → DataProvider-gnzv-dgc.d.cts} +1 -1
- package/dist/{chunk-ULIX6AE2.js → chunk-ATPU5CI6.js} +1 -1
- package/dist/{chunk-S6F6SQ2L.js → chunk-B5TIKQJ5.js} +60 -7
- package/dist/{chunk-EP6NDJYK.js → chunk-LJLZR44Y.js} +4 -2
- package/dist/{chunk-AIW3EJUE.js → chunk-P556H6EA.js} +329 -10
- package/dist/{chunk-FNOMKHEZ.js → chunk-RRFGWZNJ.js} +1321 -363
- package/dist/{chunk-5SE4PL3H.js → chunk-Y7TK4ZWK.js} +1363 -48
- package/dist/{contributions-BlV3kb0O.d.cts → contributions-Ci_i3IN2.d.cts} +33 -2
- package/dist/{contributions-6N0rbrPC.d.ts → contributions-b6AVrqqG.d.ts} +33 -2
- package/dist/{history-DX3Zne3a.d.cts → history-Cf1lVsap.d.cts} +15 -3
- package/dist/{history-BTd52YMA.d.ts → history-Ci3M0xLV.d.ts} +15 -3
- package/dist/index.cjs +1374 -366
- package/dist/index.d.cts +52 -19
- package/dist/index.d.ts +52 -19
- package/dist/index.js +4 -4
- package/dist/{options-DbQholFV.d.cts → options-XTBpbx0s.d.cts} +47 -1
- package/dist/{options-DbQholFV.d.ts → options-XTBpbx0s.d.ts} +47 -1
- package/dist/{plugin-TN3n-9YN.d.ts → plugin-CnNd7cuF.d.ts} +172 -25
- package/dist/{plugin-O34MbXf-.d.cts → plugin-DfH4Y-Om.d.cts} +172 -25
- package/dist/plugin.cjs +53 -7
- package/dist/plugin.d.cts +4 -4
- package/dist/plugin.d.ts +4 -4
- package/dist/plugin.js +2 -2
- package/dist/providers/binance.d.cts +2 -2
- package/dist/providers/binance.d.ts +2 -2
- package/dist/providers/coinbase.d.cts +2 -2
- package/dist/providers/coinbase.d.ts +2 -2
- package/dist/providers/hyperliquid.d.cts +2 -2
- package/dist/providers/hyperliquid.d.ts +2 -2
- package/dist/ui.cjs +332 -9
- package/dist/ui.d.cts +64 -2
- package/dist/ui.d.ts +64 -2
- package/dist/ui.js +3 -3
- package/dist/vela.global.js +1374 -366
- package/dist/vela.global.min.js +84 -34
- package/dist/widget.cjs +3348 -550
- package/dist/widget.d.cts +65 -7
- package/dist/widget.d.ts +65 -7
- package/dist/widget.js +169 -18
- package/dist/workspace.cjs +4251 -1400
- package/dist/workspace.d.cts +45 -9
- package/dist/workspace.d.ts +45 -9
- package/dist/workspace.js +226 -22
- package/package.json +1 -1
package/dist/widget.d.cts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { W as WidgetContext, V as Vela, y as SidePanelButton } from './contributions-
|
|
2
|
-
export { ah as DEFAULT_PANEL_ORDER, z as SidePanelDescriptor, A as SidePanelHandle, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a8 as sidePanels, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-
|
|
3
|
-
import { b as VelaOptions, q as DataWindowReadout } from './options-
|
|
1
|
+
import { W as WidgetContext, V as Vela, y as SidePanelButton } from './contributions-Ci_i3IN2.cjs';
|
|
2
|
+
export { ah as DEFAULT_PANEL_ORDER, z as SidePanelDescriptor, A as SidePanelHandle, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a8 as sidePanels, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-Ci_i3IN2.cjs';
|
|
3
|
+
import { b as VelaOptions, q as DataWindowReadout } from './options-XTBpbx0s.cjs';
|
|
4
4
|
import { K as KeymapManager } from './keymap-CGOz5F5f.cjs';
|
|
5
|
-
import { W as WidgetHistory, b as VelaShellOptions, e as WorkspaceState, a as RangePreset, i as PersistedState, P as PanelsState } from './history-
|
|
6
|
-
export { B as Bottombar, j as BottombarOptions, C as CellState, f as ChartState, I as IndicatorLoader, k as IndicatorManifest, l as IndicatorManifestEntry, m as RANGE_PRESETS, R as ResolvedIndicator, V as VelaStorage, n as WidgetStorage, g as decodeState, h as encodeState, o as legacyWidgetState, p as loadPersisted, q as localStorageAdapter, r as parsePersisted, t as resolveIndicators, s as sanitizeState, u as savePersisted } from './history-
|
|
7
|
-
import { a as SymbolDescriptor } from './DataProvider-
|
|
5
|
+
import { W as WidgetHistory, b as VelaShellOptions, e as WorkspaceState, a as RangePreset, i as PersistedState, P as PanelsState } from './history-Cf1lVsap.cjs';
|
|
6
|
+
export { B as Bottombar, j as BottombarOptions, C as CellState, f as ChartState, I as IndicatorLoader, k as IndicatorManifest, l as IndicatorManifestEntry, m as RANGE_PRESETS, R as ResolvedIndicator, V as VelaStorage, n as WidgetStorage, g as decodeState, h as encodeState, o as legacyWidgetState, p as loadPersisted, q as localStorageAdapter, r as parsePersisted, t as resolveIndicators, s as sanitizeState, u as savePersisted } from './history-Cf1lVsap.cjs';
|
|
7
|
+
import { a as SymbolDescriptor } from './DataProvider-gnzv-dgc.cjs';
|
|
8
8
|
import { d as SidePanel } from './side-panel-CT9ZwIGz.cjs';
|
|
9
9
|
export { D as DEFAULT_PANEL_MAX_WIDTH, a as DEFAULT_PANEL_MIN_WIDTH, b as DEFAULT_PANEL_WIDTH, S as SidePanelOptions, c as clampPanelWidth } from './side-panel-CT9ZwIGz.cjs';
|
|
10
10
|
|
|
@@ -30,6 +30,7 @@ declare class VelaWidget {
|
|
|
30
30
|
private shortcutsHelp;
|
|
31
31
|
private readonly contextMenu;
|
|
32
32
|
private readonly symbolPicker;
|
|
33
|
+
/** Null when the host disabled it (`indicatorPicker: false`). */
|
|
33
34
|
private readonly indicatorPicker;
|
|
34
35
|
private readonly tfQuick;
|
|
35
36
|
private inner;
|
|
@@ -53,6 +54,8 @@ declare class VelaWidget {
|
|
|
53
54
|
private watermarkOn;
|
|
54
55
|
/** Indicator titles (the in-chart legend rows) shown — reapplied across rebuilds. */
|
|
55
56
|
private indicatorTitlesOn;
|
|
57
|
+
/** Plot values beside the legend titles shown — reapplied across rebuilds. */
|
|
58
|
+
private indicatorValuesOn;
|
|
56
59
|
private pendingRange;
|
|
57
60
|
/** Symbol already reported as unservable (the core re-reports on every index settle). */
|
|
58
61
|
private unresolvedToasted;
|
|
@@ -96,7 +99,30 @@ declare class VelaWidget {
|
|
|
96
99
|
private indicatorsPromise;
|
|
97
100
|
private destroyed;
|
|
98
101
|
private buildSeq;
|
|
102
|
+
/** The chrome size class — writes `data-layout` on the root (all mobile CSS keys
|
|
103
|
+
* off it) and pushes the mode into the renderer chrome on every change/rebuild. */
|
|
104
|
+
private layoutCtl;
|
|
105
|
+
private readonly mobileBar;
|
|
106
|
+
private readonly drawingPill;
|
|
107
|
+
private tfDrawer;
|
|
108
|
+
private drawingsDrawer;
|
|
109
|
+
private moreDrawer;
|
|
110
|
+
private timezoneDrawer;
|
|
111
|
+
private priceScaleDrawer;
|
|
112
|
+
/** Plot-local y of the last price-axis long-press (targets the pane under the finger). */
|
|
113
|
+
private priceScalePressY;
|
|
114
|
+
/** The active range chip id (both bottom bars + the timeframe drawer mirror it). */
|
|
115
|
+
private activeRangeId;
|
|
99
116
|
constructor(container: HTMLElement | string, opts: VelaWidgetOptions);
|
|
117
|
+
/** The mode flipped (container resized across the breakpoint, or a coarse-pointer
|
|
118
|
+
* change). Close the open surfaces — a desktop card must not linger over the
|
|
119
|
+
* mobile chrome (and vice versa) — and re-present the renderer's own chrome. */
|
|
120
|
+
private onLayoutModeChange;
|
|
121
|
+
private openTimeframeDrawer;
|
|
122
|
+
private openDrawingsDrawer;
|
|
123
|
+
private openMoreDrawer;
|
|
124
|
+
private openTimezoneDrawer;
|
|
125
|
+
private openPriceScaleDrawer;
|
|
100
126
|
/** Mount registered attachments not yet mounted on this widget (idempotent per id). */
|
|
101
127
|
private mountAttachments;
|
|
102
128
|
/** The context handed to contributed actions (see `registerWidgetAction`). */
|
|
@@ -158,6 +184,8 @@ declare class VelaWidget {
|
|
|
158
184
|
setWatermarkVisible(visible: boolean): void;
|
|
159
185
|
/** Show/hide the indicator titles — the in-chart legend rows (persisted). */
|
|
160
186
|
setIndicatorTitlesVisible(visible: boolean): void;
|
|
187
|
+
/** Show/hide the plot values beside every indicator's legend title (persisted). */
|
|
188
|
+
setIndicatorValuesVisible(visible: boolean): void;
|
|
161
189
|
/** Applied LIVE (renderer feature) — no rebuild; persists across rebuilds. */
|
|
162
190
|
setPriceStyle(style: string): void;
|
|
163
191
|
/** OHLC/change ink in the status line follows the ACTIVE price style's configured
|
|
@@ -275,6 +303,10 @@ declare class Topbar {
|
|
|
275
303
|
private readonly styleMenu;
|
|
276
304
|
private readonly tooltips;
|
|
277
305
|
private readonly actionsHost;
|
|
306
|
+
/** Left-aligned contributed actions (`align: 'left'`) — right after the dropdowns. */
|
|
307
|
+
private readonly leftActionsHost;
|
|
308
|
+
/** The hairline after the left cluster — hidden while the cluster is empty. */
|
|
309
|
+
private readonly leftActionsSep;
|
|
278
310
|
/** The side-panel toggle group — filled by the dock through {@link setPanelButtons}. */
|
|
279
311
|
private readonly panelsHost;
|
|
280
312
|
private undoBtn;
|
|
@@ -352,8 +384,22 @@ declare class Statusline {
|
|
|
352
384
|
private isUp;
|
|
353
385
|
/** 'ohlc' for bar-shaped styles; 'value' (the single plotted close) for line styles. */
|
|
354
386
|
private readout;
|
|
387
|
+
/** Fit mode (multi-chart cells): one row, overflowing segments hidden — see {@link setFitMode}. */
|
|
388
|
+
private fitMode;
|
|
389
|
+
private fitRO;
|
|
355
390
|
constructor(host: HTMLElement, symbol: string);
|
|
356
391
|
setSymbol(symbol: string): void;
|
|
392
|
+
/**
|
|
393
|
+
* Multi-chart cells: keep the line on ONE row whatever the cell width — never wrap.
|
|
394
|
+
* Segments that don't fit are hidden outright rather than clipped mid-glyph, least
|
|
395
|
+
* important first: OHLC, then the bar change, the venue/timeframe meta, and the
|
|
396
|
+
* market badge; the logo + ticker always stay. Re-fits live on host resizes.
|
|
397
|
+
*/
|
|
398
|
+
setFitMode(on: boolean): void;
|
|
399
|
+
/** Project the parts config onto the segments (the baseline fit() prunes from). */
|
|
400
|
+
private syncParts;
|
|
401
|
+
/** Hide overflowing segments until the row fits its max-width (fit mode only). */
|
|
402
|
+
private fit;
|
|
357
403
|
/** Shape + color the value readout after the active price style: its own up/down
|
|
358
404
|
* colors (candle bodies, bar ticks, the line color, …), the direction rule that
|
|
359
405
|
* picks between them (`isUp` replaces close-vs-open where the style paints by
|
|
@@ -384,8 +430,17 @@ declare class Watermark {
|
|
|
384
430
|
readonly el: HTMLElement;
|
|
385
431
|
private readonly text;
|
|
386
432
|
private readonly resizeObserver;
|
|
433
|
+
/** The host's visibility preference (the persisted watermark toggle). */
|
|
434
|
+
private shown;
|
|
435
|
+
/** A bar load is in flight with nothing painted — the loading affordance owns the
|
|
436
|
+
* canvas, so the mark stays out of its way. Starts true: the FIRST `load:start`
|
|
437
|
+
* fires during chart construction, before any subscriber can see it. */
|
|
438
|
+
private loading;
|
|
387
439
|
constructor(host: HTMLElement, symbol: string, timeframe: string);
|
|
388
440
|
setVisible(visible: boolean): void;
|
|
441
|
+
/** Loading and the watermark never share the canvas — hidden while a load is up. */
|
|
442
|
+
setLoading(loading: boolean): void;
|
|
443
|
+
private sync;
|
|
389
444
|
update(symbol: string, timeframe: string): void;
|
|
390
445
|
/** Measure the text at the cap and shrink it to the chart's own width. */
|
|
391
446
|
private fit;
|
|
@@ -533,6 +588,9 @@ declare class PanelDock {
|
|
|
533
588
|
toggle(id: string, open?: boolean): void;
|
|
534
589
|
/** The open panel's id, or null when the column is closed. */
|
|
535
590
|
get openId(): string | null;
|
|
591
|
+
/** The docked panels in dock order — what a non-topbar chrome (the mobile
|
|
592
|
+
* three-dots drawer) lists so every panel stays reachable there too. */
|
|
593
|
+
list(): ReadonlyArray<SidePanelButton>;
|
|
536
594
|
/** The dock's persistable state, or null when there is nothing worth saving. */
|
|
537
595
|
getState(): PanelsState | null;
|
|
538
596
|
/**
|
|
@@ -800,7 +858,7 @@ declare function normalizeTimezone(zone: string): string;
|
|
|
800
858
|
declare function tzOffset(zone: string, date?: Date): string;
|
|
801
859
|
/** Dropdown row label — UTC omits the offset prefix. */
|
|
802
860
|
declare function tzMenuLabel(zone: string, location: string): string;
|
|
803
|
-
/** Compact label for the bottom-bar button ("UTC", "UTC+2
|
|
861
|
+
/** Compact label for the bottom-bar button — just the offset ("UTC", "UTC+2", "UTC-9:30"). */
|
|
804
862
|
declare function tzButtonLabel(zone: string): string;
|
|
805
863
|
|
|
806
864
|
/** Sensible decimal count for a price magnitude (crypto-friendly). */
|
package/dist/widget.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { W as WidgetContext, V as Vela, y as SidePanelButton } from './contributions-
|
|
2
|
-
export { ah as DEFAULT_PANEL_ORDER, z as SidePanelDescriptor, A as SidePanelHandle, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a8 as sidePanels, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-
|
|
3
|
-
import { b as VelaOptions, q as DataWindowReadout } from './options-
|
|
1
|
+
import { W as WidgetContext, V as Vela, y as SidePanelButton } from './contributions-b6AVrqqG.js';
|
|
2
|
+
export { ah as DEFAULT_PANEL_ORDER, z as SidePanelDescriptor, A as SidePanelHandle, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a8 as sidePanels, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-b6AVrqqG.js';
|
|
3
|
+
import { b as VelaOptions, q as DataWindowReadout } from './options-XTBpbx0s.js';
|
|
4
4
|
import { K as KeymapManager } from './keymap-CGOz5F5f.js';
|
|
5
|
-
import { W as WidgetHistory, b as VelaShellOptions, e as WorkspaceState, a as RangePreset, i as PersistedState, P as PanelsState } from './history-
|
|
6
|
-
export { B as Bottombar, j as BottombarOptions, C as CellState, f as ChartState, I as IndicatorLoader, k as IndicatorManifest, l as IndicatorManifestEntry, m as RANGE_PRESETS, R as ResolvedIndicator, V as VelaStorage, n as WidgetStorage, g as decodeState, h as encodeState, o as legacyWidgetState, p as loadPersisted, q as localStorageAdapter, r as parsePersisted, t as resolveIndicators, s as sanitizeState, u as savePersisted } from './history-
|
|
7
|
-
import { a as SymbolDescriptor } from './DataProvider-
|
|
5
|
+
import { W as WidgetHistory, b as VelaShellOptions, e as WorkspaceState, a as RangePreset, i as PersistedState, P as PanelsState } from './history-Ci3M0xLV.js';
|
|
6
|
+
export { B as Bottombar, j as BottombarOptions, C as CellState, f as ChartState, I as IndicatorLoader, k as IndicatorManifest, l as IndicatorManifestEntry, m as RANGE_PRESETS, R as ResolvedIndicator, V as VelaStorage, n as WidgetStorage, g as decodeState, h as encodeState, o as legacyWidgetState, p as loadPersisted, q as localStorageAdapter, r as parsePersisted, t as resolveIndicators, s as sanitizeState, u as savePersisted } from './history-Ci3M0xLV.js';
|
|
7
|
+
import { a as SymbolDescriptor } from './DataProvider-DTOEXKTI.js';
|
|
8
8
|
import { d as SidePanel } from './side-panel-CT9ZwIGz.js';
|
|
9
9
|
export { D as DEFAULT_PANEL_MAX_WIDTH, a as DEFAULT_PANEL_MIN_WIDTH, b as DEFAULT_PANEL_WIDTH, S as SidePanelOptions, c as clampPanelWidth } from './side-panel-CT9ZwIGz.js';
|
|
10
10
|
|
|
@@ -30,6 +30,7 @@ declare class VelaWidget {
|
|
|
30
30
|
private shortcutsHelp;
|
|
31
31
|
private readonly contextMenu;
|
|
32
32
|
private readonly symbolPicker;
|
|
33
|
+
/** Null when the host disabled it (`indicatorPicker: false`). */
|
|
33
34
|
private readonly indicatorPicker;
|
|
34
35
|
private readonly tfQuick;
|
|
35
36
|
private inner;
|
|
@@ -53,6 +54,8 @@ declare class VelaWidget {
|
|
|
53
54
|
private watermarkOn;
|
|
54
55
|
/** Indicator titles (the in-chart legend rows) shown — reapplied across rebuilds. */
|
|
55
56
|
private indicatorTitlesOn;
|
|
57
|
+
/** Plot values beside the legend titles shown — reapplied across rebuilds. */
|
|
58
|
+
private indicatorValuesOn;
|
|
56
59
|
private pendingRange;
|
|
57
60
|
/** Symbol already reported as unservable (the core re-reports on every index settle). */
|
|
58
61
|
private unresolvedToasted;
|
|
@@ -96,7 +99,30 @@ declare class VelaWidget {
|
|
|
96
99
|
private indicatorsPromise;
|
|
97
100
|
private destroyed;
|
|
98
101
|
private buildSeq;
|
|
102
|
+
/** The chrome size class — writes `data-layout` on the root (all mobile CSS keys
|
|
103
|
+
* off it) and pushes the mode into the renderer chrome on every change/rebuild. */
|
|
104
|
+
private layoutCtl;
|
|
105
|
+
private readonly mobileBar;
|
|
106
|
+
private readonly drawingPill;
|
|
107
|
+
private tfDrawer;
|
|
108
|
+
private drawingsDrawer;
|
|
109
|
+
private moreDrawer;
|
|
110
|
+
private timezoneDrawer;
|
|
111
|
+
private priceScaleDrawer;
|
|
112
|
+
/** Plot-local y of the last price-axis long-press (targets the pane under the finger). */
|
|
113
|
+
private priceScalePressY;
|
|
114
|
+
/** The active range chip id (both bottom bars + the timeframe drawer mirror it). */
|
|
115
|
+
private activeRangeId;
|
|
99
116
|
constructor(container: HTMLElement | string, opts: VelaWidgetOptions);
|
|
117
|
+
/** The mode flipped (container resized across the breakpoint, or a coarse-pointer
|
|
118
|
+
* change). Close the open surfaces — a desktop card must not linger over the
|
|
119
|
+
* mobile chrome (and vice versa) — and re-present the renderer's own chrome. */
|
|
120
|
+
private onLayoutModeChange;
|
|
121
|
+
private openTimeframeDrawer;
|
|
122
|
+
private openDrawingsDrawer;
|
|
123
|
+
private openMoreDrawer;
|
|
124
|
+
private openTimezoneDrawer;
|
|
125
|
+
private openPriceScaleDrawer;
|
|
100
126
|
/** Mount registered attachments not yet mounted on this widget (idempotent per id). */
|
|
101
127
|
private mountAttachments;
|
|
102
128
|
/** The context handed to contributed actions (see `registerWidgetAction`). */
|
|
@@ -158,6 +184,8 @@ declare class VelaWidget {
|
|
|
158
184
|
setWatermarkVisible(visible: boolean): void;
|
|
159
185
|
/** Show/hide the indicator titles — the in-chart legend rows (persisted). */
|
|
160
186
|
setIndicatorTitlesVisible(visible: boolean): void;
|
|
187
|
+
/** Show/hide the plot values beside every indicator's legend title (persisted). */
|
|
188
|
+
setIndicatorValuesVisible(visible: boolean): void;
|
|
161
189
|
/** Applied LIVE (renderer feature) — no rebuild; persists across rebuilds. */
|
|
162
190
|
setPriceStyle(style: string): void;
|
|
163
191
|
/** OHLC/change ink in the status line follows the ACTIVE price style's configured
|
|
@@ -275,6 +303,10 @@ declare class Topbar {
|
|
|
275
303
|
private readonly styleMenu;
|
|
276
304
|
private readonly tooltips;
|
|
277
305
|
private readonly actionsHost;
|
|
306
|
+
/** Left-aligned contributed actions (`align: 'left'`) — right after the dropdowns. */
|
|
307
|
+
private readonly leftActionsHost;
|
|
308
|
+
/** The hairline after the left cluster — hidden while the cluster is empty. */
|
|
309
|
+
private readonly leftActionsSep;
|
|
278
310
|
/** The side-panel toggle group — filled by the dock through {@link setPanelButtons}. */
|
|
279
311
|
private readonly panelsHost;
|
|
280
312
|
private undoBtn;
|
|
@@ -352,8 +384,22 @@ declare class Statusline {
|
|
|
352
384
|
private isUp;
|
|
353
385
|
/** 'ohlc' for bar-shaped styles; 'value' (the single plotted close) for line styles. */
|
|
354
386
|
private readout;
|
|
387
|
+
/** Fit mode (multi-chart cells): one row, overflowing segments hidden — see {@link setFitMode}. */
|
|
388
|
+
private fitMode;
|
|
389
|
+
private fitRO;
|
|
355
390
|
constructor(host: HTMLElement, symbol: string);
|
|
356
391
|
setSymbol(symbol: string): void;
|
|
392
|
+
/**
|
|
393
|
+
* Multi-chart cells: keep the line on ONE row whatever the cell width — never wrap.
|
|
394
|
+
* Segments that don't fit are hidden outright rather than clipped mid-glyph, least
|
|
395
|
+
* important first: OHLC, then the bar change, the venue/timeframe meta, and the
|
|
396
|
+
* market badge; the logo + ticker always stay. Re-fits live on host resizes.
|
|
397
|
+
*/
|
|
398
|
+
setFitMode(on: boolean): void;
|
|
399
|
+
/** Project the parts config onto the segments (the baseline fit() prunes from). */
|
|
400
|
+
private syncParts;
|
|
401
|
+
/** Hide overflowing segments until the row fits its max-width (fit mode only). */
|
|
402
|
+
private fit;
|
|
357
403
|
/** Shape + color the value readout after the active price style: its own up/down
|
|
358
404
|
* colors (candle bodies, bar ticks, the line color, …), the direction rule that
|
|
359
405
|
* picks between them (`isUp` replaces close-vs-open where the style paints by
|
|
@@ -384,8 +430,17 @@ declare class Watermark {
|
|
|
384
430
|
readonly el: HTMLElement;
|
|
385
431
|
private readonly text;
|
|
386
432
|
private readonly resizeObserver;
|
|
433
|
+
/** The host's visibility preference (the persisted watermark toggle). */
|
|
434
|
+
private shown;
|
|
435
|
+
/** A bar load is in flight with nothing painted — the loading affordance owns the
|
|
436
|
+
* canvas, so the mark stays out of its way. Starts true: the FIRST `load:start`
|
|
437
|
+
* fires during chart construction, before any subscriber can see it. */
|
|
438
|
+
private loading;
|
|
387
439
|
constructor(host: HTMLElement, symbol: string, timeframe: string);
|
|
388
440
|
setVisible(visible: boolean): void;
|
|
441
|
+
/** Loading and the watermark never share the canvas — hidden while a load is up. */
|
|
442
|
+
setLoading(loading: boolean): void;
|
|
443
|
+
private sync;
|
|
389
444
|
update(symbol: string, timeframe: string): void;
|
|
390
445
|
/** Measure the text at the cap and shrink it to the chart's own width. */
|
|
391
446
|
private fit;
|
|
@@ -533,6 +588,9 @@ declare class PanelDock {
|
|
|
533
588
|
toggle(id: string, open?: boolean): void;
|
|
534
589
|
/** The open panel's id, or null when the column is closed. */
|
|
535
590
|
get openId(): string | null;
|
|
591
|
+
/** The docked panels in dock order — what a non-topbar chrome (the mobile
|
|
592
|
+
* three-dots drawer) lists so every panel stays reachable there too. */
|
|
593
|
+
list(): ReadonlyArray<SidePanelButton>;
|
|
536
594
|
/** The dock's persistable state, or null when there is nothing worth saving. */
|
|
537
595
|
getState(): PanelsState | null;
|
|
538
596
|
/**
|
|
@@ -800,7 +858,7 @@ declare function normalizeTimezone(zone: string): string;
|
|
|
800
858
|
declare function tzOffset(zone: string, date?: Date): string;
|
|
801
859
|
/** Dropdown row label — UTC omits the offset prefix. */
|
|
802
860
|
declare function tzMenuLabel(zone: string, location: string): string;
|
|
803
|
-
/** Compact label for the bottom-bar button ("UTC", "UTC+2
|
|
861
|
+
/** Compact label for the bottom-bar button — just the offset ("UTC", "UTC+2", "UTC-9:30"). */
|
|
804
862
|
declare function tzButtonLabel(zone: string): string;
|
|
805
863
|
|
|
806
864
|
/** Sensible decimal count for a price magnitude (crypto-friendly). */
|