react-native-livechart 3.6.0 → 3.8.0

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.
@@ -6,7 +6,7 @@ import { type TooltipLayout } from "../hooks/crosshairShared";
6
6
  import type { LiveChartPalette } from "../types";
7
7
  import type { ResolvedSelectionDotConfig } from "../core/resolveConfig";
8
8
  import type { ChartEngineLayout } from "../core/useLiveChartEngine";
9
- export declare function CrosshairOverlay({ scrubX, crosshairOpacity, tooltipLayout, engine, padding, palette, font, showTooltip, children, renderTooltip, selectionDot, selectionY, scrubActive, selectionColor, dimOpacity, liveDotExtent, crosshairLineColor, crosshairDimColor, tooltipBackground, tooltipColor, tooltipBorderColor, }: {
9
+ export declare function CrosshairOverlay({ scrubX, crosshairOpacity, tooltipLayout, engine, padding, palette, font, showTooltip, children, renderTooltip, selectionDot, selectionY, scrubActive, selectionColor, dimOpacity, liveDotExtent, crosshairLineColor, crosshairDimColor, tooltipBackground, tooltipColor, tooltipBorderColor, tooltipBorderRadius, tooltipShowValue, tooltipShowTime, }: {
10
10
  scrubX: SharedValue<number>;
11
11
  crosshairOpacity: SharedValue<number>;
12
12
  tooltipLayout: SharedValue<TooltipLayout>;
@@ -45,5 +45,11 @@ export declare function CrosshairOverlay({ scrubX, crosshairOpacity, tooltipLayo
45
45
  tooltipBackground?: string;
46
46
  tooltipColor?: string;
47
47
  tooltipBorderColor?: string;
48
+ /** Tooltip pill corner radius in px. Default 5. */
49
+ tooltipBorderRadius?: number;
50
+ /** Draw the value row of the default tooltip body. Default true. */
51
+ tooltipShowValue?: boolean;
52
+ /** Draw the time row of the default tooltip body. Default true. */
53
+ tooltipShowTime?: boolean;
48
54
  }): import("react/jsx-runtime").JSX.Element;
49
55
  //# sourceMappingURL=CrosshairOverlay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CrosshairOverlay.d.ts","sourceRoot":"","sources":["../../src/components/CrosshairOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAKpE,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,gBAAgB,EAChB,aAAa,EACb,MAAM,EACN,OAAO,EACP,OAAO,EACP,IAAI,EACJ,WAAkB,EAClB,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,UAAgB,EAChB,aAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,GACnB,EAAE;IACD,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;kEAE8D;IAC9D,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;gFAC4E;IAC5E,aAAa,CAAC,EAAE,MAAM,SAAS,CAAC;IAChC;sDACkD;IAClD,YAAY,CAAC,EAAE,0BAA0B,GAAG,IAAI,CAAC;IACjD,gFAAgF;IAChF,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,oEAAoE;IACpE,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACzD;yCACqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;yCAIqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,2CA8IA"}
1
+ {"version":3,"file":"CrosshairOverlay.d.ts","sourceRoot":"","sources":["../../src/components/CrosshairOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAGpE,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,gBAAgB,EAChB,aAAa,EACb,MAAM,EACN,OAAO,EACP,OAAO,EACP,IAAI,EACJ,WAAkB,EAClB,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,UAAgB,EAChB,aAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,mBAAuB,EACvB,gBAAuB,EACvB,eAAsB,GACvB,EAAE;IACD,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;kEAE8D;IAC9D,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;gFAC4E;IAC5E,aAAa,CAAC,EAAE,MAAM,SAAS,CAAC;IAChC;sDACkD;IAClD,YAAY,CAAC,EAAE,0BAA0B,GAAG,IAAI,CAAC;IACjD,gFAAgF;IAChF,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,oEAAoE;IACpE,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACzD;yCACqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;yCAIqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mDAAmD;IACnD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mEAAmE;IACnE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,2CAkJA"}
@@ -0,0 +1,37 @@
1
+ import { type SharedValue } from "react-native-reanimated";
2
+ import type { ChartEngineLayout } from "../core/useLiveChartEngine";
3
+ import type { ChartPadding } from "../draw/line";
4
+ import type { TooltipLayout } from "../hooks/crosshairShared";
5
+ import type { TooltipRenderProps } from "../types";
6
+ /**
7
+ * React Native overlay (NOT Skia) that floats a custom `renderTooltip` element
8
+ * over the Skia canvas while scrubbing. A sibling of `<Canvas>` — like
9
+ * {@link AxisLabelOverlay} and `CustomMarkerOverlay` — so the element can be any
10
+ * RN view (e.g. a glass `BlurView`) and stays crisp at native resolution.
11
+ *
12
+ * The element is positioned entirely on the UI thread: a `useAnimatedStyle`
13
+ * transform tracks `scrubX` + the resolved `tooltipPlacement`, measuring the
14
+ * element's own size via `onLayout` so it can flip/clamp/center correctly — so
15
+ * movement stays smooth without JS re-renders, unlike rebuilding the tooltip
16
+ * from the JS-thread `onScrub`. The consumer binds the {@link TooltipRenderProps}
17
+ * SharedValues to animated text for the value/date to update on the UI thread.
18
+ *
19
+ * `pointerEvents="box-none"` lets the scrub pan gesture pass through the empty
20
+ * area (and any non-interactive tooltip body) while still allowing an
21
+ * interactive leaf inside the custom element to be tapped.
22
+ */
23
+ export declare function CustomTooltipOverlay({ renderTooltip, scrubX, scrubValue, scrubTime, scrubActive, crosshairOpacity, tooltipLayout, engine, padding, placement, margin, }: {
24
+ renderTooltip: (ctx: TooltipRenderProps) => React.ReactElement | null | undefined;
25
+ scrubX: SharedValue<number>;
26
+ scrubValue: SharedValue<number | null>;
27
+ scrubTime: SharedValue<number>;
28
+ scrubActive: SharedValue<boolean>;
29
+ crosshairOpacity: SharedValue<number>;
30
+ tooltipLayout: SharedValue<TooltipLayout>;
31
+ engine: ChartEngineLayout;
32
+ padding: ChartPadding;
33
+ placement: "side" | "top" | "bottom";
34
+ /** Gap (px) between the pill and the plot edge it's pinned to. Default 8. */
35
+ margin?: number;
36
+ }): import("react/jsx-runtime").JSX.Element | null;
37
+ //# sourceMappingURL=CustomTooltipOverlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomTooltipOverlay.d.ts","sourceRoot":"","sources":["../../src/components/CustomTooltipOverlay.tsx"],"names":[],"mappings":"AACA,OAAiB,EAIf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAQnD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,aAAa,EACb,MAAM,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,MAAM,EACN,OAAO,EACP,SAAS,EACT,MAAU,GACX,EAAE;IACD,aAAa,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;IAClF,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,UAAU,EAAE,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IACrC,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,kDAoEA"}
@@ -1 +1 @@
1
- {"version":3,"file":"LiveChart.d.ts","sourceRoot":"","sources":["../../src/components/LiveChart.tsx"],"names":[],"mappings":"AA6EA,OAAO,KAAK,EAEV,cAAc,EAGf,MAAM,UAAU,CAAC;AAwoClB,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAyF9C"}
1
+ {"version":3,"file":"LiveChart.d.ts","sourceRoot":"","sources":["../../src/components/LiveChart.tsx"],"names":[],"mappings":"AA6EA,OAAO,KAAK,EAEV,cAAc,EAGf,MAAM,UAAU,CAAC;AA0pClB,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CA+G9C"}
@@ -42,6 +42,16 @@ export interface ResolvedScrubConfig {
42
42
  tooltipColor: string | undefined;
43
43
  /** undefined → palette.tooltipBorder */
44
44
  tooltipBorderColor: string | undefined;
45
+ /** Tooltip pill corner radius in px. */
46
+ tooltipBorderRadius: number;
47
+ /** Where the tooltip pill sits relative to the scrub line. */
48
+ tooltipPlacement: "side" | "top" | "bottom";
49
+ /** Gap (px) between the tooltip and the plot edge it's pinned to. */
50
+ tooltipMargin: number;
51
+ /** Show the value row in the default tooltip body. */
52
+ tooltipShowValue: boolean;
53
+ /** Show the time row in the default tooltip body. */
54
+ tooltipShowTime: boolean;
45
55
  /** Press-and-hold delay (ms) before scrubbing activates. 0 = immediate. */
46
56
  panGestureDelay: number;
47
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolveConfig.d.ts","sourceRoot":"","sources":["../../src/core/resolveConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveConfig.d.ts","sourceRoot":"","sources":["../../src/core/resolveConfig.ts"],"names":[],"mappings":"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"}
@@ -85,7 +85,19 @@ export declare function computeTooltipLayout(scrubActive: boolean, scrubX: numbe
85
85
  * instead of a per-frame Skia `measureText` — scrubbing re-runs this worklet
86
86
  * every frame, and `measureText` shapes text each call (a real cost,
87
87
  * especially in the simulator). Falls back to `measureText` when 0. */
88
- monoCharWidth?: number): TooltipLayout;
88
+ monoCharWidth?: number,
89
+ /** Where the pill sits relative to the scrub line. `"side"` offsets it right
90
+ * (flipping left near the edge); `"top"`/`"bottom"` center it over the line,
91
+ * clamped into the plot and pinned to the plot's top/bottom. */
92
+ placement?: "side" | "top" | "bottom",
93
+ /** Render the value row. */
94
+ showValue?: boolean,
95
+ /** Render the time row. */
96
+ showTime?: boolean,
97
+ /** Canvas height in px — needed to pin `"bottom"` placement. */
98
+ canvasHeight?: number,
99
+ /** Gap in px between the pill and the plot edge it's pinned to. */
100
+ margin?: number): TooltipLayout;
89
101
  /**
90
102
  * Multi-series scrub tooltip — stacked lines (first row typically time, dim).
91
103
  */
@@ -196,5 +208,5 @@ export declare function pointInRect(px: number, py: number, rect: {
196
208
  h: number;
197
209
  }, slop?: number): boolean;
198
210
  /** Single-series crosshair tooltip — extracted for tests. */
199
- export declare function deriveCrosshairTooltipSingle(scrubActive: boolean, scrubX: number, scrubTime: number, scrubValue: number | null, padding: ChartPadding, canvasWidth: number, formatValue: (v: number) => string, formatTime: (t: number) => string, font: SkFont, monoCharWidth?: number): TooltipLayout;
211
+ export declare function deriveCrosshairTooltipSingle(scrubActive: boolean, scrubX: number, scrubTime: number, scrubValue: number | null, padding: ChartPadding, canvasWidth: number, formatValue: (v: number) => string, formatTime: (t: number) => string, font: SkFont, monoCharWidth?: number, placement?: "side" | "top" | "bottom", showValue?: boolean, showTime?: boolean, canvasHeight?: number, margin?: number): TooltipLayout;
200
212
  //# sourceMappingURL=crosshairShared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"crosshairShared.d.ts","sourceRoot":"","sources":["../../src/hooks/crosshairShared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crosshairShared.d.ts","sourceRoot":"","sources":["../../src/hooks/crosshairShared.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,9 @@ import { type ChartPadding } from "../draw/line";
16
16
  export declare function useChartPaths(engine: SingleEngineState, padding: ChartPadding, morphT?: SharedValue<number>,
17
17
  /** When set, also build `thresholdFillPath` — the band between the line and this
18
18
  * pixel-Y, closed at the threshold instead of the chart baseline. */
19
- thresholdY?: SharedValue<number>): {
19
+ thresholdY?: SharedValue<number>,
20
+ /** Draw the line/fill as a straight polyline instead of the monotone cubic. */
21
+ linear?: boolean): {
20
22
  readonly linePath: import("react-native-reanimated").DerivedValue<SkPath>;
21
23
  readonly fillPath: import("react-native-reanimated").DerivedValue<SkPath>;
22
24
  readonly thresholdFillPath: import("react-native-reanimated").DerivedValue<SkPath>;
@@ -1 +1 @@
1
- {"version":3,"file":"useChartPaths.d.ts","sourceRoot":"","sources":["../../src/hooks/useChartPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAKlE;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC;AAC5B;sEACsE;AACtE,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC;;;;EA0GjC"}
1
+ {"version":3,"file":"useChartPaths.d.ts","sourceRoot":"","sources":["../../src/hooks/useChartPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAKlE;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC;AAC5B;sEACsE;AACtE,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC;AAChC,+EAA+E;AAC/E,MAAM,UAAQ;;;;EA0Gf"}
@@ -30,5 +30,13 @@ badgeMetrics?: BadgeMetrics,
30
30
  * defers to it (no reticle placed) so that overlay's tap handler can act.
31
31
  * Omitted when nothing coexists.
32
32
  */
33
- deferTapHit?: (x: number, y: number) => boolean): CrosshairState;
33
+ deferTapHit?: (x: number, y: number) => boolean,
34
+ /** Where the tooltip pill sits relative to the scrub line. Default `"side"`. */
35
+ tooltipPlacement?: "side" | "top" | "bottom",
36
+ /** Render the value row in the default tooltip. Default `true`. */
37
+ tooltipShowValue?: boolean,
38
+ /** Render the time row in the default tooltip. Default `true`. */
39
+ tooltipShowTime?: boolean,
40
+ /** Gap (px) between the tooltip and the plot edge it's pinned to. Default `8`. */
41
+ tooltipMargin?: number): CrosshairState;
34
42
  //# sourceMappingURL=useCrosshair.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCrosshair.d.ts","sourceRoot":"","sources":["../../src/hooks/useCrosshair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGzD,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAaL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AA4C3B,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvE,YAAY,EAAE,UAAU,EAAE,CAAC;AAEzB,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE7B,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC7C,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,gBAAgB,EAC1B,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,EAC5C,UAAU,CAAC,EAAE,mBAAmB;AAChC,2EAA2E;AAC3E,eAAe,SAAI,EACnB,cAAc,CAAC,EAAE,MAAM,IAAI,EAC3B,YAAY,CAAC,EAAE,MAAM,IAAI;AACzB,+EAA+E;AAC/E,WAAW,CAAC,EAAE,yBAAyB,GAAG,IAAI,EAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI;AACjD,iEAAiE;AACjE,YAAY,GAAE,YAAqC;AACnD;;;;;GAKG;AACH,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,GAC9C,cAAc,CAwfhB"}
1
+ {"version":3,"file":"useCrosshair.d.ts","sourceRoot":"","sources":["../../src/hooks/useCrosshair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGzD,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAaL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AA4C3B,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvE,YAAY,EAAE,UAAU,EAAE,CAAC;AAEzB,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE7B,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IACxB,OAAO,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC7C,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,gBAAgB,EAC1B,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,EAC5C,UAAU,CAAC,EAAE,mBAAmB;AAChC,2EAA2E;AAC3E,eAAe,SAAI,EACnB,cAAc,CAAC,EAAE,MAAM,IAAI,EAC3B,YAAY,CAAC,EAAE,MAAM,IAAI;AACzB,+EAA+E;AAC/E,WAAW,CAAC,EAAE,yBAAyB,GAAG,IAAI,EAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI;AACjD,iEAAiE;AACjE,YAAY,GAAE,YAAqC;AACnD;;;;;GAKG;AACH,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO;AAC/C,gFAAgF;AAChF,gBAAgB,GAAE,MAAM,GAAG,KAAK,GAAG,QAAiB;AACpD,mEAAmE;AACnE,gBAAgB,UAAO;AACvB,kEAAkE;AAClE,eAAe,UAAO;AACtB,kFAAkF;AAClF,aAAa,SAAI,GAChB,cAAc,CA6fhB"}
package/dist/index.d.ts CHANGED
@@ -14,5 +14,5 @@ export { formatTime, formatValue } from "./lib/format";
14
14
  export { MONO_FONT_FAMILY } from "./lib/monoFontFamily";
15
15
  export { useDegen } from "./hooks/useDegen";
16
16
  export { useTradeStream } from "./hooks/useTradeStream";
17
- export type { AxisLabelConfig, BadgeConfig, BadgeMetrics, BadgeVariant, CandleMetrics, CandlePoint, ChartInsets, ChartSegment, DegenOptions, DegenShakePayload, EmptyStateMetrics, FontConfig, FontWeight, GradientConfig, GridMetrics, GridStyleConfig, LeftEdgeFadeConfig, LegendConfig, LegendStyle, LineConfig, LiveChartCoreProps, LiveChartMetrics, LiveChartMetricsOverride, LiveChartPalette, LiveChartPoint, LiveChartProps, LiveChartSeriesProps, Marker, MarkerHoverEvent, MarkerKind, Momentum, MomentumConfig, MotionMetrics, MultiSeriesDotConfig, PulseConfig, ReferenceLine, ReferenceLineBadgeConfig, ScrubActionConfig, ScrubActionPoint, ScrubConfig, ScrubPoint, ScrubPointCore, ScrubPointMulti, ScrubSeriesValue, SelectionDotConfig, SelectionDotProps, SelectionDotRingConfig, SeriesConfig, ThemeMode, ThresholdConfig, ThresholdLineConfig, TradeEvent, ValueLineConfig, XAxisConfig, YAxisConfig, } from "./types";
17
+ export type { AxisLabelConfig, BadgeConfig, BadgeMetrics, BadgeVariant, CandleMetrics, CandlePoint, ChartInsets, ChartSegment, DegenOptions, DegenShakePayload, EmptyStateMetrics, FontConfig, FontWeight, GradientConfig, GridMetrics, GridStyleConfig, LeftEdgeFadeConfig, LegendConfig, LegendStyle, LineConfig, LiveChartCoreProps, LiveChartMetrics, LiveChartMetricsOverride, LiveChartPalette, LiveChartPoint, LiveChartProps, LiveChartSeriesProps, Marker, MarkerHoverEvent, MarkerKind, Momentum, MomentumConfig, MotionMetrics, MultiSeriesDotConfig, PulseConfig, ReferenceLine, ReferenceLineBadgeConfig, ScrubActionConfig, ScrubActionPoint, ScrubConfig, ScrubPoint, ScrubPointCore, ScrubPointMulti, ScrubSeriesValue, SelectionDotConfig, SelectionDotProps, SelectionDotRingConfig, SeriesConfig, ThemeMode, ThresholdConfig, ThresholdLineConfig, TooltipRenderProps, TradeEvent, ValueLineConfig, XAxisConfig, YAxisConfig, } from "./types";
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AAC3D,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAIxD,YAAY,EACV,eAAe,EACf,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,MAAM,EACN,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,WAAW,EACX,WAAW,GACZ,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AAC3D,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAIxD,YAAY,EACV,eAAe,EACf,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,MAAM,EACN,gBAAgB,EAChB,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,WAAW,EACX,WAAW,GACZ,MAAM,SAAS,CAAC"}
@@ -36,7 +36,10 @@ export type SplinePathSink = {
36
36
  lineTo: (x: number, y: number) => unknown;
37
37
  cubicTo: (c1x: number, c1y: number, c2x: number, c2y: number, x: number, y: number) => unknown;
38
38
  };
39
- export declare function drawSpline(path: SplinePathSink, pts: number[], scratch?: SplineScratch): void;
39
+ export declare function drawSpline(path: SplinePathSink, pts: number[], scratch?: SplineScratch,
40
+ /** Straight polyline (`lineTo` per point) instead of the monotone cubic — an
41
+ * angular, hard-edged line. The caller has already `moveTo`'d point 0. */
42
+ linear?: boolean): void;
40
43
  /**
41
44
  * Value of the Fritsch–Carlson monotone cubic — the same curve {@link drawSpline}
42
45
  * renders — at `time`. Use this to anchor overlays (e.g. markers) exactly on the
@@ -1 +1 @@
1
- {"version":3,"file":"spline.d.ts","sourceRoot":"","sources":["../../src/math/spline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,CAAC,EAAE,MAAM,EAAE,CAAC;CACb;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,IAAI,aAAa,CAEjD;AAED;;;;;;;;;;;;;GAaG;AACH;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1C,OAAO,EAAE,CACP,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,KACN,OAAO,CAAC;CACd,CAAC;AAEF,wBAAgB,UAAU,CACxB,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,MAAM,EAAE,EACb,OAAO,CAAC,EAAE,aAAa,QA+DxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EAAE,EACxB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAoEf"}
1
+ {"version":3,"file":"spline.d.ts","sourceRoot":"","sources":["../../src/math/spline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,CAAC,EAAE,MAAM,EAAE,CAAC;CACb;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,IAAI,aAAa,CAEjD;AAED;;;;;;;;;;;;;GAaG;AACH;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1C,OAAO,EAAE,CACP,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,KACN,OAAO,CAAC;CACd,CAAC;AAEF,wBAAgB,UAAU,CACxB,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,MAAM,EAAE,EACb,OAAO,CAAC,EAAE,aAAa;AACvB;2EAC2E;AAC3E,MAAM,UAAQ,QAmEf;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EAAE,EACxB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAoEf"}
package/dist/types.d.ts CHANGED
@@ -200,6 +200,12 @@ export interface ValueLineConfig {
200
200
  export interface LineConfig {
201
201
  /** Stroke width of the main line in pixels. Default `2`. */
202
202
  width?: number;
203
+ /**
204
+ * Interpolation between points. `"monotone"` (default) draws a smooth monotone
205
+ * cubic; `"linear"` draws straight segments for an angular, hard-edged line —
206
+ * pair with `join: "miter"` + `cap: "butt"` for true sharp corners (no rounding).
207
+ */
208
+ curve?: "monotone" | "linear";
203
209
  /** Line color override. Defaults to palette-derived accent. */
204
210
  color?: string;
205
211
  /**
@@ -207,6 +213,17 @@ export interface LineConfig {
207
213
  * (left → right). Takes precedence over `color` when set.
208
214
  */
209
215
  colors?: string[];
216
+ /**
217
+ * Stroke line-join — how corners between segments render. `"round"` (default)
218
+ * softens every peak; `"miter"` gives sharp, angular ("edgy") peaks; `"bevel"`
219
+ * flattens them.
220
+ */
221
+ join?: "round" | "miter" | "bevel";
222
+ /**
223
+ * Stroke line-cap at the path's start/end. `"round"` (default) | `"butt"` |
224
+ * `"square"`. Pair `"butt"` with `join: "miter"` for a fully hard-edged line.
225
+ */
226
+ cap?: "round" | "butt" | "square";
210
227
  }
211
228
  /**
212
229
  * Color the line above vs. below a live threshold value — green above, red below
@@ -338,6 +355,27 @@ export interface ScrubConfig {
338
355
  tooltipColor?: string;
339
356
  /** Tooltip pill border color. Omit to use theme `tooltipBorder`. */
340
357
  tooltipBorderColor?: string;
358
+ /** Tooltip pill corner radius in px. Default `5`. */
359
+ tooltipBorderRadius?: number;
360
+ /**
361
+ * Where the tooltip pill sits relative to the vertical scrub line.
362
+ * `"side"` (default) offsets it to the right of the line and flips left near
363
+ * the right edge. `"top"` / `"bottom"` center it horizontally over the line,
364
+ * clamped into the plot and pinned to the plot's top or bottom. This also
365
+ * drives a custom {@link LiveChartProps.renderTooltip} so it gets the same
366
+ * placement for free.
367
+ */
368
+ tooltipPlacement?: "side" | "top" | "bottom";
369
+ /**
370
+ * Gap in px between the tooltip and the plot edge it's pinned to — the top for
371
+ * `"side"`/`"top"`, the bottom for `"bottom"`. Applies to the built-in pill and
372
+ * a custom {@link LiveChartProps.renderTooltip}. Default `8`.
373
+ */
374
+ tooltipMargin?: number;
375
+ /** Show the value row in the default tooltip body. Default `true`. */
376
+ tooltipShowValue?: boolean;
377
+ /** Show the time row in the default tooltip body. Default `true`. */
378
+ tooltipShowTime?: boolean;
341
379
  /**
342
380
  * Press-and-hold delay in milliseconds before scrubbing activates — think of
343
381
  * it as "press and hold to scrub." During the delay the pan is not captured,
@@ -429,6 +467,27 @@ export interface SelectionDotProps {
429
467
  /** Suggested dot radius in px. */
430
468
  size: number;
431
469
  }
470
+ /**
471
+ * Context passed to a custom {@link LiveChartProps.renderTooltip}. The element
472
+ * you return is a React Native view that the chart floats over the canvas and
473
+ * positions on the UI thread (per `scrub.tooltipPlacement`) — so movement stays
474
+ * smooth without JS re-renders, unlike rebuilding the tooltip from the JS-thread
475
+ * `onScrub` callback. Bind the SharedValues here to animated text (e.g. an
476
+ * `Animated.createAnimatedComponent(TextInput)` driven by `useAnimatedProps`)
477
+ * for the value/date to update on the UI thread too.
478
+ */
479
+ export interface TooltipRenderProps {
480
+ /** Interpolated value under the crosshair; `null` when none. */
481
+ value: SharedValue<number | null>;
482
+ /** Window time (unix seconds) under the crosshair. */
483
+ time: SharedValue<number>;
484
+ /** Value formatted with the chart's `formatValue` (computed UI-side). */
485
+ valueStr: SharedValue<string>;
486
+ /** Time formatted with the chart's `formatTime` (computed UI-side). */
487
+ timeStr: SharedValue<string>;
488
+ /** Whether scrubbing is currently active. */
489
+ active: SharedValue<boolean>;
490
+ }
432
491
  /** Outer ring drawn around the built-in selection dot (the subtle halo). */
433
492
  export interface SelectionDotRingConfig {
434
493
  /** Ring color. Defaults to the dot color. */
@@ -950,6 +1009,20 @@ export interface LiveChartCoreProps {
950
1009
  * glyph entirely (no double-draw).
951
1010
  */
952
1011
  renderMarker?: (marker: Marker) => ReactElement | null | undefined;
1012
+ /**
1013
+ * Render a fully custom scrub tooltip as a **React Native** element instead of
1014
+ * the built-in pill — the same idea as `renderMarker`. The chart floats the
1015
+ * returned element over the canvas and positions it on the UI thread per
1016
+ * `scrub.tooltipPlacement` (so it stays smooth, unlike rebuilding the tooltip
1017
+ * from the JS-thread `onScrub`). You own the chrome (border radius/color,
1018
+ * background are plain RN styles) and content — bind the {@link
1019
+ * TooltipRenderProps} SharedValues to animated text for the value/date.
1020
+ *
1021
+ * Return `null`/`undefined` to fall back to the built-in pill. Replaces the
1022
+ * default pill entirely while active. Single-series **line mode only** —
1023
+ * ignored in candle mode (the OHLC stack owns the tooltip there).
1024
+ */
1025
+ renderTooltip?: (ctx: TooltipRenderProps) => ReactElement | null | undefined;
953
1026
  /**
954
1027
  * Override individual resolved-palette keys on top of the palette derived from
955
1028
  * `accentColor` + `theme`. Only the keys you set are replaced.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -68,5 +68,5 @@
68
68
  },
69
69
  "sideEffects": false,
70
70
  "types": "./dist/index.d.ts",
71
- "version": "3.6.0"
71
+ "version": "3.8.0"
72
72
  }
@@ -15,8 +15,6 @@ import type { ResolvedSelectionDotConfig } from "../core/resolveConfig";
15
15
  import type { ChartEngineLayout } from "../core/useLiveChartEngine";
16
16
  import { SelectionDotSlot } from "./SelectionDot";
17
17
 
18
- const TOOLTIP_RADIUS = 5;
19
-
20
18
  export function CrosshairOverlay({
21
19
  scrubX,
22
20
  crosshairOpacity,
@@ -39,6 +37,9 @@ export function CrosshairOverlay({
39
37
  tooltipBackground,
40
38
  tooltipColor,
41
39
  tooltipBorderColor,
40
+ tooltipBorderRadius = 5,
41
+ tooltipShowValue = true,
42
+ tooltipShowTime = true,
42
43
  }: {
43
44
  scrubX: SharedValue<number>;
44
45
  crosshairOpacity: SharedValue<number>;
@@ -78,6 +79,12 @@ export function CrosshairOverlay({
78
79
  tooltipBackground?: string;
79
80
  tooltipColor?: string;
80
81
  tooltipBorderColor?: string;
82
+ /** Tooltip pill corner radius in px. Default 5. */
83
+ tooltipBorderRadius?: number;
84
+ /** Draw the value row of the default tooltip body. Default true. */
85
+ tooltipShowValue?: boolean;
86
+ /** Draw the time row of the default tooltip body. Default true. */
87
+ tooltipShowTime?: boolean;
81
88
  }) {
82
89
  // Explicit dependency arrays: with React Compiler enabled, Reanimated's
83
90
  // auto-detected worklet dependencies can change array size between renders
@@ -181,7 +188,7 @@ export function CrosshairOverlay({
181
188
  y={tipY}
182
189
  width={tipW}
183
190
  height={tipH}
184
- r={TOOLTIP_RADIUS}
191
+ r={tooltipBorderRadius}
185
192
  color={tooltipBackground ?? palette.tooltipBg}
186
193
  />
187
194
 
@@ -190,7 +197,7 @@ export function CrosshairOverlay({
190
197
  y={tipY}
191
198
  width={tipW}
192
199
  height={tipH}
193
- r={TOOLTIP_RADIUS}
200
+ r={tooltipBorderRadius}
194
201
  color={tooltipBorderColor ?? palette.tooltipBorder}
195
202
  style="stroke"
196
203
  strokeWidth={1}
@@ -199,20 +206,24 @@ export function CrosshairOverlay({
199
206
  {children ??
200
207
  renderTooltip?.() ?? (
201
208
  <Group>
202
- <SkiaText
203
- x={valueTextX}
204
- y={line1Y}
205
- text={valueStr}
206
- font={font}
207
- color={tooltipColor ?? palette.tooltipText}
208
- />
209
- <SkiaText
210
- x={timeTextX}
211
- y={line2Y}
212
- text={timeStr}
213
- font={font}
214
- color={palette.gridLabel}
215
- />
209
+ {tooltipShowValue && (
210
+ <SkiaText
211
+ x={valueTextX}
212
+ y={line1Y}
213
+ text={valueStr}
214
+ font={font}
215
+ color={tooltipColor ?? palette.tooltipText}
216
+ />
217
+ )}
218
+ {tooltipShowTime && (
219
+ <SkiaText
220
+ x={timeTextX}
221
+ y={tooltipShowValue ? line2Y : line1Y}
222
+ text={timeStr}
223
+ font={font}
224
+ color={palette.gridLabel}
225
+ />
226
+ )}
216
227
  </Group>
217
228
  )}
218
229
  </>
@@ -0,0 +1,135 @@
1
+ import { StyleSheet, View, type LayoutChangeEvent } from "react-native";
2
+ import Animated, {
3
+ useAnimatedStyle,
4
+ useDerivedValue,
5
+ useSharedValue,
6
+ type SharedValue,
7
+ } from "react-native-reanimated";
8
+
9
+ import type { ChartEngineLayout } from "../core/useLiveChartEngine";
10
+ import type { ChartPadding } from "../draw/line";
11
+ import type { TooltipLayout } from "../hooks/crosshairShared";
12
+ import type { TooltipRenderProps } from "../types";
13
+
14
+ // Mirror the Skia tooltip's offsets (see crosshairShared.ts) so a custom pill
15
+ // lines up with where the built-in one would sit. The vertical edge gap is
16
+ // configurable via `scrub.tooltipMargin` (passed as `margin`).
17
+ const OFFSET_X = 12;
18
+ const EDGE_GAP = 4;
19
+
20
+ /**
21
+ * React Native overlay (NOT Skia) that floats a custom `renderTooltip` element
22
+ * over the Skia canvas while scrubbing. A sibling of `<Canvas>` — like
23
+ * {@link AxisLabelOverlay} and `CustomMarkerOverlay` — so the element can be any
24
+ * RN view (e.g. a glass `BlurView`) and stays crisp at native resolution.
25
+ *
26
+ * The element is positioned entirely on the UI thread: a `useAnimatedStyle`
27
+ * transform tracks `scrubX` + the resolved `tooltipPlacement`, measuring the
28
+ * element's own size via `onLayout` so it can flip/clamp/center correctly — so
29
+ * movement stays smooth without JS re-renders, unlike rebuilding the tooltip
30
+ * from the JS-thread `onScrub`. The consumer binds the {@link TooltipRenderProps}
31
+ * SharedValues to animated text for the value/date to update on the UI thread.
32
+ *
33
+ * `pointerEvents="box-none"` lets the scrub pan gesture pass through the empty
34
+ * area (and any non-interactive tooltip body) while still allowing an
35
+ * interactive leaf inside the custom element to be tapped.
36
+ */
37
+ export function CustomTooltipOverlay({
38
+ renderTooltip,
39
+ scrubX,
40
+ scrubValue,
41
+ scrubTime,
42
+ scrubActive,
43
+ crosshairOpacity,
44
+ tooltipLayout,
45
+ engine,
46
+ padding,
47
+ placement,
48
+ margin = 8,
49
+ }: {
50
+ renderTooltip: (ctx: TooltipRenderProps) => React.ReactElement | null | undefined;
51
+ scrubX: SharedValue<number>;
52
+ scrubValue: SharedValue<number | null>;
53
+ scrubTime: SharedValue<number>;
54
+ scrubActive: SharedValue<boolean>;
55
+ crosshairOpacity: SharedValue<number>;
56
+ tooltipLayout: SharedValue<TooltipLayout>;
57
+ engine: ChartEngineLayout;
58
+ padding: ChartPadding;
59
+ placement: "side" | "top" | "bottom";
60
+ /** Gap (px) between the pill and the plot edge it's pinned to. Default 8. */
61
+ margin?: number;
62
+ }) {
63
+ // Formatted strings come ready-made off the layout (formatted UI-side in
64
+ // computeTooltipLayout), so consumers don't need a worklet-safe formatter.
65
+ const valueStr = useDerivedValue(() => tooltipLayout.get().valueStr);
66
+ const timeStr = useDerivedValue(() => tooltipLayout.get().timeStr);
67
+
68
+ const ctx: TooltipRenderProps = {
69
+ value: scrubValue,
70
+ time: scrubTime,
71
+ valueStr,
72
+ timeStr,
73
+ active: scrubActive,
74
+ };
75
+ const element = renderTooltip(ctx);
76
+
77
+ // Measured element size, so the transform can flip/center/clamp the pill.
78
+ const size = useSharedValue({ width: 0, height: 0 });
79
+ const onLayout = (e: LayoutChangeEvent) => {
80
+ const { width, height } = e.nativeEvent.layout;
81
+ size.value = { width, height };
82
+ };
83
+
84
+ const animatedStyle = useAnimatedStyle(() => {
85
+ const active = scrubActive.get();
86
+ const sx = scrubX.get();
87
+ const cw = engine.canvasWidth.get();
88
+ const ch = engine.canvasHeight.get();
89
+ const s = size.get();
90
+ const rightEdge = cw - padding.right;
91
+
92
+ let x: number;
93
+ let y: number;
94
+ if (placement === "side") {
95
+ x = sx + OFFSET_X;
96
+ if (x + s.width > rightEdge - EDGE_GAP) x = sx - s.width - OFFSET_X;
97
+ y = padding.top + margin;
98
+ } else {
99
+ const leftBound = padding.left + EDGE_GAP;
100
+ const rightBound = rightEdge - EDGE_GAP - s.width;
101
+ x = Math.min(
102
+ Math.max(sx - s.width / 2, leftBound),
103
+ Math.max(leftBound, rightBound),
104
+ );
105
+ y =
106
+ placement === "top"
107
+ ? padding.top + margin
108
+ : ch - padding.bottom - margin - s.height;
109
+ }
110
+
111
+ return {
112
+ opacity: active ? crosshairOpacity.get() : 0,
113
+ transform: [{ translateX: x }, { translateY: y }],
114
+ };
115
+ });
116
+
117
+ if (element == null) return null;
118
+
119
+ return (
120
+ <View style={StyleSheet.absoluteFill} pointerEvents="box-none">
121
+ <Animated.View
122
+ pointerEvents="box-none"
123
+ onLayout={onLayout}
124
+ style={[styles.anchor, animatedStyle]}
125
+ >
126
+ {element}
127
+ </Animated.View>
128
+ </View>
129
+ );
130
+ }
131
+
132
+ const styles = StyleSheet.create({
133
+ // top/left 0 + transform so the measured element can be placed precisely.
134
+ anchor: { position: "absolute", top: 0, left: 0 },
135
+ });
@@ -87,6 +87,7 @@ import {
87
87
  } from "./ThresholdLineOverlay";
88
88
  import { AxisLabelOverlay } from "./AxisLabelOverlay";
89
89
  import { CustomMarkerOverlay } from "./CustomMarkerOverlay";
90
+ import { CustomTooltipOverlay } from "./CustomTooltipOverlay";
90
91
  import { BadgeOverlay } from "./BadgeOverlay";
91
92
  import { CrosshairOverlay } from "./CrosshairOverlay";
92
93
  import { DegenParticlesOverlay } from "./DegenParticlesOverlay";
@@ -201,6 +202,7 @@ function useLiveChartController({
201
202
  onMarkerHover,
202
203
  markerHitRadius = 16,
203
204
  renderMarker,
205
+ renderTooltip,
204
206
  leftEdgeFade = true,
205
207
 
206
208
  // ── Callbacks ───────────────────────────────────────────────────────────
@@ -400,6 +402,8 @@ function useLiveChartController({
400
402
  reveal.morphT,
401
403
  // Only build the band path when the fill is actually on.
402
404
  thresholdCfg?.fill ? thresholdGeom.lineY : undefined,
405
+ // Straight polyline instead of the monotone cubic when line.curve === "linear".
406
+ lineProp?.curve === "linear",
403
407
  );
404
408
  const { upBodiesPath, downBodiesPath, upWicksPath, downWicksPath } =
405
409
  useCandlePaths(
@@ -532,6 +536,10 @@ function useLiveChartController({
532
536
  onScrubAction,
533
537
  metricsCfg.badge,
534
538
  markersActive || refPressActive ? deferTapHit : undefined,
539
+ scrubCfg?.tooltipPlacement ?? "side",
540
+ scrubCfg?.tooltipShowValue ?? true,
541
+ scrubCfg?.tooltipShowTime ?? true,
542
+ scrubCfg?.tooltipMargin ?? 8,
535
543
  );
536
544
 
537
545
  // Scrub-action composes a Tap (place/move the reticle, press the badge, dismiss)
@@ -685,6 +693,7 @@ function useLiveChartController({
685
693
  markersActive,
686
694
  markersSV,
687
695
  renderMarker,
696
+ renderTooltip,
688
697
  // selection dot: resolved config + fallback color (the chart line/accent color)
689
698
  selectionDot: selectionDotCfg,
690
699
  selectionColor: lineProp?.color ?? palette.line,
@@ -895,8 +904,8 @@ function ChartStack({ model }: { model: LiveChartModel }) {
895
904
  path={linePath}
896
905
  style="stroke"
897
906
  strokeWidth={strokeWidth}
898
- strokeCap="round"
899
- strokeJoin="round"
907
+ strokeCap={lineProp?.cap ?? "round"}
908
+ strokeJoin={lineProp?.join ?? "round"}
900
909
  color={lineProp?.color ?? palette.line}
901
910
  >
902
911
  {thresholdCfg && thresholdStrokeColors ? (
@@ -1060,8 +1069,14 @@ function ChartScrubLayer({ model }: { model: LiveChartModel }) {
1060
1069
  dotOuterRadius,
1061
1070
  selectionDot,
1062
1071
  selectionColor,
1072
+ renderTooltip,
1063
1073
  } = model;
1064
1074
 
1075
+ // A custom line-mode tooltip is an RN overlay (sibling of <Canvas>), so the
1076
+ // default Skia pill is suppressed here while it's active. Candle keeps its
1077
+ // built-in OHLC stack (renderTooltip is ignored in candle mode).
1078
+ const customTooltipActive = !isCandle && renderTooltip != null;
1079
+
1065
1080
  if (!tradeStreamResolved && !scrubCfg) return null;
1066
1081
 
1067
1082
  // Extend the scrub dim past the plot's right edge to fully cover the live dot
@@ -1094,7 +1109,7 @@ function ChartScrubLayer({ model }: { model: LiveChartModel }) {
1094
1109
  padding={effectivePadding}
1095
1110
  palette={palette}
1096
1111
  font={skiaFont}
1097
- showTooltip={scrubCfg.tooltip}
1112
+ showTooltip={scrubCfg.tooltip && !customTooltipActive}
1098
1113
  selectionDot={selectionDot}
1099
1114
  selectionY={crosshair.scrubDotY}
1100
1115
  scrubActive={crosshair.scrubActive}
@@ -1106,6 +1121,9 @@ function ChartScrubLayer({ model }: { model: LiveChartModel }) {
1106
1121
  tooltipBackground={scrubCfg.tooltipBackground}
1107
1122
  tooltipColor={scrubCfg.tooltipColor}
1108
1123
  tooltipBorderColor={scrubCfg.tooltipBorderColor}
1124
+ tooltipBorderRadius={scrubCfg.tooltipBorderRadius}
1125
+ tooltipShowValue={scrubCfg.tooltipShowValue}
1126
+ tooltipShowTime={scrubCfg.tooltipShowTime}
1109
1127
  >
1110
1128
  {/* Candle charts render a multi-line OHLC tooltip; the line
1111
1129
  chart falls back to CrosshairOverlay's default value/time
@@ -1259,6 +1277,10 @@ export function LiveChart(props: LiveChartProps) {
1259
1277
  markersActive,
1260
1278
  markersSV,
1261
1279
  renderMarker,
1280
+ renderTooltip,
1281
+ scrubCfg,
1282
+ crosshair,
1283
+ isCandle,
1262
1284
  } = model;
1263
1285
 
1264
1286
  return (
@@ -1326,6 +1348,24 @@ export function LiveChart(props: LiveChartProps) {
1326
1348
  lineData={engine.data}
1327
1349
  />
1328
1350
  )}
1351
+
1352
+ {/* Custom scrub tooltip — an RN view floated over the canvas (non-Skia),
1353
+ positioned on the UI thread. Sibling of <Canvas>. Line mode only. */}
1354
+ {scrubCfg && renderTooltip && !isCandle && (
1355
+ <CustomTooltipOverlay
1356
+ renderTooltip={renderTooltip}
1357
+ scrubX={crosshair.scrubX}
1358
+ scrubValue={crosshair.scrubValue}
1359
+ scrubTime={crosshair.scrubTime}
1360
+ scrubActive={crosshair.scrubActive}
1361
+ crosshairOpacity={crosshair.crosshairOpacity}
1362
+ tooltipLayout={crosshair.tooltipLayout}
1363
+ engine={engine}
1364
+ padding={effectivePadding}
1365
+ placement={scrubCfg.tooltipPlacement}
1366
+ margin={scrubCfg.tooltipMargin}
1367
+ />
1368
+ )}
1329
1369
  </View>
1330
1370
  </GestureDetector>
1331
1371
  );
@@ -89,6 +89,16 @@ export interface ResolvedScrubConfig {
89
89
  tooltipColor: string | undefined;
90
90
  /** undefined → palette.tooltipBorder */
91
91
  tooltipBorderColor: string | undefined;
92
+ /** Tooltip pill corner radius in px. */
93
+ tooltipBorderRadius: number;
94
+ /** Where the tooltip pill sits relative to the scrub line. */
95
+ tooltipPlacement: "side" | "top" | "bottom";
96
+ /** Gap (px) between the tooltip and the plot edge it's pinned to. */
97
+ tooltipMargin: number;
98
+ /** Show the value row in the default tooltip body. */
99
+ tooltipShowValue: boolean;
100
+ /** Show the time row in the default tooltip body. */
101
+ tooltipShowTime: boolean;
92
102
  /** Press-and-hold delay (ms) before scrubbing activates. 0 = immediate. */
93
103
  panGestureDelay: number;
94
104
  }
@@ -357,6 +367,11 @@ const SCRUB_DEFAULTS: ResolvedScrubConfig = {
357
367
  tooltipBackground: undefined,
358
368
  tooltipColor: undefined,
359
369
  tooltipBorderColor: undefined,
370
+ tooltipBorderRadius: 5,
371
+ tooltipPlacement: "side",
372
+ tooltipMargin: 8,
373
+ tooltipShowValue: true,
374
+ tooltipShowTime: true,
360
375
  panGestureDelay: 0,
361
376
  };
362
377
 
@@ -190,6 +190,18 @@ export function computeTooltipLayout(
190
190
  * every frame, and `measureText` shapes text each call (a real cost,
191
191
  * especially in the simulator). Falls back to `measureText` when 0. */
192
192
  monoCharWidth = 0,
193
+ /** Where the pill sits relative to the scrub line. `"side"` offsets it right
194
+ * (flipping left near the edge); `"top"`/`"bottom"` center it over the line,
195
+ * clamped into the plot and pinned to the plot's top/bottom. */
196
+ placement: "side" | "top" | "bottom" = "side",
197
+ /** Render the value row. */
198
+ showValue = true,
199
+ /** Render the time row. */
200
+ showTime = true,
201
+ /** Canvas height in px — needed to pin `"bottom"` placement. */
202
+ canvasHeight = 0,
203
+ /** Gap in px between the pill and the plot edge it's pinned to. */
204
+ margin = TOOLTIP_TOP_MARGIN,
193
205
  ): TooltipLayout {
194
206
  "worklet";
195
207
  if (!scrubActive || scrubValue === null) return HIDDEN_TOOLTIP;
@@ -199,9 +211,19 @@ export function computeTooltipLayout(
199
211
  const valueStr = formatValue(v);
200
212
  const timeStr = formatTime(t);
201
213
 
214
+ // Content toggles: pick which rows render. Guard both-off → keep the time row.
215
+ let sv = showValue;
216
+ let st = showTime;
217
+ let rowCount = (sv ? 1 : 0) + (st ? 1 : 0);
218
+ if (rowCount === 0) {
219
+ st = true;
220
+ rowCount = 1;
221
+ }
222
+
202
223
  const fm = font.getMetrics();
203
224
  const lineH = -fm.ascent + fm.descent;
204
- const totalH = TOOLTIP_PAD_Y * 2 + lineH * 2 + TOOLTIP_LINE_GAP;
225
+ const totalH =
226
+ TOOLTIP_PAD_Y * 2 + lineH * rowCount + TOOLTIP_LINE_GAP * (rowCount - 1);
205
227
 
206
228
  const valueW =
207
229
  monoCharWidth > 0
@@ -211,19 +233,39 @@ export function computeTooltipLayout(
211
233
  monoCharWidth > 0
212
234
  ? timeStr.length * monoCharWidth
213
235
  : measureFontTextWidth(font, timeStr);
214
- const contentW = Math.max(valueW, timeW);
236
+ // Only the visible rows contribute to the pill width.
237
+ const contentW = Math.max(sv ? valueW : 0, st ? timeW : 0);
215
238
  const pillW = contentW + TOOLTIP_PAD_X * 2;
216
239
 
217
240
  const rightEdge = canvasWidth - padding.right;
218
241
 
219
- let pillX = scrubX + TOOLTIP_OFFSET_X;
220
- if (pillX + pillW > rightEdge - TOOLTIP_EDGE_GAP) {
221
- pillX = scrubX - pillW - TOOLTIP_OFFSET_X;
242
+ let pillX: number;
243
+ let pillY: number;
244
+ if (placement === "side") {
245
+ pillX = scrubX + TOOLTIP_OFFSET_X;
246
+ if (pillX + pillW > rightEdge - TOOLTIP_EDGE_GAP) {
247
+ pillX = scrubX - pillW - TOOLTIP_OFFSET_X;
248
+ }
249
+ pillY = padding.top + margin;
250
+ } else {
251
+ // Centered horizontally over the scrub line, clamped into the plot.
252
+ const leftBound = padding.left + TOOLTIP_EDGE_GAP;
253
+ const rightBound = rightEdge - TOOLTIP_EDGE_GAP - pillW;
254
+ pillX = Math.min(
255
+ Math.max(scrubX - pillW / 2, leftBound),
256
+ Math.max(leftBound, rightBound),
257
+ );
258
+ pillY =
259
+ placement === "top"
260
+ ? padding.top + margin
261
+ : canvasHeight - padding.bottom - margin - totalH;
222
262
  }
223
- const pillY = padding.top + TOOLTIP_TOP_MARGIN;
224
263
 
225
- const line1Y = pillY + TOOLTIP_PAD_Y - fm.ascent;
226
- const line2Y = line1Y + lineH + TOOLTIP_LINE_GAP;
264
+ // line1Y = first rendered row's baseline; line2Y = second (when both shown).
265
+ // The overlay maps value→line1Y and time→(showValue ? line2Y : line1Y).
266
+ const firstBaseline = pillY + TOOLTIP_PAD_Y - fm.ascent;
267
+ const line1Y = firstBaseline;
268
+ const line2Y = firstBaseline + lineH + TOOLTIP_LINE_GAP;
227
269
 
228
270
  const valueTextX = pillX + TOOLTIP_PAD_X + (contentW - valueW) / 2;
229
271
  const timeTextX = pillX + TOOLTIP_PAD_X + (contentW - timeW) / 2;
@@ -618,6 +660,11 @@ export function deriveCrosshairTooltipSingle(
618
660
  formatTime: (t: number) => string,
619
661
  font: SkFont,
620
662
  monoCharWidth = 0,
663
+ placement: "side" | "top" | "bottom" = "side",
664
+ showValue = true,
665
+ showTime = true,
666
+ canvasHeight = 0,
667
+ margin = TOOLTIP_TOP_MARGIN,
621
668
  ): TooltipLayout {
622
669
  "worklet";
623
670
  if (!scrubActive || scrubTime < 0) return HIDDEN_TOOLTIP;
@@ -632,5 +679,10 @@ export function deriveCrosshairTooltipSingle(
632
679
  formatTime,
633
680
  font,
634
681
  monoCharWidth,
682
+ placement,
683
+ showValue,
684
+ showTime,
685
+ canvasHeight,
686
+ margin,
635
687
  );
636
688
  }
@@ -25,6 +25,8 @@ export function useChartPaths(
25
25
  /** When set, also build `thresholdFillPath` — the band between the line and this
26
26
  * pixel-Y, closed at the threshold instead of the chart baseline. */
27
27
  thresholdY?: SharedValue<number>,
28
+ /** Draw the line/fill as a straight polyline instead of the monotone cubic. */
29
+ linear = false,
28
30
  ) {
29
31
  const lineBuilder = usePathBuilder();
30
32
  const fillBuilder = usePathBuilder();
@@ -90,7 +92,7 @@ export function useChartPaths(
90
92
  if (n < 2) return cache.emptyPath;
91
93
  const b = lineBuilder.value;
92
94
  b.moveTo(pts[0], pts[1]);
93
- drawSpline(b, pts, cache.scratch);
95
+ drawSpline(b, pts, cache.scratch, linear);
94
96
  return b.detach();
95
97
  });
96
98
 
@@ -101,7 +103,7 @@ export function useChartPaths(
101
103
  if (n < 2) return cache.emptyPath;
102
104
  const b = fillBuilder.value;
103
105
  b.moveTo(pts[0], pts[1]);
104
- drawSpline(b, pts, cache.scratch);
106
+ drawSpline(b, pts, cache.scratch, linear);
105
107
  const bottom = engine.canvasHeight.get() - padding.bottom;
106
108
  b.lineTo(pts[(n - 1) * 2], bottom);
107
109
  b.lineTo(pts[0], bottom);
@@ -122,7 +124,7 @@ export function useChartPaths(
122
124
  if (n < 2 || !Number.isFinite(yT)) return cache.emptyPath;
123
125
  const b = thresholdFillBuilder.value;
124
126
  b.moveTo(pts[0], pts[1]);
125
- drawSpline(b, pts, cache.scratch);
127
+ drawSpline(b, pts, cache.scratch, linear);
126
128
  b.lineTo(pts[(n - 1) * 2], yT);
127
129
  b.lineTo(pts[0], yT);
128
130
  b.close();
@@ -129,6 +129,14 @@ export function useCrosshair(
129
129
  * Omitted when nothing coexists.
130
130
  */
131
131
  deferTapHit?: (x: number, y: number) => boolean,
132
+ /** Where the tooltip pill sits relative to the scrub line. Default `"side"`. */
133
+ tooltipPlacement: "side" | "top" | "bottom" = "side",
134
+ /** Render the value row in the default tooltip. Default `true`. */
135
+ tooltipShowValue = true,
136
+ /** Render the time row in the default tooltip. Default `true`. */
137
+ tooltipShowTime = true,
138
+ /** Gap (px) between the tooltip and the plot edge it's pinned to. Default `8`. */
139
+ tooltipMargin = 8,
132
140
  ): CrosshairState {
133
141
  const scrubX = useSharedValue(-1);
134
142
  const scrubActive = useSharedValue(false);
@@ -247,6 +255,11 @@ export function useCrosshair(
247
255
  formatTime,
248
256
  font,
249
257
  monoCharWidth,
258
+ tooltipPlacement,
259
+ tooltipShowValue,
260
+ tooltipShowTime,
261
+ engine.canvasHeight.get(),
262
+ tooltipMargin,
250
263
  );
251
264
  });
252
265
 
package/src/index.ts CHANGED
@@ -79,6 +79,7 @@ export type {
79
79
  ThemeMode,
80
80
  ThresholdConfig,
81
81
  ThresholdLineConfig,
82
+ TooltipRenderProps,
82
83
  TradeEvent,
83
84
  ValueLineConfig,
84
85
  XAxisConfig,
@@ -53,10 +53,17 @@ export function drawSpline(
53
53
  path: SplinePathSink,
54
54
  pts: number[],
55
55
  scratch?: SplineScratch,
56
+ /** Straight polyline (`lineTo` per point) instead of the monotone cubic — an
57
+ * angular, hard-edged line. The caller has already `moveTo`'d point 0. */
58
+ linear = false,
56
59
  ) {
57
60
  "worklet";
58
61
  const n = pts.length >> 1;
59
62
  if (n < 2) return;
63
+ if (linear) {
64
+ for (let i = 1; i < n; i++) path.lineTo(pts[i * 2], pts[i * 2 + 1]);
65
+ return;
66
+ }
60
67
  if (n === 2) {
61
68
  path.lineTo(pts[2], pts[3]);
62
69
  return;
package/src/types.ts CHANGED
@@ -232,6 +232,12 @@ export interface ValueLineConfig {
232
232
  export interface LineConfig {
233
233
  /** Stroke width of the main line in pixels. Default `2`. */
234
234
  width?: number;
235
+ /**
236
+ * Interpolation between points. `"monotone"` (default) draws a smooth monotone
237
+ * cubic; `"linear"` draws straight segments for an angular, hard-edged line —
238
+ * pair with `join: "miter"` + `cap: "butt"` for true sharp corners (no rounding).
239
+ */
240
+ curve?: "monotone" | "linear";
235
241
  /** Line color override. Defaults to palette-derived accent. */
236
242
  color?: string;
237
243
  /**
@@ -239,6 +245,17 @@ export interface LineConfig {
239
245
  * (left → right). Takes precedence over `color` when set.
240
246
  */
241
247
  colors?: string[];
248
+ /**
249
+ * Stroke line-join — how corners between segments render. `"round"` (default)
250
+ * softens every peak; `"miter"` gives sharp, angular ("edgy") peaks; `"bevel"`
251
+ * flattens them.
252
+ */
253
+ join?: "round" | "miter" | "bevel";
254
+ /**
255
+ * Stroke line-cap at the path's start/end. `"round"` (default) | `"butt"` |
256
+ * `"square"`. Pair `"butt"` with `join: "miter"` for a fully hard-edged line.
257
+ */
258
+ cap?: "round" | "butt" | "square";
242
259
  }
243
260
 
244
261
  /**
@@ -378,6 +395,27 @@ export interface ScrubConfig {
378
395
  tooltipColor?: string;
379
396
  /** Tooltip pill border color. Omit to use theme `tooltipBorder`. */
380
397
  tooltipBorderColor?: string;
398
+ /** Tooltip pill corner radius in px. Default `5`. */
399
+ tooltipBorderRadius?: number;
400
+ /**
401
+ * Where the tooltip pill sits relative to the vertical scrub line.
402
+ * `"side"` (default) offsets it to the right of the line and flips left near
403
+ * the right edge. `"top"` / `"bottom"` center it horizontally over the line,
404
+ * clamped into the plot and pinned to the plot's top or bottom. This also
405
+ * drives a custom {@link LiveChartProps.renderTooltip} so it gets the same
406
+ * placement for free.
407
+ */
408
+ tooltipPlacement?: "side" | "top" | "bottom";
409
+ /**
410
+ * Gap in px between the tooltip and the plot edge it's pinned to — the top for
411
+ * `"side"`/`"top"`, the bottom for `"bottom"`. Applies to the built-in pill and
412
+ * a custom {@link LiveChartProps.renderTooltip}. Default `8`.
413
+ */
414
+ tooltipMargin?: number;
415
+ /** Show the value row in the default tooltip body. Default `true`. */
416
+ tooltipShowValue?: boolean;
417
+ /** Show the time row in the default tooltip body. Default `true`. */
418
+ tooltipShowTime?: boolean;
381
419
  /**
382
420
  * Press-and-hold delay in milliseconds before scrubbing activates — think of
383
421
  * it as "press and hold to scrub." During the delay the pan is not captured,
@@ -473,6 +511,28 @@ export interface SelectionDotProps {
473
511
  size: number;
474
512
  }
475
513
 
514
+ /**
515
+ * Context passed to a custom {@link LiveChartProps.renderTooltip}. The element
516
+ * you return is a React Native view that the chart floats over the canvas and
517
+ * positions on the UI thread (per `scrub.tooltipPlacement`) — so movement stays
518
+ * smooth without JS re-renders, unlike rebuilding the tooltip from the JS-thread
519
+ * `onScrub` callback. Bind the SharedValues here to animated text (e.g. an
520
+ * `Animated.createAnimatedComponent(TextInput)` driven by `useAnimatedProps`)
521
+ * for the value/date to update on the UI thread too.
522
+ */
523
+ export interface TooltipRenderProps {
524
+ /** Interpolated value under the crosshair; `null` when none. */
525
+ value: SharedValue<number | null>;
526
+ /** Window time (unix seconds) under the crosshair. */
527
+ time: SharedValue<number>;
528
+ /** Value formatted with the chart's `formatValue` (computed UI-side). */
529
+ valueStr: SharedValue<string>;
530
+ /** Time formatted with the chart's `formatTime` (computed UI-side). */
531
+ timeStr: SharedValue<string>;
532
+ /** Whether scrubbing is currently active. */
533
+ active: SharedValue<boolean>;
534
+ }
535
+
476
536
  /** Outer ring drawn around the built-in selection dot (the subtle halo). */
477
537
  export interface SelectionDotRingConfig {
478
538
  /** Ring color. Defaults to the dot color. */
@@ -1025,6 +1085,20 @@ export interface LiveChartCoreProps {
1025
1085
  * glyph entirely (no double-draw).
1026
1086
  */
1027
1087
  renderMarker?: (marker: Marker) => ReactElement | null | undefined;
1088
+ /**
1089
+ * Render a fully custom scrub tooltip as a **React Native** element instead of
1090
+ * the built-in pill — the same idea as `renderMarker`. The chart floats the
1091
+ * returned element over the canvas and positions it on the UI thread per
1092
+ * `scrub.tooltipPlacement` (so it stays smooth, unlike rebuilding the tooltip
1093
+ * from the JS-thread `onScrub`). You own the chrome (border radius/color,
1094
+ * background are plain RN styles) and content — bind the {@link
1095
+ * TooltipRenderProps} SharedValues to animated text for the value/date.
1096
+ *
1097
+ * Return `null`/`undefined` to fall back to the built-in pill. Replaces the
1098
+ * default pill entirely while active. Single-series **line mode only** —
1099
+ * ignored in candle mode (the OHLC stack owns the tooltip there).
1100
+ */
1101
+ renderTooltip?: (ctx: TooltipRenderProps) => ReactElement | null | undefined;
1028
1102
  /**
1029
1103
  * Override individual resolved-palette keys on top of the palette derived from
1030
1104
  * `accentColor` + `theme`. Only the keys you set are replaced.