@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.
Files changed (676) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE.md +83 -0
  3. package/README.md +851 -3
  4. package/dist/AlertsModal-WKEUDTUZ.js +2 -0
  5. package/dist/ConnectedTradingPanel-KWJMIKTN.css +2 -0
  6. package/dist/ConnectedTradingPanel-XDKMOQY5.js +2 -0
  7. package/dist/PineEditorPanel-AUXB4FD3.js +2 -0
  8. package/dist/PineEditorPanel-V6YN2OTU.css +2 -0
  9. package/dist/RightSidebarDockHost-6FPZ6EKV.css +2 -0
  10. package/dist/RightSidebarDockHost-OBFXKSIY.js +2 -0
  11. package/dist/StrategyTesterPanel-6IUTS2P4.js +2 -0
  12. package/dist/StrategyTesterPanel-LEWEUMXP.css +2 -0
  13. package/dist/VolumeProfileWorker-UREKVPUE.js +189 -0
  14. package/dist/adapters/index.cjs +2532 -0
  15. package/dist/adapters/index.d.mts +673 -0
  16. package/dist/adapters/index.d.ts +673 -0
  17. package/dist/adapters/index.js +2521 -0
  18. package/dist/adapters/index.umd.js +2535 -0
  19. package/dist/chunk-5T6DGB3V.js +2 -0
  20. package/dist/chunk-66JBEGR3.js +4 -0
  21. package/dist/chunk-6D7DVBIK.js +2 -0
  22. package/dist/chunk-76E7CKUD.js +2 -0
  23. package/dist/chunk-AKWVXRQ6.js +2 -0
  24. package/dist/chunk-FHHSTO6Z.js +2 -0
  25. package/dist/chunk-HPL723JA.js +2 -0
  26. package/dist/chunk-NVGTF73S.js +2 -0
  27. package/dist/chunk-PNIB4OM3.js +2 -0
  28. package/dist/chunk-UKJ5AKQX.js +595 -0
  29. package/dist/chunk-UYJTX3SD.js +2 -0
  30. package/dist/combined.css +3068 -0
  31. package/dist/css-modules-manifest.json +297 -0
  32. package/dist/dist-Y6PZ2RN3.js +12 -0
  33. package/dist/drawing/index.cjs +53 -0
  34. package/dist/drawing/index.d.mts +2 -0
  35. package/dist/drawing/index.d.ts +2 -0
  36. package/dist/drawing/index.js +2 -0
  37. package/dist/drawing/index.umd.js +54 -0
  38. package/dist/dts/drawing-shim.d.ts +3 -0
  39. package/dist/dts/index.d.ts +31 -0
  40. package/dist/dts/lib/Chart.d.ts +31 -0
  41. package/dist/dts/lib/ChartContext.d.ts +10 -0
  42. package/dist/dts/lib/EventCapture.d.ts +3 -0
  43. package/dist/dts/lib/GenericChartComponent.d.ts +5 -0
  44. package/dist/dts/lib/GenericComponent.d.ts +124 -0
  45. package/dist/dts/lib/StockChartContext.d.ts +53 -0
  46. package/dist/dts/lib/adapters/BaseAdapter.d.ts +25 -0
  47. package/dist/dts/lib/adapters/BinanceAdapter.d.ts +51 -0
  48. package/dist/dts/lib/adapters/CSVAdapter.d.ts +17 -0
  49. package/dist/dts/lib/adapters/ContinuousContractAdapter.d.ts +63 -0
  50. package/dist/dts/lib/adapters/ContinuousContractTypes.d.ts +154 -0
  51. package/dist/dts/lib/adapters/DBAdapter.d.ts +16 -0
  52. package/dist/dts/lib/adapters/DataAdapter.d.ts +136 -0
  53. package/dist/dts/lib/adapters/DjangoVnstockAdapter.d.ts +15 -0
  54. package/dist/dts/lib/adapters/LocalCacheAdapter.d.ts +18 -0
  55. package/dist/dts/lib/adapters/MockAdapter.d.ts +22 -0
  56. package/dist/dts/lib/adapters/RESTAdapter.d.ts +16 -0
  57. package/dist/dts/lib/adapters/StockDataAdapter.d.ts +1 -0
  58. package/dist/dts/lib/adapters/UDFDataAdapter.d.ts +29 -0
  59. package/dist/dts/lib/adapters/VNStocksAdapter.d.ts +8 -0
  60. package/dist/dts/lib/adapters/WSAdapter.d.ts +30 -0
  61. package/dist/dts/lib/adapters/gapFixture.d.ts +71 -0
  62. package/dist/dts/lib/adapters/index.d.ts +15 -0
  63. package/dist/dts/lib/adapters/rollAlgorithms.d.ts +68 -0
  64. package/dist/dts/lib/advisory/AdvisoryPanel.d.ts +5 -0
  65. package/dist/dts/lib/alerts/AlertEvaluator.d.ts +5 -0
  66. package/dist/dts/lib/alerts/AlertManager.d.ts +123 -0
  67. package/dist/dts/lib/alerts/types.d.ts +58 -0
  68. package/dist/dts/lib/cache/cacheDebug.d.ts +3 -0
  69. package/dist/dts/lib/calendars/ExchangeCalendar.d.ts +23 -0
  70. package/dist/dts/lib/calendars/calendarRegistry.d.ts +10 -0
  71. package/dist/dts/lib/calendars/index.d.ts +3 -0
  72. package/dist/dts/lib/core/ChartPane.d.ts +8 -0
  73. package/dist/dts/lib/core/ChartSplitter.d.ts +70 -0
  74. package/dist/dts/lib/core/ChartTerminal.d.ts +12 -0
  75. package/dist/dts/lib/core/ErrorBoundary.d.ts +17 -0
  76. package/dist/dts/lib/core/IndicatorLegend.d.ts +47 -0
  77. package/dist/dts/lib/core/PaneHeader.d.ts +24 -0
  78. package/dist/dts/lib/core/PaneLabel.d.ts +8 -0
  79. package/dist/dts/lib/core/PaneSplitter.d.ts +9 -0
  80. package/dist/dts/lib/core/SeriesPicker.d.ts +10 -0
  81. package/dist/dts/lib/core/calculators/alignBarsByDate.d.ts +38 -0
  82. package/dist/dts/lib/core/calculators/buildIndicatorComputationPlan.d.ts +16 -0
  83. package/dist/dts/lib/core/calculators/calcCVDApprox.d.ts +6 -0
  84. package/dist/dts/lib/core/calculators/calcStrengthElder.d.ts +7 -0
  85. package/dist/dts/lib/core/calculators/calcWhaleApprox.d.ts +6 -0
  86. package/dist/dts/lib/core/calculators/computationHelpers.d.ts +12 -0
  87. package/dist/dts/lib/core/calculators/computeIndicatorComputationResult.d.ts +3 -0
  88. package/dist/dts/lib/core/calculators/computeMarketStructure.d.ts +8 -0
  89. package/dist/dts/lib/core/calculators/computeMomentum.d.ts +22 -0
  90. package/dist/dts/lib/core/calculators/computeMovingAverage.d.ts +15 -0
  91. package/dist/dts/lib/core/calculators/computeProfile.d.ts +9 -0
  92. package/dist/dts/lib/core/calculators/computeTrend.d.ts +10 -0
  93. package/dist/dts/lib/core/calculators/computeVolatility.d.ts +14 -0
  94. package/dist/dts/lib/core/calculators/computeVolumeFlow.d.ts +19 -0
  95. package/dist/dts/lib/core/calculators/enrichData.d.ts +7 -0
  96. package/dist/dts/lib/core/calculators/enrichDataWithCanonicalStore.d.ts +33 -0
  97. package/dist/dts/lib/core/calculators/exoticChartData.d.ts +140 -0
  98. package/dist/dts/lib/core/calculators/fixtures/mockData.d.ts +2 -0
  99. package/dist/dts/lib/core/calculators/indicatorComputation.d.ts +27 -0
  100. package/dist/dts/lib/core/calculators/indicatorComputationTypes.d.ts +249 -0
  101. package/dist/dts/lib/core/calculators/materializeIndicatorValues.d.ts +3 -0
  102. package/dist/dts/lib/core/calculators/normalizePrices.d.ts +36 -0
  103. package/dist/dts/lib/core/calculators/resolveCalculationOrder.d.ts +17 -0
  104. package/dist/dts/lib/core/calculators/types.d.ts +269 -0
  105. package/dist/dts/lib/core/canvas/ChartRenderContext.d.ts +14 -0
  106. package/dist/dts/lib/core/canvas/OverlayCanvas.d.ts +19 -0
  107. package/dist/dts/lib/core/context/ChartSyncContext.d.ts +21 -0
  108. package/dist/dts/lib/core/context/DataContext.d.ts +15 -0
  109. package/dist/dts/lib/core/context/PaneManagerContext.d.ts +10 -0
  110. package/dist/dts/lib/core/hooks/paneSizingHelpers.d.ts +13 -0
  111. package/dist/dts/lib/core/hooks/useCanvasResize.d.ts +8 -0
  112. package/dist/dts/lib/core/hooks/useChartTheme.d.ts +12 -0
  113. package/dist/dts/lib/core/hooks/useDynamicPanes.d.ts +155 -0
  114. package/dist/dts/lib/core/hooks/useIndicatorSets.d.ts +20 -0
  115. package/dist/dts/lib/core/hooks/usePaneManager.d.ts +39 -0
  116. package/dist/dts/lib/core/hooks/usePaneSizes.d.ts +52 -0
  117. package/dist/dts/lib/core/index.d.ts +41 -0
  118. package/dist/dts/lib/core/paneScaleSlotDomains.d.ts +3 -0
  119. package/dist/dts/lib/core/registry/SeriesRegistry.d.ts +22 -0
  120. package/dist/dts/lib/core/registry/filterPanesBySeriesTier.d.ts +43 -0
  121. package/dist/dts/lib/core/registry/marketStructure.d.ts +7 -0
  122. package/dist/dts/lib/core/registry/momentum.d.ts +20 -0
  123. package/dist/dts/lib/core/registry/movingAverage.d.ts +14 -0
  124. package/dist/dts/lib/core/registry/priceChartTypes.d.ts +16 -0
  125. package/dist/dts/lib/core/registry/profile.d.ts +8 -0
  126. package/dist/dts/lib/core/registry/registerAll.d.ts +1 -0
  127. package/dist/dts/lib/core/registry/registerPhaseOne.d.ts +3 -0
  128. package/dist/dts/lib/core/registry/registryCore.d.ts +77 -0
  129. package/dist/dts/lib/core/registry/trend.d.ts +11 -0
  130. package/dist/dts/lib/core/registry/volatility.d.ts +11 -0
  131. package/dist/dts/lib/core/registry/volumeFlow.d.ts +20 -0
  132. package/dist/dts/lib/core/replay/BarReplayController.d.ts +62 -0
  133. package/dist/dts/lib/core/replay/ReplayEventBus.d.ts +68 -0
  134. package/dist/dts/lib/core/replay/ReplayFillSimulator.d.ts +33 -0
  135. package/dist/dts/lib/core/replay/ReplayOrderBook.d.ts +24 -0
  136. package/dist/dts/lib/core/replay/ReplayPositionManager.d.ts +30 -0
  137. package/dist/dts/lib/core/replay/ReplaySessionAnalytics.d.ts +31 -0
  138. package/dist/dts/lib/core/replay/createReplayTradeMarkerPrimitives.d.ts +7 -0
  139. package/dist/dts/lib/core/replay/pnlUtils.d.ts +2 -0
  140. package/dist/dts/lib/core/replay/replayBrokerAdapters.d.ts +51 -0
  141. package/dist/dts/lib/core/replay/replayTradingTypes.d.ts +61 -0
  142. package/dist/dts/lib/core/scales/computeScales.d.ts +8 -0
  143. package/dist/dts/lib/core/seriesValueResolver.d.ts +27 -0
  144. package/dist/dts/lib/core/sets/builtins.d.ts +2 -0
  145. package/dist/dts/lib/core/sets/indicatorSetCodec.d.ts +15 -0
  146. package/dist/dts/lib/core/trading/AnalyticsEngine.d.ts +56 -0
  147. package/dist/dts/lib/core/trading/BrokerAPI.d.ts +40 -0
  148. package/dist/dts/lib/core/trading/ExecutionSimulator.d.ts +53 -0
  149. package/dist/dts/lib/core/trading/FillSettlement.d.ts +38 -0
  150. package/dist/dts/lib/core/trading/MarketDataPort.d.ts +41 -0
  151. package/dist/dts/lib/core/trading/MarketRules.d.ts +58 -0
  152. package/dist/dts/lib/core/trading/OrderManagementSystem.d.ts +57 -0
  153. package/dist/dts/lib/core/trading/PositionManager.d.ts +79 -0
  154. package/dist/dts/lib/core/trading/RiskEngine.d.ts +40 -0
  155. package/dist/dts/lib/core/trading/SettlementCalendar.d.ts +10 -0
  156. package/dist/dts/lib/core/trading/VirtualBrokerEngine.d.ts +92 -0
  157. package/dist/dts/lib/core/trading/orderMargin.d.ts +3 -0
  158. package/dist/dts/lib/core/trading/storage/InMemoryStorageAdapter.d.ts +10 -0
  159. package/dist/dts/lib/core/trading/storage/TradingStorage.d.ts +34 -0
  160. package/dist/dts/lib/core/trading/types.d.ts +99 -0
  161. package/dist/dts/lib/core/types/chart.d.ts +21 -0
  162. package/dist/dts/lib/core/types/indicator-catalog.d.ts +38 -0
  163. package/dist/dts/lib/core/types/indicator-set.d.ts +19 -0
  164. package/dist/dts/lib/core/types/pane-descriptor.d.ts +46 -0
  165. package/dist/dts/lib/core/types/seriesComponents.d.ts +15 -0
  166. package/dist/dts/lib/credentials/credentialStore.d.ts +93 -0
  167. package/dist/dts/lib/helper/SaveChartAsImage.d.ts +90 -0
  168. package/dist/dts/lib/indicator/defaultOptionsForAppearance.d.ts +105 -0
  169. package/dist/dts/lib/indicators/builtin/MTFWrapper.d.ts +3 -0
  170. package/dist/dts/lib/indicators/builtin/VolumeProfileWorker.d.ts +19 -0
  171. package/dist/dts/lib/indicators/builtin/ac.d.ts +4 -0
  172. package/dist/dts/lib/indicators/builtin/alligator.d.ts +5 -0
  173. package/dist/dts/lib/indicators/builtin/anchoredVwap.d.ts +5 -0
  174. package/dist/dts/lib/indicators/builtin/ao.d.ts +4 -0
  175. package/dist/dts/lib/indicators/builtin/bbi.d.ts +10 -0
  176. package/dist/dts/lib/indicators/builtin/bias.d.ts +4 -0
  177. package/dist/dts/lib/indicators/builtin/bollinger.d.ts +9 -0
  178. package/dist/dts/lib/indicators/builtin/brar.d.ts +4 -0
  179. package/dist/dts/lib/indicators/builtin/cci.d.ts +4 -0
  180. package/dist/dts/lib/indicators/builtin/chaikinOscillator.d.ts +14 -0
  181. package/dist/dts/lib/indicators/builtin/chaikinVol.d.ts +4 -0
  182. package/dist/dts/lib/indicators/builtin/ci.d.ts +4 -0
  183. package/dist/dts/lib/indicators/builtin/cmf.d.ts +4 -0
  184. package/dist/dts/lib/indicators/builtin/cr.d.ts +4 -0
  185. package/dist/dts/lib/indicators/builtin/cvd.d.ts +4 -0
  186. package/dist/dts/lib/indicators/builtin/deltaProfile.d.ts +5 -0
  187. package/dist/dts/lib/indicators/builtin/dema.d.ts +4 -0
  188. package/dist/dts/lib/indicators/builtin/dma.d.ts +4 -0
  189. package/dist/dts/lib/indicators/builtin/dmi.d.ts +4 -0
  190. package/dist/dts/lib/indicators/builtin/donchian.d.ts +5 -0
  191. package/dist/dts/lib/indicators/builtin/ema.d.ts +4 -0
  192. package/dist/dts/lib/indicators/builtin/emv.d.ts +4 -0
  193. package/dist/dts/lib/indicators/builtin/footprint.d.ts +5 -0
  194. package/dist/dts/lib/indicators/builtin/fractals.d.ts +5 -0
  195. package/dist/dts/lib/indicators/builtin/gator.d.ts +5 -0
  196. package/dist/dts/lib/indicators/builtin/hma.d.ts +4 -0
  197. package/dist/dts/lib/indicators/builtin/hv.d.ts +4 -0
  198. package/dist/dts/lib/indicators/builtin/ichimoku.d.ts +5 -0
  199. package/dist/dts/lib/indicators/builtin/kdj.d.ts +4 -0
  200. package/dist/dts/lib/indicators/builtin/keltner.d.ts +5 -0
  201. package/dist/dts/lib/indicators/builtin/ma.d.ts +10 -0
  202. package/dist/dts/lib/indicators/builtin/maRibbon.d.ts +5 -0
  203. package/dist/dts/lib/indicators/builtin/macd.d.ts +9 -0
  204. package/dist/dts/lib/indicators/builtin/marketProfile.d.ts +5 -0
  205. package/dist/dts/lib/indicators/builtin/mfi.d.ts +4 -0
  206. package/dist/dts/lib/indicators/builtin/mtm.d.ts +4 -0
  207. package/dist/dts/lib/indicators/builtin/obv.d.ts +10 -0
  208. package/dist/dts/lib/indicators/builtin/pivotHighLow.d.ts +5 -0
  209. package/dist/dts/lib/indicators/builtin/pivotStandard.d.ts +5 -0
  210. package/dist/dts/lib/indicators/builtin/psy.d.ts +4 -0
  211. package/dist/dts/lib/indicators/builtin/pvt.d.ts +4 -0
  212. package/dist/dts/lib/indicators/builtin/roc.d.ts +4 -0
  213. package/dist/dts/lib/indicators/builtin/rsi.d.ts +4 -0
  214. package/dist/dts/lib/indicators/builtin/sar.d.ts +10 -0
  215. package/dist/dts/lib/indicators/builtin/sma.d.ts +4 -0
  216. package/dist/dts/lib/indicators/builtin/smfi.d.ts +8 -0
  217. package/dist/dts/lib/indicators/builtin/stdDev.d.ts +4 -0
  218. package/dist/dts/lib/indicators/builtin/strengthRelative.d.ts +7 -0
  219. package/dist/dts/lib/indicators/builtin/supertrend.d.ts +5 -0
  220. package/dist/dts/lib/indicators/builtin/tema.d.ts +4 -0
  221. package/dist/dts/lib/indicators/builtin/trix.d.ts +4 -0
  222. package/dist/dts/lib/indicators/builtin/volOsc.d.ts +4 -0
  223. package/dist/dts/lib/indicators/builtin/volume.d.ts +4 -0
  224. package/dist/dts/lib/indicators/builtin/volumeProfile.d.ts +8 -0
  225. package/dist/dts/lib/indicators/builtin/vr.d.ts +10 -0
  226. package/dist/dts/lib/indicators/builtin/vwap.d.ts +5 -0
  227. package/dist/dts/lib/indicators/builtin/vwma.d.ts +4 -0
  228. package/dist/dts/lib/indicators/builtin/wma.d.ts +4 -0
  229. package/dist/dts/lib/indicators/builtin/wr.d.ts +10 -0
  230. package/dist/dts/lib/indicators/builtin/wyckoffWave.d.ts +15 -0
  231. package/dist/dts/lib/indicators/index.d.ts +63 -0
  232. package/dist/dts/lib/indicators/indicatorValueShapes.d.ts +15 -0
  233. package/dist/dts/lib/indicators/outputKeys.d.ts +50 -0
  234. package/dist/dts/lib/indicators/overlays/CVDIndicator.d.ts +26 -0
  235. package/dist/dts/lib/indicators/overlays/DarkFlowBadge.d.ts +19 -0
  236. package/dist/dts/lib/indicators/overlays/ExternalCVDOverlay.d.ts +15 -0
  237. package/dist/dts/lib/indicators/overlays/WhaleBubbleOverlay.d.ts +14 -0
  238. package/dist/dts/lib/indicators/overlays/WhaleMarketBubbleOverlay.d.ts +27 -0
  239. package/dist/dts/lib/indicators/overlays/whaleDetector.d.ts +66 -0
  240. package/dist/dts/lib/indicators/registry.d.ts +6 -0
  241. package/dist/dts/lib/indicators/types.d.ts +5 -0
  242. package/dist/dts/lib/indicators/utils.d.ts +259 -0
  243. package/dist/dts/lib/pinescript/PineCompiler.d.ts +34 -0
  244. package/dist/dts/lib/pinescript/ast.d.ts +73 -0
  245. package/dist/dts/lib/pinescript/compile.d.ts +40 -0
  246. package/dist/dts/lib/pinescript/grammar.d.ts +12 -0
  247. package/dist/dts/lib/pinescript/pine.worker.d.ts +1 -0
  248. package/dist/dts/lib/pinescript/pineBlocks.d.ts +54 -0
  249. package/dist/dts/lib/pinescript/pineBuiltins.d.ts +47 -0
  250. package/dist/dts/lib/pinescript/pineEnv.d.ts +46 -0
  251. package/dist/dts/lib/pinescript/pineMath.d.ts +13 -0
  252. package/dist/dts/lib/pinescript/pineParse.d.ts +25 -0
  253. package/dist/dts/lib/pinescript/pineStrings.d.ts +50 -0
  254. package/dist/dts/lib/pinescript/runtime.d.ts +5 -0
  255. package/dist/dts/lib/pinescript/scriptRegistry.d.ts +40 -0
  256. package/dist/dts/lib/pinescript/series-value.d.ts +64 -0
  257. package/dist/dts/lib/pinescript/vnscript-completion.d.ts +1 -0
  258. package/dist/dts/lib/pinescript/vnscript-grammar.d.ts +19 -0
  259. package/dist/dts/lib/scale/discontinuousTimeScaleProvider.d.ts +3 -0
  260. package/dist/dts/lib/scale/financeDiscontinuousScale.d.ts +15 -0
  261. package/dist/dts/lib/scale/index.d.ts +1 -0
  262. package/dist/dts/lib/scale/levels.d.ts +12 -0
  263. package/dist/dts/lib/series/AlternatingFillAreaSeries.d.ts +13 -0
  264. package/dist/dts/lib/series/AreaOnlySeries.d.ts +10 -0
  265. package/dist/dts/lib/series/AreaSeries.d.ts +30 -0
  266. package/dist/dts/lib/series/BarSeries.d.ts +40 -0
  267. package/dist/dts/lib/series/BollingerSeries.d.ts +11 -0
  268. package/dist/dts/lib/series/CandlestickSeries.d.ts +56 -0
  269. package/dist/dts/lib/series/CircleMarker.d.ts +28 -0
  270. package/dist/dts/lib/series/ElderRaySeries.d.ts +14 -0
  271. package/dist/dts/lib/series/FootprintSeries.d.ts +21 -0
  272. package/dist/dts/lib/series/GroupedBarSeries.d.ts +9 -0
  273. package/dist/dts/lib/series/HTFOverlaySeries.d.ts +32 -0
  274. package/dist/dts/lib/series/HistogramSeries.d.ts +51 -0
  275. package/dist/dts/lib/series/KagiSeries.d.ts +9 -0
  276. package/dist/dts/lib/series/LineBreakSeries.d.ts +28 -0
  277. package/dist/dts/lib/series/LineSeries.d.ts +54 -0
  278. package/dist/dts/lib/series/MACDSeries.d.ts +28 -0
  279. package/dist/dts/lib/series/MarketProfileSeries.d.ts +18 -0
  280. package/dist/dts/lib/series/OHLCSeries.d.ts +9 -0
  281. package/dist/dts/lib/series/OverlayBarSeries.d.ts +9 -0
  282. package/dist/dts/lib/series/PointAndFigureSeries.d.ts +45 -0
  283. package/dist/dts/lib/series/RSISeries.d.ts +38 -0
  284. package/dist/dts/lib/series/RenkoSeries.d.ts +9 -0
  285. package/dist/dts/lib/series/SARSeries.d.ts +10 -0
  286. package/dist/dts/lib/series/SVGComponent.d.ts +5 -0
  287. package/dist/dts/lib/series/ScatterSeries.d.ts +9 -0
  288. package/dist/dts/lib/series/SquareMarker.d.ts +28 -0
  289. package/dist/dts/lib/series/StackedBarSeries.d.ts +19 -0
  290. package/dist/dts/lib/series/StochasticSeries.d.ts +9 -0
  291. package/dist/dts/lib/series/StraightLine.d.ts +18 -0
  292. package/dist/dts/lib/series/TriangleMarker.d.ts +30 -0
  293. package/dist/dts/lib/series/VolumeProfileSeries.d.ts +9 -0
  294. package/dist/dts/lib/series/index.d.ts +28 -0
  295. package/dist/dts/lib/strategy/BrokerSimulator.d.ts +11 -0
  296. package/dist/dts/lib/strategy/types.d.ts +35 -0
  297. package/dist/dts/lib/tape/TapePanel.d.ts +5 -0
  298. package/dist/dts/lib/types/adapter.d.ts +1 -0
  299. package/dist/dts/lib/types/index.d.ts +5 -0
  300. package/dist/dts/lib/types/indicator.d.ts +11 -0
  301. package/dist/dts/lib/types/ohlcv.d.ts +1 -0
  302. package/dist/dts/lib/types/pane.d.ts +23 -0
  303. package/dist/dts/lib/types/runtime.d.ts +11 -0
  304. package/dist/dts/lib/types/vninvest.d.ts +320 -0
  305. package/dist/dts/lib/types.d.ts +45 -0
  306. package/dist/dts/lib/utils/ChartDataUtil.d.ts +26 -0
  307. package/dist/dts/lib/utils/PureComponent.d.ts +5 -0
  308. package/dist/dts/lib/utils/accumulatingWindow.d.ts +1 -0
  309. package/dist/dts/lib/utils/axisPriceFormat.d.ts +6 -0
  310. package/dist/dts/lib/utils/barWidth.d.ts +14 -0
  311. package/dist/dts/lib/utils/identity.d.ts +1 -0
  312. package/dist/dts/lib/utils/index.d.ts +70 -0
  313. package/dist/dts/lib/utils/logger.d.ts +28 -0
  314. package/dist/dts/lib/utils/mappedSlidingWindow.d.ts +1 -0
  315. package/dist/dts/lib/utils/merge.d.ts +6 -0
  316. package/dist/dts/lib/utils/noop.d.ts +1 -0
  317. package/dist/dts/lib/utils/rebind.d.ts +1 -0
  318. package/dist/dts/lib/utils/shallowEqual.d.ts +1 -0
  319. package/dist/dts/lib/utils/slidingWindow.d.ts +1 -0
  320. package/dist/dts/lib/utils/storage.d.ts +32 -0
  321. package/dist/dts/lib/utils/strokeDasharray.d.ts +3 -0
  322. package/dist/dts/lib/utils/timezoneFormatter.d.ts +14 -0
  323. package/dist/dts/lib/utils/zipper.d.ts +4 -0
  324. package/dist/dts/public-api.d.ts +31 -0
  325. package/dist/dts/widget/BackfillWorkerFlags.d.ts +12 -0
  326. package/dist/dts/widget/CanaryRollbackHelper.d.ts +95 -0
  327. package/dist/dts/widget/CanaryRolloutConfig.d.ts +100 -0
  328. package/dist/dts/widget/DrawingPriceLabelsOverlay.d.ts +20 -0
  329. package/dist/dts/widget/ForkDrawingsOverlay.d.ts +16 -0
  330. package/dist/dts/widget/MeasurementOverlay.d.ts +24 -0
  331. package/dist/dts/widget/VNInvestCharts.d.ts +5 -0
  332. package/dist/dts/widget/VNInvestChartsProps.d.ts +302 -0
  333. package/dist/dts/widget/VNInvestMultiCharts.d.ts +8 -0
  334. package/dist/dts/widget/VNInvestMultiCharts.types.d.ts +130 -0
  335. package/dist/dts/widget/WidgetEmptyState.d.ts +11 -0
  336. package/dist/dts/widget/WidgetErrorBoundary.d.ts +26 -0
  337. package/dist/dts/widget/adapters/ContinuousFuturesStockDataAdapter.d.ts +18 -0
  338. package/dist/dts/widget/adapters/DataProviderAdapterWrapper.d.ts +14 -0
  339. package/dist/dts/widget/adapters/MultiSourceDataAdapter.d.ts +24 -0
  340. package/dist/dts/widget/adapters/VNInvestClient.d.ts +161 -0
  341. package/dist/dts/widget/adapters/VNInvestDataAdapter.d.ts +77 -0
  342. package/dist/dts/widget/adapters/VNInvestWebSocketClient.d.ts +79 -0
  343. package/dist/dts/widget/adapters/barsPagingPolicy.d.ts +18 -0
  344. package/dist/dts/widget/adapters/corporateEvents.d.ts +13 -0
  345. package/dist/dts/widget/adapters/index.d.ts +20 -0
  346. package/dist/dts/widget/adapters/nativeShapes.d.ts +32 -0
  347. package/dist/dts/widget/adapters/watchlistRealtimeSync.d.ts +16 -0
  348. package/dist/dts/widget/alerts/DrawingAlertsHost.d.ts +18 -0
  349. package/dist/dts/widget/alerts/useDrawingAlerts.d.ts +37 -0
  350. package/dist/dts/widget/canaryBarFiltering.d.ts +35 -0
  351. package/dist/dts/widget/capabilities/CapabilityResolver.d.ts +71 -0
  352. package/dist/dts/widget/capabilities/capabilityProbe.d.ts +28 -0
  353. package/dist/dts/widget/capabilities/useTierGatedFeatures.d.ts +48 -0
  354. package/dist/dts/widget/components/BottomPanelHost.d.ts +80 -0
  355. package/dist/dts/widget/components/BottomPanelSplitter.d.ts +15 -0
  356. package/dist/dts/widget/components/CapabilityGate.d.ts +65 -0
  357. package/dist/dts/widget/components/ChartDiagOverlay.d.ts +31 -0
  358. package/dist/dts/widget/components/ConfirmDialog.d.ts +12 -0
  359. package/dist/dts/widget/components/DowngradeBanner.d.ts +9 -0
  360. package/dist/dts/widget/components/ForkPaneSeparators.d.ts +11 -0
  361. package/dist/dts/widget/components/ForkPaneTooltips.d.ts +23 -0
  362. package/dist/dts/widget/components/ForkXAxisOverlay.d.ts +11 -0
  363. package/dist/dts/widget/components/ForkYAxisCrosshairLabels.d.ts +9 -0
  364. package/dist/dts/widget/components/LayoutDesigner.d.ts +26 -0
  365. package/dist/dts/widget/components/PremiumFeatureGate.d.ts +10 -0
  366. package/dist/dts/widget/components/ShortcutHelpModal.d.ts +44 -0
  367. package/dist/dts/widget/components/SystemMenu.d.ts +66 -0
  368. package/dist/dts/widget/components/Toast.d.ts +20 -0
  369. package/dist/dts/widget/components/canvas/BarCountdownBadge.d.ts +8 -0
  370. package/dist/dts/widget/components/canvas/ChartA11ySummary.d.ts +40 -0
  371. package/dist/dts/widget/components/canvas/ChartStatusLine.d.ts +39 -0
  372. package/dist/dts/widget/components/canvas/PricePaneHeader.d.ts +24 -0
  373. package/dist/dts/widget/components/canvas/PriceScaleMenu.d.ts +27 -0
  374. package/dist/dts/widget/components/canvas/TimeAxisScrollbar.d.ts +18 -0
  375. package/dist/dts/widget/components/common/Icons.d.ts +67 -0
  376. package/dist/dts/widget/components/dock/DataWindow.d.ts +7 -0
  377. package/dist/dts/widget/components/dock/DockUpgradeNudge.d.ts +10 -0
  378. package/dist/dts/widget/components/dock/RightSidebarDockHost.d.ts +57 -0
  379. package/dist/dts/widget/components/dock/WatchlistPanel.d.ts +7 -0
  380. package/dist/dts/widget/components/dock/WorkspaceRightDockSlot.d.ts +46 -0
  381. package/dist/dts/widget/components/dock/dockAccess.d.ts +20 -0
  382. package/dist/dts/widget/components/dock/drawingDockContentBuilders.d.ts +29 -0
  383. package/dist/dts/widget/components/drawing/DrawingDock.d.ts +47 -0
  384. package/dist/dts/widget/components/drawing/DrawingInspector.d.ts +94 -0
  385. package/dist/dts/widget/components/drawing/DrawingListPanel.d.ts +62 -0
  386. package/dist/dts/widget/components/drawing/DrawingSemanticPointLegend.d.ts +14 -0
  387. package/dist/dts/widget/components/drawing/FloatingDrawingInspector.d.ts +18 -0
  388. package/dist/dts/widget/components/drawing/IconPickerPanel.d.ts +5 -0
  389. package/dist/dts/widget/components/drawing/InlineTextEditor.d.ts +20 -0
  390. package/dist/dts/widget/components/drawing/PatternScanPanel.d.ts +27 -0
  391. package/dist/dts/widget/components/drawing/TemplateManagerPanel.d.ts +18 -0
  392. package/dist/dts/widget/components/events/CorporateEventsOverlay.d.ts +23 -0
  393. package/dist/dts/widget/components/events/EventMarkerIcon.d.ts +6 -0
  394. package/dist/dts/widget/components/footer/ChartFooter.d.ts +26 -0
  395. package/dist/dts/widget/components/footer/MultiChartsFooter.d.ts +37 -0
  396. package/dist/dts/widget/components/footer/TimeframeFooter.d.ts +25 -0
  397. package/dist/dts/widget/components/footer/useBarCountdown.d.ts +5 -0
  398. package/dist/dts/widget/components/header/OHLCHeader.d.ts +72 -0
  399. package/dist/dts/widget/components/layout/DrawingConflictNotice.d.ts +4 -0
  400. package/dist/dts/widget/components/layout/GridContainer.d.ts +70 -0
  401. package/dist/dts/widget/components/layout/GridSlotErrorBoundary.d.ts +17 -0
  402. package/dist/dts/widget/components/layout/Splitter.d.ts +23 -0
  403. package/dist/dts/widget/components/layout/gridSplitterMath.d.ts +40 -0
  404. package/dist/dts/widget/components/layout/useGridSplitterDrag.d.ts +18 -0
  405. package/dist/dts/widget/components/mobile/MobileChartCarousel.d.ts +11 -0
  406. package/dist/dts/widget/components/mobile/MobileToolbar.d.ts +29 -0
  407. package/dist/dts/widget/components/overlays/AdvisoryPanel.d.ts +25 -0
  408. package/dist/dts/widget/components/overlays/TapePanel.d.ts +25 -0
  409. package/dist/dts/widget/components/overlays/WhalePanel.d.ts +5 -0
  410. package/dist/dts/widget/components/panels/AdvisoryPanel.d.ts +25 -0
  411. package/dist/dts/widget/components/panels/PineEditorPanel.d.ts +18 -0
  412. package/dist/dts/widget/components/panels/StrategyTesterPanel.d.ts +7 -0
  413. package/dist/dts/widget/components/panels/TapePanel.d.ts +17 -0
  414. package/dist/dts/widget/components/panels/index.d.ts +8 -0
  415. package/dist/dts/widget/components/replay/FloatingReplayToolbar.d.ts +24 -0
  416. package/dist/dts/widget/components/replay/ReplayCutOverlay.d.ts +8 -0
  417. package/dist/dts/widget/components/search/SymbolCompareModal.d.ts +24 -0
  418. package/dist/dts/widget/components/search/SymbolSearchModal.d.ts +12 -0
  419. package/dist/dts/widget/components/search/VNSymbolSearch.d.ts +83 -0
  420. package/dist/dts/widget/components/settings/AlertsModal.d.ts +74 -0
  421. package/dist/dts/widget/components/settings/SettingsContext.d.ts +58 -0
  422. package/dist/dts/widget/components/settings/SettingsModal.d.ts +78 -0
  423. package/dist/dts/widget/components/settings/SettingsRangeSlider.d.ts +17 -0
  424. package/dist/dts/widget/components/settings/SnapshotPreviewModal.d.ts +16 -0
  425. package/dist/dts/widget/components/settings/WorkspaceSettingsContext.d.ts +27 -0
  426. package/dist/dts/widget/components/settings/helpers/seriesFormatters.d.ts +11 -0
  427. package/dist/dts/widget/components/settings/model/appearancePayload.d.ts +31 -0
  428. package/dist/dts/widget/components/settings/model/chartSettingsSchema.d.ts +100 -0
  429. package/dist/dts/widget/components/settings/model/defaultSettings.d.ts +5 -0
  430. package/dist/dts/widget/components/settings/model/indicatorShare.d.ts +29 -0
  431. package/dist/dts/widget/components/settings/storageKeys.d.ts +29 -0
  432. package/dist/dts/widget/components/settings/tabs/AppearanceSettingsTab.d.ts +5 -0
  433. package/dist/dts/widget/components/settings/tabs/IndicatorParamsForm.d.ts +12 -0
  434. package/dist/dts/widget/components/settings/tabs/IndicatorsSettingsTab.d.ts +34 -0
  435. package/dist/dts/widget/components/settings/tabs/LicensingSettingsTab.d.ts +5 -0
  436. package/dist/dts/widget/components/settings/tabs/PanesLayoutSettingsTab.d.ts +11 -0
  437. package/dist/dts/widget/components/settings/tabs/ResetSettingsTab.d.ts +8 -0
  438. package/dist/dts/widget/components/settings/tabs/ScalesSettingsTab.d.ts +5 -0
  439. package/dist/dts/widget/components/settings/tabs/StatusLineSettingsTab.d.ts +5 -0
  440. package/dist/dts/widget/components/settings/tabs/SymbolSettingsTab.d.ts +5 -0
  441. package/dist/dts/widget/components/settings/tabs/ThemePaletteSettingsTab.d.ts +9 -0
  442. package/dist/dts/widget/components/settings/tabs/TradingEventsSettingsTab.d.ts +8 -0
  443. package/dist/dts/widget/components/toolbar/DrawingToolIcon.d.ts +10 -0
  444. package/dist/dts/widget/components/toolbar/DrawingToolbar.d.ts +33 -0
  445. package/dist/dts/widget/components/toolbar/FloatingChartBar.d.ts +20 -0
  446. package/dist/dts/widget/components/toolbar/FloatingFavoritesBar.d.ts +18 -0
  447. package/dist/dts/widget/components/toolbar/MultiChartTopbar.d.ts +47 -0
  448. package/dist/dts/widget/components/toolbar/UnifiedDrawingToolbar.d.ts +28 -0
  449. package/dist/dts/widget/components/trading/PaperTradePanel.d.ts +41 -0
  450. package/dist/dts/widget/components/workspace/WorkspaceToolbar.d.ts +25 -0
  451. package/dist/dts/widget/config/toolGroups.d.ts +11 -0
  452. package/dist/dts/widget/config/toolShortcuts.d.ts +27 -0
  453. package/dist/dts/widget/constants/comparison.d.ts +1 -0
  454. package/dist/dts/widget/constants/symbolSearch.d.ts +14 -0
  455. package/dist/dts/widget/constants/vn30.d.ts +7 -0
  456. package/dist/dts/widget/context/DataProviderContext.d.ts +7 -0
  457. package/dist/dts/widget/context/HoverEmitter.d.ts +50 -0
  458. package/dist/dts/widget/context/SyncContextShare.d.ts +11 -0
  459. package/dist/dts/widget/context/VNInvestChartsConfigContext.d.ts +24 -0
  460. package/dist/dts/widget/context/VNInvestChartsContext.d.ts +70 -0
  461. package/dist/dts/widget/context/VNInvestChartsStateContext.d.ts +50 -0
  462. package/dist/dts/widget/context/WidgetI18nContext.d.ts +25 -0
  463. package/dist/dts/widget/context/WorkspaceLiveTradingContext.d.ts +30 -0
  464. package/dist/dts/widget/context/WorkspacePaperVisibilityContext.d.ts +23 -0
  465. package/dist/dts/widget/context/WorkspaceReplayTradingContext.d.ts +36 -0
  466. package/dist/dts/widget/contexts/SaaSFeatureContext.d.ts +23 -0
  467. package/dist/dts/widget/data/DataEnvelope.d.ts +100 -0
  468. package/dist/dts/widget/drawingPriceLabelInputs.d.ts +3 -0
  469. package/dist/dts/widget/export/chartCsv.d.ts +59 -0
  470. package/dist/dts/widget/forkAnchorReconciliation.d.ts +6 -0
  471. package/dist/dts/widget/forkInteractionHelpers.d.ts +69 -0
  472. package/dist/dts/widget/grid/DeviceProfiles.d.ts +49 -0
  473. package/dist/dts/widget/grid/GridChartRegistry.d.ts +9 -0
  474. package/dist/dts/widget/grid/MemoryBudgetManager.d.ts +63 -0
  475. package/dist/dts/widget/grid/PerformanceMonitor.d.ts +70 -0
  476. package/dist/dts/widget/grid/customPresets.d.ts +42 -0
  477. package/dist/dts/widget/grid/presets.d.ts +18 -0
  478. package/dist/dts/widget/grid/types.d.ts +39 -0
  479. package/dist/dts/widget/history/BackfillDedupContext.d.ts +63 -0
  480. package/dist/dts/widget/history/RequestCoordinator.d.ts +59 -0
  481. package/dist/dts/widget/history/SharedBarStoreContext.d.ts +22 -0
  482. package/dist/dts/widget/history/cache/IndexedDBCacheMatrix.d.ts +16 -0
  483. package/dist/dts/widget/history/cache/LocalCacheMatrix.d.ts +86 -0
  484. package/dist/dts/widget/history/cache/index.d.ts +3 -0
  485. package/dist/dts/widget/history/chunkStore.d.ts +77 -0
  486. package/dist/dts/widget/history/externalBarsNormalization.d.ts +9 -0
  487. package/dist/dts/widget/history/externalBarsNormalization.worker.d.ts +1 -0
  488. package/dist/dts/widget/history/externalBarsNormalizationAsync.d.ts +25 -0
  489. package/dist/dts/widget/history/historyDataUtils.d.ts +82 -0
  490. package/dist/dts/widget/history/historyWindowPlanner.d.ts +89 -0
  491. package/dist/dts/widget/history/inflightController.d.ts +15 -0
  492. package/dist/dts/widget/history/requestCoalescing.d.ts +10 -0
  493. package/dist/dts/widget/history/sessionGuards.d.ts +3 -0
  494. package/dist/dts/widget/history/singleWriterLane.d.ts +4 -0
  495. package/dist/dts/widget/history/useExternalBarsNormalization.d.ts +5 -0
  496. package/dist/dts/widget/hooks/ShortcutManager.d.ts +65 -0
  497. package/dist/dts/widget/hooks/overlays/PaneHeaderWrapper.d.ts +11 -0
  498. package/dist/dts/widget/hooks/overlays/overlayHelpers.d.ts +60 -0
  499. package/dist/dts/widget/hooks/overlays/useDrawingDockNode.d.ts +15 -0
  500. package/dist/dts/widget/hooks/overlays/useLegendChrome.d.ts +36 -0
  501. package/dist/dts/widget/hooks/overlays/useMultiSelectActions.d.ts +22 -0
  502. package/dist/dts/widget/hooks/overlays/useSidebarResize.d.ts +13 -0
  503. package/dist/dts/widget/hooks/resolveEntitlement.d.ts +73 -0
  504. package/dist/dts/widget/hooks/useBottomPanelBehavior.d.ts +38 -0
  505. package/dist/dts/widget/hooks/useBottomPanelHeight.d.ts +39 -0
  506. package/dist/dts/widget/hooks/useCanvasTheme.d.ts +24 -0
  507. package/dist/dts/widget/hooks/useChartImperativeHandle.d.ts +57 -0
  508. package/dist/dts/widget/hooks/useClockAdapter.d.ts +11 -0
  509. package/dist/dts/widget/hooks/useComparisonState.d.ts +29 -0
  510. package/dist/dts/widget/hooks/useDialogFocus.d.ts +25 -0
  511. package/dist/dts/widget/hooks/useDrawingToolShortcuts.d.ts +16 -0
  512. package/dist/dts/widget/hooks/useFeatureGate.d.ts +28 -0
  513. package/dist/dts/widget/hooks/useFloatingChartBar.d.ts +33 -0
  514. package/dist/dts/widget/hooks/useForkRuntime.d.ts +155 -0
  515. package/dist/dts/widget/hooks/useIndicatorsShareApplier.d.ts +1 -0
  516. package/dist/dts/widget/hooks/useIntersectionObserver.d.ts +49 -0
  517. package/dist/dts/widget/hooks/useKeyboardAdapter.d.ts +9 -0
  518. package/dist/dts/widget/hooks/useLayoutHistory.d.ts +8 -0
  519. package/dist/dts/widget/hooks/useLicenseDiagnostics.d.ts +15 -0
  520. package/dist/dts/widget/hooks/useMultiChartReplaySync.d.ts +31 -0
  521. package/dist/dts/widget/hooks/useMultiWorkspacePersistence.d.ts +49 -0
  522. package/dist/dts/widget/hooks/usePaperTradeConfig.d.ts +27 -0
  523. package/dist/dts/widget/hooks/usePaperTradeInteraction.d.ts +27 -0
  524. package/dist/dts/widget/hooks/usePatTierAuthentication.d.ts +42 -0
  525. package/dist/dts/widget/hooks/usePineScriptRestore.d.ts +23 -0
  526. package/dist/dts/widget/hooks/usePortalAdapter.d.ts +8 -0
  527. package/dist/dts/widget/hooks/useRecentSymbols.d.ts +3 -0
  528. package/dist/dts/widget/hooks/useReplayState.d.ts +28 -0
  529. package/dist/dts/widget/hooks/useReplayTrading.d.ts +26 -0
  530. package/dist/dts/widget/hooks/useResizeAdapter.d.ts +13 -0
  531. package/dist/dts/widget/hooks/useScaleOverlays.d.ts +62 -0
  532. package/dist/dts/widget/hooks/useScriptPersistence.d.ts +72 -0
  533. package/dist/dts/widget/hooks/useSymbolSearch.d.ts +30 -0
  534. package/dist/dts/widget/hooks/useViewportBreakpoint.d.ts +15 -0
  535. package/dist/dts/widget/hooks/useWidgetCoordinateBridge.d.ts +70 -0
  536. package/dist/dts/widget/hooks/useWidgetData.d.ts +138 -0
  537. package/dist/dts/widget/hooks/useWidgetDataBackfill.d.ts +67 -0
  538. package/dist/dts/widget/hooks/useWidgetDataEnrichment.d.ts +32 -0
  539. package/dist/dts/widget/hooks/useWidgetDrawings.d.ts +38 -0
  540. package/dist/dts/widget/hooks/useWidgetForkInteraction.d.ts +68 -0
  541. package/dist/dts/widget/hooks/useWidgetInteractionActions.d.ts +36 -0
  542. package/dist/dts/widget/hooks/useWidgetOverlays.d.ts +190 -0
  543. package/dist/dts/widget/hooks/useWidgetRuntime.d.ts +20 -0
  544. package/dist/dts/widget/hooks/useWidgetSettings.d.ts +244 -0
  545. package/dist/dts/widget/hooks/useWidgetWorkspaceIO.d.ts +24 -0
  546. package/dist/dts/widget/hooks/useWorkspaceDockPanels.d.ts +11 -0
  547. package/dist/dts/widget/hooks/useWorkspaceLiveTrading.d.ts +28 -0
  548. package/dist/dts/widget/hooks/useWorkspaceReplayTrading.d.ts +22 -0
  549. package/dist/dts/widget/i18n/a11y.messages.en.d.ts +8 -0
  550. package/dist/dts/widget/i18n/a11y.messages.vi.d.ts +3 -0
  551. package/dist/dts/widget/i18n/capability.messages.en.d.ts +7 -0
  552. package/dist/dts/widget/i18n/capability.messages.vi.d.ts +3 -0
  553. package/dist/dts/widget/i18n/dock.messages.en.d.ts +2 -0
  554. package/dist/dts/widget/i18n/dock.messages.vi.d.ts +2 -0
  555. package/dist/dts/widget/i18n/messages.en.d.ts +2 -0
  556. package/dist/dts/widget/i18n/messages.licensing.d.ts +48 -0
  557. package/dist/dts/widget/i18n/messages.vi.d.ts +2 -0
  558. package/dist/dts/widget/i18n/trading.messages.en.d.ts +2 -0
  559. package/dist/dts/widget/i18n/trading.messages.vi.d.ts +2 -0
  560. package/dist/dts/widget/i18n/types.d.ts +3 -0
  561. package/dist/dts/widget/iframe/builtInAdapters.d.ts +63 -0
  562. package/dist/dts/widget/iframe/host-entry.d.ts +11 -0
  563. package/dist/dts/widget/iframe/hostSDK.d.ts +151 -0
  564. package/dist/dts/widget/iframe/iframeBridge.d.ts +165 -0
  565. package/dist/dts/widget/iframe/iframeEntry.d.ts +52 -0
  566. package/dist/dts/widget/iframe/iframeFrame.d.ts +15 -0
  567. package/dist/dts/widget/iframe/iframeQuotes.d.ts +20 -0
  568. package/dist/dts/widget/iframe/messageProtocol.d.ts +545 -0
  569. package/dist/dts/widget/iframe/quoteHub.d.ts +20 -0
  570. package/dist/dts/widget/iframe/useVNInvestChartsHost.d.ts +8 -0
  571. package/dist/dts/widget/iife-entry.d.ts +61 -0
  572. package/dist/dts/widget/iifeWidgetInstance.d.ts +60 -0
  573. package/dist/dts/widget/index.d.ts +56 -0
  574. package/dist/dts/widget/multiChartDefaults.d.ts +18 -0
  575. package/dist/dts/widget/paneInteractionUtils.d.ts +25 -0
  576. package/dist/dts/widget/patterns/autoPatternScan.d.ts +77 -0
  577. package/dist/dts/widget/patterns/patternDrawingFactory.d.ts +87 -0
  578. package/dist/dts/widget/plugin/ProPluginRegistry.d.ts +40 -0
  579. package/dist/dts/widget/runtime/ChartScaleAdapter.d.ts +73 -0
  580. package/dist/dts/widget/runtime/ChartSerializer.d.ts +12 -0
  581. package/dist/dts/widget/runtime/ForkRuntimeAdapter.d.ts +19 -0
  582. package/dist/dts/widget/runtime/IRuntimeEngine.d.ts +40 -0
  583. package/dist/dts/widget/runtime/WorkspaceSerializer.d.ts +31 -0
  584. package/dist/dts/widget/runtimePolicy.d.ts +36 -0
  585. package/dist/dts/widget/styles/injectStyles.d.ts +9 -0
  586. package/dist/dts/widget/theme/ThemeConfig.d.ts +21 -0
  587. package/dist/dts/widget/theme/applyTheme.d.ts +3 -0
  588. package/dist/dts/widget/trading/chart/DraggableOrderHandles.d.ts +15 -0
  589. package/dist/dts/widget/trading/chart/InteractivePositionOverlay.d.ts +19 -0
  590. package/dist/dts/widget/trading/chart/PendingOrderOverlay.d.ts +11 -0
  591. package/dist/dts/widget/trading/chart/QuickTradingHeader.d.ts +20 -0
  592. package/dist/dts/widget/trading/chart/TradingChartSurface.d.ts +8 -0
  593. package/dist/dts/widget/trading/chart/TradingOverlaysHost.d.ts +28 -0
  594. package/dist/dts/widget/trading/chart/priceTicks.d.ts +1 -0
  595. package/dist/dts/widget/trading/chart/useFloatingDrag.d.ts +40 -0
  596. package/dist/dts/widget/trading/chart/useTradingHotkeys.d.ts +21 -0
  597. package/dist/dts/widget/trading/config/paperRuntimeConfig.d.ts +53 -0
  598. package/dist/dts/widget/trading/context/PaperPanelRegistry.d.ts +45 -0
  599. package/dist/dts/widget/trading/context/TradingContext.d.ts +80 -0
  600. package/dist/dts/widget/trading/context/WorkspaceTradingSync.d.ts +24 -0
  601. package/dist/dts/widget/trading/hooks/usePaperRuntimeConfig.d.ts +36 -0
  602. package/dist/dts/widget/trading/index.d.ts +5 -0
  603. package/dist/dts/widget/trading/panel/AccountSummaryTab.d.ts +7 -0
  604. package/dist/dts/widget/trading/panel/ActiveChartPaperPanel.d.ts +26 -0
  605. package/dist/dts/widget/trading/panel/ConnectedTradingPanel.d.ts +3 -0
  606. package/dist/dts/widget/trading/panel/HistoryTab.d.ts +5 -0
  607. package/dist/dts/widget/trading/panel/MarketFallbackBanner.d.ts +4 -0
  608. package/dist/dts/widget/trading/panel/OrdersTab.d.ts +8 -0
  609. package/dist/dts/widget/trading/panel/PaperCapitalDialog.d.ts +8 -0
  610. package/dist/dts/widget/trading/panel/PaperSettingsModal.d.ts +17 -0
  611. package/dist/dts/widget/trading/panel/PositionsTab.d.ts +15 -0
  612. package/dist/dts/widget/trading/panel/TradeHistoryTab.d.ts +5 -0
  613. package/dist/dts/widget/trading/panel/TradingBottomPanel.d.ts +36 -0
  614. package/dist/dts/widget/trading/panel/TradingLogTab.d.ts +8 -0
  615. package/dist/dts/widget/trading/panel/TradingPanelHeader.d.ts +17 -0
  616. package/dist/dts/widget/trading/panel/csvExport.d.ts +18 -0
  617. package/dist/dts/widget/trading/ticket/ConnectedTradingDockPanel.d.ts +5 -0
  618. package/dist/dts/widget/trading/ticket/OrderTicketForm.d.ts +31 -0
  619. package/dist/dts/widget/trading/ticket/OrderTicketModal.d.ts +29 -0
  620. package/dist/dts/widget/trading/ticket/RegistryTradingDockPanel.d.ts +9 -0
  621. package/dist/dts/widget/trading/ticket/RiskCalculatorView.d.ts +9 -0
  622. package/dist/dts/widget/trading/ticket/TradingDockPanel.d.ts +36 -0
  623. package/dist/dts/widget/trading/ticket/orderTicketModel.d.ts +49 -0
  624. package/dist/dts/widget/trading/visibility/paperVisibility.d.ts +38 -0
  625. package/dist/dts/widget/types/dataProvider.d.ts +8 -0
  626. package/dist/dts/widget/types/fullChartHandle.d.ts +25 -0
  627. package/dist/dts/widget/types/saas.d.ts +83 -0
  628. package/dist/dts/widget/types/symbolSearch.d.ts +9 -0
  629. package/dist/dts/widget/types/watchlist.d.ts +26 -0
  630. package/dist/dts/widget/utils/axisHit.d.ts +16 -0
  631. package/dist/dts/widget/utils/chartRange.d.ts +12 -0
  632. package/dist/dts/widget/utils/chartTypeOptions.d.ts +38 -0
  633. package/dist/dts/widget/utils/clickOutside.d.ts +1 -0
  634. package/dist/dts/widget/utils/coordinateBridge.d.ts +31 -0
  635. package/dist/dts/widget/utils/crosshairSync.d.ts +50 -0
  636. package/dist/dts/widget/utils/drawingSync.d.ts +198 -0
  637. package/dist/dts/widget/utils/enrichedHash.d.ts +15 -0
  638. package/dist/dts/widget/utils/headerSync.d.ts +12 -0
  639. package/dist/dts/widget/utils/numberFormat.d.ts +13 -0
  640. package/dist/dts/widget/utils/paperTradeAdapters.d.ts +11 -0
  641. package/dist/dts/widget/utils/pineSeriesData.d.ts +71 -0
  642. package/dist/dts/widget/utils/rangeSync.d.ts +29 -0
  643. package/dist/dts/widget/utils/telemetry.d.ts +19 -0
  644. package/dist/dts/widget/utils/widgetEquality.d.ts +57 -0
  645. package/dist/dts/widget/utils/widgetErrors.d.ts +29 -0
  646. package/dist/dts/widget/utils/widgetHelpers.d.ts +395 -0
  647. package/dist/dts/widget/utils/xAxisTickFormatter.d.ts +33 -0
  648. package/dist/dts/widget/visibleRangeBridge.d.ts +28 -0
  649. package/dist/dts/widget/visibleRangeDiagnostics.d.ts +10 -0
  650. package/dist/dts/widget/visibleRangePolicies.d.ts +6 -0
  651. package/dist/dts/widget/workspace/WorkspaceManager.d.ts +23 -0
  652. package/dist/dts/widget/workspace/WorkspaceStore.d.ts +85 -0
  653. package/dist/dts/widget/workspace/types.d.ts +21 -0
  654. package/dist/externalBarsNormalization.worker.js +108 -0
  655. package/dist/iframe/index.html +63 -0
  656. package/dist/iframe/injected.css +6456 -0
  657. package/dist/iframe/vninvestchart.iframe.css +2 -0
  658. package/dist/iframe/vninvestchart.iframe.js +945 -0
  659. package/dist/iframe-host/host-entry.cjs +687 -0
  660. package/dist/iframe-host/host-entry.d.mts +818 -0
  661. package/dist/iframe-host/host-entry.d.ts +818 -0
  662. package/dist/iframe-host/host-entry.js +680 -0
  663. package/dist/index.cjs +7253 -0
  664. package/dist/index.css +3390 -0
  665. package/dist/index.d.ts +31 -0
  666. package/dist/index.js +6461 -0
  667. package/dist/injected.css +6456 -0
  668. package/dist/rollAlgorithms-2P2ZKKHO.js +2 -0
  669. package/dist/types/runtime.cjs +8 -0
  670. package/dist/types/runtime.d.mts +92 -0
  671. package/dist/types/runtime.d.ts +92 -0
  672. package/dist/types/runtime.js +5 -0
  673. package/dist/types/runtime.umd.js +14 -0
  674. package/dist/vninvestchart.iife.css +2 -0
  675. package/dist/vninvestchart.iife.js +945 -0
  676. package/package.json +225 -5
@@ -0,0 +1,28 @@
1
+ import { createPaneProjector, type PaneRuntimeSnapshot, type VisibleRange as EngineVisibleRange } from "@vninvestcharts/engine-core";
2
+ import type { TradingOrder, TradingPosition } from "../../../lib/core/trading/types";
3
+ export interface PositionLineModel {
4
+ position: TradingPosition;
5
+ stopLossPrice?: number;
6
+ stopOrderId?: string;
7
+ takeProfitPrice?: number;
8
+ takeProfitOrderId?: string;
9
+ }
10
+ export interface TradingOverlaysHostProps {
11
+ snapshot: PaneRuntimeSnapshot;
12
+ visibleRange: EngineVisibleRange;
13
+ scaleSlotId: string;
14
+ scale?: Parameters<typeof createPaneProjector>[3];
15
+ positions: PositionLineModel[];
16
+ pendingOrders: TradingOrder[];
17
+ accountEquity: number;
18
+ contractMultiplier?: number;
19
+ tickSize: number;
20
+ drawingActive?: boolean;
21
+ onClosePosition?: (positionId: string) => void;
22
+ onReversePosition?: (positionId: string) => void;
23
+ onModifyOrder?: (orderId: string, patch: {
24
+ stopPrice: number;
25
+ }) => void;
26
+ onCancelOrder?: (orderId: string) => void;
27
+ }
28
+ export declare function TradingOverlaysHost({ snapshot, visibleRange, scaleSlotId, scale, positions, pendingOrders, accountEquity, contractMultiplier, tickSize, drawingActive, onClosePosition, onReversePosition, onModifyOrder, onCancelOrder, }: TradingOverlaysHostProps): import("react").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function roundToTick(price: number, tickSize: number): number;
@@ -0,0 +1,40 @@
1
+ export interface FloatingPos {
2
+ x: number;
3
+ y: number;
4
+ }
5
+ export interface FloatingDragOptions {
6
+ storageKey: string;
7
+ defaultPos: FloatingPos;
8
+ getBounds: () => {
9
+ width: number;
10
+ height: number;
11
+ };
12
+ /**
13
+ * Element được định vị, để clamp vị trí đã lưu ngay khi mount.
14
+ * Bắt buộc: nếu thiếu, một vị trí lưu từ viewport rộng hơn sẽ đặt panel ngoài màn
15
+ * hình, **grip biến mất**, và vì drag/reset đều cần grip nên người dùng kẹt vĩnh viễn.
16
+ */
17
+ getElement?: () => HTMLElement | null;
18
+ /** `useHoldDrag`: px phải đi trước khi coi là kéo. Mặc định 5px (bỏ rung chuột). */
19
+ moveThreshold?: number;
20
+ }
21
+ /**
22
+ * Kéo bằng cách BẤM GIỮ trên bất kỳ vị trí nào của panel — không cần grip riêng.
23
+ *
24
+ * Vì sao không `preventDefault`/`setPointerCapture` ngay ở pointerdown: làm vậy thì
25
+ * pointerdown của nút con bị nuốt và **nút chết** (xem bug 2026-09-30: nút expand không
26
+ * bấm được). Ở đây ta chờ chuột đi quá `MOVE_THRESHOLD` px mới thực sự chiếm pointer.
27
+ * Người dùng chỉ bấm (không di) ⇒ không có capture ⇒ click tới nút con bình thường.
28
+ */
29
+ export declare function useHoldDrag({ storageKey, defaultPos, getBounds, getElement, moveThreshold, }: FloatingDragOptions): {
30
+ pos: FloatingPos;
31
+ onSurfacePointerDown: (e: React.PointerEvent<HTMLElement>) => void;
32
+ onSurfaceDoubleClick: (e: React.MouseEvent<HTMLElement>) => void;
33
+ reset: () => void;
34
+ };
35
+ export declare function useFloatingDrag({ storageKey, defaultPos, getBounds, getElement }: FloatingDragOptions): {
36
+ pos: FloatingPos;
37
+ onGripPointerDown: (e: React.PointerEvent<HTMLElement>) => void;
38
+ onGripDoubleClick: () => void;
39
+ reset: () => void;
40
+ };
@@ -0,0 +1,21 @@
1
+ export interface TradingHotkeyHandlers {
2
+ onBuy: () => void;
3
+ onSell: () => void;
4
+ onCloseRequest: () => void;
5
+ }
6
+ /**
7
+ * SSOT cho các phím Shift mà module này SỞ HỮU.
8
+ *
9
+ * Xuất ra để `useDrawingToolShortcuts` loại đúng các phím này khi giữ Shift — vì
10
+ * `toolShortcuts.ts` cũng map `B`/`S`/`C` (`shortPosition`…). Cả hai listener cùng
11
+ * `window` và không `stopImmediatePropagation` ⇒ trước đây `Shift+S` **vừa** chọn công cụ
12
+ * **vừa** mở phiếu bán. Không hardcode danh sách thứ hai ở nơi khác: nó ở đây.
13
+ *
14
+ * ⚠️ `Shift+L` / `Shift+P` / `Shift+M` **KHÔNG** thuộc về đây — chúng là binding hợp lệ
15
+ * của drawing tool / magnet, phải tiếp tục chạy.
16
+ */
17
+ export declare const TRADING_HOTKEY_KEYS: readonly ["B", "S", "C"];
18
+ export interface TradingHotkeyOptions extends TradingHotkeyHandlers {
19
+ enabled?: boolean;
20
+ }
21
+ export declare function useTradingHotkeys(options: TradingHotkeyOptions): void;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * S1: PaperRuntimeConfig — user-tunable paper trading config (§8 audit).
3
+ * Pure types + defaults + validators (no React, no storage — see S3 hook).
4
+ * All changes are PROSPECTIVE (§10 Q2): fills booked keep old values.
5
+ */
6
+ export type CostBasisMethod = "average" | "fifo";
7
+ export type PnlDisplayMode = "gross" | "net";
8
+ export interface PaperRuntimeConfig {
9
+ brokerFeeRate: number;
10
+ commissionPerContract: number;
11
+ taxRate: number;
12
+ slippageTicks: number;
13
+ costBasisMethod: CostBasisMethod;
14
+ allowShortSelling: boolean;
15
+ settlementDays: number;
16
+ maxLeverage: number;
17
+ pnlDisplayMode: PnlDisplayMode;
18
+ effectiveFrom: number;
19
+ }
20
+ export declare const DEFAULT_PAPER_RUNTIME_CONFIG: PaperRuntimeConfig;
21
+ export declare const PAPER_CONFIG_BOUNDS: {
22
+ readonly brokerFeeRate: {
23
+ readonly min: 0;
24
+ readonly max: 0.05;
25
+ };
26
+ readonly commissionPerContract: {
27
+ readonly min: 0;
28
+ readonly max: 100000;
29
+ };
30
+ readonly taxRate: {
31
+ readonly min: 0;
32
+ readonly max: 0.05;
33
+ };
34
+ readonly slippageTicks: {
35
+ readonly min: 0;
36
+ readonly max: 20;
37
+ };
38
+ readonly settlementDays: {
39
+ readonly allowed: readonly [0, 1, 2, 3];
40
+ };
41
+ readonly maxLeverage: {
42
+ readonly min: 1;
43
+ readonly max: 100;
44
+ };
45
+ };
46
+ export interface ConfigValidationError {
47
+ field: keyof PaperRuntimeConfig;
48
+ message: string;
49
+ }
50
+ /** Field-level validation shared by modal (S1) and hook (S3). */
51
+ export declare function validatePaperRuntimeConfig(config: Partial<PaperRuntimeConfig>): ConfigValidationError[];
52
+ /** Merge user partial over defaults (never mutates either). */
53
+ export declare function resolvePaperRuntimeConfig(partial?: Partial<PaperRuntimeConfig> | null): PaperRuntimeConfig;
@@ -0,0 +1,45 @@
1
+ import type { BrokerAccount, OrderValidationInput, TradingOrder, TradingPosition } from "../../../lib/core/trading/types";
2
+ import type { TradingAnalytics } from "../../../lib/core/trading/AnalyticsEngine";
3
+ import type { BrokerRuntimePatch, BrokerRuntimeSummary } from "../../../lib/core/trading/VirtualBrokerEngine";
4
+ export interface PaperPanelSnapshot {
5
+ account: BrokerAccount;
6
+ positions: TradingPosition[];
7
+ orders: TradingOrder[];
8
+ orderHistory: TradingOrder[];
9
+ ordersMargin: number;
10
+ analytics: TradingAnalytics;
11
+ log: {
12
+ timestamp: number;
13
+ message: string;
14
+ }[];
15
+ /** Thống nhất single/multi: ô active bị ẩn trading bar → panel hiện CTA bật lại. */
16
+ tradingEnabled: boolean;
17
+ onEnableTrading: () => void;
18
+ }
19
+ export interface PaperPanelBinding {
20
+ chartId: string;
21
+ symbol: string;
22
+ shared: boolean;
23
+ getSnapshot(): PaperPanelSnapshot;
24
+ closePosition(positionId: string): boolean;
25
+ /** P1.3: đóng tất cả vị thế của ô. */
26
+ closeAllPositions(reason?: string): number;
27
+ reversePosition(positionId: string): void;
28
+ cancelOrder(orderId: string): boolean;
29
+ /** P1.3: lấy snapshot orders để bulk-cancel (working filter ở caller). */
30
+ getOrders(): TradingOrder[];
31
+ resetAccount(initialBalance?: number): void;
32
+ /** S2 (P5 parity F1-A): đặt lệnh qua broker của cell (cho dock form workspace). */
33
+ placeOrder(input: OrderValidationInput): TradingOrder;
34
+ subscribe(listener: () => void): () => void;
35
+ /** S6: apply runtime pricing/rules without recreating the broker. */
36
+ applyRuntimeConfig?: (patch: BrokerRuntimePatch) => BrokerRuntimeSummary;
37
+ }
38
+ export declare function registerPaperPanelBinding(binding: PaperPanelBinding): void;
39
+ export declare function unregisterPaperPanelBinding(chartId: string): void;
40
+ export declare function getPaperPanelBinding(chartId: string | null): PaperPanelBinding | undefined;
41
+ export declare function subscribePaperPanelRegistry(chartId: string | null, listener: () => void): () => void;
42
+ /** Re-render khi binding đến/mất (late registration) — D8, không bao giờ kẹt rỗng. */
43
+ export declare function usePaperPanelBinding(chartId: string | null): PaperPanelBinding | undefined;
44
+ /** Xóa toàn bộ binding giữa các test (chống rò Map — Finding-06). */
45
+ export declare function clearAllPaperPanelBindingsForTesting(): void;
@@ -0,0 +1,80 @@
1
+ import { type ReactNode } from "react";
2
+ import type { AsyncStorageAdapter, AudioAdapter } from "@vninvestcharts/engine-react";
3
+ import { VirtualBrokerEngine } from "../../../lib/core/trading/VirtualBrokerEngine";
4
+ import { MarketDataPort } from "../../../lib/core/trading/MarketDataPort";
5
+ import { type MarketRules } from "../../../lib/core/trading/MarketRules";
6
+ import type { ReplayOHLCBar } from "../../../lib/core/replay/replayTradingTypes";
7
+ import type { EnrichedDatum } from "../../../lib/core/calculators/types";
8
+ import type { OrderSide, OrderValidationInput, TradingOrder } from "../../../lib/core/trading/types";
9
+ import type { TradingBottomPanelProps } from "../panel/TradingBottomPanel";
10
+ export interface TradingReplayFeed {
11
+ active: boolean;
12
+ playing: boolean;
13
+ bar: ReplayOHLCBar | null;
14
+ timestamp: number;
15
+ }
16
+ export interface TradingProviderProps {
17
+ symbol: string;
18
+ bars: readonly EnrichedDatum[];
19
+ rules?: MarketRules;
20
+ initialBalance?: number;
21
+ replayActive?: boolean;
22
+ replayPlaying?: boolean;
23
+ replayBar?: ReplayOHLCBar | null;
24
+ /**
25
+ * Task 11: inject broker/port dùng chung (multi-chart singleton). Khi có,
26
+ * provider KHÔNG tạo engine riêng (không hydrate/reset giùm — chủ sở hữu quản lý).
27
+ */
28
+ externalBroker?: VirtualBrokerEngine;
29
+ externalPort?: MarketDataPort;
30
+ liveStorageNamespace?: string;
31
+ storageAdapter?: AsyncStorageAdapter;
32
+ audioAdapter?: AudioAdapter;
33
+ /** Task TVP-A0: prop ép bật/tắt (ưu tiên cao nhất). Mặc định đọc localStorage. */
34
+ defaultEnabled?: boolean;
35
+ /** Task M1+M2: định danh chart (multi) cho namespace persist + gating. */
36
+ chartId?: string;
37
+ /** Task M2: chỉ chart active nhận hotkey. Mặc định true (single-chart không ảnh hưởng). */
38
+ isActiveChart?: boolean;
39
+ children: ReactNode;
40
+ }
41
+ export interface TicketState {
42
+ open: boolean;
43
+ side: OrderSide;
44
+ price?: number;
45
+ /** Qty preset từ strip (không có = lot mặc định của rules). */
46
+ quantity?: number;
47
+ }
48
+ export interface EditTarget {
49
+ orderId: string;
50
+ price?: number;
51
+ stopPrice?: number;
52
+ }
53
+ export interface TradingContextValue {
54
+ mode: "live" | "replay";
55
+ symbol: string;
56
+ rules: MarketRules;
57
+ broker: VirtualBrokerEngine;
58
+ port: MarketDataPort;
59
+ tradingEnabled: boolean;
60
+ setTradingEnabled: (enabled: boolean) => void;
61
+ isActiveChart: boolean;
62
+ panelProps: Omit<TradingBottomPanelProps, "onClose">;
63
+ ticket: TicketState;
64
+ openTicket: (side: OrderSide, price?: number, quantity?: number) => void;
65
+ closeTicket: () => void;
66
+ editTarget: EditTarget | null;
67
+ startEditOrder: (orderId: string) => void;
68
+ cancelEdit: () => void;
69
+ closeRequested: boolean;
70
+ requestClose: () => void;
71
+ cancelCloseRequest: () => void;
72
+ confirmCloseAll: () => void;
73
+ oneKeyClose: boolean;
74
+ setOneKeyClose: (enabled: boolean) => void;
75
+ /** Đặt lệnh qua broker + log rejection (one-click/ticket đỡ im lặng). */
76
+ placeOrder: (input: OrderValidationInput) => TradingOrder;
77
+ }
78
+ export declare function useTradingContext(): TradingContextValue;
79
+ export declare function liveNamespace(explicit: string | undefined, chartId: string | undefined, profile: string): string;
80
+ export declare function TradingProvider({ symbol, bars, rules: rulesProp, initialBalance, replayActive, replayPlaying, replayBar, liveStorageNamespace, storageAdapter, audioAdapter, externalBroker, externalPort, defaultEnabled, chartId, isActiveChart, children, }: TradingProviderProps): import("react").JSX.Element;
@@ -0,0 +1,24 @@
1
+ import { type BroadcastChannelAdapter } from "@vninvestcharts/engine-react";
2
+ import type { BrokerAccount, TradingOrder, TradingPosition } from "../../../lib/core/trading/types";
3
+ export declare const TRADING_SYNC_DOMAIN = "paper-trading";
4
+ export declare const TRADING_SYNC_WORKSPACE = "vnsc_trading_sync";
5
+ export interface TradingSyncSnapshot {
6
+ account: BrokerAccount;
7
+ positions: TradingPosition[];
8
+ orders: TradingOrder[];
9
+ updatedAt: number;
10
+ }
11
+ export interface TradingSyncHandler {
12
+ (snapshot: TradingSyncSnapshot, fromId: string): void;
13
+ }
14
+ export declare class WorkspaceTradingSync {
15
+ private readonly adapter;
16
+ private readonly chartId;
17
+ private readonly workspaceId;
18
+ private disposeFn;
19
+ constructor(workspaceId?: string, chartId?: string, adapter?: BroadcastChannelAdapter | null);
20
+ get id(): string;
21
+ broadcastState(snapshot: Omit<TradingSyncSnapshot, "updatedAt">): void;
22
+ subscribe(handler: TradingSyncHandler): () => void;
23
+ dispose(): void;
24
+ }
@@ -0,0 +1,36 @@
1
+ import type { MarketRules } from "../../../lib/core/trading/MarketRules";
2
+ import type { ExecutionSimulatorOptions } from "../../../lib/core/trading/ExecutionSimulator";
3
+ import { type PaperRuntimeConfig } from "../config/paperRuntimeConfig";
4
+ export declare const PAPER_CONFIG_EVENT = "vnsc_paper_config_changed";
5
+ export interface PaperConfigChangedDetail {
6
+ profile: string;
7
+ chartId?: string;
8
+ config: PaperRuntimeConfig;
9
+ }
10
+ export declare function paperConfigKey(profile: string, chartId?: string | null): string;
11
+ /**
12
+ * Merge user config over base market rules. Pure, never mutates inputs —
13
+ * method refs (validateOrder/getTickSize) ride along by reference, so merged
14
+ * copies keep working (S2 this-fix).
15
+ */
16
+ export declare function mergeMarketRules(base: MarketRules, user: Partial<PaperRuntimeConfig>): MarketRules;
17
+ /** Split user config into engine-shaped pieces (rules vs simulator knobs). */
18
+ export declare function splitEnginePatch(user: Partial<PaperRuntimeConfig>): {
19
+ rulesPatch: Partial<MarketRules>;
20
+ simulatorOptions: ExecutionSimulatorOptions;
21
+ };
22
+ export interface UsePaperRuntimeConfigOptions {
23
+ profile: string;
24
+ chartId?: string | null;
25
+ baseRules: MarketRules;
26
+ }
27
+ export interface UsePaperRuntimeConfigReturn {
28
+ config: PaperRuntimeConfig;
29
+ perChartOverride: boolean;
30
+ setPerChartOverride: (override: boolean) => void;
31
+ save: (partial: Partial<PaperRuntimeConfig>) => PaperRuntimeConfig | null;
32
+ mergedRules: MarketRules;
33
+ simulatorOptions: ExecutionSimulatorOptions;
34
+ version: number;
35
+ }
36
+ export declare function usePaperRuntimeConfig({ profile, chartId, baseRules, }: UsePaperRuntimeConfigOptions): UsePaperRuntimeConfigReturn;
@@ -0,0 +1,5 @@
1
+ export { TradingProvider, useTradingContext, type TradingContextValue, type TradingReplayFeed } from "./context/TradingContext";
2
+ export { TradingChartSurface } from "./chart/TradingChartSurface";
3
+ export { ConnectedTradingPanel } from "./panel/ConnectedTradingPanel";
4
+ export { TradingDockPanel } from "./ticket/TradingDockPanel";
5
+ export { ConnectedTradingDockPanel } from "./ticket/ConnectedTradingDockPanel";
@@ -0,0 +1,7 @@
1
+ import type { BrokerAccount } from "../../../lib/core/trading/types";
2
+ import type { TradingAnalytics } from "../../../lib/core/trading/AnalyticsEngine";
3
+ export interface AccountSummaryTabProps {
4
+ account: BrokerAccount;
5
+ analytics: TradingAnalytics;
6
+ }
7
+ export declare function AccountSummaryTab({ account, analytics }: AccountSummaryTabProps): import("react").JSX.Element;
@@ -0,0 +1,26 @@
1
+ import { type PaperPanelSnapshot } from "../context/PaperPanelRegistry";
2
+ import type { BrokerAccount } from "../../../lib/core/trading/types";
3
+ import type { TradingAnalytics } from "../../../lib/core/trading/AnalyticsEngine";
4
+ export declare const EMPTY_PAPER_ACCOUNT: BrokerAccount;
5
+ export interface ActiveChartReplaySource {
6
+ broker: {
7
+ getAccount(): BrokerAccount;
8
+ getPositions(): PaperPanelSnapshot["positions"];
9
+ getOrders(): PaperPanelSnapshot["orders"];
10
+ getAnalytics(): TradingAnalytics;
11
+ };
12
+ log: {
13
+ timestamp: number;
14
+ message: string;
15
+ }[];
16
+ closePosition(positionId: string): boolean | void;
17
+ reversePosition(positionId: string): void;
18
+ cancelOrder(orderId: string): boolean | void;
19
+ reset(): void;
20
+ }
21
+ export interface ActiveChartPaperPanelProps {
22
+ chartId: string | null;
23
+ replay?: ActiveChartReplaySource | null;
24
+ onClose?: () => void;
25
+ }
26
+ export declare function ActiveChartPaperPanel({ chartId, replay, onClose }: ActiveChartPaperPanelProps): import("react").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export declare function ConnectedTradingPanel({ onClose }: {
2
+ onClose?: () => void;
3
+ }): import("react").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import type { TradingOrder } from "../../../lib/core/trading/types";
2
+ export interface HistoryTabProps {
3
+ orders: TradingOrder[];
4
+ }
5
+ export declare function HistoryTab({ orders }: HistoryTabProps): import("react").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export declare function MarketFallbackBanner({ symbol, onOpenSettings, }: {
2
+ symbol: string | null | undefined;
3
+ onOpenSettings: () => void;
4
+ }): import("react").JSX.Element | null;
@@ -0,0 +1,8 @@
1
+ import type { TradingOrder } from "../../../lib/core/trading/types";
2
+ export interface OrdersTabProps {
3
+ orders: TradingOrder[];
4
+ onCancelOrder: (orderId: string) => void;
5
+ /** P1.3: hủy tất cả lệnh chờ (optional — ẩn khi không truyền). */
6
+ onCancelAllOrders?: () => void;
7
+ }
8
+ export declare function OrdersTab({ orders, onCancelOrder, onCancelAllOrders }: OrdersTabProps): import("react").JSX.Element;
@@ -0,0 +1,8 @@
1
+ export interface PaperCapitalDialogProps {
2
+ open: boolean;
3
+ currency: string;
4
+ defaultAmount: number;
5
+ onConfirm: (amount: number) => void;
6
+ onCancel: () => void;
7
+ }
8
+ export declare function PaperCapitalDialog({ open, currency, defaultAmount, onConfirm, onCancel }: PaperCapitalDialogProps): import("react").JSX.Element | null;
@@ -0,0 +1,17 @@
1
+ import { type PaperRuntimeConfig } from "../config/paperRuntimeConfig";
2
+ export interface PaperSettingsModalProps {
3
+ open: boolean;
4
+ initial: PaperRuntimeConfig;
5
+ perChartOverride: boolean;
6
+ onToggleOverride: (override: boolean) => void;
7
+ onSave: (config: Partial<PaperRuntimeConfig>) => void;
8
+ onCancel: () => void;
9
+ /** S4-polish: hide settlement cycle for non-VN markets (meaningless for crypto). */
10
+ hideSettlement?: boolean;
11
+ /**
12
+ * Audit-2 P0#3: hide VN-specific fee rows (sell tax, flat VND
13
+ * commission) for non-VN profiles — crypto uses maker/taker only.
14
+ */
15
+ hideVnFees?: boolean;
16
+ }
17
+ export declare function PaperSettingsModal({ open, initial, perChartOverride, onToggleOverride, onSave, onCancel, hideSettlement, hideVnFees, }: PaperSettingsModalProps): import("react").JSX.Element | null;
@@ -0,0 +1,15 @@
1
+ import type { TradingOrder, TradingPosition } from "../../../lib/core/trading/types";
2
+ export interface PositionsTabProps {
3
+ positions: TradingPosition[];
4
+ orders: TradingOrder[];
5
+ onClosePosition: (positionId: string) => void;
6
+ onReversePosition: (positionId: string) => void;
7
+ /** P1.3: đóng tất cả vị thế (optional — ẩn khi không truyền). */
8
+ onCloseAllPositions?: () => void;
9
+ /** S6: PnL display mode + exit-cost rates for the net estimate. */
10
+ pnlDisplayMode?: "gross" | "net";
11
+ exitFeeRate?: number;
12
+ exitTaxRate?: number;
13
+ onTogglePnlDisplay?: () => void;
14
+ }
15
+ export declare function PositionsTab({ positions, orders, onClosePosition, onReversePosition, onCloseAllPositions, pnlDisplayMode, exitFeeRate, exitTaxRate, onTogglePnlDisplay, }: PositionsTabProps): import("react").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import type { ClosedTradeRecord } from "../../../lib/core/trading/AnalyticsEngine";
2
+ export interface TradeHistoryTabProps {
3
+ trades: ClosedTradeRecord[];
4
+ }
5
+ export declare function TradeHistoryTab({ trades }: TradeHistoryTabProps): import("react").JSX.Element;
@@ -0,0 +1,36 @@
1
+ import { type ReactNode } from "react";
2
+ import type { BrokerAccount, TradingOrder, TradingPosition } from "../../../lib/core/trading/types";
3
+ import type { TradingAnalytics } from "../../../lib/core/trading/AnalyticsEngine";
4
+ import type { PanelLogEntry } from "./TradingLogTab";
5
+ import type { PaperRuntimeConfig } from "../config/paperRuntimeConfig";
6
+ export type TradingPanelTab = "positions" | "orders" | "history" | "trades" | "summary" | "log";
7
+ export interface TradingBottomPanelProps {
8
+ account: BrokerAccount;
9
+ positions: TradingPosition[];
10
+ orders: TradingOrder[];
11
+ orderHistory: TradingOrder[];
12
+ ordersMargin: number;
13
+ analytics: TradingAnalytics;
14
+ log: PanelLogEntry[];
15
+ onClosePosition: (positionId: string) => void;
16
+ onReversePosition: (positionId: string) => void;
17
+ onCancelOrder: (orderId: string) => void;
18
+ /** P1.3: bulk actions (optional — ẩn khi không truyền, backward-compat). */
19
+ onCloseAllPositions?: () => void;
20
+ onCancelAllOrders?: () => void;
21
+ onResetAccount: (initialBalance?: number) => void;
22
+ onClose?: () => void;
23
+ tradingEnabled?: boolean;
24
+ onEnableTrading?: () => void;
25
+ /** Badge ô chart (multi follow-active) — render trong header, không đụng layout flex. */
26
+ titleBadge?: ReactNode;
27
+ /** S4: active symbol for the market-fallback banner. */
28
+ symbol?: string | null;
29
+ paperConfig?: PaperRuntimeConfig;
30
+ onSavePaperConfig?: (config: Partial<PaperRuntimeConfig>) => void;
31
+ pnlDisplayMode?: "gross" | "net";
32
+ exitFeeRate?: number;
33
+ exitTaxRate?: number;
34
+ onTogglePnlDisplay?: () => void;
35
+ }
36
+ export declare function TradingBottomPanel({ account, positions, orders, orderHistory, ordersMargin, analytics, log, onClosePosition, onReversePosition, onCancelOrder, onCloseAllPositions, onCancelAllOrders, onResetAccount, onClose, tradingEnabled, onEnableTrading, titleBadge, symbol, paperConfig, onSavePaperConfig, pnlDisplayMode, exitFeeRate, exitTaxRate, onTogglePnlDisplay, }: TradingBottomPanelProps): import("react").JSX.Element;
@@ -0,0 +1,8 @@
1
+ export interface PanelLogEntry {
2
+ timestamp: number;
3
+ message: string;
4
+ }
5
+ export interface TradingLogTabProps {
6
+ log: PanelLogEntry[];
7
+ }
8
+ export declare function TradingLogTab({ log }: TradingLogTabProps): import("react").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import type { BrokerAccount, TradingPosition } from "../../../lib/core/trading/types";
2
+ import { type PaperRuntimeConfig } from "../config/paperRuntimeConfig";
3
+ export interface TradingPanelHeaderProps {
4
+ account: BrokerAccount;
5
+ positions: TradingPosition[];
6
+ realizedPnl: number;
7
+ ordersMargin: number;
8
+ onResetAccount: (initialBalance?: number) => void;
9
+ onExportCsv: () => void;
10
+ paperConfig?: PaperRuntimeConfig;
11
+ onSavePaperConfig?: (config: Partial<PaperRuntimeConfig>) => void;
12
+ /** S4: symbol for the market-fallback banner (unclassified → VN_SPOT). */
13
+ symbol?: string | null;
14
+ }
15
+ export declare const MARGIN_SAFE_THRESHOLD = 150;
16
+ export declare const MARGIN_WARNING_THRESHOLD = 100;
17
+ export declare function TradingPanelHeader({ account, positions, realizedPnl, ordersMargin, onResetAccount, onExportCsv, paperConfig, onSavePaperConfig, symbol }: TradingPanelHeaderProps): import("react").JSX.Element;
@@ -0,0 +1,18 @@
1
+ import type { ClosedTradeRecord } from "../../../lib/core/trading/AnalyticsEngine";
2
+ import type { TradingOrder, TradingPosition } from "../../../lib/core/trading/types";
3
+ export declare function toCsvCell(value: unknown): string;
4
+ export declare function buildCsv(headers: string[], rows: unknown[][]): string;
5
+ export declare function positionsToRows(positions: TradingPosition[]): {
6
+ headers: string[];
7
+ rows: unknown[][];
8
+ };
9
+ export declare function ordersToRows(orders: TradingOrder[]): {
10
+ headers: string[];
11
+ rows: unknown[][];
12
+ };
13
+ export declare function tradesToRows(trades: ClosedTradeRecord[]): {
14
+ headers: string[];
15
+ rows: unknown[][];
16
+ };
17
+ /** Tải file CSV (BOM UTF-8 cho Excel Windows). Trả false khi môi trường thiếu API. */
18
+ export declare function downloadCsv(filename: string, csv: string): boolean;
@@ -0,0 +1,5 @@
1
+ export declare function ConnectedTradingDockPanel({ canUseAdvancedOrders, canUseReplayTrading, isReplayMode }: {
2
+ canUseAdvancedOrders?: boolean;
3
+ canUseReplayTrading?: boolean;
4
+ isReplayMode?: boolean;
5
+ }): import("react").JSX.Element;
@@ -0,0 +1,31 @@
1
+ import type { MarketRules } from "../../../lib/core/trading/MarketRules";
2
+ import type { OrderType, OrderValidationInput, TradingPosition } from "../../../lib/core/trading/types";
3
+ export interface OrderTicketAccount {
4
+ equity: number;
5
+ freeMargin: number;
6
+ buyingPower: number;
7
+ }
8
+ export interface OrderTicketFormProps {
9
+ side: "buy" | "sell";
10
+ symbol: string;
11
+ lastPrice: number;
12
+ rules: MarketRules;
13
+ account: OrderTicketAccount;
14
+ currentPosition?: TradingPosition | null;
15
+ onClose: () => void;
16
+ onSubmit: (order: OrderValidationInput) => void;
17
+ /** Edit-mode (Task 10): prefill + lưu qua onModify thay vì đặt lệnh mới. */
18
+ initialValues?: {
19
+ price?: number;
20
+ stopPrice?: number;
21
+ };
22
+ /** Qty preset từ strip (mặc định = lot của rules). */
23
+ initialQuantity?: number;
24
+ initialType?: OrderType;
25
+ editOrderId?: string;
26
+ onModify?: (orderId: string, patch: {
27
+ price?: number;
28
+ stopPrice?: number;
29
+ }) => void;
30
+ }
31
+ export declare function OrderTicketForm({ side, symbol, lastPrice, rules, account, currentPosition, onClose, onSubmit, initialValues, initialQuantity, initialType, editOrderId, onModify, }: OrderTicketFormProps): import("react").JSX.Element;
@@ -0,0 +1,29 @@
1
+ import type { MarketRules } from "../../../lib/core/trading/MarketRules";
2
+ import type { OrderType, OrderValidationInput, TradingPosition } from "../../../lib/core/trading/types";
3
+ import { type OrderTicketAccount } from "./OrderTicketForm";
4
+ export type { OrderTicketAccount };
5
+ export interface OrderTicketModalProps {
6
+ open: boolean;
7
+ side: "buy" | "sell";
8
+ symbol: string;
9
+ lastPrice: number;
10
+ rules: MarketRules;
11
+ account: OrderTicketAccount;
12
+ currentPosition?: TradingPosition | null;
13
+ mountTarget?: Element | null;
14
+ onClose: () => void;
15
+ onSubmit: (order: OrderValidationInput) => void;
16
+ /** Edit-mode (Task 10): prefill + lưu qua onModify thay vì đặt lệnh mới. */
17
+ initialValues?: {
18
+ price?: number;
19
+ stopPrice?: number;
20
+ };
21
+ initialQuantity?: number;
22
+ initialType?: OrderType;
23
+ editOrderId?: string;
24
+ onModify?: (orderId: string, patch: {
25
+ price?: number;
26
+ stopPrice?: number;
27
+ }) => void;
28
+ }
29
+ export declare function OrderTicketModal({ open, mountTarget, onClose, ...formProps }: OrderTicketModalProps): import("react").JSX.Element | null;
@@ -0,0 +1,9 @@
1
+ export interface RegistryTradingDockPanelProps {
2
+ chartId: string | null;
3
+ lastPrice: number;
4
+ /** Replay mode (không binding replay) hoặc tắt trading → disable form. */
5
+ disabled?: boolean;
6
+ /** S1: quyền lệnh nâng cao từ capability (tôn trọng license `caps`). */
7
+ canUseAdvancedOrders?: boolean;
8
+ }
9
+ export declare function RegistryTradingDockPanel({ chartId, lastPrice, disabled, canUseAdvancedOrders }: RegistryTradingDockPanelProps): React.ReactNode;
@@ -0,0 +1,9 @@
1
+ export interface RiskCalculatorViewProps {
2
+ entryPrice: number;
3
+ quantity: number;
4
+ takeProfitPrice?: number;
5
+ stopLossPrice?: number;
6
+ contractMultiplier?: number;
7
+ accountEquity: number;
8
+ }
9
+ export declare function RiskCalculatorView({ entryPrice, quantity, takeProfitPrice, stopLossPrice, contractMultiplier, accountEquity, }: RiskCalculatorViewProps): import("react").JSX.Element | null;