hyperprop-charting-library 0.1.120 → 0.1.122

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.
@@ -29,6 +29,22 @@ interface ChartOptions {
29
29
  candleColorEpsilon?: number;
30
30
  autoScaleSmoothing?: number;
31
31
  autoScaleIgnoreLatestCandle?: boolean;
32
+ /**
33
+ * Momentum panning after a flick, with exponential friction. Defaults to
34
+ * enabled for touch/pen and disabled for mouse (TradingView behavior).
35
+ */
36
+ kineticScroll?: {
37
+ touch?: boolean;
38
+ mouse?: boolean;
39
+ };
40
+ /**
41
+ * Authoritative bar interval in milliseconds. When set, the bar-close
42
+ * countdown, time extrapolation beyond the last bar, and axis density use
43
+ * this exact step instead of inferring it from bar spacing (inference can
44
+ * mis-read series whose deep history has gaps, e.g. session-aligned 4h
45
+ * futures data with sparse back-month eras). 0/undefined = infer.
46
+ */
47
+ timeStepMs?: number;
32
48
  pinOutOfRangeLines?: boolean;
33
49
  doubleClickEnabled?: boolean;
34
50
  doubleClickAction?: "reset" | "placeLimitOrder";
@@ -186,6 +202,23 @@ interface IndicatorPlugin<TInputs extends Record<string, unknown> = Record<strin
186
202
  paneHeightRatio?: number;
187
203
  defaultInputs?: TInputs;
188
204
  draw: (ctx: CanvasRenderingContext2D, renderContext: IndicatorRenderContext, inputs: TInputs) => void | IndicatorPaneRenderInfo;
205
+ /**
206
+ * Visible value range for overlay autoscale: the price scale expands so
207
+ * every reported range fits (e.g. Bollinger/VWAP bands never clip at the
208
+ * chart edge). `skipIndex` marks the live bar when the chart is configured
209
+ * to ignore it. Return null when the indicator has no visible values.
210
+ */
211
+ getAutoscaleRange?: (data: Array<{
212
+ time: Date;
213
+ o: number;
214
+ h: number;
215
+ l: number;
216
+ c: number;
217
+ v?: number;
218
+ }>, startIndex: number, endIndex: number, inputs: TInputs, skipIndex: number) => {
219
+ min: number;
220
+ max: number;
221
+ } | null;
189
222
  }
190
223
  interface BuiltInIndicatorInfo {
191
224
  id: string;