@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,25 @@
|
|
|
1
|
+
import { type AdvisoryResult as BaseAdvisoryResult } from "../../../lib/types/vninvest";
|
|
2
|
+
export interface AdvisoryResult extends Partial<BaseAdvisoryResult> {
|
|
3
|
+
recommendation?: string;
|
|
4
|
+
reasoning?: string;
|
|
5
|
+
keyLevels?: Array<{
|
|
6
|
+
type: string;
|
|
7
|
+
price: number;
|
|
8
|
+
description: string;
|
|
9
|
+
}>;
|
|
10
|
+
riskFactors?: string[];
|
|
11
|
+
}
|
|
12
|
+
export interface AdvisoryPanelProps {
|
|
13
|
+
/** Show the panel */
|
|
14
|
+
show: boolean;
|
|
15
|
+
/** Advisory result from API */
|
|
16
|
+
result: AdvisoryResult | null;
|
|
17
|
+
/** Loading state */
|
|
18
|
+
isLoading: boolean;
|
|
19
|
+
/** Refresh callback */
|
|
20
|
+
onRefresh?: () => void;
|
|
21
|
+
}
|
|
22
|
+
export declare const AdvisoryPanel: {
|
|
23
|
+
({ show, result, isLoading, onRefresh }: AdvisoryPanelProps): import("react").JSX.Element | null;
|
|
24
|
+
displayName: string;
|
|
25
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface PineEditorPanelProps {
|
|
2
|
+
onAddIndicator: (config: any) => void;
|
|
3
|
+
bars?: {
|
|
4
|
+
open: number[];
|
|
5
|
+
high: number[];
|
|
6
|
+
low: number[];
|
|
7
|
+
close: number[];
|
|
8
|
+
volume: number[];
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* 1.6b: series types the host already has on the chart. A saved script is restored only when
|
|
12
|
+
* its type appears here, which is what makes the restore idempotent (it never dispatches
|
|
13
|
+
* `addSeries`, so StrictMode cannot duplicate a series) and stops it resurrecting a Pine series
|
|
14
|
+
* the user deleted from the chart but kept in the editor.
|
|
15
|
+
*/
|
|
16
|
+
restorableSeriesTypes?: readonly string[];
|
|
17
|
+
}
|
|
18
|
+
export declare function PineEditorPanel({ onAddIndicator, bars, restorableSeriesTypes }: PineEditorPanelProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export interface StrategyTesterPanelProps {
|
|
2
|
+
plotData: any[];
|
|
3
|
+
symbol: string;
|
|
4
|
+
timeframe: string;
|
|
5
|
+
activeIndicators: any[];
|
|
6
|
+
}
|
|
7
|
+
export declare function StrategyTesterPanel({ plotData, symbol, timeframe, activeIndicators }: StrategyTesterPanelProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type TapeEntry } from "../../../lib/types/vninvest";
|
|
2
|
+
export interface TapePanelProps {
|
|
3
|
+
/** Show the panel */
|
|
4
|
+
show: boolean;
|
|
5
|
+
/** Tape entries (most recent last) */
|
|
6
|
+
entries: readonly TapeEntry[];
|
|
7
|
+
/** Loading state */
|
|
8
|
+
isLoading: boolean;
|
|
9
|
+
/** Filter in billions VND */
|
|
10
|
+
filterBillions: number;
|
|
11
|
+
/** Filter change callback */
|
|
12
|
+
onFilterChange?: (billions: number) => void;
|
|
13
|
+
}
|
|
14
|
+
export declare const TapePanel: {
|
|
15
|
+
({ show, entries, isLoading, filterBillions, onFilterChange }: TapePanelProps): import("react").JSX.Element | null;
|
|
16
|
+
displayName: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { AdvisoryPanel } from "./AdvisoryPanel";
|
|
2
|
+
export type { AdvisoryPanelProps } from "./AdvisoryPanel";
|
|
3
|
+
export { TapePanel } from "./TapePanel";
|
|
4
|
+
export type { TapePanelProps } from "./TapePanel";
|
|
5
|
+
export { StrategyTesterPanel } from "./StrategyTesterPanel";
|
|
6
|
+
export type { StrategyTesterPanelProps } from "./StrategyTesterPanel";
|
|
7
|
+
export { PineEditorPanel } from "./PineEditorPanel";
|
|
8
|
+
export type { PineEditorPanelProps } from "./PineEditorPanel";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ReplayAnalyticsStats } from "../../../lib/core/replay/ReplaySessionAnalytics";
|
|
2
|
+
export interface FloatingReplayToolbarProps {
|
|
3
|
+
replayPlaying?: boolean;
|
|
4
|
+
replaySpeed?: number;
|
|
5
|
+
replayCurrentBar?: number;
|
|
6
|
+
replayTotalBars?: number;
|
|
7
|
+
onReplayPlay?: () => void;
|
|
8
|
+
onReplayPause?: () => void;
|
|
9
|
+
onReplayStop?: () => void;
|
|
10
|
+
onReplayStepForward?: () => void;
|
|
11
|
+
onReplayStepBack?: () => void;
|
|
12
|
+
onReplayRewind?: () => void;
|
|
13
|
+
onReplaySpeedChange?: (speed: number) => void;
|
|
14
|
+
onReplaySeek?: (barIndex: number) => void;
|
|
15
|
+
replayInterval?: string;
|
|
16
|
+
onReplayIntervalChange?: (interval: string) => void;
|
|
17
|
+
replayMode?: "single" | "all";
|
|
18
|
+
onReplayModeChange?: (mode: "single" | "all") => void;
|
|
19
|
+
replayTotalPnl?: number;
|
|
20
|
+
replayAnalytics?: ReplayAnalyticsStats;
|
|
21
|
+
onJumpToBar?: () => void;
|
|
22
|
+
onClose?: () => void;
|
|
23
|
+
}
|
|
24
|
+
export declare function FloatingReplayToolbar({ replayPlaying, replaySpeed, replayCurrentBar, replayTotalBars, onReplayPlay, onReplayPause, onReplayStop, onReplayStepForward, onReplayStepBack, onReplayRewind, onReplaySpeedChange, onReplaySeek, replayInterval, onReplayIntervalChange, replayMode, onReplayModeChange, replayTotalPnl, replayAnalytics, onJumpToBar, onClose, }: FloatingReplayToolbarProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { EngineOverlayCrosshairSnapshot } from "@vninvestcharts/engine-core";
|
|
2
|
+
export interface ReplayCutOverlayProps {
|
|
3
|
+
crosshair: EngineOverlayCrosshairSnapshot | null;
|
|
4
|
+
plotData: ReadonlyArray<{
|
|
5
|
+
date?: Date | number | null;
|
|
6
|
+
}>;
|
|
7
|
+
}
|
|
8
|
+
export declare function ReplayCutOverlay({ crosshair, plotData }: ReplayCutOverlayProps): import("react").JSX.Element | null;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* P2 unified compare entry (SYMBOL_SEARCH): one modal hosting VNSymbolSearch
|
|
3
|
+
* mode="unified" (Switch + Compare per row). Shared by single + multi chart
|
|
4
|
+
* so both surfaces render the identical dialog.
|
|
5
|
+
*/
|
|
6
|
+
import type { StockDataAdapter } from "../../../lib/types/adapter";
|
|
7
|
+
import type { VNInvestClient } from "../../adapters/VNInvestClient";
|
|
8
|
+
import type { ComparisonOverlayEntry } from "../../hooks/useComparisonState";
|
|
9
|
+
export interface SymbolCompareModalProps {
|
|
10
|
+
adapter?: StockDataAdapter;
|
|
11
|
+
client?: VNInvestClient;
|
|
12
|
+
/** Current main-chart symbol — matching rows render disabled (no self-compare). */
|
|
13
|
+
mainSymbol?: string;
|
|
14
|
+
/** Main-symbol switch (caller also closes the dialog). Unused while allowSwitch is false. */
|
|
15
|
+
onSwitch: (symbol: string) => void;
|
|
16
|
+
onTimeframeChange?: (timeframe: string) => void;
|
|
17
|
+
existing: string[];
|
|
18
|
+
entries?: ComparisonOverlayEntry[];
|
|
19
|
+
onAdd: (symbolId: string) => void;
|
|
20
|
+
onRemove: (symbolId: string) => void;
|
|
21
|
+
onUpdate?: (symbolId: string, partial: Partial<ComparisonOverlayEntry>) => void;
|
|
22
|
+
onClose: () => void;
|
|
23
|
+
}
|
|
24
|
+
export declare function SymbolCompareModal(p: SymbolCompareModalProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* P2-c: SymbolSearchModal — centered TradingView-style symbol search dialog.
|
|
3
|
+
* Wraps VNSymbolSearch (keyboard nav / filters / recents reused as-is).
|
|
4
|
+
* Renders fixed-position so it centers on viewport incl. Shadow DOM hosts.
|
|
5
|
+
*/
|
|
6
|
+
import { type ReactNode } from "react";
|
|
7
|
+
export interface SymbolSearchModalProps {
|
|
8
|
+
open: boolean;
|
|
9
|
+
onClose: () => void;
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
export declare function SymbolSearchModal({ open, onClose, children }: SymbolSearchModalProps): import("react").JSX.Element | null;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { StockDataAdapter } from "../../../lib/types/adapter";
|
|
2
|
+
import type { VNInvestClient } from "../../adapters/VNInvestClient";
|
|
3
|
+
import type { ComparisonOverlayEntry } from "../../hooks/useComparisonState";
|
|
4
|
+
import type { SymbolSearchItem } from "../../types/symbolSearch";
|
|
5
|
+
/** Unified compare controls (P2): single object replacing the 5 loose compare* props. */
|
|
6
|
+
export interface SymbolSearchCompare {
|
|
7
|
+
existing: string[];
|
|
8
|
+
entries?: ComparisonOverlayEntry[];
|
|
9
|
+
onAdd: (symbolId: string, options?: {
|
|
10
|
+
color?: string;
|
|
11
|
+
}) => void;
|
|
12
|
+
onRemove: (symbolId: string) => void;
|
|
13
|
+
onUpdate?: (symbolId: string, partial: Partial<ComparisonOverlayEntry>) => void;
|
|
14
|
+
open?: boolean;
|
|
15
|
+
onClose?: () => void;
|
|
16
|
+
}
|
|
17
|
+
export interface VNSymbolSearchProps {
|
|
18
|
+
/** New: standard adapter interface. */
|
|
19
|
+
adapter?: StockDataAdapter;
|
|
20
|
+
/** Legacy: direct VNInvestClient reference (backward compat with demo). */
|
|
21
|
+
client?: VNInvestClient;
|
|
22
|
+
/** Current symbol (required in symbol mode, unused in compare mode). */
|
|
23
|
+
value?: string;
|
|
24
|
+
/** Fired on symbol selection (required in symbol mode, unused in compare mode). */
|
|
25
|
+
onChange?: (symbol: string) => void;
|
|
26
|
+
onItemSelect?: (item: SymbolSearchItem) => void;
|
|
27
|
+
/** If provided, called on input focus instead of opening dropdown. */
|
|
28
|
+
onFocusGuard?: () => void;
|
|
29
|
+
/** If set, opens the search with this prefix pre-filled (for quick keyboard entry). */
|
|
30
|
+
quickEntryPrefix?: string;
|
|
31
|
+
/** Fired when search includes a timeframe suffix (e.g. "VIC 1D", "BTCUSDT 1h"). */
|
|
32
|
+
onTimeframeChange?: (timeframe: string) => void;
|
|
33
|
+
/** Operation mode: "symbol" (default) for main switching, "compare" (legacy) for overlay picker, "unified" for both in one modal (P2). */
|
|
34
|
+
mode?: "unified" | "symbol" | "compare";
|
|
35
|
+
/**
|
|
36
|
+
* Default pick action for row/chip/Enter in unified mode.
|
|
37
|
+
* - "switch" (default): P2 behavior — row click / plain Enter replaces the main symbol.
|
|
38
|
+
* - "compare": row click / plain Enter adds a comparison overlay and keeps the panel open.
|
|
39
|
+
* Used by SymbolCompareModal so the compare dialog can never replace the main symbol.
|
|
40
|
+
*/
|
|
41
|
+
defaultAction?: "switch" | "compare";
|
|
42
|
+
/**
|
|
43
|
+
* Show the per-row Switch button in unified mode.
|
|
44
|
+
* Defaults to true unless defaultAction === "compare" (TradingView compare dialog has no Switch).
|
|
45
|
+
*/
|
|
46
|
+
allowSwitch?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Current main-chart symbol (e.g. "VIC"). Matching rows render disabled with a
|
|
49
|
+
* "Current" badge — a symbol can never be compared against itself.
|
|
50
|
+
*/
|
|
51
|
+
mainSymbol?: string;
|
|
52
|
+
/** Compare mode: whether the dialog is open. */
|
|
53
|
+
compareOpen?: boolean;
|
|
54
|
+
/** Compare mode: close callback. */
|
|
55
|
+
onCompareClose?: () => void;
|
|
56
|
+
/** Compare mode: add a comparison overlay. */
|
|
57
|
+
onAddCompareSymbol?: (symbolId: string, options?: {
|
|
58
|
+
color?: string;
|
|
59
|
+
}) => void;
|
|
60
|
+
/** Compare mode: remove a comparison overlay. */
|
|
61
|
+
onRemoveCompareSymbol?: (symbolId: string) => void;
|
|
62
|
+
/** Compare mode: list of currently compared symbol IDs (filters them out of results). */
|
|
63
|
+
compareExistingOverlays?: string[];
|
|
64
|
+
/** Compare mode: full overlay entries for rich display (visibility, normalizeToBaseline, color). */
|
|
65
|
+
compareOverlayEntries?: ComparisonOverlayEntry[];
|
|
66
|
+
/** Compare mode: update a specific overlay property. */
|
|
67
|
+
onUpdateCompareOverlay?: (symbolId: string, partial: Partial<ComparisonOverlayEntry>) => void;
|
|
68
|
+
/** Unified compare object (P2). Loose compare* props above are shimmed into it (deprecated). */
|
|
69
|
+
compare?: SymbolSearchCompare;
|
|
70
|
+
/** Symbol mode: controlled open state (for external trigger, e.g. toolbar button). */
|
|
71
|
+
open?: boolean;
|
|
72
|
+
/** Symbol mode: called when open state changes. */
|
|
73
|
+
onOpenChange?: (open: boolean) => void;
|
|
74
|
+
/**
|
|
75
|
+
* Flat layout: render results in normal flow instead of a floating dropdown.
|
|
76
|
+
* Required when embedded in SymbolSearchModal (the modal panel already
|
|
77
|
+
* provides border/background — a nested absolute dropdown stacks 2 layers).
|
|
78
|
+
*/
|
|
79
|
+
flat?: boolean;
|
|
80
|
+
}
|
|
81
|
+
export declare function VNSymbolSearch({ adapter, client, value, onChange, onItemSelect, onFocusGuard, quickEntryPrefix, onTimeframeChange, mode, compareOpen, onCompareClose, onAddCompareSymbol, onRemoveCompareSymbol, compareExistingOverlays, compareOverlayEntries, onUpdateCompareOverlay, compare: compareProp, defaultAction, allowSwitch, mainSymbol, open: openProp, onOpenChange, flat, }: VNSymbolSearchProps): import("react").JSX.Element;
|
|
82
|
+
/** SSOT alias (SYMBOL_SEARCH P1): single search component for symbol + compare. */
|
|
83
|
+
export { VNSymbolSearch as SymbolSearch };
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { AlertCondition, AlertConditionType, AlertSource } from "../../../lib/alerts/types";
|
|
2
|
+
import type { PortalAdapter } from "@vninvestcharts/engine-react";
|
|
3
|
+
export interface AlertsModalProps {
|
|
4
|
+
open: boolean;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
symbol: string;
|
|
7
|
+
timeframe: string;
|
|
8
|
+
alertManager: any;
|
|
9
|
+
portalAdapter?: PortalAdapter;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* SSOT cho các key giá mà nhánh `type: "price"` đọc được.
|
|
13
|
+
*
|
|
14
|
+
* Trước đây danh sách này bị viết lặp ở hai `<select>` và **không ai validate
|
|
15
|
+
* nó**, nên form có thể persist một key không tồn tại. Đó không phải chuyện giả định:
|
|
16
|
+
* `AlertsModal.tsx:197-208` (effect cũ) ghi đè `sourceAKey` bằng output của indicator
|
|
17
|
+
* kể cả khi `sourceAType === "price"`, và với RSI (output đầu là `"line"`) điều đó làm
|
|
18
|
+
* alert lưu `{type:"price", key:"line"}`. `AlertEvaluator.getValue` đọc `datum["line"]`
|
|
19
|
+
* → `undefined` → `null` ⇒ **không bao giờ fire**. Tệ hơn: `<select>` có `value="line"`
|
|
20
|
+
* khớp 0 `<option>` nên trình duyệt hiển thị option đầu (`close`) — **UI khẳng định một
|
|
21
|
+
* điều kiện, alert lưu điều kiện khác**.
|
|
22
|
+
*
|
|
23
|
+
* Vì vậy giá trị ở đây vừa sinh `<option>` vừa là predicate: một key không thuộc đây
|
|
24
|
+
* là key không đọc được, và form không được lưu nó.
|
|
25
|
+
*/
|
|
26
|
+
export declare const PRICE_SOURCE_KEYS: readonly ["close", "open", "high", "low"];
|
|
27
|
+
export declare function isPriceSourceKey(key: string | undefined): boolean;
|
|
28
|
+
/** Everything the create-alert form collects, as one flat bag, so the builder
|
|
29
|
+
* below stays pure and testable without mounting React or the portal. */
|
|
30
|
+
export interface AlertDraftInput {
|
|
31
|
+
id: string;
|
|
32
|
+
symbol: string;
|
|
33
|
+
timeframe: string;
|
|
34
|
+
sourceAType: "price" | "indicator";
|
|
35
|
+
sourceAKey: string;
|
|
36
|
+
sourceAIndicatorId: string;
|
|
37
|
+
condition: AlertConditionType;
|
|
38
|
+
sourceBType: "value" | "price" | "indicator";
|
|
39
|
+
sourceBValue: string;
|
|
40
|
+
sourceBKey: string;
|
|
41
|
+
sourceBIndicatorId: string;
|
|
42
|
+
frequency: AlertCondition["frequency"];
|
|
43
|
+
actionPopup: boolean;
|
|
44
|
+
actionSound: boolean;
|
|
45
|
+
webhookUrl: string;
|
|
46
|
+
message: string;
|
|
47
|
+
createdAt: number;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The source-B half of an alert, in the shape it is PERSISTED.
|
|
51
|
+
*
|
|
52
|
+
* The threshold lives at `sourceB.value` — NOT at a top-level `sourceBValue`.
|
|
53
|
+
* Four independent places agree on that key and none mentions the other:
|
|
54
|
+
* - src/lib/alerts/types.ts:12 `AlertSource.value?: number` ("for sourceB")
|
|
55
|
+
* - src/lib/alerts/types.ts:15-33 `AlertCondition` has NO `sourceBValue`
|
|
56
|
+
* - src/lib/alerts/AlertEvaluator.ts:38-40 reads `source.value`
|
|
57
|
+
* - src/lib/alerts/AlertManager.ts:136 JSON.stringify(this.alerts), verbatim
|
|
58
|
+
*
|
|
59
|
+
* A missing or non-numeric threshold is stored as `value: undefined`, i.e. the
|
|
60
|
+
* key is simply ABSENT from the persisted JSON, and AlertEvaluator.getValue then
|
|
61
|
+
* returns null so the alert can never fire. It must NOT be coerced to 0:
|
|
62
|
+
* "price > 0" is a real, wrong, user-visible alert, while a null threshold fails
|
|
63
|
+
* closed. This is the third fabricated zero this repo has been bitten by.
|
|
64
|
+
*/
|
|
65
|
+
export declare function buildAlertSourceB(input: {
|
|
66
|
+
sourceBType: "value" | "price" | "indicator";
|
|
67
|
+
sourceBValue: string;
|
|
68
|
+
sourceBKey: string;
|
|
69
|
+
sourceBIndicatorId: string;
|
|
70
|
+
}): AlertSource;
|
|
71
|
+
/** The exact object handed to AlertManager.addAlert(). Pure — no Date.now(),
|
|
72
|
+
* no React state, so a test can assert the persisted shape deterministically. */
|
|
73
|
+
export declare function buildAlertDraft(input: AlertDraftInput): AlertCondition;
|
|
74
|
+
export declare function AlertsModal({ open, onClose, symbol, timeframe, alertManager, portalAdapter }: AlertsModalProps): import("react").ReactPortal | null;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings Context & State Management
|
|
3
|
+
* SSOT for Chart Settings across all 8 modular tabs
|
|
4
|
+
*/
|
|
5
|
+
import React, { type ReactNode } from "react";
|
|
6
|
+
import type { ChartSettingsState, SettingsTabId } from "./model/chartSettingsSchema";
|
|
7
|
+
import type { StorageAdapter } from "@vninvestcharts/engine-react";
|
|
8
|
+
export interface SettingsContextValue {
|
|
9
|
+
settings: ChartSettingsState;
|
|
10
|
+
activeTab: SettingsTabId;
|
|
11
|
+
setActiveTab: (tab: SettingsTabId) => void;
|
|
12
|
+
searchQuery: string;
|
|
13
|
+
setSearchQuery: (query: string) => void;
|
|
14
|
+
updateSection: <K extends keyof Omit<ChartSettingsState, "version">>(section: K, patch: Partial<ChartSettingsState[K]>) => void;
|
|
15
|
+
resetSection: <K extends keyof Omit<ChartSettingsState, "version">>(section: K) => void;
|
|
16
|
+
resetAll: () => void;
|
|
17
|
+
}
|
|
18
|
+
export declare function useSettingsContext(): SettingsContextValue;
|
|
19
|
+
export interface SettingsProviderProps {
|
|
20
|
+
children: ReactNode;
|
|
21
|
+
isDark?: boolean;
|
|
22
|
+
themePreset?: string;
|
|
23
|
+
storageAdapter?: StorageAdapter;
|
|
24
|
+
initialTab?: SettingsTabId;
|
|
25
|
+
onOverlayTimeframeChange?: (next: string | undefined) => void;
|
|
26
|
+
onOverlayStyleChange?: (next: "hollow" | "step" | "area" | "candle") => void;
|
|
27
|
+
onMaxVisiblePanesChange?: (next: number) => void;
|
|
28
|
+
onShowNonTradingDaysChange?: (next: boolean) => void;
|
|
29
|
+
onTimezoneChange?: (timezone: string) => void;
|
|
30
|
+
onAlertAudioEnabledChange?: (next: boolean) => void;
|
|
31
|
+
onEnableWhaleChange?: (next: boolean) => void;
|
|
32
|
+
onWhaleThresholdChange?: (next: number) => void;
|
|
33
|
+
onEnableCVDChange?: (next: boolean) => void;
|
|
34
|
+
onCVDModeChange?: (next: "oscillator" | "histogram") => void;
|
|
35
|
+
onDataAdapterChange?: (name: string) => void;
|
|
36
|
+
onShowTimeScrollbarChange?: (next: boolean) => void;
|
|
37
|
+
toggleTheme?: () => void;
|
|
38
|
+
onReset?: () => void;
|
|
39
|
+
overlayTimeframe?: string;
|
|
40
|
+
overlayStyle?: "hollow" | "step" | "area" | "candle";
|
|
41
|
+
maxVisiblePanes?: number;
|
|
42
|
+
showNonTradingDays?: boolean;
|
|
43
|
+
showTimeScrollbar?: boolean;
|
|
44
|
+
timezone?: string;
|
|
45
|
+
alertAudioEnabled?: boolean;
|
|
46
|
+
enableWhale?: boolean;
|
|
47
|
+
whaleThreshold?: number;
|
|
48
|
+
enableCVD?: boolean;
|
|
49
|
+
cvdMode?: "oscillator" | "histogram";
|
|
50
|
+
dataAdapterName?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Chart-centric isolation (S1). Multi-chart cell passes its chartId ->
|
|
53
|
+
* storage + events are namespaced to that chart. Single-chart omits it
|
|
54
|
+
* -> legacy global key (backward compatible).
|
|
55
|
+
*/
|
|
56
|
+
chartId?: string | null;
|
|
57
|
+
}
|
|
58
|
+
export declare function SettingsProvider(props: SettingsProviderProps): React.JSX.Element;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WE2 P2-05: SettingsModal (Lean Shell Architecture)
|
|
3
|
+
* Modular 2-column TradingView-parity Chart Settings Modal
|
|
4
|
+
*/
|
|
5
|
+
import React, { type ReactNode } from "react";
|
|
6
|
+
import type { PortalAdapter, StorageAdapter } from "@vninvestcharts/engine-react";
|
|
7
|
+
import type { SeriesTier } from "../../../lib/core";
|
|
8
|
+
export interface SettingsModalProps {
|
|
9
|
+
open: boolean;
|
|
10
|
+
onClose?: () => void;
|
|
11
|
+
children?: ReactNode;
|
|
12
|
+
comparisonOverlays?: ReadonlyArray<{
|
|
13
|
+
symbolId: string;
|
|
14
|
+
visible: boolean;
|
|
15
|
+
color: string;
|
|
16
|
+
yAxis: "left" | "right";
|
|
17
|
+
lineWidth: number;
|
|
18
|
+
lineStyle: "solid" | "dashed" | "dotted";
|
|
19
|
+
fillArea: boolean;
|
|
20
|
+
normalizeToBaseline: boolean;
|
|
21
|
+
}>;
|
|
22
|
+
onComparisonRemove?: (symbolId: string) => void;
|
|
23
|
+
onComparisonUpdate?: (symbolId: string, updates: Partial<{
|
|
24
|
+
visible: boolean;
|
|
25
|
+
color: string;
|
|
26
|
+
yAxis: "left" | "right";
|
|
27
|
+
lineWidth: number;
|
|
28
|
+
lineStyle: "solid" | "dashed" | "dotted";
|
|
29
|
+
fillArea: boolean;
|
|
30
|
+
normalizeToBaseline: boolean;
|
|
31
|
+
}>) => void;
|
|
32
|
+
selectedPaneId?: string;
|
|
33
|
+
onSelectedPaneIdChange?: (paneId: string) => void;
|
|
34
|
+
maxVisiblePanes?: number;
|
|
35
|
+
onMaxVisiblePanesChange?: (next: number) => void;
|
|
36
|
+
maxVisibleBars?: number;
|
|
37
|
+
onMaxVisibleBarsChange?: (next: number) => void;
|
|
38
|
+
showNonTradingDays?: boolean;
|
|
39
|
+
onShowNonTradingDaysChange?: (next: boolean) => void;
|
|
40
|
+
showTimeScrollbar?: boolean;
|
|
41
|
+
onShowTimeScrollbarChange?: (next: boolean) => void;
|
|
42
|
+
showDrawingPriceMarkers?: boolean;
|
|
43
|
+
onShowDrawingPriceMarkersChange?: (next: boolean) => void;
|
|
44
|
+
enableWhale?: boolean;
|
|
45
|
+
onEnableWhaleChange?: (next: boolean) => void;
|
|
46
|
+
whaleThreshold?: number;
|
|
47
|
+
onWhaleThresholdChange?: (next: number) => void;
|
|
48
|
+
enableCVD?: boolean;
|
|
49
|
+
onEnableCVDChange?: (next: boolean) => void;
|
|
50
|
+
cvdMode?: "oscillator" | "histogram";
|
|
51
|
+
onCVDModeChange?: (next: "oscillator" | "histogram") => void;
|
|
52
|
+
onReset?: () => void;
|
|
53
|
+
isDark?: boolean;
|
|
54
|
+
toggleTheme?: () => void;
|
|
55
|
+
timezone?: string;
|
|
56
|
+
onTimezoneChange?: (timezone: string) => void;
|
|
57
|
+
alertAudioEnabled?: boolean;
|
|
58
|
+
onAlertAudioEnabledChange?: (next: boolean) => void;
|
|
59
|
+
dataAdapterName?: string;
|
|
60
|
+
onDataAdapterChange?: (name: string) => void;
|
|
61
|
+
overlayTimeframe?: string;
|
|
62
|
+
onOverlayTimeframeChange?: (next: string | undefined) => void;
|
|
63
|
+
overlayStyle?: "hollow" | "step" | "area" | "candle";
|
|
64
|
+
onOverlayStyleChange?: (next: "hollow" | "step" | "area" | "candle") => void;
|
|
65
|
+
onExportLayout?: () => void;
|
|
66
|
+
onImportLayout?: (layoutJson: string) => void;
|
|
67
|
+
portalAdapter?: PortalAdapter;
|
|
68
|
+
storageAdapter?: StorageAdapter;
|
|
69
|
+
themePreset?: string;
|
|
70
|
+
chartId?: string;
|
|
71
|
+
/** Displayed in the header when set (locked at open; never read from ambient active). */
|
|
72
|
+
symbol?: string;
|
|
73
|
+
/** Displayed in the header when set (locked at open). */
|
|
74
|
+
timeframe?: string;
|
|
75
|
+
/** S3b-2: tier gate cho composer thêm series (undefined = không gate, legacy). */
|
|
76
|
+
seriesTier?: SeriesTier;
|
|
77
|
+
}
|
|
78
|
+
export declare function SettingsModal(props: SettingsModalProps): React.ReactPortal | null;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface SettingsRangeSliderMark {
|
|
2
|
+
value: number;
|
|
3
|
+
label: string;
|
|
4
|
+
}
|
|
5
|
+
export interface SettingsRangeSliderProps {
|
|
6
|
+
value: number;
|
|
7
|
+
min: number;
|
|
8
|
+
max: number;
|
|
9
|
+
step: number;
|
|
10
|
+
onChange: (next: number) => void;
|
|
11
|
+
marks?: readonly SettingsRangeSliderMark[];
|
|
12
|
+
formatValue?: (value: number) => string;
|
|
13
|
+
inputAriaLabel?: string;
|
|
14
|
+
inputAriaValueText?: string;
|
|
15
|
+
showCurrentIndicator?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare function SettingsRangeSlider({ value, min, max, step, onChange, marks, formatValue, inputAriaLabel, inputAriaValueText, showCurrentIndicator, }: SettingsRangeSliderProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SnapshotPreviewModal
|
|
3
|
+
*
|
|
4
|
+
* A premium modal for previewing a captured chart snapshot before downloading.
|
|
5
|
+
* Supports dark/light mode context, portal rendering, and i18n localization.
|
|
6
|
+
*/
|
|
7
|
+
import type { PortalAdapter } from "@vninvestcharts/engine-react";
|
|
8
|
+
export interface SnapshotPreviewModalProps {
|
|
9
|
+
isOpen: boolean;
|
|
10
|
+
imageDataUrl: string;
|
|
11
|
+
isDark: boolean;
|
|
12
|
+
onClose: () => void;
|
|
13
|
+
onSave: () => void;
|
|
14
|
+
portalAdapter?: PortalAdapter;
|
|
15
|
+
}
|
|
16
|
+
export declare function SnapshotPreviewModal({ isOpen, imageDataUrl, isDark, onClose, onSave, portalAdapter, }: SnapshotPreviewModalProps): import("react").ReactPortal | null;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workspace settings distribution (Settings S4/S5).
|
|
3
|
+
* Provided by the multi-chart grid only. Single-chart has no provider
|
|
4
|
+
* (legacy global behavior). Zero-delta for VNInvestMultiCharts/VNInvestCharts:
|
|
5
|
+
* GridContainer wraps its slots with this provider.
|
|
6
|
+
*/
|
|
7
|
+
import React from "react";
|
|
8
|
+
import type { StorageAdapter } from "@vninvestcharts/engine-react";
|
|
9
|
+
export interface WorkspaceSettingsValue {
|
|
10
|
+
/** True when inside a multi-chart grid (badge + Apply to All visible). */
|
|
11
|
+
isMultiChart: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare function useWorkspaceSettings(): WorkspaceSettingsValue;
|
|
14
|
+
export interface WorkspaceSettingsProviderProps {
|
|
15
|
+
children: React.ReactNode;
|
|
16
|
+
/** All chartIds in the grid (fan-out targets). */
|
|
17
|
+
chartIds: readonly string[];
|
|
18
|
+
/** Shared storage adapter (same instance as grid cells). */
|
|
19
|
+
storageAdapter?: StorageAdapter;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Marks the subtree as multi-chart and fans out Apply-to-All payloads:
|
|
23
|
+
* merges the appearance slice into EVERY chart's scoped composite and
|
|
24
|
+
* dispatches a targeted `vnsc-settings-sync` envelope per chart so cells
|
|
25
|
+
* repaint immediately without reload. Never touches symbol/panes/scale.
|
|
26
|
+
*/
|
|
27
|
+
export declare function WorkspaceSettingsProvider(props: WorkspaceSettingsProviderProps): React.JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Series formatting and labeling helpers for Settings modal
|
|
3
|
+
*/
|
|
4
|
+
import type { SeriesTypeId } from "../../../../lib/core";
|
|
5
|
+
export declare function formatSeriesSuffix(type: SeriesTypeId, params?: any): string;
|
|
6
|
+
export declare const SERIES_LABEL_KEYS: Partial<Record<SeriesTypeId, string>>;
|
|
7
|
+
export declare const SERIES_ABBREVIATIONS: Partial<Record<SeriesTypeId, string>>;
|
|
8
|
+
export declare const TECHNICAL_INDICATORS: Set<SeriesTypeId>;
|
|
9
|
+
export declare const LINE_WIDTH_SERIES_TYPES: Set<SeriesTypeId>;
|
|
10
|
+
export declare function supportsSeriesLineWidth(seriesType: SeriesTypeId): boolean;
|
|
11
|
+
export declare function formatSeriesDisplayName(type: SeriesTypeId, params: any, t: (key: string, opt?: any) => string, index?: number): string;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Appearance-style payload for "Apply to All" (Settings S5).
|
|
3
|
+
* Field-level whitelist: only visual/display fields are copied.
|
|
4
|
+
* Symbol identity, timeframe, panes, scale modes and data sources are NEVER copied.
|
|
5
|
+
*/
|
|
6
|
+
import type { ChartSettingsState } from "./chartSettingsSchema";
|
|
7
|
+
export interface AppearanceStylePayload {
|
|
8
|
+
symbol: Pick<ChartSettingsState["symbol"], "candleStyle" | "upColor" | "downColor" | "borderUpColor" | "borderDownColor" | "wickUpColor" | "wickDownColor" | "showLastPriceLine" | "lastPriceLineColor" | "showPrevClosePriceLine" | "prevClosePriceLineColor" | "showHighLowPriceLines" | "precision">;
|
|
9
|
+
statusLine: ChartSettingsState["statusLine"];
|
|
10
|
+
scales: Pick<ChartSettingsState["scales"], "priceAxisPosition" | "showSymbolLastValue" | "showPrevCloseValue" | "showIndicatorValues" | "showCountdownToBarClose" | "dateFormat" | "timeFormat">;
|
|
11
|
+
appearance: ChartSettingsState["appearance"];
|
|
12
|
+
theme: ChartSettingsState["theme"];
|
|
13
|
+
}
|
|
14
|
+
/** Window event fired by the source chart when user clicks Apply to All. */
|
|
15
|
+
export declare const APPLY_APPEARANCE_EVENT = "vnsc-apply-appearance-to-all";
|
|
16
|
+
/** Window event fired after fan-out completes (feedback + tests). */
|
|
17
|
+
export declare const APPLIED_APPEARANCE_EVENT = "vnsc-applied-appearance-to-all";
|
|
18
|
+
export interface ApplyAppearanceDetail {
|
|
19
|
+
sourceChartId: string;
|
|
20
|
+
payload: AppearanceStylePayload;
|
|
21
|
+
/** Source chart's paper-trading visibility; fans out to every chart when defined. */
|
|
22
|
+
paperEnabled?: boolean;
|
|
23
|
+
}
|
|
24
|
+
/** Extract the copyable appearance slice (pure). */
|
|
25
|
+
export declare function extractAppearancePayload(state: ChartSettingsState): AppearanceStylePayload;
|
|
26
|
+
/**
|
|
27
|
+
* Merge payload into a target state (pure). Blacklisted fields
|
|
28
|
+
* (timezone, priceScaleMode/invertScale/showTimeScrollbar, panesLayout,
|
|
29
|
+
* tradingEvents incl. dataAdapterName) are preserved from target.
|
|
30
|
+
*/
|
|
31
|
+
export declare function applyAppearancePayload(target: ChartSettingsState, payload: AppearanceStylePayload): ChartSettingsState;
|