@luxalgo/vela 0.6.19 → 0.6.21

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.
@@ -1,4 +1,4 @@
1
- import { parseSymbol, priceStyleIds, BUILTIN_PRICE_STYLES, tzButtonLabel, TIMEZONES, normalizeTimezone, tzMenuLabel, isGroupRow, defaultMemberOf, groupKeyOf, groupMembers, LEGEND_AT_TOP_ATTR, normalizeSession, Vela, TypedEventBus, MultiProviderFeed, registerBuiltinChartTypes, resolveTheme, buildToolbar, createCustomMark, createAttributionMark, DrawingToolbar, applyAttributionMarkTheme, sharedBarStore, timeframeToMs } from './chunk-22QJKGXX.js';
1
+ import { parseSymbol, priceStyleIds, BUILTIN_PRICE_STYLES, tzButtonLabel, TIMEZONES, normalizeTimezone, tzMenuLabel, isGroupRow, defaultMemberOf, groupKeyOf, groupMembers, LEGEND_AT_TOP_ATTR, normalizeSession, Vela, TypedEventBus, MultiProviderFeed, registerBuiltinChartTypes, resolveTheme, buildToolbar, createCustomMark, createAttributionMark, DrawingToolbar, applyAttributionMarkTheme, sharedBarStore, timeframeToMs } from './chunk-TRZQQUTR.js';
2
2
  import { chartType, resolveTopbarComposition, topbarActionOverride, TOPBAR_BUILTIN_IDS, widgetActions, SidePanel, sidePanels, DEFAULT_PANEL_ORDER, symbolRanking, resolveEngines, legendActionsProviderFor, legendCalloutsProviderFor, statePersistenceHandlers, topbarHas, rendererDefaults, widgetAttachments, getDrawingType, inputDeltas } from './chunk-IFJJPXSV.js';
3
3
  import { Tooltip, KeymapManager, isEditableTarget, Drawer } from './chunk-XCBJU674.js';
4
4
  import { Menu, Dialog, CalloutBubble, applyPlotOverlayTokens, ensureUIHost } from './chunk-T5Z5YUCF.js';
@@ -5614,7 +5614,7 @@ var ChartCell = class {
5614
5614
  // A RESTORED ledger is authoritative for the auto-added volume too: a
5615
5615
  // slot persisted without it must come back without it (fresh slots
5616
5616
  // keep the workspace default).
5617
- volume: seed.indicators ? seed.indicators.natives.includes("volume") : deps.volume,
5617
+ volume: seed.indicators ? seed.indicators.natives.some((e) => ledgerNativeType(e) === "volume") : deps.volume,
5618
5618
  nativeBackend: deps.nativeBackend,
5619
5619
  // The user's drawings option minus its toolbar: one SHARED bar serves
5620
5620
  // the whole workspace (per-cell bars would cost a 44px gutter each).
@@ -6274,7 +6274,7 @@ var ChartCell = class {
6274
6274
  addExternalIndicator(entry) {
6275
6275
  this.addManifestInstance(
6276
6276
  { ...entry, enabled: true },
6277
- { external: true, ...entry.inputs ? { inputs: entry.inputs } : {}, ...entry.props ? { props: entry.props } : {} }
6277
+ { external: true, ...entry.inputs ? { inputs: entry.inputs } : {}, ...entry.props ? { props: entry.props } : {}, ...entry.hidden ? { hidden: true } : {} }
6278
6278
  );
6279
6279
  }
6280
6280
  /** Add ONE instance of a manifest entry (repeatable — duplicates are legitimate). */
@@ -21120,6 +21120,7 @@ var EngineOrchestrator = class _EngineOrchestrator {
21120
21120
  if (!record.native) continue;
21121
21121
  record.native.instance.stop();
21122
21122
  record.native.instance = record.native.descriptor.create();
21123
+ record.native.started = false;
21123
21124
  record.pendingStructural = true;
21124
21125
  if (record.hidden) {
21125
21126
  record.native.stale = true;
@@ -21615,7 +21616,7 @@ var EngineOrchestrator = class _EngineOrchestrator {
21615
21616
  if (record.renderHandle) this.renderer.setIndicatorVisible?.(record.renderHandle, true);
21616
21617
  record.pendingStructural = true;
21617
21618
  if (record.native) {
21618
- if (record.native.stale) {
21619
+ if (record.native.stale || !record.native.started) {
21619
21620
  record.native.stale = false;
21620
21621
  const handle = this.handles.get(id);
21621
21622
  if (handle) void this.startNativeIndicator(id, handle);
@@ -21796,6 +21797,7 @@ var EngineOrchestrator = class _EngineOrchestrator {
21796
21797
  }
21797
21798
  };
21798
21799
  record.native.instance.start(ctx, record.inputValues);
21800
+ record.native.started = true;
21799
21801
  } catch (err) {
21800
21802
  this.fail(id, handle, err);
21801
21803
  }
@@ -22339,6 +22341,8 @@ function volumeLayerData(inputs) {
22339
22341
  }
22340
22342
  var VolumeIndicator = class {
22341
22343
  constructor() {
22344
+ /** Null until start() — pre-start setInputs/resume must record without pushing. */
22345
+ this.ctx = null;
22342
22346
  this.inputs = {};
22343
22347
  }
22344
22348
  start(ctx, inputs) {
@@ -22355,13 +22359,13 @@ var VolumeIndicator = class {
22355
22359
  }
22356
22360
  setInputs(inputs) {
22357
22361
  this.inputs = inputs;
22358
- this.ctx.pushData(volumeLayerData(inputs));
22362
+ this.ctx?.pushData(volumeLayerData(inputs));
22359
22363
  }
22360
22364
  /** Hiding is a renderer-layer flag (set via `setIndicatorVisible`); no resources to free. */
22361
22365
  suspend() {
22362
22366
  }
22363
22367
  resume() {
22364
- this.ctx.pushData(volumeLayerData(this.inputs));
22368
+ this.ctx?.pushData(volumeLayerData(this.inputs));
22365
22369
  }
22366
22370
  stop() {
22367
22371
  }
@@ -22407,6 +22411,8 @@ function vpvrLayerData(inputs) {
22407
22411
  }
22408
22412
  var VpvrIndicator = class {
22409
22413
  constructor() {
22414
+ /** Null until start() — pre-start setInputs/resume must record without pushing. */
22415
+ this.ctx = null;
22410
22416
  this.inputs = {};
22411
22417
  }
22412
22418
  start(ctx, inputs) {
@@ -22423,13 +22429,13 @@ var VpvrIndicator = class {
22423
22429
  }
22424
22430
  setInputs(inputs) {
22425
22431
  this.inputs = inputs;
22426
- this.ctx.pushData(vpvrLayerData(inputs));
22432
+ this.ctx?.pushData(vpvrLayerData(inputs));
22427
22433
  }
22428
22434
  /** Hiding is a renderer-layer flag (set via `setIndicatorVisible`); no resources to free. */
22429
22435
  suspend() {
22430
22436
  }
22431
22437
  resume() {
22432
- this.ctx.pushData(vpvrLayerData(this.inputs));
22438
+ this.ctx?.pushData(vpvrLayerData(this.inputs));
22433
22439
  }
22434
22440
  stop() {
22435
22441
  }
@@ -22489,6 +22495,8 @@ function toPoints(bars, values, colors) {
22489
22495
  var ClassicIndicator = class {
22490
22496
  constructor(spec) {
22491
22497
  this.spec = spec;
22498
+ /** Null until start() — a pre-start setInputs must record without computing. */
22499
+ this.ctx = null;
22492
22500
  this.inputs = {};
22493
22501
  }
22494
22502
  start(ctx, inputs) {
@@ -22503,6 +22511,7 @@ var ClassicIndicator = class {
22503
22511
  }
22504
22512
  setInputs(inputs) {
22505
22513
  this.inputs = inputs;
22514
+ if (!this.ctx) return;
22506
22515
  this.recompute();
22507
22516
  }
22508
22517
  /** Nothing to free — the compute reads the live bar accessor on demand. */
@@ -22514,6 +22523,7 @@ var ClassicIndicator = class {
22514
22523
  stop() {
22515
22524
  }
22516
22525
  recompute() {
22526
+ if (!this.ctx) return;
22517
22527
  const bars = this.ctx.bars();
22518
22528
  const out = this.spec.compute(bars, this.inputs);
22519
22529
  const instanceId = this.spec.type;
@@ -1559,6 +1559,10 @@ interface ExternalIndicatorEntry {
1559
1559
  inputs?: Record<string, InputValue>;
1560
1560
  /** Declaration-prop overrides applied at add time. */
1561
1561
  props?: Record<string, InputValue>;
1562
+ /** Restore hidden: the indicator is suspended right after the add (legend row
1563
+ * stays, marked hidden) — a persistence handler carrying a hidden flag applies
1564
+ * it here so the engine never spends anything on a tucked-away indicator. */
1565
+ hidden?: boolean;
1562
1566
  }
1563
1567
  /** Where an action is projected. */
1564
1568
  type WidgetActionTarget = 'topbar' | 'context:body' | 'context:price-axis' | 'context:time-axis';
@@ -1559,6 +1559,10 @@ interface ExternalIndicatorEntry {
1559
1559
  inputs?: Record<string, InputValue>;
1560
1560
  /** Declaration-prop overrides applied at add time. */
1561
1561
  props?: Record<string, InputValue>;
1562
+ /** Restore hidden: the indicator is suspended right after the add (legend row
1563
+ * stays, marked hidden) — a persistence handler carrying a hidden flag applies
1564
+ * it here so the engine never spends anything on a tucked-away indicator. */
1565
+ hidden?: boolean;
1562
1566
  }
1563
1567
  /** Where an action is projected. */
1564
1568
  type WidgetActionTarget = 'topbar' | 'context:body' | 'context:price-axis' | 'context:time-axis';
package/dist/index.cjs CHANGED
@@ -8131,6 +8131,7 @@ var EngineOrchestrator = class _EngineOrchestrator {
8131
8131
  if (!record.native) continue;
8132
8132
  record.native.instance.stop();
8133
8133
  record.native.instance = record.native.descriptor.create();
8134
+ record.native.started = false;
8134
8135
  record.pendingStructural = true;
8135
8136
  if (record.hidden) {
8136
8137
  record.native.stale = true;
@@ -8626,7 +8627,7 @@ var EngineOrchestrator = class _EngineOrchestrator {
8626
8627
  if (record.renderHandle) this.renderer.setIndicatorVisible?.(record.renderHandle, true);
8627
8628
  record.pendingStructural = true;
8628
8629
  if (record.native) {
8629
- if (record.native.stale) {
8630
+ if (record.native.stale || !record.native.started) {
8630
8631
  record.native.stale = false;
8631
8632
  const handle = this.handles.get(id);
8632
8633
  if (handle) void this.startNativeIndicator(id, handle);
@@ -8807,6 +8808,7 @@ var EngineOrchestrator = class _EngineOrchestrator {
8807
8808
  }
8808
8809
  };
8809
8810
  record.native.instance.start(ctx, record.inputValues);
8811
+ record.native.started = true;
8810
8812
  } catch (err) {
8811
8813
  this.fail(id, handle, err);
8812
8814
  }
@@ -31331,6 +31333,8 @@ function volumeLayerData(inputs) {
31331
31333
  }
31332
31334
  var VolumeIndicator = class {
31333
31335
  constructor() {
31336
+ /** Null until start() — pre-start setInputs/resume must record without pushing. */
31337
+ this.ctx = null;
31334
31338
  this.inputs = {};
31335
31339
  }
31336
31340
  start(ctx, inputs) {
@@ -31347,13 +31351,13 @@ var VolumeIndicator = class {
31347
31351
  }
31348
31352
  setInputs(inputs) {
31349
31353
  this.inputs = inputs;
31350
- this.ctx.pushData(volumeLayerData(inputs));
31354
+ this.ctx?.pushData(volumeLayerData(inputs));
31351
31355
  }
31352
31356
  /** Hiding is a renderer-layer flag (set via `setIndicatorVisible`); no resources to free. */
31353
31357
  suspend() {
31354
31358
  }
31355
31359
  resume() {
31356
- this.ctx.pushData(volumeLayerData(this.inputs));
31360
+ this.ctx?.pushData(volumeLayerData(this.inputs));
31357
31361
  }
31358
31362
  stop() {
31359
31363
  }
@@ -31399,6 +31403,8 @@ function vpvrLayerData(inputs) {
31399
31403
  }
31400
31404
  var VpvrIndicator = class {
31401
31405
  constructor() {
31406
+ /** Null until start() — pre-start setInputs/resume must record without pushing. */
31407
+ this.ctx = null;
31402
31408
  this.inputs = {};
31403
31409
  }
31404
31410
  start(ctx, inputs) {
@@ -31415,13 +31421,13 @@ var VpvrIndicator = class {
31415
31421
  }
31416
31422
  setInputs(inputs) {
31417
31423
  this.inputs = inputs;
31418
- this.ctx.pushData(vpvrLayerData(inputs));
31424
+ this.ctx?.pushData(vpvrLayerData(inputs));
31419
31425
  }
31420
31426
  /** Hiding is a renderer-layer flag (set via `setIndicatorVisible`); no resources to free. */
31421
31427
  suspend() {
31422
31428
  }
31423
31429
  resume() {
31424
- this.ctx.pushData(vpvrLayerData(this.inputs));
31430
+ this.ctx?.pushData(vpvrLayerData(this.inputs));
31425
31431
  }
31426
31432
  stop() {
31427
31433
  }
@@ -31487,6 +31493,8 @@ function toPoints(bars, values, colors) {
31487
31493
  var ClassicIndicator = class {
31488
31494
  constructor(spec) {
31489
31495
  this.spec = spec;
31496
+ /** Null until start() — a pre-start setInputs must record without computing. */
31497
+ this.ctx = null;
31490
31498
  this.inputs = {};
31491
31499
  }
31492
31500
  start(ctx, inputs) {
@@ -31501,6 +31509,7 @@ var ClassicIndicator = class {
31501
31509
  }
31502
31510
  setInputs(inputs) {
31503
31511
  this.inputs = inputs;
31512
+ if (!this.ctx) return;
31504
31513
  this.recompute();
31505
31514
  }
31506
31515
  /** Nothing to free — the compute reads the live bar accessor on demand. */
@@ -31512,6 +31521,7 @@ var ClassicIndicator = class {
31512
31521
  stop() {
31513
31522
  }
31514
31523
  recompute() {
31524
+ if (!this.ctx) return;
31515
31525
  const bars = this.ctx.bars();
31516
31526
  const out = this.spec.compute(bars, this.inputs);
31517
31527
  const instanceId = this.spec.type;
package/dist/index.d.cts CHANGED
@@ -1,9 +1,9 @@
1
- import { D as DrawingsDocument, R as Resolved } from './contributions-DEPRtkmG.cjs';
2
- export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, c as DataControl, d as DrawingsControl, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, n as IndicatorEventMap, I as IndicatorHandle, o as IndicatorSummary, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, P as ParsedSymbol, y as PreparedScript, z as RendererControl, A as RunIndicatorResult, G as SceneInspection, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, $ as TypedEventBus, V as Vela, a0 as VelaDeps, a1 as VelaEventMap, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, a9 as nativeIndicatorDescriptors, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-DEPRtkmG.cjs';
1
+ import { D as DrawingsDocument, R as Resolved } from './contributions-D8HdlKmp.cjs';
2
+ export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, c as DataControl, d as DrawingsControl, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, n as IndicatorEventMap, I as IndicatorHandle, o as IndicatorSummary, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, P as ParsedSymbol, y as PreparedScript, z as RendererControl, A as RunIndicatorResult, G as SceneInspection, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, $ as TypedEventBus, V as Vela, a0 as VelaDeps, a1 as VelaEventMap, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, a9 as nativeIndicatorDescriptors, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-D8HdlKmp.cjs';
3
3
  import { D as Drawing, S as SerializedDrawing, U as Unsubscribe, L as LineStyle, P as PriceStyle, e as IChartRenderer, R as RendererCapabilities, f as RendererDisplayOptions, g as IndicatorRenderHandle, h as IndicatorStatus, c as VelaTheme, O as OHLCV, i as Pane, j as PaneAction, k as MoveTarget, l as IndicatorModel, m as ScenePatch, I as InputValue, n as SymbolPickerFn, o as LegendActionView, p as LegendCalloutView, q as InputChangeEvent, T as ThemeName, C as CrosshairEvent, r as ClickEvent, A as AxisLongPressEvent, a as VisibleRange, s as DataWindowReadout, t as IDrawingsRendererPort, u as Millis, v as SnapMode, w as DrawingTypeKey, x as ToolbarDefinition, M as MarketConfig } from './options-BCRmYALw.cjs';
4
4
  export { y as AddIndicatorOptions, z as AnimationConfig, B as Background, E as BoxFontFamily, F as BoxHAlign, G as BoxTextSize, H as BoxVAlign, J as CandleBarColor, K as CandleSeries, Q as CandleStyle, W as DataWindowGroup, X as DataWindowOHLC, Y as DataWindowRow, Z as DirtyRange, _ as DrawingBox, $ as DrawingExtend, a0 as DrawingIntent, a1 as DrawingLabel, a2 as DrawingLine, a3 as DrawingLinefill, a4 as DrawingMode, a5 as DrawingPoint, a6 as DrawingPolyline, a7 as DrawingSeriesBar, a8 as DrawingSeriesGateway, a9 as DrawingSeriesState, aa as DrawingStyle, ab as DrawingTable, ac as DrawingText, ad as DrawingXLoc, ae as DrawingsOption, af as Fill, ag as FillGradientStop, ah as IndicatorMeta, ai as InputCondition, aj as InputSchema, ak as InputType, al as InputWhen, am as LabelStyle, an as LabelYLoc, ao as LineLikeKind, ap as LineLikeSeries, aq as LineLikeStyle, ar as MarkerPoint, as as MarkerSeries, at as MarketSnapshot, au as MarketSwitch, av as PaneAxis, aw as PaneAxisBand, ax as PaneHint, ay as PaneKind, az as PolylinePoint, aA as PriceLine, aB as Projector, aC as ProviderName, aD as RendererConstructor, aE as Scene, aF as SchemaPatch, aG as SeriesKind, aH as SeriesPoint, aI as SeriesSpec, aJ as SeriesValueDelta, aK as SettingsField, aL as SettingsSchema, aM as SettingsVisibilityPolicy, aN as TableCell, aO as TableMerge, aP as TablePosition, aQ as ToolbarGroupConfig, aR as TradeExecution, aS as ValuePatch, b as VelaOptions, V as VisibleRangePreset, aT as buildToolbar, aU as defaultToolbar, aV as inputDeltas, aW as inputVisible } from './options-BCRmYALw.cjs';
5
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-UtWw2CgJ.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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, Y as createDrawing, Z as deserializeDrawing, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a2 as registerDrawingType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-DVUaROPo.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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, Y as createDrawing, Z as deserializeDrawing, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a2 as registerDrawingType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-Ccupy_BV.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-HF0IAzwf.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';
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { D as DrawingsDocument, R as Resolved } from './contributions-5nz3PLRe.js';
2
- export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, c as DataControl, d as DrawingsControl, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, n as IndicatorEventMap, I as IndicatorHandle, o as IndicatorSummary, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, P as ParsedSymbol, y as PreparedScript, z as RendererControl, A as RunIndicatorResult, G as SceneInspection, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, $ as TypedEventBus, V as Vela, a0 as VelaDeps, a1 as VelaEventMap, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, a9 as nativeIndicatorDescriptors, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-5nz3PLRe.js';
1
+ import { D as DrawingsDocument, R as Resolved } from './contributions-FqIWhN4p.js';
2
+ export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, c as DataControl, d as DrawingsControl, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, n as IndicatorEventMap, I as IndicatorHandle, o as IndicatorSummary, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, P as ParsedSymbol, y as PreparedScript, z as RendererControl, A as RunIndicatorResult, G as SceneInspection, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, $ as TypedEventBus, V as Vela, a0 as VelaDeps, a1 as VelaEventMap, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, a9 as nativeIndicatorDescriptors, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-FqIWhN4p.js';
3
3
  import { D as Drawing, S as SerializedDrawing, U as Unsubscribe, L as LineStyle, P as PriceStyle, e as IChartRenderer, R as RendererCapabilities, f as RendererDisplayOptions, g as IndicatorRenderHandle, h as IndicatorStatus, c as VelaTheme, O as OHLCV, i as Pane, j as PaneAction, k as MoveTarget, l as IndicatorModel, m as ScenePatch, I as InputValue, n as SymbolPickerFn, o as LegendActionView, p as LegendCalloutView, q as InputChangeEvent, T as ThemeName, C as CrosshairEvent, r as ClickEvent, A as AxisLongPressEvent, a as VisibleRange, s as DataWindowReadout, t as IDrawingsRendererPort, u as Millis, v as SnapMode, w as DrawingTypeKey, x as ToolbarDefinition, M as MarketConfig } from './options-BCRmYALw.js';
4
4
  export { y as AddIndicatorOptions, z as AnimationConfig, B as Background, E as BoxFontFamily, F as BoxHAlign, G as BoxTextSize, H as BoxVAlign, J as CandleBarColor, K as CandleSeries, Q as CandleStyle, W as DataWindowGroup, X as DataWindowOHLC, Y as DataWindowRow, Z as DirtyRange, _ as DrawingBox, $ as DrawingExtend, a0 as DrawingIntent, a1 as DrawingLabel, a2 as DrawingLine, a3 as DrawingLinefill, a4 as DrawingMode, a5 as DrawingPoint, a6 as DrawingPolyline, a7 as DrawingSeriesBar, a8 as DrawingSeriesGateway, a9 as DrawingSeriesState, aa as DrawingStyle, ab as DrawingTable, ac as DrawingText, ad as DrawingXLoc, ae as DrawingsOption, af as Fill, ag as FillGradientStop, ah as IndicatorMeta, ai as InputCondition, aj as InputSchema, ak as InputType, al as InputWhen, am as LabelStyle, an as LabelYLoc, ao as LineLikeKind, ap as LineLikeSeries, aq as LineLikeStyle, ar as MarkerPoint, as as MarkerSeries, at as MarketSnapshot, au as MarketSwitch, av as PaneAxis, aw as PaneAxisBand, ax as PaneHint, ay as PaneKind, az as PolylinePoint, aA as PriceLine, aB as Projector, aC as ProviderName, aD as RendererConstructor, aE as Scene, aF as SchemaPatch, aG as SeriesKind, aH as SeriesPoint, aI as SeriesSpec, aJ as SeriesValueDelta, aK as SettingsField, aL as SettingsSchema, aM as SettingsVisibilityPolicy, aN as TableCell, aO as TableMerge, aP as TablePosition, aQ as ToolbarGroupConfig, aR as TradeExecution, aS as ValuePatch, b as VelaOptions, V as VisibleRangePreset, aT as buildToolbar, aU as defaultToolbar, aV as inputDeltas, aW as inputVisible } from './options-BCRmYALw.js';
5
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-Cb-2lC5O.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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, Y as createDrawing, Z as deserializeDrawing, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a2 as registerDrawingType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-CUtfLeqz.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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, Y as createDrawing, Z as deserializeDrawing, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a2 as registerDrawingType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-B4mnNAeh.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-HF0IAzwf.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';
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import './chunk-FE6V2YAQ.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-22QJKGXX.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-TRZQQUTR.js';
3
3
  export { DEFAULT_PANEL_MAX_WIDTH, DEFAULT_PANEL_MIN_WIDTH, DEFAULT_PANEL_WIDTH, Drawing, OVERRIDABLE_TOPBAR_IDS, chartType, chartTypes, clampPanelWidth, createDrawing, deserializeDrawing, drawingTypes, getDrawingType, getNativeIndicator, inputDeltas, inputVisible, legendActions, legendCallouts, nativeIndicatorDescriptors, nativeIndicatorTypes, normalizeSettingsRow, registerChartType, registerDefaultEngine, registerDrawingType, registerLegendAction, registerLegendCallout, registerNativeIndicator, registerRendererDefaults, registerRendererLayer, registerSidePanel, registerStatePersistence, registerSymbolRanking, registerWidgetAction, registerWidgetAttachment, rendererDefaults, rendererLayers, resolveEngines, settingsRowValueKeys, sidePanels, stableSeriesId, statePersistenceHandlers, symbolRanking, tickerModifierIds, topbarActionOverride, unregisterChartType, unregisterDefaultEngine, unregisterLegendAction, unregisterLegendCallout, unregisterNativeIndicator, unregisterRendererDefaults, unregisterRendererLayer, unregisterSidePanel, unregisterStatePersistence, unregisterWidgetAction, unregisterWidgetAttachment, widgetActions, widgetAttachments } from './chunk-IFJJPXSV.js';
4
4
  import './chunk-T5Z5YUCF.js';
5
5
  export { ACCENT, ACCENT_BRIGHT, BEARISH, BULLISH, CATEGORICAL, CHIP_PLATE, 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-CAFCLMPF.js';
@@ -1,5 +1,5 @@
1
1
  import { w as DrawingTypeKey, aa as DrawingStyle, S as SerializedDrawing, D as Drawing, aG as SeriesKind, O as OHLCV, c as VelaTheme } from './options-BCRmYALw.js';
2
- import { c as DataControl } from './contributions-5nz3PLRe.js';
2
+ import { c as DataControl } from './contributions-FqIWhN4p.js';
3
3
  import './side-panel-HF0IAzwf.js';
4
4
  import './icons-BZYbJXSV.js';
5
5
  import './keymap-CGOz5F5f.js';
@@ -1,5 +1,5 @@
1
1
  import { w as DrawingTypeKey, aa as DrawingStyle, S as SerializedDrawing, D as Drawing, aG as SeriesKind, O as OHLCV, c as VelaTheme } from './options-BCRmYALw.cjs';
2
- import { c as DataControl } from './contributions-DEPRtkmG.cjs';
2
+ import { c as DataControl } from './contributions-D8HdlKmp.cjs';
3
3
  import './side-panel-HF0IAzwf.cjs';
4
4
  import './icons-BZYbJXSV.cjs';
5
5
  import './keymap-CGOz5F5f.cjs';
package/dist/plugin.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- 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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-DVUaROPo.cjs';
2
- export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, y as PreparedScript, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-DEPRtkmG.cjs';
1
+ 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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-Ccupy_BV.cjs';
2
+ export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, y as PreparedScript, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-D8HdlKmp.cjs';
3
3
  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-HF0IAzwf.cjs';
4
4
  export { B as Background, E as BoxFontFamily, F as BoxHAlign, G as BoxTextSize, H as BoxVAlign, J as CandleBarColor, K as CandleSeries, Q as CandleStyle, Z as DirtyRange, _ as DrawingBox, $ as DrawingExtend, a1 as DrawingLabel, a2 as DrawingLine, a3 as DrawingLinefill, a6 as DrawingPolyline, ab as DrawingTable, w as DrawingTypeKey, ad as DrawingXLoc, af as Fill, ag as FillGradientStop, ah as IndicatorMeta, l as IndicatorModel, ai as InputCondition, aj as InputSchema, ak as InputType, I as InputValue, al as InputWhen, am as LabelStyle, an as LabelYLoc, ao as LineLikeKind, ap as LineLikeSeries, aq as LineLikeStyle, L as LineStyle, ar as MarkerPoint, as as MarkerSeries, u as Millis, O as OHLCV, i as Pane, av as PaneAxis, aw as PaneAxisBand, ax as PaneHint, ay as PaneKind, az as PolylinePoint, aA as PriceLine, P as PriceStyle, aE as Scene, m as ScenePatch, aF as SchemaPatch, aG as SeriesKind, aH as SeriesPoint, aI as SeriesSpec, aJ as SeriesValueDelta, aN as TableCell, aO as TableMerge, aP as TablePosition, aR as TradeExecution, aS as ValuePatch, aV as inputDeltas, aW as inputVisible } from './options-BCRmYALw.cjs';
5
5
  export { i as iconMarkup, r as registerIcon } from './icons-BZYbJXSV.cjs';
package/dist/plugin.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- 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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-CUtfLeqz.js';
2
- export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, y as PreparedScript, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-5nz3PLRe.js';
1
+ 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 CHIP_PLATE, f as CROSSHAIR, g as ChartTypeDefinition, h as ChartTypeSettingsInstance, i as ChartTypeSettingsSection, j as ChartTypeSettingsSubsection, D as DrawingTypeMeta, H as HIGHLIGHT, I as INFO, k as INVALID, l as IdentifiableKind, M as MARKER, N as NEUTRAL, m as NormalizedSettingsRow, R as RendererLayerArgs, n as RendererLayerDefinition, o as RendererLayerInstance, S as SERIES_LINE, p as SESSION_OFF, q as SESSION_POST, r as SESSION_PRE, s as SLATE, t as SLATE_DEEP, u as SeriesDataEngine, v as SeriesDataEngineHost, w as SettingsInlineControl, x as SettingsRowCondition, y as SettingsRowDescriptor, z as SettingsRowInlineNumber, E as SettingsRowSwatch, F as SettingsRowValueKey, G as SettingsRowWhen, J as SettingsRowWidth, K as SettingsSelectOption, L as SettingsValueRow, T as TRADE_EXIT, O as TRADE_LONG, P as TRADE_SHORT, V as VALID, W as WARNING, Q as categoricalColor, U as chartType, X as chartTypes, _ as drawingTypes, $ as getDrawingType, a0 as normalizeSettingsRow, a1 as registerChartType, a3 as registerRendererDefaults, a4 as registerRendererLayer, a5 as rendererDefaults, a6 as rendererLayers, a7 as settingsRowValueKeys, a8 as stableSeriesId, a9 as tickerModifierIds, aa as unregisterChartType, ab as unregisterRendererDefaults, ac as unregisterRendererLayer } from './plugin-B4mnNAeh.js';
2
+ export { B as BarsChangeReason, C as CellStateContext, b as ContextSelect, e as EngineAlert, f as EngineCapabilities, g as EngineContextSnapshot, h as EngineFactory, i as EngineWarning, j as ExecutionHandlers, k as ExecutionMarket, l as ExecutionRequest, m as ExecutionSession, E as ExternalIndicatorEntry, F as FetchSeries, L as LegendActionDescriptor, p as LegendCalloutContent, q as LegendCalloutDescriptor, r as LegendCalloutItem, s as LegendCalloutSpec, t as LegendIndicatorInfo, N as NativeIndicator, u as NativeIndicatorContext, v as NativeIndicatorDescriptor, w as NativeIndicatorInfo, x as NativeIndicatorOutput, O as OVERRIDABLE_TOPBAR_IDS, y as PreparedScript, a as ScriptRun, H as ScriptRunCause, J as ScriptRunResult, S as ScriptingEngine, K as SidePanelButton, M as SidePanelDescriptor, Q as SidePanelHandle, T as SidePanelHeader, U as StatePersistenceHandler, X as StrategyFill, Y as StrategyState, Z as StrategyTrade, _ as SymbolRankingHook, a2 as VisibleBarRange, a3 as WidgetActionDescriptor, a4 as WidgetActionTarget, a5 as WidgetAttachment, W as WidgetContext, a6 as getNativeIndicator, a7 as legendActions, a8 as legendCallouts, aa as nativeIndicatorTypes, ab as registerDefaultEngine, ac as registerLegendAction, ad as registerLegendCallout, ae as registerNativeIndicator, af as registerSidePanel, ag as registerStatePersistence, ah as registerSymbolRanking, ai as registerWidgetAction, aj as registerWidgetAttachment, ak as resolveEngines, al as sidePanels, am as statePersistenceHandlers, an as symbolRanking, ao as topbarActionOverride, ap as unregisterDefaultEngine, aq as unregisterLegendAction, ar as unregisterLegendCallout, as as unregisterNativeIndicator, at as unregisterSidePanel, au as unregisterStatePersistence, av as unregisterWidgetAction, aw as unregisterWidgetAttachment, ax as widgetActions, ay as widgetAttachments } from './contributions-FqIWhN4p.js';
3
3
  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-HF0IAzwf.js';
4
4
  export { B as Background, E as BoxFontFamily, F as BoxHAlign, G as BoxTextSize, H as BoxVAlign, J as CandleBarColor, K as CandleSeries, Q as CandleStyle, Z as DirtyRange, _ as DrawingBox, $ as DrawingExtend, a1 as DrawingLabel, a2 as DrawingLine, a3 as DrawingLinefill, a6 as DrawingPolyline, ab as DrawingTable, w as DrawingTypeKey, ad as DrawingXLoc, af as Fill, ag as FillGradientStop, ah as IndicatorMeta, l as IndicatorModel, ai as InputCondition, aj as InputSchema, ak as InputType, I as InputValue, al as InputWhen, am as LabelStyle, an as LabelYLoc, ao as LineLikeKind, ap as LineLikeSeries, aq as LineLikeStyle, L as LineStyle, ar as MarkerPoint, as as MarkerSeries, u as Millis, O as OHLCV, i as Pane, av as PaneAxis, aw as PaneAxisBand, ax as PaneHint, ay as PaneKind, az as PolylinePoint, aA as PriceLine, P as PriceStyle, aE as Scene, m as ScenePatch, aF as SchemaPatch, aG as SeriesKind, aH as SeriesPoint, aI as SeriesSpec, aJ as SeriesValueDelta, aN as TableCell, aO as TableMerge, aP as TablePosition, aR as TradeExecution, aS as ValuePatch, aV as inputDeltas, aW as inputVisible } from './options-BCRmYALw.js';
5
5
  export { i as iconMarkup, r as registerIcon } from './icons-BZYbJXSV.js';
@@ -1,5 +1,5 @@
1
1
  import { D as DataProvider } from './DataProvider-Cb-2lC5O.js';
2
- import { S as ScriptingEngine, V as Vela } from './contributions-5nz3PLRe.js';
2
+ import { S as ScriptingEngine, V as Vela } from './contributions-FqIWhN4p.js';
3
3
  import { V as VisibleRangePreset } from './options-BCRmYALw.js';
4
4
 
5
5
  /** The linkable dimensions. `crosshair` mirrors the pointer time onto same-group
@@ -1,5 +1,5 @@
1
1
  import { D as DataProvider } from './DataProvider-UtWw2CgJ.cjs';
2
- import { S as ScriptingEngine, V as Vela } from './contributions-DEPRtkmG.cjs';
2
+ import { S as ScriptingEngine, V as Vela } from './contributions-D8HdlKmp.cjs';
3
3
  import { V as VisibleRangePreset } from './options-BCRmYALw.cjs';
4
4
 
5
5
  /** The linkable dimensions. `crosshair` mirrors the pointer time onto same-group
@@ -8107,6 +8107,7 @@ var Vela = (function (exports) {
8107
8107
  if (!record.native) continue;
8108
8108
  record.native.instance.stop();
8109
8109
  record.native.instance = record.native.descriptor.create();
8110
+ record.native.started = false;
8110
8111
  record.pendingStructural = true;
8111
8112
  if (record.hidden) {
8112
8113
  record.native.stale = true;
@@ -8602,7 +8603,7 @@ var Vela = (function (exports) {
8602
8603
  if (record.renderHandle) this.renderer.setIndicatorVisible?.(record.renderHandle, true);
8603
8604
  record.pendingStructural = true;
8604
8605
  if (record.native) {
8605
- if (record.native.stale) {
8606
+ if (record.native.stale || !record.native.started) {
8606
8607
  record.native.stale = false;
8607
8608
  const handle = this.handles.get(id);
8608
8609
  if (handle) void this.startNativeIndicator(id, handle);
@@ -8783,6 +8784,7 @@ var Vela = (function (exports) {
8783
8784
  }
8784
8785
  };
8785
8786
  record.native.instance.start(ctx, record.inputValues);
8787
+ record.native.started = true;
8786
8788
  } catch (err) {
8787
8789
  this.fail(id, handle, err);
8788
8790
  }
@@ -38747,6 +38749,8 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38747
38749
  }
38748
38750
  var VolumeIndicator = class {
38749
38751
  constructor() {
38752
+ /** Null until start() — pre-start setInputs/resume must record without pushing. */
38753
+ this.ctx = null;
38750
38754
  this.inputs = {};
38751
38755
  }
38752
38756
  start(ctx, inputs) {
@@ -38763,13 +38767,13 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38763
38767
  }
38764
38768
  setInputs(inputs) {
38765
38769
  this.inputs = inputs;
38766
- this.ctx.pushData(volumeLayerData(inputs));
38770
+ this.ctx?.pushData(volumeLayerData(inputs));
38767
38771
  }
38768
38772
  /** Hiding is a renderer-layer flag (set via `setIndicatorVisible`); no resources to free. */
38769
38773
  suspend() {
38770
38774
  }
38771
38775
  resume() {
38772
- this.ctx.pushData(volumeLayerData(this.inputs));
38776
+ this.ctx?.pushData(volumeLayerData(this.inputs));
38773
38777
  }
38774
38778
  stop() {
38775
38779
  }
@@ -38815,6 +38819,8 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38815
38819
  }
38816
38820
  var VpvrIndicator = class {
38817
38821
  constructor() {
38822
+ /** Null until start() — pre-start setInputs/resume must record without pushing. */
38823
+ this.ctx = null;
38818
38824
  this.inputs = {};
38819
38825
  }
38820
38826
  start(ctx, inputs) {
@@ -38831,13 +38837,13 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38831
38837
  }
38832
38838
  setInputs(inputs) {
38833
38839
  this.inputs = inputs;
38834
- this.ctx.pushData(vpvrLayerData(inputs));
38840
+ this.ctx?.pushData(vpvrLayerData(inputs));
38835
38841
  }
38836
38842
  /** Hiding is a renderer-layer flag (set via `setIndicatorVisible`); no resources to free. */
38837
38843
  suspend() {
38838
38844
  }
38839
38845
  resume() {
38840
- this.ctx.pushData(vpvrLayerData(this.inputs));
38846
+ this.ctx?.pushData(vpvrLayerData(this.inputs));
38841
38847
  }
38842
38848
  stop() {
38843
38849
  }
@@ -38903,6 +38909,8 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38903
38909
  var ClassicIndicator = class {
38904
38910
  constructor(spec) {
38905
38911
  this.spec = spec;
38912
+ /** Null until start() — a pre-start setInputs must record without computing. */
38913
+ this.ctx = null;
38906
38914
  this.inputs = {};
38907
38915
  }
38908
38916
  start(ctx, inputs) {
@@ -38917,6 +38925,7 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38917
38925
  }
38918
38926
  setInputs(inputs) {
38919
38927
  this.inputs = inputs;
38928
+ if (!this.ctx) return;
38920
38929
  this.recompute();
38921
38930
  }
38922
38931
  /** Nothing to free — the compute reads the live bar accessor on demand. */
@@ -38928,6 +38937,7 @@ ${overlayScrollbarCss(".vela-sd-pane")}
38928
38937
  stop() {
38929
38938
  }
38930
38939
  recompute() {
38940
+ if (!this.ctx) return;
38931
38941
  const bars = this.ctx.bars();
38932
38942
  const out = this.spec.compute(bars, this.inputs);
38933
38943
  const instanceId = this.spec.type;