@363045841yyt/klinechart-core 0.8.14 → 0.9.0-alpha.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/README.md +5 -4
- package/README.zh-CN.md +44 -43
- package/dist/components/anchoredVwap/createAnchoredVwapController.js +1 -1
- package/dist/components/anchoredVwap/createAnchoredVwapController.js.map +1 -1
- package/dist/components/anchoredVwap/types.d.ts +1 -1
- package/dist/components/anchoredVwap/types.d.ts.map +1 -1
- package/dist/components/crosshairSync/createCrosshairSync.d.ts +1 -1
- package/dist/components/crosshairSync/createCrosshairSync.d.ts.map +1 -1
- package/dist/components/crosshairSync/createCrosshairSync.js +1 -1
- package/dist/components/crosshairSync/createCrosshairSync.js.map +1 -1
- package/dist/components/footprint/createFootprintController.js +1 -1
- package/dist/components/footprint/createFootprintController.js.map +1 -1
- package/dist/components/footprint/types.d.ts +1 -1
- package/dist/components/footprint/types.d.ts.map +1 -1
- package/dist/components/mtfOverlay/createMtfController.js +1 -1
- package/dist/components/mtfOverlay/createMtfController.js.map +1 -1
- package/dist/components/mtfOverlay/types.d.ts +1 -1
- package/dist/components/mtfOverlay/types.d.ts.map +1 -1
- package/dist/components/orderBookHeatmap/createHeatmapController.js +1 -1
- package/dist/components/orderBookHeatmap/createHeatmapController.js.map +1 -1
- package/dist/components/orderBookHeatmap/createOrderBookState.js.map +1 -1
- package/dist/components/orderBookHeatmap/types.d.ts +1 -1
- package/dist/components/orderBookHeatmap/types.d.ts.map +1 -1
- package/dist/components/volumeProfile/createVolumeProfileController.js +1 -1
- package/dist/components/volumeProfile/createVolumeProfileController.js.map +1 -1
- package/dist/components/volumeProfile/types.d.ts +1 -1
- package/dist/components/volumeProfile/types.d.ts.map +1 -1
- package/dist/controllers/createChartController.d.ts.map +1 -1
- package/dist/controllers/createChartController.js +83 -106
- package/dist/controllers/createChartController.js.map +1 -1
- package/dist/controllers/createDrawingController.js +1 -1
- package/dist/controllers/createDrawingController.js.map +1 -1
- package/dist/controllers/createIndicatorSelectorController.js +1 -1
- package/dist/controllers/createIndicatorSelectorController.js.map +1 -1
- package/dist/controllers/createToolbarController.js +1 -1
- package/dist/controllers/createToolbarController.js.map +1 -1
- package/dist/controllers/index.d.ts +2 -2
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +1 -1
- package/dist/controllers/index.js.map +1 -1
- package/dist/controllers/types.d.ts +41 -22
- package/dist/controllers/types.d.ts.map +1 -1
- package/dist/controllers/types.js +1 -1
- package/dist/data/baostock.d.ts.map +1 -0
- package/dist/data/baostock.js +103 -0
- package/dist/data/baostock.js.map +1 -0
- package/dist/data/binance.d.ts.map +1 -0
- package/dist/data/binance.js.map +1 -0
- package/dist/data/dataBuffer.d.ts +36 -0
- package/dist/data/dataBuffer.d.ts.map +1 -0
- package/dist/data/dataBuffer.effects.d.ts +21 -0
- package/dist/data/dataBuffer.effects.d.ts.map +1 -0
- package/dist/data/dataBuffer.effects.js.map +1 -0
- package/dist/data/dataBuffer.js +182 -0
- package/dist/data/dataBuffer.js.map +1 -0
- package/dist/data/dataBufferTypes.d.ts +42 -0
- package/dist/data/dataBufferTypes.d.ts.map +1 -0
- package/dist/data/dataBufferTypes.js.map +1 -0
- package/dist/data/depthConnector.d.ts.map +1 -0
- package/dist/data/depthConnector.js.map +1 -0
- package/dist/data/depthTypes.d.ts.map +1 -0
- package/dist/data/depthTypes.js.map +1 -0
- package/dist/data/fetchScheduler.d.ts +13 -0
- package/dist/data/fetchScheduler.d.ts.map +1 -0
- package/dist/data/fetchScheduler.js +56 -0
- package/dist/data/fetchScheduler.js.map +1 -0
- package/dist/data/fetcherDefinitionRegistry.d.ts.map +1 -0
- package/dist/data/fetcherDefinitionRegistry.js.map +1 -0
- package/dist/data/gotdx.d.ts.map +1 -0
- package/dist/data/gotdx.js +217 -0
- package/dist/data/gotdx.js.map +1 -0
- package/dist/data/hundred-mock.d.ts.map +1 -0
- package/dist/data/hundred-mock.js.map +1 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/kLineDataStore.d.ts +21 -0
- package/dist/data/kLineDataStore.d.ts.map +1 -0
- package/dist/data/kLineDataStore.js +77 -0
- package/dist/data/kLineDataStore.js.map +1 -0
- package/dist/data/router.d.ts.map +1 -0
- package/dist/data/router.js.map +1 -0
- package/dist/data/thousand-mock.d.ts.map +1 -0
- package/dist/data/thousand-mock.js.map +1 -0
- package/dist/data/timeKeyIndex.d.ts.map +1 -0
- package/dist/data/timeKeyIndex.js.map +1 -0
- package/dist/data/timeShareBuffer.d.ts +27 -0
- package/dist/data/timeShareBuffer.d.ts.map +1 -0
- package/dist/data/timeShareBuffer.js +101 -0
- package/dist/data/timeShareBuffer.js.map +1 -0
- package/dist/data/tradingview.d.ts.map +1 -0
- package/dist/data/tradingview.js +116 -0
- package/dist/data/tradingview.js.map +1 -0
- package/dist/data/types.d.ts.map +1 -0
- package/dist/data/types.js.map +1 -0
- package/dist/engine/chart.d.ts +93 -61
- package/dist/engine/chart.d.ts.map +1 -1
- package/dist/engine/chart.js +367 -199
- package/dist/engine/chart.js.map +1 -1
- package/dist/engine/chartTypes.d.ts +1 -1
- package/dist/engine/chartTypes.d.ts.map +1 -1
- package/dist/engine/controller/interaction.d.ts +40 -57
- package/dist/engine/controller/interaction.d.ts.map +1 -1
- package/dist/engine/controller/interaction.js +190 -209
- package/dist/engine/controller/interaction.js.map +1 -1
- package/dist/engine/controller/markerInteraction.d.ts +9 -11
- package/dist/engine/controller/markerInteraction.d.ts.map +1 -1
- package/dist/engine/controller/markerInteraction.js +17 -73
- package/dist/engine/controller/markerInteraction.js.map +1 -1
- package/dist/engine/controller/tooltipPosition.d.ts +3 -0
- package/dist/engine/controller/tooltipPosition.d.ts.map +1 -1
- package/dist/engine/controller/tooltipPosition.js +15 -1
- package/dist/engine/controller/tooltipPosition.js.map +1 -1
- package/dist/engine/data/chartDataManager.d.ts +51 -31
- package/dist/engine/data/chartDataManager.d.ts.map +1 -1
- package/dist/engine/data/chartDataManager.js +303 -177
- package/dist/engine/data/chartDataManager.js.map +1 -1
- package/dist/engine/data/comparisonManager.d.ts +13 -19
- package/dist/engine/data/comparisonManager.d.ts.map +1 -1
- package/dist/engine/data/comparisonManager.js +79 -140
- package/dist/engine/data/comparisonManager.js.map +1 -1
- package/dist/engine/data/incrementalLoadHint.d.ts +6 -5
- package/dist/engine/data/incrementalLoadHint.d.ts.map +1 -1
- package/dist/engine/data/incrementalLoadHint.js +76 -58
- package/dist/engine/data/incrementalLoadHint.js.map +1 -1
- package/dist/engine/data/scrollCompensator.d.ts +4 -2
- package/dist/engine/data/scrollCompensator.d.ts.map +1 -1
- package/dist/engine/data/scrollCompensator.js +6 -28
- package/dist/engine/data/scrollCompensator.js.map +1 -1
- package/dist/engine/drawing/DragHandler.d.ts +1 -1
- package/dist/engine/drawing/DragHandler.d.ts.map +1 -1
- package/dist/engine/drawing/DrawingState.d.ts +11 -4
- package/dist/engine/drawing/DrawingState.d.ts.map +1 -1
- package/dist/engine/drawing/DrawingState.js +30 -10
- package/dist/engine/drawing/DrawingState.js.map +1 -1
- package/dist/engine/drawing/HitTester.d.ts +1 -1
- package/dist/engine/drawing/HitTester.d.ts.map +1 -1
- package/dist/engine/drawing/PreviewRenderer.d.ts +1 -1
- package/dist/engine/drawing/PreviewRenderer.d.ts.map +1 -1
- package/dist/engine/drawing/coordinateUtils.d.ts +1 -1
- package/dist/engine/drawing/coordinateUtils.d.ts.map +1 -1
- package/dist/engine/drawing/index.d.ts +11 -8
- package/dist/engine/drawing/index.d.ts.map +1 -1
- package/dist/engine/drawing/index.js +12 -29
- package/dist/engine/drawing/index.js.map +1 -1
- package/dist/engine/drawing/interaction.d.ts +7 -5
- package/dist/engine/drawing/interaction.d.ts.map +1 -1
- package/dist/engine/drawing/interaction.js +25 -22
- package/dist/engine/drawing/interaction.js.map +1 -1
- package/dist/engine/drawing/plugin.d.ts +3 -3
- package/dist/engine/drawing/plugin.d.ts.map +1 -1
- package/dist/engine/drawing/plugin.js +1 -1
- package/dist/engine/drawing/plugin.js.map +1 -1
- package/dist/engine/drawing/toolConfig.d.ts +1 -1
- package/dist/engine/drawing/toolConfig.d.ts.map +1 -1
- package/dist/engine/indicators/calculators/bands.d.ts +1 -1
- package/dist/engine/indicators/calculators/bands.d.ts.map +1 -1
- package/dist/engine/indicators/calculators/movingAverages.d.ts +1 -1
- package/dist/engine/indicators/calculators/movingAverages.d.ts.map +1 -1
- package/dist/engine/indicators/calculators/oscillators.d.ts +1 -1
- package/dist/engine/indicators/calculators/oscillators.d.ts.map +1 -1
- package/dist/engine/indicators/calculators/patterns.d.ts +1 -1
- package/dist/engine/indicators/calculators/patterns.d.ts.map +1 -1
- package/dist/engine/indicators/calculators/volatility.d.ts +1 -1
- package/dist/engine/indicators/calculators/volatility.d.ts.map +1 -1
- package/dist/engine/indicators/calculators/volume.d.ts +1 -1
- package/dist/engine/indicators/calculators/volume.d.ts.map +1 -1
- package/dist/engine/indicators/chartIndicatorManager.d.ts +32 -21
- package/dist/engine/indicators/chartIndicatorManager.d.ts.map +1 -1
- package/dist/engine/indicators/chartIndicatorManager.js +149 -148
- package/dist/engine/indicators/chartIndicatorManager.js.map +1 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.d.ts +1 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.d.ts.map +1 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.js +1 -1
- package/dist/engine/indicators/indicatorDefinitionRegistry.js.map +1 -1
- package/dist/engine/indicators/indicatorMetadata.d.ts +2 -2
- package/dist/engine/indicators/indicatorMetadata.d.ts.map +1 -1
- package/dist/engine/indicators/indicatorRuntime.d.ts +1 -1
- package/dist/engine/indicators/indicatorRuntime.d.ts.map +1 -1
- package/dist/engine/indicators/scheduler.d.ts +19 -2
- package/dist/engine/indicators/scheduler.d.ts.map +1 -1
- package/dist/engine/indicators/scheduler.js +57 -9
- package/dist/engine/indicators/scheduler.js.map +1 -1
- package/dist/engine/indicators/soa.d.ts +1 -1
- package/dist/engine/indicators/soa.d.ts.map +1 -1
- package/dist/engine/indicators/state/atrState.d.ts +1 -1
- package/dist/engine/indicators/state/atrState.d.ts.map +1 -1
- package/dist/engine/indicators/state/atrState.js +1 -1
- package/dist/engine/indicators/state/atrState.js.map +1 -1
- package/dist/engine/indicators/state/bollState.d.ts +1 -1
- package/dist/engine/indicators/state/bollState.d.ts.map +1 -1
- package/dist/engine/indicators/state/bollState.js +1 -1
- package/dist/engine/indicators/state/bollState.js.map +1 -1
- package/dist/engine/indicators/state/cciState.d.ts +1 -1
- package/dist/engine/indicators/state/cciState.d.ts.map +1 -1
- package/dist/engine/indicators/state/cciState.js +1 -1
- package/dist/engine/indicators/state/cciState.js.map +1 -1
- package/dist/engine/indicators/state/chaikinVolState.d.ts +1 -1
- package/dist/engine/indicators/state/chaikinVolState.d.ts.map +1 -1
- package/dist/engine/indicators/state/chaikinVolState.js +1 -1
- package/dist/engine/indicators/state/chaikinVolState.js.map +1 -1
- package/dist/engine/indicators/state/cmfState.d.ts +1 -1
- package/dist/engine/indicators/state/cmfState.d.ts.map +1 -1
- package/dist/engine/indicators/state/cmfState.js +1 -1
- package/dist/engine/indicators/state/cmfState.js.map +1 -1
- package/dist/engine/indicators/state/demaState.d.ts +1 -1
- package/dist/engine/indicators/state/demaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/demaState.js +1 -1
- package/dist/engine/indicators/state/demaState.js.map +1 -1
- package/dist/engine/indicators/state/donchianState.d.ts +1 -1
- package/dist/engine/indicators/state/donchianState.d.ts.map +1 -1
- package/dist/engine/indicators/state/donchianState.js +1 -1
- package/dist/engine/indicators/state/donchianState.js.map +1 -1
- package/dist/engine/indicators/state/eneState.d.ts +1 -1
- package/dist/engine/indicators/state/eneState.d.ts.map +1 -1
- package/dist/engine/indicators/state/eneState.js +1 -1
- package/dist/engine/indicators/state/eneState.js.map +1 -1
- package/dist/engine/indicators/state/expmaState.d.ts +1 -1
- package/dist/engine/indicators/state/expmaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/expmaState.js +1 -1
- package/dist/engine/indicators/state/expmaState.js.map +1 -1
- package/dist/engine/indicators/state/fastkState.d.ts +1 -1
- package/dist/engine/indicators/state/fastkState.d.ts.map +1 -1
- package/dist/engine/indicators/state/fastkState.js +1 -1
- package/dist/engine/indicators/state/fastkState.js.map +1 -1
- package/dist/engine/indicators/state/fibState.d.ts +1 -1
- package/dist/engine/indicators/state/fibState.d.ts.map +1 -1
- package/dist/engine/indicators/state/fibState.js +1 -1
- package/dist/engine/indicators/state/fibState.js.map +1 -1
- package/dist/engine/indicators/state/hmaState.d.ts +1 -1
- package/dist/engine/indicators/state/hmaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/hmaState.js +1 -1
- package/dist/engine/indicators/state/hmaState.js.map +1 -1
- package/dist/engine/indicators/state/hvState.d.ts +1 -1
- package/dist/engine/indicators/state/hvState.d.ts.map +1 -1
- package/dist/engine/indicators/state/hvState.js +1 -1
- package/dist/engine/indicators/state/hvState.js.map +1 -1
- package/dist/engine/indicators/state/ichimokuState.d.ts +1 -1
- package/dist/engine/indicators/state/ichimokuState.d.ts.map +1 -1
- package/dist/engine/indicators/state/ichimokuState.js +1 -1
- package/dist/engine/indicators/state/ichimokuState.js.map +1 -1
- package/dist/engine/indicators/state/kamaState.d.ts +1 -1
- package/dist/engine/indicators/state/kamaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/kamaState.js +1 -1
- package/dist/engine/indicators/state/kamaState.js.map +1 -1
- package/dist/engine/indicators/state/keltnerState.d.ts +1 -1
- package/dist/engine/indicators/state/keltnerState.d.ts.map +1 -1
- package/dist/engine/indicators/state/keltnerState.js +1 -1
- package/dist/engine/indicators/state/keltnerState.js.map +1 -1
- package/dist/engine/indicators/state/kstState.d.ts +1 -1
- package/dist/engine/indicators/state/kstState.d.ts.map +1 -1
- package/dist/engine/indicators/state/kstState.js +1 -1
- package/dist/engine/indicators/state/kstState.js.map +1 -1
- package/dist/engine/indicators/state/maState.d.ts +1 -1
- package/dist/engine/indicators/state/maState.d.ts.map +1 -1
- package/dist/engine/indicators/state/maState.js +1 -1
- package/dist/engine/indicators/state/maState.js.map +1 -1
- package/dist/engine/indicators/state/macdState.d.ts +1 -1
- package/dist/engine/indicators/state/macdState.d.ts.map +1 -1
- package/dist/engine/indicators/state/mfiState.d.ts +1 -1
- package/dist/engine/indicators/state/mfiState.d.ts.map +1 -1
- package/dist/engine/indicators/state/mfiState.js +1 -1
- package/dist/engine/indicators/state/mfiState.js.map +1 -1
- package/dist/engine/indicators/state/momState.d.ts +1 -1
- package/dist/engine/indicators/state/momState.d.ts.map +1 -1
- package/dist/engine/indicators/state/momState.js +1 -1
- package/dist/engine/indicators/state/momState.js.map +1 -1
- package/dist/engine/indicators/state/obvState.d.ts +1 -1
- package/dist/engine/indicators/state/obvState.d.ts.map +1 -1
- package/dist/engine/indicators/state/obvState.js +1 -1
- package/dist/engine/indicators/state/obvState.js.map +1 -1
- package/dist/engine/indicators/state/parkinsonState.d.ts +1 -1
- package/dist/engine/indicators/state/parkinsonState.d.ts.map +1 -1
- package/dist/engine/indicators/state/parkinsonState.js +1 -1
- package/dist/engine/indicators/state/parkinsonState.js.map +1 -1
- package/dist/engine/indicators/state/pivotState.d.ts +1 -1
- package/dist/engine/indicators/state/pivotState.d.ts.map +1 -1
- package/dist/engine/indicators/state/pivotState.js +1 -1
- package/dist/engine/indicators/state/pivotState.js.map +1 -1
- package/dist/engine/indicators/state/pvtState.d.ts +1 -1
- package/dist/engine/indicators/state/pvtState.d.ts.map +1 -1
- package/dist/engine/indicators/state/pvtState.js +1 -1
- package/dist/engine/indicators/state/pvtState.js.map +1 -1
- package/dist/engine/indicators/state/rocState.d.ts +1 -1
- package/dist/engine/indicators/state/rocState.d.ts.map +1 -1
- package/dist/engine/indicators/state/rocState.js +1 -1
- package/dist/engine/indicators/state/rocState.js.map +1 -1
- package/dist/engine/indicators/state/rsiState.d.ts +1 -1
- package/dist/engine/indicators/state/rsiState.d.ts.map +1 -1
- package/dist/engine/indicators/state/rsiState.js +1 -1
- package/dist/engine/indicators/state/rsiState.js.map +1 -1
- package/dist/engine/indicators/state/sarState.d.ts +1 -1
- package/dist/engine/indicators/state/sarState.d.ts.map +1 -1
- package/dist/engine/indicators/state/sarState.js +1 -1
- package/dist/engine/indicators/state/sarState.js.map +1 -1
- package/dist/engine/indicators/state/stochState.d.ts +1 -1
- package/dist/engine/indicators/state/stochState.d.ts.map +1 -1
- package/dist/engine/indicators/state/stochState.js +1 -1
- package/dist/engine/indicators/state/stochState.js.map +1 -1
- package/dist/engine/indicators/state/structureState.d.ts +1 -1
- package/dist/engine/indicators/state/structureState.d.ts.map +1 -1
- package/dist/engine/indicators/state/structureState.js +1 -1
- package/dist/engine/indicators/state/structureState.js.map +1 -1
- package/dist/engine/indicators/state/supertrendState.d.ts +1 -1
- package/dist/engine/indicators/state/supertrendState.d.ts.map +1 -1
- package/dist/engine/indicators/state/supertrendState.js +1 -1
- package/dist/engine/indicators/state/supertrendState.js.map +1 -1
- package/dist/engine/indicators/state/temaState.d.ts +1 -1
- package/dist/engine/indicators/state/temaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/temaState.js +1 -1
- package/dist/engine/indicators/state/temaState.js.map +1 -1
- package/dist/engine/indicators/state/trixState.d.ts +1 -1
- package/dist/engine/indicators/state/trixState.d.ts.map +1 -1
- package/dist/engine/indicators/state/trixState.js +1 -1
- package/dist/engine/indicators/state/trixState.js.map +1 -1
- package/dist/engine/indicators/state/vmaState.d.ts +1 -1
- package/dist/engine/indicators/state/vmaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/vmaState.js +1 -1
- package/dist/engine/indicators/state/vmaState.js.map +1 -1
- package/dist/engine/indicators/state/volumeProfileState.d.ts +1 -1
- package/dist/engine/indicators/state/volumeProfileState.d.ts.map +1 -1
- package/dist/engine/indicators/state/volumeProfileState.js +1 -1
- package/dist/engine/indicators/state/volumeProfileState.js.map +1 -1
- package/dist/engine/indicators/state/vwapState.d.ts +1 -1
- package/dist/engine/indicators/state/vwapState.d.ts.map +1 -1
- package/dist/engine/indicators/state/vwapState.js +1 -1
- package/dist/engine/indicators/state/vwapState.js.map +1 -1
- package/dist/engine/indicators/state/wmaState.d.ts +1 -1
- package/dist/engine/indicators/state/wmaState.d.ts.map +1 -1
- package/dist/engine/indicators/state/wmaState.js +1 -1
- package/dist/engine/indicators/state/wmaState.js.map +1 -1
- package/dist/engine/indicators/state/wmsrState.d.ts +1 -1
- package/dist/engine/indicators/state/wmsrState.d.ts.map +1 -1
- package/dist/engine/indicators/state/wmsrState.js +1 -1
- package/dist/engine/indicators/state/wmsrState.js.map +1 -1
- package/dist/engine/indicators/state/zonesState.d.ts +1 -1
- package/dist/engine/indicators/state/zonesState.d.ts.map +1 -1
- package/dist/engine/indicators/state/zonesState.js +1 -1
- package/dist/engine/indicators/state/zonesState.js.map +1 -1
- package/dist/engine/indicators/workerProtocol.d.ts +1 -1
- package/dist/engine/indicators/workerProtocol.d.ts.map +1 -1
- package/dist/engine/layout/chartPaneLayout.d.ts +38 -4
- package/dist/engine/layout/chartPaneLayout.d.ts.map +1 -1
- package/dist/engine/layout/chartPaneLayout.js +111 -38
- package/dist/engine/layout/chartPaneLayout.js.map +1 -1
- package/dist/engine/layout/pane.d.ts +2 -2
- package/dist/engine/layout/pane.d.ts.map +1 -1
- package/dist/engine/layout/paneRatioMath.d.ts +10 -0
- package/dist/engine/layout/paneRatioMath.d.ts.map +1 -0
- package/dist/engine/layout/paneRatioMath.js +29 -0
- package/dist/engine/layout/paneRatioMath.js.map +1 -0
- package/dist/engine/marker/registry.d.ts +10 -13
- package/dist/engine/marker/registry.d.ts.map +1 -1
- package/dist/engine/marker/registry.js +12 -26
- package/dist/engine/marker/registry.js.map +1 -1
- package/dist/engine/modes/timeShareMode.js +1 -1
- package/dist/engine/modes/timeShareMode.js.map +1 -1
- package/dist/engine/render/chartRenderer.d.ts +17 -8
- package/dist/engine/render/chartRenderer.d.ts.map +1 -1
- package/dist/engine/render/chartRenderer.js +51 -41
- package/dist/engine/render/chartRenderer.js.map +1 -1
- package/dist/engine/render/layers/candleLayer.d.ts +2 -2
- package/dist/engine/render/layers/candleLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/candleLayer.js +1 -1
- package/dist/engine/render/layers/candleLayer.js.map +1 -1
- package/dist/engine/render/layers/comparisonLineLayer.d.ts +2 -2
- package/dist/engine/render/layers/comparisonLineLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/comparisonLineLayer.js +1 -1
- package/dist/engine/render/layers/comparisonLineLayer.js.map +1 -1
- package/dist/engine/render/layers/crosshairLayer.d.ts +2 -2
- package/dist/engine/render/layers/crosshairLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/crosshairLayer.js +1 -1
- package/dist/engine/render/layers/crosshairLayer.js.map +1 -1
- package/dist/engine/render/layers/customMarkersLayer.d.ts +2 -2
- package/dist/engine/render/layers/customMarkersLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/customMarkersLayer.js +1 -1
- package/dist/engine/render/layers/customMarkersLayer.js.map +1 -1
- package/dist/engine/render/layers/extremaMarkersLayer.d.ts +2 -2
- package/dist/engine/render/layers/extremaMarkersLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/extremaMarkersLayer.js +1 -1
- package/dist/engine/render/layers/extremaMarkersLayer.js.map +1 -1
- package/dist/engine/render/layers/gridLinesLayer.d.ts +2 -2
- package/dist/engine/render/layers/gridLinesLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/gridLinesLayer.js +1 -1
- package/dist/engine/render/layers/gridLinesLayer.js.map +1 -1
- package/dist/engine/render/layers/lastPriceLabelLayer.d.ts +2 -2
- package/dist/engine/render/layers/lastPriceLabelLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/lastPriceLabelLayer.js +1 -1
- package/dist/engine/render/layers/lastPriceLabelLayer.js.map +1 -1
- package/dist/engine/render/layers/lastPriceLineLayer.d.ts +2 -2
- package/dist/engine/render/layers/lastPriceLineLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/lastPriceLineLayer.js +1 -1
- package/dist/engine/render/layers/lastPriceLineLayer.js.map +1 -1
- package/dist/engine/render/layers/leftYAxisLayer.d.ts +2 -2
- package/dist/engine/render/layers/leftYAxisLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/leftYAxisLayer.js +1 -1
- package/dist/engine/render/layers/leftYAxisLayer.js.map +1 -1
- package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts +2 -2
- package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/mainIndicatorLegendLayer.js +1 -1
- package/dist/engine/render/layers/mainIndicatorLegendLayer.js.map +1 -1
- package/dist/engine/render/layers/yAxisLayer.d.ts +2 -2
- package/dist/engine/render/layers/yAxisLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/yAxisLayer.js +1 -1
- package/dist/engine/render/layers/yAxisLayer.js.map +1 -1
- package/dist/engine/renderers/Indicator/atr.js +2 -2
- package/dist/engine/renderers/Indicator/atr.js.map +1 -1
- package/dist/engine/renderers/Indicator/boll.d.ts +1 -1
- package/dist/engine/renderers/Indicator/boll.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/boll.js +3 -3
- package/dist/engine/renderers/Indicator/boll.js.map +1 -1
- package/dist/engine/renderers/Indicator/cci.js +2 -2
- package/dist/engine/renderers/Indicator/cci.js.map +1 -1
- package/dist/engine/renderers/Indicator/chaikinVol.js +1 -1
- package/dist/engine/renderers/Indicator/chaikinVol.js.map +1 -1
- package/dist/engine/renderers/Indicator/cmf.js +1 -1
- package/dist/engine/renderers/Indicator/cmf.js.map +1 -1
- package/dist/engine/renderers/Indicator/dema.js +1 -1
- package/dist/engine/renderers/Indicator/dema.js.map +1 -1
- package/dist/engine/renderers/Indicator/donchian.js +1 -1
- package/dist/engine/renderers/Indicator/donchian.js.map +1 -1
- package/dist/engine/renderers/Indicator/ene.d.ts +1 -1
- package/dist/engine/renderers/Indicator/ene.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/ene.js +3 -3
- package/dist/engine/renderers/Indicator/ene.js.map +1 -1
- package/dist/engine/renderers/Indicator/expma.d.ts +1 -1
- package/dist/engine/renderers/Indicator/expma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/expma.js +2 -2
- package/dist/engine/renderers/Indicator/expma.js.map +1 -1
- package/dist/engine/renderers/Indicator/fastk.js +2 -2
- package/dist/engine/renderers/Indicator/fastk.js.map +1 -1
- package/dist/engine/renderers/Indicator/fib.js +1 -1
- package/dist/engine/renderers/Indicator/fib.js.map +1 -1
- package/dist/engine/renderers/Indicator/hma.js +1 -1
- package/dist/engine/renderers/Indicator/hma.js.map +1 -1
- package/dist/engine/renderers/Indicator/hv.js +1 -1
- package/dist/engine/renderers/Indicator/hv.js.map +1 -1
- package/dist/engine/renderers/Indicator/ichimoku.js +2 -2
- package/dist/engine/renderers/Indicator/ichimoku.js.map +1 -1
- package/dist/engine/renderers/Indicator/index.d.ts +1 -1
- package/dist/engine/renderers/Indicator/index.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/kama.js +1 -1
- package/dist/engine/renderers/Indicator/kama.js.map +1 -1
- package/dist/engine/renderers/Indicator/keltner.js +1 -1
- package/dist/engine/renderers/Indicator/keltner.js.map +1 -1
- package/dist/engine/renderers/Indicator/kst.js +2 -2
- package/dist/engine/renderers/Indicator/kst.js.map +1 -1
- package/dist/engine/renderers/Indicator/ma.d.ts +1 -1
- package/dist/engine/renderers/Indicator/ma.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/ma.js +2 -2
- package/dist/engine/renderers/Indicator/ma.js.map +1 -1
- package/dist/engine/renderers/Indicator/macd.js +2 -2
- package/dist/engine/renderers/Indicator/macd.js.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +3 -3
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
- package/dist/engine/renderers/Indicator/mfi.js +1 -1
- package/dist/engine/renderers/Indicator/mfi.js.map +1 -1
- package/dist/engine/renderers/Indicator/mom.js +3 -3
- package/dist/engine/renderers/Indicator/mom.js.map +1 -1
- package/dist/engine/renderers/Indicator/obv.js +1 -1
- package/dist/engine/renderers/Indicator/obv.js.map +1 -1
- package/dist/engine/renderers/Indicator/parkinson.js +1 -1
- package/dist/engine/renderers/Indicator/parkinson.js.map +1 -1
- package/dist/engine/renderers/Indicator/pivot.js +1 -1
- package/dist/engine/renderers/Indicator/pivot.js.map +1 -1
- package/dist/engine/renderers/Indicator/pvt.js +1 -1
- package/dist/engine/renderers/Indicator/pvt.js.map +1 -1
- package/dist/engine/renderers/Indicator/roc.js +1 -1
- package/dist/engine/renderers/Indicator/roc.js.map +1 -1
- package/dist/engine/renderers/Indicator/rsi.js +3 -3
- package/dist/engine/renderers/Indicator/rsi.js.map +1 -1
- package/dist/engine/renderers/Indicator/sar.js +2 -2
- package/dist/engine/renderers/Indicator/sar.js.map +1 -1
- package/dist/engine/renderers/Indicator/scale/atr_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/atr_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/cci_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/cci_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/fastk_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/fastk_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/indicator_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/indicator_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/indicator_scale.js +6 -6
- package/dist/engine/renderers/Indicator/scale/indicator_scale.js.map +1 -1
- package/dist/engine/renderers/Indicator/scale/kst_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/kst_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/macd_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/macd_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/mom_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/mom_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/rsi_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/rsi_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/stoch_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/stoch_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/volume_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/volume_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/scale/wmsr_scale.d.ts +1 -1
- package/dist/engine/renderers/Indicator/scale/wmsr_scale.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/shared/dashedLines.js +1 -1
- package/dist/engine/renderers/Indicator/shared/dashedLines.js.map +1 -1
- package/dist/engine/renderers/Indicator/shared/titleInfo.d.ts +1 -1
- package/dist/engine/renderers/Indicator/shared/titleInfo.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/shared/titleInfo.js +1 -1
- package/dist/engine/renderers/Indicator/shared/titleInfo.js.map +1 -1
- package/dist/engine/renderers/Indicator/shared/webglBand.d.ts +1 -1
- package/dist/engine/renderers/Indicator/shared/webglBand.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/stoch.js +2 -2
- package/dist/engine/renderers/Indicator/stoch.js.map +1 -1
- package/dist/engine/renderers/Indicator/structure.js +2 -2
- package/dist/engine/renderers/Indicator/structure.js.map +1 -1
- package/dist/engine/renderers/Indicator/supertrend.js +2 -2
- package/dist/engine/renderers/Indicator/supertrend.js.map +1 -1
- package/dist/engine/renderers/Indicator/tema.js +1 -1
- package/dist/engine/renderers/Indicator/tema.js.map +1 -1
- package/dist/engine/renderers/Indicator/trix.js +1 -1
- package/dist/engine/renderers/Indicator/trix.js.map +1 -1
- package/dist/engine/renderers/Indicator/vma.js +1 -1
- package/dist/engine/renderers/Indicator/vma.js.map +1 -1
- package/dist/engine/renderers/Indicator/volumeProfile.js +1 -1
- package/dist/engine/renderers/Indicator/volumeProfile.js.map +1 -1
- package/dist/engine/renderers/Indicator/vwap.js +1 -1
- package/dist/engine/renderers/Indicator/vwap.js.map +1 -1
- package/dist/engine/renderers/Indicator/wma.js +1 -1
- package/dist/engine/renderers/Indicator/wma.js.map +1 -1
- package/dist/engine/renderers/Indicator/wmsr.js +3 -3
- package/dist/engine/renderers/Indicator/wmsr.js.map +1 -1
- package/dist/engine/renderers/Indicator/zones.js +2 -2
- package/dist/engine/renderers/Indicator/zones.js.map +1 -1
- package/dist/engine/renderers/candle.d.ts +1 -1
- package/dist/engine/renderers/candle.d.ts.map +1 -1
- package/dist/engine/renderers/candle.js +9 -6
- package/dist/engine/renderers/candle.js.map +1 -1
- package/dist/engine/renderers/comparisonLine.d.ts +1 -1
- package/dist/engine/renderers/comparisonLine.d.ts.map +1 -1
- package/dist/engine/renderers/comparisonLine.js +1 -1
- package/dist/engine/renderers/comparisonLine.js.map +1 -1
- package/dist/engine/renderers/crosshair.d.ts +1 -1
- package/dist/engine/renderers/crosshair.d.ts.map +1 -1
- package/dist/engine/renderers/crosshair.js +3 -3
- package/dist/engine/renderers/crosshair.js.map +1 -1
- package/dist/engine/renderers/customMarkers.d.ts +1 -1
- package/dist/engine/renderers/customMarkers.d.ts.map +1 -1
- package/dist/engine/renderers/customMarkers.js +2 -2
- package/dist/engine/renderers/customMarkers.js.map +1 -1
- package/dist/engine/renderers/extremaMarkers.d.ts +1 -1
- package/dist/engine/renderers/extremaMarkers.d.ts.map +1 -1
- package/dist/engine/renderers/extremaMarkers.js +7 -6
- package/dist/engine/renderers/extremaMarkers.js.map +1 -1
- package/dist/engine/renderers/gridLines.d.ts +1 -1
- package/dist/engine/renderers/gridLines.d.ts.map +1 -1
- package/dist/engine/renderers/gridLines.js +10 -4
- package/dist/engine/renderers/gridLines.js.map +1 -1
- package/dist/engine/renderers/lastPrice.d.ts +1 -1
- package/dist/engine/renderers/lastPrice.d.ts.map +1 -1
- package/dist/engine/renderers/lastPrice.js +2 -2
- package/dist/engine/renderers/lastPrice.js.map +1 -1
- package/dist/engine/renderers/leftYAxis.d.ts +1 -1
- package/dist/engine/renderers/leftYAxis.d.ts.map +1 -1
- package/dist/engine/renderers/leftYAxis.js +6 -5
- package/dist/engine/renderers/leftYAxis.js.map +1 -1
- package/dist/engine/renderers/paneTitle.d.ts +1 -1
- package/dist/engine/renderers/paneTitle.d.ts.map +1 -1
- package/dist/engine/renderers/paneTitle.js +3 -3
- package/dist/engine/renderers/paneTitle.js.map +1 -1
- package/dist/engine/renderers/subVolume.js +10 -11
- package/dist/engine/renderers/subVolume.js.map +1 -1
- package/dist/engine/renderers/timeAxis.d.ts +1 -1
- package/dist/engine/renderers/timeAxis.d.ts.map +1 -1
- package/dist/engine/renderers/timeAxis.js +3 -3
- package/dist/engine/renderers/timeAxis.js.map +1 -1
- package/dist/engine/renderers/timeShare.d.ts +1 -1
- package/dist/engine/renderers/timeShare.d.ts.map +1 -1
- package/dist/engine/renderers/timeShare.js +2 -2
- package/dist/engine/renderers/timeShare.js.map +1 -1
- package/dist/engine/renderers/yAxis.d.ts +1 -1
- package/dist/engine/renderers/yAxis.d.ts.map +1 -1
- package/dist/engine/renderers/yAxis.js +6 -5
- package/dist/engine/renderers/yAxis.js.map +1 -1
- package/dist/engine/state/chartStateKernel.d.ts +69 -0
- package/dist/engine/state/chartStateKernel.d.ts.map +1 -0
- package/dist/engine/state/chartStateKernel.js +296 -0
- package/dist/engine/state/chartStateKernel.js.map +1 -0
- package/dist/engine/state/comparisonState.d.ts +21 -0
- package/dist/engine/state/comparisonState.d.ts.map +1 -0
- package/dist/engine/state/comparisonState.js +58 -0
- package/dist/engine/state/comparisonState.js.map +1 -0
- package/dist/engine/state/contentGeometry.d.ts +13 -0
- package/dist/engine/state/contentGeometry.d.ts.map +1 -0
- package/dist/engine/state/contentGeometry.js +22 -0
- package/dist/engine/state/contentGeometry.js.map +1 -0
- package/dist/engine/state/dataManagerState.d.ts +29 -0
- package/dist/engine/state/dataManagerState.d.ts.map +1 -0
- package/dist/engine/state/dataManagerState.js +66 -0
- package/dist/engine/state/dataManagerState.js.map +1 -0
- package/dist/engine/state/dataState.d.ts +32 -0
- package/dist/engine/state/dataState.d.ts.map +1 -0
- package/dist/engine/state/dataState.js +56 -0
- package/dist/engine/state/dataState.js.map +1 -0
- package/dist/engine/state/drawingState.d.ts +24 -0
- package/dist/engine/state/drawingState.d.ts.map +1 -0
- package/dist/engine/state/drawingState.js +55 -0
- package/dist/engine/state/drawingState.js.map +1 -0
- package/dist/engine/state/immutable.d.ts +10 -0
- package/dist/engine/state/immutable.d.ts.map +1 -0
- package/dist/engine/state/immutable.js +56 -0
- package/dist/engine/state/immutable.js.map +1 -0
- package/dist/engine/state/index.d.ts +17 -0
- package/dist/engine/state/index.d.ts.map +1 -0
- package/dist/engine/state/index.js +17 -0
- package/dist/engine/state/index.js.map +1 -0
- package/dist/engine/state/indicatorState.d.ts +22 -0
- package/dist/engine/state/indicatorState.d.ts.map +1 -0
- package/dist/engine/state/indicatorState.js +68 -0
- package/dist/engine/state/indicatorState.js.map +1 -0
- package/dist/engine/state/interactionState.d.ts +86 -0
- package/dist/engine/state/interactionState.d.ts.map +1 -0
- package/dist/engine/state/interactionState.js +212 -0
- package/dist/engine/state/interactionState.js.map +1 -0
- package/dist/engine/state/markerState.d.ts +16 -0
- package/dist/engine/state/markerState.d.ts.map +1 -0
- package/dist/engine/state/markerState.js +56 -0
- package/dist/engine/state/markerState.js.map +1 -0
- package/dist/engine/state/modeState.d.ts +14 -0
- package/dist/engine/state/modeState.d.ts.map +1 -0
- package/dist/engine/state/modeState.js +20 -0
- package/dist/engine/state/modeState.js.map +1 -0
- package/dist/engine/state/optionsState.d.ts +19 -0
- package/dist/engine/state/optionsState.d.ts.map +1 -0
- package/dist/engine/state/optionsState.js +21 -0
- package/dist/engine/state/optionsState.js.map +1 -0
- package/dist/engine/state/paneState.d.ts +23 -0
- package/dist/engine/state/paneState.d.ts.map +1 -0
- package/dist/engine/state/paneState.js +86 -0
- package/dist/engine/state/paneState.js.map +1 -0
- package/dist/engine/state/settingsState.d.ts +15 -0
- package/dist/engine/state/settingsState.d.ts.map +1 -0
- package/dist/engine/state/settingsState.js +48 -0
- package/dist/engine/state/settingsState.js.map +1 -0
- package/dist/engine/state/stateKernel.d.ts +72 -0
- package/dist/engine/state/stateKernel.d.ts.map +1 -0
- package/dist/engine/state/stateKernel.js +38 -0
- package/dist/engine/state/stateKernel.js.map +1 -0
- package/dist/engine/state/subPaneState.d.ts +23 -0
- package/dist/engine/state/subPaneState.d.ts.map +1 -0
- package/dist/engine/state/subPaneState.js +79 -0
- package/dist/engine/state/subPaneState.js.map +1 -0
- package/dist/engine/state/themeState.d.ts +13 -0
- package/dist/engine/state/themeState.d.ts.map +1 -0
- package/dist/engine/state/themeState.js +18 -0
- package/dist/engine/state/themeState.js.map +1 -0
- package/dist/engine/state/viewportState.d.ts +113 -0
- package/dist/engine/state/viewportState.d.ts.map +1 -0
- package/dist/engine/state/viewportState.js +352 -0
- package/dist/engine/state/viewportState.js.map +1 -0
- package/dist/engine/state/zoomState.d.ts +22 -0
- package/dist/engine/state/zoomState.d.ts.map +1 -0
- package/dist/engine/state/zoomState.js +54 -0
- package/dist/engine/state/zoomState.js.map +1 -0
- package/dist/engine/subPaneManager.d.ts +29 -31
- package/dist/engine/subPaneManager.d.ts.map +1 -1
- package/dist/engine/subPaneManager.js +199 -190
- package/dist/engine/subPaneManager.js.map +1 -1
- package/dist/engine/utils/chartZoomController.d.ts +13 -14
- package/dist/engine/utils/chartZoomController.d.ts.map +1 -1
- package/dist/engine/utils/chartZoomController.js +34 -30
- package/dist/engine/utils/chartZoomController.js.map +1 -1
- package/dist/engine/utils/zoom.d.ts +24 -2
- package/dist/engine/utils/zoom.d.ts.map +1 -1
- package/dist/engine/utils/zoom.js +22 -1
- package/dist/engine/utils/zoom.js.map +1 -1
- package/dist/engine/viewport/chartViewportManager.d.ts +7 -77
- package/dist/engine/viewport/chartViewportManager.d.ts.map +1 -1
- package/dist/engine/viewport/chartViewportManager.js +49 -227
- package/dist/engine/viewport/chartViewportManager.js.map +1 -1
- package/dist/engine/viewport/viewport.d.ts +1 -1
- package/dist/engine/viewport/viewport.d.ts.map +1 -1
- package/dist/features/alerts/createAlertController.d.ts.map +1 -0
- package/dist/features/alerts/createAlertController.js +257 -0
- package/dist/features/alerts/createAlertController.js.map +1 -0
- package/dist/features/alerts/index.d.ts.map +1 -0
- package/dist/features/alerts/index.js.map +1 -0
- package/dist/features/alerts/predicates.d.ts.map +1 -0
- package/dist/features/alerts/predicates.js.map +1 -0
- package/dist/features/alerts/rollingVolume.d.ts.map +1 -0
- package/dist/features/alerts/rollingVolume.js.map +1 -0
- package/dist/features/alerts/ruleSchema.d.ts.map +1 -0
- package/dist/features/alerts/ruleSchema.js.map +1 -0
- package/dist/features/alerts/types.d.ts +169 -0
- package/dist/features/alerts/types.d.ts.map +1 -0
- package/dist/features/alerts/types.js.map +1 -0
- package/dist/features/chartTypes/heikinAshi.d.ts.map +1 -0
- package/dist/features/chartTypes/heikinAshi.js.map +1 -0
- package/dist/features/chartTypes/index.d.ts.map +1 -0
- package/dist/features/chartTypes/index.js.map +1 -0
- package/dist/features/chartTypes/pointAndFigure.d.ts.map +1 -0
- package/dist/features/chartTypes/pointAndFigure.js +159 -0
- package/dist/features/chartTypes/pointAndFigure.js.map +1 -0
- package/dist/features/chartTypes/rangeBars.d.ts.map +1 -0
- package/dist/features/chartTypes/rangeBars.js +181 -0
- package/dist/features/chartTypes/rangeBars.js.map +1 -0
- package/dist/features/chartTypes/renko.d.ts.map +1 -0
- package/dist/features/chartTypes/renko.js +207 -0
- package/dist/features/chartTypes/renko.js.map +1 -0
- package/dist/features/chartTypes/types.d.ts.map +1 -0
- package/dist/features/chartTypes/types.js.map +1 -0
- package/dist/features/indicators/alma.d.ts.map +1 -0
- package/dist/features/indicators/alma.js +36 -0
- package/dist/features/indicators/alma.js.map +1 -0
- package/dist/features/indicators/awesomeOscillator.d.ts.map +1 -0
- package/dist/features/indicators/awesomeOscillator.js +36 -0
- package/dist/features/indicators/awesomeOscillator.js.map +1 -0
- package/dist/features/indicators/dpo.d.ts.map +1 -0
- package/dist/features/indicators/dpo.js +24 -0
- package/dist/features/indicators/dpo.js.map +1 -0
- package/dist/features/indicators/fisherTransform.d.ts.map +1 -0
- package/dist/features/indicators/fisherTransform.js +44 -0
- package/dist/features/indicators/fisherTransform.js.map +1 -0
- package/dist/features/indicators/frama.d.ts.map +1 -0
- package/dist/features/indicators/frama.js +61 -0
- package/dist/features/indicators/frama.js.map +1 -0
- package/dist/features/indicators/index.d.ts.map +1 -0
- package/dist/features/indicators/index.js.map +1 -0
- package/dist/features/indicators/lsma.d.ts.map +1 -0
- package/dist/features/indicators/lsma.js +37 -0
- package/dist/features/indicators/lsma.js.map +1 -0
- package/dist/features/indicators/schaffTrendCycle.d.ts.map +1 -0
- package/dist/features/indicators/schaffTrendCycle.js +70 -0
- package/dist/features/indicators/schaffTrendCycle.js.map +1 -0
- package/dist/features/indicators/stochRSI.d.ts.map +1 -0
- package/dist/features/indicators/stochRSI.js +86 -0
- package/dist/features/indicators/stochRSI.js.map +1 -0
- package/dist/features/indicators/t3.d.ts.map +1 -0
- package/dist/features/indicators/t3.js +60 -0
- package/dist/features/indicators/t3.js.map +1 -0
- package/dist/features/indicators/ultimateOscillator.d.ts.map +1 -0
- package/dist/features/indicators/ultimateOscillator.js +59 -0
- package/dist/features/indicators/ultimateOscillator.js.map +1 -0
- package/dist/features/indicators/vidya.d.ts.map +1 -0
- package/dist/features/indicators/vidya.js +54 -0
- package/dist/features/indicators/vidya.js.map +1 -0
- package/dist/features/indicators/zlema.d.ts.map +1 -0
- package/dist/features/indicators/zlema.js +26 -0
- package/dist/features/indicators/zlema.js.map +1 -0
- package/dist/features/input/gesture.d.ts +125 -0
- package/dist/features/input/gesture.d.ts.map +1 -0
- package/dist/features/input/gesture.js +245 -0
- package/dist/features/input/gesture.js.map +1 -0
- package/dist/features/input/index.d.ts.map +1 -0
- package/dist/features/input/index.js.map +1 -0
- package/dist/features/input/keyboard.d.ts +140 -0
- package/dist/features/input/keyboard.d.ts.map +1 -0
- package/dist/features/input/keyboard.js +260 -0
- package/dist/features/input/keyboard.js.map +1 -0
- package/dist/features/mcp/chartBridge.d.ts.map +1 -0
- package/dist/features/mcp/chartBridge.js +186 -0
- package/dist/features/mcp/chartBridge.js.map +1 -0
- package/dist/features/mcp/index.d.ts.map +1 -0
- package/dist/features/mcp/index.js.map +1 -0
- package/dist/features/mcp/types.d.ts.map +1 -0
- package/dist/features/mcp/types.js.map +1 -0
- package/dist/features/replay/createReplayController.d.ts.map +1 -0
- package/dist/features/replay/createReplayController.js +249 -0
- package/dist/features/replay/createReplayController.js.map +1 -0
- package/dist/features/replay/index.d.ts.map +1 -0
- package/dist/features/replay/index.js.map +1 -0
- package/dist/features/replay/timeline.d.ts.map +1 -0
- package/dist/features/replay/timeline.js.map +1 -0
- package/dist/features/replay/types.d.ts +94 -0
- package/dist/features/replay/types.d.ts.map +1 -0
- package/dist/features/replay/types.js.map +1 -0
- package/dist/features/semantic/controller.d.ts +34 -0
- package/dist/features/semantic/controller.d.ts.map +1 -0
- package/dist/features/semantic/controller.js +164 -0
- package/dist/features/semantic/controller.js.map +1 -0
- package/dist/features/semantic/drawShape.d.ts.map +1 -0
- package/dist/features/semantic/drawShape.js.map +1 -0
- package/dist/features/semantic/index.d.ts +7 -0
- package/dist/features/semantic/index.d.ts.map +1 -0
- package/dist/features/semantic/index.js.map +1 -0
- package/dist/features/semantic/types.d.ts +300 -0
- package/dist/features/semantic/types.d.ts.map +1 -0
- package/dist/features/semantic/types.js.map +1 -0
- package/dist/features/semantic/validator.d.ts +48 -0
- package/dist/features/semantic/validator.d.ts.map +1 -0
- package/dist/features/semantic/validator.js +288 -0
- package/dist/features/semantic/validator.js.map +1 -0
- package/dist/foundation/config/chartSettings.d.ts +144 -0
- package/dist/foundation/config/chartSettings.d.ts.map +1 -0
- package/dist/foundation/config/chartSettings.js +144 -0
- package/dist/foundation/config/chartSettings.js.map +1 -0
- package/dist/foundation/plugin/ConfigManager.d.ts.map +1 -0
- package/dist/foundation/plugin/ConfigManager.js.map +1 -0
- package/dist/foundation/plugin/EventBus.d.ts.map +1 -0
- package/dist/foundation/plugin/EventBus.js.map +1 -0
- package/dist/foundation/plugin/HookSystem.d.ts.map +1 -0
- package/dist/foundation/plugin/HookSystem.js.map +1 -0
- package/dist/foundation/plugin/PluginHost.d.ts.map +1 -0
- package/dist/foundation/plugin/PluginHost.js +200 -0
- package/dist/foundation/plugin/PluginHost.js.map +1 -0
- package/dist/foundation/plugin/PluginRegistry.d.ts.map +1 -0
- package/dist/foundation/plugin/PluginRegistry.js +81 -0
- package/dist/foundation/plugin/PluginRegistry.js.map +1 -0
- package/dist/foundation/plugin/StateStore.d.ts.map +1 -0
- package/dist/foundation/plugin/StateStore.js.map +1 -0
- package/dist/foundation/plugin/index.d.ts.map +1 -0
- package/dist/foundation/plugin/index.js.map +1 -0
- package/dist/foundation/plugin/rendererPluginManager.d.ts +86 -0
- package/dist/foundation/plugin/rendererPluginManager.d.ts.map +1 -0
- package/dist/foundation/plugin/rendererPluginManager.js +332 -0
- package/dist/foundation/plugin/rendererPluginManager.js.map +1 -0
- package/dist/foundation/plugin/rendererPluginManager.test.d.ts +2 -0
- package/dist/foundation/plugin/rendererPluginManager.test.d.ts.map +1 -0
- package/dist/foundation/plugin/rendererPluginManager.test.js +35 -0
- package/dist/foundation/plugin/rendererPluginManager.test.js.map +1 -0
- package/dist/foundation/plugin/stateKeys.d.ts.map +1 -0
- package/dist/foundation/plugin/stateKeys.js.map +1 -0
- package/dist/foundation/plugin/types.d.ts +480 -0
- package/dist/foundation/plugin/types.d.ts.map +1 -0
- package/dist/foundation/plugin/types.js.map +1 -0
- package/dist/foundation/reactivity/index.d.ts +3 -0
- package/dist/foundation/reactivity/index.d.ts.map +1 -0
- package/dist/foundation/reactivity/index.js +2 -0
- package/dist/foundation/reactivity/index.js.map +1 -0
- package/dist/foundation/reactivity/signal.d.ts +202 -0
- package/dist/foundation/reactivity/signal.d.ts.map +1 -0
- package/dist/foundation/reactivity/signal.js +268 -0
- package/dist/foundation/reactivity/signal.js.map +1 -0
- package/dist/foundation/tokens/colorPresetSettings.d.ts.map +1 -0
- package/dist/foundation/tokens/colorPresetSettings.js.map +1 -0
- package/dist/foundation/tokens/fonts.d.ts.map +1 -0
- package/dist/foundation/tokens/fonts.js.map +1 -0
- package/dist/foundation/tokens/index.d.ts.map +1 -0
- package/dist/foundation/tokens/index.js.map +1 -0
- package/dist/foundation/tokens/mergeTheme.d.ts.map +1 -0
- package/dist/foundation/tokens/mergeTheme.js.map +1 -0
- package/dist/foundation/tokens/theme-base.d.ts.map +1 -0
- package/dist/foundation/tokens/theme-base.js.map +1 -0
- package/dist/foundation/tokens/theme-china.d.ts +45 -0
- package/dist/foundation/tokens/theme-china.d.ts.map +1 -0
- package/dist/foundation/tokens/theme-china.js +115 -0
- package/dist/foundation/tokens/theme-china.js.map +1 -0
- package/dist/foundation/tokens/theme-dark.d.ts.map +1 -0
- package/dist/foundation/tokens/theme-dark.js.map +1 -0
- package/dist/foundation/tokens/theme-light.d.ts.map +1 -0
- package/dist/foundation/tokens/theme-light.js.map +1 -0
- package/dist/foundation/tokens/themeToCssVars.d.ts.map +1 -0
- package/dist/foundation/tokens/themeToCssVars.js +82 -0
- package/dist/foundation/tokens/themeToCssVars.js.map +1 -0
- package/dist/foundation/tokens/types.d.ts.map +1 -0
- package/dist/foundation/tokens/types.js.map +1 -0
- package/dist/foundation/types/kLine.d.ts +4 -0
- package/dist/foundation/types/kLine.d.ts.map +1 -0
- package/dist/foundation/types/kLine.js +15 -0
- package/dist/foundation/types/kLine.js.map +1 -0
- package/dist/foundation/types/price.d.ts +43 -0
- package/dist/foundation/types/price.d.ts.map +1 -0
- package/dist/foundation/types/price.js +27 -0
- package/dist/foundation/types/price.js.map +1 -0
- package/dist/foundation/types/volumePrice.d.ts.map +1 -0
- package/dist/foundation/types/volumePrice.js.map +1 -0
- package/dist/foundation/utils/dateFormat.d.ts.map +1 -0
- package/dist/foundation/utils/dateFormat.js.map +1 -0
- package/dist/foundation/utils/kLineDraw/axis.d.ts.map +1 -0
- package/dist/foundation/utils/kLineDraw/axis.js +223 -0
- package/dist/foundation/utils/kLineDraw/axis.js.map +1 -0
- package/dist/foundation/utils/pixelAlign.d.ts.map +1 -0
- package/dist/foundation/utils/pixelAlign.js.map +1 -0
- package/dist/foundation/utils/priceToY.d.ts.map +1 -0
- package/dist/foundation/utils/priceToY.js.map +1 -0
- package/dist/foundation/utils/uuid.d.ts.map +1 -0
- package/dist/foundation/utils/uuid.js.map +1 -0
- package/dist/foundation/utils/viewportSide.d.ts +2 -0
- package/dist/foundation/utils/viewportSide.d.ts.map +1 -0
- package/dist/foundation/utils/viewportSide.js +4 -0
- package/dist/foundation/utils/viewportSide.js.map +1 -0
- package/dist/foundation/utils/volumePrice.d.ts.map +1 -0
- package/dist/foundation/utils/volumePrice.js.map +1 -0
- package/dist/index.d.ts +15 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -13
- package/dist/index.js.map +1 -1
- package/dist/rendering/render/Renderer.d.ts.map +1 -0
- package/dist/rendering/render/Renderer.js.map +1 -0
- package/dist/rendering/render/SurfaceBackend.d.ts.map +1 -0
- package/dist/rendering/render/SurfaceBackend.js.map +1 -0
- package/dist/rendering/render/createWebGLRenderer.d.ts +5 -0
- package/dist/rendering/render/createWebGLRenderer.d.ts.map +1 -0
- package/dist/rendering/render/createWebGLRenderer.js +233 -0
- package/dist/rendering/render/createWebGLRenderer.js.map +1 -0
- package/dist/rendering/render/createWebGLSurfaceBackend.d.ts +4 -0
- package/dist/rendering/render/createWebGLSurfaceBackend.d.ts.map +1 -0
- package/dist/rendering/render/createWebGLSurfaceBackend.js.map +1 -0
- package/dist/rendering/render/index.d.ts.map +1 -0
- package/dist/rendering/render/index.js.map +1 -0
- package/dist/rendering/renderer-tier/detectRendererTier.d.ts.map +1 -0
- package/dist/rendering/renderer-tier/detectRendererTier.js +143 -0
- package/dist/rendering/renderer-tier/detectRendererTier.js.map +1 -0
- package/dist/rendering/renderer-tier/index.d.ts.map +1 -0
- package/dist/rendering/renderer-tier/index.js.map +1 -0
- package/dist/rendering/renderer-tier/selectBackend.d.ts.map +1 -0
- package/dist/rendering/renderer-tier/selectBackend.js +109 -0
- package/dist/rendering/renderer-tier/selectBackend.js.map +1 -0
- package/dist/rendering/renderer-tier/types.d.ts.map +1 -0
- package/dist/rendering/renderer-tier/types.js.map +1 -0
- package/dist/rendering/scene/createLayerFromPlugin.d.ts +4 -0
- package/dist/rendering/scene/createLayerFromPlugin.d.ts.map +1 -0
- package/dist/rendering/scene/createLayerFromPlugin.js +45 -0
- package/dist/rendering/scene/createLayerFromPlugin.js.map +1 -0
- package/dist/rendering/scene/createScene.d.ts.map +1 -0
- package/dist/rendering/scene/createScene.js +117 -0
- package/dist/rendering/scene/createScene.js.map +1 -0
- package/dist/rendering/scene/index.d.ts.map +1 -0
- package/dist/rendering/scene/index.js.map +1 -0
- package/dist/rendering/scene/layerRegistry.d.ts.map +1 -0
- package/dist/rendering/scene/layerRegistry.js +43 -0
- package/dist/rendering/scene/layerRegistry.js.map +1 -0
- package/dist/rendering/scene/types.d.ts +133 -0
- package/dist/rendering/scene/types.d.ts.map +1 -0
- package/dist/rendering/scene/types.js.map +1 -0
- package/dist/rendering/scheduler/createFrameBudget.d.ts +91 -0
- package/dist/rendering/scheduler/createFrameBudget.d.ts.map +1 -0
- package/dist/rendering/scheduler/createFrameBudget.js +232 -0
- package/dist/rendering/scheduler/createFrameBudget.js.map +1 -0
- package/dist/rendering/scheduler/index.d.ts.map +1 -0
- package/dist/rendering/scheduler/index.js.map +1 -0
- package/dist/scale/createPriceScale.js +1 -1
- package/dist/scale/createPriceScale.js.map +1 -1
- package/dist/scale/createTimeScale.js +1 -1
- package/dist/scale/createTimeScale.js.map +1 -1
- package/dist/scale/types.d.ts +1 -1
- package/dist/scale/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +12 -12
- package/src/__bench__/indicators.bench.ts +12 -12
- package/src/__bench__/signal.bench.ts +1 -1
- package/src/__tests__/depthPipeline.test.ts +2 -2
- package/src/__tests__/signal.test.ts +1 -1
- package/src/__tests__/stateKernel.test.ts +293 -0
- package/src/__tests__/stateKernel.types.test.ts +45 -0
- package/src/components/anchoredVwap/createAnchoredVwapController.ts +1 -1
- package/src/components/anchoredVwap/types.ts +1 -1
- package/src/components/crosshairSync/createCrosshairSync.ts +1 -1
- package/src/components/footprint/createFootprintController.ts +1 -1
- package/src/components/footprint/types.ts +1 -1
- package/src/components/mtfOverlay/createMtfController.ts +2 -2
- package/src/components/mtfOverlay/types.ts +1 -1
- package/src/components/orderBookHeatmap/createHeatmapController.ts +1 -1
- package/src/components/orderBookHeatmap/createOrderBookState.ts +1 -1
- package/src/components/orderBookHeatmap/types.ts +1 -1
- package/src/components/volumeProfile/createVolumeProfileController.ts +1 -1
- package/src/components/volumeProfile/types.ts +1 -1
- package/src/controllers/createChartController.ts +101 -162
- package/src/controllers/createDrawingController.ts +1 -1
- package/src/controllers/createIndicatorSelectorController.ts +1 -1
- package/src/controllers/createToolbarController.ts +1 -1
- package/src/controllers/index.ts +2 -8
- package/src/controllers/types.ts +50 -23
- package/src/data/__tests__/dataBuffer.test.ts +576 -0
- package/src/data/__tests__/fetchScheduler.test.ts +26 -0
- package/src/data/baostock.ts +71 -0
- package/src/data/dataBuffer.effects.ts +118 -0
- package/src/data/dataBuffer.ts +228 -0
- package/src/data/dataBufferTypes.ts +51 -0
- package/src/data/fetchScheduler.ts +65 -0
- package/src/data/fetcherDefinitionRegistry.ts +80 -0
- package/src/data/gotdx.ts +224 -0
- package/src/data/kLineDataStore.ts +96 -0
- package/src/data/timeShareBuffer.ts +135 -0
- package/src/data/tradingview.ts +79 -0
- package/src/engine/__tests__/chart.dpr.test.ts +168 -3
- package/src/engine/__tests__/subPaneManager.test.ts +118 -121
- package/src/engine/chart.ts +512 -301
- package/src/engine/chartTypes.ts +1 -1
- package/src/engine/controller/__tests__/interaction.dpr.test.ts +173 -13
- package/src/engine/controller/interaction.ts +207 -230
- package/src/engine/controller/markerInteraction.ts +20 -80
- package/src/engine/controller/tooltipPosition.ts +22 -1
- package/src/engine/data/__tests__/chartDataManager.incrementalLoad.test.ts +128 -0
- package/src/engine/data/__tests__/comparisonManager.test.ts +110 -0
- package/src/engine/data/__tests__/contentGeometry.parity.test.ts +70 -0
- package/src/engine/data/__tests__/scrollCompensator.geometry.test.ts +184 -0
- package/src/engine/data/chartDataManager.ts +362 -202
- package/src/engine/data/comparisonManager.ts +92 -174
- package/src/engine/data/fetchBatchScheduler.ts +1 -1
- package/src/engine/data/incrementalLoadHint.ts +96 -63
- package/src/engine/data/scrollCompensator.ts +11 -32
- package/src/engine/draw/__tests__/pixelAlign.spec.ts +1 -1
- package/src/engine/drawing/DragHandler.ts +1 -1
- package/src/engine/drawing/DrawingState.ts +32 -11
- package/src/engine/drawing/HitTester.ts +1 -1
- package/src/engine/drawing/PreviewRenderer.ts +1 -1
- package/src/engine/drawing/__tests__/drawingState.workCopy.test.ts +78 -0
- package/src/engine/drawing/__tests__/drawingStore.projection.test.ts +38 -0
- package/src/engine/drawing/coordinateUtils.ts +1 -1
- package/src/engine/drawing/index.ts +18 -36
- package/src/engine/drawing/interaction.ts +27 -23
- package/src/engine/drawing/plugin.ts +5 -5
- package/src/engine/drawing/toolConfig.ts +1 -1
- package/src/engine/indicators/__tests__/chartIndicatorManager.test.ts +105 -4
- package/src/engine/indicators/calculators/bands.ts +1 -1
- package/src/engine/indicators/calculators/movingAverages.ts +1 -1
- package/src/engine/indicators/calculators/oscillators.ts +1 -1
- package/src/engine/indicators/calculators/patterns.ts +1 -1
- package/src/engine/indicators/calculators/volatility.ts +1 -1
- package/src/engine/indicators/calculators/volume.ts +1 -1
- package/src/engine/indicators/chartIndicatorManager.ts +197 -192
- package/src/engine/indicators/indicator.worker.ts +1 -1
- package/src/engine/indicators/indicatorDefinitionRegistry.ts +2 -2
- package/src/engine/indicators/indicatorMetadata.ts +2 -2
- package/src/engine/indicators/indicatorRuntime.ts +1 -1
- package/src/engine/indicators/scheduler.ts +67 -18
- package/src/engine/indicators/soa.ts +1 -1
- package/src/engine/indicators/state/atrState.ts +2 -2
- package/src/engine/indicators/state/bollState.ts +2 -2
- package/src/engine/indicators/state/cciState.ts +2 -2
- package/src/engine/indicators/state/chaikinVolState.ts +2 -2
- package/src/engine/indicators/state/cmfState.ts +2 -2
- package/src/engine/indicators/state/demaState.ts +2 -2
- package/src/engine/indicators/state/donchianState.ts +2 -2
- package/src/engine/indicators/state/eneState.ts +2 -2
- package/src/engine/indicators/state/expmaState.ts +2 -2
- package/src/engine/indicators/state/fastkState.ts +2 -2
- package/src/engine/indicators/state/fibState.ts +2 -2
- package/src/engine/indicators/state/hmaState.ts +2 -2
- package/src/engine/indicators/state/hvState.ts +2 -2
- package/src/engine/indicators/state/ichimokuState.ts +2 -2
- package/src/engine/indicators/state/kamaState.ts +2 -2
- package/src/engine/indicators/state/keltnerState.ts +2 -2
- package/src/engine/indicators/state/kstState.ts +2 -2
- package/src/engine/indicators/state/maState.ts +2 -2
- package/src/engine/indicators/state/macdState.ts +1 -1
- package/src/engine/indicators/state/mfiState.ts +2 -2
- package/src/engine/indicators/state/momState.ts +2 -2
- package/src/engine/indicators/state/obvState.ts +2 -2
- package/src/engine/indicators/state/parkinsonState.ts +2 -2
- package/src/engine/indicators/state/pivotState.ts +2 -2
- package/src/engine/indicators/state/pvtState.ts +2 -2
- package/src/engine/indicators/state/rocState.ts +2 -2
- package/src/engine/indicators/state/rsiState.ts +2 -2
- package/src/engine/indicators/state/sarState.ts +2 -2
- package/src/engine/indicators/state/stochState.ts +2 -2
- package/src/engine/indicators/state/structureState.ts +2 -2
- package/src/engine/indicators/state/supertrendState.ts +2 -2
- package/src/engine/indicators/state/temaState.ts +2 -2
- package/src/engine/indicators/state/trixState.ts +2 -2
- package/src/engine/indicators/state/vmaState.ts +2 -2
- package/src/engine/indicators/state/volumeProfileState.ts +2 -2
- package/src/engine/indicators/state/vwapState.ts +2 -2
- package/src/engine/indicators/state/wmaState.ts +2 -2
- package/src/engine/indicators/state/wmsrState.ts +2 -2
- package/src/engine/indicators/state/zonesState.ts +2 -2
- package/src/engine/indicators/workerProtocol.ts +1 -1
- package/src/engine/layout/__tests__/paneRatioMath.test.ts +34 -0
- package/src/engine/layout/chartPaneLayout.ts +126 -45
- package/src/engine/layout/pane.ts +2 -2
- package/src/engine/layout/paneRatioMath.ts +39 -0
- package/src/engine/marker/__tests__/markerManager.customMarkers.test.ts +64 -0
- package/src/engine/marker/registry.ts +18 -28
- package/src/engine/modes/timeShareMode.ts +1 -1
- package/src/engine/render/chartRenderer.ts +70 -45
- package/src/engine/render/layers/candleLayer.ts +3 -3
- package/src/engine/render/layers/comparisonLineLayer.ts +3 -3
- package/src/engine/render/layers/crosshairLayer.ts +3 -3
- package/src/engine/render/layers/customMarkersLayer.ts +3 -3
- package/src/engine/render/layers/extremaMarkersLayer.ts +3 -3
- package/src/engine/render/layers/gridLinesLayer.ts +3 -3
- package/src/engine/render/layers/lastPriceLabelLayer.ts +3 -3
- package/src/engine/render/layers/lastPriceLineLayer.ts +3 -3
- package/src/engine/render/layers/leftYAxisLayer.ts +3 -3
- package/src/engine/render/layers/mainIndicatorLegendLayer.ts +3 -3
- package/src/engine/render/layers/yAxisLayer.ts +3 -3
- package/src/engine/renderers/Indicator/__tests__/createSubIndicatorRenderer.test.ts +1 -1
- package/src/engine/renderers/Indicator/atr.ts +7 -3
- package/src/engine/renderers/Indicator/boll.ts +9 -5
- package/src/engine/renderers/Indicator/cci.ts +7 -3
- package/src/engine/renderers/Indicator/chaikinVol.ts +6 -2
- package/src/engine/renderers/Indicator/cmf.ts +6 -2
- package/src/engine/renderers/Indicator/dema.ts +6 -2
- package/src/engine/renderers/Indicator/donchian.ts +7 -3
- package/src/engine/renderers/Indicator/ene.ts +9 -5
- package/src/engine/renderers/Indicator/expma.ts +9 -5
- package/src/engine/renderers/Indicator/fastk.ts +7 -3
- package/src/engine/renderers/Indicator/fib.ts +6 -2
- package/src/engine/renderers/Indicator/hma.ts +6 -2
- package/src/engine/renderers/Indicator/hv.ts +7 -3
- package/src/engine/renderers/Indicator/ichimoku.ts +8 -4
- package/src/engine/renderers/Indicator/index.ts +1 -1
- package/src/engine/renderers/Indicator/kama.ts +6 -2
- package/src/engine/renderers/Indicator/keltner.ts +7 -3
- package/src/engine/renderers/Indicator/kst.ts +8 -5
- package/src/engine/renderers/Indicator/ma.ts +9 -5
- package/src/engine/renderers/Indicator/macd.ts +9 -5
- package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +9 -5
- package/src/engine/renderers/Indicator/mfi.ts +6 -2
- package/src/engine/renderers/Indicator/mom.ts +8 -4
- package/src/engine/renderers/Indicator/obv.ts +6 -2
- package/src/engine/renderers/Indicator/parkinson.ts +7 -3
- package/src/engine/renderers/Indicator/pivot.ts +6 -2
- package/src/engine/renderers/Indicator/pvt.ts +6 -2
- package/src/engine/renderers/Indicator/roc.ts +7 -3
- package/src/engine/renderers/Indicator/rsi.ts +9 -6
- package/src/engine/renderers/Indicator/sar.ts +8 -4
- package/src/engine/renderers/Indicator/scale/atr_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/cci_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/fastk_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/indicator_scale.ts +10 -7
- package/src/engine/renderers/Indicator/scale/kst_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/macd_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/mom_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/rsi_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/stoch_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/volume_scale.ts +1 -1
- package/src/engine/renderers/Indicator/scale/wmsr_scale.ts +1 -1
- package/src/engine/renderers/Indicator/shared/dashedLines.ts +1 -1
- package/src/engine/renderers/Indicator/shared/titleInfo.ts +3 -3
- package/src/engine/renderers/Indicator/shared/webglBand.ts +1 -1
- package/src/engine/renderers/Indicator/stoch.ts +8 -5
- package/src/engine/renderers/Indicator/structure.ts +8 -4
- package/src/engine/renderers/Indicator/supertrend.ts +8 -4
- package/src/engine/renderers/Indicator/tema.ts +6 -2
- package/src/engine/renderers/Indicator/trix.ts +8 -4
- package/src/engine/renderers/Indicator/vma.ts +6 -2
- package/src/engine/renderers/Indicator/volumeProfile.ts +8 -4
- package/src/engine/renderers/Indicator/vwap.ts +6 -2
- package/src/engine/renderers/Indicator/wma.ts +6 -2
- package/src/engine/renderers/Indicator/wmsr.ts +8 -4
- package/src/engine/renderers/Indicator/zones.ts +7 -3
- package/src/engine/renderers/candle.ts +11 -9
- package/src/engine/renderers/comparisonLine.ts +3 -3
- package/src/engine/renderers/crosshair.ts +4 -4
- package/src/engine/renderers/customMarkers.ts +9 -5
- package/src/engine/renderers/extremaMarkers.ts +40 -14
- package/src/engine/renderers/gridLines.ts +15 -8
- package/src/engine/renderers/lastPrice.ts +4 -4
- package/src/engine/renderers/leftYAxis.ts +7 -6
- package/src/engine/renderers/paneTitle.ts +9 -5
- package/src/engine/renderers/subVolume.ts +15 -16
- package/src/engine/renderers/timeAxis.ts +9 -5
- package/src/engine/renderers/timeShare.ts +4 -4
- package/src/engine/renderers/yAxis.ts +8 -7
- package/src/engine/state/__tests__/comparisonState.test.ts +104 -0
- package/src/engine/state/__tests__/dataState.test.ts +49 -0
- package/src/engine/state/__tests__/drawingState.test.ts +79 -0
- package/src/engine/state/__tests__/indicatorState.test.ts +64 -0
- package/src/engine/state/__tests__/markerState.test.ts +75 -0
- package/src/engine/state/__tests__/modeState.test.ts +20 -0
- package/src/engine/state/__tests__/paneState.test.ts +73 -0
- package/src/engine/state/__tests__/settingsState.test.ts +46 -0
- package/src/engine/state/__tests__/subPaneState.test.ts +152 -0
- package/src/engine/state/__tests__/zoomState.test.ts +32 -0
- package/src/engine/state/chartStateKernel.ts +393 -0
- package/src/engine/state/comparisonState.ts +77 -0
- package/src/engine/state/contentGeometry.ts +33 -0
- package/src/engine/state/dataManagerState.ts +88 -0
- package/src/engine/state/dataState.ts +80 -0
- package/src/engine/state/drawingState.ts +64 -0
- package/src/engine/state/immutable.ts +55 -0
- package/src/engine/state/index.ts +33 -0
- package/src/engine/state/indicatorState.ts +80 -0
- package/src/engine/state/interactionState.ts +295 -0
- package/src/engine/state/markerState.ts +61 -0
- package/src/engine/state/modeState.ts +24 -0
- package/src/engine/state/optionsState.ts +27 -0
- package/src/engine/state/paneState.ts +99 -0
- package/src/engine/state/settingsState.ts +55 -0
- package/src/engine/state/stateKernel.ts +79 -0
- package/src/engine/state/subPaneState.ts +92 -0
- package/src/engine/state/themeState.ts +23 -0
- package/src/engine/state/viewportState.ts +452 -0
- package/src/engine/state/zoomState.ts +70 -0
- package/src/engine/subPaneManager.ts +225 -265
- package/src/engine/utils/__tests__/kGap.derive.test.ts +15 -0
- package/src/engine/utils/chartZoomController.ts +43 -46
- package/src/engine/utils/zoom.ts +47 -3
- package/src/engine/viewport/chartViewportManager.ts +55 -270
- package/src/engine/viewport/viewport.ts +1 -1
- package/src/features/alerts/createAlertController.ts +294 -0
- package/src/features/alerts/types.ts +177 -0
- package/src/features/chartTypes/pointAndFigure.ts +284 -0
- package/src/features/chartTypes/rangeBars.ts +303 -0
- package/src/features/chartTypes/renko.ts +317 -0
- package/src/features/indicators/alma.ts +64 -0
- package/src/features/indicators/awesomeOscillator.ts +57 -0
- package/src/features/indicators/dpo.ts +38 -0
- package/src/features/indicators/fisherTransform.ts +66 -0
- package/src/features/indicators/frama.ts +94 -0
- package/src/features/indicators/lsma.ts +59 -0
- package/src/features/indicators/schaffTrendCycle.ts +94 -0
- package/src/features/indicators/stochRSI.ts +108 -0
- package/src/features/indicators/t3.ts +95 -0
- package/src/features/indicators/ultimateOscillator.ts +86 -0
- package/src/features/indicators/vidya.ts +81 -0
- package/src/features/indicators/zlema.ts +42 -0
- package/src/features/input/__tests__/gesture.test.ts +271 -0
- package/src/features/input/__tests__/keyboard.test.ts +310 -0
- package/src/features/input/gesture.ts +351 -0
- package/src/features/input/keyboard.ts +371 -0
- package/src/features/mcp/chartBridge.ts +258 -0
- package/src/features/replay/createReplayController.ts +295 -0
- package/src/features/replay/types.ts +105 -0
- package/src/features/semantic/controller.ts +232 -0
- package/src/features/semantic/index.ts +36 -0
- package/src/features/semantic/types.ts +253 -0
- package/src/features/semantic/validator.ts +363 -0
- package/src/foundation/config/chartSettings.ts +179 -0
- package/src/foundation/plugin/PluginHost.ts +265 -0
- package/src/foundation/plugin/PluginRegistry.ts +94 -0
- package/src/foundation/plugin/rendererPluginManager.test.ts +41 -0
- package/src/foundation/plugin/rendererPluginManager.ts +389 -0
- package/src/foundation/plugin/types.ts +565 -0
- package/src/foundation/reactivity/index.ts +17 -0
- package/src/foundation/reactivity/signal.ts +361 -0
- package/src/foundation/tokens/theme-china.ts +132 -0
- package/src/foundation/tokens/themeToCssVars.ts +139 -0
- package/src/foundation/types/kLine.ts +16 -0
- package/src/foundation/types/price.ts +77 -0
- package/src/foundation/utils/kLineDraw/axis.ts +540 -0
- package/src/foundation/utils/viewportSide.ts +3 -0
- package/src/index.ts +15 -15
- package/src/rendering/render/__tests__/webglRenderer.test.ts +364 -0
- package/src/rendering/render/createWebGLRenderer.ts +289 -0
- package/src/rendering/render/createWebGLSurfaceBackend.ts +44 -0
- package/src/rendering/renderer-tier/__tests__/detectRendererTier.test.ts +177 -0
- package/src/rendering/renderer-tier/__tests__/selectBackend.test.ts +249 -0
- package/src/rendering/renderer-tier/detectRendererTier.ts +160 -0
- package/src/rendering/renderer-tier/selectBackend.ts +193 -0
- package/src/rendering/scene/__tests__/layerFromPlugin.test.ts +244 -0
- package/src/rendering/scene/createLayerFromPlugin.ts +48 -0
- package/src/rendering/scene/createScene.ts +121 -0
- package/src/rendering/scene/layerRegistry.ts +115 -0
- package/src/rendering/scene/types.ts +148 -0
- package/src/rendering/scheduler/__tests__/createFrameBudget.test.ts +319 -0
- package/src/rendering/scheduler/createFrameBudget.ts +316 -0
- package/src/scale/createPriceScale.ts +2 -2
- package/src/scale/createTimeScale.ts +1 -1
- package/src/scale/types.ts +1 -1
- package/src/version.ts +1 -1
- package/dist/alerts/createAlertController.d.ts.map +0 -1
- package/dist/alerts/createAlertController.js +0 -257
- package/dist/alerts/createAlertController.js.map +0 -1
- package/dist/alerts/index.d.ts.map +0 -1
- package/dist/alerts/index.js.map +0 -1
- package/dist/alerts/predicates.d.ts.map +0 -1
- package/dist/alerts/predicates.js.map +0 -1
- package/dist/alerts/rollingVolume.d.ts.map +0 -1
- package/dist/alerts/rollingVolume.js.map +0 -1
- package/dist/alerts/ruleSchema.d.ts.map +0 -1
- package/dist/alerts/ruleSchema.js.map +0 -1
- package/dist/alerts/types.d.ts +0 -169
- package/dist/alerts/types.d.ts.map +0 -1
- package/dist/alerts/types.js.map +0 -1
- package/dist/chartTypes/heikinAshi.d.ts.map +0 -1
- package/dist/chartTypes/heikinAshi.js.map +0 -1
- package/dist/chartTypes/index.d.ts.map +0 -1
- package/dist/chartTypes/index.js.map +0 -1
- package/dist/chartTypes/pointAndFigure.d.ts.map +0 -1
- package/dist/chartTypes/pointAndFigure.js +0 -159
- package/dist/chartTypes/pointAndFigure.js.map +0 -1
- package/dist/chartTypes/rangeBars.d.ts.map +0 -1
- package/dist/chartTypes/rangeBars.js +0 -181
- package/dist/chartTypes/rangeBars.js.map +0 -1
- package/dist/chartTypes/renko.d.ts.map +0 -1
- package/dist/chartTypes/renko.js +0 -207
- package/dist/chartTypes/renko.js.map +0 -1
- package/dist/chartTypes/types.d.ts.map +0 -1
- package/dist/chartTypes/types.js.map +0 -1
- package/dist/config/chartSettings.d.ts +0 -131
- package/dist/config/chartSettings.d.ts.map +0 -1
- package/dist/config/chartSettings.js +0 -133
- package/dist/config/chartSettings.js.map +0 -1
- package/dist/data-fetchers/baostock.d.ts.map +0 -1
- package/dist/data-fetchers/baostock.js +0 -103
- package/dist/data-fetchers/baostock.js.map +0 -1
- package/dist/data-fetchers/binance.d.ts.map +0 -1
- package/dist/data-fetchers/binance.js.map +0 -1
- package/dist/data-fetchers/dataBuffer.d.ts +0 -32
- package/dist/data-fetchers/dataBuffer.d.ts.map +0 -1
- package/dist/data-fetchers/dataBuffer.effects.d.ts +0 -21
- package/dist/data-fetchers/dataBuffer.effects.d.ts.map +0 -1
- package/dist/data-fetchers/dataBuffer.effects.js.map +0 -1
- package/dist/data-fetchers/dataBuffer.js +0 -159
- package/dist/data-fetchers/dataBuffer.js.map +0 -1
- package/dist/data-fetchers/dataBufferTypes.d.ts +0 -42
- package/dist/data-fetchers/dataBufferTypes.d.ts.map +0 -1
- package/dist/data-fetchers/dataBufferTypes.js.map +0 -1
- package/dist/data-fetchers/depthConnector.d.ts.map +0 -1
- package/dist/data-fetchers/depthConnector.js.map +0 -1
- package/dist/data-fetchers/depthTypes.d.ts.map +0 -1
- package/dist/data-fetchers/depthTypes.js.map +0 -1
- package/dist/data-fetchers/fetchScheduler.d.ts +0 -12
- package/dist/data-fetchers/fetchScheduler.d.ts.map +0 -1
- package/dist/data-fetchers/fetchScheduler.js +0 -47
- package/dist/data-fetchers/fetchScheduler.js.map +0 -1
- package/dist/data-fetchers/fetcherDefinitionRegistry.d.ts.map +0 -1
- package/dist/data-fetchers/fetcherDefinitionRegistry.js.map +0 -1
- package/dist/data-fetchers/gotdx.d.ts.map +0 -1
- package/dist/data-fetchers/gotdx.js +0 -217
- package/dist/data-fetchers/gotdx.js.map +0 -1
- package/dist/data-fetchers/hundred-mock.d.ts.map +0 -1
- package/dist/data-fetchers/hundred-mock.js.map +0 -1
- package/dist/data-fetchers/index.d.ts.map +0 -1
- package/dist/data-fetchers/index.js.map +0 -1
- package/dist/data-fetchers/kLineDataStore.d.ts +0 -21
- package/dist/data-fetchers/kLineDataStore.d.ts.map +0 -1
- package/dist/data-fetchers/kLineDataStore.js +0 -77
- package/dist/data-fetchers/kLineDataStore.js.map +0 -1
- package/dist/data-fetchers/router.d.ts.map +0 -1
- package/dist/data-fetchers/router.js.map +0 -1
- package/dist/data-fetchers/thousand-mock.d.ts.map +0 -1
- package/dist/data-fetchers/thousand-mock.js.map +0 -1
- package/dist/data-fetchers/timeKeyIndex.d.ts.map +0 -1
- package/dist/data-fetchers/timeKeyIndex.js.map +0 -1
- package/dist/data-fetchers/timeShareBuffer.d.ts +0 -27
- package/dist/data-fetchers/timeShareBuffer.d.ts.map +0 -1
- package/dist/data-fetchers/timeShareBuffer.js +0 -101
- package/dist/data-fetchers/timeShareBuffer.js.map +0 -1
- package/dist/data-fetchers/tradingview.d.ts.map +0 -1
- package/dist/data-fetchers/tradingview.js +0 -116
- package/dist/data-fetchers/tradingview.js.map +0 -1
- package/dist/data-fetchers/types.d.ts.map +0 -1
- package/dist/data-fetchers/types.js.map +0 -1
- package/dist/engine/draw/pixelAlign.d.ts.map +0 -1
- package/dist/engine/draw/pixelAlign.js.map +0 -1
- package/dist/engine/indicators/calculators.d.ts +0 -2
- package/dist/engine/indicators/calculators.d.ts.map +0 -1
- package/dist/engine/indicators/calculators.js +0 -2
- package/dist/engine/indicators/calculators.js.map +0 -1
- package/dist/engine/theme/fonts.d.ts.map +0 -1
- package/dist/engine/theme/fonts.js.map +0 -1
- package/dist/indicators/alma.d.ts.map +0 -1
- package/dist/indicators/alma.js +0 -36
- package/dist/indicators/alma.js.map +0 -1
- package/dist/indicators/awesomeOscillator.d.ts.map +0 -1
- package/dist/indicators/awesomeOscillator.js +0 -36
- package/dist/indicators/awesomeOscillator.js.map +0 -1
- package/dist/indicators/dpo.d.ts.map +0 -1
- package/dist/indicators/dpo.js +0 -24
- package/dist/indicators/dpo.js.map +0 -1
- package/dist/indicators/fisherTransform.d.ts.map +0 -1
- package/dist/indicators/fisherTransform.js +0 -44
- package/dist/indicators/fisherTransform.js.map +0 -1
- package/dist/indicators/frama.d.ts.map +0 -1
- package/dist/indicators/frama.js +0 -61
- package/dist/indicators/frama.js.map +0 -1
- package/dist/indicators/index.d.ts.map +0 -1
- package/dist/indicators/index.js.map +0 -1
- package/dist/indicators/lsma.d.ts.map +0 -1
- package/dist/indicators/lsma.js +0 -37
- package/dist/indicators/lsma.js.map +0 -1
- package/dist/indicators/schaffTrendCycle.d.ts.map +0 -1
- package/dist/indicators/schaffTrendCycle.js +0 -70
- package/dist/indicators/schaffTrendCycle.js.map +0 -1
- package/dist/indicators/stochRSI.d.ts.map +0 -1
- package/dist/indicators/stochRSI.js +0 -86
- package/dist/indicators/stochRSI.js.map +0 -1
- package/dist/indicators/t3.d.ts.map +0 -1
- package/dist/indicators/t3.js +0 -60
- package/dist/indicators/t3.js.map +0 -1
- package/dist/indicators/ultimateOscillator.d.ts.map +0 -1
- package/dist/indicators/ultimateOscillator.js +0 -59
- package/dist/indicators/ultimateOscillator.js.map +0 -1
- package/dist/indicators/vidya.d.ts.map +0 -1
- package/dist/indicators/vidya.js +0 -54
- package/dist/indicators/vidya.js.map +0 -1
- package/dist/indicators/zlema.d.ts.map +0 -1
- package/dist/indicators/zlema.js +0 -26
- package/dist/indicators/zlema.js.map +0 -1
- package/dist/input/gesture.d.ts +0 -125
- package/dist/input/gesture.d.ts.map +0 -1
- package/dist/input/gesture.js +0 -245
- package/dist/input/gesture.js.map +0 -1
- package/dist/input/index.d.ts.map +0 -1
- package/dist/input/index.js.map +0 -1
- package/dist/input/keyboard.d.ts +0 -140
- package/dist/input/keyboard.d.ts.map +0 -1
- package/dist/input/keyboard.js +0 -260
- package/dist/input/keyboard.js.map +0 -1
- package/dist/mcp/chartBridge.d.ts.map +0 -1
- package/dist/mcp/chartBridge.js +0 -186
- package/dist/mcp/chartBridge.js.map +0 -1
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/index.js.map +0 -1
- package/dist/mcp/types.d.ts.map +0 -1
- package/dist/mcp/types.js.map +0 -1
- package/dist/plugin/ConfigManager.d.ts.map +0 -1
- package/dist/plugin/ConfigManager.js.map +0 -1
- package/dist/plugin/EventBus.d.ts.map +0 -1
- package/dist/plugin/EventBus.js.map +0 -1
- package/dist/plugin/HookSystem.d.ts.map +0 -1
- package/dist/plugin/HookSystem.js.map +0 -1
- package/dist/plugin/PluginHost.d.ts.map +0 -1
- package/dist/plugin/PluginHost.js +0 -200
- package/dist/plugin/PluginHost.js.map +0 -1
- package/dist/plugin/PluginRegistry.d.ts.map +0 -1
- package/dist/plugin/PluginRegistry.js +0 -81
- package/dist/plugin/PluginRegistry.js.map +0 -1
- package/dist/plugin/StateStore.d.ts.map +0 -1
- package/dist/plugin/StateStore.js.map +0 -1
- package/dist/plugin/index.d.ts.map +0 -1
- package/dist/plugin/index.js.map +0 -1
- package/dist/plugin/rendererPluginManager.d.ts +0 -81
- package/dist/plugin/rendererPluginManager.d.ts.map +0 -1
- package/dist/plugin/rendererPluginManager.js +0 -309
- package/dist/plugin/rendererPluginManager.js.map +0 -1
- package/dist/plugin/stateKeys.d.ts.map +0 -1
- package/dist/plugin/stateKeys.js.map +0 -1
- package/dist/plugin/types.d.ts +0 -480
- package/dist/plugin/types.d.ts.map +0 -1
- package/dist/plugin/types.js.map +0 -1
- package/dist/reactivity/index.d.ts +0 -3
- package/dist/reactivity/index.d.ts.map +0 -1
- package/dist/reactivity/index.js +0 -2
- package/dist/reactivity/index.js.map +0 -1
- package/dist/reactivity/signal.d.ts +0 -40
- package/dist/reactivity/signal.d.ts.map +0 -1
- package/dist/reactivity/signal.js +0 -92
- package/dist/reactivity/signal.js.map +0 -1
- package/dist/render/Renderer.d.ts.map +0 -1
- package/dist/render/Renderer.js.map +0 -1
- package/dist/render/SurfaceBackend.d.ts.map +0 -1
- package/dist/render/SurfaceBackend.js.map +0 -1
- package/dist/render/createWebGLRenderer.d.ts +0 -5
- package/dist/render/createWebGLRenderer.d.ts.map +0 -1
- package/dist/render/createWebGLRenderer.js +0 -233
- package/dist/render/createWebGLRenderer.js.map +0 -1
- package/dist/render/createWebGLSurfaceBackend.d.ts +0 -4
- package/dist/render/createWebGLSurfaceBackend.d.ts.map +0 -1
- package/dist/render/createWebGLSurfaceBackend.js.map +0 -1
- package/dist/render/index.d.ts.map +0 -1
- package/dist/render/index.js.map +0 -1
- package/dist/renderer-tier/detectRendererTier.d.ts.map +0 -1
- package/dist/renderer-tier/detectRendererTier.js +0 -143
- package/dist/renderer-tier/detectRendererTier.js.map +0 -1
- package/dist/renderer-tier/index.d.ts.map +0 -1
- package/dist/renderer-tier/index.js.map +0 -1
- package/dist/renderer-tier/selectBackend.d.ts.map +0 -1
- package/dist/renderer-tier/selectBackend.js +0 -109
- package/dist/renderer-tier/selectBackend.js.map +0 -1
- package/dist/renderer-tier/types.d.ts.map +0 -1
- package/dist/renderer-tier/types.js.map +0 -1
- package/dist/replay/createReplayController.d.ts.map +0 -1
- package/dist/replay/createReplayController.js +0 -249
- package/dist/replay/createReplayController.js.map +0 -1
- package/dist/replay/index.d.ts.map +0 -1
- package/dist/replay/index.js.map +0 -1
- package/dist/replay/timeline.d.ts.map +0 -1
- package/dist/replay/timeline.js.map +0 -1
- package/dist/replay/types.d.ts +0 -94
- package/dist/replay/types.d.ts.map +0 -1
- package/dist/replay/types.js.map +0 -1
- package/dist/scene/createLayerFromPlugin.d.ts +0 -4
- package/dist/scene/createLayerFromPlugin.d.ts.map +0 -1
- package/dist/scene/createLayerFromPlugin.js +0 -45
- package/dist/scene/createLayerFromPlugin.js.map +0 -1
- package/dist/scene/createScene.d.ts.map +0 -1
- package/dist/scene/createScene.js +0 -117
- package/dist/scene/createScene.js.map +0 -1
- package/dist/scene/index.d.ts.map +0 -1
- package/dist/scene/index.js.map +0 -1
- package/dist/scene/layerRegistry.d.ts.map +0 -1
- package/dist/scene/layerRegistry.js +0 -43
- package/dist/scene/layerRegistry.js.map +0 -1
- package/dist/scene/types.d.ts +0 -133
- package/dist/scene/types.d.ts.map +0 -1
- package/dist/scene/types.js.map +0 -1
- package/dist/scheduler/createFrameBudget.d.ts +0 -91
- package/dist/scheduler/createFrameBudget.d.ts.map +0 -1
- package/dist/scheduler/createFrameBudget.js +0 -232
- package/dist/scheduler/createFrameBudget.js.map +0 -1
- package/dist/scheduler/index.d.ts.map +0 -1
- package/dist/scheduler/index.js.map +0 -1
- package/dist/semantic/controller.d.ts +0 -34
- package/dist/semantic/controller.d.ts.map +0 -1
- package/dist/semantic/controller.js +0 -164
- package/dist/semantic/controller.js.map +0 -1
- package/dist/semantic/drawShape.d.ts.map +0 -1
- package/dist/semantic/drawShape.js.map +0 -1
- package/dist/semantic/index.d.ts +0 -7
- package/dist/semantic/index.d.ts.map +0 -1
- package/dist/semantic/index.js.map +0 -1
- package/dist/semantic/types.d.ts +0 -300
- package/dist/semantic/types.d.ts.map +0 -1
- package/dist/semantic/types.js.map +0 -1
- package/dist/semantic/validator.d.ts +0 -48
- package/dist/semantic/validator.d.ts.map +0 -1
- package/dist/semantic/validator.js +0 -288
- package/dist/semantic/validator.js.map +0 -1
- package/dist/tokens/colorPresetSettings.d.ts.map +0 -1
- package/dist/tokens/colorPresetSettings.js.map +0 -1
- package/dist/tokens/index.d.ts.map +0 -1
- package/dist/tokens/index.js.map +0 -1
- package/dist/tokens/mergeTheme.d.ts.map +0 -1
- package/dist/tokens/mergeTheme.js.map +0 -1
- package/dist/tokens/theme-base.d.ts.map +0 -1
- package/dist/tokens/theme-base.js.map +0 -1
- package/dist/tokens/theme-china.d.ts +0 -45
- package/dist/tokens/theme-china.d.ts.map +0 -1
- package/dist/tokens/theme-china.js +0 -115
- package/dist/tokens/theme-china.js.map +0 -1
- package/dist/tokens/theme-dark.d.ts.map +0 -1
- package/dist/tokens/theme-dark.js.map +0 -1
- package/dist/tokens/theme-light.d.ts.map +0 -1
- package/dist/tokens/theme-light.js.map +0 -1
- package/dist/tokens/themeToCssVars.d.ts.map +0 -1
- package/dist/tokens/themeToCssVars.js +0 -82
- package/dist/tokens/themeToCssVars.js.map +0 -1
- package/dist/tokens/types.d.ts.map +0 -1
- package/dist/tokens/types.js.map +0 -1
- package/dist/types/kLine.d.ts +0 -4
- package/dist/types/kLine.d.ts.map +0 -1
- package/dist/types/kLine.js +0 -12
- package/dist/types/kLine.js.map +0 -1
- package/dist/types/price.d.ts +0 -42
- package/dist/types/price.d.ts.map +0 -1
- package/dist/types/price.js +0 -27
- package/dist/types/price.js.map +0 -1
- package/dist/types/volumePrice.d.ts.map +0 -1
- package/dist/types/volumePrice.js.map +0 -1
- package/dist/utils/dateFormat.d.ts.map +0 -1
- package/dist/utils/dateFormat.js.map +0 -1
- package/dist/utils/kLineDraw/axis.d.ts.map +0 -1
- package/dist/utils/kLineDraw/axis.js +0 -223
- package/dist/utils/kLineDraw/axis.js.map +0 -1
- package/dist/utils/priceToY.d.ts.map +0 -1
- package/dist/utils/priceToY.js.map +0 -1
- package/dist/utils/uuid.d.ts.map +0 -1
- package/dist/utils/uuid.js.map +0 -1
- package/dist/utils/volumePrice.d.ts.map +0 -1
- package/dist/utils/volumePrice.js.map +0 -1
- package/src/alerts/createAlertController.ts +0 -294
- package/src/alerts/types.ts +0 -177
- package/src/chartTypes/pointAndFigure.ts +0 -284
- package/src/chartTypes/rangeBars.ts +0 -303
- package/src/chartTypes/renko.ts +0 -317
- package/src/config/chartSettings.ts +0 -165
- package/src/data-fetchers/__tests__/dataBuffer.test.ts +0 -537
- package/src/data-fetchers/baostock.ts +0 -71
- package/src/data-fetchers/dataBuffer.effects.ts +0 -118
- package/src/data-fetchers/dataBuffer.ts +0 -205
- package/src/data-fetchers/dataBufferTypes.ts +0 -51
- package/src/data-fetchers/fetchScheduler.ts +0 -53
- package/src/data-fetchers/fetcherDefinitionRegistry.ts +0 -80
- package/src/data-fetchers/gotdx.ts +0 -224
- package/src/data-fetchers/kLineDataStore.ts +0 -96
- package/src/data-fetchers/timeShareBuffer.ts +0 -137
- package/src/data-fetchers/tradingview.ts +0 -79
- package/src/engine/indicators/calculators.ts +0 -1
- package/src/indicators/alma.ts +0 -64
- package/src/indicators/awesomeOscillator.ts +0 -57
- package/src/indicators/dpo.ts +0 -38
- package/src/indicators/fisherTransform.ts +0 -66
- package/src/indicators/frama.ts +0 -94
- package/src/indicators/lsma.ts +0 -59
- package/src/indicators/schaffTrendCycle.ts +0 -94
- package/src/indicators/stochRSI.ts +0 -108
- package/src/indicators/t3.ts +0 -95
- package/src/indicators/ultimateOscillator.ts +0 -86
- package/src/indicators/vidya.ts +0 -81
- package/src/indicators/zlema.ts +0 -42
- package/src/input/__tests__/gesture.test.ts +0 -271
- package/src/input/__tests__/keyboard.test.ts +0 -310
- package/src/input/gesture.ts +0 -351
- package/src/input/keyboard.ts +0 -371
- package/src/mcp/chartBridge.ts +0 -259
- package/src/plugin/PluginHost.ts +0 -265
- package/src/plugin/PluginRegistry.ts +0 -94
- package/src/plugin/rendererPluginManager.ts +0 -365
- package/src/plugin/types.ts +0 -562
- package/src/reactivity/index.ts +0 -2
- package/src/reactivity/signal.ts +0 -119
- package/src/render/__tests__/webglRenderer.test.ts +0 -364
- package/src/render/createWebGLRenderer.ts +0 -289
- package/src/render/createWebGLSurfaceBackend.ts +0 -44
- package/src/renderer-tier/__tests__/detectRendererTier.test.ts +0 -177
- package/src/renderer-tier/__tests__/selectBackend.test.ts +0 -249
- package/src/renderer-tier/detectRendererTier.ts +0 -160
- package/src/renderer-tier/selectBackend.ts +0 -193
- package/src/replay/createReplayController.ts +0 -295
- package/src/replay/types.ts +0 -105
- package/src/scene/__tests__/layerFromPlugin.test.ts +0 -244
- package/src/scene/createLayerFromPlugin.ts +0 -48
- package/src/scene/createScene.ts +0 -121
- package/src/scene/layerRegistry.ts +0 -115
- package/src/scene/types.ts +0 -148
- package/src/scheduler/__tests__/createFrameBudget.test.ts +0 -319
- package/src/scheduler/createFrameBudget.ts +0 -316
- package/src/semantic/controller.ts +0 -235
- package/src/semantic/index.ts +0 -36
- package/src/semantic/types.ts +0 -253
- package/src/semantic/validator.ts +0 -363
- package/src/tokens/theme-china.ts +0 -132
- package/src/tokens/themeToCssVars.ts +0 -139
- package/src/types/kLine.ts +0 -13
- package/src/types/price.ts +0 -76
- package/src/utils/kLineDraw/axis.ts +0 -540
- /package/dist/{data-fetchers → data}/baostock.d.ts +0 -0
- /package/dist/{data-fetchers → data}/binance.d.ts +0 -0
- /package/dist/{data-fetchers → data}/binance.js +0 -0
- /package/dist/{data-fetchers → data}/dataBuffer.effects.js +0 -0
- /package/dist/{data-fetchers → data}/dataBufferTypes.js +0 -0
- /package/dist/{data-fetchers → data}/depthConnector.d.ts +0 -0
- /package/dist/{data-fetchers → data}/depthConnector.js +0 -0
- /package/dist/{data-fetchers → data}/depthTypes.d.ts +0 -0
- /package/dist/{data-fetchers → data}/depthTypes.js +0 -0
- /package/dist/{data-fetchers → data}/fetcherDefinitionRegistry.d.ts +0 -0
- /package/dist/{data-fetchers → data}/fetcherDefinitionRegistry.js +0 -0
- /package/dist/{data-fetchers → data}/gotdx.d.ts +0 -0
- /package/dist/{data-fetchers → data}/hundred-mock.d.ts +0 -0
- /package/dist/{data-fetchers → data}/hundred-mock.js +0 -0
- /package/dist/{data-fetchers → data}/index.d.ts +0 -0
- /package/dist/{data-fetchers → data}/index.js +0 -0
- /package/dist/{data-fetchers → data}/router.d.ts +0 -0
- /package/dist/{data-fetchers → data}/router.js +0 -0
- /package/dist/{data-fetchers → data}/thousand-mock.d.ts +0 -0
- /package/dist/{data-fetchers → data}/thousand-mock.js +0 -0
- /package/dist/{data-fetchers → data}/timeKeyIndex.d.ts +0 -0
- /package/dist/{data-fetchers → data}/timeKeyIndex.js +0 -0
- /package/dist/{data-fetchers → data}/tradingview.d.ts +0 -0
- /package/dist/{data-fetchers → data}/types.d.ts +0 -0
- /package/dist/{data-fetchers → data}/types.js +0 -0
- /package/dist/{alerts → features/alerts}/createAlertController.d.ts +0 -0
- /package/dist/{alerts → features/alerts}/index.d.ts +0 -0
- /package/dist/{alerts → features/alerts}/index.js +0 -0
- /package/dist/{alerts → features/alerts}/predicates.d.ts +0 -0
- /package/dist/{alerts → features/alerts}/predicates.js +0 -0
- /package/dist/{alerts → features/alerts}/rollingVolume.d.ts +0 -0
- /package/dist/{alerts → features/alerts}/rollingVolume.js +0 -0
- /package/dist/{alerts → features/alerts}/ruleSchema.d.ts +0 -0
- /package/dist/{alerts → features/alerts}/ruleSchema.js +0 -0
- /package/dist/{alerts → features/alerts}/types.js +0 -0
- /package/dist/{chartTypes → features/chartTypes}/heikinAshi.d.ts +0 -0
- /package/dist/{chartTypes → features/chartTypes}/heikinAshi.js +0 -0
- /package/dist/{chartTypes → features/chartTypes}/index.d.ts +0 -0
- /package/dist/{chartTypes → features/chartTypes}/index.js +0 -0
- /package/dist/{chartTypes → features/chartTypes}/pointAndFigure.d.ts +0 -0
- /package/dist/{chartTypes → features/chartTypes}/rangeBars.d.ts +0 -0
- /package/dist/{chartTypes → features/chartTypes}/renko.d.ts +0 -0
- /package/dist/{chartTypes → features/chartTypes}/types.d.ts +0 -0
- /package/dist/{chartTypes → features/chartTypes}/types.js +0 -0
- /package/dist/{indicators → features/indicators}/alma.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/awesomeOscillator.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/dpo.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/fisherTransform.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/frama.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/index.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/index.js +0 -0
- /package/dist/{indicators → features/indicators}/lsma.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/schaffTrendCycle.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/stochRSI.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/t3.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/ultimateOscillator.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/vidya.d.ts +0 -0
- /package/dist/{indicators → features/indicators}/zlema.d.ts +0 -0
- /package/dist/{input → features/input}/index.d.ts +0 -0
- /package/dist/{input → features/input}/index.js +0 -0
- /package/dist/{mcp → features/mcp}/chartBridge.d.ts +0 -0
- /package/dist/{mcp → features/mcp}/index.d.ts +0 -0
- /package/dist/{mcp → features/mcp}/index.js +0 -0
- /package/dist/{mcp → features/mcp}/types.d.ts +0 -0
- /package/dist/{mcp → features/mcp}/types.js +0 -0
- /package/dist/{replay → features/replay}/createReplayController.d.ts +0 -0
- /package/dist/{replay → features/replay}/index.d.ts +0 -0
- /package/dist/{replay → features/replay}/index.js +0 -0
- /package/dist/{replay → features/replay}/timeline.d.ts +0 -0
- /package/dist/{replay → features/replay}/timeline.js +0 -0
- /package/dist/{replay → features/replay}/types.js +0 -0
- /package/dist/{semantic → features/semantic}/drawShape.d.ts +0 -0
- /package/dist/{semantic → features/semantic}/drawShape.js +0 -0
- /package/dist/{semantic → features/semantic}/index.js +0 -0
- /package/dist/{semantic → features/semantic}/schema.json +0 -0
- /package/dist/{semantic → features/semantic}/types.js +0 -0
- /package/dist/{plugin → foundation/plugin}/ConfigManager.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/ConfigManager.js +0 -0
- /package/dist/{plugin → foundation/plugin}/EventBus.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/EventBus.js +0 -0
- /package/dist/{plugin → foundation/plugin}/HookSystem.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/HookSystem.js +0 -0
- /package/dist/{plugin → foundation/plugin}/PluginHost.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/PluginRegistry.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/StateStore.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/StateStore.js +0 -0
- /package/dist/{plugin → foundation/plugin}/index.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/index.js +0 -0
- /package/dist/{plugin → foundation/plugin}/stateKeys.d.ts +0 -0
- /package/dist/{plugin → foundation/plugin}/stateKeys.js +0 -0
- /package/dist/{plugin → foundation/plugin}/types.js +0 -0
- /package/dist/{tokens → foundation/tokens}/colorPresetSettings.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/colorPresetSettings.js +0 -0
- /package/dist/{engine/theme → foundation/tokens}/fonts.d.ts +0 -0
- /package/dist/{engine/theme → foundation/tokens}/fonts.js +0 -0
- /package/dist/{tokens → foundation/tokens}/index.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/index.js +0 -0
- /package/dist/{tokens → foundation/tokens}/mergeTheme.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/mergeTheme.js +0 -0
- /package/dist/{tokens → foundation/tokens}/theme-base.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/theme-base.js +0 -0
- /package/dist/{tokens → foundation/tokens}/theme-dark.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/theme-dark.js +0 -0
- /package/dist/{tokens → foundation/tokens}/theme-light.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/theme-light.js +0 -0
- /package/dist/{tokens → foundation/tokens}/themeToCssVars.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/types.d.ts +0 -0
- /package/dist/{tokens → foundation/tokens}/types.js +0 -0
- /package/dist/{types → foundation/types}/volumePrice.d.ts +0 -0
- /package/dist/{types → foundation/types}/volumePrice.js +0 -0
- /package/dist/{utils → foundation/utils}/dateFormat.d.ts +0 -0
- /package/dist/{utils → foundation/utils}/dateFormat.js +0 -0
- /package/dist/{utils → foundation/utils}/kLineDraw/axis.d.ts +0 -0
- /package/dist/{engine/draw → foundation/utils}/pixelAlign.d.ts +0 -0
- /package/dist/{engine/draw → foundation/utils}/pixelAlign.js +0 -0
- /package/dist/{utils → foundation/utils}/priceToY.d.ts +0 -0
- /package/dist/{utils → foundation/utils}/priceToY.js +0 -0
- /package/dist/{utils → foundation/utils}/uuid.d.ts +0 -0
- /package/dist/{utils → foundation/utils}/uuid.js +0 -0
- /package/dist/{utils → foundation/utils}/volumePrice.d.ts +0 -0
- /package/dist/{utils → foundation/utils}/volumePrice.js +0 -0
- /package/dist/{render → rendering/render}/Renderer.d.ts +0 -0
- /package/dist/{render → rendering/render}/Renderer.js +0 -0
- /package/dist/{render → rendering/render}/SurfaceBackend.d.ts +0 -0
- /package/dist/{render → rendering/render}/SurfaceBackend.js +0 -0
- /package/dist/{render → rendering/render}/createWebGLSurfaceBackend.js +0 -0
- /package/dist/{render → rendering/render}/index.d.ts +0 -0
- /package/dist/{render → rendering/render}/index.js +0 -0
- /package/dist/{renderer-tier → rendering/renderer-tier}/detectRendererTier.d.ts +0 -0
- /package/dist/{renderer-tier → rendering/renderer-tier}/index.d.ts +0 -0
- /package/dist/{renderer-tier → rendering/renderer-tier}/index.js +0 -0
- /package/dist/{renderer-tier → rendering/renderer-tier}/selectBackend.d.ts +0 -0
- /package/dist/{renderer-tier → rendering/renderer-tier}/types.d.ts +0 -0
- /package/dist/{renderer-tier → rendering/renderer-tier}/types.js +0 -0
- /package/dist/{scene → rendering/scene}/createScene.d.ts +0 -0
- /package/dist/{scene → rendering/scene}/index.d.ts +0 -0
- /package/dist/{scene → rendering/scene}/index.js +0 -0
- /package/dist/{scene → rendering/scene}/layerRegistry.d.ts +0 -0
- /package/dist/{scene → rendering/scene}/types.js +0 -0
- /package/dist/{scheduler → rendering/scheduler}/index.d.ts +0 -0
- /package/dist/{scheduler → rendering/scheduler}/index.js +0 -0
- /package/src/{data-fetchers → data}/__tests__/binance.test.ts +0 -0
- /package/src/{data-fetchers → data}/__tests__/depthConnector.test.ts +0 -0
- /package/src/{data-fetchers → data}/__tests__/fetcherRegistry.test.ts +0 -0
- /package/src/{data-fetchers → data}/binance.ts +0 -0
- /package/src/{data-fetchers → data}/depthConnector.ts +0 -0
- /package/src/{data-fetchers → data}/depthTypes.ts +0 -0
- /package/src/{data-fetchers → data}/hundred-mock.ts +0 -0
- /package/src/{data-fetchers → data}/index.ts +0 -0
- /package/src/{data-fetchers → data}/router.ts +0 -0
- /package/src/{data-fetchers → data}/thousand-mock.ts +0 -0
- /package/src/{data-fetchers → data}/timeKeyIndex.ts +0 -0
- /package/src/{data-fetchers → data}/types.ts +0 -0
- /package/src/{alerts → features/alerts}/__tests__/controller.test.ts +0 -0
- /package/src/{alerts → features/alerts}/__tests__/predicates.test.ts +0 -0
- /package/src/{alerts → features/alerts}/__tests__/ruleSchema.test.ts +0 -0
- /package/src/{alerts → features/alerts}/index.ts +0 -0
- /package/src/{alerts → features/alerts}/predicates.ts +0 -0
- /package/src/{alerts → features/alerts}/rollingVolume.ts +0 -0
- /package/src/{alerts → features/alerts}/ruleSchema.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/__tests__/heikinAshi.test.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/__tests__/pointAndFigure.test.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/__tests__/rangeBars.test.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/__tests__/renko.test.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/heikinAshi.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/index.ts +0 -0
- /package/src/{chartTypes → features/chartTypes}/types.ts +0 -0
- /package/src/{indicators → features/indicators}/__tests__/maFamily.test.ts +0 -0
- /package/src/{indicators → features/indicators}/__tests__/oscillators.test.ts +0 -0
- /package/src/{indicators → features/indicators}/index.ts +0 -0
- /package/src/{input → features/input}/index.ts +0 -0
- /package/src/{mcp → features/mcp}/index.ts +0 -0
- /package/src/{mcp → features/mcp}/types.ts +0 -0
- /package/src/{replay → features/replay}/__tests__/controller.test.ts +0 -0
- /package/src/{replay → features/replay}/__tests__/timeline.test.ts +0 -0
- /package/src/{replay → features/replay}/index.ts +0 -0
- /package/src/{replay → features/replay}/timeline.ts +0 -0
- /package/src/{semantic → features/semantic}/__tests__/controller.test.ts +0 -0
- /package/src/{semantic → features/semantic}/drawShape.ts +0 -0
- /package/src/{semantic → features/semantic}/schema.json +0 -0
- /package/src/{plugin → foundation/plugin}/ConfigManager.ts +0 -0
- /package/src/{plugin → foundation/plugin}/EventBus.ts +0 -0
- /package/src/{plugin → foundation/plugin}/HookSystem.ts +0 -0
- /package/src/{plugin → foundation/plugin}/StateStore.ts +0 -0
- /package/src/{plugin → foundation/plugin}/index.ts +0 -0
- /package/src/{plugin → foundation/plugin}/stateKeys.ts +0 -0
- /package/src/{tokens → foundation/tokens}/__tests__/__snapshots__/baseline.test.ts.snap +0 -0
- /package/src/{tokens → foundation/tokens}/__tests__/baseline.test.ts +0 -0
- /package/src/{tokens → foundation/tokens}/__tests__/themeToCssVars.test.ts +0 -0
- /package/src/{tokens → foundation/tokens}/__tests__/tokens.test.ts +0 -0
- /package/src/{tokens → foundation/tokens}/colorPresetSettings.ts +0 -0
- /package/src/{engine/theme → foundation/tokens}/fonts.ts +0 -0
- /package/src/{tokens → foundation/tokens}/index.ts +0 -0
- /package/src/{tokens → foundation/tokens}/mergeTheme.ts +0 -0
- /package/src/{tokens → foundation/tokens}/theme-base.ts +0 -0
- /package/src/{tokens → foundation/tokens}/theme-dark.ts +0 -0
- /package/src/{tokens → foundation/tokens}/theme-light.ts +0 -0
- /package/src/{tokens → foundation/tokens}/types.ts +0 -0
- /package/src/{types → foundation/types}/volumePrice.ts +0 -0
- /package/src/{utils → foundation/utils}/__tests__/dateFormat.test.ts +0 -0
- /package/src/{utils → foundation/utils}/dateFormat.ts +0 -0
- /package/src/{engine/draw → foundation/utils}/pixelAlign.ts +0 -0
- /package/src/{utils → foundation/utils}/priceToY.ts +0 -0
- /package/src/{utils → foundation/utils}/uuid.ts +0 -0
- /package/src/{utils → foundation/utils}/volumePrice.ts +0 -0
- /package/src/{render → rendering/render}/Renderer.ts +0 -0
- /package/src/{render → rendering/render}/SurfaceBackend.ts +0 -0
- /package/src/{render → rendering/render}/__tests__/contract.test.ts +0 -0
- /package/src/{render → rendering/render}/__tests__/webglRenderer.fallback.test.ts +0 -0
- /package/src/{render → rendering/render}/__tests__/webglSurfaceBackend.test.ts +0 -0
- /package/src/{render → rendering/render}/index.ts +0 -0
- /package/src/{renderer-tier → rendering/renderer-tier}/index.ts +0 -0
- /package/src/{renderer-tier → rendering/renderer-tier}/types.ts +0 -0
- /package/src/{scene → rendering/scene}/__tests__/layerRegistry.test.ts +0 -0
- /package/src/{scene → rendering/scene}/__tests__/scene.test.ts +0 -0
- /package/src/{scene → rendering/scene}/index.ts +0 -0
- /package/src/{scheduler → rendering/scheduler}/index.ts +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { StateKernel } from './stateKernel';
|
|
2
|
+
import { type ZoomStateModule } from './zoomState';
|
|
3
|
+
import { type DataStateModule } from './dataState';
|
|
4
|
+
import { type ViewportStateModule, type ViewportDomDeps } from './viewportState';
|
|
5
|
+
import { type PaneStateModule } from './paneState';
|
|
6
|
+
import { type ThemeStateModule } from './themeState';
|
|
7
|
+
import { type SettingsStateModule } from './settingsState';
|
|
8
|
+
import { type ModeStateModule } from './modeState';
|
|
9
|
+
import { type DrawingStateModule } from './drawingState';
|
|
10
|
+
import { type InteractionStateModule } from './interactionState';
|
|
11
|
+
import { type DataManagerStateModule } from './dataManagerState';
|
|
12
|
+
import { type OptionsStateModule } from './optionsState';
|
|
13
|
+
import { type ComparisonStateModule } from './comparisonState';
|
|
14
|
+
import { type IndicatorStateModule } from './indicatorState';
|
|
15
|
+
import { type SubPaneStateModule } from './subPaneState';
|
|
16
|
+
import { type MarkerStateModule } from './markerState';
|
|
17
|
+
import { type ReadonlySignal } from '../../foundation/reactivity/signal';
|
|
18
|
+
import type { PaneSpec } from '../chartTypes';
|
|
19
|
+
export interface ChartStateKernelDeps {
|
|
20
|
+
initialOptions: {
|
|
21
|
+
minKWidth: number;
|
|
22
|
+
maxKWidth: number;
|
|
23
|
+
zoomLevelCount: number;
|
|
24
|
+
bottomAxisHeight: number;
|
|
25
|
+
rightAxisWidth: number;
|
|
26
|
+
leftAxisWidth: number;
|
|
27
|
+
yPaddingPx: number;
|
|
28
|
+
priceLabelWidth?: number;
|
|
29
|
+
paneGap?: number;
|
|
30
|
+
defaultPaneMinHeightPx?: number;
|
|
31
|
+
panes: PaneSpec[];
|
|
32
|
+
zoomLevels?: number;
|
|
33
|
+
initialZoomLevel?: number;
|
|
34
|
+
[key: string]: unknown;
|
|
35
|
+
};
|
|
36
|
+
initialZoomLevel: number;
|
|
37
|
+
scheduleDraw: (level?: unknown) => void;
|
|
38
|
+
}
|
|
39
|
+
export declare class ChartStateKernel extends StateKernel {
|
|
40
|
+
readonly options: OptionsStateModule;
|
|
41
|
+
readonly zoom: ZoomStateModule;
|
|
42
|
+
readonly data: DataStateModule;
|
|
43
|
+
readonly viewport: ViewportStateModule;
|
|
44
|
+
readonly pane: PaneStateModule;
|
|
45
|
+
readonly theme: ThemeStateModule;
|
|
46
|
+
readonly settings: SettingsStateModule;
|
|
47
|
+
readonly mode: ModeStateModule;
|
|
48
|
+
readonly drawing: DrawingStateModule;
|
|
49
|
+
readonly interaction: InteractionStateModule;
|
|
50
|
+
readonly dataManager: DataManagerStateModule;
|
|
51
|
+
readonly comparison: ComparisonStateModule;
|
|
52
|
+
readonly indicator: IndicatorStateModule;
|
|
53
|
+
readonly subPane: SubPaneStateModule;
|
|
54
|
+
readonly marker: MarkerStateModule;
|
|
55
|
+
readonly zoomLevel$: ReadonlySignal<number>;
|
|
56
|
+
readonly dataLength$: ReadonlySignal<number>;
|
|
57
|
+
readonly optionsForViewport$: ReadonlySignal<{
|
|
58
|
+
bottomAxisHeight: number;
|
|
59
|
+
kWidth: number;
|
|
60
|
+
}>;
|
|
61
|
+
readonly signals: Record<string, ReadonlySignal<unknown>>;
|
|
62
|
+
readonly actions: Record<string, (...args: any[]) => void>;
|
|
63
|
+
constructor(deps: ChartStateKernelDeps);
|
|
64
|
+
setViewportDomDeps(deps: ViewportDomDeps): void;
|
|
65
|
+
initViewport(): void;
|
|
66
|
+
dispose(): void;
|
|
67
|
+
}
|
|
68
|
+
export type ChartStateKernelModule = ChartStateKernel;
|
|
69
|
+
//# sourceMappingURL=chartStateKernel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chartStateKernel.d.ts","sourceRoot":"","sources":["../../../src/engine/state/chartStateKernel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
import { StateKernel } from './stateKernel';
|
|
2
|
+
import { createZoomState } from './zoomState';
|
|
3
|
+
import { createDataState } from './dataState';
|
|
4
|
+
import { createViewportState, } from './viewportState';
|
|
5
|
+
import { createPaneState } from './paneState';
|
|
6
|
+
import { createThemeState } from './themeState';
|
|
7
|
+
import { createSettingsState } from './settingsState';
|
|
8
|
+
import { createModeState } from './modeState';
|
|
9
|
+
import { createDrawingState } from './drawingState';
|
|
10
|
+
import { createInteractionState, } from './interactionState';
|
|
11
|
+
import { createDataManagerState } from './dataManagerState';
|
|
12
|
+
import { createOptionsState } from './optionsState';
|
|
13
|
+
import { createComparisonState } from './comparisonState';
|
|
14
|
+
import { createIndicatorState } from './indicatorState';
|
|
15
|
+
import { createSubPaneState } from './subPaneState';
|
|
16
|
+
import { createMarkerState } from './markerState';
|
|
17
|
+
import { batch, computed } from '../../foundation/reactivity/signal';
|
|
18
|
+
export class ChartStateKernel extends StateKernel {
|
|
19
|
+
options;
|
|
20
|
+
zoom;
|
|
21
|
+
data;
|
|
22
|
+
viewport;
|
|
23
|
+
pane;
|
|
24
|
+
theme;
|
|
25
|
+
settings;
|
|
26
|
+
mode;
|
|
27
|
+
drawing;
|
|
28
|
+
interaction;
|
|
29
|
+
dataManager;
|
|
30
|
+
comparison;
|
|
31
|
+
indicator;
|
|
32
|
+
subPane;
|
|
33
|
+
marker;
|
|
34
|
+
zoomLevel$;
|
|
35
|
+
dataLength$;
|
|
36
|
+
optionsForViewport$;
|
|
37
|
+
signals;
|
|
38
|
+
actions;
|
|
39
|
+
constructor(deps) {
|
|
40
|
+
super();
|
|
41
|
+
// ── Options state (before zoom, since zoom reads from options) ──
|
|
42
|
+
this.options = createOptionsState(deps.initialOptions);
|
|
43
|
+
// ── Zoom state ──
|
|
44
|
+
this.zoom = createZoomState({
|
|
45
|
+
minKWidth$: computed(() => this.options.readonly.options().minKWidth),
|
|
46
|
+
maxKWidth$: computed(() => this.options.readonly.options().maxKWidth),
|
|
47
|
+
zoomLevelCount: Math.max(2, Math.round(this.options.readonly.options.peek().zoomLevelCount)),
|
|
48
|
+
});
|
|
49
|
+
this.zoom.actions.setZoomLevel(deps.initialZoomLevel);
|
|
50
|
+
this.zoomLevel$ = computed(() => this.zoom.readonly.zoomLevel());
|
|
51
|
+
this.optionsForViewport$ = computed(() => ({
|
|
52
|
+
bottomAxisHeight: this.options.readonly.options().bottomAxisHeight,
|
|
53
|
+
kWidth: this.zoom.readonly.kWidth(),
|
|
54
|
+
}));
|
|
55
|
+
// ── Data state ──
|
|
56
|
+
this.data = createDataState();
|
|
57
|
+
this.dataLength$ = computed(() => this.data.readonly.dataLength());
|
|
58
|
+
// ── Data manager state (coordination layer) ──
|
|
59
|
+
this.dataManager = createDataManagerState();
|
|
60
|
+
// ── Comparison state ──
|
|
61
|
+
this.comparison = createComparisonState({ symbols$: this.data.readonly.symbols });
|
|
62
|
+
// ── Indicator state ──
|
|
63
|
+
this.indicator = createIndicatorState();
|
|
64
|
+
// ── Sub-pane business state ──
|
|
65
|
+
this.subPane = createSubPaneState();
|
|
66
|
+
// ── Marker business state ──
|
|
67
|
+
this.marker = createMarkerState();
|
|
68
|
+
// ── Viewport state (now owned by kernel) ──
|
|
69
|
+
this.viewport = createViewportState({
|
|
70
|
+
options$: this.optionsForViewport$,
|
|
71
|
+
dataLength$: this.dataLength$,
|
|
72
|
+
period$: this.dataManager.readonly.currentPeriod,
|
|
73
|
+
zoomLevel$: this.zoomLevel$,
|
|
74
|
+
});
|
|
75
|
+
// ── Pane state(从 initialOptions.panes 初始化,避免 layout 与 kernel 初始不一致)──
|
|
76
|
+
this.pane = createPaneState();
|
|
77
|
+
{
|
|
78
|
+
const initialPanes = (deps.initialOptions.panes ?? []).map((spec) => ({ ...spec }));
|
|
79
|
+
const initialRatios = {};
|
|
80
|
+
for (const spec of initialPanes) {
|
|
81
|
+
initialRatios[spec.id] = spec.ratio ?? 1;
|
|
82
|
+
}
|
|
83
|
+
this.pane.actions.commitLayout(initialRatios, initialPanes);
|
|
84
|
+
}
|
|
85
|
+
// ── Theme state ──
|
|
86
|
+
this.theme = createThemeState();
|
|
87
|
+
// ── Settings state(用户偏好 SSOT;rightAxisType 副作用走 Chart.updateSettings)──
|
|
88
|
+
this.settings = createSettingsState();
|
|
89
|
+
// ── Mode state(kline / timeshare id;ModeHandler 仍在 Chart)──
|
|
90
|
+
this.mode = createModeState();
|
|
91
|
+
// ── Drawing state ──
|
|
92
|
+
this.drawing = createDrawingState();
|
|
93
|
+
// ── Interaction state (reads viewport signals directly) ──
|
|
94
|
+
this.interaction = createInteractionState({
|
|
95
|
+
visibleRange$: this.viewport.readonly.visibleRange,
|
|
96
|
+
scrollLeftLogical$: this.viewport.readonly
|
|
97
|
+
.scrollLeftLogical,
|
|
98
|
+
dpr$: this.viewport.readonly.dpr,
|
|
99
|
+
scheduleDraw: deps.scheduleDraw,
|
|
100
|
+
});
|
|
101
|
+
// ── Flat signals bag for framework adapters ──
|
|
102
|
+
this.signals = {
|
|
103
|
+
// Zoom
|
|
104
|
+
zoomLevel: this.zoom.readonly.zoomLevel,
|
|
105
|
+
kWidth: this.zoom.readonly.kWidth,
|
|
106
|
+
kGap: this.viewport.readonly.kGap,
|
|
107
|
+
// Data
|
|
108
|
+
data: this.data.readonly.data,
|
|
109
|
+
dataLength: this.data.readonly.dataLength,
|
|
110
|
+
loading: this.data.readonly.loading,
|
|
111
|
+
symbols: this.data.readonly.symbols,
|
|
112
|
+
symbolCatalog: this.data.readonly.symbolCatalog,
|
|
113
|
+
// Viewport
|
|
114
|
+
dpr: this.viewport.readonly.dpr,
|
|
115
|
+
viewport: this.viewport.readonly.viewport,
|
|
116
|
+
viewportState: this.viewport.readonly.viewportState,
|
|
117
|
+
visibleRange: this.viewport.readonly.visibleRange,
|
|
118
|
+
scrollLeftLogical: this.viewport.readonly.scrollLeftLogical,
|
|
119
|
+
// Pane
|
|
120
|
+
paneRatios: this.pane.readonly.paneRatios,
|
|
121
|
+
paneSpecs: this.pane.readonly.paneSpecs,
|
|
122
|
+
// Theme
|
|
123
|
+
theme: this.theme.readonly.theme,
|
|
124
|
+
// Settings
|
|
125
|
+
settings: this.settings.readonly.settings,
|
|
126
|
+
// Mode
|
|
127
|
+
chartMode: this.mode.readonly.chartMode,
|
|
128
|
+
// Pane scale types
|
|
129
|
+
paneScaleTypes: this.pane.readonly.paneScaleTypes,
|
|
130
|
+
// Drawing
|
|
131
|
+
drawingTool: this.drawing.readonly.drawingTool,
|
|
132
|
+
drawings: this.drawing.readonly.drawings,
|
|
133
|
+
selectedDrawingId: this.drawing.readonly.selectedDrawingId,
|
|
134
|
+
// Interaction
|
|
135
|
+
interactionSnapshot: this.interaction.readonly.interactionSnapshot,
|
|
136
|
+
crosshairIndex: this.interaction.readonly.crosshairIndex,
|
|
137
|
+
// Comparison
|
|
138
|
+
comparisonColors: this.comparison.readonly.colors,
|
|
139
|
+
comparisonLoading: this.comparison.readonly.loading,
|
|
140
|
+
// Indicator
|
|
141
|
+
mainIndicators: this.indicator.readonly.mainIndicators,
|
|
142
|
+
subPanes: this.subPane.readonly.entries,
|
|
143
|
+
// Marker
|
|
144
|
+
customMarkers: this.marker.readonly.customMarkers,
|
|
145
|
+
};
|
|
146
|
+
// ── Flat actions bag for framework adapters ──
|
|
147
|
+
this.actions = {
|
|
148
|
+
setZoomLevel: (level) => this.zoom.actions.setZoomLevel(level),
|
|
149
|
+
setDirectKWidth: (kWidth) => this.zoom.actions.setDirectKWidth(kWidth),
|
|
150
|
+
clearDirectKWidth: () => this.zoom.actions.clearDirectKWidth(),
|
|
151
|
+
setData: (data) => this.data.actions.setData(data),
|
|
152
|
+
setLoading: (loading) => this.data.actions.setLoading(loading),
|
|
153
|
+
setSymbols: (symbols) => {
|
|
154
|
+
const snapshot = symbols.map((symbol) => ({ ...symbol }));
|
|
155
|
+
batch(() => {
|
|
156
|
+
this.data.actions.setSymbols(snapshot);
|
|
157
|
+
this.comparison.actions.syncColors(snapshot.slice(1));
|
|
158
|
+
});
|
|
159
|
+
},
|
|
160
|
+
setSymbolCatalog: (catalog) => this.data.actions.setSymbolCatalog(catalog),
|
|
161
|
+
setActiveBufferKey: (key) => this.data.actions.setActiveBufferKey(key),
|
|
162
|
+
resetData: () => this.data.actions.reset(),
|
|
163
|
+
setPaneRatios: (ratios) => this.pane.actions.setPaneRatios(ratios),
|
|
164
|
+
setPaneSpecs: (specs) => this.pane.actions.setPaneSpecs(specs),
|
|
165
|
+
commitPaneLayout: (ratios, specs) => this.pane.actions.commitLayout(ratios, specs),
|
|
166
|
+
setTheme: (theme) => this.theme.actions.setTheme(theme),
|
|
167
|
+
setDrawingTool: (tool) => this.drawing.actions.setDrawingTool(tool),
|
|
168
|
+
setDrawings: (drawings) => this.drawing.actions.setDrawings(drawings),
|
|
169
|
+
clearDrawings: () => this.drawing.actions.clearDrawings(),
|
|
170
|
+
updateCrosshair: (pos, price) => this.interaction.actions.updateCrosshair(pos, price),
|
|
171
|
+
updateHover: (index, paneId) => this.interaction.actions.updateHover(index, paneId),
|
|
172
|
+
setHoveredIndex: (index) => this.interaction.actions.setHoveredIndex(index),
|
|
173
|
+
setActivePaneId: (paneId) => this.interaction.actions.setActivePaneId(paneId),
|
|
174
|
+
updateFramePositions: (positions, centers, kWidthPx) => this.interaction.actions.updateFramePositions(positions, centers, kWidthPx),
|
|
175
|
+
startDrag: (mode) => this.interaction.actions.startDrag(mode),
|
|
176
|
+
endDrag: () => this.interaction.actions.endDrag(),
|
|
177
|
+
setDragMode: (mode) => this.interaction.actions.setDragMode(mode),
|
|
178
|
+
setSeparatorHover: (paneId) => this.interaction.actions.setSeparatorHover(paneId),
|
|
179
|
+
setRightAxisHover: (paneId) => this.interaction.actions.setRightAxisHover(paneId),
|
|
180
|
+
updateTooltip: (pos, placement) => this.interaction.actions.updateTooltip(pos, placement),
|
|
181
|
+
updateMarkerHover: (markerId, markerData, customMarkerData) => this.interaction.actions.updateMarkerHover(markerId, markerData, customMarkerData),
|
|
182
|
+
resetInteraction: () => this.interaction.actions.reset(),
|
|
183
|
+
setComparisonColors: (colors) => this.comparison.actions.setColors(colors),
|
|
184
|
+
setComparisonLoading: (loading) => this.comparison.actions.setLoading(loading),
|
|
185
|
+
upsertMainIndicator: (id, params) => this.indicator.actions.upsert(id, params),
|
|
186
|
+
removeMainIndicator: (id) => this.indicator.actions.remove(id),
|
|
187
|
+
setMainIndicatorParams: (id, params) => this.indicator.actions.setParams(id, params),
|
|
188
|
+
replaceMainIndicators: (entries) => this.indicator.actions.replaceAll(entries),
|
|
189
|
+
clearMainIndicators: () => this.indicator.actions.clear(),
|
|
190
|
+
createSubPane: (paneId, indicatorId, params) => {
|
|
191
|
+
if (this.subPane.readonly.entries.peek().some((entry) => entry.paneId === paneId))
|
|
192
|
+
return;
|
|
193
|
+
const currentSpecs = this.pane.readonly.paneSpecs.peek();
|
|
194
|
+
const nextSpecs = currentSpecs.some((pane) => pane.id === paneId)
|
|
195
|
+
? currentSpecs.map((pane) => ({ ...pane }))
|
|
196
|
+
: [...currentSpecs, { id: paneId, ratio: 1, visible: true, role: 'indicator' }];
|
|
197
|
+
const visible = nextSpecs.filter((pane) => pane.visible !== false);
|
|
198
|
+
const pricePanes = visible.filter((pane) => pane.role === 'price');
|
|
199
|
+
const rawRatios = {
|
|
200
|
+
...this.pane.readonly.paneRatios.peek(),
|
|
201
|
+
};
|
|
202
|
+
if (pricePanes.length === 1) {
|
|
203
|
+
rawRatios[pricePanes[0].id] = 3;
|
|
204
|
+
for (const pane of visible) {
|
|
205
|
+
if (pane.role === 'indicator')
|
|
206
|
+
rawRatios[pane.id] = 1;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
else {
|
|
210
|
+
rawRatios[paneId] = 1;
|
|
211
|
+
}
|
|
212
|
+
const visibleTotal = visible.reduce((sum, pane) => sum + (rawRatios[pane.id] ?? 1), 0) || 1;
|
|
213
|
+
const ratios = {};
|
|
214
|
+
for (const pane of nextSpecs) {
|
|
215
|
+
ratios[pane.id] =
|
|
216
|
+
pane.visible === false
|
|
217
|
+
? (rawRatios[pane.id] ?? pane.ratio ?? 1)
|
|
218
|
+
: (rawRatios[pane.id] ?? 1) / visibleTotal;
|
|
219
|
+
}
|
|
220
|
+
const specs = nextSpecs.map((pane) => ({ ...pane, ratio: ratios[pane.id] }));
|
|
221
|
+
batch(() => {
|
|
222
|
+
this.subPane.actions.upsert({ paneId, indicatorId, params });
|
|
223
|
+
this.pane.actions.commitLayout(ratios, specs);
|
|
224
|
+
});
|
|
225
|
+
},
|
|
226
|
+
removeSubPane: (paneId) => {
|
|
227
|
+
if (!this.subPane.readonly.entries.peek().some((entry) => entry.paneId === paneId))
|
|
228
|
+
return;
|
|
229
|
+
const specs = this.pane.readonly.paneSpecs.peek().filter((pane) => pane.id !== paneId);
|
|
230
|
+
const rawRatios = { ...this.pane.readonly.paneRatios.peek() };
|
|
231
|
+
delete rawRatios[paneId];
|
|
232
|
+
const visible = specs.filter((pane) => pane.visible !== false);
|
|
233
|
+
const total = visible.reduce((sum, pane) => sum + (rawRatios[pane.id] ?? 1), 0) || 1;
|
|
234
|
+
const ratios = {};
|
|
235
|
+
for (const pane of specs) {
|
|
236
|
+
ratios[pane.id] =
|
|
237
|
+
pane.visible === false
|
|
238
|
+
? (rawRatios[pane.id] ?? pane.ratio ?? 1)
|
|
239
|
+
: (rawRatios[pane.id] ?? 1) / total;
|
|
240
|
+
}
|
|
241
|
+
const nextSpecs = specs.map((pane) => ({ ...pane, ratio: ratios[pane.id] }));
|
|
242
|
+
batch(() => {
|
|
243
|
+
this.subPane.actions.remove(paneId);
|
|
244
|
+
this.pane.actions.commitLayout(ratios, nextSpecs);
|
|
245
|
+
});
|
|
246
|
+
},
|
|
247
|
+
replaceSubPane: (paneId, indicatorId, params) => {
|
|
248
|
+
if (!this.subPane.readonly.entries.peek().some((entry) => entry.paneId === paneId))
|
|
249
|
+
return;
|
|
250
|
+
this.subPane.actions.replace({ paneId, indicatorId, params });
|
|
251
|
+
},
|
|
252
|
+
updateSubPaneParams: (paneId, params) => this.subPane.actions.setParams(paneId, params),
|
|
253
|
+
clearSubPanes: () => {
|
|
254
|
+
const subPaneIds = new Set(this.subPane.readonly.entries.peek().map((entry) => entry.paneId));
|
|
255
|
+
const specs = this.pane.readonly.paneSpecs.peek().filter((pane) => !subPaneIds.has(pane.id));
|
|
256
|
+
const ratios = {};
|
|
257
|
+
const visible = specs.filter((pane) => pane.visible !== false);
|
|
258
|
+
const total = visible.reduce((sum, pane) => sum + (this.pane.readonly.paneRatios.peek()[pane.id] ?? 1), 0) || 1;
|
|
259
|
+
for (const pane of specs) {
|
|
260
|
+
const raw = this.pane.readonly.paneRatios.peek()[pane.id] ?? 1;
|
|
261
|
+
ratios[pane.id] = pane.visible === false ? raw : raw / total;
|
|
262
|
+
}
|
|
263
|
+
batch(() => {
|
|
264
|
+
this.subPane.actions.clear();
|
|
265
|
+
this.pane.actions.commitLayout(ratios, specs.map((pane) => ({ ...pane, ratio: ratios[pane.id] })));
|
|
266
|
+
});
|
|
267
|
+
},
|
|
268
|
+
// customMarkers 变更须走 Chart.update/clear/registerCustomMarkers:
|
|
269
|
+
// 同步 clearPositionCache + scheduleDraw。勿在此暴露仅写 state 的 flat actions。
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
setViewportDomDeps(deps) {
|
|
273
|
+
this.viewport.setDomDeps(deps);
|
|
274
|
+
}
|
|
275
|
+
initViewport() {
|
|
276
|
+
this.viewport.actions.init();
|
|
277
|
+
}
|
|
278
|
+
dispose() {
|
|
279
|
+
this.options.dispose();
|
|
280
|
+
this.zoom.dispose();
|
|
281
|
+
this.data.dispose();
|
|
282
|
+
this.viewport.dispose();
|
|
283
|
+
this.pane.dispose();
|
|
284
|
+
this.theme.dispose();
|
|
285
|
+
this.settings.dispose();
|
|
286
|
+
this.mode.dispose();
|
|
287
|
+
this.drawing.dispose();
|
|
288
|
+
this.interaction.dispose();
|
|
289
|
+
this.dataManager.dispose();
|
|
290
|
+
this.comparison.dispose();
|
|
291
|
+
this.indicator.dispose();
|
|
292
|
+
this.subPane.dispose();
|
|
293
|
+
this.marker.dispose();
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
//# sourceMappingURL=chartStateKernel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chartStateKernel.js","sourceRoot":"","sources":["../../../src/engine/state/chartStateKernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,eAAe,EAAuC,MAAM,aAAa,CAAA;AAClF,OAAO,EAAE,eAAe,EAAwB,MAAM,aAAa,CAAA;AACnE,OAAO,EACL,mBAAmB,GAGpB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,eAAe,EAAwB,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAyB,MAAM,cAAc,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAA4B,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAwB,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,kBAAkB,EAA2B,MAAM,gBAAgB,CAAA;AAC5E,OAAO,EACL,sBAAsB,GAGvB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,sBAAsB,EAA+B,MAAM,oBAAoB,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAA2B,MAAM,gBAAgB,CAAA;AAC5E,OAAO,EAAE,qBAAqB,EAA8B,MAAM,mBAAmB,CAAA;AACrF,OAAO,EAAE,oBAAoB,EAA6B,MAAM,kBAAkB,CAAA;AAClF,OAAO,EAAE,kBAAkB,EAA2B,MAAM,gBAAgB,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAA0B,MAAM,eAAe,CAAA;AACzE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAuB,MAAM,oCAAoC,CAAA;AA6BzF,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IACtC,OAAO,CAAoB;IAC3B,IAAI,CAAiB;IACrB,IAAI,CAAiB;IACrB,QAAQ,CAAqB;IAC7B,IAAI,CAAiB;IACrB,KAAK,CAAkB;IACvB,QAAQ,CAAqB;IAC7B,IAAI,CAAiB;IACrB,OAAO,CAAoB;IAC3B,WAAW,CAAwB;IACnC,WAAW,CAAwB;IACnC,UAAU,CAAuB;IACjC,SAAS,CAAsB;IAC/B,OAAO,CAAoB;IAC3B,MAAM,CAAmB;IAEzB,UAAU,CAAwB;IAClC,WAAW,CAAwB;IACnC,mBAAmB,CAG1B;IAEO,OAAO,CAAyC;IAChD,OAAO,CAA0C;IAE1D,YAAY,IAA0B;QACpC,KAAK,EAAE,CAAA;QAEP,mEAAmE;QACnE,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAEtD,mBAAmB;QACnB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;YAC1B,UAAU,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC;YACrE,UAAU,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC;YACrE,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,cAAc,CAAC,CAAC;SAC7F,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAErD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;QAChE,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;YACzC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,gBAAgB;YAClE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;SACpC,CAAC,CAAC,CAAA;QAEH,mBAAmB;QACnB,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,CAAA;QAC7B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;QAElE,gDAAgD;QAChD,IAAI,CAAC,WAAW,GAAG,sBAAsB,EAAE,CAAA;QAE3C,yBAAyB;QACzB,IAAI,CAAC,UAAU,GAAG,qBAAqB,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;QAEjF,wBAAwB;QACxB,IAAI,CAAC,SAAS,GAAG,oBAAoB,EAAE,CAAA;QAEvC,gCAAgC;QAChC,IAAI,CAAC,OAAO,GAAG,kBAAkB,EAAE,CAAA;QAEnC,8BAA8B;QAC9B,IAAI,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAA;QAEjC,6CAA6C;QAC7C,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC;YAClC,QAAQ,EAAE,IAAI,CAAC,mBAAmB;YAClC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa;YAChD,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAA;QAEF,uEAAuE;QACvE,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,CAAA;QAC7B,CAAC;YACC,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;YACnF,MAAM,aAAa,GAA2B,EAAE,CAAA;YAChD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gBAChC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;YAC1C,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,CAAA;QAC7D,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,KAAK,GAAG,gBAAgB,EAAE,CAAA;QAE/B,yEAAyE;QACzE,IAAI,CAAC,QAAQ,GAAG,mBAAmB,EAAE,CAAA;QAErC,6DAA6D;QAC7D,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,CAAA;QAE7B,sBAAsB;QACtB,IAAI,CAAC,OAAO,GAAG,kBAAkB,EAAE,CAAA;QAEnC,4DAA4D;QAC5D,IAAI,CAAC,WAAW,GAAG,sBAAsB,CAAC;YACxC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAG7B;YACT,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;iBACvC,iBAAsD;YACzD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAwC;YACrE,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAA;QAEF,gDAAgD;QAChD,IAAI,CAAC,OAAO,GAAG;YACb,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YACvC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM;YACjC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI;YACjC,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI;YAC7B,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU;YACzC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;YACnC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;YACnC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa;YAC/C,WAAW;YACX,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ;YACzC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa;YACnD,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY;YACjD,iBAAiB,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB;YAC3D,OAAO;YACP,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU;YACzC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YACvC,QAAQ;YACR,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK;YAChC,WAAW;YACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ;YACzC,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;YACvC,mBAAmB;YACnB,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc;YACjD,UAAU;YACV,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW;YAC9C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;YACxC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;YAC1D,cAAc;YACd,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,mBAAmB;YAClE,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc;YACxD,aAAa;YACb,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM;YACjD,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;YACnD,YAAY;YACZ,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc;YACtD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO;YACvC,SAAS;YACT,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa;SAClD,CAAA;QAED,gDAAgD;QAChD,IAAI,CAAC,OAAO,GAAG;YACb,YAAY,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;YACtE,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC;YAC9E,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE;YAC9D,OAAO,EAAE,CAAC,IAA4B,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YAC1E,UAAU,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;YACvE,UAAU,EAAE,CAAC,OAAkC,EAAE,EAAE;gBACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAA;gBACzD,KAAK,CAAC,GAAG,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;oBACtC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvD,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,CAAC,OAAkC,EAAE,EAAE,CACvD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC7C,kBAAkB,EAAE,CAAC,GAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC;YACrF,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YAC1C,aAAa,EAAE,CAAC,MAA8B,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;YAC1F,YAAY,EAAE,CAAC,KAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;YAC1E,gBAAgB,EAAE,CAAC,MAA8B,EAAE,KAAiB,EAAE,EAAE,CACtE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC;YAC/C,QAAQ,EAAE,CAAC,KAAuB,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzE,cAAc,EAAE,CAAC,IAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;YAClF,WAAW,EAAE,CAAC,QAAsC,EAAE,EAAE,CACtD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC;YAC5C,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE;YACzD,eAAe,EAAE,CAAC,GAAoC,EAAE,KAAoB,EAAE,EAAE,CAC9E,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC;YACtD,WAAW,EAAE,CAAC,KAAoB,EAAE,MAAqB,EAAE,EAAE,CAC3D,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;YACrD,eAAe,EAAE,CAAC,KAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;YAC1F,eAAe,EAAE,CAAC,MAAqB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC;YAC5F,oBAAoB,EAAE,CACpB,SAA0B,EAC1B,OAAwB,EACxB,QAAuB,EACvB,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC;YAChF,SAAS,EAAE,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YACvE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE;YACjD,WAAW,EAAE,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;YAC3E,iBAAiB,EAAE,CAAC,MAAqB,EAAE,EAAE,CAC3C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC;YACpD,iBAAiB,EAAE,CAAC,MAAqB,EAAE,EAAE,CAC3C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC;YACpD,aAAa,EAAE,CAAC,GAA6B,EAAE,SAAyC,EAAE,EAAE,CAC1F,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC;YACxD,iBAAiB,EAAE,CACjB,QAAuB,EACvB,UAA+B,EAC/B,gBAA2C,EAC3C,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,EAAE,gBAAgB,CAAC;YACvF,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE;YACxD,mBAAmB,EAAE,CAAC,MAAmC,EAAE,EAAE,CAC3D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;YAC3C,oBAAoB,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;YACvF,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC;YAC9E,mBAAmB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9D,sBAAsB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC;YACpF,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;YAC9E,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE;YACzD,aAAa,EAAE,CACb,MAAc,EACd,WAAmB,EACnB,MAAyC,EACzC,EAAE;gBACF,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;oBAAE,OAAM;gBACzF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;gBACxD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC;oBAC/D,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;oBAC3C,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAoB,EAAE,CAAC,CAAA;gBAC1F,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAA;gBAClE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAA;gBAClE,MAAM,SAAS,GAA2B;oBACxC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;iBACxC,CAAA;gBACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,SAAS,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;oBAChC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;wBAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;4BAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;oBACvD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACvB,CAAC;gBACD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;gBAC3F,MAAM,MAAM,GAA2B,EAAE,CAAA;gBACzC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;oBAC7B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;wBACb,IAAI,CAAC,OAAO,KAAK,KAAK;4BACpB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;4BACzC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,YAAY,CAAA;gBAChD,CAAC;gBACD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC5E,KAAK,CAAC,GAAG,EAAE;oBACT,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;oBAC5D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;gBAC/C,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,aAAa,EAAE,CAAC,MAAc,EAAE,EAAE;gBAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;oBAAE,OAAM;gBAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;gBACtF,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAA;gBAC7D,OAAO,SAAS,CAAC,MAAM,CAAC,CAAA;gBACxB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAA;gBAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;gBACpF,MAAM,MAAM,GAA2B,EAAE,CAAA;gBACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;wBACb,IAAI,CAAC,OAAO,KAAK,KAAK;4BACpB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;4BACzC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAA;gBACzC,CAAC;gBACD,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC5E,KAAK,CAAC,GAAG,EAAE;oBACT,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;oBACnC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;gBACnD,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,cAAc,EAAE,CACd,MAAc,EACd,WAAmB,EACnB,MAAyC,EACzC,EAAE;gBACF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;oBAAE,OAAM;gBAC1F,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;YAC/D,CAAC;YACD,mBAAmB,EAAE,CAAC,MAAc,EAAE,MAAyC,EAAE,EAAE,CACjF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;YAChD,aAAa,EAAE,GAAG,EAAE;gBAClB,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAClE,CAAA;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC5F,MAAM,MAAM,GAA2B,EAAE,CAAA;gBACzC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAA;gBAC9D,MAAM,KAAK,GACT,OAAO,CAAC,MAAM,CACZ,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EACzE,CAAC,CACF,IAAI,CAAC,CAAA;gBACR,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;oBAC9D,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAA;gBAC9D,CAAC;gBACD,KAAK,CAAC,GAAG,EAAE;oBACT,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;oBAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAC5B,MAAM,EACN,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAC3D,CAAA;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,+DAA+D;YAC/D,qEAAqE;SACtE,CAAA;IACH,CAAC;IAED,kBAAkB,CAAC,IAAqB;QACtC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAED,OAAO;QACL,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QACnB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QACnB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;QACpB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QACnB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QACtB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAA;QAC1B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAA;QAC1B,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAA;QACxB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QACtB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IACvB,CAAC;CACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type ReadonlySignal } from '../../foundation/reactivity/signal';
|
|
2
|
+
import type { SymbolSpec } from '../../controllers/types';
|
|
3
|
+
export interface ComparisonStateDeps {
|
|
4
|
+
symbols$: ReadonlySignal<ReadonlyArray<SymbolSpec>>;
|
|
5
|
+
}
|
|
6
|
+
export declare function createComparisonState(deps?: ComparisonStateDeps): {
|
|
7
|
+
readonly: {
|
|
8
|
+
specs: ReadonlySignal<readonly SymbolSpec[]>;
|
|
9
|
+
colors: ReadonlySignal<ReadonlyMap<string, string>>;
|
|
10
|
+
loading: ReadonlySignal<boolean>;
|
|
11
|
+
};
|
|
12
|
+
actions: {
|
|
13
|
+
setColors(colors: ReadonlyMap<string, string>): void;
|
|
14
|
+
setLoading(loading: boolean): void;
|
|
15
|
+
syncColors(specs: ReadonlyArray<SymbolSpec>): void;
|
|
16
|
+
clear(): void;
|
|
17
|
+
};
|
|
18
|
+
dispose(): void;
|
|
19
|
+
};
|
|
20
|
+
export type ComparisonStateModule = ReturnType<typeof createComparisonState>;
|
|
21
|
+
//# sourceMappingURL=comparisonState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparisonState.d.ts","sourceRoot":"","sources":["../../../src/engine/state/comparisonState.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAMzD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;CACpD;AAiBD,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,mBAAmB;;;;;;;0BAUxC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC;4BAGzB,OAAO;0BAGT,aAAa,CAAC,UAAU,CAAC;;;;EA2BhD;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { batch, computed, createSubState, } from '../../foundation/reactivity/signal';
|
|
2
|
+
import { immutableMap } from './immutable';
|
|
3
|
+
const COMPARISON_PALETTE = ['#f59e0b', '#8b5cf6', '#06b6d4', '#ec4899', '#84cc16', '#f97316'];
|
|
4
|
+
const DEFAULT_COMPARISON_COLOR = '#f59e0b';
|
|
5
|
+
function snapshotSpecs(specs) {
|
|
6
|
+
return Object.freeze(specs.map((spec) => Object.freeze({ ...spec })));
|
|
7
|
+
}
|
|
8
|
+
function colorsEqual(left, right) {
|
|
9
|
+
if (left.size !== right.size)
|
|
10
|
+
return false;
|
|
11
|
+
for (const [symbol, color] of left) {
|
|
12
|
+
if (right.get(symbol) !== color)
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
export function createComparisonState(deps) {
|
|
18
|
+
const { signals, readonly } = createSubState({
|
|
19
|
+
colors: immutableMap(new Map()),
|
|
20
|
+
loading: false,
|
|
21
|
+
});
|
|
22
|
+
const specs = computed(() => snapshotSpecs(deps?.symbols$().slice(1) ?? []));
|
|
23
|
+
return {
|
|
24
|
+
readonly: { ...readonly, specs },
|
|
25
|
+
actions: {
|
|
26
|
+
setColors(colors) {
|
|
27
|
+
signals.colors.set(immutableMap(colors));
|
|
28
|
+
},
|
|
29
|
+
setLoading(loading) {
|
|
30
|
+
signals.loading.set(loading);
|
|
31
|
+
},
|
|
32
|
+
syncColors(specs) {
|
|
33
|
+
const prev = signals.colors.peek();
|
|
34
|
+
const next = new Map();
|
|
35
|
+
for (const spec of specs) {
|
|
36
|
+
next.set(spec.symbol, prev.get(spec.symbol) ??
|
|
37
|
+
COMPARISON_PALETTE[next.size % COMPARISON_PALETTE.length] ??
|
|
38
|
+
DEFAULT_COMPARISON_COLOR);
|
|
39
|
+
}
|
|
40
|
+
if (!colorsEqual(prev, next))
|
|
41
|
+
signals.colors.set(immutableMap(next));
|
|
42
|
+
},
|
|
43
|
+
clear() {
|
|
44
|
+
batch(() => {
|
|
45
|
+
signals.colors.set(immutableMap(new Map()));
|
|
46
|
+
signals.loading.set(false);
|
|
47
|
+
});
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
dispose() {
|
|
51
|
+
batch(() => {
|
|
52
|
+
signals.colors.set(immutableMap(new Map()));
|
|
53
|
+
signals.loading.set(false);
|
|
54
|
+
});
|
|
55
|
+
},
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=comparisonState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparisonState.js","sourceRoot":"","sources":["../../../src/engine/state/comparisonState.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type ContentGeometryInput = {
|
|
2
|
+
viewWidth: number;
|
|
3
|
+
plotWidth: number;
|
|
4
|
+
dataLength: number;
|
|
5
|
+
period: string;
|
|
6
|
+
dpr: number;
|
|
7
|
+
kWidth: number;
|
|
8
|
+
kGap: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function computeLeftLoadBufferWidth(input: ContentGeometryInput): number;
|
|
11
|
+
export declare function computeContentWidth(input: ContentGeometryInput): number;
|
|
12
|
+
export declare function computeMaxScrollLeft(contentWidth: number, viewWidth: number): number;
|
|
13
|
+
//# sourceMappingURL=contentGeometry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contentGeometry.d.ts","sourceRoot":"","sources":["../../../src/engine/state/contentGeometry.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAG9E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAUvE;AAED,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SCROLL_TRAILING_SLOTS } from '../data/scrollCompensator';
|
|
2
|
+
import { getPhysicalKLineConfig } from '../utils/klineConfig';
|
|
3
|
+
export function computeLeftLoadBufferWidth(input) {
|
|
4
|
+
if (input.dataLength === 0 || input.period === 'timeshare')
|
|
5
|
+
return 0;
|
|
6
|
+
return Math.round(input.viewWidth);
|
|
7
|
+
}
|
|
8
|
+
export function computeContentWidth(input) {
|
|
9
|
+
if (input.dataLength === 0)
|
|
10
|
+
return 0;
|
|
11
|
+
const left = computeLeftLoadBufferWidth(input);
|
|
12
|
+
if (input.period === 'timeshare') {
|
|
13
|
+
return left + Math.max(input.viewWidth, 1);
|
|
14
|
+
}
|
|
15
|
+
const { startXPx, unitPx } = getPhysicalKLineConfig(input.kWidth, input.kGap, input.dpr);
|
|
16
|
+
const dataPlotWidth = (startXPx + (input.dataLength + SCROLL_TRAILING_SLOTS) * unitPx) / input.dpr;
|
|
17
|
+
return left + Math.max(dataPlotWidth, input.viewWidth);
|
|
18
|
+
}
|
|
19
|
+
export function computeMaxScrollLeft(contentWidth, viewWidth) {
|
|
20
|
+
return Math.max(0, contentWidth - viewWidth);
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=contentGeometry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contentGeometry.js","sourceRoot":"","sources":["../../../src/engine/state/contentGeometry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAY7D,MAAM,UAAU,0BAA0B,CAAC,KAA2B;IACpE,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,CAAC,CAAA;IACpE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;AACpC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAA2B;IAC7D,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IACpC,MAAM,IAAI,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAA;IAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACjC,OAAO,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAC5C,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IACxF,MAAM,aAAa,GACjB,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,qBAAqB,CAAC,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAA;IAC9E,OAAO,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,YAAoB,EAAE,SAAiB;IAC1E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,CAAA;AAC9C,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { SymbolSpec } from '../../controllers/types';
|
|
2
|
+
export interface IncrementalLoadBatch {
|
|
3
|
+
readonly count: number;
|
|
4
|
+
readonly leftBufferWidth: number;
|
|
5
|
+
}
|
|
6
|
+
export declare function createDataManagerState(): {
|
|
7
|
+
readonly: {
|
|
8
|
+
currentSpec: import("../..").ReadonlySignal<SymbolSpec | null>;
|
|
9
|
+
savedScrollTimestamp: import("../..").ReadonlySignal<number | null>;
|
|
10
|
+
preCustomSpec: import("../..").ReadonlySignal<SymbolSpec | null>;
|
|
11
|
+
rangeInitialized: import("../..").ReadonlySignal<boolean>;
|
|
12
|
+
pendingIncrementalLoad: import("../..").ReadonlySignal<IncrementalLoadBatch>;
|
|
13
|
+
} & {
|
|
14
|
+
currentPeriod: import("../..").ReadonlySignal<string>;
|
|
15
|
+
};
|
|
16
|
+
actions: {
|
|
17
|
+
setCurrentSpec(spec: SymbolSpec | null): void;
|
|
18
|
+
setSavedScrollTimestamp(ts: number | null): void;
|
|
19
|
+
setPreCustomSpec(spec: SymbolSpec | null): void;
|
|
20
|
+
setRangeInitialized(v: boolean): void;
|
|
21
|
+
recordIncrementalLoad(count: number, leftBufferWidth: number): void;
|
|
22
|
+
flushIncrementalLoad(): IncrementalLoadBatch;
|
|
23
|
+
resetIncrementalLoad(): void;
|
|
24
|
+
reset(): void;
|
|
25
|
+
};
|
|
26
|
+
dispose(): void;
|
|
27
|
+
};
|
|
28
|
+
export type DataManagerStateModule = ReturnType<typeof createDataManagerState>;
|
|
29
|
+
//# sourceMappingURL=dataManagerState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataManagerState.d.ts","sourceRoot":"","sources":["../../../src/engine/state/dataManagerState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEzD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC;AAMD,wBAAgB,sBAAsB;;;;;;;;;;;6BAkBX,UAAU,GAAG,IAAI;oCAIV,MAAM,GAAG,IAAI;+BAIlB,UAAU,GAAG,IAAI;+BAIjB,OAAO;qCAID,MAAM,mBAAmB,MAAM;gCAQpC,oBAAoB;;;;;EA+BjD;AAED,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { batch, createSubState } from '../../foundation/reactivity/signal';
|
|
2
|
+
function emptyIncrementalLoadBatch() {
|
|
3
|
+
return { count: 0, leftBufferWidth: 0 };
|
|
4
|
+
}
|
|
5
|
+
export function createDataManagerState() {
|
|
6
|
+
const { signals, readonly } = createSubState({
|
|
7
|
+
currentSpec: null,
|
|
8
|
+
savedScrollTimestamp: null,
|
|
9
|
+
preCustomSpec: null,
|
|
10
|
+
rangeInitialized: false,
|
|
11
|
+
pendingIncrementalLoad: emptyIncrementalLoadBatch(),
|
|
12
|
+
}, {
|
|
13
|
+
currentPeriod: (s) => s.currentSpec()?.period ?? 'daily',
|
|
14
|
+
});
|
|
15
|
+
return {
|
|
16
|
+
readonly,
|
|
17
|
+
actions: {
|
|
18
|
+
setCurrentSpec(spec) {
|
|
19
|
+
signals.currentSpec.set(spec);
|
|
20
|
+
},
|
|
21
|
+
setSavedScrollTimestamp(ts) {
|
|
22
|
+
signals.savedScrollTimestamp.set(ts);
|
|
23
|
+
},
|
|
24
|
+
setPreCustomSpec(spec) {
|
|
25
|
+
signals.preCustomSpec.set(spec);
|
|
26
|
+
},
|
|
27
|
+
setRangeInitialized(v) {
|
|
28
|
+
signals.rangeInitialized.set(v);
|
|
29
|
+
},
|
|
30
|
+
recordIncrementalLoad(count, leftBufferWidth) {
|
|
31
|
+
const pending = signals.pendingIncrementalLoad.peek();
|
|
32
|
+
signals.pendingIncrementalLoad.set({
|
|
33
|
+
count: pending.count + count,
|
|
34
|
+
leftBufferWidth,
|
|
35
|
+
});
|
|
36
|
+
},
|
|
37
|
+
flushIncrementalLoad() {
|
|
38
|
+
const pending = signals.pendingIncrementalLoad.peek();
|
|
39
|
+
signals.pendingIncrementalLoad.set(emptyIncrementalLoadBatch());
|
|
40
|
+
return pending;
|
|
41
|
+
},
|
|
42
|
+
resetIncrementalLoad() {
|
|
43
|
+
signals.pendingIncrementalLoad.set(emptyIncrementalLoadBatch());
|
|
44
|
+
},
|
|
45
|
+
reset() {
|
|
46
|
+
batch(() => {
|
|
47
|
+
signals.currentSpec.set(null);
|
|
48
|
+
signals.savedScrollTimestamp.set(null);
|
|
49
|
+
signals.preCustomSpec.set(null);
|
|
50
|
+
signals.rangeInitialized.set(false);
|
|
51
|
+
signals.pendingIncrementalLoad.set(emptyIncrementalLoadBatch());
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
dispose() {
|
|
56
|
+
batch(() => {
|
|
57
|
+
signals.currentSpec.set(null);
|
|
58
|
+
signals.savedScrollTimestamp.set(null);
|
|
59
|
+
signals.preCustomSpec.set(null);
|
|
60
|
+
signals.rangeInitialized.set(false);
|
|
61
|
+
signals.pendingIncrementalLoad.set(emptyIncrementalLoadBatch());
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=dataManagerState.js.map
|