react-native-livechart 4.11.0 → 4.13.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.
- package/dist/components/CrosshairLine.d.ts +12 -2
- package/dist/components/CrosshairLine.d.ts.map +1 -1
- package/dist/components/CrosshairOverlay.d.ts +12 -2
- package/dist/components/CrosshairOverlay.d.ts.map +1 -1
- package/dist/components/CustomReferenceLineOverlay.d.ts +15 -10
- package/dist/components/CustomReferenceLineOverlay.d.ts.map +1 -1
- package/dist/components/CustomTooltipOverlay.d.ts +5 -2
- package/dist/components/CustomTooltipOverlay.d.ts.map +1 -1
- package/dist/components/DotOverlay.d.ts +3 -5
- package/dist/components/DotOverlay.d.ts.map +1 -1
- package/dist/components/LiveChart.d.ts.map +1 -1
- package/dist/components/LiveChartSeries.d.ts.map +1 -1
- package/dist/components/PerSeriesTooltipOverlay.d.ts +21 -0
- package/dist/components/PerSeriesTooltipOverlay.d.ts.map +1 -0
- package/dist/components/ReferenceLineOverlay.d.ts +27 -6
- package/dist/components/ReferenceLineOverlay.d.ts.map +1 -1
- package/dist/components/YAxisOverlay.d.ts +8 -2
- package/dist/components/YAxisOverlay.d.ts.map +1 -1
- package/dist/core/liveIndicatorVisibility.d.ts +9 -0
- package/dist/core/liveIndicatorVisibility.d.ts.map +1 -0
- package/dist/core/resolveConfig.d.ts +45 -0
- package/dist/core/resolveConfig.d.ts.map +1 -1
- package/dist/draw/grid.d.ts +13 -0
- package/dist/draw/grid.d.ts.map +1 -1
- package/dist/hooks/crosshairSeries.d.ts +10 -2
- package/dist/hooks/crosshairSeries.d.ts.map +1 -1
- package/dist/hooks/crosshairShared.d.ts +55 -5
- package/dist/hooks/crosshairShared.d.ts.map +1 -1
- package/dist/hooks/delayedPanGuard.d.ts +66 -8
- package/dist/hooks/delayedPanGuard.d.ts.map +1 -1
- package/dist/hooks/useChartPaths.d.ts +5 -9
- package/dist/hooks/useChartPaths.d.ts.map +1 -1
- package/dist/hooks/useCrosshair.d.ts +13 -1
- package/dist/hooks/useCrosshair.d.ts.map +1 -1
- package/dist/hooks/useCrosshairSeries.d.ts +27 -3
- package/dist/hooks/useCrosshairSeries.d.ts.map +1 -1
- package/dist/hooks/useCrosshairVisibleOpacity.d.ts +8 -0
- package/dist/hooks/useCrosshairVisibleOpacity.d.ts.map +1 -0
- package/dist/hooks/useMomentum.d.ts +1 -1
- package/dist/hooks/useMomentum.d.ts.map +1 -1
- package/dist/hooks/usePanScroll.d.ts +15 -1
- package/dist/hooks/usePanScroll.d.ts.map +1 -1
- package/dist/hooks/useReferenceLine.d.ts +10 -1
- package/dist/hooks/useReferenceLine.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/math/lerp.d.ts.map +1 -1
- package/dist/math/momentum.d.ts +1 -1
- package/dist/math/momentum.d.ts.map +1 -1
- package/dist/math/referenceLines.d.ts +7 -0
- package/dist/math/referenceLines.d.ts.map +1 -1
- package/dist/types.d.ts +207 -18
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/CrosshairLine.tsx +39 -8
- package/src/components/CrosshairOverlay.tsx +49 -15
- package/src/components/CustomReferenceLineOverlay.tsx +42 -13
- package/src/components/CustomTooltipOverlay.tsx +15 -3
- package/src/components/DotOverlay.tsx +24 -8
- package/src/components/LiveChart.tsx +182 -39
- package/src/components/LiveChartSeries.tsx +195 -16
- package/src/components/PerSeriesTooltipOverlay.tsx +290 -0
- package/src/components/ReferenceLineOverlay.tsx +288 -141
- package/src/components/YAxisOverlay.tsx +39 -10
- package/src/core/liveIndicatorVisibility.ts +25 -0
- package/src/core/resolveConfig.ts +115 -0
- package/src/draw/grid.ts +33 -0
- package/src/hooks/crosshairSeries.ts +262 -33
- package/src/hooks/crosshairShared.ts +117 -6
- package/src/hooks/delayedPanGuard.ts +111 -6
- package/src/hooks/useChartPaths.ts +25 -15
- package/src/hooks/useCrosshair.ts +103 -32
- package/src/hooks/useCrosshairSeries.ts +126 -11
- package/src/hooks/useCrosshairVisibleOpacity.ts +57 -0
- package/src/hooks/useMomentum.ts +8 -1
- package/src/hooks/usePanScroll.ts +46 -5
- package/src/hooks/useReferenceLine.ts +26 -1
- package/src/index.ts +1 -0
- package/src/math/lerp.ts +7 -0
- package/src/math/momentum.ts +22 -5
- package/src/math/referenceLines.ts +38 -0
- package/src/types.ts +215 -18
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
import { type SkFont } from "@shopify/react-native-skia";
|
|
2
2
|
import { type Gesture } from "react-native-gesture-handler";
|
|
3
|
-
import type { SharedValue } from "react-native-reanimated";
|
|
3
|
+
import type { DerivedValue, SharedValue } from "react-native-reanimated";
|
|
4
4
|
import { type ChartPadding } from "../draw/line";
|
|
5
5
|
import type { 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. */
|
|
9
9
|
export declare const SCRUB_FAIL_Y_PX = 10;
|
|
10
|
+
/** Clamp an X pixel to the plot's horizontal bounds. */
|
|
11
|
+
export declare function clampPlotX(x: number, padLeft: number, canvasWidth: number, padRight: number): number;
|
|
12
|
+
export interface ScrubHitSlop {
|
|
13
|
+
left?: number;
|
|
14
|
+
right?: number;
|
|
15
|
+
bottom?: number;
|
|
16
|
+
}
|
|
17
|
+
/** Build touch-down bounds for a scrub recognizer. */
|
|
18
|
+
export declare function resolveScrubHitSlop(padding: ChartPadding, clampToPlot: boolean, bottomExclude?: number): ScrubHitSlop | undefined;
|
|
19
|
+
interface ScrubGestureValue<T> {
|
|
20
|
+
get(): T;
|
|
21
|
+
set(value: T): void;
|
|
22
|
+
}
|
|
23
|
+
/** Start plain scrubbing; the recognizer gates out-of-plot touch origins. */
|
|
24
|
+
export declare function startPlainScrub(x: number, padding: ChartPadding, canvasWidth: number, clampToPlot: boolean, scrubX: ScrubGestureValue<number>, scrubActive: ScrubGestureValue<boolean>, gestureStarted: ScrubGestureValue<boolean>): void;
|
|
25
|
+
/** Track plain scrubbing, clamping gestures accepted by the recognizer. */
|
|
26
|
+
export declare function updatePlainScrub(x: number, padding: ChartPadding, canvasWidth: number, clampToPlot: boolean, scrubX: ScrubGestureValue<number>, scrubActive: ScrubGestureValue<boolean>): void;
|
|
10
27
|
export interface TooltipLayout {
|
|
11
28
|
x: number;
|
|
12
29
|
y: number;
|
|
@@ -25,6 +42,37 @@ export interface TooltipLayout {
|
|
|
25
42
|
baselineY: number;
|
|
26
43
|
dim: boolean;
|
|
27
44
|
}[];
|
|
45
|
+
/** LiveChartSeries' opt-in Morfi-style time pill + per-series value pills. */
|
|
46
|
+
perSeries?: {
|
|
47
|
+
/** Idle endpoint mode: value pills only, with no guide or time pill. */
|
|
48
|
+
pinned: boolean;
|
|
49
|
+
timePill?: {
|
|
50
|
+
x: number;
|
|
51
|
+
y: number;
|
|
52
|
+
w: number;
|
|
53
|
+
h: number;
|
|
54
|
+
text: string;
|
|
55
|
+
textX: number;
|
|
56
|
+
baselineY: number;
|
|
57
|
+
};
|
|
58
|
+
pills: {
|
|
59
|
+
id: string;
|
|
60
|
+
color: string;
|
|
61
|
+
anchorX: number;
|
|
62
|
+
anchorY: number;
|
|
63
|
+
x: number;
|
|
64
|
+
y: number;
|
|
65
|
+
w: number;
|
|
66
|
+
h: number;
|
|
67
|
+
dotX: number;
|
|
68
|
+
dotY: number;
|
|
69
|
+
label: string;
|
|
70
|
+
labelX: number;
|
|
71
|
+
value: string;
|
|
72
|
+
valueX: number;
|
|
73
|
+
baselineY: number;
|
|
74
|
+
}[];
|
|
75
|
+
};
|
|
28
76
|
}
|
|
29
77
|
export declare const HIDDEN_TOOLTIP: TooltipLayout;
|
|
30
78
|
export interface CrosshairState {
|
|
@@ -33,7 +81,7 @@ export interface CrosshairState {
|
|
|
33
81
|
scrubTime: SharedValue<number>;
|
|
34
82
|
scrubValue: SharedValue<number | null>;
|
|
35
83
|
crosshairOpacity: SharedValue<number>;
|
|
36
|
-
tooltipLayout: SharedValue<TooltipLayout>;
|
|
84
|
+
tooltipLayout: SharedValue<TooltipLayout> | DerivedValue<TooltipLayout>;
|
|
37
85
|
/** Scrub intersection Y in canvas px; -1 when there's no dot to draw
|
|
38
86
|
* (inactive / no value / degenerate range). See {@link computeScrubDotY}. */
|
|
39
87
|
scrubDotY: SharedValue<number>;
|
|
@@ -88,10 +136,11 @@ export declare function snapPrice(price: number, increment?: number): number;
|
|
|
88
136
|
*/
|
|
89
137
|
export declare function computeScrubTime(scrubActive: boolean, scrubX: number, padding: ChartPadding, canvasWidth: number, timestamp: number, windowSecs: number): number;
|
|
90
138
|
/**
|
|
91
|
-
* Crosshair opacity: fades 1→0 over
|
|
92
|
-
* approaches the live dot at the right chart edge.
|
|
139
|
+
* Crosshair opacity: fades 1→0 over `fadeDistance` px as the crosshair
|
|
140
|
+
* approaches the live dot at the right chart edge. A zero distance removes
|
|
141
|
+
* the ramp while keeping the crosshair hidden at and beyond the live edge.
|
|
93
142
|
*/
|
|
94
|
-
export declare function computeCrosshairOpacity(scrubActive: boolean, scrubX: number, canvasWidth: number, paddingRight: number): number;
|
|
143
|
+
export declare function computeCrosshairOpacity(scrubActive: boolean, scrubX: number, canvasWidth: number, paddingRight: number, fadeDistance?: number): number;
|
|
95
144
|
/**
|
|
96
145
|
* Full tooltip pill layout. Returns HIDDEN_TOOLTIP when the scrub is
|
|
97
146
|
* inactive or no value can be interpolated at the current time.
|
|
@@ -227,4 +276,5 @@ export declare function pointInRect(px: number, py: number, rect: {
|
|
|
227
276
|
}, slop?: number): boolean;
|
|
228
277
|
/** Single-series crosshair tooltip — extracted for tests. */
|
|
229
278
|
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" | "point", showValue?: boolean, showTime?: boolean, canvasHeight?: number, margin?: number, scrubDotY?: number): TooltipLayout;
|
|
279
|
+
export {};
|
|
230
280
|
//# sourceMappingURL=crosshairShared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crosshairShared.d.ts","sourceRoot":"","sources":["../../src/hooks/crosshairShared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"crosshairShared.d.ts","sourceRoot":"","sources":["../../src/hooks/crosshairShared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAS5C,wEAAwE;AACxE,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,mFAAmF;AACnF,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,wDAAwD;AACxD,wBAAgB,UAAU,CACxB,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,CAGR;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,sDAAsD;AACtD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,OAAO,EACpB,aAAa,SAAI,GAChB,YAAY,GAAG,SAAS,CAQ1B;AAED,UAAU,iBAAiB,CAAC,CAAC;IAC3B,GAAG,IAAI,CAAC,CAAC;IACT,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;CACrB;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAC7B,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACjC,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,EACvC,cAAc,EAAE,iBAAiB,CAAC,OAAO,CAAC,GACzC,IAAI,CASN;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACjC,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,GACtC,IAAI,CAQN;AAaD,MAAM,WAAW,aAAa;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,0FAA0F;IAC1F,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,OAAO,CAAC;KACd,EAAE,CAAC;IACJ,8EAA8E;IAC9E,SAAS,CAAC,EAAE;QACV,wEAAwE;QACxE,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,CAAC,EAAE;YACT,CAAC,EAAE,MAAM,CAAC;YACV,CAAC,EAAE,MAAM,CAAC;YACV,CAAC,EAAE,MAAM,CAAC;YACV,CAAC,EAAE,MAAM,CAAC;YACV,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,KAAK,EAAE;YACL,EAAE,EAAE,MAAM,CAAC;YACX,KAAK,EAAE,MAAM,CAAC;YACd,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,CAAC,EAAE,MAAM,CAAC;YACV,CAAC,EAAE,MAAM,CAAC;YACV,CAAC,EAAE,MAAM,CAAC;YACV,CAAC,EAAE,MAAM,CAAC;YACV,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;SACnB,EAAE,CAAC;KACL,CAAC;CACH;AAED,eAAO,MAAM,cAAc,EAAE,aAa5B,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,UAAU,EAAE,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,aAAa,EACT,WAAW,CAAC,aAAa,CAAC,GAC1B,YAAY,CAAC,aAAa,CAAC,CAAC;IAChC;kFAC8E;IAC9E,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B;;mEAE+D;IAC/D,WAAW,CAAC,EAAE,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC9C;;;;;sFAKkF;IAClF,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;IAIxC,oDAAoD;IACpD,UAAU,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,oDAAoD;IACpD,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,oDAAoD;IACpD,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,kFAAkF;IAClF,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC,gEAAgE;IAChE,WAAW,CAAC,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAC7C,yEAAyE;IACzE,SAAS,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IACzC,kFAAkF;IAClF,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,MAAM,CAQR;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,CAAC,EAAE,MAAM,EACT,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,IAAI,CASf;AAED,oFAAoF;AACpF,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAInE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,MAAM,CAQR;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,YAAY,SAAI,GACf,MAAM,CAOR;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,IAAI,EAAE,MAAM;AACZ,2EAA2E;AAC3E,aAAa,SAAI;AACjB;;;;oEAIoE;AACpE,SAAS,GAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAgB;AACvD,4BAA4B;AAC5B,SAAS,UAAO;AAChB,2BAA2B;AAC3B,QAAQ,UAAO;AACf,0EAA0E;AAC1E,YAAY,SAAI;AAChB;6EAC6E;AAC7E,MAAM,SAAqB;AAC3B;4EAC4E;AAC5E,SAAS,SAAK,GACb,aAAa,CAkGf;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,OAAO,CAAA;CAAE,EAAE,EACvC,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM;AACZ,2EAA2E;AAC3E,aAAa,SAAI,GAChB,aAAa,CAwDf;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EACzE,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,IAAI,EAAE,MAAM,EACZ,aAAa,SAAI,GAChB,aAAa,CA0Bf;AAED,sEAAsE;AACtE,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GACtC,MAAM,GAAG,IAAI,CAIf;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,yFAAyF;IACzF,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,mBAAmB,EAAE,iBAkBjC,CAAC;AAKF,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM;AACnB,qFAAqF;AACrF,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,iBAAiB,CAoEnB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,iBAAiB;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,EAAE,eAS/B,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM;AACnB;;+CAE+C;AAC/C,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,eAAe,CA0BjB;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EACpD,IAAI,SAAI,GACP,OAAO,CAQT;AAED,6DAA6D;AAC7D,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,OAAO,EACpB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAClC,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,IAAI,EAAE,MAAM,EACZ,aAAa,SAAI,EACjB,SAAS,GAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAgB,EACvD,SAAS,UAAO,EAChB,QAAQ,UAAO,EACf,YAAY,SAAI,EAChB,MAAM,SAAqB,EAC3B,SAAS,SAAK,GACb,aAAa,CAqBf"}
|
|
@@ -1,13 +1,52 @@
|
|
|
1
1
|
import type { SharedValue } from "react-native-reanimated";
|
|
2
2
|
type BooleanSharedValue = Pick<SharedValue<boolean>, "get" | "set">;
|
|
3
|
+
type NumberSharedValue = Pick<SharedValue<number>, "get" | "set">;
|
|
4
|
+
type TouchPoint = {
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
};
|
|
3
8
|
type TouchCountEvent = {
|
|
4
9
|
numberOfTouches: number;
|
|
5
10
|
};
|
|
11
|
+
type TouchesEvent = TouchCountEvent & {
|
|
12
|
+
changedTouches: TouchPoint[];
|
|
13
|
+
allTouches: TouchPoint[];
|
|
14
|
+
};
|
|
6
15
|
type GestureStateManager = {
|
|
7
16
|
fail: () => void;
|
|
8
17
|
};
|
|
9
|
-
/**
|
|
10
|
-
|
|
18
|
+
/**
|
|
19
|
+
* A pending hold-to-scrub pan must stay within this radius of its touch-down
|
|
20
|
+
* point to activate. Matches the platform long-press convention (RNGH
|
|
21
|
+
* LongPress `maxDist` / UIKit `allowableMovement` default 10) with a little
|
|
22
|
+
* slack for thumbs.
|
|
23
|
+
*/
|
|
24
|
+
export declare const HOLD_MAX_DRIFT_PX = 12;
|
|
25
|
+
/**
|
|
26
|
+
* An activation earlier than `delayMs - slack` after the current touch went
|
|
27
|
+
* down cannot be a real hold — it is a stale `activateAfterLongPress` timer
|
|
28
|
+
* carried over from a previous touch (see `shouldStartDelayedPan`).
|
|
29
|
+
*/
|
|
30
|
+
export declare const HOLD_TIMER_SLACK_MS = 50;
|
|
31
|
+
/** Record the first pointer of a delayed pan going down. Zero-delay pans are inert. */
|
|
32
|
+
export declare function delayedPanTouchDown(delayMs: number, event: TouchesEvent, fingerDown: BooleanSharedValue, downX: NumberSharedValue, downY: NumberSharedValue, downAtMs: NumberSharedValue, holdBroken: BooleanSharedValue): void;
|
|
33
|
+
/**
|
|
34
|
+
* Enforce the stationary hold: while the delayed pan is still pending, any
|
|
35
|
+
* drift beyond HOLD_MAX_DRIFT_PX fails it outright AND latches `holdBroken`.
|
|
36
|
+
*
|
|
37
|
+
* `manager.fail()` alone is not enough. It only lands if the recognizer is
|
|
38
|
+
* still in a state that can fail, and — on iOS — the native
|
|
39
|
+
* `activateAfterLongPress` timer fires `handleGesture:inState:Active`
|
|
40
|
+
* unconditionally (RNPanHandler.m), so a timer that survived the fail still
|
|
41
|
+
* emits ACTIVE. The latch makes "the finger moved before the hold elapsed" a
|
|
42
|
+
* decision `shouldStartDelayedPan` can re-check at activation time, instead of
|
|
43
|
+
* trusting the native recognizer to have stayed failed.
|
|
44
|
+
*
|
|
45
|
+
* The latch also covers movement that returns to its origin: a finger that
|
|
46
|
+
* wanders 40px away and comes back is within the slop when the timer fires, but
|
|
47
|
+
* it was never a stationary hold.
|
|
48
|
+
*/
|
|
49
|
+
export declare function delayedPanTouchMove(delayMs: number, event: TouchesEvent, manager: GestureStateManager, panActivated: BooleanSharedValue, downX: NumberSharedValue, downY: NumberSharedValue, holdBroken: BooleanSharedValue): void;
|
|
11
50
|
/**
|
|
12
51
|
* Fail a delayed pan that is still pending when its final pointer lifts.
|
|
13
52
|
*
|
|
@@ -19,13 +58,32 @@ export declare function delayedPanTouchUp(delayMs: number, event: TouchCountEven
|
|
|
19
58
|
/** Clear pointer state when the native touch stream is cancelled. */
|
|
20
59
|
export declare function delayedPanTouchCancelled(delayMs: number, fingerDown: BooleanSharedValue): void;
|
|
21
60
|
/**
|
|
22
|
-
* Record a real delayed-pan activation, or reject
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
61
|
+
* Record a real delayed-pan activation, or reject a spurious one. Two spurious
|
|
62
|
+
* shapes exist, both from RNGH's long-press timer surviving where it shouldn't:
|
|
63
|
+
*
|
|
64
|
+
* 1. The timer fires after the final pointer already lifted (`fingerDown`
|
|
65
|
+
* false) — the original touch-up race.
|
|
66
|
+
* 2. The timer fires DURING a later touch: fast successive taps can land a new
|
|
67
|
+
* pointer before the failed recognizer's native reset completes, so the
|
|
68
|
+
* previous tap's timer fires only `now - downAtMs < delayMs` into the new
|
|
69
|
+
* touch. A real hold can never activate early, so reject anything faster
|
|
70
|
+
* than `delayMs - HOLD_TIMER_SLACK_MS`.
|
|
71
|
+
*
|
|
72
|
+
* 3. The timer fires after the finger already moved off the touch-down point
|
|
73
|
+
* (`holdBroken`) — it was a drag, not a hold. See `delayedPanTouchMove`.
|
|
74
|
+
*
|
|
75
|
+
* 4. The timer fires after the time-scroll pan already took the touch
|
|
76
|
+
* (`scrollActive`) — the chart is mid-drag, so the hold lost the race. The
|
|
77
|
+
* two pans are composed with `Gesture.Race`, which in RNGH declares NO
|
|
78
|
+
* relation between them (`RaceGestureType = ComposedGestureType`), so
|
|
79
|
+
* nothing native stops a losing recognizer from activating later. This latch
|
|
80
|
+
* is the arbitration.
|
|
81
|
+
*
|
|
82
|
+
* All rejected paths deliberately keep `panActivated` false so a missing
|
|
83
|
+
* native FINALIZE cannot poison the next interaction.
|
|
26
84
|
*/
|
|
27
|
-
export declare function shouldStartDelayedPan(delayMs: number, fingerDown: BooleanSharedValue, panActivated: BooleanSharedValue): boolean;
|
|
85
|
+
export declare function shouldStartDelayedPan(delayMs: number, fingerDown: BooleanSharedValue, panActivated: BooleanSharedValue, downAtMs: NumberSharedValue, holdBroken: BooleanSharedValue, scrollActive: BooleanSharedValue): boolean;
|
|
28
86
|
/** Reset the delayed-pan lifecycle after native finalization. */
|
|
29
|
-
export declare function resetDelayedPanGuard(fingerDown: BooleanSharedValue, panActivated: BooleanSharedValue): void;
|
|
87
|
+
export declare function resetDelayedPanGuard(fingerDown: BooleanSharedValue, panActivated: BooleanSharedValue, holdBroken: BooleanSharedValue): void;
|
|
30
88
|
export {};
|
|
31
89
|
//# sourceMappingURL=delayedPanGuard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delayedPanGuard.d.ts","sourceRoot":"","sources":["../../src/hooks/delayedPanGuard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,KAAK,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"delayedPanGuard.d.ts","sourceRoot":"","sources":["../../src/hooks/delayedPanGuard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,KAAK,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;AACpE,KAAK,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;AAElE,KAAK,UAAU,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3C,KAAK,eAAe,GAAG;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,KAAK,YAAY,GAAG,eAAe,GAAG;IACpC,cAAc,EAAE,UAAU,EAAE,CAAC;IAC7B,UAAU,EAAE,UAAU,EAAE,CAAC;CAC1B,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,uFAAuF;AACvF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,kBAAkB,EAC9B,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,iBAAiB,EAC3B,UAAU,EAAE,kBAAkB,GAC7B,IAAI,CAWN;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,mBAAmB,EAC5B,YAAY,EAAE,kBAAkB,EAChC,KAAK,EAAE,iBAAiB,EACxB,KAAK,EAAE,iBAAiB,EACxB,UAAU,EAAE,kBAAkB,GAC7B,IAAI,CAWN;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,kBAAkB,GAC/B,IAAI,CAKN;AAED,qEAAqE;AACrE,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,kBAAkB,GAC7B,IAAI,CAGN;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,kBAAkB,EAChC,QAAQ,EAAE,iBAAiB,EAC3B,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,kBAAkB,GAC/B,OAAO,CAiBT;AAED,iEAAiE;AACjE,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,kBAAkB,EAChC,UAAU,EAAE,kBAAkB,GAC7B,IAAI,CAKN"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { type SkPath } from "@shopify/react-native-skia";
|
|
2
2
|
import { type SharedValue } from "react-native-reanimated";
|
|
3
|
-
import type { SingleEngineState } from "../core/useLiveChartEngine";
|
|
3
|
+
import type { ChartEngineEdge, ChartEngineScroll, SingleEngineState } from "../core/useLiveChartEngine";
|
|
4
4
|
import { type ChartPadding } from "../draw/line";
|
|
5
|
+
/** Selects the synthetic right-edge line tip without coupling chart geometry
|
|
6
|
+
* to badge or live-indicator presentation options. */
|
|
7
|
+
export declare function resolveLineTipValue(displayValue: number, edgeValue: number, viewEnd: number | null): number;
|
|
5
8
|
/**
|
|
6
9
|
* Builds the `linePath` / `fillPath` with `Skia.PathBuilder`s reused across
|
|
7
10
|
* frames (one per curve, held in a SharedValue) and finalized with `detach()` —
|
|
@@ -13,19 +16,12 @@ import { type ChartPadding } from "../draw/line";
|
|
|
13
16
|
* `flatPts` derived value changes reference each frame and re-runs linePath /
|
|
14
17
|
* fillPath.
|
|
15
18
|
*/
|
|
16
|
-
export declare function useChartPaths(engine: SingleEngineState, padding: ChartPadding, morphT?: SharedValue<number>,
|
|
19
|
+
export declare function useChartPaths(engine: SingleEngineState & ChartEngineScroll & ChartEngineEdge, padding: ChartPadding, morphT?: SharedValue<number>,
|
|
17
20
|
/** When set, also build `thresholdFillPath` — the band between the line and this
|
|
18
21
|
* pixel-Y, closed at the threshold instead of the chart baseline. */
|
|
19
22
|
thresholdY?: SharedValue<number>,
|
|
20
23
|
/** Draw the line/fill as a straight polyline instead of the monotone cubic. */
|
|
21
24
|
linear?: boolean,
|
|
22
|
-
/**
|
|
23
|
-
* Value at the visible window's right edge (engine `edgeValue`). With
|
|
24
|
-
* `followViewEdge`, the line's right-edge tip uses this instead of the live
|
|
25
|
-
* `displayValue` — so while time-scrolled the line ends at the last visible
|
|
26
|
-
* price rather than dropping to the (off-screen) live value.
|
|
27
|
-
*/
|
|
28
|
-
edgeValue?: SharedValue<number>, followViewEdge?: boolean,
|
|
29
25
|
/** Loading squiggle wave amplitude (px) for the reveal morph. Default 14. */
|
|
30
26
|
squiggleAmplitude?: number,
|
|
31
27
|
/** Loading squiggle wave speed multiplier for the reveal morph. Default 1. */
|
|
@@ -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,
|
|
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;AAMlE;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;;;;EAyKzC"}
|
|
@@ -45,5 +45,17 @@ tooltipMargin?: number,
|
|
|
45
45
|
* scrubbing (and a vertical drag falls through to the parent). `0` = no
|
|
46
46
|
* exclusion (the default; scrub covers the whole plot).
|
|
47
47
|
*/
|
|
48
|
-
scrubBottomExclude?: number
|
|
48
|
+
scrubBottomExclude?: number,
|
|
49
|
+
/**
|
|
50
|
+
* True while the time-scroll pan owns the touch. The hold-to-scrub pan refuses
|
|
51
|
+
* to activate while set, so a drag that already started scrolling can never
|
|
52
|
+
* mature into a scrub (see `delayedPanGuard.shouldStartDelayedPan`).
|
|
53
|
+
*/
|
|
54
|
+
scrollActive?: SharedValue<boolean>,
|
|
55
|
+
/**
|
|
56
|
+
* Reject plain-scrub starts beyond either horizontal plot edge and clamp
|
|
57
|
+
* active drags to those bounds. Scrub-action behavior is unchanged.
|
|
58
|
+
* Default `false`.
|
|
59
|
+
*/
|
|
60
|
+
clampToPlot?: boolean): CrosshairState;
|
|
49
61
|
//# 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;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,
|
|
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,EAmBL,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,GAClB,cAAc,CA6oBhB"}
|
|
@@ -1,12 +1,36 @@
|
|
|
1
|
+
import type { SkFont } from "@shopify/react-native-skia";
|
|
2
|
+
import { type DerivedValue, type SharedValue } from "react-native-reanimated";
|
|
3
|
+
import type { ResolvedPerSeriesTooltipConfig } from "../core/resolveConfig";
|
|
1
4
|
import type { MultiEngineState } from "../core/useLiveChartEngine";
|
|
2
5
|
import { type ChartPadding } from "../draw/line";
|
|
3
6
|
import type { ScrubPointMulti } from "../types";
|
|
4
7
|
import { type CrosshairState } from "./crosshairShared";
|
|
5
8
|
/**
|
|
6
|
-
* LiveChartSeries crosshair + scrub.
|
|
7
|
-
*
|
|
9
|
+
* LiveChartSeries crosshair + scrub. The optional per-series tooltip is
|
|
10
|
+
* calculated on the UI thread alongside the callback payload.
|
|
8
11
|
*/
|
|
12
|
+
interface CrosshairSeriesTooltipOptions {
|
|
13
|
+
config: ResolvedPerSeriesTooltipConfig;
|
|
14
|
+
formatValue: (value: number) => string;
|
|
15
|
+
formatTime: (time: number) => string;
|
|
16
|
+
font: SkFont;
|
|
17
|
+
colors: string[];
|
|
18
|
+
/** Current-time anchor used to clamp the live bucket's range end. */
|
|
19
|
+
maxTime: SharedValue<number> | DerivedValue<number>;
|
|
20
|
+
}
|
|
9
21
|
export declare function useCrosshairSeries(engine: MultiEngineState, padding: ChartPadding, enabled: boolean, onScrub?: (point: ScrubPointMulti | null) => void,
|
|
10
22
|
/** Press-and-hold delay (ms) before scrubbing activates. 0 = immediate. */
|
|
11
|
-
panGestureDelay?: number, onGestureStart?: () => void, onGestureEnd?: () => void
|
|
23
|
+
panGestureDelay?: number, onGestureStart?: () => void, onGestureEnd?: () => void,
|
|
24
|
+
/**
|
|
25
|
+
* True while the time-scroll pan owns the touch. The hold-to-scrub pan refuses
|
|
26
|
+
* to activate while set, so a drag that already started scrolling can never
|
|
27
|
+
* mature into a scrub (see `delayedPanGuard.shouldStartDelayedPan`).
|
|
28
|
+
*/
|
|
29
|
+
scrollActive?: SharedValue<boolean>, tooltip?: CrosshairSeriesTooltipOptions,
|
|
30
|
+
/**
|
|
31
|
+
* Reject scrub starts beyond either horizontal plot edge and clamp active
|
|
32
|
+
* drags to those bounds. Default `false`.
|
|
33
|
+
*/
|
|
34
|
+
clampToPlot?: boolean): CrosshairState;
|
|
35
|
+
export {};
|
|
12
36
|
//# sourceMappingURL=useCrosshairSeries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCrosshairSeries.d.ts","sourceRoot":"","sources":["../../src/hooks/useCrosshairSeries.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useCrosshairSeries.d.ts","sourceRoot":"","sources":["../../src/hooks/useCrosshairSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAMhD,OAAO,EASL,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAU3B;;;GAGG;AACH,UAAU,6BAA6B;IACrC,MAAM,EAAE,8BAA8B,CAAC;IACvC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,qEAAqE;IACrE,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;CACrD;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,KAAK,IAAI;AACjD,2EAA2E;AAC3E,eAAe,SAAI,EACnB,cAAc,CAAC,EAAE,MAAM,IAAI,EAC3B,YAAY,CAAC,EAAE,MAAM,IAAI;AACzB;;;;GAIG;AACH,YAAY,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE,6BAA6B;AACvC;;;GAGG;AACH,WAAW,UAAQ,GAClB,cAAc,CAkShB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type SharedValue } from "react-native-reanimated";
|
|
2
|
+
/**
|
|
3
|
+
* Opacity for the visible crosshair UI. The trailing-content dim keeps using
|
|
4
|
+
* the edge-faded opacity directly, independent of this setting.
|
|
5
|
+
*/
|
|
6
|
+
export declare function useCrosshairVisibleOpacity(scrubX: SharedValue<number>, canvasWidth: SharedValue<number>, paddingRight: number, active: SharedValue<number> | SharedValue<boolean>, fade: boolean, fadeDistance?: number): import("react-native-reanimated").DerivedValue<number>;
|
|
7
|
+
export declare function resolveCrosshairVisibleOpacity(active: boolean, scrubX: number, canvasWidth: number, paddingRight: number, fade: boolean, fadeDistance?: number): number;
|
|
8
|
+
//# sourceMappingURL=useCrosshairVisibleOpacity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCrosshairVisibleOpacity.d.ts","sourceRoot":"","sources":["../../src/hooks/useCrosshairVisibleOpacity.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAGjC;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,EAC3B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,EAChC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,EAClD,IAAI,EAAE,OAAO,EACb,YAAY,SAAI,0DAqBjB;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,OAAO,EACb,YAAY,SAAI,GACf,MAAM,CAUR"}
|
|
@@ -11,6 +11,6 @@ import type { Momentum, MomentumConfig } from "../types";
|
|
|
11
11
|
export declare function resolveMomentumProp(prop: boolean | Momentum | MomentumConfig, data: readonly {
|
|
12
12
|
time: number;
|
|
13
13
|
value: number;
|
|
14
|
-
}[]): Momentum;
|
|
14
|
+
}[], endTime?: number): Momentum;
|
|
15
15
|
export declare function useMomentum(engine: SingleEngineState, momentumProp?: boolean | Momentum | MomentumConfig): SharedValue<Momentum>;
|
|
16
16
|
//# sourceMappingURL=useMomentum.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMomentum.d.ts","sourceRoot":"","sources":["../../src/hooks/useMomentum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,cAAc,EACzC,IAAI,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"useMomentum.d.ts","sourceRoot":"","sources":["../../src/hooks/useMomentum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,cAAc,EACzC,IAAI,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,EAChD,OAAO,CAAC,EAAE,MAAM,GACf,QAAQ,CAkBV;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,EACzB,YAAY,GAAE,OAAO,GAAG,QAAQ,GAAG,cAAqB,GACvD,WAAW,CAAC,QAAQ,CAAC,CAIvB"}
|
|
@@ -43,6 +43,20 @@ export interface UsePanScrollOptions {
|
|
|
43
43
|
* a stray scrub doesn't linger behind the pan.
|
|
44
44
|
*/
|
|
45
45
|
onScrollStart?: () => void;
|
|
46
|
+
/**
|
|
47
|
+
* Set true for as long as this gesture owns the touch, cleared on finalize.
|
|
48
|
+
* The hold-to-scrub pan reads it and refuses to activate mid-scroll — RNGH's
|
|
49
|
+
* `Gesture.Race` declares no relation between the two pans, so this latch is
|
|
50
|
+
* the only thing stopping the scrub's long-press timer from firing while the
|
|
51
|
+
* chart is already being dragged. See `delayedPanGuard.shouldStartDelayedPan`.
|
|
52
|
+
*/
|
|
53
|
+
scrollActive?: SharedValue<boolean>;
|
|
54
|
+
/**
|
|
55
|
+
* True while the scrub crosshair owns the touch. Scrolling is inert while set,
|
|
56
|
+
* so an engaged scrub locks the chart in place and the finger only moves the
|
|
57
|
+
* price indicator. Cleared when the finger lifts (the scrub pan's finalize).
|
|
58
|
+
*/
|
|
59
|
+
scrubActive?: SharedValue<boolean>;
|
|
46
60
|
}
|
|
47
61
|
/**
|
|
48
62
|
* Smallest valid right-edge time: keeps the window's left edge
|
|
@@ -78,5 +92,5 @@ export declare function axisBandTop(canvasHeight: number, padBottom: number): nu
|
|
|
78
92
|
* edge; `null` means "follow live". Dragging (or flinging) back to the live edge
|
|
79
93
|
* resumes following.
|
|
80
94
|
*/
|
|
81
|
-
export declare function usePanScroll({ engine, padding, minTime, enabled, mode, onScrollStart, }: UsePanScrollOptions): ReturnType<typeof Gesture.Pan>;
|
|
95
|
+
export declare function usePanScroll({ engine, padding, minTime, enabled, mode, onScrollStart, scrollActive, scrubActive, }: UsePanScrollOptions): ReturnType<typeof Gesture.Pan>;
|
|
82
96
|
//# sourceMappingURL=usePanScroll.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePanScroll.d.ts","sourceRoot":"","sources":["../../src/hooks/usePanScroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,sFAAsF;AACtF,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAMnC,6CAA6C;AAC7C,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,UAAU,CAAC;AAE9D,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,gFAAgF;IAChF,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpC,oFAAoF;IACpF,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,iDAAiD;IACjD,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,0BAA0B;IAC1B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,6DAA6D;IAC7D,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,YAAY,CAAC;IACtB;;;;OAIG;IACH,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"usePanScroll.d.ts","sourceRoot":"","sources":["../../src/hooks/usePanScroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,sFAAsF;AACtF,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAMnC,6CAA6C;AAC7C,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,UAAU,CAAC;AAE9D,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,gFAAgF;IAChF,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpC,oFAAoF;IACpF,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,iDAAiD;IACjD,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,0BAA0B;IAC1B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,6DAA6D;IAC7D,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,YAAY,CAAC;IACtB;;;;OAIG;IACH,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC;;;;OAIG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACpC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,GACT,MAAM,GAAG,IAAI,CAMf;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAG3E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,OAAO,EACP,OAAO,EACP,OAAO,EACP,IAAoB,EACpB,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,EAAE,mBAAmB,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CA6ItD"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type SharedValue } from "react-native-reanimated";
|
|
2
2
|
import type { SkFont } from "@shopify/react-native-skia";
|
|
3
3
|
import type { ChartEngineLayout } from "../core/useLiveChartEngine";
|
|
4
|
+
import { type YAxisEntry } from "../draw/grid";
|
|
4
5
|
import type { ChartPadding } from "../draw/line";
|
|
5
6
|
import type { ReferenceLine } from "../types";
|
|
6
7
|
/** Screen-space geometry for one reference line / band, recomputed each frame. */
|
|
@@ -80,5 +81,13 @@ export declare function useReferenceLine(engine: ChartEngineLayout, padding: Cha
|
|
|
80
81
|
* number, the Form-A line tracks that value instead of the static `line.value`,
|
|
81
82
|
* so a drag updates the rendered line/badge on the UI thread. Omit for static lines.
|
|
82
83
|
*/
|
|
83
|
-
dragValues?: SharedValue<number[]>, index?: number
|
|
84
|
+
dragValues?: SharedValue<number[]>, index?: number,
|
|
85
|
+
/** Y-axis labels used to match the right-anchored grid endpoint. */
|
|
86
|
+
yAxisEntries?: SharedValue<YAxisEntry[]>,
|
|
87
|
+
/** Enables clipping when set; matches {@link YAxisConfig.labelRightMargin}. */
|
|
88
|
+
labelRightMargin?: number,
|
|
89
|
+
/** Gap before the label column; matches {@link YAxisConfig.gridEndGap}. */
|
|
90
|
+
gridEndGap?: number,
|
|
91
|
+
/** Font used by the Y-axis labels; badge font overrides must not move the line. */
|
|
92
|
+
yAxisFont?: SkFont): SharedValue<ReferenceLineLayout>;
|
|
84
93
|
//# sourceMappingURL=useReferenceLine.d.ts.map
|
|
@@ -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,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,
|
|
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"}
|
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, AxisLabelConfig, BadgeConfig, BadgeMetrics, BadgeStyleConfig, BadgeVariant, CandleMetrics, CandlePoint, CanvasMode, ChartInsets, ChartOverlayContext, ChartPlotRect, ChartScale, ChartSegment, DegenOptions, DegenShakePayload, EmptyStateMetrics, FontConfig, FontWeight, GradientConfig, GridMetrics, GridStyleConfig, LeftEdgeFadeConfig, LegendConfig, LegendStyle, LineConfig, LiveChartCoreProps, LiveChartMetrics, LiveChartMetricsOverride, LiveChartPalette, LiveChartPoint, LiveChartProps, LiveChartSeriesProps, LoadingConfig, Marker, MarkerClusterConfig, MarkerGroupBadge, MarkerKind, MarkerPressEvent, MarkerRenderContext, MarkerSide, Momentum, MomentumConfig, MotionMetrics, MultiSeriesDotConfig, 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, AxisLabelConfig, BadgeConfig, BadgeMetrics, BadgeStyleConfig, BadgeVariant, CandleMetrics, CandlePoint, CanvasMode, ChartInsets, ChartOverlayContext, ChartPlotRect, ChartScale, ChartSegment, DegenOptions, DegenShakePayload, EmptyStateMetrics, FontConfig, FontWeight, GradientConfig, GridMetrics, GridStyleConfig, LeftEdgeFadeConfig, LegendConfig, LegendStyle, LineConfig, LiveChartCoreProps, 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";
|
|
19
19
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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,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,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,aAAa,EACb,MAAM,EACN,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,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,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,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,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"}
|
package/dist/math/lerp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lerp.d.ts","sourceRoot":"","sources":["../../src/math/lerp.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,IAAI,CAClB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,EAAE,SAAqB,GACtB,MAAM,
|
|
1
|
+
{"version":3,"file":"lerp.d.ts","sourceRoot":"","sources":["../../src/math/lerp.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,IAAI,CAClB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,EAAE,SAAqB,GACtB,MAAM,CAWR"}
|
package/dist/math/momentum.d.ts
CHANGED
|
@@ -4,5 +4,5 @@ import type { LiveChartPoint, Momentum } from "../types";
|
|
|
4
4
|
* Uses the full lookback window for threshold calculation
|
|
5
5
|
* but only the last 5 points for active velocity.
|
|
6
6
|
*/
|
|
7
|
-
export declare function detectMomentum(points: LiveChartPoint[], lookback?: number, threshold?: number): Momentum;
|
|
7
|
+
export declare function detectMomentum(points: LiveChartPoint[], lookback?: number, threshold?: number, endTime?: number): Momentum;
|
|
8
8
|
//# sourceMappingURL=momentum.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"momentum.d.ts","sourceRoot":"","sources":["../../src/math/momentum.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,cAAc,EAAE,EACxB,QAAQ,SAAK,EACb,SAAS,SAAO,GACf,QAAQ,
|
|
1
|
+
{"version":3,"file":"momentum.d.ts","sourceRoot":"","sources":["../../src/math/momentum.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,cAAc,EAAE,EACxB,QAAQ,SAAK,EACb,SAAS,SAAO,EAChB,OAAO,CAAC,EAAE,MAAM,GACf,QAAQ,CA0CV"}
|
|
@@ -12,6 +12,13 @@ export declare function referenceLineForm(rl: ReferenceLine): ReferenceLineForm;
|
|
|
12
12
|
* time bands (Form C) which constrain time, not value.
|
|
13
13
|
*/
|
|
14
14
|
export declare function collectReferenceValues(lines: ReferenceLine[]): number[];
|
|
15
|
+
/**
|
|
16
|
+
* Stable React keys for an ordered reference-line list. A caller-supplied `id`
|
|
17
|
+
* keeps the key stable across reordering; the visual config is a deterministic
|
|
18
|
+
* fallback for legacy lines. Equal fallback signatures receive a suffix so they
|
|
19
|
+
* remain distinct siblings.
|
|
20
|
+
*/
|
|
21
|
+
export declare function referenceLineReactKeys(lines: readonly ReferenceLine[]): string[];
|
|
15
22
|
/**
|
|
16
23
|
* Fully-resolved badge **style/shape** + anchor — the resolved counterpart of
|
|
17
24
|
* {@link BadgeStyleConfig} (`position` / `icon` / `showText` plus the style knobs).
|
|
@@ -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;;;;;;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,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"}
|