@tradecanvas/core 0.1.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/animation/Animator.d.ts +41 -0
- package/dist/animation/Animator.d.ts.map +1 -0
- package/dist/animation/index.d.ts +3 -0
- package/dist/animation/index.d.ts.map +1 -0
- package/dist/axis/GridRenderer.d.ts +8 -0
- package/dist/axis/GridRenderer.d.ts.map +1 -0
- package/dist/axis/PriceAxis.d.ts +5 -0
- package/dist/axis/PriceAxis.d.ts.map +1 -0
- package/dist/axis/TimeAxis.d.ts +5 -0
- package/dist/axis/TimeAxis.d.ts.map +1 -0
- package/dist/axis/index.d.ts +4 -0
- package/dist/axis/index.d.ts.map +1 -0
- package/dist/charts/AreaRenderer.d.ts +6 -0
- package/dist/charts/AreaRenderer.d.ts.map +1 -0
- package/dist/charts/BarRenderer.d.ts +6 -0
- package/dist/charts/BarRenderer.d.ts.map +1 -0
- package/dist/charts/BaselineRenderer.d.ts +14 -0
- package/dist/charts/BaselineRenderer.d.ts.map +1 -0
- package/dist/charts/CandlestickRenderer.d.ts +6 -0
- package/dist/charts/CandlestickRenderer.d.ts.map +1 -0
- package/dist/charts/ChartRenderer.d.ts +5 -0
- package/dist/charts/ChartRenderer.d.ts.map +1 -0
- package/dist/charts/CompareRenderer.d.ts +28 -0
- package/dist/charts/CompareRenderer.d.ts.map +1 -0
- package/dist/charts/HollowCandleRenderer.d.ts +10 -0
- package/dist/charts/HollowCandleRenderer.d.ts.map +1 -0
- package/dist/charts/KagiRenderer.d.ts +10 -0
- package/dist/charts/KagiRenderer.d.ts.map +1 -0
- package/dist/charts/LineRenderer.d.ts +6 -0
- package/dist/charts/LineRenderer.d.ts.map +1 -0
- package/dist/charts/PointAndFigureRenderer.d.ts +12 -0
- package/dist/charts/PointAndFigureRenderer.d.ts.map +1 -0
- package/dist/charts/RenkoRenderer.d.ts +10 -0
- package/dist/charts/RenkoRenderer.d.ts.map +1 -0
- package/dist/charts/VolumeRenderer.d.ts +14 -0
- package/dist/charts/VolumeRenderer.d.ts.map +1 -0
- package/dist/charts/index.d.ts +15 -0
- package/dist/charts/index.d.ts.map +1 -0
- package/dist/charts/transforms/heikinAshi.d.ts +10 -0
- package/dist/charts/transforms/heikinAshi.d.ts.map +1 -0
- package/dist/charts/transforms/index.d.ts +7 -0
- package/dist/charts/transforms/index.d.ts.map +1 -0
- package/dist/charts/transforms/kagi.d.ts +8 -0
- package/dist/charts/transforms/kagi.d.ts.map +1 -0
- package/dist/charts/transforms/lineBreak.d.ts +8 -0
- package/dist/charts/transforms/lineBreak.d.ts.map +1 -0
- package/dist/charts/transforms/pointAndFigure.d.ts +8 -0
- package/dist/charts/transforms/pointAndFigure.d.ts.map +1 -0
- package/dist/charts/transforms/renko.d.ts +13 -0
- package/dist/charts/transforms/renko.d.ts.map +1 -0
- package/dist/drawings/DrawingBase.d.ts +15 -0
- package/dist/drawings/DrawingBase.d.ts.map +1 -0
- package/dist/drawings/DrawingManager.d.ts +65 -0
- package/dist/drawings/DrawingManager.d.ts.map +1 -0
- package/dist/drawings/DrawingRenderer.d.ts +8 -0
- package/dist/drawings/DrawingRenderer.d.ts.map +1 -0
- package/dist/drawings/index.d.ts +5 -0
- package/dist/drawings/index.d.ts.map +1 -0
- package/dist/drawings/tools/AnchoredVWAP.d.ts +24 -0
- package/dist/drawings/tools/AnchoredVWAP.d.ts.map +1 -0
- package/dist/drawings/tools/Arrow.d.ts +12 -0
- package/dist/drawings/tools/Arrow.d.ts.map +1 -0
- package/dist/drawings/tools/DateRange.d.ts +12 -0
- package/dist/drawings/tools/DateRange.d.ts.map +1 -0
- package/dist/drawings/tools/ElliottWave.d.ts +12 -0
- package/dist/drawings/tools/ElliottWave.d.ts.map +1 -0
- package/dist/drawings/tools/Ellipse.d.ts +12 -0
- package/dist/drawings/tools/Ellipse.d.ts.map +1 -0
- package/dist/drawings/tools/ExtendedLine.d.ts +12 -0
- package/dist/drawings/tools/ExtendedLine.d.ts.map +1 -0
- package/dist/drawings/tools/FibExtension.d.ts +12 -0
- package/dist/drawings/tools/FibExtension.d.ts.map +1 -0
- package/dist/drawings/tools/FibRetracement.d.ts +12 -0
- package/dist/drawings/tools/FibRetracement.d.ts.map +1 -0
- package/dist/drawings/tools/GannBox.d.ts +12 -0
- package/dist/drawings/tools/GannBox.d.ts.map +1 -0
- package/dist/drawings/tools/GannFan.d.ts +12 -0
- package/dist/drawings/tools/GannFan.d.ts.map +1 -0
- package/dist/drawings/tools/HorizontalLine.d.ts +12 -0
- package/dist/drawings/tools/HorizontalLine.d.ts.map +1 -0
- package/dist/drawings/tools/Measure.d.ts +12 -0
- package/dist/drawings/tools/Measure.d.ts.map +1 -0
- package/dist/drawings/tools/ParallelChannel.d.ts +12 -0
- package/dist/drawings/tools/ParallelChannel.d.ts.map +1 -0
- package/dist/drawings/tools/Pitchfork.d.ts +12 -0
- package/dist/drawings/tools/Pitchfork.d.ts.map +1 -0
- package/dist/drawings/tools/PriceRange.d.ts +12 -0
- package/dist/drawings/tools/PriceRange.d.ts.map +1 -0
- package/dist/drawings/tools/Ray.d.ts +12 -0
- package/dist/drawings/tools/Ray.d.ts.map +1 -0
- package/dist/drawings/tools/Rectangle.d.ts +12 -0
- package/dist/drawings/tools/Rectangle.d.ts.map +1 -0
- package/dist/drawings/tools/RegressionChannel.d.ts +12 -0
- package/dist/drawings/tools/RegressionChannel.d.ts.map +1 -0
- package/dist/drawings/tools/TextAnnotation.d.ts +12 -0
- package/dist/drawings/tools/TextAnnotation.d.ts.map +1 -0
- package/dist/drawings/tools/TrendLine.d.ts +12 -0
- package/dist/drawings/tools/TrendLine.d.ts.map +1 -0
- package/dist/drawings/tools/Triangle.d.ts +12 -0
- package/dist/drawings/tools/Triangle.d.ts.map +1 -0
- package/dist/drawings/tools/VerticalLine.d.ts +12 -0
- package/dist/drawings/tools/VerticalLine.d.ts.map +1 -0
- package/dist/drawings/tools/VolumeProfileRange.d.ts +20 -0
- package/dist/drawings/tools/VolumeProfileRange.d.ts.map +1 -0
- package/dist/drawings/tools/index.d.ts +26 -0
- package/dist/drawings/tools/index.d.ts.map +1 -0
- package/dist/engine/CanvasLayer.d.ts +12 -0
- package/dist/engine/CanvasLayer.d.ts.map +1 -0
- package/dist/engine/DPRManager.d.ts +18 -0
- package/dist/engine/DPRManager.d.ts.map +1 -0
- package/dist/engine/LayerManager.d.ts +12 -0
- package/dist/engine/LayerManager.d.ts.map +1 -0
- package/dist/engine/RenderEngine.d.ts +84 -0
- package/dist/engine/RenderEngine.d.ts.map +1 -0
- package/dist/engine/RenderLoop.d.ts +16 -0
- package/dist/engine/RenderLoop.d.ts.map +1 -0
- package/dist/engine/index.d.ts +7 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/events/EventBus.d.ts +23 -0
- package/dist/events/EventBus.d.ts.map +1 -0
- package/dist/events/index.d.ts +2 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/features/AlertManager.d.ts +40 -0
- package/dist/features/AlertManager.d.ts.map +1 -0
- package/dist/features/ChartState.d.ts +64 -0
- package/dist/features/ChartState.d.ts.map +1 -0
- package/dist/features/DataExporter.d.ts +7 -0
- package/dist/features/DataExporter.d.ts.map +1 -0
- package/dist/features/ReplayManager.d.ts +44 -0
- package/dist/features/ReplayManager.d.ts.map +1 -0
- package/dist/features/UndoRedoManager.d.ts +28 -0
- package/dist/features/UndoRedoManager.d.ts.map +1 -0
- package/dist/features/index.d.ts +10 -0
- package/dist/features/index.d.ts.map +1 -0
- package/dist/index.cjs +21 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5079 -0
- package/dist/index.js.map +1 -0
- package/dist/indicators/IndicatorBase.d.ts +16 -0
- package/dist/indicators/IndicatorBase.d.ts.map +1 -0
- package/dist/indicators/IndicatorEngine.d.ts +32 -0
- package/dist/indicators/IndicatorEngine.d.ts.map +1 -0
- package/dist/indicators/index.d.ts +30 -0
- package/dist/indicators/index.d.ts.map +1 -0
- package/dist/indicators/overlay/BollingerBands.d.ts +16 -0
- package/dist/indicators/overlay/BollingerBands.d.ts.map +1 -0
- package/dist/indicators/overlay/DonchianChannel.d.ts +15 -0
- package/dist/indicators/overlay/DonchianChannel.d.ts.map +1 -0
- package/dist/indicators/overlay/EMA.d.ts +15 -0
- package/dist/indicators/overlay/EMA.d.ts.map +1 -0
- package/dist/indicators/overlay/Ichimoku.d.ts +18 -0
- package/dist/indicators/overlay/Ichimoku.d.ts.map +1 -0
- package/dist/indicators/overlay/KeltnerChannel.d.ts +17 -0
- package/dist/indicators/overlay/KeltnerChannel.d.ts.map +1 -0
- package/dist/indicators/overlay/ParabolicSAR.d.ts +16 -0
- package/dist/indicators/overlay/ParabolicSAR.d.ts.map +1 -0
- package/dist/indicators/overlay/SMA.d.ts +15 -0
- package/dist/indicators/overlay/SMA.d.ts.map +1 -0
- package/dist/indicators/overlay/Supertrend.d.ts +16 -0
- package/dist/indicators/overlay/Supertrend.d.ts.map +1 -0
- package/dist/indicators/overlay/VWAP.d.ts +13 -0
- package/dist/indicators/overlay/VWAP.d.ts.map +1 -0
- package/dist/indicators/panel/ADX.d.ts +15 -0
- package/dist/indicators/panel/ADX.d.ts.map +1 -0
- package/dist/indicators/panel/ATR.d.ts +15 -0
- package/dist/indicators/panel/ATR.d.ts.map +1 -0
- package/dist/indicators/panel/AccumulationDistribution.d.ts +13 -0
- package/dist/indicators/panel/AccumulationDistribution.d.ts.map +1 -0
- package/dist/indicators/panel/Aroon.d.ts +15 -0
- package/dist/indicators/panel/Aroon.d.ts.map +1 -0
- package/dist/indicators/panel/CCI.d.ts +15 -0
- package/dist/indicators/panel/CCI.d.ts.map +1 -0
- package/dist/indicators/panel/CMF.d.ts +15 -0
- package/dist/indicators/panel/CMF.d.ts.map +1 -0
- package/dist/indicators/panel/MACD.d.ts +17 -0
- package/dist/indicators/panel/MACD.d.ts.map +1 -0
- package/dist/indicators/panel/MFI.d.ts +15 -0
- package/dist/indicators/panel/MFI.d.ts.map +1 -0
- package/dist/indicators/panel/OBV.d.ts +13 -0
- package/dist/indicators/panel/OBV.d.ts.map +1 -0
- package/dist/indicators/panel/ROC.d.ts +15 -0
- package/dist/indicators/panel/ROC.d.ts.map +1 -0
- package/dist/indicators/panel/RSI.d.ts +15 -0
- package/dist/indicators/panel/RSI.d.ts.map +1 -0
- package/dist/indicators/panel/StdDev.d.ts +15 -0
- package/dist/indicators/panel/StdDev.d.ts.map +1 -0
- package/dist/indicators/panel/Stochastic.d.ts +17 -0
- package/dist/indicators/panel/Stochastic.d.ts.map +1 -0
- package/dist/indicators/panel/TSI.d.ts +18 -0
- package/dist/indicators/panel/TSI.d.ts.map +1 -0
- package/dist/indicators/panel/VROC.d.ts +15 -0
- package/dist/indicators/panel/VROC.d.ts.map +1 -0
- package/dist/indicators/panel/VolumeProfile.d.ts +15 -0
- package/dist/indicators/panel/VolumeProfile.d.ts.map +1 -0
- package/dist/indicators/panel/WilliamsR.d.ts +15 -0
- package/dist/indicators/panel/WilliamsR.d.ts.map +1 -0
- package/dist/indicators/registry.d.ts +3 -0
- package/dist/indicators/registry.d.ts.map +1 -0
- package/dist/interaction/CrosshairHandler.d.ts +29 -0
- package/dist/interaction/CrosshairHandler.d.ts.map +1 -0
- package/dist/interaction/CrosshairTooltip.d.ts +32 -0
- package/dist/interaction/CrosshairTooltip.d.ts.map +1 -0
- package/dist/interaction/InteractionManager.d.ts +34 -0
- package/dist/interaction/InteractionManager.d.ts.map +1 -0
- package/dist/interaction/KeyboardHandler.d.ts +20 -0
- package/dist/interaction/KeyboardHandler.d.ts.map +1 -0
- package/dist/interaction/PanHandler.d.ts +22 -0
- package/dist/interaction/PanHandler.d.ts.map +1 -0
- package/dist/interaction/ZoomHandler.d.ts +17 -0
- package/dist/interaction/ZoomHandler.d.ts.map +1 -0
- package/dist/interaction/index.d.ts +8 -0
- package/dist/interaction/index.d.ts.map +1 -0
- package/dist/realtime/CurrentPriceLine.d.ts +18 -0
- package/dist/realtime/CurrentPriceLine.d.ts.map +1 -0
- package/dist/realtime/Emitter.d.ts +13 -0
- package/dist/realtime/Emitter.d.ts.map +1 -0
- package/dist/realtime/ReconnectManager.d.ts +39 -0
- package/dist/realtime/ReconnectManager.d.ts.map +1 -0
- package/dist/realtime/StreamManager.d.ts +76 -0
- package/dist/realtime/StreamManager.d.ts.map +1 -0
- package/dist/realtime/TickAggregator.d.ts +41 -0
- package/dist/realtime/TickAggregator.d.ts.map +1 -0
- package/dist/realtime/adapters/BinanceAdapter.d.ts +39 -0
- package/dist/realtime/adapters/BinanceAdapter.d.ts.map +1 -0
- package/dist/realtime/adapters/MockAdapter.d.ts +44 -0
- package/dist/realtime/adapters/MockAdapter.d.ts.map +1 -0
- package/dist/realtime/adapters/index.d.ts +4 -0
- package/dist/realtime/adapters/index.d.ts.map +1 -0
- package/dist/realtime/index.d.ts +8 -0
- package/dist/realtime/index.d.ts.map +1 -0
- package/dist/trading/DepthOverlay.d.ts +5 -0
- package/dist/trading/DepthOverlay.d.ts.map +1 -0
- package/dist/trading/OrderRenderer.d.ts +17 -0
- package/dist/trading/OrderRenderer.d.ts.map +1 -0
- package/dist/trading/PositionRenderer.d.ts +10 -0
- package/dist/trading/PositionRenderer.d.ts.map +1 -0
- package/dist/trading/TradingContextMenu.d.ts +10 -0
- package/dist/trading/TradingContextMenu.d.ts.map +1 -0
- package/dist/trading/TradingDragHandler.d.ts +21 -0
- package/dist/trading/TradingDragHandler.d.ts.map +1 -0
- package/dist/trading/TradingManager.d.ts +37 -0
- package/dist/trading/TradingManager.d.ts.map +1 -0
- package/dist/trading/TradingRenderer.d.ts +14 -0
- package/dist/trading/TradingRenderer.d.ts.map +1 -0
- package/dist/trading/index.d.ts +8 -0
- package/dist/trading/index.d.ts.map +1 -0
- package/dist/ui/BarCountdown.d.ts +11 -0
- package/dist/ui/BarCountdown.d.ts.map +1 -0
- package/dist/ui/ChartLegend.d.ts +35 -0
- package/dist/ui/ChartLegend.d.ts.map +1 -0
- package/dist/ui/Screenshot.d.ts +18 -0
- package/dist/ui/Screenshot.d.ts.map +1 -0
- package/dist/ui/SessionBreaks.d.ts +39 -0
- package/dist/ui/SessionBreaks.d.ts.map +1 -0
- package/dist/ui/Watermark.d.ts +11 -0
- package/dist/ui/Watermark.d.ts.map +1 -0
- package/dist/ui/index.d.ts +8 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/viewport/DataWindow.d.ts +3 -0
- package/dist/viewport/DataWindow.d.ts.map +1 -0
- package/dist/viewport/ScaleMapping.d.ts +14 -0
- package/dist/viewport/ScaleMapping.d.ts.map +1 -0
- package/dist/viewport/Viewport.d.ts +26 -0
- package/dist/viewport/Viewport.d.ts.map +1 -0
- package/dist/viewport/index.d.ts +4 -0
- package/dist/viewport/index.d.ts.map +1 -0
- package/package.json +37 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Easing functions for smooth animations.
|
|
3
|
+
*/
|
|
4
|
+
export declare const Easing: {
|
|
5
|
+
linear: (t: number) => number;
|
|
6
|
+
easeOutCubic: (t: number) => number;
|
|
7
|
+
easeOutQuart: (t: number) => number;
|
|
8
|
+
easeInOutCubic: (t: number) => number;
|
|
9
|
+
easeOutExpo: (t: number) => number;
|
|
10
|
+
easeOutElastic: (t: number) => number;
|
|
11
|
+
spring: (t: number) => number;
|
|
12
|
+
};
|
|
13
|
+
export type EasingFn = (t: number) => number;
|
|
14
|
+
export interface AnimationOptions {
|
|
15
|
+
duration: number;
|
|
16
|
+
easing?: EasingFn;
|
|
17
|
+
onUpdate: (progress: number) => void;
|
|
18
|
+
onComplete?: () => void;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Lightweight animation scheduler.
|
|
22
|
+
* Runs multiple concurrent animations on the rAF loop.
|
|
23
|
+
*/
|
|
24
|
+
export declare class Animator {
|
|
25
|
+
private animations;
|
|
26
|
+
private frameId;
|
|
27
|
+
private running;
|
|
28
|
+
/**
|
|
29
|
+
* Start a named animation. If one with the same name is running, it's replaced.
|
|
30
|
+
*/
|
|
31
|
+
animate(name: string, opts: AnimationOptions): void;
|
|
32
|
+
/** Cancel a specific animation */
|
|
33
|
+
cancel(name: string): void;
|
|
34
|
+
/** Cancel all animations */
|
|
35
|
+
cancelAll(): void;
|
|
36
|
+
isAnimating(name?: string): boolean;
|
|
37
|
+
private tick;
|
|
38
|
+
private stop;
|
|
39
|
+
dispose(): void;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=Animator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Animator.d.ts","sourceRoot":"","sources":["../../src/animation/Animator.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,MAAM;gBACL,MAAM;sBACA,MAAM;sBACN,MAAM;wBACJ,MAAM;qBACT,MAAM;wBACH,MAAM;gBAId,MAAM;CACnB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAenD,kCAAkC;IAClC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK1B,4BAA4B;IAC5B,SAAS,IAAI,IAAI;IAKjB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAKnC,OAAO,CAAC,IAAI;IA6BZ,OAAO,CAAC,IAAI;IAQZ,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/animation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
export declare class GridRenderer {
|
|
3
|
+
private visible;
|
|
4
|
+
setVisible(v: boolean): void;
|
|
5
|
+
isVisible(): boolean;
|
|
6
|
+
render(ctx: CanvasRenderingContext2D, viewport: ViewportState, theme: Theme): void;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=GridRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridRenderer.d.ts","sourceRoot":"","sources":["../../src/axis/GridRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGjE,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAQ;IAEvB,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAC5B,SAAS,IAAI,OAAO;IAEpB,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CAoCnF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PriceAxis.d.ts","sourceRoot":"","sources":["../../src/axis/PriceAxis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGjE,qBAAa,SAAS;IACpB,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CA4CnF"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ViewportState, Theme, DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
export declare class TimeAxis {
|
|
3
|
+
render(ctx: CanvasRenderingContext2D, viewport: ViewportState, theme: Theme, data: DataSeries, axisYOverride?: number): void;
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=TimeAxis.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimeAxis.d.ts","sourceRoot":"","sources":["../../src/axis/TimeAxis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAW7E,qBAAa,QAAQ;IACnB,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;CA8D7H"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/axis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
export declare class AreaRenderer implements ChartRendererInterface {
|
|
4
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=AreaRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AreaRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/AreaRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,qBAAa,YAAa,YAAW,sBAAsB;IACzD,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CAkDrG"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
export declare class BarRenderer implements ChartRendererInterface {
|
|
4
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=BarRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BarRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/BarRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,qBAAa,WAAY,YAAW,sBAAsB;IACxD,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CAgDrG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Baseline chart: line chart split at a baseline price.
|
|
5
|
+
* Above baseline = green (bullish), below = red (bearish).
|
|
6
|
+
* Fill with gradient on each side.
|
|
7
|
+
*/
|
|
8
|
+
export declare class BaselineRenderer implements ChartRendererInterface {
|
|
9
|
+
private baselinePrice;
|
|
10
|
+
setBaseline(price: number): void;
|
|
11
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
12
|
+
private computeBaseline;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=BaselineRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaselineRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/BaselineRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,sBAAsB;IAC7D,OAAO,CAAC,aAAa,CAAuB;IAE5C,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAyFpG,OAAO,CAAC,eAAe;CASxB"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
export declare class CandlestickRenderer implements ChartRendererInterface {
|
|
4
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=CandlestickRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CandlestickRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/CandlestickRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,qBAAa,mBAAoB,YAAW,sBAAsB;IAChE,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CA+DrG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/ChartRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7E,MAAM,WAAW,sBAAsB;IACrC,MAAM,CACJ,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,KAAK,GACX,IAAI,CAAC;CACT"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
export interface CompareSymbol {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
data: DataSeries;
|
|
6
|
+
color: string;
|
|
7
|
+
lineWidth?: number;
|
|
8
|
+
visible: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Renders comparison overlays on the main chart.
|
|
12
|
+
* Each compare symbol is normalized to percentage change from the first visible bar,
|
|
13
|
+
* then mapped onto the main chart's price axis.
|
|
14
|
+
*/
|
|
15
|
+
export declare class CompareRenderer {
|
|
16
|
+
private symbols;
|
|
17
|
+
private mode;
|
|
18
|
+
setMode(mode: 'percent' | 'absolute'): void;
|
|
19
|
+
addSymbol(symbol: CompareSymbol): void;
|
|
20
|
+
removeSymbol(id: string): void;
|
|
21
|
+
setSymbolData(id: string, data: DataSeries): void;
|
|
22
|
+
setSymbolVisible(id: string, visible: boolean): void;
|
|
23
|
+
getSymbols(): CompareSymbol[];
|
|
24
|
+
clear(): void;
|
|
25
|
+
render(ctx: CanvasRenderingContext2D, mainData: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
26
|
+
private renderSymbol;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=CompareRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompareRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/CompareRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAG7E,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,IAAI,CAAqC;IAEjD,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI;IAI3C,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAItC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI9B,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAKjD,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAKpD,UAAU,IAAI,aAAa,EAAE;IAI7B,KAAK,IAAI,IAAI;IAIb,MAAM,CACJ,GAAG,EAAE,wBAAwB,EAC7B,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,KAAK,GACX,IAAI;IAkBP,OAAO,CAAC,YAAY;CAuErB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Hollow Candle: filled body when close < open (bearish), hollow when close >= open (bullish).
|
|
5
|
+
* Color based on close vs previous close (not open).
|
|
6
|
+
*/
|
|
7
|
+
export declare class HollowCandleRenderer implements ChartRendererInterface {
|
|
8
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=HollowCandleRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HollowCandleRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/HollowCandleRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,sBAAsB;IACjE,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CA6ErG"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Renders Kagi lines. Data should already be transformed via toKagi().
|
|
5
|
+
* Thick lines (yang) for up, thin lines (yin) for down.
|
|
6
|
+
*/
|
|
7
|
+
export declare class KagiRenderer implements ChartRendererInterface {
|
|
8
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=KagiRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KagiRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/KagiRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;GAGG;AACH,qBAAa,YAAa,YAAW,sBAAsB;IACzD,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CAoDrG"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
export declare class LineRenderer implements ChartRendererInterface {
|
|
4
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=LineRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LineRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/LineRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,qBAAa,YAAa,YAAW,sBAAsB;IACzD,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CA2BrG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Renders Point & Figure chart. Data should be transformed via toPointAndFigure().
|
|
5
|
+
* X for up columns, O for down columns.
|
|
6
|
+
*/
|
|
7
|
+
export declare class PointAndFigureRenderer implements ChartRendererInterface {
|
|
8
|
+
private boxSize;
|
|
9
|
+
setBoxSize(size: number): void;
|
|
10
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=PointAndFigureRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PointAndFigureRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/PointAndFigureRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;GAGG;AACH,qBAAa,sBAAuB,YAAW,sBAAsB;IACnE,OAAO,CAAC,OAAO,CAAK;IAEpB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CA4DrG"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
import { ChartRendererInterface } from './ChartRenderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Renders Renko bricks. Data should already be transformed via toRenko().
|
|
5
|
+
* Each brick is a solid colored rectangle (no wicks).
|
|
6
|
+
*/
|
|
7
|
+
export declare class RenkoRenderer implements ChartRendererInterface {
|
|
8
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=RenkoRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RenkoRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/RenkoRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;GAGG;AACH,qBAAa,aAAc,YAAW,sBAAsB;IAC1D,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CAqDrG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DataSeries, ViewportState, Theme } from '@tradecanvas/commons';
|
|
2
|
+
/**
|
|
3
|
+
* Renders volume histogram bars at the bottom of the main chart area.
|
|
4
|
+
* Semi-transparent, colored by candle direction.
|
|
5
|
+
* Height proportional to volume, occupying bottom 15-25% of chart.
|
|
6
|
+
*/
|
|
7
|
+
export declare class VolumeRenderer {
|
|
8
|
+
private visible;
|
|
9
|
+
private heightRatio;
|
|
10
|
+
setVisible(v: boolean): void;
|
|
11
|
+
setHeightRatio(r: number): void;
|
|
12
|
+
render(ctx: CanvasRenderingContext2D, data: DataSeries, viewport: ViewportState, theme: Theme): void;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=VolumeRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VolumeRenderer.d.ts","sourceRoot":"","sources":["../../src/charts/VolumeRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7E;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,WAAW,CAAO;IAE1B,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAC5B,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAE/B,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;CA0CrG"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type { ChartRendererInterface } from './ChartRenderer.js';
|
|
2
|
+
export { CandlestickRenderer } from './CandlestickRenderer.js';
|
|
3
|
+
export { LineRenderer } from './LineRenderer.js';
|
|
4
|
+
export { AreaRenderer } from './AreaRenderer.js';
|
|
5
|
+
export { BarRenderer } from './BarRenderer.js';
|
|
6
|
+
export { HollowCandleRenderer } from './HollowCandleRenderer.js';
|
|
7
|
+
export { BaselineRenderer } from './BaselineRenderer.js';
|
|
8
|
+
export { RenkoRenderer } from './RenkoRenderer.js';
|
|
9
|
+
export { KagiRenderer } from './KagiRenderer.js';
|
|
10
|
+
export { PointAndFigureRenderer } from './PointAndFigureRenderer.js';
|
|
11
|
+
export { VolumeRenderer } from './VolumeRenderer.js';
|
|
12
|
+
export { CompareRenderer } from './CompareRenderer.js';
|
|
13
|
+
export type { CompareSymbol } from './CompareRenderer.js';
|
|
14
|
+
export * from './transforms/index.js';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/charts/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
/**
|
|
3
|
+
* Transform OHLC data to Heikin Ashi.
|
|
4
|
+
* HA Close = (O+H+L+C) / 4
|
|
5
|
+
* HA Open = (prev HA Open + prev HA Close) / 2
|
|
6
|
+
* HA High = max(H, HA Open, HA Close)
|
|
7
|
+
* HA Low = min(L, HA Open, HA Close)
|
|
8
|
+
*/
|
|
9
|
+
export declare function toHeikinAshi(data: DataSeries): DataSeries;
|
|
10
|
+
//# sourceMappingURL=heikinAshi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heikinAshi.d.ts","sourceRoot":"","sources":["../../../src/charts/transforms/heikinAshi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEhE;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CA4BzD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { toHeikinAshi } from './heikinAshi.js';
|
|
2
|
+
export { toRenko } from './renko.js';
|
|
3
|
+
export type { RenkoConfig } from './renko.js';
|
|
4
|
+
export { toLineBreak } from './lineBreak.js';
|
|
5
|
+
export { toKagi } from './kagi.js';
|
|
6
|
+
export { toPointAndFigure } from './pointAndFigure.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/charts/transforms/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
/**
|
|
3
|
+
* Kagi chart.
|
|
4
|
+
* Changes direction when price reverses by the reversal amount.
|
|
5
|
+
* Thick lines (yang) for uptrends, thin lines (yin) for downtrends.
|
|
6
|
+
*/
|
|
7
|
+
export declare function toKagi(data: DataSeries, reversalPercent?: number): DataSeries;
|
|
8
|
+
//# sourceMappingURL=kagi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kagi.d.ts","sourceRoot":"","sources":["../../../src/charts/transforms/kagi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,eAAe,SAAI,GAAG,UAAU,CA2DxE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
/**
|
|
3
|
+
* Three Line Break chart.
|
|
4
|
+
* A new line is drawn only when the closing price exceeds the high or low
|
|
5
|
+
* of the prior N lines (default: 3).
|
|
6
|
+
*/
|
|
7
|
+
export declare function toLineBreak(data: DataSeries, lineCount?: number): DataSeries;
|
|
8
|
+
//# sourceMappingURL=lineBreak.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lineBreak.d.ts","sourceRoot":"","sources":["../../../src/charts/transforms/lineBreak.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,SAAI,GAAG,UAAU,CA0EvE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
/**
|
|
3
|
+
* Point & Figure chart.
|
|
4
|
+
* X columns for rising prices, O columns for falling prices.
|
|
5
|
+
* Reversal requires N boxes (default: 3) in the opposite direction.
|
|
6
|
+
*/
|
|
7
|
+
export declare function toPointAndFigure(data: DataSeries, boxSize: number, reversalBoxes?: number): DataSeries;
|
|
8
|
+
//# sourceMappingURL=pointAndFigure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pointAndFigure.d.ts","sourceRoot":"","sources":["../../../src/charts/transforms/pointAndFigure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,SAAI,GAAG,UAAU,CAmEjG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
export interface RenkoConfig {
|
|
3
|
+
brickSize: number;
|
|
4
|
+
useATR?: boolean;
|
|
5
|
+
atrPeriod?: number;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Transform OHLC data to Renko bricks.
|
|
9
|
+
* Each brick represents a fixed price movement.
|
|
10
|
+
* No time axis — bricks form only when price moves by brickSize.
|
|
11
|
+
*/
|
|
12
|
+
export declare function toRenko(data: DataSeries, config: RenkoConfig): DataSeries;
|
|
13
|
+
//# sourceMappingURL=renko.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renko.d.ts","sourceRoot":"","sources":["../../../src/charts/transforms/renko.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEhE,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,GAAG,UAAU,CAoCzE"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DrawingPlugin, DrawingDescriptor, DrawingState, DrawingStyle, Point, ViewportState, AnchorPoint } from '@tradecanvas/commons';
|
|
2
|
+
export declare abstract class DrawingBase implements DrawingPlugin {
|
|
3
|
+
abstract descriptor: DrawingDescriptor;
|
|
4
|
+
abstract render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
5
|
+
abstract hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|
|
6
|
+
hitTestAnchor(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): number;
|
|
7
|
+
protected anchorToPixel(anchor: AnchorPoint, viewport: ViewportState): Point;
|
|
8
|
+
protected pixelToAnchor(point: Point, viewport: ViewportState): AnchorPoint;
|
|
9
|
+
protected applyLineStyle(ctx: CanvasRenderingContext2D, style: DrawingStyle): void;
|
|
10
|
+
protected resetLineStyle(ctx: CanvasRenderingContext2D): void;
|
|
11
|
+
protected renderAnchorHandles(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState): void;
|
|
12
|
+
protected distanceToLine(point: Point, p1: Point, p2: Point): number;
|
|
13
|
+
protected distanceToInfiniteLine(point: Point, p1: Point, p2: Point): number;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=DrawingBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawingBase.d.ts","sourceRoot":"","sources":["../../src/drawings/DrawingBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,aAAa,EACb,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAG9B,8BAAsB,WAAY,YAAW,aAAa;IACxD,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IAEvC,QAAQ,CAAC,MAAM,CACb,GAAG,EAAE,wBAAwB,EAC7B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,OAAO,GAChB,IAAI;IAEP,QAAQ,CAAC,OAAO,CACd,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,MAAM,GAChB,OAAO;IAEV,aAAa,CACX,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,MAAM,GAChB,MAAM;IAST,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,GAAG,KAAK;IAM5E,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW;IAM3E,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI;IAUlF,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAI7D,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI;IAYhH,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM;IAYpE,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM;CAO7E"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { DrawingPlugin, DrawingState, DrawingToolType, DrawingStyle, Point, ViewportState, OHLCBar } from '@tradecanvas/commons';
|
|
2
|
+
import { UndoRedoManager } from '../features/UndoRedoManager.js';
|
|
3
|
+
type DrawingEventCallback = (event: string, data: unknown) => void;
|
|
4
|
+
export type DrawingInteractionState = 'idle' | 'creating' | 'selected' | 'moving' | 'resizing';
|
|
5
|
+
export type MagnetMode = 'none' | 'magnet';
|
|
6
|
+
export declare class DrawingManager {
|
|
7
|
+
private registry;
|
|
8
|
+
private drawings;
|
|
9
|
+
private state;
|
|
10
|
+
private activeTool;
|
|
11
|
+
private activeStyle;
|
|
12
|
+
private creatingDrawing;
|
|
13
|
+
private committedAnchors;
|
|
14
|
+
private previewAnchor;
|
|
15
|
+
private selectedDrawingId;
|
|
16
|
+
private dragAnchorIndex;
|
|
17
|
+
private dragStartPoint;
|
|
18
|
+
private dragStartAnchors;
|
|
19
|
+
private dragBeforeState;
|
|
20
|
+
private eventCallback;
|
|
21
|
+
private requestRender;
|
|
22
|
+
private undoRedo;
|
|
23
|
+
private magnetMode;
|
|
24
|
+
private dataGetter;
|
|
25
|
+
private displayDataGetter;
|
|
26
|
+
register(plugin: DrawingPlugin): void;
|
|
27
|
+
setEventCallback(cb: DrawingEventCallback): void;
|
|
28
|
+
setRequestRender(cb: () => void): void;
|
|
29
|
+
setUndoRedoManager(mgr: UndoRedoManager): void;
|
|
30
|
+
setMagnetMode(mode: MagnetMode): void;
|
|
31
|
+
getMagnetMode(): MagnetMode;
|
|
32
|
+
setDataGetter(getter: () => OHLCBar[]): void;
|
|
33
|
+
/** Set a separate getter for display data (e.g. Heikin Ashi transformed). Used by magnet snap. */
|
|
34
|
+
setDisplayDataGetter(getter: () => OHLCBar[]): void;
|
|
35
|
+
private snapToOHLC;
|
|
36
|
+
undo(): boolean;
|
|
37
|
+
redo(): boolean;
|
|
38
|
+
private applyUndoAction;
|
|
39
|
+
private applyRedoAction;
|
|
40
|
+
lockAllDrawings(): void;
|
|
41
|
+
unlockAllDrawings(): void;
|
|
42
|
+
hideAllDrawings(): void;
|
|
43
|
+
showAllDrawings(): void;
|
|
44
|
+
setActiveTool(type: DrawingToolType | null): void;
|
|
45
|
+
getActiveTool(): DrawingToolType | null;
|
|
46
|
+
setStyle(style: Partial<DrawingStyle>): void;
|
|
47
|
+
onPointerDown(pos: Point, viewport: ViewportState): boolean;
|
|
48
|
+
onPointerMove(pos: Point, viewport: ViewportState): boolean;
|
|
49
|
+
onPointerUp(): boolean;
|
|
50
|
+
onKeyDown(key: string, ctrlKey?: boolean): boolean;
|
|
51
|
+
getDrawings(): DrawingState[];
|
|
52
|
+
setDrawings(states: DrawingState[]): void;
|
|
53
|
+
removeDrawing(id: string): void;
|
|
54
|
+
duplicateDrawing(id: string): string | null;
|
|
55
|
+
clearDrawings(): void;
|
|
56
|
+
getSelectedDrawingId(): string | null;
|
|
57
|
+
render(ctx: CanvasRenderingContext2D, viewport: ViewportState): void;
|
|
58
|
+
private handleCreationClick;
|
|
59
|
+
private finalizeCreation;
|
|
60
|
+
private handleSelectionClick;
|
|
61
|
+
private handleMove;
|
|
62
|
+
private handleResize;
|
|
63
|
+
}
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=DrawingManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawingManager.d.ts","sourceRoot":"","sources":["../../src/drawings/DrawingManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ViewportState } from '@tradecanvas/commons';
|
|
2
|
+
import { DrawingManager } from './DrawingManager.js';
|
|
3
|
+
export declare class DrawingRenderer {
|
|
4
|
+
private manager;
|
|
5
|
+
constructor(manager: DrawingManager);
|
|
6
|
+
render(ctx: CanvasRenderingContext2D, viewport: ViewportState): void;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=DrawingRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawingRenderer.d.ts","sourceRoot":"","sources":["../../src/drawings/DrawingRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,qBAAa,eAAe;IACd,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,cAAc;IAE3C,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI;CAGrE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/drawings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { DrawingState, Point, ViewportState, DataSeries } from '@tradecanvas/commons';
|
|
2
|
+
import { DrawingBase } from '../DrawingBase.js';
|
|
3
|
+
/**
|
|
4
|
+
* Anchored VWAP drawing tool.
|
|
5
|
+
* One anchor sets the start bar. The VWAP line is computed from that bar
|
|
6
|
+
* to the end of visible data using cumulative (price * volume) / volume.
|
|
7
|
+
* Optionally renders +/-1 and +/-2 standard deviation bands.
|
|
8
|
+
*/
|
|
9
|
+
export declare class AnchoredVWAPTool extends DrawingBase {
|
|
10
|
+
descriptor: {
|
|
11
|
+
type: "anchoredVWAP";
|
|
12
|
+
name: string;
|
|
13
|
+
requiredAnchors: number;
|
|
14
|
+
};
|
|
15
|
+
private dataGetter;
|
|
16
|
+
private showBands;
|
|
17
|
+
setDataGetter(getter: () => DataSeries): void;
|
|
18
|
+
setShowBands(show: boolean): void;
|
|
19
|
+
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
20
|
+
private drawLine;
|
|
21
|
+
private computeVWAP;
|
|
22
|
+
hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=AnchoredVWAP.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnchoredVWAP.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/AnchoredVWAP.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,UAAU;;;;MAAgF;IAE1F,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,SAAS,CAAQ;IAEzB,aAAa,CAAC,MAAM,EAAE,MAAM,UAAU,GAAG,IAAI;IAI7C,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAIjC,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAuD5G,OAAO,CAAC,QAAQ;IAyBhB,OAAO,CAAC,WAAW;IA2CnB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAqBhG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DrawingState, Point, ViewportState } from '@tradecanvas/commons';
|
|
2
|
+
import { DrawingBase } from '../DrawingBase.js';
|
|
3
|
+
export declare class ArrowTool extends DrawingBase {
|
|
4
|
+
descriptor: {
|
|
5
|
+
type: "arrow";
|
|
6
|
+
name: string;
|
|
7
|
+
requiredAnchors: number;
|
|
8
|
+
};
|
|
9
|
+
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
10
|
+
hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Arrow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Arrow.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/Arrow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,qBAAa,SAAU,SAAQ,WAAW;IACxC,UAAU;;;;MAAiE;IAE3E,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IA0B5G,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAMhG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DrawingState, Point, ViewportState } from '@tradecanvas/commons';
|
|
2
|
+
import { DrawingBase } from '../DrawingBase.js';
|
|
3
|
+
export declare class DateRangeTool extends DrawingBase {
|
|
4
|
+
descriptor: {
|
|
5
|
+
type: "dateRange";
|
|
6
|
+
name: string;
|
|
7
|
+
requiredAnchors: number;
|
|
8
|
+
};
|
|
9
|
+
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
10
|
+
hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=DateRange.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DateRange.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/DateRange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,qBAAa,aAAc,SAAQ,WAAW;IAC5C,UAAU;;;;MAA0E;IAEpF,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAgC5G,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAShG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DrawingState, Point, ViewportState } from '@tradecanvas/commons';
|
|
2
|
+
import { DrawingBase } from '../DrawingBase.js';
|
|
3
|
+
export declare class ElliottWaveTool extends DrawingBase {
|
|
4
|
+
descriptor: {
|
|
5
|
+
type: "elliottWave";
|
|
6
|
+
name: string;
|
|
7
|
+
requiredAnchors: number;
|
|
8
|
+
};
|
|
9
|
+
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
10
|
+
hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=ElliottWave.d.ts.map
|