react-native-livechart 4.20.0 → 4.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/dist/components/AxisLabelOverlay.d.ts +5 -1
  2. package/dist/components/AxisLabelOverlay.d.ts.map +1 -1
  3. package/dist/components/CrosshairOverlay.d.ts +4 -2
  4. package/dist/components/CrosshairOverlay.d.ts.map +1 -1
  5. package/dist/components/CustomMarkerOverlay.d.ts.map +1 -1
  6. package/dist/components/CustomThresholdBadgeOverlay.d.ts +18 -0
  7. package/dist/components/CustomThresholdBadgeOverlay.d.ts.map +1 -0
  8. package/dist/components/CustomTooltipOverlay.d.ts +4 -2
  9. package/dist/components/CustomTooltipOverlay.d.ts.map +1 -1
  10. package/dist/components/DegenParticlesOverlay.d.ts.map +1 -1
  11. package/dist/components/ExtremaConnectorOverlay.d.ts +5 -1
  12. package/dist/components/ExtremaConnectorOverlay.d.ts.map +1 -1
  13. package/dist/components/LiveChart.d.ts.map +1 -1
  14. package/dist/components/LiveChartSeries.d.ts.map +1 -1
  15. package/dist/components/MarkerOverlay.d.ts +4 -2
  16. package/dist/components/MarkerOverlay.d.ts.map +1 -1
  17. package/dist/components/ReferenceLineOverlay.d.ts +10 -5
  18. package/dist/components/ReferenceLineOverlay.d.ts.map +1 -1
  19. package/dist/components/ReferenceLineSeriesOverlay.d.ts +19 -0
  20. package/dist/components/ReferenceLineSeriesOverlay.d.ts.map +1 -0
  21. package/dist/core/chartDataPresence.d.ts +8 -0
  22. package/dist/core/chartDataPresence.d.ts.map +1 -0
  23. package/dist/core/liveChartEngineTick.d.ts +6 -1
  24. package/dist/core/liveChartEngineTick.d.ts.map +1 -1
  25. package/dist/core/resolveConfig.d.ts +32 -1
  26. package/dist/core/resolveConfig.d.ts.map +1 -1
  27. package/dist/core/useLiveChartEngine.d.ts +9 -1
  28. package/dist/core/useLiveChartEngine.d.ts.map +1 -1
  29. package/dist/core/useLiveChartSeriesEngine.d.ts.map +1 -1
  30. package/dist/draw/candle.d.ts +3 -1
  31. package/dist/draw/candle.d.ts.map +1 -1
  32. package/dist/draw/candleGap.d.ts +14 -0
  33. package/dist/draw/candleGap.d.ts.map +1 -0
  34. package/dist/draw/lineGap.d.ts +25 -0
  35. package/dist/draw/lineGap.d.ts.map +1 -0
  36. package/dist/draw/markerAtlas.d.ts +3 -2
  37. package/dist/draw/markerAtlas.d.ts.map +1 -1
  38. package/dist/hooks/crosshairShared.d.ts +7 -3
  39. package/dist/hooks/crosshairShared.d.ts.map +1 -1
  40. package/dist/hooks/useCandleGapPaths.d.ts +12 -0
  41. package/dist/hooks/useCandleGapPaths.d.ts.map +1 -0
  42. package/dist/hooks/useChartPaths.d.ts +4 -1
  43. package/dist/hooks/useChartPaths.d.ts.map +1 -1
  44. package/dist/hooks/useChartReveal.d.ts +1 -1
  45. package/dist/hooks/useChartReveal.d.ts.map +1 -1
  46. package/dist/hooks/useCrosshair.d.ts +9 -5
  47. package/dist/hooks/useCrosshair.d.ts.map +1 -1
  48. package/dist/hooks/useDegen.d.ts.map +1 -1
  49. package/dist/hooks/useLineGapPaths.d.ts +10 -0
  50. package/dist/hooks/useLineGapPaths.d.ts.map +1 -0
  51. package/dist/hooks/useLiveChartHasData.d.ts +2 -2
  52. package/dist/hooks/useLiveChartHasData.d.ts.map +1 -1
  53. package/dist/hooks/useReferenceLine.d.ts +4 -3
  54. package/dist/hooks/useReferenceLine.d.ts.map +1 -1
  55. package/dist/hooks/useReferenceLineSeries.d.ts +23 -0
  56. package/dist/hooks/useReferenceLineSeries.d.ts.map +1 -0
  57. package/dist/hooks/useReverseMorphEngineInputs.d.ts.map +1 -1
  58. package/dist/hooks/useThreshold.d.ts +13 -13
  59. package/dist/hooks/useThreshold.d.ts.map +1 -1
  60. package/dist/index.d.ts +1 -1
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/math/candleGaps.d.ts +18 -0
  63. package/dist/math/candleGaps.d.ts.map +1 -0
  64. package/dist/math/referenceLineSeries.d.ts +12 -0
  65. package/dist/math/referenceLineSeries.d.ts.map +1 -0
  66. package/dist/math/referenceLines.d.ts +5 -5
  67. package/dist/math/referenceLines.d.ts.map +1 -1
  68. package/dist/math/spline.d.ts +5 -1
  69. package/dist/math/spline.d.ts.map +1 -1
  70. package/dist/types.d.ts +191 -17
  71. package/dist/types.d.ts.map +1 -1
  72. package/package.json +1 -1
  73. package/src/components/AxisLabelOverlay.tsx +162 -81
  74. package/src/components/CrosshairOverlay.tsx +394 -147
  75. package/src/components/CustomMarkerOverlay.tsx +9 -6
  76. package/src/components/CustomThresholdBadgeOverlay.tsx +74 -0
  77. package/src/components/CustomTooltipOverlay.tsx +7 -3
  78. package/src/components/DegenParticlesOverlay.tsx +34 -23
  79. package/src/components/ExtremaConnectorOverlay.tsx +43 -3
  80. package/src/components/LiveChart.tsx +1918 -974
  81. package/src/components/LiveChartSeries.tsx +445 -296
  82. package/src/components/MarkerOverlay.tsx +215 -156
  83. package/src/components/ReferenceLineOverlay.tsx +113 -55
  84. package/src/components/ReferenceLineSeriesOverlay.tsx +141 -0
  85. package/src/core/chartDataPresence.ts +24 -0
  86. package/src/core/liveChartEngineTick.ts +34 -1
  87. package/src/core/resolveConfig.ts +186 -0
  88. package/src/core/useLiveChartEngine.ts +36 -1
  89. package/src/core/useLiveChartSeriesEngine.ts +2 -0
  90. package/src/draw/candle.ts +1 -1
  91. package/src/draw/candleGap.ts +132 -0
  92. package/src/draw/lineGap.ts +180 -0
  93. package/src/draw/markerAtlas.ts +8 -3
  94. package/src/hooks/crosshairShared.ts +92 -11
  95. package/src/hooks/useCandleGapPaths.ts +88 -0
  96. package/src/hooks/useChartPaths.ts +81 -22
  97. package/src/hooks/useChartReveal.ts +1 -1
  98. package/src/hooks/useCrosshair.ts +178 -69
  99. package/src/hooks/useDegen.ts +82 -53
  100. package/src/hooks/useLineGapPaths.ts +76 -0
  101. package/src/hooks/useLiveChartHasData.ts +8 -4
  102. package/src/hooks/useReferenceLine.ts +6 -5
  103. package/src/hooks/useReferenceLineSeries.ts +101 -0
  104. package/src/hooks/useReverseMorphEngineInputs.ts +11 -20
  105. package/src/hooks/useThreshold.ts +31 -22
  106. package/src/index.ts +15 -0
  107. package/src/math/candleGaps.ts +120 -0
  108. package/src/math/referenceLineSeries.ts +83 -0
  109. package/src/math/referenceLines.ts +34 -6
  110. package/src/math/spline.ts +15 -5
  111. package/src/types.ts +202 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lineGap.d.ts","sourceRoot":"","sources":["../../src/draw/lineGap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,cAAc,EAAE,EACtB,GAAG,EAAE,SAAS,GACb,OAAO,CAUT;AAED,yDAAyD;AACzD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,cAAc,EAAE,EACtB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAUf;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EAAE,EAChB,IAAI,EAAE,cAAc,EAAE,EACtB,IAAI,EAAE,SAAS,EAAE,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,MAAM,EAAE,EACd,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,MAAM,EAAE,CAwDV;AAED,0EAA0E;AAC1E,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,cAAc,EAAE,EACtB,IAAI,EAAE,SAAS,EAAE,EACjB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,OAAO,EACvB,iBAAiB,EAAE,OAAO,EAC1B,aAAa,EAAE,OAAO,GACrB,eAAe,CA6CjB"}
@@ -1,5 +1,6 @@
1
1
  import { type SkFont, type SkImage, type SkRect } from "@shopify/react-native-skia";
2
2
  import type { LiveChartPalette, Marker, MarkerGroupBadge, MarkerKind } from "../types";
3
+ export type MarkerAtlasPalette = Pick<LiveChartPalette, "bgRgb" | "line" | "refLine" | "dotUp" | "refLabel">;
3
4
  /** Default icon box (px) when `marker.size` is unset. */
4
5
  export declare const DEFAULT_ICON_SIZE = 16;
5
6
  /** Count-badge digits render at this fraction of the chart font, so two digits fit
@@ -19,7 +20,7 @@ export declare function groupCountText(count: number): string;
19
20
  export declare function groupCountTextWidth(text: string, digitWidths: Record<string, number>, letterSpacing?: number): number;
20
21
  /** Default glyph color per kind when `marker.color` is unset. Worklet-safe so the
21
22
  * per-frame overlay worklet can resolve a collapsed cluster's badge color. */
22
- export declare function defaultMarkerColor(kind: MarkerKind, palette: LiveChartPalette): string;
23
+ export declare function defaultMarkerColor(kind: MarkerKind, palette: MarkerAtlasPalette): string;
23
24
  /**
24
25
  * Axis-anchored kinds whose geometry depends on the chart's baseline (a
25
26
  * variable-length stem, or a box pinned to the axis) and therefore cannot be a
@@ -75,7 +76,7 @@ export interface MarkerAtlas {
75
76
  * per-frame `drawAtlas` shrinks it back with an `RSXform` scale of `1 / scale`.
76
77
  * Without this the logical-sized texture is upscaled ~3× on iOS and looks blurry.
77
78
  */
78
- export declare function buildMarkerAtlas(markers: Marker[], palette: LiveChartPalette, font: SkFont, scale?: number,
79
+ export declare function buildMarkerAtlas(markers: Marker[], palette: MarkerAtlasPalette, font: SkFont, scale?: number,
79
80
  /** Also bake count-badge cells (digits + per-color backgrounds) for
80
81
  * `markerCluster: "stacked"` collapse. Off by default — no atlas bloat. */
81
82
  withGroups?: boolean,
@@ -1 +1 @@
1
- {"version":3,"file":"markerAtlas.d.ts","sourceRoot":"","sources":["../../src/draw/markerAtlas.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,MAAM,EACX,KAAK,OAAO,EAEZ,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAElB,yDAAyD;AACzD,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAcpC;6EAC6E;AAC7E,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;sDACsD;AACtD,eAAO,MAAM,eAAe,aAAa,CAAC;AAE1C,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;4DAC4D;AAC5D,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGpD;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,aAAa,SAAI,GAChB,MAAM,CAQR;AAED;+EAC+E;AAC/E,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAcR;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAOrD;AAED,uEAAuE;AACvE,MAAM,WAAW,SAAS;IACxB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjC;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;6DAEyD;IACzD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAsND;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,MAAM,EACZ,KAAK,SAAI;AACT;4EAC4E;AAC5E,UAAU,UAAQ;AAClB;;uDAEuD;AACvD,UAAU,CAAC,EAAE,gBAAgB,GAC5B,WAAW,CAkGb"}
1
+ {"version":3,"file":"markerAtlas.d.ts","sourceRoot":"","sources":["../../src/draw/markerAtlas.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,MAAM,EACX,KAAK,OAAO,EAEZ,KAAK,MAAM,EACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,gBAAgB,EAChB,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CACpD,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAcpC;6EAC6E;AAC7E,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;sDACsD;AACtD,eAAO,MAAM,eAAe,aAAa,CAAC;AAE1C,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;4DAC4D;AAC5D,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGpD;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,aAAa,SAAI,GAChB,MAAM,CAQR;AAED;+EAC+E;AAC/E,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,kBAAkB,GAC1B,MAAM,CAcR;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAOrD;AAED,uEAAuE;AACvE,MAAM,WAAW,SAAS;IACxB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjC;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;6DAEyD;IACzD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAsND;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,SAAI;AACT;4EAC4E;AAC5E,UAAU,UAAQ;AAClB;;uDAEuD;AACvD,UAAU,CAAC,EAAE,gBAAgB,GAC5B,WAAW,CAkGb"}
@@ -2,7 +2,7 @@ import { type SkFont } from "@shopify/react-native-skia";
2
2
  import { type Gesture } from "react-native-gesture-handler";
3
3
  import type { DerivedValue, SharedValue } from "react-native-reanimated";
4
4
  import { type ChartPadding } from "../draw/line";
5
- import type { CandlePoint } from "../types";
5
+ import type { CandleGap, CandlePoint } from "../types";
6
6
  /** Horizontal travel required before a plain scrub claims the touch. */
7
7
  export declare const SCRUB_ACTIVATE_X_PX = 20;
8
8
  /** Vertical travel that fails a plain scrub so a parent scroll gesture can win. */
@@ -89,6 +89,8 @@ export interface CrosshairState {
89
89
  * inactive) — single-series `useCrosshair` only; undefined on the multi-series
90
90
  * crosshair. Surfaced for a custom candle `renderTooltip`. */
91
91
  scrubCandle?: SharedValue<CandlePoint | null>;
92
+ /** Explicit line or candle gap under the crosshair; single-series only. */
93
+ scrubGap?: SharedValue<CandleGap | null>;
92
94
  /** Canvas-Y where the crosshair line should start so it stops at a top-pinned
93
95
  * custom tooltip's bottom edge instead of running up through it. Written by
94
96
  * {@link CustomTooltipOverlay} (the label's measured bottom) when
@@ -142,7 +144,7 @@ export declare function computeScrubTime(scrubActive: boolean, scrubX: number, p
142
144
  * raw X unchanged when the position falls in a gap between candles or when
143
145
  * the plot has no horizontal extent / time window yet.
144
146
  */
145
- export declare function snapScrubXToCandleCenter(x: number, candles: CandlePoint[], liveCandle: CandlePoint | null, candleWidthSecs: number, padding: ChartPadding, canvasWidth: number, timestamp: number, windowSecs: number): number;
147
+ export declare function snapScrubXToCandleCenter(x: number, candles: CandlePoint[], liveCandle: CandlePoint | null, candleWidthSecs: number, padding: ChartPadding, canvasWidth: number, timestamp: number, windowSecs: number, gaps?: CandleGap[]): number;
146
148
  /**
147
149
  * Crosshair opacity: fades 1→0 over `fadeDistance` px as the crosshair
148
150
  * approaches the live dot at the right chart edge. A zero distance removes
@@ -191,7 +193,9 @@ export declare function computeCandleTooltipLayout(scrubActive: boolean, scrubX:
191
193
  high: number;
192
194
  low: number;
193
195
  close: number;
194
- } | null, scrubTime: number, padding: ChartPadding, canvasWidth: number, formatValue: (v: number) => string, formatTime: (t: number) => string, font: SkFont, monoCharWidth?: number): TooltipLayout;
196
+ } | null, scrubTime: number, padding: ChartPadding, canvasWidth: number, formatValue: (v: number) => string, formatTime: (t: number) => string, font: SkFont, monoCharWidth?: number, gap?: CandleGap | null, gapValue?: number | null): TooltipLayout;
197
+ /** Two-row line-mode tooltip for an explicit semantic gap. */
198
+ export declare function computeLineGapTooltipLayout(scrubActive: boolean, scrubX: number, gap: CandleGap | null, scrubTime: number, padding: ChartPadding, canvasWidth: number, formatTime: (t: number) => string, font: SkFont, monoCharWidth?: number, placement?: "side" | "top" | "bottom" | "point", showLabel?: boolean, showTime?: boolean, canvasHeight?: number, margin?: number, scrubDotY?: number): TooltipLayout;
195
199
  /** Single-series scrub value at window time — extracted for tests. */
196
200
  export declare function deriveScrubValueSingle(scrubActive: boolean, scrubTime: number, data: {
197
201
  time: number;
@@ -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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"}
@@ -0,0 +1,12 @@
1
+ import { type SharedValue } from "react-native-reanimated";
2
+ import type { ResolvedCandleGapsConfig } from "../core/resolveConfig";
3
+ import type { SingleEngineState } from "../core/useLiveChartEngine";
4
+ import type { ChartPadding } from "../draw/line";
5
+ import type { CandleMetrics, CandlePoint } from "../types";
6
+ /** Batched neutral previous-close paths for each semantic candle-gap kind. */
7
+ export declare function useCandleGapPaths(engine: SingleEngineState, padding: ChartPadding, candles: SharedValue<CandlePoint[]>, liveCandle: SharedValue<CandlePoint | null>, displayCandleWidth: SharedValue<number>, config: ResolvedCandleGapsConfig, metrics: CandleMetrics): {
8
+ readonly noTradesPath: import("react-native-reanimated").DerivedValue<import("@shopify/react-native-skia").SkPath>;
9
+ readonly unavailablePath: import("react-native-reanimated").DerivedValue<import("@shopify/react-native-skia").SkPath>;
10
+ readonly unknownPath: import("react-native-reanimated").DerivedValue<import("@shopify/react-native-skia").SkPath>;
11
+ };
12
+ //# sourceMappingURL=useCandleGapPaths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCandleGapPaths.d.ts","sourceRoot":"","sources":["../../src/hooks/useCandleGapPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG3D,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,EACnC,UAAU,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,EAC3C,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,EACvC,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,aAAa;;;;EAuEvB"}
@@ -2,6 +2,7 @@ import { type SkPath } from "@shopify/react-native-skia";
2
2
  import { type SharedValue } from "react-native-reanimated";
3
3
  import type { ChartEngineEdge, ChartEngineScroll, SingleEngineState } from "../core/useLiveChartEngine";
4
4
  import { type ChartPadding } from "../draw/line";
5
+ import type { CandleGap } from "../types";
5
6
  /** Selects the synthetic right-edge line tip without coupling chart geometry
6
7
  * to badge or live-indicator presentation options. */
7
8
  export declare function resolveLineTipValue(displayValue: number, edgeValue: number, viewEnd: number | null): number;
@@ -32,7 +33,9 @@ squiggleSpeed?: number,
32
33
  * over `thresholdY`, the constant (horizontal) case. */
33
34
  thresholdSamples?: SharedValue<number[]>,
34
35
  /** Screen-space path simplification tolerance in pixels. `0` disables it. */
35
- simplifyTolerance?: number): {
36
+ simplifyTolerance?: number,
37
+ /** Explicit empty intervals that split line and fill geometry. */
38
+ lineGaps?: CandleGap[]): {
36
39
  readonly linePath: import("react-native-reanimated").DerivedValue<SkPath>;
37
40
  readonly fillPath: import("react-native-reanimated").DerivedValue<SkPath>;
38
41
  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,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAUlE;sDACsD;AACtD,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,MAAM,CAGR;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,EAC/D,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;AACd,6EAA6E;AAC7E,iBAAiB,SAAK;AACtB,8EAA8E;AAC9E,aAAa,SAAI;AACjB;;;yDAGyD;AACzD,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;AACxC,6EAA6E;AAC7E,iBAAiB,SAAI;;;;EAqMtB"}
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,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAUlE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;sDACsD;AACtD,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,MAAM,CAGR;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,eAAe,EAC/D,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;AACd,6EAA6E;AAC7E,iBAAiB,SAAK;AACtB,8EAA8E;AAC9E,aAAa,SAAI;AACjB;;;yDAGyD;AACzD,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;AACxC,6EAA6E;AAC7E,iBAAiB,SAAI;AACrB,kEAAkE;AAClE,QAAQ,GAAE,SAAS,EAAO;;;;EA4P3B"}
@@ -11,7 +11,7 @@ export interface ChartRevealState {
11
11
  morphT: SharedValue<number>;
12
12
  /** True while loading=true */
13
13
  isLoading: SharedValue<boolean>;
14
- /** True when not loading and fewer than two samples. */
14
+ /** True when not loading and no samples are available. */
15
15
  isEmpty: SharedValue<boolean>;
16
16
  yAxisOpacity: SharedValue<number>;
17
17
  fillOpacity: SharedValue<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"useChartReveal.d.ts","sourceRoot":"","sources":["../../src/hooks/useChartReveal.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAc5C;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAIhE;AAED,MAAM,WAAW,gBAAgB;IAC/B,+EAA+E;IAC/E,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,8BAA8B;IAC9B,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAChC,wDAAwD;IACxD,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC;AAC7B,sFAAsF;AACtF,QAAQ,UAAQ;AAChB,0FAA0F;AAC1F,cAAc,GAAE,MAAiC,GAChD,gBAAgB,CAyElB"}
1
+ {"version":3,"file":"useChartReveal.d.ts","sourceRoot":"","sources":["../../src/hooks/useChartReveal.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAc5C;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAIhE;AAED,MAAM,WAAW,gBAAgB;IAC/B,+EAA+E;IAC/E,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,8BAA8B;IAC9B,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAChC,0DAA0D;IAC1D,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC;AAC7B,sFAAsF;AACtF,QAAQ,UAAQ;AAChB,0FAA0F;AAC1F,cAAc,GAAE,MAAiC,GAChD,gBAAgB,CAyElB"}
@@ -3,21 +3,25 @@ import { type SharedValue } from "react-native-reanimated";
3
3
  import type { ResolvedScrubActionConfig } from "../core/resolveConfig";
4
4
  import type { SingleEngineState } from "../core/useLiveChartEngine";
5
5
  import { type ChartPadding } from "../draw/line";
6
- import type { BadgeMetrics, CandlePoint, LiveChartPalette, ScrubActionPoint, ScrubPoint } from "../types";
6
+ import type { BadgeMetrics, CandleGap, CandlePoint, LiveChartPalette, ScrubActionPoint, ScrubPoint } from "../types";
7
7
  import { type CrosshairState } from "./crosshairShared";
8
8
  export type { CrosshairState, TooltipLayout } from "./crosshairShared";
9
9
  export type { ScrubPoint };
10
- export { computeCandleTooltipLayout, computeCrosshairOpacity, computeScrubTime, computeTooltipLayout, computeTooltipLayoutMulti, deriveCrosshairTooltipSingle, deriveScrubValueSingle, HIDDEN_TOOLTIP } from "./crosshairShared";
11
- export interface CrosshairCandleOpts {
10
+ export { computeCandleTooltipLayout, computeCrosshairOpacity, computeLineGapTooltipLayout, computeScrubTime, computeTooltipLayout, computeTooltipLayoutMulti, deriveCrosshairTooltipSingle, deriveScrubValueSingle, HIDDEN_TOOLTIP, } from "./crosshairShared";
11
+ export interface CrosshairChartOpts {
12
12
  mode: "line" | "candle";
13
13
  candles?: SharedValue<CandlePoint[]>;
14
14
  liveCandle?: SharedValue<CandlePoint | null>;
15
- candleWidthSecs: number;
15
+ candleWidthSecs?: number;
16
+ gaps?: CandleGap[];
17
+ bridgeNoTrades?: boolean;
18
+ bridgeUnavailable?: boolean;
19
+ bridgeUnknown?: boolean;
16
20
  }
17
21
  /**
18
22
  * Single-series crosshair + scrub. Use `useCrosshairSeries` for `LiveChartSeries`.
19
23
  */
20
- export declare function useCrosshair(engine: SingleEngineState, padding: ChartPadding, _palette: LiveChartPalette, formatValue: (v: number) => string, formatTime: (t: number) => string, font: SkFont, enabled: boolean, onScrub?: (point: ScrubPoint | null) => void, candleOpts?: CrosshairCandleOpts,
24
+ export declare function useCrosshair(engine: SingleEngineState, padding: ChartPadding, _palette: LiveChartPalette, formatValue: (v: number) => string, formatTime: (t: number) => string, font: SkFont, enabled: boolean, onScrub?: (point: ScrubPoint | null) => void, chartOpts?: CrosshairChartOpts,
21
25
  /** Press-and-hold delay (ms) before scrubbing activates. 0 = immediate. */
22
26
  panGestureDelay?: number, onGestureStart?: () => void, onGestureEnd?: () => void,
23
27
  /** Scrub-action ("order ticket") config; `null`/omitted disables lock mode. */
@@ -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;AAEzD,OAAO,EAGL,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,EAoBL,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAwC3B,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,QAAQ,GAAG,OAAgB;AAC9D,mEAAmE;AACnE,gBAAgB,UAAO;AACvB,kEAAkE;AAClE,eAAe,UAAO;AACtB,kFAAkF;AAClF,aAAa,SAAI;AACjB;;;;;GAKG;AACH,kBAAkB,SAAI;AACtB;;;;GAIG;AACH,YAAY,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC;AACnC;;;;GAIG;AACH,WAAW,UAAQ;AACnB;;;;GAIG;AACH,aAAa,UAAQ,GACpB,cAAc,CAiqBhB"}
1
+ {"version":3,"file":"useCrosshair.d.ts","sourceRoot":"","sources":["../../src/hooks/useCrosshair.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EAGL,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;AAQjD,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAqBL,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAwC3B,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvE,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,kBAAkB;IACjC,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,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA8BD;;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,SAAS,CAAC,EAAE,kBAAkB;AAC9B,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,QAAQ,GAAG,OAAgB;AAC9D,mEAAmE;AACnE,gBAAgB,UAAO;AACvB,kEAAkE;AAClE,eAAe,UAAO;AACtB,kFAAkF;AAClF,aAAa,SAAI;AACjB;;;;;GAKG;AACH,kBAAkB,SAAI;AACtB;;;;GAIG;AACH,YAAY,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC;AACnC;;;;GAIG;AACH,WAAW,UAAQ;AACnB;;;;GAIG;AACH,aAAa,UAAQ,GACpB,cAAc,CAsuBhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDegen.d.ts","sourceRoot":"","sources":["../../src/hooks/useDegen.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE5D,wBAAgB,QAAQ,CACtB,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,EACjC,GAAG,EAAE,mBAAmB,GAAG,IAAI,EAC/B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,GAC7C;IACD,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7C,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,EAAE,YAAY,CAC1B;QAAC;YAAE,UAAU,EAAE,MAAM,CAAA;SAAE;QAAE;YAAE,UAAU,EAAE,MAAM,CAAA;SAAE;KAAC,CACjD,CAAC;CACH,CA2OA"}
1
+ {"version":3,"file":"useDegen.d.ts","sourceRoot":"","sources":["../../src/hooks/useDegen.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AA4B5D,wBAAgB,QAAQ,CACtB,MAAM,EAAE,iBAAiB,EACzB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EACzB,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,EACjC,GAAG,EAAE,mBAAmB,GAAG,IAAI,EAC/B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,GAC7C;IACD,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7C,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,EAAE,YAAY,CAC1B;QAAC;YAAE,UAAU,EAAE,MAAM,CAAA;SAAE;QAAE;YAAE,UAAU,EAAE,MAAM,CAAA;SAAE;KAAC,CACjD,CAAC;CACH,CA8OA"}
@@ -0,0 +1,10 @@
1
+ import type { ResolvedCandleGapsConfig } from "../core/resolveConfig";
2
+ import type { SingleEngineState } from "../core/useLiveChartEngine";
3
+ import type { ChartPadding } from "../draw/line";
4
+ /** Batched flat previous-value bridge paths for each semantic line-gap kind. */
5
+ export declare function useLineGapPaths(engine: SingleEngineState, padding: ChartPadding, config: ResolvedCandleGapsConfig): {
6
+ readonly noTradesPath: import("react-native-reanimated").DerivedValue<import("@shopify/react-native-skia").SkPath>;
7
+ readonly unavailablePath: import("react-native-reanimated").DerivedValue<import("@shopify/react-native-skia").SkPath>;
8
+ readonly unknownPath: import("react-native-reanimated").DerivedValue<import("@shopify/react-native-skia").SkPath>;
9
+ };
10
+ //# sourceMappingURL=useLineGapPaths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLineGapPaths.d.ts","sourceRoot":"","sources":["../../src/hooks/useLineGapPaths.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAIjD,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,wBAAwB;;;;EAgEjC"}
@@ -1,8 +1,8 @@
1
1
  import { type SharedValue } from "react-native-reanimated";
2
2
  import type { CandlePoint, LiveChartPoint } from "../types";
3
3
  /**
4
- * Data presence for {@link LiveChart}: line mode needs ≥2 points;
5
- * candle mode needs ≥2 committed candles (`liveCandle` alone does not count).
4
+ * Data presence for {@link LiveChart}: line mode needs ≥1 point;
5
+ * candle mode needs ≥1 committed candle (`liveCandle` alone does not count).
6
6
  *
7
7
  * {@link useChartReveal} seeds its first-paint state off `hasData` directly (in a
8
8
  * layout effect), so no JS-thread snapshot is read during render here.
@@ -1 +1 @@
1
- {"version":3,"file":"useLiveChartHasData.d.ts","sourceRoot":"","sources":["../../src/hooks/useLiveChartHasData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE5D;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,IAAI,EACJ,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,GAAG,SAAS,CAAC;CACjD,GAAG;IACF,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC/B,CAUA"}
1
+ {"version":3,"file":"useLiveChartHasData.d.ts","sourceRoot":"","sources":["../../src/hooks/useLiveChartHasData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAK5E,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE5D;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,IAAI,EACJ,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,GAAG,SAAS,CAAC;CACjD,GAAG;IACF,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC/B,CAUA"}
@@ -70,9 +70,10 @@ export declare function computeReferenceBadgeRect(line: ReferenceLine, canvasWid
70
70
  valueOverride?: number): ReferenceBadgeRect | null;
71
71
  /**
72
72
  * Derives screen-space layout for a single reference line or band. Supports all
73
- * three `ReferenceLine` forms (horizontal line, horizontal value band, vertical
74
- * time band) plus the pill badge for a Form-A value (in-range tag + off-screen
75
- * chevron pin).
73
+ * three scalar/band `ReferenceLine` forms (horizontal line, horizontal value
74
+ * band, vertical time band) plus the pill badge for a Form-A value (in-range tag
75
+ * + off-screen chevron pin). The series form is handled by
76
+ * `ReferenceLineSeriesOverlay`.
76
77
  */
77
78
  export declare function useReferenceLine(engine: ChartEngineLayout, padding: ChartPadding, line: ReferenceLine | undefined, formatValue: (v: number) => string, font: SkFont,
78
79
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useReferenceLine.d.ts","sourceRoot":"","sources":["../../src/hooks/useReferenceLine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAOjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,kFAAkF;AAClF,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,CAAC,EAAE,MAAM,CAAC;IACV,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,MAAM,EAAE,MAAM,CAAC;IACf,oGAAoG;IACpG,QAAQ,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,KAAK,EAAE,OAAO,CAAC;IACf,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAoJD,sFAAsF;AACtF,MAAM,WAAW,kBAAkB;IACjC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,aAAa,EACnB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM;AACtC,8EAA8E;AAC9E,aAAa,CAAC,EAAE,MAAM,GACrB,kBAAkB,GAAG,IAAI,CAwC3B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,IAAI,EAAE,MAAM;AACZ;;;;;GAKG;AACH,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,EAClC,KAAK,SAAI;AACT,oEAAoE;AACpE,YAAY,CAAC,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC;AACxC,+EAA+E;AAC/E,gBAAgB,CAAC,EAAE,MAAM;AACzB,2EAA2E;AAC3E,UAAU,SAAI;AACd,mFAAmF;AACnF,SAAS,GAAE,MAAa,GACvB,WAAW,CAAC,mBAAmB,CAAC,CA6NlC"}
1
+ {"version":3,"file":"useReferenceLine.d.ts","sourceRoot":"","sources":["../../src/hooks/useReferenceLine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAOjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,kFAAkF;AAClF,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,CAAC,EAAE,MAAM,CAAC;IACV,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,MAAM,EAAE,MAAM,CAAC;IACf,oGAAoG;IACpG,QAAQ,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,KAAK,EAAE,OAAO,CAAC;IACf,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAoJD,sFAAsF;AACtF,MAAM,WAAW,kBAAkB;IACjC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,aAAa,EACnB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM;AACtC,8EAA8E;AAC9E,aAAa,CAAC,EAAE,MAAM,GACrB,kBAAkB,GAAG,IAAI,CAwC3B;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,IAAI,EAAE,MAAM;AACZ;;;;;GAKG;AACH,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,EAClC,KAAK,SAAI;AACT,oEAAoE;AACpE,YAAY,CAAC,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC;AACxC,+EAA+E;AAC/E,gBAAgB,CAAC,EAAE,MAAM;AACzB,2EAA2E;AAC3E,UAAU,SAAI;AACd,mFAAmF;AACnF,SAAS,GAAE,MAAa,GACvB,WAAW,CAAC,mBAAmB,CAAC,CA6NlC"}
@@ -0,0 +1,23 @@
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 { LiveChartPoint } from "../types";
5
+ export interface ReferenceLineSeriesGeometry {
6
+ /** Visible series polyline as `[x, y, …]` screen coordinates. */
7
+ screenPts: SharedValue<number[]>;
8
+ /** Whether any series segment crosses the visible plot. */
9
+ visible: SharedValue<boolean>;
10
+ /** Series value at the chart's current right edge. */
11
+ currentValue: SharedValue<number>;
12
+ /** Canvas Y coordinate of {@link currentValue}. */
13
+ currentY: SharedValue<number>;
14
+ /** Whether the current-value label belongs inside the visible plot. */
15
+ currentVisible: SharedValue<boolean>;
16
+ }
17
+ /**
18
+ * UI-thread geometry for a static historical reference-line series. Point
19
+ * buffers ping-pong so Reanimated observes a changed array reference each frame
20
+ * without allocating new intermediate arrays.
21
+ */
22
+ export declare function useReferenceLineSeries(engine: ChartEngineLayout, padding: ChartPadding, points: LiveChartPoint[], extendToNow: boolean): ReferenceLineSeriesGeometry;
23
+ //# sourceMappingURL=useReferenceLineSeries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReferenceLineSeries.d.ts","sourceRoot":"","sources":["../../src/hooks/useReferenceLineSeries.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAQjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,WAAW,2BAA2B;IAC1C,iEAAiE;IACjE,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC,2DAA2D;IAC3D,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,sDAAsD;IACtD,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,mDAAmD;IACnD,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,uEAAuE;IACvE,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACtC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,EAAE,EACxB,WAAW,EAAE,OAAO,GACnB,2BAA2B,CA+D7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useReverseMorphEngineInputs.d.ts","sourceRoot":"","sources":["../../src/hooks/useReverseMorphEngineInputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAI1E;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,UAAU,EACV,OAAO,EACP,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,GAAG,SAAS,CAAC;IAChD,UAAU,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IACxD,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC7B,GAAG;IACF,cAAc,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9C,aAAa,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1C,UAAU,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAC7C,CAwDA;AAYD,wBAAgB,gCAAgC,CAAC,EAC/C,MAAM,EACN,OAAO,EACP,MAAM,GACP,EAAE;IACD,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC7B,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CA8C9B"}
1
+ {"version":3,"file":"useReverseMorphEngineInputs.d.ts","sourceRoot":"","sources":["../../src/hooks/useReverseMorphEngineInputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAMjC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAI1E;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,UAAU,EACV,OAAO,EACP,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,GAAG,SAAS,CAAC;IAChD,UAAU,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IACxD,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC7B,GAAG;IACF,cAAc,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9C,aAAa,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1C,UAAU,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAC7C,CAuDA;AAYD,wBAAgB,gCAAgC,CAAC,EAC/C,MAAM,EACN,OAAO,EACP,MAAM,GACP,EAAE;IACD,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC7B,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CAiC9B"}
@@ -41,15 +41,15 @@ export interface ThresholdSeriesGeometry {
41
41
  samples: SharedValue<number[]>;
42
42
  /** Whether any of the polyline is on-screen (drives marker-line opacity). */
43
43
  visible: SharedValue<boolean>;
44
- /** Threshold value at `now` (flat-extended past the last point) — the badge label. */
45
- currentValue: SharedValue<number>;
46
- /** Pixel-Y of `currentValue` — anchors the badge. */
47
- currentLineY: SharedValue<number>;
48
- /** Whether the badge should show: `currentLineY` on-plot AND, with
49
- * `extendToNow` off, "now" not past the series' last point. (`visible` can be
50
- * true for the polyline while the value-at-now sits outside the plot; the
51
- * badge must not draw into the gutters then.) */
52
- currentVisible: SharedValue<boolean>;
44
+ /** Threshold value at the configured badge anchor: the visible window's
45
+ * left edge (`"first"`) or its live/right edge (`"last"`). */
46
+ badgeValue: SharedValue<number>;
47
+ /** Pixel-Y of `badgeValue` — anchors the badge. */
48
+ badgeLineY: SharedValue<number>;
49
+ /** Whether the configured badge anchor is on-plot and belongs to a visible
50
+ * part of the threshold. (`visible` can still be true when that one endpoint
51
+ * is off-plot.) */
52
+ badgeVisible: SharedValue<boolean>;
53
53
  /** Pixel-X where the threshold ends: the last point's X with `extendToNow`
54
54
  * off, else {@link THRESHOLD_NO_CLIP}. The shader paints its plain
55
55
  * `restColor` right of it; the marker polyline stops there. */
@@ -59,14 +59,14 @@ export interface ThresholdSeriesGeometry {
59
59
  * Per-frame screen geometry for a **time-varying** threshold — a plain
60
60
  * `LiveChartPoint[]` `value` or a live `SharedValue<LiveChartPoint[]>` `series`
61
61
  * (which wins when both are given): the screen polyline (marker line +
62
- * fill-band bottom), the shader's pixel-Y `samples[]`, the current value/anchor
63
- * for the badge, and the `extendToNow` cutoff X. The array buffers ping-pong
64
- * (Reanimated only re-notifies subscribers when the returned reference
62
+ * fill-band bottom), the shader's pixel-Y `samples[]`, the configured endpoint
63
+ * value/anchor for the badge, and the `extendToNow` cutoff X. The array buffers
64
+ * ping-pong (Reanimated only re-notifies subscribers when the returned reference
65
65
  * changes). When the threshold is a constant `SharedValue<number>` every
66
66
  * worklet short-circuits cheaply and {@link useThreshold} drives the render
67
67
  * instead.
68
68
  */
69
- export declare function useThresholdSeries(engine: ChartEngineLayout, padding: ChartPadding, value: ThresholdValue, series?: SharedValue<LiveChartPoint[]> | null, extendToNow?: boolean): ThresholdSeriesGeometry;
69
+ export declare function useThresholdSeries(engine: ChartEngineLayout, padding: ChartPadding, value: ThresholdValue, series?: SharedValue<LiveChartPoint[]> | null, extendToNow?: boolean, labelAnchor?: "first" | "last"): ThresholdSeriesGeometry;
70
70
  /**
71
71
  * Pack a series geometry + a color set into the {@link ThresholdSplitShader}'s
72
72
  * uniforms (one `SharedValue` per paint — stroke vs. the alpha-reduced fill band).
@@ -1 +1 @@
1
- {"version":3,"file":"useThreshold.d.ts","sourceRoot":"","sources":["../../src/hooks/useThreshold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAYjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,yFAAyF;AACzF,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;AAEpE,oFAAoF;AACpF,eAAO,MAAM,iBAAiB,aAAM,CAAC;AAErC,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,oFAAoF;IACpF,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,sFAAsF;IACtF,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IACjD,2FAA2F;IAC3F,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;CACvC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,cAAc,GACpB,iBAAiB,CAgCnB;AAED,MAAM,WAAW,uBAAuB;IACtC;;iEAE6D;IAC7D,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC;;;8DAG0D;IAC1D,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/B,6EAA6E;IAC7E,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,sFAAsF;IACtF,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,qDAAqD;IACrD,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC;;;sDAGkD;IAClD,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACrC;;oEAEgE;IAChE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACjC;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,cAAc,EACrB,MAAM,GAAE,WAAW,CAAC,cAAc,EAAE,CAAC,GAAG,IAAW,EACnD,WAAW,UAAO,GACjB,uBAAuB,CAoJzB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,EAC9B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAC9B,WAAW,CAAC,QAAQ,CAAC,CAoBvB"}
1
+ {"version":3,"file":"useThreshold.d.ts","sourceRoot":"","sources":["../../src/hooks/useThreshold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAYjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,yFAAyF;AACzF,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;AAEpE,oFAAoF;AACpF,eAAO,MAAM,iBAAiB,aAAM,CAAC;AAErC,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,oFAAoF;IACpF,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,sFAAsF;IACtF,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IACjD,2FAA2F;IAC3F,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;CACvC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,cAAc,GACpB,iBAAiB,CAgCnB;AAED,MAAM,WAAW,uBAAuB;IACtC;;iEAE6D;IAC7D,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC;;;8DAG0D;IAC1D,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/B,6EAA6E;IAC7E,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B;mEAC+D;IAC/D,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,mDAAmD;IACnD,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC;;wBAEoB;IACpB,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACnC;;oEAEgE;IAChE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACjC;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,cAAc,EACrB,MAAM,GAAE,WAAW,CAAC,cAAc,EAAE,CAAC,GAAG,IAAW,EACnD,WAAW,UAAO,EAClB,WAAW,GAAE,OAAO,GAAG,MAAe,GACrC,uBAAuB,CA4JzB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,EAC9B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAC9B,WAAW,CAAC,QAAQ,CAAC,CAoBvB"}
package/dist/index.d.ts CHANGED
@@ -15,5 +15,5 @@ export { MONO_FONT_FAMILY } from "./lib/monoFontFamily";
15
15
  export { useDegen } from "./hooks/useDegen";
16
16
  export { useTradeStream } from "./hooks/useTradeStream";
17
17
  export { usePriceY, useTimeX } from "./hooks/useChartOverlayContext";
18
- export type { AreaDotsConfig, AxisAutoHideConfig, AxisLabelConfig, BadgeConfig, BadgeMetrics, BadgeStyleConfig, BadgeVariant, CandleMetrics, CandlePoint, CanvasMode, ChartInsets, ChartOverlayContext, ChartPlotRect, ChartScale, ChartSegment, DegenOptions, DegenShakePayload, DotGlowConfig, EmptyStateMetrics, FontConfig, FontWeight, GradientConfig, GridMetrics, GridStyleConfig, LeftEdgeFadeConfig, LegendConfig, LegendStyle, LineConfig, LiveChartCoreProps, LiveChartHandle, LiveChartMetrics, LiveChartMetricsOverride, LiveChartPalette, LiveChartPoint, LiveChartProps, LiveChartSeriesProps, LoadingConfig, Marker, MarkerClusterConfig, MarkerGroupBadge, MarkerKind, MarkerPressEvent, MarkerRenderContext, MarkerSide, Momentum, MomentumConfig, MotionMetrics, MultiSeriesDotConfig, PerSeriesTooltipConfig, PulseConfig, ReferenceLine, ReferenceLineBadgeConfig, ReferenceLineGroupingConfig, ReferenceLineRenderProps, ReturnToLiveConfig, ScrubActionConfig, ScrubActionPoint, ScrubConfig, ScrubPoint, ScrubPointCore, ScrubPointMulti, ScrubSeriesValue, SelectionDotConfig, SelectionDotProps, SelectionDotRingConfig, SeriesConfig, ThemeMode, ThresholdConfig, ThresholdLineConfig, TooltipRenderProps, TradeEvent, TransitionConfig, ValueLineConfig, VisibleRange, VolumeConfig, XAxisConfig, YAxisConfig, ZoomConfig, } from "./types";
18
+ export type { AreaDotsConfig, AxisAutoHideConfig, AxisLabelConfig, BadgeConfig, BadgeMetrics, BadgeStyleConfig, BadgeVariant, CandleGap, CandleGapBandStyle, CandleGapBridgeStyle, CandleGapKind, CandleGapLabelStyle, CandleGapStyle, CandleGapsConfig, CandleMetrics, CandlePoint, CanvasMode, ChartGap, ChartGapBandStyle, ChartGapBridgeStyle, ChartGapKind, ChartGapLabelStyle, ChartGapsConfig, ChartGapStyle, ChartInsets, ChartOverlayContext, ChartPlotRect, ChartScale, ChartSegment, DegenOptions, DegenShakePayload, DotGlowConfig, EmptyStateMetrics, FontConfig, FontWeight, GradientConfig, GridMetrics, GridStyleConfig, LeftEdgeFadeConfig, LegendConfig, LegendStyle, LineConfig, LiveChartCoreProps, LiveChartHandle, LiveChartMetrics, LiveChartMetricsOverride, LiveChartPalette, LiveChartPoint, LiveChartProps, LiveChartSeriesProps, LoadingConfig, Marker, MarkerClusterConfig, MarkerGroupBadge, MarkerKind, MarkerPressEvent, MarkerRenderContext, MarkerSide, Momentum, MomentumConfig, MotionMetrics, MultiSeriesDotConfig, PerSeriesTooltipConfig, PulseConfig, ReferenceLine, ReferenceLineBadgeConfig, ReferenceLineGroupingConfig, ReferenceLineRenderProps, ReturnToLiveConfig, ScrubActionConfig, ScrubActionPoint, ScrubConfig, ScrubPoint, ScrubPointCore, ScrubPointMulti, ScrubSeriesValue, SelectionDotConfig, SelectionDotProps, SelectionDotRingConfig, SeriesConfig, ThemeMode, ThresholdConfig, ThresholdBadgeRenderProps, ThresholdLineConfig, TooltipRenderProps, TradeEvent, TransitionConfig, ValueLineConfig, VisibleRange, VolumeConfig, XAxisConfig, YAxisConfig, ZoomConfig, } from "./types";
19
19
  //# 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,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAIrE,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,MAAM,EACN,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,kBAAkB,EAClB,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,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,UAAU,GACX,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,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAIrE,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,MAAM,EACN,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,kBAAkB,EAClB,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,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,UAAU,GACX,MAAM,SAAS,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { CandleGap, CandleGapKind, CandlePoint } from "../types";
2
+ /** Built-in, overridable copy for gap bands and scrub tooltips. */
3
+ export declare function candleGapDefaultLabel(kind: CandleGapKind): string;
4
+ /** Find the explicit half-open gap containing `time`. Input must be start-sorted. */
5
+ export declare function pickCandleGapAtTime(gaps: CandleGap[], time: number): CandleGap | null;
6
+ /** Latest real candle strictly before `time`, preferring a newer live candle. */
7
+ export declare function previousCandleAtTime(candles: CandlePoint[], liveCandle: CandlePoint | null, time: number): CandlePoint | null;
8
+ /** Previous observed close for a bridged gap; `null` when no anchor exists. */
9
+ export declare function previousCandleCloseAtTime(candles: CandlePoint[], liveCandle: CandlePoint | null, time: number): number | null;
10
+ /** Whether a real candle starts in the bucket beginning at `bucketTime`. */
11
+ export declare function candleAtBucketTime(candles: CandlePoint[], liveCandle: CandlePoint | null, bucketTime: number, candleWidthSecs: number): CandlePoint | null;
12
+ /**
13
+ * Bucket start under `time`, aligned to the nearest preceding real candle.
14
+ * Returns `null` for a partial edge bucket, a bucket with real OHLC, or a gap
15
+ * without a previous-close anchor.
16
+ */
17
+ export declare function candleGapBucketStartAtTime(gap: CandleGap, time: number, candles: CandlePoint[], liveCandle: CandlePoint | null, candleWidthSecs: number): number | null;
18
+ //# sourceMappingURL=candleGaps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"candleGaps.d.ts","sourceRoot":"","sources":["../../src/math/candleGaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEtE,mEAAmE;AACnE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAKjE;AAED,qFAAqF;AACrF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,EAAE,EACjB,IAAI,EAAE,MAAM,GACX,SAAS,GAAG,IAAI,CAYlB;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,WAAW,GAAG,IAAI,EAC9B,IAAI,EAAE,MAAM,GACX,WAAW,GAAG,IAAI,CAkBpB;AAED,+EAA+E;AAC/E,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,WAAW,GAAG,IAAI,EAC9B,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAGf;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,WAAW,GAAG,IAAI,EAC9B,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,GACtB,WAAW,GAAG,IAAI,CAkBpB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EAAE,EACtB,UAAU,EAAE,WAAW,GAAG,IAAI,EAC9B,eAAe,EAAE,MAAM,GACtB,MAAM,GAAG,IAAI,CAmBf"}
@@ -0,0 +1,12 @@
1
+ import type { ChartPadding } from "../draw/line";
2
+ import type { LiveChartPoint } from "../types";
3
+ /**
4
+ * Project a historical reference-line series into screen-space `[x, y, …]`
5
+ * points for the visible time window. Window-edge values are interpolated so
6
+ * the path enters and leaves the plot cleanly. The series clamps to its first
7
+ * value on the left and, by default, to its last value at the live edge.
8
+ *
9
+ * Worklet-safe. When `out` is supplied it is cleared and reused.
10
+ */
11
+ export declare function buildReferenceLineSeriesPoints(points: LiveChartPoint[], now: number, windowSecs: number, displayMin: number, displayMax: number, canvasWidth: number, canvasHeight: number, padding: ChartPadding, extendToNow: boolean, out?: number[]): number[];
12
+ //# sourceMappingURL=referenceLineSeries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"referenceLineSeries.d.ts","sourceRoot":"","sources":["../../src/math/referenceLineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI/C;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,cAAc,EAAE,EACxB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,OAAO,EACpB,GAAG,CAAC,EAAE,MAAM,EAAE,GACb,MAAM,EAAE,CA0DV"}
@@ -1,15 +1,15 @@
1
1
  import type { FontWeight, ReferenceLine, ReferenceLineBadgeConfig } from "../types";
2
- /** Which of the three reference-line forms a `ReferenceLine` resolves to. */
3
- export type ReferenceLineForm = "line" | "value-band" | "time-band" | "none";
2
+ /** Which of the four reference-line forms a `ReferenceLine` resolves to. */
3
+ export type ReferenceLineForm = "line" | "series" | "value-band" | "time-band" | "none";
4
4
  /**
5
- * Classify a `ReferenceLine` into one of its three forms, applying the
6
- * documented precedence A (line) > B (value band) > C (time band).
5
+ * Classify a `ReferenceLine` into one of its four forms, applying the
6
+ * documented precedence A (line) > B (series) > C (value band) > D (time band).
7
7
  */
8
8
  export declare function referenceLineForm(rl: ReferenceLine): ReferenceLineForm;
9
9
  /**
10
10
  * Gather every Y value a set of reference lines should contribute to the
11
11
  * axis-range computation. Lines flagged `excludeFromRange` are skipped, as are
12
- * time bands (Form C) which constrain time, not value.
12
+ * time bands (Form D) which constrain time, not value.
13
13
  */
14
14
  export declare function collectReferenceValues(lines: ReferenceLine[]): number[];
15
15
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"referenceLines.d.ts","sourceRoot":"","sources":["../../src/math/referenceLines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,wBAAwB,EACzB,MAAM,UAAU,CAAC;AAElB,6EAA6E;AAC7E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,MAAM,CAAC;AAE7E;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,aAAa,GAAG,iBAAiB,CAQtE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,CAgBvE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,SAAS,aAAa,EAAE,GAC9B,MAAM,EAAE,CAUV;AAoBD;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtC,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,wDAAwD;IACxD,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IACnC,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;yDACyD;AACzD,MAAM,WAAW,sBAAuB,SAAQ,2BAA2B;IACzE,qGAAqG;IACrG,OAAO,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;yDACyD;AACzD,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;AA+BtE;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,CAAC,EAAE,wBAAwB,GAC/B,2BAA2B,CAE7B;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,aAAa,GAChB,sBAAsB,GAAG,IAAI,CAmB/B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,IAAI,GAAG,OAAO,GAAG,OAAO,CAK1B"}
1
+ {"version":3,"file":"referenceLines.d.ts","sourceRoot":"","sources":["../../src/math/referenceLines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,wBAAwB,EACzB,MAAM,UAAU,CAAC;AAElB,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,QAAQ,GACR,YAAY,GACZ,WAAW,GACX,MAAM,CAAC;AAEX;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,aAAa,GAAG,iBAAiB,CAStE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,CAgCvE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,SAAS,aAAa,EAAE,GAC9B,MAAM,EAAE,CAgBV;AAoBD;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtC,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,wDAAwD;IACxD,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IACnC,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;yDACyD;AACzD,MAAM,WAAW,sBAAuB,SAAQ,2BAA2B;IACzE,qGAAqG;IACrG,OAAO,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;yDACyD;AACzD,MAAM,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;AA+BtE;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,CAAC,EAAE,wBAAwB,GAC/B,2BAA2B,CAE7B;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,aAAa,GAChB,sBAAsB,GAAG,IAAI,CAmB/B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,IAAI,GAAG,OAAO,GAAG,OAAO,CAK1B"}
@@ -39,7 +39,11 @@ export type SplinePathSink = {
39
39
  export declare function drawSpline(path: SplinePathSink, pts: number[], scratch?: SplineScratch,
40
40
  /** Straight polyline (`lineTo` per point) instead of the monotone cubic — an
41
41
  * angular, hard-edged line. The caller has already `moveTo`'d point 0. */
42
- linear?: boolean): void;
42
+ linear?: boolean,
43
+ /** First point index to draw (inclusive). The caller must moveTo this point. */
44
+ startPoint?: number,
45
+ /** Last point index to draw (exclusive). Defaults to the full array. */
46
+ endPoint?: number): void;
43
47
  /**
44
48
  * Value of the Fritsch–Carlson monotone cubic — the same curve {@link drawSpline}
45
49
  * 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;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"}
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;AACd,gFAAgF;AAChF,UAAU,SAAI;AACd,wEAAwE;AACxE,QAAQ,SAAkB,QAyE3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EAAE,EACxB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAoEf"}