@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.
Files changed (45) hide show
  1. package/dist/{DataProvider-DGesjOJT.d.ts → DataProvider-DTOEXKTI.d.ts} +1 -1
  2. package/dist/{DataProvider-BBQ3Hr21.d.cts → DataProvider-gnzv-dgc.d.cts} +1 -1
  3. package/dist/{chunk-ULIX6AE2.js → chunk-ATPU5CI6.js} +1 -1
  4. package/dist/{chunk-S6F6SQ2L.js → chunk-B5TIKQJ5.js} +60 -7
  5. package/dist/{chunk-EP6NDJYK.js → chunk-LJLZR44Y.js} +4 -2
  6. package/dist/{chunk-AIW3EJUE.js → chunk-P556H6EA.js} +329 -10
  7. package/dist/{chunk-FNOMKHEZ.js → chunk-RRFGWZNJ.js} +1321 -363
  8. package/dist/{chunk-5SE4PL3H.js → chunk-Y7TK4ZWK.js} +1363 -48
  9. package/dist/{contributions-BlV3kb0O.d.cts → contributions-Ci_i3IN2.d.cts} +33 -2
  10. package/dist/{contributions-6N0rbrPC.d.ts → contributions-b6AVrqqG.d.ts} +33 -2
  11. package/dist/{history-DX3Zne3a.d.cts → history-Cf1lVsap.d.cts} +15 -3
  12. package/dist/{history-BTd52YMA.d.ts → history-Ci3M0xLV.d.ts} +15 -3
  13. package/dist/index.cjs +1374 -366
  14. package/dist/index.d.cts +52 -19
  15. package/dist/index.d.ts +52 -19
  16. package/dist/index.js +4 -4
  17. package/dist/{options-DbQholFV.d.cts → options-XTBpbx0s.d.cts} +47 -1
  18. package/dist/{options-DbQholFV.d.ts → options-XTBpbx0s.d.ts} +47 -1
  19. package/dist/{plugin-TN3n-9YN.d.ts → plugin-CnNd7cuF.d.ts} +172 -25
  20. package/dist/{plugin-O34MbXf-.d.cts → plugin-DfH4Y-Om.d.cts} +172 -25
  21. package/dist/plugin.cjs +53 -7
  22. package/dist/plugin.d.cts +4 -4
  23. package/dist/plugin.d.ts +4 -4
  24. package/dist/plugin.js +2 -2
  25. package/dist/providers/binance.d.cts +2 -2
  26. package/dist/providers/binance.d.ts +2 -2
  27. package/dist/providers/coinbase.d.cts +2 -2
  28. package/dist/providers/coinbase.d.ts +2 -2
  29. package/dist/providers/hyperliquid.d.cts +2 -2
  30. package/dist/providers/hyperliquid.d.ts +2 -2
  31. package/dist/ui.cjs +332 -9
  32. package/dist/ui.d.cts +64 -2
  33. package/dist/ui.d.ts +64 -2
  34. package/dist/ui.js +3 -3
  35. package/dist/vela.global.js +1374 -366
  36. package/dist/vela.global.min.js +84 -34
  37. package/dist/widget.cjs +3348 -550
  38. package/dist/widget.d.cts +65 -7
  39. package/dist/widget.d.ts +65 -7
  40. package/dist/widget.js +169 -18
  41. package/dist/workspace.cjs +4251 -1400
  42. package/dist/workspace.d.cts +45 -9
  43. package/dist/workspace.d.ts +45 -9
  44. package/dist/workspace.js +226 -22
  45. package/package.json +1 -1
package/dist/index.d.cts CHANGED
@@ -1,9 +1,9 @@
1
- import { D as DrawingsDocument, R as Resolved } from './contributions-BlV3kb0O.cjs';
2
- export { B as BarsChangeReason, C as ContextSelect, b as DataControl, c as DrawingsControl, E as EngineAlert, d as EngineCapabilities, e as EngineContextSnapshot, f as EngineFactory, g as EngineWarning, h as ExecutionHandlers, i as ExecutionMarket, j as ExecutionRequest, k as ExecutionSession, F as FetchSeries, l as IndicatorEventMap, I as IndicatorHandle, m as IndicatorSummary, L as LegendActionDescriptor, n as LegendIndicatorInfo, N as NativeIndicator, o as NativeIndicatorContext, p as NativeIndicatorDescriptor, q as NativeIndicatorInfo, r as NativeIndicatorOutput, P as ParsedSymbol, s as PreparedScript, t as RendererControl, u as RunIndicatorResult, v as SceneInspection, a as ScriptRun, w as ScriptRunCause, x as ScriptRunResult, S as ScriptingEngine, y as SidePanelButton, z as SidePanelDescriptor, A as SidePanelHandle, G as SidePanelHeader, H as StrategyFill, J as StrategyState, K as StrategyTrade, T as TypedEventBus, V as Vela, M as VelaDeps, O as VelaEventMap, Q as VisibleBarRange, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, W as WidgetContext, Z as getNativeIndicator, _ as legendActions, $ as nativeIndicatorDescriptors, a0 as nativeIndicatorTypes, a1 as registerDefaultEngine, a2 as registerLegendAction, a3 as registerNativeIndicator, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a7 as resolveEngines, a8 as sidePanels, a9 as unregisterDefaultEngine, aa as unregisterLegendAction, ab as unregisterNativeIndicator, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-BlV3kb0O.cjs';
3
- import { D as Drawing, S as SerializedDrawing, U as Unsubscribe, L as LineStyle, P as PriceStyle, I as IChartRenderer, R as RendererCapabilities, d as RendererDisplayOptions, e as IndicatorRenderHandle, f as IndicatorStatus, c as VelaTheme, O as OHLCV, g as Pane, h as PaneAction, i as MoveTarget, j as IndicatorModel, k as ScenePatch, l as InputValue, m as SymbolPickerFn, n as LegendActionView, o as InputChangeEvent, T as ThemeName, C as CrosshairEvent, p as ClickEvent, a as VisibleRange, q as DataWindowReadout, r as IDrawingsRendererPort, s as Millis, t as SnapMode, u as DrawingTypeKey, v as ToolbarDefinition, M as MarketConfig } from './options-DbQholFV.cjs';
4
- export { A as AddIndicatorOptions, B as Background, w as BoxFontFamily, x as BoxHAlign, y as BoxTextSize, z as BoxVAlign, E as CandleBarColor, F as CandleSeries, G as CandleStyle, H as DataWindowGroup, J as DataWindowOHLC, K as DataWindowRow, Q as DirtyRange, W as DrawingBox, X as DrawingExtend, Y as DrawingIntent, Z as DrawingLabel, _ as DrawingLine, $ as DrawingLinefill, a0 as DrawingMode, a1 as DrawingPoint, a2 as DrawingPolyline, a3 as DrawingStyle, a4 as DrawingTable, a5 as DrawingText, a6 as DrawingXLoc, a7 as DrawingsOption, a8 as Fill, a9 as FillGradientStop, aa as IndicatorMeta, ab as InputSchema, ac as InputType, ad as LabelStyle, ae as LabelYLoc, af as LineLikeKind, ag as LineLikeSeries, ah as LineLikeStyle, ai as MarkerPoint, aj as MarkerSeries, ak as MarketSnapshot, al as MarketSwitch, am as PaneHint, an as PaneKind, ao as PolylinePoint, ap as PriceLine, aq as Projector, ar as ProviderName, as as RendererConstructor, at as Scene, au as SchemaPatch, av as SeriesKind, aw as SeriesPoint, ax as SeriesSpec, ay as SeriesValueDelta, az as SettingsField, aA as SettingsSchema, aB as TableCell, aC as TableMerge, aD as TablePosition, aE as ToolbarGroupConfig, aF as TradeExecution, aG as ValuePatch, b as VelaOptions, V as VisibleRangePreset, aH as buildToolbar, aI as defaultToolbar } from './options-DbQholFV.cjs';
5
- import { M as MarketDataFeed, D as DataProvider, P as ProviderInfo, a as SymbolDescriptor, S as SymbolInfo, b as ProviderCapabilities, B as BarRange } from './DataProvider-BBQ3Hr21.cjs';
6
- export { A as ACCENT, a as ACCENT_BRIGHT, B as BEARISH, b as BULLISH, c as BarTransform, d as BasePaintingModulation, C as CATEGORICAL, e as CROSSHAIR, f as ChartTypeDefinition, g as ChartTypeSettingsInstance, h as ChartTypeSettingsSection, i as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, j as INVALID, k as IdentifiableKind, M as MARKER, N as NEUTRAL, R as RendererLayerArgs, l as RendererLayerDefinition, m as RendererLayerInstance, S as SERIES_LINE, n as SESSION_OFF, o as SESSION_POST, p as SESSION_PRE, q as SLATE, r as SLATE_DEEP, s as SeriesDataEngine, t as SeriesDataEngineHost, u as SettingsRowCondition, v as SettingsRowDescriptor, w as SettingsRowSwatch, x as SettingsRowWhen, y as SettingsSelectOption, T as TRADE_EXIT, z as TRADE_LONG, E as TRADE_SHORT, V as VALID, W as WARNING, F as categoricalColor, G as chartType, J as chartTypes, K as createDrawing, L as deserializeDrawing, O as drawingTypes, P as getDrawingType, Q as registerChartType, U as registerDrawingType, X as registerRendererDefaults, Y as registerRendererLayer, Z as rendererDefaults, _ as rendererLayers, $ as stableSeriesId, a0 as tickerModifierIds, a1 as unregisterChartType, a2 as unregisterRendererDefaults, a3 as unregisterRendererLayer } from './plugin-O34MbXf-.cjs';
1
+ import { D as DrawingsDocument, R as Resolved } from './contributions-Ci_i3IN2.cjs';
2
+ export { B as BarsChangeReason, C as ContextSelect, b as DataControl, c as DrawingsControl, E as EngineAlert, d as EngineCapabilities, e as EngineContextSnapshot, f as EngineFactory, g as EngineWarning, h as ExecutionHandlers, i as ExecutionMarket, j as ExecutionRequest, k as ExecutionSession, F as FetchSeries, l as IndicatorEventMap, I as IndicatorHandle, m as IndicatorSummary, L as LegendActionDescriptor, n as LegendIndicatorInfo, N as NativeIndicator, o as NativeIndicatorContext, p as NativeIndicatorDescriptor, q as NativeIndicatorInfo, r as NativeIndicatorOutput, P as ParsedSymbol, s as PreparedScript, t as RendererControl, u as RunIndicatorResult, v as SceneInspection, a as ScriptRun, w as ScriptRunCause, x as ScriptRunResult, S as ScriptingEngine, y as SidePanelButton, z as SidePanelDescriptor, A as SidePanelHandle, G as SidePanelHeader, H as StrategyFill, J as StrategyState, K as StrategyTrade, T as TypedEventBus, V as Vela, M as VelaDeps, O as VelaEventMap, Q as VisibleBarRange, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, W as WidgetContext, Z as getNativeIndicator, _ as legendActions, $ as nativeIndicatorDescriptors, a0 as nativeIndicatorTypes, a1 as registerDefaultEngine, a2 as registerLegendAction, a3 as registerNativeIndicator, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a7 as resolveEngines, a8 as sidePanels, a9 as unregisterDefaultEngine, aa as unregisterLegendAction, ab as unregisterNativeIndicator, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-Ci_i3IN2.cjs';
3
+ import { D as Drawing, S as SerializedDrawing, U as Unsubscribe, L as LineStyle, P as PriceStyle, I as IChartRenderer, R as RendererCapabilities, d as RendererDisplayOptions, e as IndicatorRenderHandle, f as IndicatorStatus, c as VelaTheme, O as OHLCV, g as Pane, h as PaneAction, i as MoveTarget, j as IndicatorModel, k as ScenePatch, l as InputValue, m as SymbolPickerFn, n as LegendActionView, o as InputChangeEvent, T as ThemeName, C as CrosshairEvent, p as ClickEvent, A as AxisLongPressEvent, a as VisibleRange, q as DataWindowReadout, r as IDrawingsRendererPort, s as Millis, t as SnapMode, u as DrawingTypeKey, v as ToolbarDefinition, M as MarketConfig } from './options-XTBpbx0s.cjs';
4
+ export { w as AddIndicatorOptions, B as Background, x as BoxFontFamily, y as BoxHAlign, z as BoxTextSize, E as BoxVAlign, F as CandleBarColor, G as CandleSeries, H as CandleStyle, J as DataWindowGroup, K as DataWindowOHLC, Q as DataWindowRow, W as DirtyRange, X as DrawingBox, Y as DrawingExtend, Z as DrawingIntent, _ as DrawingLabel, $ as DrawingLine, a0 as DrawingLinefill, a1 as DrawingMode, a2 as DrawingPoint, a3 as DrawingPolyline, a4 as DrawingStyle, a5 as DrawingTable, a6 as DrawingText, a7 as DrawingXLoc, a8 as DrawingsOption, a9 as Fill, aa as FillGradientStop, ab as IndicatorMeta, ac as InputSchema, ad as InputType, ae as LabelStyle, af as LabelYLoc, ag as LineLikeKind, ah as LineLikeSeries, ai as LineLikeStyle, aj as MarkerPoint, ak as MarkerSeries, al as MarketSnapshot, am as MarketSwitch, an as PaneHint, ao as PaneKind, ap as PolylinePoint, aq as PriceLine, ar as Projector, as as ProviderName, at as RendererConstructor, au as Scene, av as SchemaPatch, aw as SeriesKind, ax as SeriesPoint, ay as SeriesSpec, az as SeriesValueDelta, aA as SettingsField, aB as SettingsSchema, aC as TableCell, aD as TableMerge, aE as TablePosition, aF as ToolbarGroupConfig, aG as TradeExecution, aH as ValuePatch, b as VelaOptions, V as VisibleRangePreset, aI as buildToolbar, aJ as defaultToolbar } from './options-XTBpbx0s.cjs';
5
+ import { M as MarketDataFeed, D as DataProvider, P as ProviderInfo, a as SymbolDescriptor, S as SymbolInfo, b as ProviderCapabilities, B as BarRange } from './DataProvider-gnzv-dgc.cjs';
6
+ export { A as ACCENT, a as ACCENT_BRIGHT, B as BEARISH, b as BULLISH, c as BarTransform, d as BasePaintingModulation, C as CATEGORICAL, e as CROSSHAIR, f as ChartTypeDefinition, g as ChartTypeSettingsInstance, h as ChartTypeSettingsSection, i as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, j as INVALID, k as IdentifiableKind, M as MARKER, N as NEUTRAL, l as NormalizedSettingsRow, R as RendererLayerArgs, m as RendererLayerDefinition, n as RendererLayerInstance, S as SERIES_LINE, o as SESSION_OFF, p as SESSION_POST, q as SESSION_PRE, r as SLATE, s as SLATE_DEEP, t as SeriesDataEngine, u as SeriesDataEngineHost, v as SettingsInlineControl, w as SettingsRowCondition, x as SettingsRowDescriptor, y as SettingsRowInlineNumber, z as SettingsRowSwatch, E as SettingsRowValueKey, F as SettingsRowWhen, G as SettingsRowWidth, J as SettingsSelectOption, K as SettingsValueRow, T as TRADE_EXIT, L as TRADE_LONG, O as TRADE_SHORT, V as VALID, W as WARNING, P as categoricalColor, Q as chartType, U as chartTypes, X as createDrawing, Y as deserializeDrawing, Z as drawingTypes, _ as getDrawingType, $ as normalizeSettingsRow, a0 as registerChartType, a1 as registerDrawingType, a2 as registerRendererDefaults, a3 as registerRendererLayer, a4 as rendererDefaults, a5 as rendererLayers, a6 as settingsRowValueKeys, a7 as stableSeriesId, a8 as tickerModifierIds, a9 as unregisterChartType, aa as unregisterRendererDefaults, ab as unregisterRendererLayer } from './plugin-DfH4Y-Om.cjs';
7
7
  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';
8
8
  export { i as iconMarkup, r as registerIcon } from './icons-BZYbJXSV.cjs';
9
9
  export { a as KeyBindingDescriptor, R as ResolvedBinding } from './keymap-CGOz5F5f.cjs';
@@ -346,8 +346,12 @@ declare class NativeRenderer implements IChartRenderer {
346
346
  private symbolPicker;
347
347
  /** Indicator titles (the legend rows) shown — held here so a remount re-applies it. */
348
348
  private indicatorTitlesOn;
349
+ /** Plot values beside the legend titles shown — held here so a remount re-applies it. */
350
+ private indicatorValuesOn;
349
351
  /** Host-contributed legend actions — held here so a rebuild of the legend re-wires them. */
350
352
  private legendActionsProvider;
353
+ /** Host override of the legend's fold toggle — held here so a remount re-applies it. */
354
+ private legendOverviewAction;
351
355
  private keyboard;
352
356
  private keyboardEnabled;
353
357
  /** Drawings layer self-serves Ctrl+Z/Y (see the `historyChords` feature). */
@@ -412,6 +416,7 @@ declare class NativeRenderer implements IChartRenderer {
412
416
  private scrollTargetRO;
413
417
  private scrollBtnBottomPx;
414
418
  private scrollBtnRightPx;
419
+ private layoutMode;
415
420
  private readonly viewportCbs;
416
421
  private readonly crosshairCbs;
417
422
  private readonly chartTypeSettingsCbs;
@@ -422,6 +427,7 @@ declare class NativeRenderer implements IChartRenderer {
422
427
  private factoryConfig;
423
428
  private hostSettingsSections;
424
429
  private readonly clickCbs;
430
+ private readonly axisLongPressCbs;
425
431
  private readonly inputChangeCbs;
426
432
  private readonly removeIndicatorCbs;
427
433
  private readonly toggleVisibleCbs;
@@ -500,7 +506,10 @@ declare class NativeRenderer implements IChartRenderer {
500
506
  * so moving onto the button doesn't count as leaving). */
501
507
  private readonly onScrollProximityMove;
502
508
  private readonly onScrollProximityLeave;
503
- /** Show the button only when the latest bar is scrolled off the right edge AND the cursor is nearby. */
509
+ /** Show the button only when the latest bar is scrolled off the right edge. On desktop the
510
+ * cursor must also be nearby (hover reveal); on mobile — no hovering cursor — the button
511
+ * appears whenever the latest bars are off-screen and hides again once the view is back
512
+ * at the right edge. */
504
513
  private updateScrollToRealtimeButton;
505
514
  /** Glide the view back to the most recent bars, keeping the current zoom (barSpacing). */
506
515
  private scrollToRealtime;
@@ -508,17 +517,20 @@ declare class NativeRenderer implements IChartRenderer {
508
517
  * instant when pan animation is off. Shared by scroll-to-latest and panBy. */
509
518
  private glideRightOffset;
510
519
  /**
511
- * Export the current chart as a PNG data URL by compositing the geometry (L0)
512
- * + chrome (L1) + user-drawings (L1.5) canvases onto an offscreen canvas. The
513
- * background is filled first (the canvas2d data layer is transparent — its bg
514
- * lives on the wrapper), and a fresh synchronous paint runs first so the WebGL2
515
- * backend's (non-preserved) drawing buffer is populated before it's read back
516
- * this tick the same paint also repaints the drawings layers, so they're
517
- * current (interleaved drawings are already inside the data composite). They're
518
- * drawn bottom-up in DOM stacking order so the front user drawings (trend lines,
519
- * boxes, etc.) sit above the Pine drawings on the chrome layer, matching what's
520
- * on screen. The crosshair (L2) and DOM overlays (tables, legend) are
521
- * intentionally excluded.
520
+ * Export the current chart as a PNG data URL by compositing EVERY plot canvas onto
521
+ * an offscreen canvas, in the same stacking order the DOM shows: plugin layers
522
+ * below the data, geometry (L0), volume columns (L0.25), the visible-range volume
523
+ * profile (L0.6), plugin layers above the data, chrome (L1), and user drawings
524
+ * (L1.5). The background is filled first (the canvas2d data layer is transparent —
525
+ * its bg lives on the wrapper), and a fresh synchronous paint runs first so the
526
+ * WebGL2 backend's (non-preserved) drawing buffer is populated before it's read
527
+ * back this tick the same paint also repaints the drawings layers, so they're
528
+ * current. DOM chrome joins as a best-effort text/chip raster (see
529
+ * `rasterizeOverlay`): the per-pane indicator legends, plus any host overlay that
530
+ * opts in with a `data-vela-screenshot` attribute on the mount container's
531
+ * subtree (the widget marks its status line, and its symbol watermark with
532
+ * `"under"` — drawn beneath the canvases, where it sits on screen). Only the
533
+ * crosshair (L2) is intentionally excluded.
522
534
  */
523
535
  screenshot(): string | null;
524
536
  /**
@@ -616,6 +628,8 @@ declare class NativeRenderer implements IChartRenderer {
616
628
  setIndicatorInputs(handle: IndicatorRenderHandle, values: Record<string, InputValue>): void;
617
629
  setSymbolPicker(picker: SymbolPickerFn | null): void;
618
630
  setLegendActions(provider: ((indicatorId: string) => LegendActionView[]) | null): void;
631
+ setLegendOverviewAction(action: (() => void) | null): void;
632
+ openIndicatorSettings(indicatorId: string): void;
619
633
  /**
620
634
  * Hide/show a mounted indicator. Hiding drops its model from the scene (so every paint path —
621
635
  * series, fills, drawings, tables, glow, data window — skips it) while keeping its z key and its
@@ -634,12 +648,18 @@ declare class NativeRenderer implements IChartRenderer {
634
648
  */
635
649
  private setPriceStyle;
636
650
  onRemoveIndicator(cb: (id: string) => void): Unsubscribe;
651
+ /** Port surface: the host shell's chrome size class. Mobile switches the renderer
652
+ * chrome to its touch-first presentation — fullscreen dialogs, no docked drawing
653
+ * toolbar (the shell provides its own picker), the scroll-to-latest button shown
654
+ * whenever the latest bars are off-screen (touch has no cursor proximity). */
655
+ setLayoutMode(mode: 'mobile' | 'desktop'): void;
637
656
  setSettingsSections(sections: HostSettingsSection[]): void;
638
657
  onChartTypeSettingsChange(cb: (typeId: string, values: Record<string, unknown>) => void): Unsubscribe;
639
658
  onConfigChanged(cb: () => void): Unsubscribe;
640
659
  onThemeSelect(cb: (theme: ThemeName) => void): Unsubscribe;
641
660
  onCrosshairMove(cb: (e: CrosshairEvent) => void): Unsubscribe;
642
661
  onClick(cb: (e: ClickEvent) => void): Unsubscribe;
662
+ onAxisLongPress(cb: (e: AxisLongPressEvent) => void): Unsubscribe;
643
663
  onViewportChange(cb: (range: VisibleRange) => void): Unsubscribe;
644
664
  getVisibleRange(): VisibleRange | null;
645
665
  setVisibleRange(range: VisibleRange): void;
@@ -677,6 +697,9 @@ declare class NativeRenderer implements IChartRenderer {
677
697
  private paneAtY;
678
698
  /** The pane node whose vertical bounds contain `y` (linear scan; panes don't overlap). */
679
699
  private paneNodeAtY;
700
+ /** The pane whose bounds sit closest to `y` — the forgiving fallback for points that
701
+ * fall BETWEEN bounds (separator gaps, the strip under the last pane). */
702
+ private nearestPaneToY;
680
703
  /** The scale window a gesture targets: a pane's master scale, or a merged indicator's
681
704
  * own scale column (resolved from the grabbed x). Both share the four scale fields. */
682
705
  private resolveScaleHolder;
@@ -744,6 +767,16 @@ declare class NativeRenderer implements IChartRenderer {
744
767
  private dataWindowOHLC;
745
768
  /** One group per indicator (name = indicator title), each with a row per drawable plot. */
746
769
  private dataWindowGroups;
770
+ /** One indicator's readout at bar `idx`: a row per drawable plot, formatted on its pane's scale. */
771
+ private dataWindowRowsFor;
772
+ /** The volume indicator's readout: the bar's volume, tinted with the layer's own direction
773
+ * colors. Hiding volume keeps its model in the scene (only the layer is suppressed — see
774
+ * `setIndicatorVisible`), so the hidden flag is checked here rather than by model absence. */
775
+ private volumeReadoutRows;
776
+ /** Refresh the plot values beside every legend title — the same readout the data window
777
+ * shows (crosshair bar, else the latest bar), pushed per paint. A hidden indicator has
778
+ * no scene model, so its row is absent from the map and its readout clears. */
779
+ private updateLegendValues;
747
780
  private renderFrame;
748
781
  /** Repaint the SDK layers that opted into cursor tracking (their own canvas only). */
749
782
  private repaintCursorLayers;
@@ -1211,4 +1244,4 @@ declare const DARK_THEME: VelaTheme;
1211
1244
  declare const LIGHT_THEME: VelaTheme;
1212
1245
  declare function resolveTheme(theme?: ThemeName | VelaTheme): VelaTheme;
1213
1246
 
1214
- export { BarRange, BarStore, CachingDataFeed, type ChartConfig, type ChartStyle, ClickEvent, CrosshairEvent, DARK_THEME, DataProvider, DataWindowReadout, Drawing, DrawingStore, DrawingToolbar, type DrawingToolbarOptions, DrawingTypeKey, DrawingsDocument, IChartRenderer, IDrawingsRendererPort, IndicatorModel, IndicatorRenderHandle, InputChangeEvent, InputValue, LIGHT_THEME, LineStyle, MarketConfig, MarketDataFeed, Millis, MultiProviderFeed, NativeRenderer, OHLCV, Pane, PriceStyle, ProviderCapabilities, ProviderInfo, RendererCapabilities, RendererDisplayOptions, Resolved, ScenePatch, SerializedDrawing, SnapMode, SymbolDescriptor, SymbolInfo, ThemeName, ToolbarDefinition, VelaTheme, VisibleRange, resolveTheme, sharedBarStore, timeframeToMs };
1247
+ export { AxisLongPressEvent, BarRange, BarStore, CachingDataFeed, type ChartConfig, type ChartStyle, ClickEvent, CrosshairEvent, DARK_THEME, DataProvider, DataWindowReadout, Drawing, DrawingStore, DrawingToolbar, type DrawingToolbarOptions, DrawingTypeKey, DrawingsDocument, IChartRenderer, IDrawingsRendererPort, IndicatorModel, IndicatorRenderHandle, InputChangeEvent, InputValue, LIGHT_THEME, LineStyle, MarketConfig, MarketDataFeed, Millis, MultiProviderFeed, NativeRenderer, OHLCV, Pane, PriceStyle, ProviderCapabilities, ProviderInfo, RendererCapabilities, RendererDisplayOptions, Resolved, ScenePatch, SerializedDrawing, SnapMode, SymbolDescriptor, SymbolInfo, ThemeName, ToolbarDefinition, VelaTheme, VisibleRange, resolveTheme, sharedBarStore, timeframeToMs };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { D as DrawingsDocument, R as Resolved } from './contributions-6N0rbrPC.js';
2
- export { B as BarsChangeReason, C as ContextSelect, b as DataControl, c as DrawingsControl, E as EngineAlert, d as EngineCapabilities, e as EngineContextSnapshot, f as EngineFactory, g as EngineWarning, h as ExecutionHandlers, i as ExecutionMarket, j as ExecutionRequest, k as ExecutionSession, F as FetchSeries, l as IndicatorEventMap, I as IndicatorHandle, m as IndicatorSummary, L as LegendActionDescriptor, n as LegendIndicatorInfo, N as NativeIndicator, o as NativeIndicatorContext, p as NativeIndicatorDescriptor, q as NativeIndicatorInfo, r as NativeIndicatorOutput, P as ParsedSymbol, s as PreparedScript, t as RendererControl, u as RunIndicatorResult, v as SceneInspection, a as ScriptRun, w as ScriptRunCause, x as ScriptRunResult, S as ScriptingEngine, y as SidePanelButton, z as SidePanelDescriptor, A as SidePanelHandle, G as SidePanelHeader, H as StrategyFill, J as StrategyState, K as StrategyTrade, T as TypedEventBus, V as Vela, M as VelaDeps, O as VelaEventMap, Q as VisibleBarRange, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, W as WidgetContext, Z as getNativeIndicator, _ as legendActions, $ as nativeIndicatorDescriptors, a0 as nativeIndicatorTypes, a1 as registerDefaultEngine, a2 as registerLegendAction, a3 as registerNativeIndicator, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a7 as resolveEngines, a8 as sidePanels, a9 as unregisterDefaultEngine, aa as unregisterLegendAction, ab as unregisterNativeIndicator, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-6N0rbrPC.js';
3
- import { D as Drawing, S as SerializedDrawing, U as Unsubscribe, L as LineStyle, P as PriceStyle, I as IChartRenderer, R as RendererCapabilities, d as RendererDisplayOptions, e as IndicatorRenderHandle, f as IndicatorStatus, c as VelaTheme, O as OHLCV, g as Pane, h as PaneAction, i as MoveTarget, j as IndicatorModel, k as ScenePatch, l as InputValue, m as SymbolPickerFn, n as LegendActionView, o as InputChangeEvent, T as ThemeName, C as CrosshairEvent, p as ClickEvent, a as VisibleRange, q as DataWindowReadout, r as IDrawingsRendererPort, s as Millis, t as SnapMode, u as DrawingTypeKey, v as ToolbarDefinition, M as MarketConfig } from './options-DbQholFV.js';
4
- export { A as AddIndicatorOptions, B as Background, w as BoxFontFamily, x as BoxHAlign, y as BoxTextSize, z as BoxVAlign, E as CandleBarColor, F as CandleSeries, G as CandleStyle, H as DataWindowGroup, J as DataWindowOHLC, K as DataWindowRow, Q as DirtyRange, W as DrawingBox, X as DrawingExtend, Y as DrawingIntent, Z as DrawingLabel, _ as DrawingLine, $ as DrawingLinefill, a0 as DrawingMode, a1 as DrawingPoint, a2 as DrawingPolyline, a3 as DrawingStyle, a4 as DrawingTable, a5 as DrawingText, a6 as DrawingXLoc, a7 as DrawingsOption, a8 as Fill, a9 as FillGradientStop, aa as IndicatorMeta, ab as InputSchema, ac as InputType, ad as LabelStyle, ae as LabelYLoc, af as LineLikeKind, ag as LineLikeSeries, ah as LineLikeStyle, ai as MarkerPoint, aj as MarkerSeries, ak as MarketSnapshot, al as MarketSwitch, am as PaneHint, an as PaneKind, ao as PolylinePoint, ap as PriceLine, aq as Projector, ar as ProviderName, as as RendererConstructor, at as Scene, au as SchemaPatch, av as SeriesKind, aw as SeriesPoint, ax as SeriesSpec, ay as SeriesValueDelta, az as SettingsField, aA as SettingsSchema, aB as TableCell, aC as TableMerge, aD as TablePosition, aE as ToolbarGroupConfig, aF as TradeExecution, aG as ValuePatch, b as VelaOptions, V as VisibleRangePreset, aH as buildToolbar, aI as defaultToolbar } from './options-DbQholFV.js';
5
- import { M as MarketDataFeed, D as DataProvider, P as ProviderInfo, a as SymbolDescriptor, S as SymbolInfo, b as ProviderCapabilities, B as BarRange } from './DataProvider-DGesjOJT.js';
6
- export { A as ACCENT, a as ACCENT_BRIGHT, B as BEARISH, b as BULLISH, c as BarTransform, d as BasePaintingModulation, C as CATEGORICAL, e as CROSSHAIR, f as ChartTypeDefinition, g as ChartTypeSettingsInstance, h as ChartTypeSettingsSection, i as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, j as INVALID, k as IdentifiableKind, M as MARKER, N as NEUTRAL, R as RendererLayerArgs, l as RendererLayerDefinition, m as RendererLayerInstance, S as SERIES_LINE, n as SESSION_OFF, o as SESSION_POST, p as SESSION_PRE, q as SLATE, r as SLATE_DEEP, s as SeriesDataEngine, t as SeriesDataEngineHost, u as SettingsRowCondition, v as SettingsRowDescriptor, w as SettingsRowSwatch, x as SettingsRowWhen, y as SettingsSelectOption, T as TRADE_EXIT, z as TRADE_LONG, E as TRADE_SHORT, V as VALID, W as WARNING, F as categoricalColor, G as chartType, J as chartTypes, K as createDrawing, L as deserializeDrawing, O as drawingTypes, P as getDrawingType, Q as registerChartType, U as registerDrawingType, X as registerRendererDefaults, Y as registerRendererLayer, Z as rendererDefaults, _ as rendererLayers, $ as stableSeriesId, a0 as tickerModifierIds, a1 as unregisterChartType, a2 as unregisterRendererDefaults, a3 as unregisterRendererLayer } from './plugin-TN3n-9YN.js';
1
+ import { D as DrawingsDocument, R as Resolved } from './contributions-b6AVrqqG.js';
2
+ export { B as BarsChangeReason, C as ContextSelect, b as DataControl, c as DrawingsControl, E as EngineAlert, d as EngineCapabilities, e as EngineContextSnapshot, f as EngineFactory, g as EngineWarning, h as ExecutionHandlers, i as ExecutionMarket, j as ExecutionRequest, k as ExecutionSession, F as FetchSeries, l as IndicatorEventMap, I as IndicatorHandle, m as IndicatorSummary, L as LegendActionDescriptor, n as LegendIndicatorInfo, N as NativeIndicator, o as NativeIndicatorContext, p as NativeIndicatorDescriptor, q as NativeIndicatorInfo, r as NativeIndicatorOutput, P as ParsedSymbol, s as PreparedScript, t as RendererControl, u as RunIndicatorResult, v as SceneInspection, a as ScriptRun, w as ScriptRunCause, x as ScriptRunResult, S as ScriptingEngine, y as SidePanelButton, z as SidePanelDescriptor, A as SidePanelHandle, G as SidePanelHeader, H as StrategyFill, J as StrategyState, K as StrategyTrade, T as TypedEventBus, V as Vela, M as VelaDeps, O as VelaEventMap, Q as VisibleBarRange, U as WidgetActionDescriptor, X as WidgetActionTarget, Y as WidgetAttachment, W as WidgetContext, Z as getNativeIndicator, _ as legendActions, $ as nativeIndicatorDescriptors, a0 as nativeIndicatorTypes, a1 as registerDefaultEngine, a2 as registerLegendAction, a3 as registerNativeIndicator, a4 as registerSidePanel, a5 as registerWidgetAction, a6 as registerWidgetAttachment, a7 as resolveEngines, a8 as sidePanels, a9 as unregisterDefaultEngine, aa as unregisterLegendAction, ab as unregisterNativeIndicator, ac as unregisterSidePanel, ad as unregisterWidgetAction, ae as unregisterWidgetAttachment, af as widgetActions, ag as widgetAttachments } from './contributions-b6AVrqqG.js';
3
+ import { D as Drawing, S as SerializedDrawing, U as Unsubscribe, L as LineStyle, P as PriceStyle, I as IChartRenderer, R as RendererCapabilities, d as RendererDisplayOptions, e as IndicatorRenderHandle, f as IndicatorStatus, c as VelaTheme, O as OHLCV, g as Pane, h as PaneAction, i as MoveTarget, j as IndicatorModel, k as ScenePatch, l as InputValue, m as SymbolPickerFn, n as LegendActionView, o as InputChangeEvent, T as ThemeName, C as CrosshairEvent, p as ClickEvent, A as AxisLongPressEvent, a as VisibleRange, q as DataWindowReadout, r as IDrawingsRendererPort, s as Millis, t as SnapMode, u as DrawingTypeKey, v as ToolbarDefinition, M as MarketConfig } from './options-XTBpbx0s.js';
4
+ export { w as AddIndicatorOptions, B as Background, x as BoxFontFamily, y as BoxHAlign, z as BoxTextSize, E as BoxVAlign, F as CandleBarColor, G as CandleSeries, H as CandleStyle, J as DataWindowGroup, K as DataWindowOHLC, Q as DataWindowRow, W as DirtyRange, X as DrawingBox, Y as DrawingExtend, Z as DrawingIntent, _ as DrawingLabel, $ as DrawingLine, a0 as DrawingLinefill, a1 as DrawingMode, a2 as DrawingPoint, a3 as DrawingPolyline, a4 as DrawingStyle, a5 as DrawingTable, a6 as DrawingText, a7 as DrawingXLoc, a8 as DrawingsOption, a9 as Fill, aa as FillGradientStop, ab as IndicatorMeta, ac as InputSchema, ad as InputType, ae as LabelStyle, af as LabelYLoc, ag as LineLikeKind, ah as LineLikeSeries, ai as LineLikeStyle, aj as MarkerPoint, ak as MarkerSeries, al as MarketSnapshot, am as MarketSwitch, an as PaneHint, ao as PaneKind, ap as PolylinePoint, aq as PriceLine, ar as Projector, as as ProviderName, at as RendererConstructor, au as Scene, av as SchemaPatch, aw as SeriesKind, ax as SeriesPoint, ay as SeriesSpec, az as SeriesValueDelta, aA as SettingsField, aB as SettingsSchema, aC as TableCell, aD as TableMerge, aE as TablePosition, aF as ToolbarGroupConfig, aG as TradeExecution, aH as ValuePatch, b as VelaOptions, V as VisibleRangePreset, aI as buildToolbar, aJ as defaultToolbar } from './options-XTBpbx0s.js';
5
+ import { M as MarketDataFeed, D as DataProvider, P as ProviderInfo, a as SymbolDescriptor, S as SymbolInfo, b as ProviderCapabilities, B as BarRange } from './DataProvider-DTOEXKTI.js';
6
+ export { A as ACCENT, a as ACCENT_BRIGHT, B as BEARISH, b as BULLISH, c as BarTransform, d as BasePaintingModulation, C as CATEGORICAL, e as CROSSHAIR, f as ChartTypeDefinition, g as ChartTypeSettingsInstance, h as ChartTypeSettingsSection, i as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, j as INVALID, k as IdentifiableKind, M as MARKER, N as NEUTRAL, l as NormalizedSettingsRow, R as RendererLayerArgs, m as RendererLayerDefinition, n as RendererLayerInstance, S as SERIES_LINE, o as SESSION_OFF, p as SESSION_POST, q as SESSION_PRE, r as SLATE, s as SLATE_DEEP, t as SeriesDataEngine, u as SeriesDataEngineHost, v as SettingsInlineControl, w as SettingsRowCondition, x as SettingsRowDescriptor, y as SettingsRowInlineNumber, z as SettingsRowSwatch, E as SettingsRowValueKey, F as SettingsRowWhen, G as SettingsRowWidth, J as SettingsSelectOption, K as SettingsValueRow, T as TRADE_EXIT, L as TRADE_LONG, O as TRADE_SHORT, V as VALID, W as WARNING, P as categoricalColor, Q as chartType, U as chartTypes, X as createDrawing, Y as deserializeDrawing, Z as drawingTypes, _ as getDrawingType, $ as normalizeSettingsRow, a0 as registerChartType, a1 as registerDrawingType, a2 as registerRendererDefaults, a3 as registerRendererLayer, a4 as rendererDefaults, a5 as rendererLayers, a6 as settingsRowValueKeys, a7 as stableSeriesId, a8 as tickerModifierIds, a9 as unregisterChartType, aa as unregisterRendererDefaults, ab as unregisterRendererLayer } from './plugin-CnNd7cuF.js';
7
7
  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';
8
8
  export { i as iconMarkup, r as registerIcon } from './icons-BZYbJXSV.js';
9
9
  export { a as KeyBindingDescriptor, R as ResolvedBinding } from './keymap-CGOz5F5f.js';
@@ -346,8 +346,12 @@ declare class NativeRenderer implements IChartRenderer {
346
346
  private symbolPicker;
347
347
  /** Indicator titles (the legend rows) shown — held here so a remount re-applies it. */
348
348
  private indicatorTitlesOn;
349
+ /** Plot values beside the legend titles shown — held here so a remount re-applies it. */
350
+ private indicatorValuesOn;
349
351
  /** Host-contributed legend actions — held here so a rebuild of the legend re-wires them. */
350
352
  private legendActionsProvider;
353
+ /** Host override of the legend's fold toggle — held here so a remount re-applies it. */
354
+ private legendOverviewAction;
351
355
  private keyboard;
352
356
  private keyboardEnabled;
353
357
  /** Drawings layer self-serves Ctrl+Z/Y (see the `historyChords` feature). */
@@ -412,6 +416,7 @@ declare class NativeRenderer implements IChartRenderer {
412
416
  private scrollTargetRO;
413
417
  private scrollBtnBottomPx;
414
418
  private scrollBtnRightPx;
419
+ private layoutMode;
415
420
  private readonly viewportCbs;
416
421
  private readonly crosshairCbs;
417
422
  private readonly chartTypeSettingsCbs;
@@ -422,6 +427,7 @@ declare class NativeRenderer implements IChartRenderer {
422
427
  private factoryConfig;
423
428
  private hostSettingsSections;
424
429
  private readonly clickCbs;
430
+ private readonly axisLongPressCbs;
425
431
  private readonly inputChangeCbs;
426
432
  private readonly removeIndicatorCbs;
427
433
  private readonly toggleVisibleCbs;
@@ -500,7 +506,10 @@ declare class NativeRenderer implements IChartRenderer {
500
506
  * so moving onto the button doesn't count as leaving). */
501
507
  private readonly onScrollProximityMove;
502
508
  private readonly onScrollProximityLeave;
503
- /** Show the button only when the latest bar is scrolled off the right edge AND the cursor is nearby. */
509
+ /** Show the button only when the latest bar is scrolled off the right edge. On desktop the
510
+ * cursor must also be nearby (hover reveal); on mobile — no hovering cursor — the button
511
+ * appears whenever the latest bars are off-screen and hides again once the view is back
512
+ * at the right edge. */
504
513
  private updateScrollToRealtimeButton;
505
514
  /** Glide the view back to the most recent bars, keeping the current zoom (barSpacing). */
506
515
  private scrollToRealtime;
@@ -508,17 +517,20 @@ declare class NativeRenderer implements IChartRenderer {
508
517
  * instant when pan animation is off. Shared by scroll-to-latest and panBy. */
509
518
  private glideRightOffset;
510
519
  /**
511
- * Export the current chart as a PNG data URL by compositing the geometry (L0)
512
- * + chrome (L1) + user-drawings (L1.5) canvases onto an offscreen canvas. The
513
- * background is filled first (the canvas2d data layer is transparent — its bg
514
- * lives on the wrapper), and a fresh synchronous paint runs first so the WebGL2
515
- * backend's (non-preserved) drawing buffer is populated before it's read back
516
- * this tick the same paint also repaints the drawings layers, so they're
517
- * current (interleaved drawings are already inside the data composite). They're
518
- * drawn bottom-up in DOM stacking order so the front user drawings (trend lines,
519
- * boxes, etc.) sit above the Pine drawings on the chrome layer, matching what's
520
- * on screen. The crosshair (L2) and DOM overlays (tables, legend) are
521
- * intentionally excluded.
520
+ * Export the current chart as a PNG data URL by compositing EVERY plot canvas onto
521
+ * an offscreen canvas, in the same stacking order the DOM shows: plugin layers
522
+ * below the data, geometry (L0), volume columns (L0.25), the visible-range volume
523
+ * profile (L0.6), plugin layers above the data, chrome (L1), and user drawings
524
+ * (L1.5). The background is filled first (the canvas2d data layer is transparent —
525
+ * its bg lives on the wrapper), and a fresh synchronous paint runs first so the
526
+ * WebGL2 backend's (non-preserved) drawing buffer is populated before it's read
527
+ * back this tick the same paint also repaints the drawings layers, so they're
528
+ * current. DOM chrome joins as a best-effort text/chip raster (see
529
+ * `rasterizeOverlay`): the per-pane indicator legends, plus any host overlay that
530
+ * opts in with a `data-vela-screenshot` attribute on the mount container's
531
+ * subtree (the widget marks its status line, and its symbol watermark with
532
+ * `"under"` — drawn beneath the canvases, where it sits on screen). Only the
533
+ * crosshair (L2) is intentionally excluded.
522
534
  */
523
535
  screenshot(): string | null;
524
536
  /**
@@ -616,6 +628,8 @@ declare class NativeRenderer implements IChartRenderer {
616
628
  setIndicatorInputs(handle: IndicatorRenderHandle, values: Record<string, InputValue>): void;
617
629
  setSymbolPicker(picker: SymbolPickerFn | null): void;
618
630
  setLegendActions(provider: ((indicatorId: string) => LegendActionView[]) | null): void;
631
+ setLegendOverviewAction(action: (() => void) | null): void;
632
+ openIndicatorSettings(indicatorId: string): void;
619
633
  /**
620
634
  * Hide/show a mounted indicator. Hiding drops its model from the scene (so every paint path —
621
635
  * series, fills, drawings, tables, glow, data window — skips it) while keeping its z key and its
@@ -634,12 +648,18 @@ declare class NativeRenderer implements IChartRenderer {
634
648
  */
635
649
  private setPriceStyle;
636
650
  onRemoveIndicator(cb: (id: string) => void): Unsubscribe;
651
+ /** Port surface: the host shell's chrome size class. Mobile switches the renderer
652
+ * chrome to its touch-first presentation — fullscreen dialogs, no docked drawing
653
+ * toolbar (the shell provides its own picker), the scroll-to-latest button shown
654
+ * whenever the latest bars are off-screen (touch has no cursor proximity). */
655
+ setLayoutMode(mode: 'mobile' | 'desktop'): void;
637
656
  setSettingsSections(sections: HostSettingsSection[]): void;
638
657
  onChartTypeSettingsChange(cb: (typeId: string, values: Record<string, unknown>) => void): Unsubscribe;
639
658
  onConfigChanged(cb: () => void): Unsubscribe;
640
659
  onThemeSelect(cb: (theme: ThemeName) => void): Unsubscribe;
641
660
  onCrosshairMove(cb: (e: CrosshairEvent) => void): Unsubscribe;
642
661
  onClick(cb: (e: ClickEvent) => void): Unsubscribe;
662
+ onAxisLongPress(cb: (e: AxisLongPressEvent) => void): Unsubscribe;
643
663
  onViewportChange(cb: (range: VisibleRange) => void): Unsubscribe;
644
664
  getVisibleRange(): VisibleRange | null;
645
665
  setVisibleRange(range: VisibleRange): void;
@@ -677,6 +697,9 @@ declare class NativeRenderer implements IChartRenderer {
677
697
  private paneAtY;
678
698
  /** The pane node whose vertical bounds contain `y` (linear scan; panes don't overlap). */
679
699
  private paneNodeAtY;
700
+ /** The pane whose bounds sit closest to `y` — the forgiving fallback for points that
701
+ * fall BETWEEN bounds (separator gaps, the strip under the last pane). */
702
+ private nearestPaneToY;
680
703
  /** The scale window a gesture targets: a pane's master scale, or a merged indicator's
681
704
  * own scale column (resolved from the grabbed x). Both share the four scale fields. */
682
705
  private resolveScaleHolder;
@@ -744,6 +767,16 @@ declare class NativeRenderer implements IChartRenderer {
744
767
  private dataWindowOHLC;
745
768
  /** One group per indicator (name = indicator title), each with a row per drawable plot. */
746
769
  private dataWindowGroups;
770
+ /** One indicator's readout at bar `idx`: a row per drawable plot, formatted on its pane's scale. */
771
+ private dataWindowRowsFor;
772
+ /** The volume indicator's readout: the bar's volume, tinted with the layer's own direction
773
+ * colors. Hiding volume keeps its model in the scene (only the layer is suppressed — see
774
+ * `setIndicatorVisible`), so the hidden flag is checked here rather than by model absence. */
775
+ private volumeReadoutRows;
776
+ /** Refresh the plot values beside every legend title — the same readout the data window
777
+ * shows (crosshair bar, else the latest bar), pushed per paint. A hidden indicator has
778
+ * no scene model, so its row is absent from the map and its readout clears. */
779
+ private updateLegendValues;
747
780
  private renderFrame;
748
781
  /** Repaint the SDK layers that opted into cursor tracking (their own canvas only). */
749
782
  private repaintCursorLayers;
@@ -1211,4 +1244,4 @@ declare const DARK_THEME: VelaTheme;
1211
1244
  declare const LIGHT_THEME: VelaTheme;
1212
1245
  declare function resolveTheme(theme?: ThemeName | VelaTheme): VelaTheme;
1213
1246
 
1214
- export { BarRange, BarStore, CachingDataFeed, type ChartConfig, type ChartStyle, ClickEvent, CrosshairEvent, DARK_THEME, DataProvider, DataWindowReadout, Drawing, DrawingStore, DrawingToolbar, type DrawingToolbarOptions, DrawingTypeKey, DrawingsDocument, IChartRenderer, IDrawingsRendererPort, IndicatorModel, IndicatorRenderHandle, InputChangeEvent, InputValue, LIGHT_THEME, LineStyle, MarketConfig, MarketDataFeed, Millis, MultiProviderFeed, NativeRenderer, OHLCV, Pane, PriceStyle, ProviderCapabilities, ProviderInfo, RendererCapabilities, RendererDisplayOptions, Resolved, ScenePatch, SerializedDrawing, SnapMode, SymbolDescriptor, SymbolInfo, ThemeName, ToolbarDefinition, VelaTheme, VisibleRange, resolveTheme, sharedBarStore, timeframeToMs };
1247
+ export { AxisLongPressEvent, BarRange, BarStore, CachingDataFeed, type ChartConfig, type ChartStyle, ClickEvent, CrosshairEvent, DARK_THEME, DataProvider, DataWindowReadout, Drawing, DrawingStore, DrawingToolbar, type DrawingToolbarOptions, DrawingTypeKey, DrawingsDocument, IChartRenderer, IDrawingsRendererPort, IndicatorModel, IndicatorRenderHandle, InputChangeEvent, InputValue, LIGHT_THEME, LineStyle, MarketConfig, MarketDataFeed, Millis, MultiProviderFeed, NativeRenderer, OHLCV, Pane, PriceStyle, ProviderCapabilities, ProviderInfo, RendererCapabilities, RendererDisplayOptions, Resolved, ScenePatch, SerializedDrawing, SnapMode, SymbolDescriptor, SymbolInfo, ThemeName, ToolbarDefinition, VelaTheme, VisibleRange, resolveTheme, sharedBarStore, timeframeToMs };
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { stableSeriesId } from './chunk-Q3XQHLIH.js';
2
- export { BarStore, CachingDataFeed, DARK_THEME, DataControl, DrawingStore, DrawingToolbar, DrawingsControl, LIGHT_THEME, MultiProviderFeed, NativeRenderer, RendererControl, TypedEventBus, Vela, buildToolbar, defaultToolbar, resolveTheme, sharedBarStore, timeframeToMs } from './chunk-FNOMKHEZ.js';
3
- export { DEFAULT_PANEL_MAX_WIDTH, DEFAULT_PANEL_MIN_WIDTH, DEFAULT_PANEL_WIDTH, Drawing, chartType, chartTypes, clampPanelWidth, createDrawing, deserializeDrawing, drawingTypes, getDrawingType, getNativeIndicator, legendActions, nativeIndicatorDescriptors, nativeIndicatorTypes, registerChartType, registerDefaultEngine, registerDrawingType, registerLegendAction, registerNativeIndicator, registerRendererDefaults, registerRendererLayer, registerSidePanel, registerWidgetAction, registerWidgetAttachment, rendererDefaults, rendererLayers, resolveEngines, sidePanels, tickerModifierIds, unregisterChartType, unregisterDefaultEngine, unregisterLegendAction, unregisterNativeIndicator, unregisterRendererDefaults, unregisterRendererLayer, unregisterSidePanel, unregisterWidgetAction, unregisterWidgetAttachment, widgetActions, widgetAttachments } from './chunk-S6F6SQ2L.js';
4
- import './chunk-ULIX6AE2.js';
5
- export { ACCENT, ACCENT_BRIGHT, BEARISH, BULLISH, CATEGORICAL, CROSSHAIR, HIGHLIGHT, INFO, INVALID, MARKER, NEUTRAL, SERIES_LINE, SESSION_OFF, SESSION_POST, SESSION_PRE, SLATE, SLATE_DEEP, TRADE_EXIT, TRADE_LONG, TRADE_SHORT, VALID, WARNING, categoricalColor, iconMarkup, registerIcon } from './chunk-EP6NDJYK.js';
2
+ export { BarStore, CachingDataFeed, DARK_THEME, DataControl, DrawingStore, DrawingToolbar, DrawingsControl, LIGHT_THEME, MultiProviderFeed, NativeRenderer, RendererControl, TypedEventBus, Vela, buildToolbar, defaultToolbar, resolveTheme, sharedBarStore, timeframeToMs } from './chunk-RRFGWZNJ.js';
3
+ export { DEFAULT_PANEL_MAX_WIDTH, DEFAULT_PANEL_MIN_WIDTH, DEFAULT_PANEL_WIDTH, Drawing, chartType, chartTypes, clampPanelWidth, createDrawing, deserializeDrawing, drawingTypes, getDrawingType, getNativeIndicator, legendActions, nativeIndicatorDescriptors, nativeIndicatorTypes, normalizeSettingsRow, registerChartType, registerDefaultEngine, registerDrawingType, registerLegendAction, registerNativeIndicator, registerRendererDefaults, registerRendererLayer, registerSidePanel, registerWidgetAction, registerWidgetAttachment, rendererDefaults, rendererLayers, resolveEngines, settingsRowValueKeys, sidePanels, tickerModifierIds, unregisterChartType, unregisterDefaultEngine, unregisterLegendAction, unregisterNativeIndicator, unregisterRendererDefaults, unregisterRendererLayer, unregisterSidePanel, unregisterWidgetAction, unregisterWidgetAttachment, widgetActions, widgetAttachments } from './chunk-B5TIKQJ5.js';
4
+ import './chunk-ATPU5CI6.js';
5
+ export { ACCENT, ACCENT_BRIGHT, BEARISH, BULLISH, CATEGORICAL, CROSSHAIR, HIGHLIGHT, INFO, INVALID, MARKER, NEUTRAL, SERIES_LINE, SESSION_OFF, SESSION_POST, SESSION_PRE, SLATE, SLATE_DEEP, TRADE_EXIT, TRADE_LONG, TRADE_SHORT, VALID, WARNING, categoricalColor, iconMarkup, registerIcon } from './chunk-LJLZR44Y.js';
@@ -420,7 +420,13 @@ type PaneHint = 'price' | 'new';
420
420
  interface IndicatorModel {
421
421
  /** Per-instance id (stable). */
422
422
  id: string;
423
+ /** Full display name (settings dialog, object tree, inspect). */
423
424
  title: string;
425
+ /**
426
+ * Compact legend label when the full {@link title} is too long for the chip.
427
+ * Absent ⇒ the legend uses {@link title}. Mirrors Pine `indicator(..., shorttitle=)`.
428
+ */
429
+ shorttitle?: string;
424
430
  overlay: boolean;
425
431
  paneHint: PaneHint;
426
432
  /**
@@ -1071,7 +1077,14 @@ interface CrosshairOHLC {
1071
1077
  }
1072
1078
  interface CrosshairEvent {
1073
1079
  time: Millis | null;
1080
+ /** Value at the cursor on ITS pane's scale — a price on the price pane, an
1081
+ * indicator value on a study pane (which one: see {@link paneKind}). */
1074
1082
  price: number | null;
1083
+ /** The kind of pane the cursor (and thus `price`) is on — how a consumer tells a
1084
+ * real price from a study-pane value (e.g. crosshair sync only mirrors the
1085
+ * horizontal level from the price pane). Optional and additive: a renderer that
1086
+ * doesn't track panes omits it. */
1087
+ paneKind?: 'price' | 'study' | null;
1075
1088
  /** Value at the crosshair per series, keyed by stable series id. */
1076
1089
  values: ReadonlyMap<string, number>;
1077
1090
  /** The hovered price bar's OHLCV (null when the cursor is off any bar). */
@@ -1081,6 +1094,13 @@ interface ClickEvent {
1081
1094
  time: Millis | null;
1082
1095
  price: number | null;
1083
1096
  }
1097
+ /** A touch long-press on an axis strip — the mobile substitute for a right-click menu. */
1098
+ interface AxisLongPressEvent {
1099
+ axis: 'price' | 'time';
1100
+ /** Plot-local pixel of the press (y maps a multi-pane price scale to its pane). */
1101
+ x: number;
1102
+ y: number;
1103
+ }
1084
1104
  /** One indicator plot's readout line in the data window. */
1085
1105
  interface DataWindowRow {
1086
1106
  label: string;
@@ -1252,6 +1272,22 @@ interface IChartRenderer {
1252
1272
  * renderer without it simply never shows contributed legend actions.
1253
1273
  */
1254
1274
  setLegendActions?(provider: ((indicatorId: string) => LegendActionView[]) | null): void;
1275
+ /**
1276
+ * Replace the indicator legend's fold toggle with a HOST action (or restore it with
1277
+ * null): the chip stays — a list glyph plus the indicator count — but pressing it
1278
+ * runs the action instead of unfolding the rows, which stay hidden while the
1279
+ * override is in force. Multi-chart shells route it to their indicator overview
1280
+ * (e.g. an object-tree panel), where per-indicator controls live instead. Optional —
1281
+ * a renderer without a foldable legend omits it.
1282
+ */
1283
+ setLegendOverviewAction?(action: (() => void) | null): void;
1284
+ /**
1285
+ * Open the settings dialog of one mounted indicator — the programmatic twin of the
1286
+ * legend row's gear button, for host chrome that reaches indicators outside the
1287
+ * legend (an object tree's action menu). Silent no-op for an unknown id. Optional —
1288
+ * a renderer without per-indicator settings UI omits it.
1289
+ */
1290
+ openIndicatorSettings?(indicatorId: string): void;
1255
1291
  /**
1256
1292
  * Hide (`false`) or show (`true`) a mounted indicator's visuals while keeping its legend row
1257
1293
  * (marked hidden). Optional — a renderer that can't suppress an indicator omits it (and the
@@ -1275,6 +1311,9 @@ interface IChartRenderer {
1275
1311
  onToggleIndicatorVisible?(cb: (id: string, visible: boolean) => void): Unsubscribe;
1276
1312
  onCrosshairMove(cb: (e: CrosshairEvent) => void): Unsubscribe;
1277
1313
  onClick(cb: (e: ClickEvent) => void): Unsubscribe;
1314
+ /** Touch long-press on a price or time axis strip. Optional — a renderer without
1315
+ * touch axis gestures omits it; host chrome (timezone / price-scale sheets) keys off it. */
1316
+ onAxisLongPress?(cb: (e: AxisLongPressEvent) => void): Unsubscribe;
1278
1317
  /**
1279
1318
  * Display an EXTERNAL crosshair at a data-space position — a ghost marker driven by
1280
1319
  * another chart (multi-chart crosshair sync), not by this chart's own pointer.
@@ -1362,6 +1401,13 @@ interface IChartRenderer {
1362
1401
  title: string;
1363
1402
  rows: readonly unknown[];
1364
1403
  }>): void;
1404
+ /**
1405
+ * The host shell's chrome size class. `'mobile'` asks the renderer's own chrome
1406
+ * (dialogs, toolbars, buttons) for its touch-first presentation — fullscreen
1407
+ * dialogs, no hover-gated affordances; `'desktop'` (the default) keeps the
1408
+ * pointer-first one. Optional — a renderer without adaptive chrome omits it.
1409
+ */
1410
+ setLayoutMode?(mode: 'mobile' | 'desktop'): void;
1365
1411
  /**
1366
1412
  * Interactive user-drawings surface. Present iff `capabilities.userDrawings`.
1367
1413
  * The core `DrawingController` drives it (commands down) and listens for
@@ -1556,4 +1602,4 @@ interface AddIndicatorOptions {
1556
1602
  title?: string;
1557
1603
  }
1558
1604
 
1559
- export { type DrawingLinefill as $, type AddIndicatorOptions as A, type Background as B, type CrosshairEvent as C, Drawing as D, type CandleBarColor as E, type CandleSeries as F, type CandleStyle as G, type DataWindowGroup as H, type IChartRenderer as I, type DataWindowOHLC as J, type DataWindowRow as K, type LineStyle as L, type MarketConfig as M, type NativeBackend as N, type OHLCV as O, type PriceStyle as P, type DirtyRange as Q, type RendererCapabilities as R, type SerializedDrawing as S, type ThemeName as T, type Unsubscribe as U, type VisibleRangePreset as V, type DrawingBox as W, type DrawingExtend as X, type DrawingIntent as Y, type DrawingLabel as Z, type DrawingLine as _, type VisibleRange as a, type DrawingMode as a0, type DrawingPoint as a1, type DrawingPolyline as a2, type DrawingStyle as a3, type DrawingTable as a4, type DrawingText as a5, type DrawingXLoc as a6, type DrawingsOption as a7, type Fill as a8, type FillGradientStop as a9, type SettingsSchema as aA, type TableCell as aB, type TableMerge as aC, type TablePosition as aD, type ToolbarGroupConfig as aE, type TradeExecution as aF, type ValuePatch as aG, buildToolbar as aH, defaultToolbar as aI, type PaneInfo as aJ, type IndicatorMeta as aa, type InputSchema as ab, type InputType as ac, type LabelStyle as ad, type LabelYLoc as ae, type LineLikeKind as af, type LineLikeSeries as ag, type LineLikeStyle as ah, type MarkerPoint as ai, type MarkerSeries as aj, type MarketSnapshot as ak, type MarketSwitch as al, type PaneHint as am, type PaneKind as an, type PolylinePoint as ao, type PriceLine as ap, type Projector as aq, type ProviderName as ar, type RendererConstructor as as, type Scene as at, type SchemaPatch as au, type SeriesKind as av, type SeriesPoint as aw, type SeriesSpec as ax, type SeriesValueDelta as ay, type SettingsField as az, type VelaOptions as b, type VelaTheme as c, type RendererDisplayOptions as d, type IndicatorRenderHandle as e, type IndicatorStatus as f, type Pane as g, type PaneAction as h, type MoveTarget as i, type IndicatorModel as j, type ScenePatch as k, type InputValue as l, type SymbolPickerFn as m, type LegendActionView as n, type InputChangeEvent as o, type ClickEvent as p, type DataWindowReadout as q, type IDrawingsRendererPort as r, type Millis as s, type SnapMode as t, type DrawingTypeKey as u, type ToolbarDefinition as v, type BoxFontFamily as w, type BoxHAlign as x, type BoxTextSize as y, type BoxVAlign as z };
1605
+ export { type DrawingLine as $, type AxisLongPressEvent as A, type Background as B, type CrosshairEvent as C, Drawing as D, type BoxVAlign as E, type CandleBarColor as F, type CandleSeries as G, type CandleStyle as H, type IChartRenderer as I, type DataWindowGroup as J, type DataWindowOHLC as K, type LineStyle as L, type MarketConfig as M, type NativeBackend as N, type OHLCV as O, type PriceStyle as P, type DataWindowRow as Q, type RendererCapabilities as R, type SerializedDrawing as S, type ThemeName as T, type Unsubscribe as U, type VisibleRangePreset as V, type DirtyRange as W, type DrawingBox as X, type DrawingExtend as Y, type DrawingIntent as Z, type DrawingLabel as _, type VisibleRange as a, type DrawingLinefill as a0, type DrawingMode as a1, type DrawingPoint as a2, type DrawingPolyline as a3, type DrawingStyle as a4, type DrawingTable as a5, type DrawingText as a6, type DrawingXLoc as a7, type DrawingsOption as a8, type Fill as a9, type SettingsField as aA, type SettingsSchema as aB, type TableCell as aC, type TableMerge as aD, type TablePosition as aE, type ToolbarGroupConfig as aF, type TradeExecution as aG, type ValuePatch as aH, buildToolbar as aI, defaultToolbar as aJ, type PaneInfo as aK, type FillGradientStop as aa, type IndicatorMeta as ab, type InputSchema as ac, type InputType as ad, type LabelStyle as ae, type LabelYLoc as af, type LineLikeKind as ag, type LineLikeSeries as ah, type LineLikeStyle as ai, type MarkerPoint as aj, type MarkerSeries as ak, type MarketSnapshot as al, type MarketSwitch as am, type PaneHint as an, type PaneKind as ao, type PolylinePoint as ap, type PriceLine as aq, type Projector as ar, type ProviderName as as, type RendererConstructor as at, type Scene as au, type SchemaPatch as av, type SeriesKind as aw, type SeriesPoint as ax, type SeriesSpec as ay, type SeriesValueDelta as az, type VelaOptions as b, type VelaTheme as c, type RendererDisplayOptions as d, type IndicatorRenderHandle as e, type IndicatorStatus as f, type Pane as g, type PaneAction as h, type MoveTarget as i, type IndicatorModel as j, type ScenePatch as k, type InputValue as l, type SymbolPickerFn as m, type LegendActionView as n, type InputChangeEvent as o, type ClickEvent as p, type DataWindowReadout as q, type IDrawingsRendererPort as r, type Millis as s, type SnapMode as t, type DrawingTypeKey as u, type ToolbarDefinition as v, type AddIndicatorOptions as w, type BoxFontFamily as x, type BoxHAlign as y, type BoxTextSize as z };
@@ -420,7 +420,13 @@ type PaneHint = 'price' | 'new';
420
420
  interface IndicatorModel {
421
421
  /** Per-instance id (stable). */
422
422
  id: string;
423
+ /** Full display name (settings dialog, object tree, inspect). */
423
424
  title: string;
425
+ /**
426
+ * Compact legend label when the full {@link title} is too long for the chip.
427
+ * Absent ⇒ the legend uses {@link title}. Mirrors Pine `indicator(..., shorttitle=)`.
428
+ */
429
+ shorttitle?: string;
424
430
  overlay: boolean;
425
431
  paneHint: PaneHint;
426
432
  /**
@@ -1071,7 +1077,14 @@ interface CrosshairOHLC {
1071
1077
  }
1072
1078
  interface CrosshairEvent {
1073
1079
  time: Millis | null;
1080
+ /** Value at the cursor on ITS pane's scale — a price on the price pane, an
1081
+ * indicator value on a study pane (which one: see {@link paneKind}). */
1074
1082
  price: number | null;
1083
+ /** The kind of pane the cursor (and thus `price`) is on — how a consumer tells a
1084
+ * real price from a study-pane value (e.g. crosshair sync only mirrors the
1085
+ * horizontal level from the price pane). Optional and additive: a renderer that
1086
+ * doesn't track panes omits it. */
1087
+ paneKind?: 'price' | 'study' | null;
1075
1088
  /** Value at the crosshair per series, keyed by stable series id. */
1076
1089
  values: ReadonlyMap<string, number>;
1077
1090
  /** The hovered price bar's OHLCV (null when the cursor is off any bar). */
@@ -1081,6 +1094,13 @@ interface ClickEvent {
1081
1094
  time: Millis | null;
1082
1095
  price: number | null;
1083
1096
  }
1097
+ /** A touch long-press on an axis strip — the mobile substitute for a right-click menu. */
1098
+ interface AxisLongPressEvent {
1099
+ axis: 'price' | 'time';
1100
+ /** Plot-local pixel of the press (y maps a multi-pane price scale to its pane). */
1101
+ x: number;
1102
+ y: number;
1103
+ }
1084
1104
  /** One indicator plot's readout line in the data window. */
1085
1105
  interface DataWindowRow {
1086
1106
  label: string;
@@ -1252,6 +1272,22 @@ interface IChartRenderer {
1252
1272
  * renderer without it simply never shows contributed legend actions.
1253
1273
  */
1254
1274
  setLegendActions?(provider: ((indicatorId: string) => LegendActionView[]) | null): void;
1275
+ /**
1276
+ * Replace the indicator legend's fold toggle with a HOST action (or restore it with
1277
+ * null): the chip stays — a list glyph plus the indicator count — but pressing it
1278
+ * runs the action instead of unfolding the rows, which stay hidden while the
1279
+ * override is in force. Multi-chart shells route it to their indicator overview
1280
+ * (e.g. an object-tree panel), where per-indicator controls live instead. Optional —
1281
+ * a renderer without a foldable legend omits it.
1282
+ */
1283
+ setLegendOverviewAction?(action: (() => void) | null): void;
1284
+ /**
1285
+ * Open the settings dialog of one mounted indicator — the programmatic twin of the
1286
+ * legend row's gear button, for host chrome that reaches indicators outside the
1287
+ * legend (an object tree's action menu). Silent no-op for an unknown id. Optional —
1288
+ * a renderer without per-indicator settings UI omits it.
1289
+ */
1290
+ openIndicatorSettings?(indicatorId: string): void;
1255
1291
  /**
1256
1292
  * Hide (`false`) or show (`true`) a mounted indicator's visuals while keeping its legend row
1257
1293
  * (marked hidden). Optional — a renderer that can't suppress an indicator omits it (and the
@@ -1275,6 +1311,9 @@ interface IChartRenderer {
1275
1311
  onToggleIndicatorVisible?(cb: (id: string, visible: boolean) => void): Unsubscribe;
1276
1312
  onCrosshairMove(cb: (e: CrosshairEvent) => void): Unsubscribe;
1277
1313
  onClick(cb: (e: ClickEvent) => void): Unsubscribe;
1314
+ /** Touch long-press on a price or time axis strip. Optional — a renderer without
1315
+ * touch axis gestures omits it; host chrome (timezone / price-scale sheets) keys off it. */
1316
+ onAxisLongPress?(cb: (e: AxisLongPressEvent) => void): Unsubscribe;
1278
1317
  /**
1279
1318
  * Display an EXTERNAL crosshair at a data-space position — a ghost marker driven by
1280
1319
  * another chart (multi-chart crosshair sync), not by this chart's own pointer.
@@ -1362,6 +1401,13 @@ interface IChartRenderer {
1362
1401
  title: string;
1363
1402
  rows: readonly unknown[];
1364
1403
  }>): void;
1404
+ /**
1405
+ * The host shell's chrome size class. `'mobile'` asks the renderer's own chrome
1406
+ * (dialogs, toolbars, buttons) for its touch-first presentation — fullscreen
1407
+ * dialogs, no hover-gated affordances; `'desktop'` (the default) keeps the
1408
+ * pointer-first one. Optional — a renderer without adaptive chrome omits it.
1409
+ */
1410
+ setLayoutMode?(mode: 'mobile' | 'desktop'): void;
1365
1411
  /**
1366
1412
  * Interactive user-drawings surface. Present iff `capabilities.userDrawings`.
1367
1413
  * The core `DrawingController` drives it (commands down) and listens for
@@ -1556,4 +1602,4 @@ interface AddIndicatorOptions {
1556
1602
  title?: string;
1557
1603
  }
1558
1604
 
1559
- export { type DrawingLinefill as $, type AddIndicatorOptions as A, type Background as B, type CrosshairEvent as C, Drawing as D, type CandleBarColor as E, type CandleSeries as F, type CandleStyle as G, type DataWindowGroup as H, type IChartRenderer as I, type DataWindowOHLC as J, type DataWindowRow as K, type LineStyle as L, type MarketConfig as M, type NativeBackend as N, type OHLCV as O, type PriceStyle as P, type DirtyRange as Q, type RendererCapabilities as R, type SerializedDrawing as S, type ThemeName as T, type Unsubscribe as U, type VisibleRangePreset as V, type DrawingBox as W, type DrawingExtend as X, type DrawingIntent as Y, type DrawingLabel as Z, type DrawingLine as _, type VisibleRange as a, type DrawingMode as a0, type DrawingPoint as a1, type DrawingPolyline as a2, type DrawingStyle as a3, type DrawingTable as a4, type DrawingText as a5, type DrawingXLoc as a6, type DrawingsOption as a7, type Fill as a8, type FillGradientStop as a9, type SettingsSchema as aA, type TableCell as aB, type TableMerge as aC, type TablePosition as aD, type ToolbarGroupConfig as aE, type TradeExecution as aF, type ValuePatch as aG, buildToolbar as aH, defaultToolbar as aI, type PaneInfo as aJ, type IndicatorMeta as aa, type InputSchema as ab, type InputType as ac, type LabelStyle as ad, type LabelYLoc as ae, type LineLikeKind as af, type LineLikeSeries as ag, type LineLikeStyle as ah, type MarkerPoint as ai, type MarkerSeries as aj, type MarketSnapshot as ak, type MarketSwitch as al, type PaneHint as am, type PaneKind as an, type PolylinePoint as ao, type PriceLine as ap, type Projector as aq, type ProviderName as ar, type RendererConstructor as as, type Scene as at, type SchemaPatch as au, type SeriesKind as av, type SeriesPoint as aw, type SeriesSpec as ax, type SeriesValueDelta as ay, type SettingsField as az, type VelaOptions as b, type VelaTheme as c, type RendererDisplayOptions as d, type IndicatorRenderHandle as e, type IndicatorStatus as f, type Pane as g, type PaneAction as h, type MoveTarget as i, type IndicatorModel as j, type ScenePatch as k, type InputValue as l, type SymbolPickerFn as m, type LegendActionView as n, type InputChangeEvent as o, type ClickEvent as p, type DataWindowReadout as q, type IDrawingsRendererPort as r, type Millis as s, type SnapMode as t, type DrawingTypeKey as u, type ToolbarDefinition as v, type BoxFontFamily as w, type BoxHAlign as x, type BoxTextSize as y, type BoxVAlign as z };
1605
+ export { type DrawingLine as $, type AxisLongPressEvent as A, type Background as B, type CrosshairEvent as C, Drawing as D, type BoxVAlign as E, type CandleBarColor as F, type CandleSeries as G, type CandleStyle as H, type IChartRenderer as I, type DataWindowGroup as J, type DataWindowOHLC as K, type LineStyle as L, type MarketConfig as M, type NativeBackend as N, type OHLCV as O, type PriceStyle as P, type DataWindowRow as Q, type RendererCapabilities as R, type SerializedDrawing as S, type ThemeName as T, type Unsubscribe as U, type VisibleRangePreset as V, type DirtyRange as W, type DrawingBox as X, type DrawingExtend as Y, type DrawingIntent as Z, type DrawingLabel as _, type VisibleRange as a, type DrawingLinefill as a0, type DrawingMode as a1, type DrawingPoint as a2, type DrawingPolyline as a3, type DrawingStyle as a4, type DrawingTable as a5, type DrawingText as a6, type DrawingXLoc as a7, type DrawingsOption as a8, type Fill as a9, type SettingsField as aA, type SettingsSchema as aB, type TableCell as aC, type TableMerge as aD, type TablePosition as aE, type ToolbarGroupConfig as aF, type TradeExecution as aG, type ValuePatch as aH, buildToolbar as aI, defaultToolbar as aJ, type PaneInfo as aK, type FillGradientStop as aa, type IndicatorMeta as ab, type InputSchema as ac, type InputType as ad, type LabelStyle as ae, type LabelYLoc as af, type LineLikeKind as ag, type LineLikeSeries as ah, type LineLikeStyle as ai, type MarkerPoint as aj, type MarkerSeries as ak, type MarketSnapshot as al, type MarketSwitch as am, type PaneHint as an, type PaneKind as ao, type PolylinePoint as ap, type PriceLine as aq, type Projector as ar, type ProviderName as as, type RendererConstructor as at, type Scene as au, type SchemaPatch as av, type SeriesKind as aw, type SeriesPoint as ax, type SeriesSpec as ay, type SeriesValueDelta as az, type VelaOptions as b, type VelaTheme as c, type RendererDisplayOptions as d, type IndicatorRenderHandle as e, type IndicatorStatus as f, type Pane as g, type PaneAction as h, type MoveTarget as i, type IndicatorModel as j, type ScenePatch as k, type InputValue as l, type SymbolPickerFn as m, type LegendActionView as n, type InputChangeEvent as o, type ClickEvent as p, type DataWindowReadout as q, type IDrawingsRendererPort as r, type Millis as s, type SnapMode as t, type DrawingTypeKey as u, type ToolbarDefinition as v, type AddIndicatorOptions as w, type BoxFontFamily as x, type BoxHAlign as y, type BoxTextSize as z };