@tradecanvas/core 1.3.0 → 1.7.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/axis/GridRenderer.d.ts.map +1 -1
- package/dist/axis/PriceAxis.d.ts +10 -1
- package/dist/axis/PriceAxis.d.ts.map +1 -1
- package/dist/axis/TimeAxis.d.ts +9 -4
- package/dist/axis/TimeAxis.d.ts.map +1 -1
- package/dist/charts/AreaRenderer.d.ts.map +1 -1
- package/dist/charts/BarRenderer.d.ts.map +1 -1
- package/dist/charts/BaselineRenderer.d.ts.map +1 -1
- package/dist/charts/CandlestickRenderer.d.ts.map +1 -1
- package/dist/charts/CompareRenderer.d.ts +21 -4
- package/dist/charts/CompareRenderer.d.ts.map +1 -1
- package/dist/charts/EquivolumeRenderer.d.ts.map +1 -1
- package/dist/charts/HLCAreaRenderer.d.ts.map +1 -1
- package/dist/charts/HiLoRenderer.d.ts +14 -0
- package/dist/charts/HiLoRenderer.d.ts.map +1 -0
- package/dist/charts/HollowCandleRenderer.d.ts.map +1 -1
- package/dist/charts/KagiRenderer.d.ts.map +1 -1
- package/dist/charts/LineRenderer.d.ts.map +1 -1
- package/dist/charts/LineWithMarkersRenderer.d.ts.map +1 -1
- package/dist/charts/MarketProfileRenderer.d.ts.map +1 -1
- package/dist/charts/PeriodLevelsRenderer.d.ts.map +1 -1
- package/dist/charts/PivotMarkersRenderer.d.ts.map +1 -1
- package/dist/charts/PointAndFigureRenderer.d.ts.map +1 -1
- package/dist/charts/RenkoRenderer.d.ts.map +1 -1
- package/dist/charts/StepLineRenderer.d.ts.map +1 -1
- package/dist/charts/VolumeCandleRenderer.d.ts.map +1 -1
- package/dist/charts/VolumeProfileRenderer.d.ts.map +1 -1
- package/dist/charts/VolumeRenderer.d.ts.map +1 -1
- package/dist/charts/denseBars.d.ts +28 -0
- package/dist/charts/denseBars.d.ts.map +1 -0
- package/dist/charts/index.d.ts +3 -0
- package/dist/charts/index.d.ts.map +1 -1
- package/dist/charts/transforms/kagi.d.ts +3 -2
- package/dist/charts/transforms/kagi.d.ts.map +1 -1
- package/dist/charts/transforms/renko.d.ts.map +1 -1
- package/dist/drawings/DrawingBase.d.ts +30 -1
- package/dist/drawings/DrawingBase.d.ts.map +1 -1
- package/dist/drawings/DrawingCreator.d.ts +51 -0
- package/dist/drawings/DrawingCreator.d.ts.map +1 -0
- package/dist/drawings/DrawingDrag.d.ts +36 -0
- package/dist/drawings/DrawingDrag.d.ts.map +1 -0
- package/dist/drawings/DrawingManager.d.ts +176 -32
- package/dist/drawings/DrawingManager.d.ts.map +1 -1
- package/dist/drawings/DrawingSelection.d.ts +28 -0
- package/dist/drawings/DrawingSelection.d.ts.map +1 -0
- package/dist/drawings/drawingHistory.d.ts +12 -0
- package/dist/drawings/drawingHistory.d.ts.map +1 -0
- package/dist/drawings/drawingShortcuts.d.ts +11 -0
- package/dist/drawings/drawingShortcuts.d.ts.map +1 -0
- package/dist/drawings/drawingState.d.ts +29 -0
- package/dist/drawings/drawingState.d.ts.map +1 -0
- package/dist/drawings/index.d.ts +2 -1
- package/dist/drawings/index.d.ts.map +1 -1
- package/dist/drawings/magnetSnap.d.ts +12 -0
- package/dist/drawings/magnetSnap.d.ts.map +1 -0
- package/dist/drawings/tools/AnchoredVWAP.d.ts.map +1 -1
- package/dist/drawings/tools/Circle.d.ts +1 -0
- package/dist/drawings/tools/Circle.d.ts.map +1 -1
- package/dist/drawings/tools/ElliottWave.d.ts +128 -3
- package/dist/drawings/tools/ElliottWave.d.ts.map +1 -1
- package/dist/drawings/tools/Ellipse.d.ts +1 -0
- package/dist/drawings/tools/Ellipse.d.ts.map +1 -1
- package/dist/drawings/tools/ExtendedLine.d.ts +1 -0
- package/dist/drawings/tools/ExtendedLine.d.ts.map +1 -1
- package/dist/drawings/tools/FibChannel.d.ts +7 -0
- package/dist/drawings/tools/FibChannel.d.ts.map +1 -1
- package/dist/drawings/tools/FibExtension.d.ts +20 -0
- package/dist/drawings/tools/FibExtension.d.ts.map +1 -1
- package/dist/drawings/tools/FibRetracement.d.ts +28 -0
- package/dist/drawings/tools/FibRetracement.d.ts.map +1 -1
- package/dist/drawings/tools/FibSpeedResistanceFan.d.ts +9 -1
- package/dist/drawings/tools/FibSpeedResistanceFan.d.ts.map +1 -1
- package/dist/drawings/tools/FibTimeZones.d.ts +16 -0
- package/dist/drawings/tools/FibTimeZones.d.ts.map +1 -1
- package/dist/drawings/tools/HorizontalLine.d.ts +1 -0
- package/dist/drawings/tools/HorizontalLine.d.ts.map +1 -1
- package/dist/drawings/tools/HorizontalRay.d.ts +1 -0
- package/dist/drawings/tools/HorizontalRay.d.ts.map +1 -1
- package/dist/drawings/tools/Measure.d.ts.map +1 -1
- package/dist/drawings/tools/ParallelChannel.d.ts +12 -0
- package/dist/drawings/tools/ParallelChannel.d.ts.map +1 -1
- package/dist/drawings/tools/PriceLabel.d.ts +1 -0
- package/dist/drawings/tools/PriceLabel.d.ts.map +1 -1
- package/dist/drawings/tools/PriceRange.d.ts.map +1 -1
- package/dist/drawings/tools/Ray.d.ts +1 -0
- package/dist/drawings/tools/Ray.d.ts.map +1 -1
- package/dist/drawings/tools/Rectangle.d.ts +1 -0
- package/dist/drawings/tools/Rectangle.d.ts.map +1 -1
- package/dist/drawings/tools/RegressionChannel.d.ts +1 -0
- package/dist/drawings/tools/RegressionChannel.d.ts.map +1 -1
- package/dist/drawings/tools/RiskReward.d.ts +59 -6
- package/dist/drawings/tools/RiskReward.d.ts.map +1 -1
- package/dist/drawings/tools/TextAnnotation.d.ts +1 -0
- package/dist/drawings/tools/TextAnnotation.d.ts.map +1 -1
- package/dist/drawings/tools/TrendLine.d.ts +3 -0
- package/dist/drawings/tools/TrendLine.d.ts.map +1 -1
- package/dist/drawings/tools/Triangle.d.ts +1 -0
- package/dist/drawings/tools/Triangle.d.ts.map +1 -1
- package/dist/drawings/tools/VolumeProfileRange.d.ts +1 -0
- package/dist/drawings/tools/VolumeProfileRange.d.ts.map +1 -1
- package/dist/drawings/tools/annotations.d.ts +113 -0
- package/dist/drawings/tools/annotations.d.ts.map +1 -0
- package/dist/drawings/tools/cycles.d.ts +37 -0
- package/dist/drawings/tools/cycles.d.ts.map +1 -0
- package/dist/drawings/tools/fibGeometry.d.ts +202 -0
- package/dist/drawings/tools/fibGeometry.d.ts.map +1 -0
- package/dist/drawings/tools/forecast.d.ts +85 -0
- package/dist/drawings/tools/forecast.d.ts.map +1 -0
- package/dist/drawings/tools/freehand.d.ts +81 -0
- package/dist/drawings/tools/freehand.d.ts.map +1 -0
- package/dist/drawings/tools/index.d.ts +7 -0
- package/dist/drawings/tools/index.d.ts.map +1 -1
- package/dist/drawings/tools/labels.d.ts +6 -3
- package/dist/drawings/tools/labels.d.ts.map +1 -1
- package/dist/drawings/tools/options.d.ts +8 -0
- package/dist/drawings/tools/options.d.ts.map +1 -0
- package/dist/drawings/tools/patterns.d.ts +32 -0
- package/dist/drawings/tools/patterns.d.ts.map +1 -1
- package/dist/drawings/tools/priceLevels.d.ts +29 -0
- package/dist/drawings/tools/priceLevels.d.ts.map +1 -0
- package/dist/drawings/tools/textBox.d.ts +39 -0
- package/dist/drawings/tools/textBox.d.ts.map +1 -0
- package/dist/engine/RenderEngine.d.ts +25 -0
- package/dist/engine/RenderEngine.d.ts.map +1 -1
- package/dist/events/EventBus.d.ts +2 -0
- package/dist/events/EventBus.d.ts.map +1 -1
- package/dist/features/AlertManager.d.ts +117 -6
- package/dist/features/AlertManager.d.ts.map +1 -1
- package/dist/features/ChartState.d.ts +36 -12
- package/dist/features/ChartState.d.ts.map +1 -1
- package/dist/features/DataExporter.d.ts +7 -2
- package/dist/features/DataExporter.d.ts.map +1 -1
- package/dist/features/ReplayManager.d.ts +23 -1
- package/dist/features/ReplayManager.d.ts.map +1 -1
- package/dist/features/SignalMarkerManager.d.ts +8 -0
- package/dist/features/SignalMarkerManager.d.ts.map +1 -1
- package/dist/features/TradeZoneManager.d.ts.map +1 -1
- package/dist/features/UndoRedoManager.d.ts +30 -1
- package/dist/features/UndoRedoManager.d.ts.map +1 -1
- package/dist/features/index.d.ts +5 -2
- package/dist/features/index.d.ts.map +1 -1
- package/dist/index.cjs +11 -9
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +10730 -5082
- package/dist/index.js.map +1 -1
- package/dist/indicators/IndicatorBase.d.ts +5 -1
- package/dist/indicators/IndicatorBase.d.ts.map +1 -1
- package/dist/indicators/IndicatorEngine.d.ts +123 -11
- package/dist/indicators/IndicatorEngine.d.ts.map +1 -1
- package/dist/indicators/PointwiseIndicator.d.ts +25 -0
- package/dist/indicators/PointwiseIndicator.d.ts.map +1 -0
- package/dist/indicators/index.d.ts +32 -0
- package/dist/indicators/index.d.ts.map +1 -1
- package/dist/indicators/math.d.ts +47 -0
- package/dist/indicators/math.d.ts.map +1 -0
- package/dist/indicators/overlay/ALMA.d.ts +20 -0
- package/dist/indicators/overlay/ALMA.d.ts.map +1 -0
- package/dist/indicators/overlay/Alligator.d.ts +2 -14
- package/dist/indicators/overlay/Alligator.d.ts.map +1 -1
- package/dist/indicators/overlay/AnchoredVWAP.d.ts +2 -9
- package/dist/indicators/overlay/AnchoredVWAP.d.ts.map +1 -1
- package/dist/indicators/overlay/BollingerBands.d.ts +2 -10
- package/dist/indicators/overlay/BollingerBands.d.ts.map +1 -1
- package/dist/indicators/overlay/ChandeKrollStop.d.ts +16 -0
- package/dist/indicators/overlay/ChandeKrollStop.d.ts.map +1 -0
- package/dist/indicators/overlay/ChandelierExit.d.ts +2 -10
- package/dist/indicators/overlay/ChandelierExit.d.ts.map +1 -1
- package/dist/indicators/overlay/DEMA.d.ts +11 -0
- package/dist/indicators/overlay/DEMA.d.ts.map +1 -0
- package/dist/indicators/overlay/DonchianChannel.d.ts +2 -9
- package/dist/indicators/overlay/DonchianChannel.d.ts.map +1 -1
- package/dist/indicators/overlay/EMA.d.ts +2 -9
- package/dist/indicators/overlay/EMA.d.ts.map +1 -1
- package/dist/indicators/overlay/Envelope.d.ts +2 -10
- package/dist/indicators/overlay/Envelope.d.ts.map +1 -1
- package/dist/indicators/overlay/GuppyMMA.d.ts +11 -0
- package/dist/indicators/overlay/GuppyMMA.d.ts.map +1 -0
- package/dist/indicators/overlay/HullMA.d.ts +2 -9
- package/dist/indicators/overlay/HullMA.d.ts.map +1 -1
- package/dist/indicators/overlay/Ichimoku.d.ts +2 -12
- package/dist/indicators/overlay/Ichimoku.d.ts.map +1 -1
- package/dist/indicators/overlay/KAMA.d.ts +15 -0
- package/dist/indicators/overlay/KAMA.d.ts.map +1 -0
- package/dist/indicators/overlay/KeltnerChannel.d.ts +2 -11
- package/dist/indicators/overlay/KeltnerChannel.d.ts.map +1 -1
- package/dist/indicators/overlay/LSMA.d.ts +19 -0
- package/dist/indicators/overlay/LSMA.d.ts.map +1 -0
- package/dist/indicators/overlay/LinearRegressionChannel.d.ts +2 -10
- package/dist/indicators/overlay/LinearRegressionChannel.d.ts.map +1 -1
- package/dist/indicators/overlay/MACross.d.ts +9 -0
- package/dist/indicators/overlay/MACross.d.ts.map +1 -0
- package/dist/indicators/overlay/MARibbon.d.ts +8 -0
- package/dist/indicators/overlay/MARibbon.d.ts.map +1 -0
- package/dist/indicators/overlay/MTFMovingAverage.d.ts +2 -10
- package/dist/indicators/overlay/MTFMovingAverage.d.ts.map +1 -1
- package/dist/indicators/overlay/McGinleyDynamic.d.ts +13 -0
- package/dist/indicators/overlay/McGinleyDynamic.d.ts.map +1 -0
- package/dist/indicators/overlay/ParabolicSAR.d.ts +2 -10
- package/dist/indicators/overlay/ParabolicSAR.d.ts.map +1 -1
- package/dist/indicators/overlay/PivotPoints.d.ts +2 -9
- package/dist/indicators/overlay/PivotPoints.d.ts.map +1 -1
- package/dist/indicators/overlay/SMA.d.ts +2 -9
- package/dist/indicators/overlay/SMA.d.ts.map +1 -1
- package/dist/indicators/overlay/SMMA.d.ts +13 -0
- package/dist/indicators/overlay/SMMA.d.ts.map +1 -0
- package/dist/indicators/overlay/SessionVWAP.d.ts +2 -9
- package/dist/indicators/overlay/SessionVWAP.d.ts.map +1 -1
- package/dist/indicators/overlay/StandardErrorBands.d.ts +12 -0
- package/dist/indicators/overlay/StandardErrorBands.d.ts.map +1 -0
- package/dist/indicators/overlay/Supertrend.d.ts +2 -10
- package/dist/indicators/overlay/Supertrend.d.ts.map +1 -1
- package/dist/indicators/overlay/TEMA.d.ts +2 -9
- package/dist/indicators/overlay/TEMA.d.ts.map +1 -1
- package/dist/indicators/overlay/VWAP.d.ts +2 -7
- package/dist/indicators/overlay/VWAP.d.ts.map +1 -1
- package/dist/indicators/overlay/VWMA.d.ts +2 -9
- package/dist/indicators/overlay/VWMA.d.ts.map +1 -1
- package/dist/indicators/overlay/WMA.d.ts +2 -9
- package/dist/indicators/overlay/WMA.d.ts.map +1 -1
- package/dist/indicators/overlay/WilliamsFractals.d.ts +15 -0
- package/dist/indicators/overlay/WilliamsFractals.d.ts.map +1 -0
- package/dist/indicators/overlay/ZigZag.d.ts +2 -9
- package/dist/indicators/overlay/ZigZag.d.ts.map +1 -1
- package/dist/indicators/panel/ADX.d.ts +2 -10
- package/dist/indicators/panel/ADX.d.ts.map +1 -1
- package/dist/indicators/panel/ATR.d.ts +2 -10
- package/dist/indicators/panel/ATR.d.ts.map +1 -1
- package/dist/indicators/panel/AcceleratorOscillator.d.ts +5 -10
- package/dist/indicators/panel/AcceleratorOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/AccumulationDistribution.d.ts +2 -8
- package/dist/indicators/panel/AccumulationDistribution.d.ts.map +1 -1
- package/dist/indicators/panel/Aroon.d.ts +2 -10
- package/dist/indicators/panel/Aroon.d.ts.map +1 -1
- package/dist/indicators/panel/AverageDayRange.d.ts +9 -0
- package/dist/indicators/panel/AverageDayRange.d.ts.map +1 -0
- package/dist/indicators/panel/AwesomeOscillator.d.ts +2 -11
- package/dist/indicators/panel/AwesomeOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/BalanceOfPower.d.ts +2 -10
- package/dist/indicators/panel/BalanceOfPower.d.ts.map +1 -1
- package/dist/indicators/panel/BollingerBandWidth.d.ts +18 -0
- package/dist/indicators/panel/BollingerBandWidth.d.ts.map +1 -0
- package/dist/indicators/panel/BollingerPercentB.d.ts +21 -0
- package/dist/indicators/panel/BollingerPercentB.d.ts.map +1 -0
- package/dist/indicators/panel/CCI.d.ts +2 -10
- package/dist/indicators/panel/CCI.d.ts.map +1 -1
- package/dist/indicators/panel/CMF.d.ts +2 -10
- package/dist/indicators/panel/CMF.d.ts.map +1 -1
- package/dist/indicators/panel/ChaikinOscillator.d.ts +2 -11
- package/dist/indicators/panel/ChaikinOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/ChaikinVolatility.d.ts +2 -11
- package/dist/indicators/panel/ChaikinVolatility.d.ts.map +1 -1
- package/dist/indicators/panel/ChandeMomentum.d.ts +2 -10
- package/dist/indicators/panel/ChandeMomentum.d.ts.map +1 -1
- package/dist/indicators/panel/ChoppinessIndex.d.ts +2 -10
- package/dist/indicators/panel/ChoppinessIndex.d.ts.map +1 -1
- package/dist/indicators/panel/ConnorsRSI.d.ts +2 -12
- package/dist/indicators/panel/ConnorsRSI.d.ts.map +1 -1
- package/dist/indicators/panel/Coppock.d.ts +2 -12
- package/dist/indicators/panel/Coppock.d.ts.map +1 -1
- package/dist/indicators/panel/DetrendedPriceOscillator.d.ts +2 -10
- package/dist/indicators/panel/DetrendedPriceOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/DisparityIndex.d.ts +2 -10
- package/dist/indicators/panel/DisparityIndex.d.ts.map +1 -1
- package/dist/indicators/panel/EaseOfMovement.d.ts +2 -12
- package/dist/indicators/panel/EaseOfMovement.d.ts.map +1 -1
- package/dist/indicators/panel/ElderRay.d.ts +3 -9
- package/dist/indicators/panel/ElderRay.d.ts.map +1 -1
- package/dist/indicators/panel/FisherTransform.d.ts +2 -10
- package/dist/indicators/panel/FisherTransform.d.ts.map +1 -1
- package/dist/indicators/panel/ForceIndex.d.ts +2 -10
- package/dist/indicators/panel/ForceIndex.d.ts.map +1 -1
- package/dist/indicators/panel/HistoricalVolatility.d.ts +22 -0
- package/dist/indicators/panel/HistoricalVolatility.d.ts.map +1 -0
- package/dist/indicators/panel/KST.d.ts +2 -18
- package/dist/indicators/panel/KST.d.ts.map +1 -1
- package/dist/indicators/panel/Klinger.d.ts +2 -12
- package/dist/indicators/panel/Klinger.d.ts.map +1 -1
- package/dist/indicators/panel/LinearRegressionSlope.d.ts +9 -0
- package/dist/indicators/panel/LinearRegressionSlope.d.ts.map +1 -0
- package/dist/indicators/panel/MACD.d.ts +2 -12
- package/dist/indicators/panel/MACD.d.ts.map +1 -1
- package/dist/indicators/panel/MFI.d.ts +2 -10
- package/dist/indicators/panel/MFI.d.ts.map +1 -1
- package/dist/indicators/panel/MassIndex.d.ts +2 -11
- package/dist/indicators/panel/MassIndex.d.ts.map +1 -1
- package/dist/indicators/panel/Momentum.d.ts +9 -0
- package/dist/indicators/panel/Momentum.d.ts.map +1 -0
- package/dist/indicators/panel/NetVolume.d.ts +11 -0
- package/dist/indicators/panel/NetVolume.d.ts.map +1 -0
- package/dist/indicators/panel/OBV.d.ts +2 -8
- package/dist/indicators/panel/OBV.d.ts.map +1 -1
- package/dist/indicators/panel/PercentagePriceOscillator.d.ts +2 -12
- package/dist/indicators/panel/PercentagePriceOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/PrettyGoodOscillator.d.ts +2 -10
- package/dist/indicators/panel/PrettyGoodOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/PriceVolumeTrend.d.ts +2 -8
- package/dist/indicators/panel/PriceVolumeTrend.d.ts.map +1 -1
- package/dist/indicators/panel/Qstick.d.ts +2 -10
- package/dist/indicators/panel/Qstick.d.ts.map +1 -1
- package/dist/indicators/panel/ROC.d.ts +2 -10
- package/dist/indicators/panel/ROC.d.ts.map +1 -1
- package/dist/indicators/panel/RSI.d.ts +2 -10
- package/dist/indicators/panel/RSI.d.ts.map +1 -1
- package/dist/indicators/panel/RelativeMomentumIndex.d.ts +2 -11
- package/dist/indicators/panel/RelativeMomentumIndex.d.ts.map +1 -1
- package/dist/indicators/panel/RelativeVigor.d.ts +2 -10
- package/dist/indicators/panel/RelativeVigor.d.ts.map +1 -1
- package/dist/indicators/panel/RelativeVolatilityIndex.d.ts +12 -0
- package/dist/indicators/panel/RelativeVolatilityIndex.d.ts.map +1 -0
- package/dist/indicators/panel/SchaffTrendCycle.d.ts +2 -12
- package/dist/indicators/panel/SchaffTrendCycle.d.ts.map +1 -1
- package/dist/indicators/panel/StandardError.d.ts +9 -0
- package/dist/indicators/panel/StandardError.d.ts.map +1 -0
- package/dist/indicators/panel/StdDev.d.ts +2 -10
- package/dist/indicators/panel/StdDev.d.ts.map +1 -1
- package/dist/indicators/panel/Stochastic.d.ts +2 -12
- package/dist/indicators/panel/Stochastic.d.ts.map +1 -1
- package/dist/indicators/panel/StochasticMomentumIndex.d.ts +12 -0
- package/dist/indicators/panel/StochasticMomentumIndex.d.ts.map +1 -0
- package/dist/indicators/panel/StochasticRSI.d.ts +2 -13
- package/dist/indicators/panel/StochasticRSI.d.ts.map +1 -1
- package/dist/indicators/panel/TRIX.d.ts +2 -11
- package/dist/indicators/panel/TRIX.d.ts.map +1 -1
- package/dist/indicators/panel/TSI.d.ts +2 -12
- package/dist/indicators/panel/TSI.d.ts.map +1 -1
- package/dist/indicators/panel/TrendStrengthIndex.d.ts +9 -0
- package/dist/indicators/panel/TrendStrengthIndex.d.ts.map +1 -0
- package/dist/indicators/panel/UlcerIndex.d.ts +15 -0
- package/dist/indicators/panel/UlcerIndex.d.ts.map +1 -0
- package/dist/indicators/panel/UltimateOscillator.d.ts +2 -12
- package/dist/indicators/panel/UltimateOscillator.d.ts.map +1 -1
- package/dist/indicators/panel/VROC.d.ts +2 -10
- package/dist/indicators/panel/VROC.d.ts.map +1 -1
- package/dist/indicators/panel/VolumeDelta.d.ts +2 -10
- package/dist/indicators/panel/VolumeDelta.d.ts.map +1 -1
- package/dist/indicators/panel/VolumeOscillator.d.ts +11 -0
- package/dist/indicators/panel/VolumeOscillator.d.ts.map +1 -0
- package/dist/indicators/panel/VolumeProfile.d.ts +2 -9
- package/dist/indicators/panel/VolumeProfile.d.ts.map +1 -1
- package/dist/indicators/panel/Vortex.d.ts +2 -10
- package/dist/indicators/panel/Vortex.d.ts.map +1 -1
- package/dist/indicators/panel/WilliamsAD.d.ts +2 -10
- package/dist/indicators/panel/WilliamsAD.d.ts.map +1 -1
- package/dist/indicators/panel/WilliamsR.d.ts +2 -10
- package/dist/indicators/panel/WilliamsR.d.ts.map +1 -1
- package/dist/indicators/plots.d.ts +49 -0
- package/dist/indicators/plots.d.ts.map +1 -0
- package/dist/indicators/registry.d.ts.map +1 -1
- package/dist/indicators/sources.d.ts +37 -0
- package/dist/indicators/sources.d.ts.map +1 -0
- package/dist/indicators/symbols/SymbolSeriesStore.d.ts +21 -0
- package/dist/indicators/symbols/SymbolSeriesStore.d.ts.map +1 -0
- package/dist/indicators/symbols/symbolIndicators.d.ts +34 -0
- package/dist/indicators/symbols/symbolIndicators.d.ts.map +1 -0
- package/dist/interaction/CrosshairHandler.d.ts +31 -4
- package/dist/interaction/CrosshairHandler.d.ts.map +1 -1
- package/dist/interaction/CrosshairTooltip.d.ts +16 -9
- package/dist/interaction/CrosshairTooltip.d.ts.map +1 -1
- package/dist/interaction/InteractionManager.d.ts +69 -1
- package/dist/interaction/InteractionManager.d.ts.map +1 -1
- package/dist/interaction/PaneResizeHandler.d.ts.map +1 -1
- package/dist/interaction/PinnedTooltip.d.ts +9 -1
- package/dist/interaction/PinnedTooltip.d.ts.map +1 -1
- package/dist/interaction/PriceAxisAddButton.d.ts +17 -0
- package/dist/interaction/PriceAxisAddButton.d.ts.map +1 -0
- package/dist/interaction/ZoomHandler.d.ts +8 -0
- package/dist/interaction/ZoomHandler.d.ts.map +1 -1
- package/dist/interaction/index.d.ts +2 -0
- package/dist/interaction/index.d.ts.map +1 -1
- package/dist/realtime/CurrentPriceLine.d.ts.map +1 -1
- package/dist/realtime/StreamManager.d.ts +5 -0
- package/dist/realtime/StreamManager.d.ts.map +1 -1
- package/dist/realtime/TickAggregator.d.ts.map +1 -1
- package/dist/realtime/TickBars.d.ts +58 -0
- package/dist/realtime/TickBars.d.ts.map +1 -0
- package/dist/realtime/adapters/BinanceAdapter.d.ts +24 -1
- package/dist/realtime/adapters/BinanceAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/BybitAdapter.d.ts +3 -1
- package/dist/realtime/adapters/BybitAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/CoinbaseAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/KrakenAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/MockAdapter.d.ts +19 -1
- package/dist/realtime/adapters/MockAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/PollingAdapter.d.ts +14 -1
- package/dist/realtime/adapters/PollingAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/ResamplingAdapter.d.ts +84 -0
- package/dist/realtime/adapters/ResamplingAdapter.d.ts.map +1 -0
- package/dist/realtime/adapters/WebSocketAdapter.d.ts +14 -1
- package/dist/realtime/adapters/WebSocketAdapter.d.ts.map +1 -1
- package/dist/realtime/adapters/binanceTypes.d.ts +10 -1
- package/dist/realtime/adapters/binanceTypes.d.ts.map +1 -1
- package/dist/realtime/adapters/index.d.ts +1 -0
- package/dist/realtime/adapters/index.d.ts.map +1 -1
- package/dist/realtime/index.d.ts +1 -0
- package/dist/realtime/index.d.ts.map +1 -1
- package/dist/trading/BracketTool.d.ts.map +1 -1
- package/dist/trading/OrderDraftTool.d.ts.map +1 -1
- package/dist/trading/OrderRenderer.d.ts +2 -1
- package/dist/trading/OrderRenderer.d.ts.map +1 -1
- package/dist/trading/PaperExecutionAdapter.d.ts +17 -3
- package/dist/trading/PaperExecutionAdapter.d.ts.map +1 -1
- package/dist/trading/PositionRenderer.d.ts +6 -1
- package/dist/trading/PositionRenderer.d.ts.map +1 -1
- package/dist/trading/TradingContextMenu.d.ts +1 -1
- package/dist/trading/TradingContextMenu.d.ts.map +1 -1
- package/dist/trading/TradingManager.d.ts +23 -2
- package/dist/trading/TradingManager.d.ts.map +1 -1
- package/dist/trading/fillMarks.d.ts +14 -0
- package/dist/trading/fillMarks.d.ts.map +1 -0
- package/dist/trading/lineButtons.d.ts +31 -0
- package/dist/trading/lineButtons.d.ts.map +1 -0
- package/dist/trading/positionFormat.d.ts +1 -1
- package/dist/trading/positionFormat.d.ts.map +1 -1
- package/dist/ui/BarCountdown.d.ts.map +1 -1
- package/dist/ui/ChartLegend.d.ts +6 -0
- package/dist/ui/ChartLegend.d.ts.map +1 -1
- package/dist/ui/PriceLines.d.ts +38 -0
- package/dist/ui/PriceLines.d.ts.map +1 -0
- package/dist/ui/SessionBreaks.d.ts +4 -1
- package/dist/ui/SessionBreaks.d.ts.map +1 -1
- package/dist/ui/SessionShading.d.ts +2 -0
- package/dist/ui/SessionShading.d.ts.map +1 -1
- package/dist/ui/axisValueLabels.d.ts +35 -0
- package/dist/ui/axisValueLabels.d.ts.map +1 -0
- package/dist/ui/index.d.ts +6 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/sessionHours.d.ts +12 -2
- package/dist/ui/sessionHours.d.ts.map +1 -1
- package/dist/ui/shapes.d.ts +9 -0
- package/dist/ui/shapes.d.ts.map +1 -0
- package/dist/viewport/ScaleMapping.d.ts +20 -0
- package/dist/viewport/ScaleMapping.d.ts.map +1 -1
- package/dist/viewport/Viewport.d.ts +38 -2
- package/dist/viewport/Viewport.d.ts.map +1 -1
- package/dist/viewport/index.d.ts +4 -2
- package/dist/viewport/index.d.ts.map +1 -1
- package/dist/viewport/rangePresets.d.ts +12 -0
- package/dist/viewport/rangePresets.d.ts.map +1 -0
- package/package.json +2 -2
|
@@ -1,62 +1,96 @@
|
|
|
1
|
-
import { DrawingPlugin, DrawingState, DrawingToolType, DrawingStyle, Point, ViewportState, OHLCBar } from '@tradecanvas/commons';
|
|
2
|
-
import { UndoRedoManager } from '../features/UndoRedoManager.js';
|
|
1
|
+
import { DrawingPlugin, DrawingState, DrawingToolType, DrawingStyle, DrawingOptions, DrawingOptionDefs, Point, ViewportState, OHLCBar } from '@tradecanvas/commons';
|
|
2
|
+
import { UndoRedoManager, UndoableAction } from '../features/UndoRedoManager.js';
|
|
3
|
+
import { DrawingOrderMove, DrawingPatch } from './drawingState.js';
|
|
4
|
+
import { MagnetMode } from './magnetSnap.js';
|
|
5
|
+
export type { DrawingOrderMove, DrawingPatch } from './drawingState.js';
|
|
3
6
|
type DrawingEventCallback = (event: string, data: unknown) => void;
|
|
4
7
|
export type DrawingInteractionState = 'idle' | 'creating' | 'selected' | 'moving' | 'resizing';
|
|
5
|
-
export type MagnetMode
|
|
8
|
+
export type { MagnetMode } from './magnetSnap.js';
|
|
6
9
|
export declare class DrawingManager {
|
|
7
10
|
private registry;
|
|
8
11
|
private drawings;
|
|
9
12
|
private state;
|
|
10
13
|
private activeTool;
|
|
11
14
|
private activeStyle;
|
|
12
|
-
|
|
13
|
-
private
|
|
14
|
-
|
|
15
|
-
private
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
/** The drawing being made with the pointer. */
|
|
16
|
+
private creator;
|
|
17
|
+
/** When the last drawing was finished, and the last press that drew (ms). */
|
|
18
|
+
private finishedAt;
|
|
19
|
+
private creationPressAt;
|
|
20
|
+
/** The eraser: a click on a drawing removes it. */
|
|
21
|
+
private eraser;
|
|
22
|
+
private selection;
|
|
18
23
|
/** Start state of the other group members while the group is dragged. */
|
|
19
|
-
|
|
20
|
-
private
|
|
21
|
-
private dragStartPoint;
|
|
22
|
-
private dragStartAnchors;
|
|
23
|
-
private dragBeforeState;
|
|
24
|
+
/** Drawings being moved or reshaped with the pointer. */
|
|
25
|
+
private drag;
|
|
24
26
|
private eventCallback;
|
|
25
27
|
private requestRender;
|
|
26
28
|
private undoRedo;
|
|
27
29
|
private magnetMode;
|
|
28
30
|
private dataGetter;
|
|
29
31
|
private displayDataGetter;
|
|
32
|
+
/** Keep the tool after a drawing is finished, to draw several in a row. */
|
|
33
|
+
private stayInDrawingMode;
|
|
34
|
+
/** Tools this chart allows (e.g. a whitelist); pasting skips the others. */
|
|
35
|
+
private toolAllowed;
|
|
36
|
+
/** Options new drawings of a tool start with ("save as default"). */
|
|
37
|
+
private toolDefaults;
|
|
38
|
+
/** Drawings being edited (a settings dialog), with their state when the edit began. */
|
|
39
|
+
private edits;
|
|
40
|
+
/** Undo actions gathered by `batchUndo`, pushed as one step when it ends. */
|
|
41
|
+
private batch;
|
|
30
42
|
register(plugin: DrawingPlugin): void;
|
|
31
43
|
setEventCallback(cb: DrawingEventCallback): void;
|
|
32
44
|
setRequestRender(cb: () => void): void;
|
|
33
45
|
setUndoRedoManager(mgr: UndoRedoManager): void;
|
|
34
46
|
setMagnetMode(mode: MagnetMode): void;
|
|
35
47
|
getMagnetMode(): MagnetMode;
|
|
48
|
+
/** The chart's bars, for legacy anchors and the tools drawn from bars. */
|
|
36
49
|
setDataGetter(getter: () => OHLCBar[]): void;
|
|
37
50
|
/** Set a separate getter for display data (e.g. Heikin Ashi transformed). Used by magnet snap. */
|
|
38
51
|
setDisplayDataGetter(getter: () => OHLCBar[]): void;
|
|
39
|
-
/**
|
|
40
|
-
* Snap an in-progress anchor to the closest OHLC value of the underlying
|
|
41
|
-
* bar. `time` is interpreted as a timestamp when `viewport.data` is set
|
|
42
|
-
* (the modern, recommended mode) or as a bar index otherwise. The returned
|
|
43
|
-
* `time` matches the input convention so the caller doesn't need to know.
|
|
44
|
-
*/
|
|
52
|
+
/** Snap a point being placed to the bar under it (see `snapToBar`), on the bars as drawn (Heikin Ashi, say). */
|
|
45
53
|
private snapToOHLC;
|
|
46
54
|
undo(): boolean;
|
|
47
55
|
redo(): boolean;
|
|
56
|
+
/** Steps in the shared history that aren't about drawings (the chart's indicators, steps of its owner). */
|
|
57
|
+
private foreignHistory;
|
|
58
|
+
/** Who undoes and redoes the history's steps that aren't about drawings. */
|
|
59
|
+
setForeignHistory(handler: ((action: UndoableAction, direction: 'undo' | 'redo') => void) | null): void;
|
|
48
60
|
private applyUndoAction;
|
|
49
|
-
private undoOne;
|
|
50
61
|
private applyRedoAction;
|
|
51
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Put the drawings an undo or redo left, and report them: drawingRemove and
|
|
64
|
+
* drawingCreate for drawings gone and back (their alerts follow them),
|
|
65
|
+
* drawingUpdate for changed or reordered ones.
|
|
66
|
+
*/
|
|
67
|
+
private applyHistory;
|
|
68
|
+
/**
|
|
69
|
+
* After undo/redo nothing is selected, and a picked tool (stay-in-drawing
|
|
70
|
+
* mode, or one picked mid-drawing) stays ready for a fresh drawing.
|
|
71
|
+
*/
|
|
72
|
+
private settleAfterHistory;
|
|
73
|
+
/** Record an undo step, or add it to the batch being gathered. */
|
|
74
|
+
private record;
|
|
52
75
|
/**
|
|
53
76
|
* Run `fn`, recording every undo action it pushes as one undo step, so a
|
|
54
|
-
* group move/delete/restyle comes back with a single Ctrl+Z.
|
|
77
|
+
* group move/delete/restyle comes back with a single Ctrl+Z. Nested calls
|
|
78
|
+
* join the outer step.
|
|
55
79
|
*/
|
|
56
80
|
private batchUndo;
|
|
57
|
-
|
|
58
|
-
private
|
|
81
|
+
/** Take drawings out of the selection (hidden or removed); another selected one becomes the primary. */
|
|
82
|
+
private deselect;
|
|
59
83
|
private addToSelection;
|
|
84
|
+
/** The other drawings of `drawing`'s group (selected along with it). */
|
|
85
|
+
private groupMates;
|
|
86
|
+
/**
|
|
87
|
+
* Select a drawing and the rest of its group (a menu opened on it, say). A
|
|
88
|
+
* drawing already in the selection leaves the selection as it is. False
|
|
89
|
+
* for an unknown or hidden drawing, or while a drawing is being drawn.
|
|
90
|
+
*/
|
|
91
|
+
select(id: string): boolean;
|
|
92
|
+
/** Told the selected drawings' ids (the primary first) each time the selection changes. */
|
|
93
|
+
setSelectionListener(listener: ((ids: string[]) => void) | null): void;
|
|
60
94
|
/** Ids of every selected drawing, the primary one first. */
|
|
61
95
|
getSelectedDrawingIds(): string[];
|
|
62
96
|
/**
|
|
@@ -72,17 +106,35 @@ export declare class DrawingManager {
|
|
|
72
106
|
}, viewport: ViewportState): number;
|
|
73
107
|
/** Ctrl/⌘-click: add the drawing under `pos` to the selection, or take it out. */
|
|
74
108
|
toggleSelectionAt(pos: Point, viewport: ViewportState): boolean;
|
|
75
|
-
/** Begin moving `primary` — and every other selected drawing with it. */
|
|
109
|
+
/** Begin moving `primary` — and every other selected drawing that isn't locked with it. */
|
|
76
110
|
private beginMove;
|
|
111
|
+
/** Set drawings' visible or locked flags, as one undo step; hidden ones leave the selection. */
|
|
112
|
+
private setFlags;
|
|
77
113
|
lockAllDrawings(): void;
|
|
78
114
|
unlockAllDrawings(): void;
|
|
79
115
|
hideAllDrawings(): void;
|
|
80
116
|
showAllDrawings(): void;
|
|
81
|
-
/**
|
|
117
|
+
/** Show or hide a drawing (one undo step). Returns the new value, or null if not found. */
|
|
82
118
|
setDrawingVisible(id: string, visible: boolean): boolean | null;
|
|
83
|
-
/**
|
|
119
|
+
/** Show or hide several drawings as one undo step (a selection, say); unknown ids are passed over. */
|
|
120
|
+
setDrawingsVisible(ids: readonly string[], visible: boolean): void;
|
|
121
|
+
/** Lock or unlock several drawings as one undo step. */
|
|
122
|
+
setDrawingsLocked(ids: readonly string[], locked: boolean): void;
|
|
123
|
+
/** Lock or unlock a drawing (one undo step). Returns the new value, or null if not found. */
|
|
84
124
|
setDrawingLocked(id: string, locked: boolean): boolean | null;
|
|
85
125
|
setActiveTool(type: DrawingToolType | null): void;
|
|
126
|
+
/** When on, finishing a drawing keeps its tool active for the next one. */
|
|
127
|
+
setStayInDrawingMode(enabled: boolean): void;
|
|
128
|
+
isStayInDrawingMode(): boolean;
|
|
129
|
+
setToolFilter(allowed: (type: DrawingToolType) => boolean): void;
|
|
130
|
+
/** Copy the selected drawings. Returns how many were copied. */
|
|
131
|
+
copySelection(): number;
|
|
132
|
+
/**
|
|
133
|
+
* Paste the copied drawings as new, unlocked, selected drawings — one undo
|
|
134
|
+
* step. Pasted back into the chart they came from, each paste is offset by
|
|
135
|
+
* a few more bars so it doesn't cover the original. Returns the new ids.
|
|
136
|
+
*/
|
|
137
|
+
paste(): string[];
|
|
86
138
|
getActiveTool(): DrawingToolType | null;
|
|
87
139
|
setStyle(style: Partial<DrawingStyle>): void;
|
|
88
140
|
/** Current style applied to newly created drawings. */
|
|
@@ -95,9 +147,78 @@ export declare class DrawingManager {
|
|
|
95
147
|
onPointerDown(pos: Point, viewport: ViewportState): boolean;
|
|
96
148
|
onPointerMove(pos: Point, viewport: ViewportState): boolean;
|
|
97
149
|
onPointerUp(): boolean;
|
|
98
|
-
|
|
150
|
+
/**
|
|
151
|
+
* A key for the drawings (see `drawingShortcut`); true when it was used.
|
|
152
|
+
* Pass `shiftKey` so Caps Lock doesn't read as Shift.
|
|
153
|
+
*/
|
|
154
|
+
onKeyDown(key: string, ctrlKey?: boolean, shiftKey?: boolean): boolean;
|
|
155
|
+
/** Escape: put the eraser away, drop the tool being drawn with, else the selection. */
|
|
156
|
+
private escape;
|
|
157
|
+
/** Ungroup every group with a drawing in the selection. */
|
|
158
|
+
private ungroupSelection;
|
|
99
159
|
getDrawings(): DrawingState[];
|
|
100
160
|
setDrawings(states: DrawingState[]): void;
|
|
161
|
+
/**
|
|
162
|
+
* Draw a drawing on top of the others, under them, or one step up or down
|
|
163
|
+
* (one undo step). False when it is unknown or already there.
|
|
164
|
+
*/
|
|
165
|
+
moveDrawing(id: string, to: DrawingOrderMove): boolean;
|
|
166
|
+
/** Every group, its drawings bottom to top. */
|
|
167
|
+
getGroups(): {
|
|
168
|
+
id: string;
|
|
169
|
+
name: string;
|
|
170
|
+
ids: string[];
|
|
171
|
+
}[];
|
|
172
|
+
/** Change every drawing of a group, as one undo step. */
|
|
173
|
+
private updateGroup;
|
|
174
|
+
/**
|
|
175
|
+
* Group drawings (at least two) so they are selected, hidden and locked
|
|
176
|
+
* together; one leaves the group it was in. Returns the group's id, or null.
|
|
177
|
+
*/
|
|
178
|
+
groupDrawings(ids: readonly string[], name?: string): string | null;
|
|
179
|
+
ungroup(groupId: string): boolean;
|
|
180
|
+
renameGroup(groupId: string, name: string): boolean;
|
|
181
|
+
/** Show or hide a group; hidden, it leaves the selection. */
|
|
182
|
+
setGroupVisible(groupId: string, visible: boolean): boolean;
|
|
183
|
+
setGroupLocked(groupId: string, locked: boolean): boolean;
|
|
184
|
+
/**
|
|
185
|
+
* The prices of a drawing's lines at `time` (see `DrawingPlugin.priceAt`),
|
|
186
|
+
* or null; as drawn on `viewport`'s scale when given.
|
|
187
|
+
*/
|
|
188
|
+
priceAt(id: string, time: number, viewport?: ViewportState): number[] | null;
|
|
189
|
+
/** Whether a drawing has lines an alert can cross. */
|
|
190
|
+
hasPriceLevels(id: string): boolean;
|
|
191
|
+
/** A registered tool's descriptor, or null. */
|
|
192
|
+
getDescriptor(type: DrawingToolType): DrawingPlugin['descriptor'] | null;
|
|
193
|
+
/** The options a tool offers (empty for a tool without any). */
|
|
194
|
+
getOptionDefs(type: DrawingToolType): DrawingOptionDefs;
|
|
195
|
+
private optionDefs;
|
|
196
|
+
/** A new drawing's options: the tool's defaults, then `explicit`; undefined when none. */
|
|
197
|
+
private initialOptions;
|
|
198
|
+
/** Options every new drawing of `type` starts with; invalid entries are dropped. */
|
|
199
|
+
setToolDefaults(type: DrawingToolType, options: DrawingOptions | null): void;
|
|
200
|
+
getToolDefaults(type: DrawingToolType): DrawingOptions;
|
|
201
|
+
/** Every option of a drawing, its tool's defaults filled in; empty for an unknown drawing. */
|
|
202
|
+
getDrawingOptions(id: string): DrawingOptions;
|
|
203
|
+
/** Change some of a drawing's options (one undo step). False for an unknown drawing. */
|
|
204
|
+
setDrawingOptions(id: string, options: DrawingOptions): boolean;
|
|
205
|
+
/**
|
|
206
|
+
* Change a drawing's anchors, style or options (one undo step, or part of
|
|
207
|
+
* the edit begun with `beginEdit`). Anchors must be as many as it has, with
|
|
208
|
+
* finite times and prices; options are checked against the tool. Explicit
|
|
209
|
+
* edits apply to locked drawings too: the lock only stops the pointer.
|
|
210
|
+
*/
|
|
211
|
+
updateDrawing(id: string, patch: DrawingPatch): boolean;
|
|
212
|
+
/**
|
|
213
|
+
* Start editing a drawing (a settings dialog previewing changes): the
|
|
214
|
+
* `updateDrawing` calls until `endEdit` become one undo step. False for an
|
|
215
|
+
* unknown drawing.
|
|
216
|
+
*/
|
|
217
|
+
beginEdit(id: string): boolean;
|
|
218
|
+
/** Finish an edit: keep the changes as one undo step, or with `cancel` put the drawing back. */
|
|
219
|
+
endEdit(id: string, { cancel }?: {
|
|
220
|
+
cancel?: boolean;
|
|
221
|
+
}): void;
|
|
101
222
|
/**
|
|
102
223
|
* Append a drawing (assigning a fresh id and applying the active style for any
|
|
103
224
|
* omitted style fields). Records an undo entry. Returns the new id.
|
|
@@ -117,6 +238,11 @@ export declare class DrawingManager {
|
|
|
117
238
|
*/
|
|
118
239
|
private upgradeLegacyAnchors;
|
|
119
240
|
removeDrawing(id: string): void;
|
|
241
|
+
/**
|
|
242
|
+
* Remove drawings as one undo step; locked ones stay. Returns how many
|
|
243
|
+
* went.
|
|
244
|
+
*/
|
|
245
|
+
removeDrawings(ids: readonly string[]): number;
|
|
120
246
|
duplicateDrawing(id: string): string | null;
|
|
121
247
|
clearDrawings(): void;
|
|
122
248
|
getSelectedDrawingId(): string | null;
|
|
@@ -127,7 +253,26 @@ export declare class DrawingManager {
|
|
|
127
253
|
* `n × median bar interval`; otherwise it's just `n` (bar-index mode).
|
|
128
254
|
*/
|
|
129
255
|
private computeBarOffsetTime;
|
|
256
|
+
/** Where a press or move puts an anchor: magnet-snapped, except for a freehand stroke. */
|
|
257
|
+
private creationAnchor;
|
|
130
258
|
private handleCreationClick;
|
|
259
|
+
private afterCreationStep;
|
|
260
|
+
/**
|
|
261
|
+
* Turn the eraser on or off: while on, a click on a drawing (not a locked
|
|
262
|
+
* one) removes it, one undo step each. Picking a tool or Escape turns it off.
|
|
263
|
+
*/
|
|
264
|
+
setEraser(on: boolean): void;
|
|
265
|
+
isEraser(): boolean;
|
|
266
|
+
/** The eraser at `pos`: remove the drawing there. A press off any drawing is left to the chart (a pan). */
|
|
267
|
+
private erase;
|
|
268
|
+
/** The topmost drawing the eraser would take at `pos`: locked ones are passed over. */
|
|
269
|
+
private erasableAt;
|
|
270
|
+
/**
|
|
271
|
+
* Whether a press that drew just finished a drawing: the double-click that
|
|
272
|
+
* ended a path isn't a double-click on it. A drawing finished earlier can be
|
|
273
|
+
* double-clicked straight away.
|
|
274
|
+
*/
|
|
275
|
+
justFinished(withinMs?: number): boolean;
|
|
131
276
|
private finalizeCreation;
|
|
132
277
|
/** True while a drawing is being moved or reshaped by its handle. */
|
|
133
278
|
isDragging(): boolean;
|
|
@@ -136,10 +281,9 @@ export declare class DrawingManager {
|
|
|
136
281
|
* 'pointer' over any drawing that can be grabbed, otherwise null. Null too
|
|
137
282
|
* while a drawing tool is active (the chart keeps its crosshair).
|
|
138
283
|
*/
|
|
284
|
+
/** The topmost visible drawing under `pos` (locked ones too), or null. */
|
|
285
|
+
drawingAt(pos: Point, viewport: ViewportState, tolerance?: number): string | null;
|
|
139
286
|
hoverCursorAt(pos: Point, viewport: ViewportState): 'move' | 'pointer' | null;
|
|
140
287
|
private handleSelectionClick;
|
|
141
|
-
private handleMove;
|
|
142
|
-
private handleResize;
|
|
143
288
|
}
|
|
144
|
-
export {};
|
|
145
289
|
//# sourceMappingURL=DrawingManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawingManager.d.ts","sourceRoot":"","sources":["../../src/drawings/DrawingManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,KAAK,EACL,aAAa,EACb,OAAO,EAER,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"DrawingManager.d.ts","sourceRoot":"","sources":["../../src/drawings/DrawingManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The selected drawings: a primary one (its handles show, it is what a drag
|
|
3
|
+
* reshapes) and the others selected with it (a box, Ctrl/⌘-clicks, its group).
|
|
4
|
+
*/
|
|
5
|
+
export declare class DrawingSelection {
|
|
6
|
+
private primaryId;
|
|
7
|
+
private others;
|
|
8
|
+
private listener;
|
|
9
|
+
/** Told the selected ids (the primary first) after each change. */
|
|
10
|
+
setListener(listener: ((ids: string[]) => void) | null): void;
|
|
11
|
+
/** Run a change; tell the listener when the selection came out different. */
|
|
12
|
+
private change;
|
|
13
|
+
get primary(): string | null;
|
|
14
|
+
has(id: string): boolean;
|
|
15
|
+
/** Every selected id, the primary first. */
|
|
16
|
+
ids(): string[];
|
|
17
|
+
clear(): void;
|
|
18
|
+
/** Add a drawing; the first one is the primary. */
|
|
19
|
+
add(id: string): void;
|
|
20
|
+
/** Select `id` as the primary, and `along` with it (the rest of its group). */
|
|
21
|
+
only(id: string, along?: Iterable<string>): void;
|
|
22
|
+
/** Make a selected drawing the primary, keeping the rest. */
|
|
23
|
+
focus(id: string): void;
|
|
24
|
+
/** Take drawings out; another selected one becomes the primary. Whether anything changed. */
|
|
25
|
+
remove(ids: Iterable<string>): boolean;
|
|
26
|
+
private removeNow;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=DrawingSelection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DrawingSelection.d.ts","sourceRoot":"","sources":["../../src/drawings/DrawingSelection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,QAAQ,CAA0C;IAE1D,mEAAmE;IACnE,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;IAI7D,6EAA6E;IAC7E,OAAO,CAAC,MAAM;IAOd,IAAI,OAAO,IAAI,MAAM,GAAG,IAAI,CAE3B;IAED,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIxB,4CAA4C;IAC5C,GAAG,IAAI,MAAM,EAAE;IAIf,KAAK,IAAI,IAAI;IAOb,mDAAmD;IACnD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAOrB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,QAAQ,CAAC,MAAM,CAAM,GAAG,IAAI;IAQpD,6DAA6D;IAC7D,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IASvB,6FAA6F;IAC7F,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO;IAItC,OAAO,CAAC,SAAS;CAkBlB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DrawingState } from '@tradecanvas/commons';
|
|
2
|
+
import { UndoableAction } from '../features/UndoRedoManager.js';
|
|
3
|
+
import { DrawingOrderMove } from './drawingState.js';
|
|
4
|
+
/** The drawings in `ids` order; any not listed stay after them. */
|
|
5
|
+
export declare function orderDrawings(drawings: readonly DrawingState[], ids: readonly string[]): DrawingState[];
|
|
6
|
+
/** Where a drawing at `from` (of `count`) goes for `to`. */
|
|
7
|
+
export declare function orderTarget(from: number, count: number, to: DrawingOrderMove): number;
|
|
8
|
+
/** The drawings with `action` taken back. Changed drawings are new objects. */
|
|
9
|
+
export declare function undoAction(drawings: readonly DrawingState[], action: UndoableAction): DrawingState[];
|
|
10
|
+
/** The drawings with `action` done again. */
|
|
11
|
+
export declare function redoAction(drawings: readonly DrawingState[], action: UndoableAction): DrawingState[];
|
|
12
|
+
//# sourceMappingURL=drawingHistory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawingHistory.d.ts","sourceRoot":"","sources":["../../src/drawings/drawingHistory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,EAAE,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,YAAY,EAAE,CAKvG;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,gBAAgB,GAAG,MAAM,CAQrF;AAMD,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,EAAE,MAAM,EAAE,cAAc,GAAG,YAAY,EAAE,CAoBpG;AAED,6CAA6C;AAC7C,wBAAgB,UAAU,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,EAAE,MAAM,EAAE,cAAc,GAAG,YAAY,EAAE,CAepG"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DrawingOrderMove } from './drawingState.js';
|
|
2
|
+
/** What a key does to drawings. */
|
|
3
|
+
export type DrawingShortcut = 'copy' | 'paste' | 'duplicate' | 'group' | 'ungroup' | DrawingOrderMove | 'undo' | 'redo' | 'escape' | 'delete' | 'finish';
|
|
4
|
+
/**
|
|
5
|
+
* The drawing shortcut for a key: Ctrl/⌘ with C, V, D, G (Shift: ungroup),
|
|
6
|
+
* ] and [ (Shift: all the way), Z (Shift: redo) and Y; Escape; Delete and
|
|
7
|
+
* Backspace; Enter (ends a path being drawn). Pass `shift` so Caps Lock
|
|
8
|
+
* doesn't count as Shift; without it an upper-case letter does.
|
|
9
|
+
*/
|
|
10
|
+
export declare function drawingShortcut(key: string, ctrl: boolean, shift?: boolean): DrawingShortcut | null;
|
|
11
|
+
//# sourceMappingURL=drawingShortcuts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawingShortcuts.d.ts","sourceRoot":"","sources":["../../src/drawings/drawingShortcuts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,mCAAmC;AACnC,MAAM,MAAM,eAAe,GACvB,MAAM,GAAG,OAAO,GAAG,WAAW,GAC9B,OAAO,GAAG,SAAS,GACnB,gBAAgB,GAChB,MAAM,GAAG,MAAM,GACf,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAUnC;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAiBnG"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { AnchorPoint, DrawingOptions, DrawingState, DrawingStyle } from '@tradecanvas/commons';
|
|
2
|
+
/** A change to a drawing: its anchors (as many as it has), style or options. */
|
|
3
|
+
export interface DrawingPatch {
|
|
4
|
+
anchors?: AnchorPoint[];
|
|
5
|
+
style?: Partial<DrawingStyle>;
|
|
6
|
+
options?: DrawingOptions;
|
|
7
|
+
}
|
|
8
|
+
/** Where `moveDrawing` puts a drawing among the others: drawn on top of all, under all, or one step. */
|
|
9
|
+
export type DrawingOrderMove = 'front' | 'back' | 'forward' | 'backward';
|
|
10
|
+
/** Longest group name kept; a longer one is cut. */
|
|
11
|
+
export declare const MAX_GROUP_NAME = 80;
|
|
12
|
+
export declare function cloneOptions(options: DrawingOptions): DrawingOptions;
|
|
13
|
+
/**
|
|
14
|
+
* Shallow clone tailored for DrawingState. Avoids `structuredClone` in hot
|
|
15
|
+
* paths (drag, resize, duplicate) where the well-known shape lets us spread
|
|
16
|
+
* much faster than the structured-clone algorithm.
|
|
17
|
+
*/
|
|
18
|
+
export declare function cloneDrawing(d: DrawingState): DrawingState;
|
|
19
|
+
export declare function sameOptions(a: DrawingOptions | undefined, b: DrawingOptions | undefined): boolean;
|
|
20
|
+
export declare function sameAnchors(a: readonly AnchorPoint[], b: readonly AnchorPoint[]): boolean;
|
|
21
|
+
export declare function newDrawingId(): string;
|
|
22
|
+
/** A new group's id and its number (for a default name). */
|
|
23
|
+
export declare function newGroupId(): {
|
|
24
|
+
id: string;
|
|
25
|
+
number: number;
|
|
26
|
+
};
|
|
27
|
+
/** Number new drawings and groups after the ids these drawings use. */
|
|
28
|
+
export declare function reserveIds(drawings: readonly Pick<DrawingState, 'id' | 'group'>[]): void;
|
|
29
|
+
//# sourceMappingURL=drawingState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawingState.d.ts","sourceRoot":"","sources":["../../src/drawings/drawingState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpG,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,wGAAwG;AACxG,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAEzE,oDAAoD;AACpD,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,wBAAgB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAMpE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,YAAY,GAAG,YAAY,CAS1D;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,cAAc,GAAG,SAAS,EAAE,CAAC,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAEjG;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,SAAS,WAAW,EAAE,EAAE,CAAC,EAAE,SAAS,WAAW,EAAE,GAAG,OAAO,CAMzF;AAUD,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,IAAI;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAG3D;AAED,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,QAAQ,EAAE,SAAS,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,EAAE,GAAG,IAAI,CAOxF"}
|
package/dist/drawings/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { DrawingBase } from './DrawingBase.js';
|
|
1
|
+
export { DrawingBase, lineSpace, type LineSpace } from './DrawingBase.js';
|
|
2
2
|
export { DrawingManager } from './DrawingManager.js';
|
|
3
|
+
export type { DrawingPatch, DrawingOrderMove } from './DrawingManager.js';
|
|
3
4
|
export { DrawingRenderer } from './DrawingRenderer.js';
|
|
4
5
|
export { findDominantSwing } from './autoFib.js';
|
|
5
6
|
export * from './tools/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/drawings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/drawings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AnchorPoint, OHLCBar, ViewportState } from '@tradecanvas/commons';
|
|
2
|
+
/** 'magnet' snaps an anchor to the nearest open, high, low or close within reach; 'strong' always does. */
|
|
3
|
+
export type MagnetMode = 'none' | 'magnet' | 'strong';
|
|
4
|
+
/**
|
|
5
|
+
* Snap a point to the closest open, high, low or close of the bar under it.
|
|
6
|
+
* `time` is a timestamp when `viewport.data` is set, else a bar index; the
|
|
7
|
+
* result uses the same. Past either end of the bars there is nothing to snap
|
|
8
|
+
* to and the point stays where it was placed (a target in the empty future).
|
|
9
|
+
* Out of the weak magnet's reach, only the time snaps to the bar.
|
|
10
|
+
*/
|
|
11
|
+
export declare function snapToBar(time: number, price: number, mode: MagnetMode, bars: readonly OHLCBar[], viewport?: ViewportState): AnchorPoint;
|
|
12
|
+
//# sourceMappingURL=magnetSnap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"magnetSnap.d.ts","sourceRoot":"","sources":["../../src/drawings/magnetSnap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGhF,2GAA2G;AAC3G,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAKtD;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,SAAS,OAAO,EAAE,EACxB,QAAQ,CAAC,EAAE,aAAa,GACvB,WAAW,CAiBb"}
|
|
@@ -1 +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;
|
|
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;AAIhD;;;;;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;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAOD;IAEhB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,mBAAmB;IA2C3B,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAqBhG"}
|
|
@@ -6,6 +6,7 @@ export declare class CircleTool extends DrawingBase {
|
|
|
6
6
|
type: "circle";
|
|
7
7
|
name: string;
|
|
8
8
|
requiredAnchors: number;
|
|
9
|
+
fill: boolean;
|
|
9
10
|
};
|
|
10
11
|
private geometry;
|
|
11
12
|
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Circle.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/Circle.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,0DAA0D;AAC1D,qBAAa,UAAW,SAAQ,WAAW;IACzC,UAAU
|
|
1
|
+
{"version":3,"file":"Circle.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/Circle.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,0DAA0D;AAC1D,qBAAa,UAAW,SAAQ,WAAW;IACzC,UAAU;;;;;MAA+E;IAEzF,OAAO,CAAC,QAAQ;IAMhB,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAiB5G,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAOhG"}
|
|
@@ -1,12 +1,137 @@
|
|
|
1
1
|
import { DrawingState, Point, ViewportState } from '@tradecanvas/commons';
|
|
2
2
|
import { DrawingBase } from '../DrawingBase.js';
|
|
3
|
-
|
|
3
|
+
/** How a wave degree writes its labels: ① Ⓐ, (1) (A), 1 A, or i a. */
|
|
4
|
+
export type WaveDegree = 'primary' | 'intermediate' | 'minor' | 'minute';
|
|
5
|
+
/** A wave label (a digit 0–5 or a capital letter) as `degree` writes it. */
|
|
6
|
+
export declare function waveLabel(label: string, degree: WaveDegree): string;
|
|
7
|
+
/**
|
|
8
|
+
* A wave count: a line through its turning points, each labelled above a
|
|
9
|
+
* high or below a low, in the style of the wave degree.
|
|
10
|
+
*/
|
|
11
|
+
declare abstract class WaveTool extends DrawingBase {
|
|
12
|
+
protected abstract readonly labels: readonly string[];
|
|
13
|
+
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
14
|
+
hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|
|
15
|
+
}
|
|
16
|
+
/** A full cycle: five waves up and three down (1–5, A–C). */
|
|
17
|
+
export declare class ElliottWaveTool extends WaveTool {
|
|
4
18
|
descriptor: {
|
|
5
19
|
type: "elliottWave";
|
|
6
20
|
name: string;
|
|
7
21
|
requiredAnchors: number;
|
|
22
|
+
options: {
|
|
23
|
+
degree: {
|
|
24
|
+
kind: "choice";
|
|
25
|
+
label: string;
|
|
26
|
+
default: string;
|
|
27
|
+
choices: {
|
|
28
|
+
value: string;
|
|
29
|
+
label: string;
|
|
30
|
+
}[];
|
|
31
|
+
};
|
|
32
|
+
};
|
|
8
33
|
};
|
|
9
|
-
|
|
10
|
-
|
|
34
|
+
protected readonly labels: string[];
|
|
35
|
+
}
|
|
36
|
+
/** Impulse wave: from its start through waves 1 to 5. */
|
|
37
|
+
export declare class ElliottImpulseTool extends WaveTool {
|
|
38
|
+
descriptor: {
|
|
39
|
+
type: "elliottImpulse";
|
|
40
|
+
name: string;
|
|
41
|
+
requiredAnchors: number;
|
|
42
|
+
options: {
|
|
43
|
+
degree: {
|
|
44
|
+
kind: "choice";
|
|
45
|
+
label: string;
|
|
46
|
+
default: string;
|
|
47
|
+
choices: {
|
|
48
|
+
value: string;
|
|
49
|
+
label: string;
|
|
50
|
+
}[];
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
protected readonly labels: string[];
|
|
55
|
+
}
|
|
56
|
+
/** Correction: A, B, C. */
|
|
57
|
+
export declare class ElliottCorrectionTool extends WaveTool {
|
|
58
|
+
descriptor: {
|
|
59
|
+
type: "elliottCorrection";
|
|
60
|
+
name: string;
|
|
61
|
+
requiredAnchors: number;
|
|
62
|
+
options: {
|
|
63
|
+
degree: {
|
|
64
|
+
kind: "choice";
|
|
65
|
+
label: string;
|
|
66
|
+
default: string;
|
|
67
|
+
choices: {
|
|
68
|
+
value: string;
|
|
69
|
+
label: string;
|
|
70
|
+
}[];
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
protected readonly labels: string[];
|
|
75
|
+
}
|
|
76
|
+
/** Triangle: A to E. */
|
|
77
|
+
export declare class ElliottTriangleTool extends WaveTool {
|
|
78
|
+
descriptor: {
|
|
79
|
+
type: "elliottTriangle";
|
|
80
|
+
name: string;
|
|
81
|
+
requiredAnchors: number;
|
|
82
|
+
options: {
|
|
83
|
+
degree: {
|
|
84
|
+
kind: "choice";
|
|
85
|
+
label: string;
|
|
86
|
+
default: string;
|
|
87
|
+
choices: {
|
|
88
|
+
value: string;
|
|
89
|
+
label: string;
|
|
90
|
+
}[];
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
protected readonly labels: string[];
|
|
95
|
+
}
|
|
96
|
+
/** Double combination: W, X, Y. */
|
|
97
|
+
export declare class ElliottDoubleComboTool extends WaveTool {
|
|
98
|
+
descriptor: {
|
|
99
|
+
type: "elliottDoubleCombo";
|
|
100
|
+
name: string;
|
|
101
|
+
requiredAnchors: number;
|
|
102
|
+
options: {
|
|
103
|
+
degree: {
|
|
104
|
+
kind: "choice";
|
|
105
|
+
label: string;
|
|
106
|
+
default: string;
|
|
107
|
+
choices: {
|
|
108
|
+
value: string;
|
|
109
|
+
label: string;
|
|
110
|
+
}[];
|
|
111
|
+
};
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
protected readonly labels: string[];
|
|
115
|
+
}
|
|
116
|
+
/** Triple combination: W, X, Y, X, Z. */
|
|
117
|
+
export declare class ElliottTripleComboTool extends WaveTool {
|
|
118
|
+
descriptor: {
|
|
119
|
+
type: "elliottTripleCombo";
|
|
120
|
+
name: string;
|
|
121
|
+
requiredAnchors: number;
|
|
122
|
+
options: {
|
|
123
|
+
degree: {
|
|
124
|
+
kind: "choice";
|
|
125
|
+
label: string;
|
|
126
|
+
default: string;
|
|
127
|
+
choices: {
|
|
128
|
+
value: string;
|
|
129
|
+
label: string;
|
|
130
|
+
}[];
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
protected readonly labels: string[];
|
|
11
135
|
}
|
|
136
|
+
export {};
|
|
12
137
|
//# sourceMappingURL=ElliottWave.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElliottWave.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/ElliottWave.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"ElliottWave.d.ts","sourceRoot":"","sources":["../../../src/drawings/tools/ElliottWave.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAgB,MAAM,mBAAmB,CAAC;AAE9D,sEAAsE;AACtE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;AAIzE,4EAA4E;AAC5E,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CAanE;AAgBD;;;GAGG;AACH,uBAAe,QAAS,SAAQ,WAAW;IACzC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAEtD,MAAM,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAuB5G,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;CAIhG;AAED,6DAA6D;AAC7D,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,UAAU;;;;;;;;;;;;;;;MAAsG;IAChH,SAAS,CAAC,QAAQ,CAAC,MAAM,WAA4C;CACtE;AAED,yDAAyD;AACzD,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,UAAU;;;;;;;;;;;;;;;MAAiH;IAC3H,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAkC;CAC5D;AAED,2BAA2B;AAC3B,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,UAAU;;;;;;;;;;;;;;;MAAuH;IACjI,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAwB;CAClD;AAED,wBAAwB;AACxB,qBAAa,mBAAoB,SAAQ,QAAQ;IAC/C,UAAU;;;;;;;;;;;;;;;MAAmH;IAC7H,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAkC;CAC5D;AAED,mCAAmC;AACnC,qBAAa,sBAAuB,SAAQ,QAAQ;IAClD,UAAU;;;;;;;;;;;;;;;MAA0H;IACpI,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAwB;CAClD;AAED,yCAAyC;AACzC,qBAAa,sBAAuB,SAAQ,QAAQ;IAClD,UAAU;;;;;;;;;;;;;;;MAA0H;IACpI,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAkC;CAC5D"}
|
|
@@ -5,6 +5,7 @@ export declare class EllipseTool extends DrawingBase {
|
|
|
5
5
|
type: "ellipse";
|
|
6
6
|
name: string;
|
|
7
7
|
requiredAnchors: number;
|
|
8
|
+
fill: boolean;
|
|
8
9
|
};
|
|
9
10
|
render(ctx: CanvasRenderingContext2D, state: DrawingState, viewport: ViewportState, selected: boolean): void;
|
|
10
11
|
hitTest(point: Point, state: DrawingState, viewport: ViewportState, tolerance: number): boolean;
|