@vninvestcharts/widget 0.0.0-stage → 0.2.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/LICENSE +201 -0
- package/NOTICE.md +83 -0
- package/README.md +851 -3
- package/dist/AlertsModal-WKEUDTUZ.js +2 -0
- package/dist/ConnectedTradingPanel-KWJMIKTN.css +2 -0
- package/dist/ConnectedTradingPanel-XDKMOQY5.js +2 -0
- package/dist/PineEditorPanel-AUXB4FD3.js +2 -0
- package/dist/PineEditorPanel-V6YN2OTU.css +2 -0
- package/dist/RightSidebarDockHost-6FPZ6EKV.css +2 -0
- package/dist/RightSidebarDockHost-OBFXKSIY.js +2 -0
- package/dist/StrategyTesterPanel-6IUTS2P4.js +2 -0
- package/dist/StrategyTesterPanel-LEWEUMXP.css +2 -0
- package/dist/VolumeProfileWorker-UREKVPUE.js +189 -0
- package/dist/adapters/index.cjs +2532 -0
- package/dist/adapters/index.d.mts +673 -0
- package/dist/adapters/index.d.ts +673 -0
- package/dist/adapters/index.js +2521 -0
- package/dist/adapters/index.umd.js +2535 -0
- package/dist/chunk-5T6DGB3V.js +2 -0
- package/dist/chunk-66JBEGR3.js +4 -0
- package/dist/chunk-6D7DVBIK.js +2 -0
- package/dist/chunk-76E7CKUD.js +2 -0
- package/dist/chunk-AKWVXRQ6.js +2 -0
- package/dist/chunk-FHHSTO6Z.js +2 -0
- package/dist/chunk-HPL723JA.js +2 -0
- package/dist/chunk-NVGTF73S.js +2 -0
- package/dist/chunk-PNIB4OM3.js +2 -0
- package/dist/chunk-UKJ5AKQX.js +595 -0
- package/dist/chunk-UYJTX3SD.js +2 -0
- package/dist/combined.css +3068 -0
- package/dist/css-modules-manifest.json +297 -0
- package/dist/dist-Y6PZ2RN3.js +12 -0
- package/dist/drawing/index.cjs +53 -0
- package/dist/drawing/index.d.mts +2 -0
- package/dist/drawing/index.d.ts +2 -0
- package/dist/drawing/index.js +2 -0
- package/dist/drawing/index.umd.js +54 -0
- package/dist/dts/drawing-shim.d.ts +3 -0
- package/dist/dts/index.d.ts +31 -0
- package/dist/dts/lib/Chart.d.ts +31 -0
- package/dist/dts/lib/ChartContext.d.ts +10 -0
- package/dist/dts/lib/EventCapture.d.ts +3 -0
- package/dist/dts/lib/GenericChartComponent.d.ts +5 -0
- package/dist/dts/lib/GenericComponent.d.ts +124 -0
- package/dist/dts/lib/StockChartContext.d.ts +53 -0
- package/dist/dts/lib/adapters/BaseAdapter.d.ts +25 -0
- package/dist/dts/lib/adapters/BinanceAdapter.d.ts +51 -0
- package/dist/dts/lib/adapters/CSVAdapter.d.ts +17 -0
- package/dist/dts/lib/adapters/ContinuousContractAdapter.d.ts +63 -0
- package/dist/dts/lib/adapters/ContinuousContractTypes.d.ts +154 -0
- package/dist/dts/lib/adapters/DBAdapter.d.ts +16 -0
- package/dist/dts/lib/adapters/DataAdapter.d.ts +136 -0
- package/dist/dts/lib/adapters/DjangoVnstockAdapter.d.ts +15 -0
- package/dist/dts/lib/adapters/LocalCacheAdapter.d.ts +18 -0
- package/dist/dts/lib/adapters/MockAdapter.d.ts +22 -0
- package/dist/dts/lib/adapters/RESTAdapter.d.ts +16 -0
- package/dist/dts/lib/adapters/StockDataAdapter.d.ts +1 -0
- package/dist/dts/lib/adapters/UDFDataAdapter.d.ts +29 -0
- package/dist/dts/lib/adapters/VNStocksAdapter.d.ts +8 -0
- package/dist/dts/lib/adapters/WSAdapter.d.ts +30 -0
- package/dist/dts/lib/adapters/gapFixture.d.ts +71 -0
- package/dist/dts/lib/adapters/index.d.ts +15 -0
- package/dist/dts/lib/adapters/rollAlgorithms.d.ts +68 -0
- package/dist/dts/lib/advisory/AdvisoryPanel.d.ts +5 -0
- package/dist/dts/lib/alerts/AlertEvaluator.d.ts +5 -0
- package/dist/dts/lib/alerts/AlertManager.d.ts +123 -0
- package/dist/dts/lib/alerts/types.d.ts +58 -0
- package/dist/dts/lib/cache/cacheDebug.d.ts +3 -0
- package/dist/dts/lib/calendars/ExchangeCalendar.d.ts +23 -0
- package/dist/dts/lib/calendars/calendarRegistry.d.ts +10 -0
- package/dist/dts/lib/calendars/index.d.ts +3 -0
- package/dist/dts/lib/core/ChartPane.d.ts +8 -0
- package/dist/dts/lib/core/ChartSplitter.d.ts +70 -0
- package/dist/dts/lib/core/ChartTerminal.d.ts +12 -0
- package/dist/dts/lib/core/ErrorBoundary.d.ts +17 -0
- package/dist/dts/lib/core/IndicatorLegend.d.ts +47 -0
- package/dist/dts/lib/core/PaneHeader.d.ts +24 -0
- package/dist/dts/lib/core/PaneLabel.d.ts +8 -0
- package/dist/dts/lib/core/PaneSplitter.d.ts +9 -0
- package/dist/dts/lib/core/SeriesPicker.d.ts +10 -0
- package/dist/dts/lib/core/calculators/alignBarsByDate.d.ts +38 -0
- package/dist/dts/lib/core/calculators/buildIndicatorComputationPlan.d.ts +16 -0
- package/dist/dts/lib/core/calculators/calcCVDApprox.d.ts +6 -0
- package/dist/dts/lib/core/calculators/calcStrengthElder.d.ts +7 -0
- package/dist/dts/lib/core/calculators/calcWhaleApprox.d.ts +6 -0
- package/dist/dts/lib/core/calculators/computationHelpers.d.ts +12 -0
- package/dist/dts/lib/core/calculators/computeIndicatorComputationResult.d.ts +3 -0
- package/dist/dts/lib/core/calculators/computeMarketStructure.d.ts +8 -0
- package/dist/dts/lib/core/calculators/computeMomentum.d.ts +22 -0
- package/dist/dts/lib/core/calculators/computeMovingAverage.d.ts +15 -0
- package/dist/dts/lib/core/calculators/computeProfile.d.ts +9 -0
- package/dist/dts/lib/core/calculators/computeTrend.d.ts +10 -0
- package/dist/dts/lib/core/calculators/computeVolatility.d.ts +14 -0
- package/dist/dts/lib/core/calculators/computeVolumeFlow.d.ts +19 -0
- package/dist/dts/lib/core/calculators/enrichData.d.ts +7 -0
- package/dist/dts/lib/core/calculators/enrichDataWithCanonicalStore.d.ts +33 -0
- package/dist/dts/lib/core/calculators/exoticChartData.d.ts +140 -0
- package/dist/dts/lib/core/calculators/fixtures/mockData.d.ts +2 -0
- package/dist/dts/lib/core/calculators/indicatorComputation.d.ts +27 -0
- package/dist/dts/lib/core/calculators/indicatorComputationTypes.d.ts +249 -0
- package/dist/dts/lib/core/calculators/materializeIndicatorValues.d.ts +3 -0
- package/dist/dts/lib/core/calculators/normalizePrices.d.ts +36 -0
- package/dist/dts/lib/core/calculators/resolveCalculationOrder.d.ts +17 -0
- package/dist/dts/lib/core/calculators/types.d.ts +269 -0
- package/dist/dts/lib/core/canvas/ChartRenderContext.d.ts +14 -0
- package/dist/dts/lib/core/canvas/OverlayCanvas.d.ts +19 -0
- package/dist/dts/lib/core/context/ChartSyncContext.d.ts +21 -0
- package/dist/dts/lib/core/context/DataContext.d.ts +15 -0
- package/dist/dts/lib/core/context/PaneManagerContext.d.ts +10 -0
- package/dist/dts/lib/core/hooks/paneSizingHelpers.d.ts +13 -0
- package/dist/dts/lib/core/hooks/useCanvasResize.d.ts +8 -0
- package/dist/dts/lib/core/hooks/useChartTheme.d.ts +12 -0
- package/dist/dts/lib/core/hooks/useDynamicPanes.d.ts +155 -0
- package/dist/dts/lib/core/hooks/useIndicatorSets.d.ts +20 -0
- package/dist/dts/lib/core/hooks/usePaneManager.d.ts +39 -0
- package/dist/dts/lib/core/hooks/usePaneSizes.d.ts +52 -0
- package/dist/dts/lib/core/index.d.ts +41 -0
- package/dist/dts/lib/core/paneScaleSlotDomains.d.ts +3 -0
- package/dist/dts/lib/core/registry/SeriesRegistry.d.ts +22 -0
- package/dist/dts/lib/core/registry/filterPanesBySeriesTier.d.ts +43 -0
- package/dist/dts/lib/core/registry/marketStructure.d.ts +7 -0
- package/dist/dts/lib/core/registry/momentum.d.ts +20 -0
- package/dist/dts/lib/core/registry/movingAverage.d.ts +14 -0
- package/dist/dts/lib/core/registry/priceChartTypes.d.ts +16 -0
- package/dist/dts/lib/core/registry/profile.d.ts +8 -0
- package/dist/dts/lib/core/registry/registerAll.d.ts +1 -0
- package/dist/dts/lib/core/registry/registerPhaseOne.d.ts +3 -0
- package/dist/dts/lib/core/registry/registryCore.d.ts +77 -0
- package/dist/dts/lib/core/registry/trend.d.ts +11 -0
- package/dist/dts/lib/core/registry/volatility.d.ts +11 -0
- package/dist/dts/lib/core/registry/volumeFlow.d.ts +20 -0
- package/dist/dts/lib/core/replay/BarReplayController.d.ts +62 -0
- package/dist/dts/lib/core/replay/ReplayEventBus.d.ts +68 -0
- package/dist/dts/lib/core/replay/ReplayFillSimulator.d.ts +33 -0
- package/dist/dts/lib/core/replay/ReplayOrderBook.d.ts +24 -0
- package/dist/dts/lib/core/replay/ReplayPositionManager.d.ts +30 -0
- package/dist/dts/lib/core/replay/ReplaySessionAnalytics.d.ts +31 -0
- package/dist/dts/lib/core/replay/createReplayTradeMarkerPrimitives.d.ts +7 -0
- package/dist/dts/lib/core/replay/pnlUtils.d.ts +2 -0
- package/dist/dts/lib/core/replay/replayBrokerAdapters.d.ts +51 -0
- package/dist/dts/lib/core/replay/replayTradingTypes.d.ts +61 -0
- package/dist/dts/lib/core/scales/computeScales.d.ts +8 -0
- package/dist/dts/lib/core/seriesValueResolver.d.ts +27 -0
- package/dist/dts/lib/core/sets/builtins.d.ts +2 -0
- package/dist/dts/lib/core/sets/indicatorSetCodec.d.ts +15 -0
- package/dist/dts/lib/core/trading/AnalyticsEngine.d.ts +56 -0
- package/dist/dts/lib/core/trading/BrokerAPI.d.ts +40 -0
- package/dist/dts/lib/core/trading/ExecutionSimulator.d.ts +53 -0
- package/dist/dts/lib/core/trading/FillSettlement.d.ts +38 -0
- package/dist/dts/lib/core/trading/MarketDataPort.d.ts +41 -0
- package/dist/dts/lib/core/trading/MarketRules.d.ts +58 -0
- package/dist/dts/lib/core/trading/OrderManagementSystem.d.ts +57 -0
- package/dist/dts/lib/core/trading/PositionManager.d.ts +79 -0
- package/dist/dts/lib/core/trading/RiskEngine.d.ts +40 -0
- package/dist/dts/lib/core/trading/SettlementCalendar.d.ts +10 -0
- package/dist/dts/lib/core/trading/VirtualBrokerEngine.d.ts +92 -0
- package/dist/dts/lib/core/trading/orderMargin.d.ts +3 -0
- package/dist/dts/lib/core/trading/storage/InMemoryStorageAdapter.d.ts +10 -0
- package/dist/dts/lib/core/trading/storage/TradingStorage.d.ts +34 -0
- package/dist/dts/lib/core/trading/types.d.ts +99 -0
- package/dist/dts/lib/core/types/chart.d.ts +21 -0
- package/dist/dts/lib/core/types/indicator-catalog.d.ts +38 -0
- package/dist/dts/lib/core/types/indicator-set.d.ts +19 -0
- package/dist/dts/lib/core/types/pane-descriptor.d.ts +46 -0
- package/dist/dts/lib/core/types/seriesComponents.d.ts +15 -0
- package/dist/dts/lib/credentials/credentialStore.d.ts +93 -0
- package/dist/dts/lib/helper/SaveChartAsImage.d.ts +90 -0
- package/dist/dts/lib/indicator/defaultOptionsForAppearance.d.ts +105 -0
- package/dist/dts/lib/indicators/builtin/MTFWrapper.d.ts +3 -0
- package/dist/dts/lib/indicators/builtin/VolumeProfileWorker.d.ts +19 -0
- package/dist/dts/lib/indicators/builtin/ac.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/alligator.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/anchoredVwap.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/ao.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/bbi.d.ts +10 -0
- package/dist/dts/lib/indicators/builtin/bias.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/bollinger.d.ts +9 -0
- package/dist/dts/lib/indicators/builtin/brar.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/cci.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/chaikinOscillator.d.ts +14 -0
- package/dist/dts/lib/indicators/builtin/chaikinVol.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/ci.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/cmf.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/cr.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/cvd.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/deltaProfile.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/dema.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/dma.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/dmi.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/donchian.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/ema.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/emv.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/footprint.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/fractals.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/gator.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/hma.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/hv.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/ichimoku.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/kdj.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/keltner.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/ma.d.ts +10 -0
- package/dist/dts/lib/indicators/builtin/maRibbon.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/macd.d.ts +9 -0
- package/dist/dts/lib/indicators/builtin/marketProfile.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/mfi.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/mtm.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/obv.d.ts +10 -0
- package/dist/dts/lib/indicators/builtin/pivotHighLow.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/pivotStandard.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/psy.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/pvt.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/roc.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/rsi.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/sar.d.ts +10 -0
- package/dist/dts/lib/indicators/builtin/sma.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/smfi.d.ts +8 -0
- package/dist/dts/lib/indicators/builtin/stdDev.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/strengthRelative.d.ts +7 -0
- package/dist/dts/lib/indicators/builtin/supertrend.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/tema.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/trix.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/volOsc.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/volume.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/volumeProfile.d.ts +8 -0
- package/dist/dts/lib/indicators/builtin/vr.d.ts +10 -0
- package/dist/dts/lib/indicators/builtin/vwap.d.ts +5 -0
- package/dist/dts/lib/indicators/builtin/vwma.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/wma.d.ts +4 -0
- package/dist/dts/lib/indicators/builtin/wr.d.ts +10 -0
- package/dist/dts/lib/indicators/builtin/wyckoffWave.d.ts +15 -0
- package/dist/dts/lib/indicators/index.d.ts +63 -0
- package/dist/dts/lib/indicators/indicatorValueShapes.d.ts +15 -0
- package/dist/dts/lib/indicators/outputKeys.d.ts +50 -0
- package/dist/dts/lib/indicators/overlays/CVDIndicator.d.ts +26 -0
- package/dist/dts/lib/indicators/overlays/DarkFlowBadge.d.ts +19 -0
- package/dist/dts/lib/indicators/overlays/ExternalCVDOverlay.d.ts +15 -0
- package/dist/dts/lib/indicators/overlays/WhaleBubbleOverlay.d.ts +14 -0
- package/dist/dts/lib/indicators/overlays/WhaleMarketBubbleOverlay.d.ts +27 -0
- package/dist/dts/lib/indicators/overlays/whaleDetector.d.ts +66 -0
- package/dist/dts/lib/indicators/registry.d.ts +6 -0
- package/dist/dts/lib/indicators/types.d.ts +5 -0
- package/dist/dts/lib/indicators/utils.d.ts +259 -0
- package/dist/dts/lib/pinescript/PineCompiler.d.ts +34 -0
- package/dist/dts/lib/pinescript/ast.d.ts +73 -0
- package/dist/dts/lib/pinescript/compile.d.ts +40 -0
- package/dist/dts/lib/pinescript/grammar.d.ts +12 -0
- package/dist/dts/lib/pinescript/pine.worker.d.ts +1 -0
- package/dist/dts/lib/pinescript/pineBlocks.d.ts +54 -0
- package/dist/dts/lib/pinescript/pineBuiltins.d.ts +47 -0
- package/dist/dts/lib/pinescript/pineEnv.d.ts +46 -0
- package/dist/dts/lib/pinescript/pineMath.d.ts +13 -0
- package/dist/dts/lib/pinescript/pineParse.d.ts +25 -0
- package/dist/dts/lib/pinescript/pineStrings.d.ts +50 -0
- package/dist/dts/lib/pinescript/runtime.d.ts +5 -0
- package/dist/dts/lib/pinescript/scriptRegistry.d.ts +40 -0
- package/dist/dts/lib/pinescript/series-value.d.ts +64 -0
- package/dist/dts/lib/pinescript/vnscript-completion.d.ts +1 -0
- package/dist/dts/lib/pinescript/vnscript-grammar.d.ts +19 -0
- package/dist/dts/lib/scale/discontinuousTimeScaleProvider.d.ts +3 -0
- package/dist/dts/lib/scale/financeDiscontinuousScale.d.ts +15 -0
- package/dist/dts/lib/scale/index.d.ts +1 -0
- package/dist/dts/lib/scale/levels.d.ts +12 -0
- package/dist/dts/lib/series/AlternatingFillAreaSeries.d.ts +13 -0
- package/dist/dts/lib/series/AreaOnlySeries.d.ts +10 -0
- package/dist/dts/lib/series/AreaSeries.d.ts +30 -0
- package/dist/dts/lib/series/BarSeries.d.ts +40 -0
- package/dist/dts/lib/series/BollingerSeries.d.ts +11 -0
- package/dist/dts/lib/series/CandlestickSeries.d.ts +56 -0
- package/dist/dts/lib/series/CircleMarker.d.ts +28 -0
- package/dist/dts/lib/series/ElderRaySeries.d.ts +14 -0
- package/dist/dts/lib/series/FootprintSeries.d.ts +21 -0
- package/dist/dts/lib/series/GroupedBarSeries.d.ts +9 -0
- package/dist/dts/lib/series/HTFOverlaySeries.d.ts +32 -0
- package/dist/dts/lib/series/HistogramSeries.d.ts +51 -0
- package/dist/dts/lib/series/KagiSeries.d.ts +9 -0
- package/dist/dts/lib/series/LineBreakSeries.d.ts +28 -0
- package/dist/dts/lib/series/LineSeries.d.ts +54 -0
- package/dist/dts/lib/series/MACDSeries.d.ts +28 -0
- package/dist/dts/lib/series/MarketProfileSeries.d.ts +18 -0
- package/dist/dts/lib/series/OHLCSeries.d.ts +9 -0
- package/dist/dts/lib/series/OverlayBarSeries.d.ts +9 -0
- package/dist/dts/lib/series/PointAndFigureSeries.d.ts +45 -0
- package/dist/dts/lib/series/RSISeries.d.ts +38 -0
- package/dist/dts/lib/series/RenkoSeries.d.ts +9 -0
- package/dist/dts/lib/series/SARSeries.d.ts +10 -0
- package/dist/dts/lib/series/SVGComponent.d.ts +5 -0
- package/dist/dts/lib/series/ScatterSeries.d.ts +9 -0
- package/dist/dts/lib/series/SquareMarker.d.ts +28 -0
- package/dist/dts/lib/series/StackedBarSeries.d.ts +19 -0
- package/dist/dts/lib/series/StochasticSeries.d.ts +9 -0
- package/dist/dts/lib/series/StraightLine.d.ts +18 -0
- package/dist/dts/lib/series/TriangleMarker.d.ts +30 -0
- package/dist/dts/lib/series/VolumeProfileSeries.d.ts +9 -0
- package/dist/dts/lib/series/index.d.ts +28 -0
- package/dist/dts/lib/strategy/BrokerSimulator.d.ts +11 -0
- package/dist/dts/lib/strategy/types.d.ts +35 -0
- package/dist/dts/lib/tape/TapePanel.d.ts +5 -0
- package/dist/dts/lib/types/adapter.d.ts +1 -0
- package/dist/dts/lib/types/index.d.ts +5 -0
- package/dist/dts/lib/types/indicator.d.ts +11 -0
- package/dist/dts/lib/types/ohlcv.d.ts +1 -0
- package/dist/dts/lib/types/pane.d.ts +23 -0
- package/dist/dts/lib/types/runtime.d.ts +11 -0
- package/dist/dts/lib/types/vninvest.d.ts +320 -0
- package/dist/dts/lib/types.d.ts +45 -0
- package/dist/dts/lib/utils/ChartDataUtil.d.ts +26 -0
- package/dist/dts/lib/utils/PureComponent.d.ts +5 -0
- package/dist/dts/lib/utils/accumulatingWindow.d.ts +1 -0
- package/dist/dts/lib/utils/axisPriceFormat.d.ts +6 -0
- package/dist/dts/lib/utils/barWidth.d.ts +14 -0
- package/dist/dts/lib/utils/identity.d.ts +1 -0
- package/dist/dts/lib/utils/index.d.ts +70 -0
- package/dist/dts/lib/utils/logger.d.ts +28 -0
- package/dist/dts/lib/utils/mappedSlidingWindow.d.ts +1 -0
- package/dist/dts/lib/utils/merge.d.ts +6 -0
- package/dist/dts/lib/utils/noop.d.ts +1 -0
- package/dist/dts/lib/utils/rebind.d.ts +1 -0
- package/dist/dts/lib/utils/shallowEqual.d.ts +1 -0
- package/dist/dts/lib/utils/slidingWindow.d.ts +1 -0
- package/dist/dts/lib/utils/storage.d.ts +32 -0
- package/dist/dts/lib/utils/strokeDasharray.d.ts +3 -0
- package/dist/dts/lib/utils/timezoneFormatter.d.ts +14 -0
- package/dist/dts/lib/utils/zipper.d.ts +4 -0
- package/dist/dts/public-api.d.ts +31 -0
- package/dist/dts/widget/BackfillWorkerFlags.d.ts +12 -0
- package/dist/dts/widget/CanaryRollbackHelper.d.ts +95 -0
- package/dist/dts/widget/CanaryRolloutConfig.d.ts +100 -0
- package/dist/dts/widget/DrawingPriceLabelsOverlay.d.ts +20 -0
- package/dist/dts/widget/ForkDrawingsOverlay.d.ts +16 -0
- package/dist/dts/widget/MeasurementOverlay.d.ts +24 -0
- package/dist/dts/widget/VNInvestCharts.d.ts +5 -0
- package/dist/dts/widget/VNInvestChartsProps.d.ts +302 -0
- package/dist/dts/widget/VNInvestMultiCharts.d.ts +8 -0
- package/dist/dts/widget/VNInvestMultiCharts.types.d.ts +130 -0
- package/dist/dts/widget/WidgetEmptyState.d.ts +11 -0
- package/dist/dts/widget/WidgetErrorBoundary.d.ts +26 -0
- package/dist/dts/widget/adapters/ContinuousFuturesStockDataAdapter.d.ts +18 -0
- package/dist/dts/widget/adapters/DataProviderAdapterWrapper.d.ts +14 -0
- package/dist/dts/widget/adapters/MultiSourceDataAdapter.d.ts +24 -0
- package/dist/dts/widget/adapters/VNInvestClient.d.ts +161 -0
- package/dist/dts/widget/adapters/VNInvestDataAdapter.d.ts +77 -0
- package/dist/dts/widget/adapters/VNInvestWebSocketClient.d.ts +79 -0
- package/dist/dts/widget/adapters/barsPagingPolicy.d.ts +18 -0
- package/dist/dts/widget/adapters/corporateEvents.d.ts +13 -0
- package/dist/dts/widget/adapters/index.d.ts +20 -0
- package/dist/dts/widget/adapters/nativeShapes.d.ts +32 -0
- package/dist/dts/widget/adapters/watchlistRealtimeSync.d.ts +16 -0
- package/dist/dts/widget/alerts/DrawingAlertsHost.d.ts +18 -0
- package/dist/dts/widget/alerts/useDrawingAlerts.d.ts +37 -0
- package/dist/dts/widget/canaryBarFiltering.d.ts +35 -0
- package/dist/dts/widget/capabilities/CapabilityResolver.d.ts +71 -0
- package/dist/dts/widget/capabilities/capabilityProbe.d.ts +28 -0
- package/dist/dts/widget/capabilities/useTierGatedFeatures.d.ts +48 -0
- package/dist/dts/widget/components/BottomPanelHost.d.ts +80 -0
- package/dist/dts/widget/components/BottomPanelSplitter.d.ts +15 -0
- package/dist/dts/widget/components/CapabilityGate.d.ts +65 -0
- package/dist/dts/widget/components/ChartDiagOverlay.d.ts +31 -0
- package/dist/dts/widget/components/ConfirmDialog.d.ts +12 -0
- package/dist/dts/widget/components/DowngradeBanner.d.ts +9 -0
- package/dist/dts/widget/components/ForkPaneSeparators.d.ts +11 -0
- package/dist/dts/widget/components/ForkPaneTooltips.d.ts +23 -0
- package/dist/dts/widget/components/ForkXAxisOverlay.d.ts +11 -0
- package/dist/dts/widget/components/ForkYAxisCrosshairLabels.d.ts +9 -0
- package/dist/dts/widget/components/LayoutDesigner.d.ts +26 -0
- package/dist/dts/widget/components/PremiumFeatureGate.d.ts +10 -0
- package/dist/dts/widget/components/ShortcutHelpModal.d.ts +44 -0
- package/dist/dts/widget/components/SystemMenu.d.ts +66 -0
- package/dist/dts/widget/components/Toast.d.ts +20 -0
- package/dist/dts/widget/components/canvas/BarCountdownBadge.d.ts +8 -0
- package/dist/dts/widget/components/canvas/ChartA11ySummary.d.ts +40 -0
- package/dist/dts/widget/components/canvas/ChartStatusLine.d.ts +39 -0
- package/dist/dts/widget/components/canvas/PricePaneHeader.d.ts +24 -0
- package/dist/dts/widget/components/canvas/PriceScaleMenu.d.ts +27 -0
- package/dist/dts/widget/components/canvas/TimeAxisScrollbar.d.ts +18 -0
- package/dist/dts/widget/components/common/Icons.d.ts +67 -0
- package/dist/dts/widget/components/dock/DataWindow.d.ts +7 -0
- package/dist/dts/widget/components/dock/DockUpgradeNudge.d.ts +10 -0
- package/dist/dts/widget/components/dock/RightSidebarDockHost.d.ts +57 -0
- package/dist/dts/widget/components/dock/WatchlistPanel.d.ts +7 -0
- package/dist/dts/widget/components/dock/WorkspaceRightDockSlot.d.ts +46 -0
- package/dist/dts/widget/components/dock/dockAccess.d.ts +20 -0
- package/dist/dts/widget/components/dock/drawingDockContentBuilders.d.ts +29 -0
- package/dist/dts/widget/components/drawing/DrawingDock.d.ts +47 -0
- package/dist/dts/widget/components/drawing/DrawingInspector.d.ts +94 -0
- package/dist/dts/widget/components/drawing/DrawingListPanel.d.ts +62 -0
- package/dist/dts/widget/components/drawing/DrawingSemanticPointLegend.d.ts +14 -0
- package/dist/dts/widget/components/drawing/FloatingDrawingInspector.d.ts +18 -0
- package/dist/dts/widget/components/drawing/IconPickerPanel.d.ts +5 -0
- package/dist/dts/widget/components/drawing/InlineTextEditor.d.ts +20 -0
- package/dist/dts/widget/components/drawing/PatternScanPanel.d.ts +27 -0
- package/dist/dts/widget/components/drawing/TemplateManagerPanel.d.ts +18 -0
- package/dist/dts/widget/components/events/CorporateEventsOverlay.d.ts +23 -0
- package/dist/dts/widget/components/events/EventMarkerIcon.d.ts +6 -0
- package/dist/dts/widget/components/footer/ChartFooter.d.ts +26 -0
- package/dist/dts/widget/components/footer/MultiChartsFooter.d.ts +37 -0
- package/dist/dts/widget/components/footer/TimeframeFooter.d.ts +25 -0
- package/dist/dts/widget/components/footer/useBarCountdown.d.ts +5 -0
- package/dist/dts/widget/components/header/OHLCHeader.d.ts +72 -0
- package/dist/dts/widget/components/layout/DrawingConflictNotice.d.ts +4 -0
- package/dist/dts/widget/components/layout/GridContainer.d.ts +70 -0
- package/dist/dts/widget/components/layout/GridSlotErrorBoundary.d.ts +17 -0
- package/dist/dts/widget/components/layout/Splitter.d.ts +23 -0
- package/dist/dts/widget/components/layout/gridSplitterMath.d.ts +40 -0
- package/dist/dts/widget/components/layout/useGridSplitterDrag.d.ts +18 -0
- package/dist/dts/widget/components/mobile/MobileChartCarousel.d.ts +11 -0
- package/dist/dts/widget/components/mobile/MobileToolbar.d.ts +29 -0
- package/dist/dts/widget/components/overlays/AdvisoryPanel.d.ts +25 -0
- package/dist/dts/widget/components/overlays/TapePanel.d.ts +25 -0
- package/dist/dts/widget/components/overlays/WhalePanel.d.ts +5 -0
- package/dist/dts/widget/components/panels/AdvisoryPanel.d.ts +25 -0
- package/dist/dts/widget/components/panels/PineEditorPanel.d.ts +18 -0
- package/dist/dts/widget/components/panels/StrategyTesterPanel.d.ts +7 -0
- package/dist/dts/widget/components/panels/TapePanel.d.ts +17 -0
- package/dist/dts/widget/components/panels/index.d.ts +8 -0
- package/dist/dts/widget/components/replay/FloatingReplayToolbar.d.ts +24 -0
- package/dist/dts/widget/components/replay/ReplayCutOverlay.d.ts +8 -0
- package/dist/dts/widget/components/search/SymbolCompareModal.d.ts +24 -0
- package/dist/dts/widget/components/search/SymbolSearchModal.d.ts +12 -0
- package/dist/dts/widget/components/search/VNSymbolSearch.d.ts +83 -0
- package/dist/dts/widget/components/settings/AlertsModal.d.ts +74 -0
- package/dist/dts/widget/components/settings/SettingsContext.d.ts +58 -0
- package/dist/dts/widget/components/settings/SettingsModal.d.ts +78 -0
- package/dist/dts/widget/components/settings/SettingsRangeSlider.d.ts +17 -0
- package/dist/dts/widget/components/settings/SnapshotPreviewModal.d.ts +16 -0
- package/dist/dts/widget/components/settings/WorkspaceSettingsContext.d.ts +27 -0
- package/dist/dts/widget/components/settings/helpers/seriesFormatters.d.ts +11 -0
- package/dist/dts/widget/components/settings/model/appearancePayload.d.ts +31 -0
- package/dist/dts/widget/components/settings/model/chartSettingsSchema.d.ts +100 -0
- package/dist/dts/widget/components/settings/model/defaultSettings.d.ts +5 -0
- package/dist/dts/widget/components/settings/model/indicatorShare.d.ts +29 -0
- package/dist/dts/widget/components/settings/storageKeys.d.ts +29 -0
- package/dist/dts/widget/components/settings/tabs/AppearanceSettingsTab.d.ts +5 -0
- package/dist/dts/widget/components/settings/tabs/IndicatorParamsForm.d.ts +12 -0
- package/dist/dts/widget/components/settings/tabs/IndicatorsSettingsTab.d.ts +34 -0
- package/dist/dts/widget/components/settings/tabs/LicensingSettingsTab.d.ts +5 -0
- package/dist/dts/widget/components/settings/tabs/PanesLayoutSettingsTab.d.ts +11 -0
- package/dist/dts/widget/components/settings/tabs/ResetSettingsTab.d.ts +8 -0
- package/dist/dts/widget/components/settings/tabs/ScalesSettingsTab.d.ts +5 -0
- package/dist/dts/widget/components/settings/tabs/StatusLineSettingsTab.d.ts +5 -0
- package/dist/dts/widget/components/settings/tabs/SymbolSettingsTab.d.ts +5 -0
- package/dist/dts/widget/components/settings/tabs/ThemePaletteSettingsTab.d.ts +9 -0
- package/dist/dts/widget/components/settings/tabs/TradingEventsSettingsTab.d.ts +8 -0
- package/dist/dts/widget/components/toolbar/DrawingToolIcon.d.ts +10 -0
- package/dist/dts/widget/components/toolbar/DrawingToolbar.d.ts +33 -0
- package/dist/dts/widget/components/toolbar/FloatingChartBar.d.ts +20 -0
- package/dist/dts/widget/components/toolbar/FloatingFavoritesBar.d.ts +18 -0
- package/dist/dts/widget/components/toolbar/MultiChartTopbar.d.ts +47 -0
- package/dist/dts/widget/components/toolbar/UnifiedDrawingToolbar.d.ts +28 -0
- package/dist/dts/widget/components/trading/PaperTradePanel.d.ts +41 -0
- package/dist/dts/widget/components/workspace/WorkspaceToolbar.d.ts +25 -0
- package/dist/dts/widget/config/toolGroups.d.ts +11 -0
- package/dist/dts/widget/config/toolShortcuts.d.ts +27 -0
- package/dist/dts/widget/constants/comparison.d.ts +1 -0
- package/dist/dts/widget/constants/symbolSearch.d.ts +14 -0
- package/dist/dts/widget/constants/vn30.d.ts +7 -0
- package/dist/dts/widget/context/DataProviderContext.d.ts +7 -0
- package/dist/dts/widget/context/HoverEmitter.d.ts +50 -0
- package/dist/dts/widget/context/SyncContextShare.d.ts +11 -0
- package/dist/dts/widget/context/VNInvestChartsConfigContext.d.ts +24 -0
- package/dist/dts/widget/context/VNInvestChartsContext.d.ts +70 -0
- package/dist/dts/widget/context/VNInvestChartsStateContext.d.ts +50 -0
- package/dist/dts/widget/context/WidgetI18nContext.d.ts +25 -0
- package/dist/dts/widget/context/WorkspaceLiveTradingContext.d.ts +30 -0
- package/dist/dts/widget/context/WorkspacePaperVisibilityContext.d.ts +23 -0
- package/dist/dts/widget/context/WorkspaceReplayTradingContext.d.ts +36 -0
- package/dist/dts/widget/contexts/SaaSFeatureContext.d.ts +23 -0
- package/dist/dts/widget/data/DataEnvelope.d.ts +100 -0
- package/dist/dts/widget/drawingPriceLabelInputs.d.ts +3 -0
- package/dist/dts/widget/export/chartCsv.d.ts +59 -0
- package/dist/dts/widget/forkAnchorReconciliation.d.ts +6 -0
- package/dist/dts/widget/forkInteractionHelpers.d.ts +69 -0
- package/dist/dts/widget/grid/DeviceProfiles.d.ts +49 -0
- package/dist/dts/widget/grid/GridChartRegistry.d.ts +9 -0
- package/dist/dts/widget/grid/MemoryBudgetManager.d.ts +63 -0
- package/dist/dts/widget/grid/PerformanceMonitor.d.ts +70 -0
- package/dist/dts/widget/grid/customPresets.d.ts +42 -0
- package/dist/dts/widget/grid/presets.d.ts +18 -0
- package/dist/dts/widget/grid/types.d.ts +39 -0
- package/dist/dts/widget/history/BackfillDedupContext.d.ts +63 -0
- package/dist/dts/widget/history/RequestCoordinator.d.ts +59 -0
- package/dist/dts/widget/history/SharedBarStoreContext.d.ts +22 -0
- package/dist/dts/widget/history/cache/IndexedDBCacheMatrix.d.ts +16 -0
- package/dist/dts/widget/history/cache/LocalCacheMatrix.d.ts +86 -0
- package/dist/dts/widget/history/cache/index.d.ts +3 -0
- package/dist/dts/widget/history/chunkStore.d.ts +77 -0
- package/dist/dts/widget/history/externalBarsNormalization.d.ts +9 -0
- package/dist/dts/widget/history/externalBarsNormalization.worker.d.ts +1 -0
- package/dist/dts/widget/history/externalBarsNormalizationAsync.d.ts +25 -0
- package/dist/dts/widget/history/historyDataUtils.d.ts +82 -0
- package/dist/dts/widget/history/historyWindowPlanner.d.ts +89 -0
- package/dist/dts/widget/history/inflightController.d.ts +15 -0
- package/dist/dts/widget/history/requestCoalescing.d.ts +10 -0
- package/dist/dts/widget/history/sessionGuards.d.ts +3 -0
- package/dist/dts/widget/history/singleWriterLane.d.ts +4 -0
- package/dist/dts/widget/history/useExternalBarsNormalization.d.ts +5 -0
- package/dist/dts/widget/hooks/ShortcutManager.d.ts +65 -0
- package/dist/dts/widget/hooks/overlays/PaneHeaderWrapper.d.ts +11 -0
- package/dist/dts/widget/hooks/overlays/overlayHelpers.d.ts +60 -0
- package/dist/dts/widget/hooks/overlays/useDrawingDockNode.d.ts +15 -0
- package/dist/dts/widget/hooks/overlays/useLegendChrome.d.ts +36 -0
- package/dist/dts/widget/hooks/overlays/useMultiSelectActions.d.ts +22 -0
- package/dist/dts/widget/hooks/overlays/useSidebarResize.d.ts +13 -0
- package/dist/dts/widget/hooks/resolveEntitlement.d.ts +73 -0
- package/dist/dts/widget/hooks/useBottomPanelBehavior.d.ts +38 -0
- package/dist/dts/widget/hooks/useBottomPanelHeight.d.ts +39 -0
- package/dist/dts/widget/hooks/useCanvasTheme.d.ts +24 -0
- package/dist/dts/widget/hooks/useChartImperativeHandle.d.ts +57 -0
- package/dist/dts/widget/hooks/useClockAdapter.d.ts +11 -0
- package/dist/dts/widget/hooks/useComparisonState.d.ts +29 -0
- package/dist/dts/widget/hooks/useDialogFocus.d.ts +25 -0
- package/dist/dts/widget/hooks/useDrawingToolShortcuts.d.ts +16 -0
- package/dist/dts/widget/hooks/useFeatureGate.d.ts +28 -0
- package/dist/dts/widget/hooks/useFloatingChartBar.d.ts +33 -0
- package/dist/dts/widget/hooks/useForkRuntime.d.ts +155 -0
- package/dist/dts/widget/hooks/useIndicatorsShareApplier.d.ts +1 -0
- package/dist/dts/widget/hooks/useIntersectionObserver.d.ts +49 -0
- package/dist/dts/widget/hooks/useKeyboardAdapter.d.ts +9 -0
- package/dist/dts/widget/hooks/useLayoutHistory.d.ts +8 -0
- package/dist/dts/widget/hooks/useLicenseDiagnostics.d.ts +15 -0
- package/dist/dts/widget/hooks/useMultiChartReplaySync.d.ts +31 -0
- package/dist/dts/widget/hooks/useMultiWorkspacePersistence.d.ts +49 -0
- package/dist/dts/widget/hooks/usePaperTradeConfig.d.ts +27 -0
- package/dist/dts/widget/hooks/usePaperTradeInteraction.d.ts +27 -0
- package/dist/dts/widget/hooks/usePatTierAuthentication.d.ts +42 -0
- package/dist/dts/widget/hooks/usePineScriptRestore.d.ts +23 -0
- package/dist/dts/widget/hooks/usePortalAdapter.d.ts +8 -0
- package/dist/dts/widget/hooks/useRecentSymbols.d.ts +3 -0
- package/dist/dts/widget/hooks/useReplayState.d.ts +28 -0
- package/dist/dts/widget/hooks/useReplayTrading.d.ts +26 -0
- package/dist/dts/widget/hooks/useResizeAdapter.d.ts +13 -0
- package/dist/dts/widget/hooks/useScaleOverlays.d.ts +62 -0
- package/dist/dts/widget/hooks/useScriptPersistence.d.ts +72 -0
- package/dist/dts/widget/hooks/useSymbolSearch.d.ts +30 -0
- package/dist/dts/widget/hooks/useViewportBreakpoint.d.ts +15 -0
- package/dist/dts/widget/hooks/useWidgetCoordinateBridge.d.ts +70 -0
- package/dist/dts/widget/hooks/useWidgetData.d.ts +138 -0
- package/dist/dts/widget/hooks/useWidgetDataBackfill.d.ts +67 -0
- package/dist/dts/widget/hooks/useWidgetDataEnrichment.d.ts +32 -0
- package/dist/dts/widget/hooks/useWidgetDrawings.d.ts +38 -0
- package/dist/dts/widget/hooks/useWidgetForkInteraction.d.ts +68 -0
- package/dist/dts/widget/hooks/useWidgetInteractionActions.d.ts +36 -0
- package/dist/dts/widget/hooks/useWidgetOverlays.d.ts +190 -0
- package/dist/dts/widget/hooks/useWidgetRuntime.d.ts +20 -0
- package/dist/dts/widget/hooks/useWidgetSettings.d.ts +244 -0
- package/dist/dts/widget/hooks/useWidgetWorkspaceIO.d.ts +24 -0
- package/dist/dts/widget/hooks/useWorkspaceDockPanels.d.ts +11 -0
- package/dist/dts/widget/hooks/useWorkspaceLiveTrading.d.ts +28 -0
- package/dist/dts/widget/hooks/useWorkspaceReplayTrading.d.ts +22 -0
- package/dist/dts/widget/i18n/a11y.messages.en.d.ts +8 -0
- package/dist/dts/widget/i18n/a11y.messages.vi.d.ts +3 -0
- package/dist/dts/widget/i18n/capability.messages.en.d.ts +7 -0
- package/dist/dts/widget/i18n/capability.messages.vi.d.ts +3 -0
- package/dist/dts/widget/i18n/dock.messages.en.d.ts +2 -0
- package/dist/dts/widget/i18n/dock.messages.vi.d.ts +2 -0
- package/dist/dts/widget/i18n/messages.en.d.ts +2 -0
- package/dist/dts/widget/i18n/messages.licensing.d.ts +48 -0
- package/dist/dts/widget/i18n/messages.vi.d.ts +2 -0
- package/dist/dts/widget/i18n/trading.messages.en.d.ts +2 -0
- package/dist/dts/widget/i18n/trading.messages.vi.d.ts +2 -0
- package/dist/dts/widget/i18n/types.d.ts +3 -0
- package/dist/dts/widget/iframe/builtInAdapters.d.ts +63 -0
- package/dist/dts/widget/iframe/host-entry.d.ts +11 -0
- package/dist/dts/widget/iframe/hostSDK.d.ts +151 -0
- package/dist/dts/widget/iframe/iframeBridge.d.ts +165 -0
- package/dist/dts/widget/iframe/iframeEntry.d.ts +52 -0
- package/dist/dts/widget/iframe/iframeFrame.d.ts +15 -0
- package/dist/dts/widget/iframe/iframeQuotes.d.ts +20 -0
- package/dist/dts/widget/iframe/messageProtocol.d.ts +545 -0
- package/dist/dts/widget/iframe/quoteHub.d.ts +20 -0
- package/dist/dts/widget/iframe/useVNInvestChartsHost.d.ts +8 -0
- package/dist/dts/widget/iife-entry.d.ts +61 -0
- package/dist/dts/widget/iifeWidgetInstance.d.ts +60 -0
- package/dist/dts/widget/index.d.ts +56 -0
- package/dist/dts/widget/multiChartDefaults.d.ts +18 -0
- package/dist/dts/widget/paneInteractionUtils.d.ts +25 -0
- package/dist/dts/widget/patterns/autoPatternScan.d.ts +77 -0
- package/dist/dts/widget/patterns/patternDrawingFactory.d.ts +87 -0
- package/dist/dts/widget/plugin/ProPluginRegistry.d.ts +40 -0
- package/dist/dts/widget/runtime/ChartScaleAdapter.d.ts +73 -0
- package/dist/dts/widget/runtime/ChartSerializer.d.ts +12 -0
- package/dist/dts/widget/runtime/ForkRuntimeAdapter.d.ts +19 -0
- package/dist/dts/widget/runtime/IRuntimeEngine.d.ts +40 -0
- package/dist/dts/widget/runtime/WorkspaceSerializer.d.ts +31 -0
- package/dist/dts/widget/runtimePolicy.d.ts +36 -0
- package/dist/dts/widget/styles/injectStyles.d.ts +9 -0
- package/dist/dts/widget/theme/ThemeConfig.d.ts +21 -0
- package/dist/dts/widget/theme/applyTheme.d.ts +3 -0
- package/dist/dts/widget/trading/chart/DraggableOrderHandles.d.ts +15 -0
- package/dist/dts/widget/trading/chart/InteractivePositionOverlay.d.ts +19 -0
- package/dist/dts/widget/trading/chart/PendingOrderOverlay.d.ts +11 -0
- package/dist/dts/widget/trading/chart/QuickTradingHeader.d.ts +20 -0
- package/dist/dts/widget/trading/chart/TradingChartSurface.d.ts +8 -0
- package/dist/dts/widget/trading/chart/TradingOverlaysHost.d.ts +28 -0
- package/dist/dts/widget/trading/chart/priceTicks.d.ts +1 -0
- package/dist/dts/widget/trading/chart/useFloatingDrag.d.ts +40 -0
- package/dist/dts/widget/trading/chart/useTradingHotkeys.d.ts +21 -0
- package/dist/dts/widget/trading/config/paperRuntimeConfig.d.ts +53 -0
- package/dist/dts/widget/trading/context/PaperPanelRegistry.d.ts +45 -0
- package/dist/dts/widget/trading/context/TradingContext.d.ts +80 -0
- package/dist/dts/widget/trading/context/WorkspaceTradingSync.d.ts +24 -0
- package/dist/dts/widget/trading/hooks/usePaperRuntimeConfig.d.ts +36 -0
- package/dist/dts/widget/trading/index.d.ts +5 -0
- package/dist/dts/widget/trading/panel/AccountSummaryTab.d.ts +7 -0
- package/dist/dts/widget/trading/panel/ActiveChartPaperPanel.d.ts +26 -0
- package/dist/dts/widget/trading/panel/ConnectedTradingPanel.d.ts +3 -0
- package/dist/dts/widget/trading/panel/HistoryTab.d.ts +5 -0
- package/dist/dts/widget/trading/panel/MarketFallbackBanner.d.ts +4 -0
- package/dist/dts/widget/trading/panel/OrdersTab.d.ts +8 -0
- package/dist/dts/widget/trading/panel/PaperCapitalDialog.d.ts +8 -0
- package/dist/dts/widget/trading/panel/PaperSettingsModal.d.ts +17 -0
- package/dist/dts/widget/trading/panel/PositionsTab.d.ts +15 -0
- package/dist/dts/widget/trading/panel/TradeHistoryTab.d.ts +5 -0
- package/dist/dts/widget/trading/panel/TradingBottomPanel.d.ts +36 -0
- package/dist/dts/widget/trading/panel/TradingLogTab.d.ts +8 -0
- package/dist/dts/widget/trading/panel/TradingPanelHeader.d.ts +17 -0
- package/dist/dts/widget/trading/panel/csvExport.d.ts +18 -0
- package/dist/dts/widget/trading/ticket/ConnectedTradingDockPanel.d.ts +5 -0
- package/dist/dts/widget/trading/ticket/OrderTicketForm.d.ts +31 -0
- package/dist/dts/widget/trading/ticket/OrderTicketModal.d.ts +29 -0
- package/dist/dts/widget/trading/ticket/RegistryTradingDockPanel.d.ts +9 -0
- package/dist/dts/widget/trading/ticket/RiskCalculatorView.d.ts +9 -0
- package/dist/dts/widget/trading/ticket/TradingDockPanel.d.ts +36 -0
- package/dist/dts/widget/trading/ticket/orderTicketModel.d.ts +49 -0
- package/dist/dts/widget/trading/visibility/paperVisibility.d.ts +38 -0
- package/dist/dts/widget/types/dataProvider.d.ts +8 -0
- package/dist/dts/widget/types/fullChartHandle.d.ts +25 -0
- package/dist/dts/widget/types/saas.d.ts +83 -0
- package/dist/dts/widget/types/symbolSearch.d.ts +9 -0
- package/dist/dts/widget/types/watchlist.d.ts +26 -0
- package/dist/dts/widget/utils/axisHit.d.ts +16 -0
- package/dist/dts/widget/utils/chartRange.d.ts +12 -0
- package/dist/dts/widget/utils/chartTypeOptions.d.ts +38 -0
- package/dist/dts/widget/utils/clickOutside.d.ts +1 -0
- package/dist/dts/widget/utils/coordinateBridge.d.ts +31 -0
- package/dist/dts/widget/utils/crosshairSync.d.ts +50 -0
- package/dist/dts/widget/utils/drawingSync.d.ts +198 -0
- package/dist/dts/widget/utils/enrichedHash.d.ts +15 -0
- package/dist/dts/widget/utils/headerSync.d.ts +12 -0
- package/dist/dts/widget/utils/numberFormat.d.ts +13 -0
- package/dist/dts/widget/utils/paperTradeAdapters.d.ts +11 -0
- package/dist/dts/widget/utils/pineSeriesData.d.ts +71 -0
- package/dist/dts/widget/utils/rangeSync.d.ts +29 -0
- package/dist/dts/widget/utils/telemetry.d.ts +19 -0
- package/dist/dts/widget/utils/widgetEquality.d.ts +57 -0
- package/dist/dts/widget/utils/widgetErrors.d.ts +29 -0
- package/dist/dts/widget/utils/widgetHelpers.d.ts +395 -0
- package/dist/dts/widget/utils/xAxisTickFormatter.d.ts +33 -0
- package/dist/dts/widget/visibleRangeBridge.d.ts +28 -0
- package/dist/dts/widget/visibleRangeDiagnostics.d.ts +10 -0
- package/dist/dts/widget/visibleRangePolicies.d.ts +6 -0
- package/dist/dts/widget/workspace/WorkspaceManager.d.ts +23 -0
- package/dist/dts/widget/workspace/WorkspaceStore.d.ts +85 -0
- package/dist/dts/widget/workspace/types.d.ts +21 -0
- package/dist/externalBarsNormalization.worker.js +108 -0
- package/dist/iframe/index.html +63 -0
- package/dist/iframe/injected.css +6456 -0
- package/dist/iframe/vninvestchart.iframe.css +2 -0
- package/dist/iframe/vninvestchart.iframe.js +945 -0
- package/dist/iframe-host/host-entry.cjs +687 -0
- package/dist/iframe-host/host-entry.d.mts +818 -0
- package/dist/iframe-host/host-entry.d.ts +818 -0
- package/dist/iframe-host/host-entry.js +680 -0
- package/dist/index.cjs +7253 -0
- package/dist/index.css +3390 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.js +6461 -0
- package/dist/injected.css +6456 -0
- package/dist/rollAlgorithms-2P2ZKKHO.js +2 -0
- package/dist/types/runtime.cjs +8 -0
- package/dist/types/runtime.d.mts +92 -0
- package/dist/types/runtime.d.ts +92 -0
- package/dist/types/runtime.js +5 -0
- package/dist/types/runtime.umd.js +14 -0
- package/dist/vninvestchart.iife.css +2 -0
- package/dist/vninvestchart.iife.js +945 -0
- package/package.json +225 -5
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { type MouseEvent as ReactMouseEvent, type MutableRefObject } from "react";
|
|
2
|
+
import { ForkPointerContext, ForkPointerOwner, ForkRubberBandSelection, WidgetPaneRuntimeSnapshot } from "../utils/widgetHelpers";
|
|
3
|
+
import type { DrawingObject } from "@vninvestcharts/engine-drawing";
|
|
4
|
+
import type { DrawingWorkspaceController } from "@vninvestcharts/engine-react";
|
|
5
|
+
import type { MagnetSensitivity } from "@vninvestcharts/engine-drawing";
|
|
6
|
+
import { type EnrichedDatum } from "../../lib/core/calculators/types";
|
|
7
|
+
import { type PaneDescriptor } from "../../lib/core";
|
|
8
|
+
import { type EngineInstance, type VisibleRange as EngineVisibleRange } from "@vninvestcharts/engine-core";
|
|
9
|
+
import { type ForkSurfaceCursor } from "../forkInteractionHelpers";
|
|
10
|
+
import { type WindowEventAdapter } from "@vninvestcharts/engine-react";
|
|
11
|
+
export interface UseWidgetForkInteractionProps {
|
|
12
|
+
useForkRuntime: boolean;
|
|
13
|
+
drawingUiEnabled: boolean;
|
|
14
|
+
activeForkDrawingTool: string | null;
|
|
15
|
+
drawingWorkspace: DrawingWorkspaceController;
|
|
16
|
+
resolvedDrawings: readonly DrawingObject[];
|
|
17
|
+
resolvedSelectedDrawing: DrawingObject | null;
|
|
18
|
+
resolvedForkSingleSelection: DrawingObject | null;
|
|
19
|
+
onSelectedDrawingChange?: (drawing: DrawingObject | null) => void;
|
|
20
|
+
magnetSensitivity: MagnetSensitivity;
|
|
21
|
+
paneSnapshots: readonly WidgetPaneRuntimeSnapshot[];
|
|
22
|
+
plotData: readonly EnrichedDatum[];
|
|
23
|
+
forkMovableSelectionIds: readonly string[];
|
|
24
|
+
activeForkManipulationDrawing: DrawingObject | null;
|
|
25
|
+
forkSelectionModifierPressed: boolean;
|
|
26
|
+
closeForkDrawingContextMenu: () => void;
|
|
27
|
+
setForkDrawingContextMenu: (menu: any) => void;
|
|
28
|
+
size: {
|
|
29
|
+
width: number;
|
|
30
|
+
height: number;
|
|
31
|
+
};
|
|
32
|
+
engineInstanceRef: MutableRefObject<EngineInstance | null>;
|
|
33
|
+
visiblePanes: readonly PaneDescriptor[];
|
|
34
|
+
onContextMenu?: (payload: any, nativeEvent: any) => void;
|
|
35
|
+
onClick?: (payload: any, nativeEvent: any) => void;
|
|
36
|
+
onTimeAnchor?: (timestamp: number) => void;
|
|
37
|
+
forkAltShortcutPressedRef: MutableRefObject<boolean>;
|
|
38
|
+
cloneSelectedDrawing: () => void;
|
|
39
|
+
toggleSelectedLock: () => void;
|
|
40
|
+
updateForkReadonlySelection: (drawing: DrawingObject | null) => void;
|
|
41
|
+
updateForkReadonlySelectionByIds: (ids: readonly string[]) => void;
|
|
42
|
+
forkVisibleRangeRef: MutableRefObject<EngineVisibleRange | null>;
|
|
43
|
+
forkPaneSnapshotsRef: MutableRefObject<readonly WidgetPaneRuntimeSnapshot[]>;
|
|
44
|
+
windowEventAdapter?: WindowEventAdapter;
|
|
45
|
+
isEditingText?: boolean;
|
|
46
|
+
handleStartTextEdit?: (draft: string) => void;
|
|
47
|
+
}
|
|
48
|
+
export declare function useWidgetForkInteraction({ useForkRuntime, drawingUiEnabled, activeForkDrawingTool, drawingWorkspace, resolvedDrawings, resolvedSelectedDrawing, resolvedForkSingleSelection, onSelectedDrawingChange, magnetSensitivity, paneSnapshots, plotData, forkMovableSelectionIds, activeForkManipulationDrawing, forkSelectionModifierPressed, closeForkDrawingContextMenu, setForkDrawingContextMenu, size, engineInstanceRef, visiblePanes, onContextMenu, onClick, onTimeAnchor, forkAltShortcutPressedRef, cloneSelectedDrawing, toggleSelectedLock, updateForkReadonlySelection, updateForkReadonlySelectionByIds, forkVisibleRangeRef, forkPaneSnapshotsRef, windowEventAdapter, isEditingText, handleStartTextEdit, }: UseWidgetForkInteractionProps): {
|
|
49
|
+
forkSurfaceCursor: ForkSurfaceCursor;
|
|
50
|
+
forkPreviewRevision: number;
|
|
51
|
+
forkManipulationActive: boolean;
|
|
52
|
+
forkManipulationActiveRef: import("react").RefObject<boolean>;
|
|
53
|
+
forkRubberBandSelection: ForkRubberBandSelection | null;
|
|
54
|
+
forkRenderableDrawings: readonly DrawingObject[];
|
|
55
|
+
forkPointerOwnerRef: import("react").RefObject<ForkPointerOwner | null>;
|
|
56
|
+
claimForkPointerOwner: (owner: ForkPointerOwner) => void;
|
|
57
|
+
releaseForkPointerOwner: (owner: ForkPointerOwner) => void;
|
|
58
|
+
handleForkPointerDown: (pointerContext: ForkPointerContext) => void;
|
|
59
|
+
handleForkPointerMove: (pointerContext: ForkPointerContext) => void;
|
|
60
|
+
handleForkPointerUp: (pointerContext: ForkPointerContext) => void;
|
|
61
|
+
handleForkPointerLeave: () => void;
|
|
62
|
+
handleForkClick: (event: ReactMouseEvent<HTMLDivElement>) => void;
|
|
63
|
+
handleForkContextMenu: (event: ReactMouseEvent<HTMLDivElement>) => void;
|
|
64
|
+
handleForkHostContextMenu: (pointerContext: ForkPointerContext) => void;
|
|
65
|
+
handleForkDrawingClick: (pointerContext: ForkPointerContext) => void;
|
|
66
|
+
handleForkDoubleClick: (pointerContext: ForkPointerContext) => void;
|
|
67
|
+
cancelForkInteraction: () => void;
|
|
68
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { DrawingObject } from "@vninvestcharts/engine-drawing";
|
|
2
|
+
import type { DrawingWorkspaceController } from "@vninvestcharts/engine-react";
|
|
3
|
+
import type { KeyboardAdapter, WindowEventAdapter } from "@vninvestcharts/engine-react";
|
|
4
|
+
export interface UseWidgetInteractionActionsProps {
|
|
5
|
+
useForkRuntime?: boolean;
|
|
6
|
+
drawingUiEnabled?: boolean;
|
|
7
|
+
drawingWorkspace: DrawingWorkspaceController;
|
|
8
|
+
resolvedDrawings: readonly DrawingObject[];
|
|
9
|
+
resolvedSelectedDrawing: DrawingObject | null;
|
|
10
|
+
onSelectedDrawingChange?: (drawing: DrawingObject | null) => void;
|
|
11
|
+
keyboardAdapter?: KeyboardAdapter;
|
|
12
|
+
windowEventAdapter: WindowEventAdapter;
|
|
13
|
+
}
|
|
14
|
+
export declare function useWidgetInteractionActions({ useForkRuntime, drawingUiEnabled, drawingWorkspace, resolvedDrawings, resolvedSelectedDrawing, onSelectedDrawingChange, keyboardAdapter, windowEventAdapter, }: UseWidgetInteractionActionsProps): {
|
|
15
|
+
forkSelectionModifierPressed: boolean;
|
|
16
|
+
forkDrawingContextMenu: {
|
|
17
|
+
x: number;
|
|
18
|
+
y: number;
|
|
19
|
+
drawingId: string | null;
|
|
20
|
+
} | null;
|
|
21
|
+
setForkDrawingContextMenu: import("react").Dispatch<import("react").SetStateAction<{
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
drawingId: string | null;
|
|
25
|
+
} | null>>;
|
|
26
|
+
forkAltShortcutPressedRef: import("react").RefObject<boolean>;
|
|
27
|
+
copySelectedDrawing: () => void;
|
|
28
|
+
pasteCopiedDrawing: () => void;
|
|
29
|
+
bringSelectedToFront: () => void;
|
|
30
|
+
sendSelectedToBack: () => void;
|
|
31
|
+
toggleSelectedLock: () => void;
|
|
32
|
+
cloneSelectedDrawing: () => void;
|
|
33
|
+
updateForkReadonlySelection: (nextDrawing: DrawingObject | null) => void;
|
|
34
|
+
updateForkReadonlySelectionByIds: (nextSelectedIds: readonly string[]) => void;
|
|
35
|
+
closeForkDrawingContextMenu: () => void;
|
|
36
|
+
};
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { type PaneDescriptor, type SeriesTier } from "../../lib/core";
|
|
3
|
+
import type { SeriesConfig, SeriesTypeId } from "../../lib/core/types/pane-descriptor";
|
|
4
|
+
import type { SettingsModalProps } from "../components/settings/SettingsModal";
|
|
5
|
+
import { type DrawingObject } from "@vninvestcharts/engine-drawing";
|
|
6
|
+
import { type DrawingWorkspaceController, type DrawingDockTab } from "@vninvestcharts/engine-react";
|
|
7
|
+
import { type WidgetPaneRuntimeSnapshot } from "../utils/widgetHelpers";
|
|
8
|
+
import { type WidgetTimezone } from "../../lib/utils/timezoneFormatter";
|
|
9
|
+
import { type EnrichedDatum } from "../../lib/core/calculators/types";
|
|
10
|
+
import type { PortalAdapter, StorageAdapter } from "@vninvestcharts/engine-react";
|
|
11
|
+
import { buildLegendSeriesValue, resolveGlobalLeftAxisWidth, resolveLeftAxisWidth, type LegendSeriesValue } from "./overlays/overlayHelpers";
|
|
12
|
+
export { buildLegendSeriesValue, resolveGlobalLeftAxisWidth, resolveLeftAxisWidth };
|
|
13
|
+
export type { LegendSeriesValue };
|
|
14
|
+
/** BL-14 group 1/3: pane structure, sizing, splitters and pane chrome. */
|
|
15
|
+
export interface OverlaysPaneOptions {
|
|
16
|
+
useForkRuntime: boolean;
|
|
17
|
+
visiblePanes: readonly PaneDescriptor[];
|
|
18
|
+
paneSnapshotMap: Map<string, WidgetPaneRuntimeSnapshot>;
|
|
19
|
+
paneSnapshots: readonly WidgetPaneRuntimeSnapshot[];
|
|
20
|
+
size: {
|
|
21
|
+
width: number;
|
|
22
|
+
height: number;
|
|
23
|
+
};
|
|
24
|
+
hoveredPaneId: string | null;
|
|
25
|
+
claimForkPointerOwner: (owner: any) => void;
|
|
26
|
+
releaseForkPointerOwner: (owner: any) => void;
|
|
27
|
+
handlePaneToggleVisible: (paneId: string) => void;
|
|
28
|
+
handlePaneRemove: (paneId: string) => void;
|
|
29
|
+
handlePaneAddSeries: (paneId: string) => void;
|
|
30
|
+
handlePaneEditSeries: (paneId: string) => void;
|
|
31
|
+
handlePaneToggleSeries: (paneId: string, seriesType: any, seriesIndex?: number) => void;
|
|
32
|
+
handlePaneRemoveSeries: (paneId: string, seriesType: any, seriesIndex?: number) => void;
|
|
33
|
+
localizePane: (pane: PaneDescriptor) => PaneDescriptor;
|
|
34
|
+
localAvailable: number;
|
|
35
|
+
localHeights: number[];
|
|
36
|
+
localApplyDelta: (splitterIndex: number, delta: number) => void;
|
|
37
|
+
localEqualizePair?: (splitterIndex: number) => void;
|
|
38
|
+
localResetToDefault: () => void;
|
|
39
|
+
renderPaneToolbar?: any;
|
|
40
|
+
renderPaneSplitter?: any;
|
|
41
|
+
renderDrawingChrome?: any;
|
|
42
|
+
/** True while the drawing rail is docked (chart column carries the dock margin). */
|
|
43
|
+
toolbarLocked?: boolean;
|
|
44
|
+
showToolbar?: boolean;
|
|
45
|
+
}
|
|
46
|
+
/** BL-14 group 2/3: drawing workspace, selection and drawing dock. */
|
|
47
|
+
export interface OverlaysDrawingOptions {
|
|
48
|
+
drawingWorkspace: DrawingWorkspaceController;
|
|
49
|
+
resolvedSelectedDrawing: DrawingObject | null;
|
|
50
|
+
resolvedLegacyVisibleRange: any;
|
|
51
|
+
effectiveForkVisibleRange: any;
|
|
52
|
+
magnetSensitivity: any;
|
|
53
|
+
isDark: boolean;
|
|
54
|
+
plotData: readonly EnrichedDatum[];
|
|
55
|
+
visibleDomainRef: React.MutableRefObject<[Date, Date] | null>;
|
|
56
|
+
cloneSelectedDrawing: () => void;
|
|
57
|
+
toggleSelectedLock: () => void;
|
|
58
|
+
handleStartTextEdit: (draft: string) => void;
|
|
59
|
+
isEditingText: boolean;
|
|
60
|
+
drawingTextDraft: string;
|
|
61
|
+
setDrawingTextDraft: (value: string) => void;
|
|
62
|
+
handleCommitTextEdit: (commitCallback: (draft: string) => void) => void;
|
|
63
|
+
handleCancelTextEdit: () => void;
|
|
64
|
+
bringSelectedToFront: () => void;
|
|
65
|
+
sendSelectedToBack: () => void;
|
|
66
|
+
showDrawingDock?: boolean;
|
|
67
|
+
renderDrawingDock?: any;
|
|
68
|
+
defaultDrawingDockTab?: DrawingDockTab;
|
|
69
|
+
}
|
|
70
|
+
/** BL-14 group 3/3: settings, dock panels, legend, chart chrome and callbacks. */
|
|
71
|
+
export interface OverlaysSettingsOptions {
|
|
72
|
+
activeSettingsOpen: boolean;
|
|
73
|
+
activeOnSettingsClose: () => void;
|
|
74
|
+
dataAdapterName?: string;
|
|
75
|
+
onDataAdapterChange?: any;
|
|
76
|
+
localSelectedPaneId: string;
|
|
77
|
+
setLocalSelectedPaneId: (id: string) => void;
|
|
78
|
+
activeMaxVisiblePanes: number;
|
|
79
|
+
setLocalMaxVisiblePanes: (n: number) => void;
|
|
80
|
+
activeMaxVisibleBars: number;
|
|
81
|
+
setLocalMaxVisibleBars: (n: number) => void;
|
|
82
|
+
activeShowNonTradingDays: boolean;
|
|
83
|
+
setLocalShowNonTradingDays: (b: boolean) => void;
|
|
84
|
+
activeShowDrawingPriceMarkers: boolean;
|
|
85
|
+
setLocalShowDrawingPriceMarkers: (b: boolean) => void;
|
|
86
|
+
activeEnableWhale: boolean;
|
|
87
|
+
setLocalEnableWhale: (b: boolean) => void;
|
|
88
|
+
activeWhaleThreshold: number;
|
|
89
|
+
setLocalWhaleThreshold: (n: number) => void;
|
|
90
|
+
activeEnableCVD: boolean;
|
|
91
|
+
setLocalEnableCVD: (b: boolean) => void;
|
|
92
|
+
activeCvdMode: "oscillator" | "histogram";
|
|
93
|
+
setLocalCvdMode: (m: "oscillator" | "histogram") => void;
|
|
94
|
+
themeState: any;
|
|
95
|
+
activeTimezone: WidgetTimezone;
|
|
96
|
+
setLocalTimezone: (tz: WidgetTimezone) => void;
|
|
97
|
+
onTimezoneChange?: (tz: WidgetTimezone) => void;
|
|
98
|
+
activeAlertAudioEnabled: boolean;
|
|
99
|
+
setLocalAlertAudioEnabled: (b: boolean) => void;
|
|
100
|
+
previewImageDataUrl: string | null;
|
|
101
|
+
setPreviewImageDataUrl: (url: string | null) => void;
|
|
102
|
+
renderSettings?: any;
|
|
103
|
+
renderPaperTradePanel?: any;
|
|
104
|
+
/**
|
|
105
|
+
* D2: explicit dock switch. `true` forces the sidebar open (watchlist /
|
|
106
|
+
* dataWindow alone suffice); `false` forces closed; `undefined` keeps the
|
|
107
|
+
* legacy behavior (open when drawing/paperTrade/advisory/tape present).
|
|
108
|
+
*/
|
|
109
|
+
showDock?: boolean;
|
|
110
|
+
showAdvisoryPanel?: boolean;
|
|
111
|
+
advisoryResult?: any;
|
|
112
|
+
isAdvisoryLoading?: boolean;
|
|
113
|
+
onAdvisoryRefresh?: () => void;
|
|
114
|
+
showTapePanel?: boolean;
|
|
115
|
+
tapeEntries?: readonly any[];
|
|
116
|
+
isTapeLoading?: boolean;
|
|
117
|
+
tapeFilterBillions?: number;
|
|
118
|
+
onTapeFilterChange?: (b: number) => void;
|
|
119
|
+
onPaperTradePanelClose?: () => void;
|
|
120
|
+
showDrawingPriceMarkers: boolean;
|
|
121
|
+
resolvedForkPriceMarkerSelection: DrawingObject | null;
|
|
122
|
+
t: (key: string, options?: any) => string;
|
|
123
|
+
onDrawingsChange?: any;
|
|
124
|
+
showTimeScrollbar?: boolean;
|
|
125
|
+
onShowTimeScrollbarChange?: (next: boolean) => void;
|
|
126
|
+
overlayTimeframe?: string;
|
|
127
|
+
comparisonOverlays?: SettingsModalProps["comparisonOverlays"];
|
|
128
|
+
onComparisonRemove?: SettingsModalProps["onComparisonRemove"];
|
|
129
|
+
onComparisonUpdate?: SettingsModalProps["onComparisonUpdate"];
|
|
130
|
+
setOverlayTimeframe: (tf: string | undefined) => void;
|
|
131
|
+
overlayStyle: "hollow" | "step" | "area" | "candle";
|
|
132
|
+
setOverlayStyle: (style: "hollow" | "step" | "area" | "candle") => void;
|
|
133
|
+
onExportLayout?: () => void;
|
|
134
|
+
onImportLayout?: (layoutJson: string) => void;
|
|
135
|
+
portalAdapter?: PortalAdapter;
|
|
136
|
+
storageAdapter?: StorageAdapter;
|
|
137
|
+
themePreset?: string;
|
|
138
|
+
chartId?: string;
|
|
139
|
+
/** Locked-at-open header context (from own chart props, never ambient active). */
|
|
140
|
+
symbol?: string;
|
|
141
|
+
/** Locked-at-open header context (from own chart props). */
|
|
142
|
+
timeframe?: string;
|
|
143
|
+
/** S3b-2: tier gate cho composer thêm series (undefined = không gate, legacy). */
|
|
144
|
+
seriesTier?: SeriesTier;
|
|
145
|
+
/** Optional callback returning a suffix (e.g. "+2.34%") for an indicator legend chip by pane and series index. */
|
|
146
|
+
legendSeriesSuffix?: (paneId: string, seriesIndex: number) => string | undefined;
|
|
147
|
+
/** UI-P3: hovered (or last-bar fallback) datum used for legend live values. Fork runtime; undefined hides values. */
|
|
148
|
+
hoveredDatum?: EnrichedDatum | null;
|
|
149
|
+
/**
|
|
150
|
+
* If provided, use these panes for IndicatorLegend rendering instead of visiblePanes.
|
|
151
|
+
* This allows showing comparison overlays that were injected into the pane series
|
|
152
|
+
* (e.g. via resolvedPanes in VNInvestCharts.tsx).
|
|
153
|
+
*/
|
|
154
|
+
legendPanes?: readonly PaneDescriptor[];
|
|
155
|
+
/** Directly add a series to a pane (bypass SettingsModal) via quick-add picker. */
|
|
156
|
+
onQuickAddSeries?: (paneId: string, series: SeriesConfig) => void;
|
|
157
|
+
/** Directly remove a series from a pane via quick-add picker (toggle off). */
|
|
158
|
+
onQuickRemoveSeries?: (paneId: string, seriesType: SeriesTypeId) => void;
|
|
159
|
+
/**
|
|
160
|
+
* DECLUTTER_V4: where compare chips render. `"embedded"` (default) keeps
|
|
161
|
+
* them in the pane-header legend (multichart). `"statusline"` hides them
|
|
162
|
+
* from the embedded legend so the caller can render
|
|
163
|
+
* `renderCompareLegendNode(paneId)` below the OHLC row instead (single).
|
|
164
|
+
*/
|
|
165
|
+
compareLegendSlot?: "embedded" | "statusline";
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* BL-14: backward-compatible union of the three option groups.
|
|
169
|
+
* Existing flat-object call-sites typecheck unchanged; new code can
|
|
170
|
+
* construct/pass each group independently.
|
|
171
|
+
*/
|
|
172
|
+
export interface UseWidgetOverlaysOptions extends OverlaysPaneOptions, OverlaysDrawingOptions, OverlaysSettingsOptions {
|
|
173
|
+
}
|
|
174
|
+
export interface UseWidgetOverlaysReturn {
|
|
175
|
+
paneToolbarNodes: React.ReactNode[];
|
|
176
|
+
paneSplitterNodes: React.ReactNode[];
|
|
177
|
+
drawingChromeNode: React.ReactNode;
|
|
178
|
+
drawingDockNode: React.ReactNode;
|
|
179
|
+
floatingInspectorNode: React.ReactNode;
|
|
180
|
+
inlineEditorNode: React.ReactNode;
|
|
181
|
+
settingsModalNode: React.ReactNode;
|
|
182
|
+
snapshotPreviewModalNode: React.ReactNode;
|
|
183
|
+
hasRightSidebar: boolean;
|
|
184
|
+
sidebarWidth: number;
|
|
185
|
+
isResizingSidebar: boolean;
|
|
186
|
+
handleSidebarPointerDown: (e: React.PointerEvent<HTMLDivElement>) => void;
|
|
187
|
+
/** DECLUTTER_V4: compare-only legend node for the statusline slot (null unless slot is "statusline"). */
|
|
188
|
+
renderCompareLegendNode: (paneId: string) => React.ReactNode;
|
|
189
|
+
}
|
|
190
|
+
export declare function useWidgetOverlays({ useForkRuntime, visiblePanes, paneSnapshotMap, paneSnapshots, size, hoveredPaneId, hoveredDatum, claimForkPointerOwner, releaseForkPointerOwner, handlePaneToggleVisible, handlePaneRemove, handlePaneAddSeries, handlePaneEditSeries, handlePaneToggleSeries, handlePaneRemoveSeries, localizePane, localAvailable, localHeights, localApplyDelta, localEqualizePair, localResetToDefault, renderPaneToolbar, renderPaneSplitter, renderDrawingChrome, toolbarLocked, showToolbar, drawingWorkspace, resolvedSelectedDrawing, resolvedLegacyVisibleRange, effectiveForkVisibleRange, magnetSensitivity, isDark, plotData, visibleDomainRef, cloneSelectedDrawing, toggleSelectedLock, handleStartTextEdit, isEditingText, drawingTextDraft, setDrawingTextDraft, handleCommitTextEdit, handleCancelTextEdit, bringSelectedToFront, sendSelectedToBack, showDrawingDock, renderDrawingDock, defaultDrawingDockTab, activeSettingsOpen, activeOnSettingsClose, dataAdapterName, onDataAdapterChange, localSelectedPaneId, setLocalSelectedPaneId, activeMaxVisiblePanes, setLocalMaxVisiblePanes, activeMaxVisibleBars, setLocalMaxVisibleBars, activeShowNonTradingDays, setLocalShowNonTradingDays, activeShowDrawingPriceMarkers, setLocalShowDrawingPriceMarkers, activeEnableWhale, setLocalEnableWhale, activeWhaleThreshold, setLocalWhaleThreshold, activeEnableCVD, setLocalEnableCVD, activeCvdMode, setLocalCvdMode, themeState, activeTimezone, setLocalTimezone, onTimezoneChange, activeAlertAudioEnabled, setLocalAlertAudioEnabled, previewImageDataUrl, setPreviewImageDataUrl, renderSettings, renderPaperTradePanel, showDock, showAdvisoryPanel, advisoryResult, isAdvisoryLoading, onAdvisoryRefresh, showTapePanel, tapeEntries, isTapeLoading, tapeFilterBillions, onTapeFilterChange, onPaperTradePanelClose, showDrawingPriceMarkers, resolvedForkPriceMarkerSelection, t, onDrawingsChange, showTimeScrollbar, onShowTimeScrollbarChange, overlayTimeframe, setOverlayTimeframe, overlayStyle, setOverlayStyle, onExportLayout, onImportLayout, portalAdapter, storageAdapter, themePreset, chartId, symbol, timeframe, comparisonOverlays, onComparisonRemove, onComparisonUpdate, legendSeriesSuffix, legendPanes, onQuickAddSeries, onQuickRemoveSeries, compareLegendSlot, seriesTier, }: UseWidgetOverlaysOptions): UseWidgetOverlaysReturn;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type RequestedWidgetRuntime, type ResolvedWidgetRuntime } from '../runtimePolicy';
|
|
2
|
+
import type { WidgetRuntimeCapabilities, WidgetRuntimeResolutionReason } from '../utils/widgetHelpers';
|
|
3
|
+
interface UseWidgetRuntimeOptions {
|
|
4
|
+
engineRuntime?: RequestedWidgetRuntime;
|
|
5
|
+
drawingUiEnabled: boolean;
|
|
6
|
+
drawingActiveTool?: string;
|
|
7
|
+
selectedDrawingType: string | null;
|
|
8
|
+
onRuntimeResolved?: (runtime: ResolvedWidgetRuntime, reason: WidgetRuntimeResolutionReason) => void;
|
|
9
|
+
}
|
|
10
|
+
interface UseWidgetRuntimeReturn {
|
|
11
|
+
useForkRuntime: boolean;
|
|
12
|
+
/** Narrowed to fork since the legacy lane was removed 2026-10-03 (G4). */
|
|
13
|
+
effectiveRuntime: 'fork';
|
|
14
|
+
runtimeReason: WidgetRuntimeResolutionReason;
|
|
15
|
+
runtimeCapabilities: WidgetRuntimeCapabilities;
|
|
16
|
+
contentRuntimeKey: string;
|
|
17
|
+
handleRuntimeDegraded: (reason: 'fork-no-render-output') => void;
|
|
18
|
+
}
|
|
19
|
+
export declare function useWidgetRuntime({ engineRuntime, drawingUiEnabled, drawingActiveTool, selectedDrawingType, onRuntimeResolved, }: UseWidgetRuntimeOptions): UseWidgetRuntimeReturn;
|
|
20
|
+
export type { UseWidgetRuntimeOptions, UseWidgetRuntimeReturn };
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { type WidgetLocale, type WidgetMessages } from "../i18n/types";
|
|
2
|
+
import { type ChartTheme, type PaneDescriptor } from "../../lib/core";
|
|
3
|
+
import type { DrawingDockTab } from "@vninvestcharts/engine-react";
|
|
4
|
+
import type { DrawingStorageAdapter } from "@vninvestcharts/engine-drawing";
|
|
5
|
+
import type { MagnetSensitivity } from "@vninvestcharts/engine-drawing";
|
|
6
|
+
import { type Timeframe } from "../../lib/types/adapter";
|
|
7
|
+
import { type OHLCVBar } from "../../lib/types/ohlcv";
|
|
8
|
+
import type { DrawingObject } from "@vninvestcharts/engine-drawing";
|
|
9
|
+
import { type WidgetAuthHandler } from "../VNInvestCharts";
|
|
10
|
+
import type { StorageAdapter } from "@vninvestcharts/engine-react";
|
|
11
|
+
import type { CrosshairMode } from "@vninvestcharts/engine-core";
|
|
12
|
+
import { type EnrichedDatum } from "../../lib/core/calculators/types";
|
|
13
|
+
import { type WidgetTimezone } from "../../lib/utils/timezoneFormatter";
|
|
14
|
+
import { type RequestedWidgetRuntime } from "../runtimePolicy";
|
|
15
|
+
export interface UseWidgetSettingsOptions {
|
|
16
|
+
locale?: WidgetLocale;
|
|
17
|
+
messages?: Partial<WidgetMessages>;
|
|
18
|
+
theme?: ChartTheme;
|
|
19
|
+
timezone?: WidgetTimezone;
|
|
20
|
+
defaultTimezone?: WidgetTimezone;
|
|
21
|
+
onTimezoneChange?: (timezone: WidgetTimezone) => void;
|
|
22
|
+
panes?: readonly any[];
|
|
23
|
+
drawingUiEnabled?: boolean;
|
|
24
|
+
drawingActiveTool?: string;
|
|
25
|
+
drawings?: readonly DrawingObject[];
|
|
26
|
+
defaultDrawings?: readonly DrawingObject[];
|
|
27
|
+
drawingStorageKey?: string;
|
|
28
|
+
drawingStorageAdapter?: DrawingStorageAdapter;
|
|
29
|
+
defaultDrawingDockTab?: DrawingDockTab;
|
|
30
|
+
engineRuntime?: RequestedWidgetRuntime;
|
|
31
|
+
useWebGL?: boolean;
|
|
32
|
+
measurementEnabled?: boolean;
|
|
33
|
+
selectedDrawing?: DrawingObject | null;
|
|
34
|
+
showDrawingPriceMarkers?: boolean;
|
|
35
|
+
showNonTradingDays?: boolean;
|
|
36
|
+
showTimeScrollbar?: boolean;
|
|
37
|
+
enableWhale?: boolean;
|
|
38
|
+
whaleThreshold?: number;
|
|
39
|
+
whaleOrders?: readonly any[];
|
|
40
|
+
enableCVD?: boolean;
|
|
41
|
+
cvdMode?: "oscillator" | "histogram";
|
|
42
|
+
externalCvdSeries?: readonly any[];
|
|
43
|
+
darkFlowStrength?: number | null;
|
|
44
|
+
darkFlowSignalType?: any;
|
|
45
|
+
suppressForkCanvasFallback?: boolean;
|
|
46
|
+
showAdvisoryPanel?: boolean;
|
|
47
|
+
advisoryResult?: any;
|
|
48
|
+
isAdvisoryLoading?: boolean;
|
|
49
|
+
onAdvisoryRefresh?: (() => void) | undefined;
|
|
50
|
+
showTapePanel?: boolean;
|
|
51
|
+
tapeEntries?: readonly any[];
|
|
52
|
+
isTapeLoading?: boolean;
|
|
53
|
+
tapeFilterBillions?: number;
|
|
54
|
+
onTapeFilterChange?: ((billions: number) => void) | undefined;
|
|
55
|
+
showToolbar?: boolean;
|
|
56
|
+
showHeader?: boolean;
|
|
57
|
+
showFooter?: boolean;
|
|
58
|
+
renderToolbar?: any;
|
|
59
|
+
renderHeader?: any;
|
|
60
|
+
renderFooter?: any;
|
|
61
|
+
showDrawingDock?: boolean;
|
|
62
|
+
settingsOpen?: boolean;
|
|
63
|
+
onSettingsClose?: (() => void) | undefined;
|
|
64
|
+
onPaperTradePanelClose?: (() => void) | undefined;
|
|
65
|
+
renderReplayBar?: any;
|
|
66
|
+
renderPaperTradePanel?: any;
|
|
67
|
+
renderSettings?: any;
|
|
68
|
+
renderDrawingDock?: any;
|
|
69
|
+
historyMinResidentBars?: number;
|
|
70
|
+
maxVisibleBars?: number;
|
|
71
|
+
maxVisiblePanes?: number;
|
|
72
|
+
localCacheRoot?: string;
|
|
73
|
+
backfillWorkerFlags?: any;
|
|
74
|
+
canaryLevel?: 10 | 30 | 100;
|
|
75
|
+
onCanaryGateDecision?: any;
|
|
76
|
+
onCanaryRollbackEvent?: any;
|
|
77
|
+
dataAdapterName?: string;
|
|
78
|
+
onDataAdapterChange?: any;
|
|
79
|
+
range?: string;
|
|
80
|
+
onRangeChange?: any;
|
|
81
|
+
onTimeframeChange?: any;
|
|
82
|
+
defaultPeriod?: string;
|
|
83
|
+
authHandler?: WidgetAuthHandler;
|
|
84
|
+
onSymbolChange?: any;
|
|
85
|
+
symbol?: string;
|
|
86
|
+
timeframe?: Timeframe;
|
|
87
|
+
data?: readonly OHLCVBar[];
|
|
88
|
+
adapter?: any;
|
|
89
|
+
onClick?: any;
|
|
90
|
+
onContextMenu?: any;
|
|
91
|
+
onDrawingsChange?: any;
|
|
92
|
+
onSelectedDrawingChange?: any;
|
|
93
|
+
onDrawingWorkspaceChange?: any;
|
|
94
|
+
onVisibleDomainChange?: any;
|
|
95
|
+
onVisibleRangeChange?: any;
|
|
96
|
+
syncOverrides?: Record<string, boolean>;
|
|
97
|
+
onHistorySyncBusyChange?: any;
|
|
98
|
+
onBarsChange?: any;
|
|
99
|
+
onPaneSnapshotsChange?: any;
|
|
100
|
+
onPaneHover?: any;
|
|
101
|
+
onPaneToggleVisibleRequest?: any;
|
|
102
|
+
onPaneRemoveRequest?: any;
|
|
103
|
+
onPaneAddSeriesRequest?: any;
|
|
104
|
+
onPaneToggleSeriesRequest?: any;
|
|
105
|
+
onPaneRemoveSeriesRequest?: any;
|
|
106
|
+
onRuntimeCapabilitiesChange?: any;
|
|
107
|
+
onRuntimeResolved?: any;
|
|
108
|
+
onCoordinateBridgeChange?: any;
|
|
109
|
+
onError?: any;
|
|
110
|
+
onDrawingAlert?: any;
|
|
111
|
+
renderPaneToolbar?: any;
|
|
112
|
+
renderPaneSplitter?: any;
|
|
113
|
+
renderDrawingChrome?: any;
|
|
114
|
+
resetKey?: number;
|
|
115
|
+
className?: string;
|
|
116
|
+
style?: React.CSSProperties;
|
|
117
|
+
children?: React.ReactNode;
|
|
118
|
+
storageAdapter?: StorageAdapter;
|
|
119
|
+
/** Chart id (flows via ...props spread as `id`); absent = single-chart legacy. */
|
|
120
|
+
id?: string;
|
|
121
|
+
containerRef: React.RefObject<HTMLDivElement | null>;
|
|
122
|
+
size: {
|
|
123
|
+
width: number;
|
|
124
|
+
height: number;
|
|
125
|
+
};
|
|
126
|
+
plotData: readonly EnrichedDatum[];
|
|
127
|
+
/**
|
|
128
|
+
* Tier for the PNG watermark (A4). A **ref**, not a value, and that is not a style
|
|
129
|
+
* choice: this hook is constructed at VNInvestCharts.tsx:288 while the tier is only
|
|
130
|
+
* resolved at :678, so passing the value directly would read it in its temporal dead
|
|
131
|
+
* zone. The ref is read lazily at export time, long after both are mounted.
|
|
132
|
+
*/
|
|
133
|
+
tierRef?: React.MutableRefObject<string | undefined>;
|
|
134
|
+
}
|
|
135
|
+
export interface UseWidgetSettingsReturn {
|
|
136
|
+
localTimeframe: Timeframe;
|
|
137
|
+
setLocalTimeframe: React.Dispatch<React.SetStateAction<Timeframe>>;
|
|
138
|
+
localRange: string | undefined;
|
|
139
|
+
setLocalRange: React.Dispatch<React.SetStateAction<string | undefined>>;
|
|
140
|
+
internalXExtents: readonly [Date | number, Date | number] | undefined;
|
|
141
|
+
setInternalXExtents: React.Dispatch<React.SetStateAction<readonly [Date | number, Date | number] | undefined>>;
|
|
142
|
+
localSelectedPaneId: string;
|
|
143
|
+
setLocalSelectedPaneId: React.Dispatch<React.SetStateAction<string>>;
|
|
144
|
+
toolbarLocked: boolean;
|
|
145
|
+
setToolbarLocked: React.Dispatch<React.SetStateAction<boolean>>;
|
|
146
|
+
localMaxVisiblePanes: number;
|
|
147
|
+
setLocalMaxVisiblePanes: React.Dispatch<React.SetStateAction<number>>;
|
|
148
|
+
activeMaxVisiblePanes: number;
|
|
149
|
+
localMaxVisibleBars: number;
|
|
150
|
+
setLocalMaxVisibleBars: React.Dispatch<React.SetStateAction<number>>;
|
|
151
|
+
activeMaxVisibleBars: number;
|
|
152
|
+
localShowNonTradingDays: boolean;
|
|
153
|
+
setLocalShowNonTradingDays: React.Dispatch<React.SetStateAction<boolean>>;
|
|
154
|
+
activeShowNonTradingDays: boolean;
|
|
155
|
+
localShowDrawingPriceMarkers: boolean;
|
|
156
|
+
setLocalShowDrawingPriceMarkers: React.Dispatch<React.SetStateAction<boolean>>;
|
|
157
|
+
activeShowDrawingPriceMarkers: boolean;
|
|
158
|
+
localEnableWhale: boolean;
|
|
159
|
+
setLocalEnableWhale: React.Dispatch<React.SetStateAction<boolean>>;
|
|
160
|
+
activeEnableWhale: boolean;
|
|
161
|
+
localWhaleThreshold: number;
|
|
162
|
+
setLocalWhaleThreshold: React.Dispatch<React.SetStateAction<number>>;
|
|
163
|
+
activeWhaleThreshold: number;
|
|
164
|
+
localEnableCVD: boolean;
|
|
165
|
+
setLocalEnableCVD: React.Dispatch<React.SetStateAction<boolean>>;
|
|
166
|
+
activeEnableCVD: boolean;
|
|
167
|
+
localCvdMode: "oscillator" | "histogram";
|
|
168
|
+
setLocalCvdMode: React.Dispatch<React.SetStateAction<"oscillator" | "histogram">>;
|
|
169
|
+
activeCvdMode: "oscillator" | "histogram";
|
|
170
|
+
localTimezone: WidgetTimezone;
|
|
171
|
+
setLocalTimezone: React.Dispatch<React.SetStateAction<WidgetTimezone>>;
|
|
172
|
+
activeTimezone: WidgetTimezone;
|
|
173
|
+
localAlertAudioEnabled: boolean;
|
|
174
|
+
setLocalAlertAudioEnabled: React.Dispatch<React.SetStateAction<boolean>>;
|
|
175
|
+
activeAlertAudioEnabled: boolean;
|
|
176
|
+
localSettingsOpen: boolean;
|
|
177
|
+
setLocalSettingsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
178
|
+
activeSettingsOpen: boolean;
|
|
179
|
+
activeOnSettingsClose: () => void;
|
|
180
|
+
isFullscreen: boolean;
|
|
181
|
+
setIsFullscreen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
182
|
+
searchOpen: boolean;
|
|
183
|
+
setSearchOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
184
|
+
isEditingText: boolean;
|
|
185
|
+
setIsEditingText: React.Dispatch<React.SetStateAction<boolean>>;
|
|
186
|
+
drawingTextDraft: string;
|
|
187
|
+
setDrawingTextDraft: React.Dispatch<React.SetStateAction<string>>;
|
|
188
|
+
handleStartTextEdit: (draft: string) => void;
|
|
189
|
+
handleCommitTextEdit: (commitCallback: (draft: string) => void) => void;
|
|
190
|
+
handleCancelTextEdit: () => void;
|
|
191
|
+
handleFullscreenToggle: () => void;
|
|
192
|
+
handleSnapshot: () => void;
|
|
193
|
+
handleTimeframeChange: (tf: Timeframe) => void;
|
|
194
|
+
handleRangeChange: (r: string) => void;
|
|
195
|
+
getPaneLabel: (id: string, label: string) => string;
|
|
196
|
+
localizePane: (pane: PaneDescriptor) => PaneDescriptor;
|
|
197
|
+
handlePaneToggleVisible: (paneId: string) => void;
|
|
198
|
+
handlePaneRemove: (paneId: string) => void;
|
|
199
|
+
handlePaneAddSeries: (paneId: string) => void;
|
|
200
|
+
handlePaneEditSeries: (paneId: string) => void;
|
|
201
|
+
handlePaneToggleSeries: (paneId: string, seriesType: any, seriesIndex?: number) => void;
|
|
202
|
+
handlePaneRemoveSeries: (paneId: string, seriesType: any, seriesIndex?: number) => void;
|
|
203
|
+
visiblePanes: readonly PaneDescriptor[];
|
|
204
|
+
activeHeights: number[];
|
|
205
|
+
themeState: any;
|
|
206
|
+
resolvedTheme: ChartTheme;
|
|
207
|
+
isDark: boolean;
|
|
208
|
+
previewImageDataUrl: string | null;
|
|
209
|
+
setPreviewImageDataUrl: React.Dispatch<React.SetStateAction<string | null>>;
|
|
210
|
+
activeLocale: WidgetLocale;
|
|
211
|
+
t: (key: string) => string;
|
|
212
|
+
localAvailable: number;
|
|
213
|
+
localApplyDelta: (splitterIndex: number, delta: number) => void;
|
|
214
|
+
localEqualizePair: (splitterIndex: number) => void;
|
|
215
|
+
localResetToDefault: () => void;
|
|
216
|
+
magnetSensitivity: MagnetSensitivity;
|
|
217
|
+
setMagnetSensitivity: React.Dispatch<React.SetStateAction<MagnetSensitivity>>;
|
|
218
|
+
/** P2: crosshair display mode — cross (default) | dot | magnet (OHLC snap). Persisted. */
|
|
219
|
+
crosshairMode: CrosshairMode;
|
|
220
|
+
setCrosshairMode: React.Dispatch<React.SetStateAction<CrosshairMode>>;
|
|
221
|
+
overlayTimeframe: string | undefined;
|
|
222
|
+
setOverlayTimeframe: React.Dispatch<React.SetStateAction<string | undefined>>;
|
|
223
|
+
overlayStyle: "hollow" | "step" | "area" | "candle";
|
|
224
|
+
setOverlayStyle: React.Dispatch<React.SetStateAction<"hollow" | "step" | "area" | "candle">>;
|
|
225
|
+
statusLineSettings: {
|
|
226
|
+
showLogo: boolean;
|
|
227
|
+
showTicker: boolean;
|
|
228
|
+
showOHLC: boolean;
|
|
229
|
+
showBarChange: boolean;
|
|
230
|
+
showVolume: boolean;
|
|
231
|
+
showIndicatorTitles: boolean;
|
|
232
|
+
showIndicatorArguments: boolean;
|
|
233
|
+
showIndicatorValues: boolean;
|
|
234
|
+
backgroundOpacity: number;
|
|
235
|
+
};
|
|
236
|
+
scalesSettings: {
|
|
237
|
+
priceScaleMode: "normal" | "logarithmic" | "percentage";
|
|
238
|
+
invertScale: boolean;
|
|
239
|
+
countdownToBarClose: boolean;
|
|
240
|
+
showTimeScrollbar: boolean;
|
|
241
|
+
dateFormat?: "yyyy-mm-dd" | "dd/mm/yyyy" | "mm/dd/yyyy";
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
export declare function useWidgetSettings({ locale, theme, timezone, defaultTimezone, onTimezoneChange, panes, maxVisiblePanes, maxVisibleBars, showNonTradingDays, showTimeScrollbar, showDrawingPriceMarkers, enableWhale, whaleThreshold, enableCVD, cvdMode, containerRef, size, tierRef, settingsOpen, onSettingsClose, timeframe, range, symbol, plotData, onTimeframeChange, onRangeChange, onPaneToggleVisibleRequest, onPaneRemoveRequest, onPaneAddSeriesRequest, onPaneToggleSeriesRequest, onPaneRemoveSeriesRequest, storageAdapter, syncOverrides, id, }: UseWidgetSettingsOptions): UseWidgetSettingsReturn;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { PortalAdapter } from "@vninvestcharts/engine-react";
|
|
2
|
+
import type { PaneState } from "../context/VNInvestChartsStateContext";
|
|
3
|
+
import type { UseDrawingInteractionReturn } from "@vninvestcharts/engine-react";
|
|
4
|
+
import type { PaneDescriptor } from "../../lib/core";
|
|
5
|
+
import type { EnrichedDatum } from "../../lib/core/calculators/types";
|
|
6
|
+
import type { useWidgetSettings } from "./useWidgetSettings";
|
|
7
|
+
export interface WidgetWorkspaceIODeps {
|
|
8
|
+
paneState: PaneState;
|
|
9
|
+
drawingsInteraction: Pick<UseDrawingInteractionReturn, "allDrawings" | "replaceDrawings">;
|
|
10
|
+
settings: ReturnType<typeof useWidgetSettings>;
|
|
11
|
+
activeSymbol: string;
|
|
12
|
+
activeTimeframe: string;
|
|
13
|
+
enrichedData: readonly EnrichedDatum[];
|
|
14
|
+
resolvedPanes: readonly PaneDescriptor[];
|
|
15
|
+
portalAdapter?: PortalAdapter | null;
|
|
16
|
+
/** BL-17: toast-capable feedback; falls back to alert() when absent. */
|
|
17
|
+
notify?: (message: string, tone: "success" | "error") => void;
|
|
18
|
+
}
|
|
19
|
+
export interface WidgetWorkspaceIO {
|
|
20
|
+
handleExportLayout: () => void;
|
|
21
|
+
handleImportLayout: (layoutJson: string) => void;
|
|
22
|
+
compareLegendSuffix: (paneId: string, seriesIndex: number) => string | undefined;
|
|
23
|
+
}
|
|
24
|
+
export declare function useWidgetWorkspaceIO(deps: WidgetWorkspaceIODeps): WidgetWorkspaceIO;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { FullChartHandle } from "../types/fullChartHandle";
|
|
2
|
+
interface UseWorkspaceDockPanelsDeps {
|
|
3
|
+
activeChartId: string | null;
|
|
4
|
+
chartRefs: React.MutableRefObject<Map<string, React.RefObject<FullChartHandle | null>>>;
|
|
5
|
+
/** Bump mỗi khi workspace của active chart notify → đọc lại state mới. */
|
|
6
|
+
revision: number;
|
|
7
|
+
}
|
|
8
|
+
export declare function useWorkspaceDockPanels({ activeChartId, chartRefs, revision }: UseWorkspaceDockPanelsDeps): {
|
|
9
|
+
drawingDockNode: import("react").ReactNode;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { VirtualBrokerEngine } from "../../lib/core/trading/VirtualBrokerEngine";
|
|
2
|
+
import { MarketDataPort } from "../../lib/core/trading/MarketDataPort";
|
|
3
|
+
import { type MarketRules } from "../../lib/core/trading/MarketRules";
|
|
4
|
+
import type { AsyncStorageAdapter, BroadcastChannelAdapter } from "@vninvestcharts/engine-react";
|
|
5
|
+
export interface UseWorkspaceLiveTradingOptions {
|
|
6
|
+
storageAdapter?: AsyncStorageAdapter;
|
|
7
|
+
workspaceId?: string;
|
|
8
|
+
rules?: MarketRules;
|
|
9
|
+
syncAdapter?: BroadcastChannelAdapter | null;
|
|
10
|
+
}
|
|
11
|
+
export interface WorkspaceLivePair {
|
|
12
|
+
broker: VirtualBrokerEngine;
|
|
13
|
+
port: MarketDataPort;
|
|
14
|
+
}
|
|
15
|
+
export interface WorkspaceLiveLogEntry {
|
|
16
|
+
timestamp: number;
|
|
17
|
+
message: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function useWorkspaceLiveTrading(options?: UseWorkspaceLiveTradingOptions): {
|
|
20
|
+
broker: VirtualBrokerEngine;
|
|
21
|
+
port: MarketDataPort;
|
|
22
|
+
log: WorkspaceLiveLogEntry[];
|
|
23
|
+
closePosition: (positionId: string) => boolean;
|
|
24
|
+
reversePosition: (positionId: string) => void;
|
|
25
|
+
cancelOrder: (orderId: string) => boolean;
|
|
26
|
+
reset: () => void;
|
|
27
|
+
brokerFor: (symbol: string) => WorkspaceLivePair | undefined;
|
|
28
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WE2 P2-09: useWorkspaceReplayTrading (Task 11 rewired)
|
|
3
|
+
*
|
|
4
|
+
* Singleton replay-trading session cho toàn bộ workspace (H3 = workspace-level).
|
|
5
|
+
* Ruột tính toán chạy bằng VirtualBrokerEngine (REPLAY_SPOT_RULES: T+0, cho short);
|
|
6
|
+
* shapes legacy (positions/closedTrades/analytics) giữ nguyên cho consumers
|
|
7
|
+
* (markers, panel, interaction). Legacy ReplayOrderBook không còn chạy ở đây.
|
|
8
|
+
*/
|
|
9
|
+
import type { ReplayExecutedTrade } from "../../lib/core/replay/replayTradingTypes";
|
|
10
|
+
import type { WorkspaceReplayTradingValue } from "../context/WorkspaceReplayTradingContext";
|
|
11
|
+
export interface UseWorkspaceReplayTradingOptions {
|
|
12
|
+
enabled: boolean;
|
|
13
|
+
slippageBps?: number;
|
|
14
|
+
fillOnNextBar?: boolean;
|
|
15
|
+
realisticSlTpFill?: boolean;
|
|
16
|
+
onTradeExecuted?: (trade: ReplayExecutedTrade) => void;
|
|
17
|
+
}
|
|
18
|
+
export interface ReplayLogEntry {
|
|
19
|
+
timestamp: number;
|
|
20
|
+
message: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function useWorkspaceReplayTrading(options: UseWorkspaceReplayTradingOptions): WorkspaceReplayTradingValue;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { WidgetMessages } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* UX-03: labels for the visually-hidden chart summary that acts as the DOM
|
|
4
|
+
* alternative for the engine canvas. Kept in its own module (like
|
|
5
|
+
* `dock.messages.*`) because `messages.{en,vi}.ts` sit at their frozen
|
|
6
|
+
* fat-file budget and new UI text must not push them over.
|
|
7
|
+
*/
|
|
8
|
+
export declare const a11yMessagesEn: WidgetMessages;
|