velo-plot 1.11.1

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 (370) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +119 -0
  3. package/dist/EventEmitter-DAbs2K1C.js +60 -0
  4. package/dist/EventEmitter-DAbs2K1C.js.map +1 -0
  5. package/dist/core/Chart.d.ts +15 -0
  6. package/dist/core/ChartControls.d.ts +41 -0
  7. package/dist/core/ChartInitQueue.d.ts +50 -0
  8. package/dist/core/ChartLegend.d.ts +74 -0
  9. package/dist/core/ChartStatistics.d.ts +18 -0
  10. package/dist/core/EventEmitter.d.ts +30 -0
  11. package/dist/core/InteractionManager.d.ts +96 -0
  12. package/dist/core/OverlayRenderer.d.ts +89 -0
  13. package/dist/core/Series.d.ts +4 -0
  14. package/dist/core/animation/AnimationEngine.d.ts +156 -0
  15. package/dist/core/animation/index.d.ts +6 -0
  16. package/dist/core/annotations/AnnotationManager.d.ts +61 -0
  17. package/dist/core/annotations/index.d.ts +5 -0
  18. package/dist/core/annotations/types.d.ts +159 -0
  19. package/dist/core/chart/ChartAnimatedNavigation.d.ts +53 -0
  20. package/dist/core/chart/ChartAxisManager.d.ts +61 -0
  21. package/dist/core/chart/ChartCore.d.ts +336 -0
  22. package/dist/core/chart/ChartExporter.d.ts +18 -0
  23. package/dist/core/chart/ChartNavigation.d.ts +33 -0
  24. package/dist/core/chart/ChartPluginBridge.d.ts +34 -0
  25. package/dist/core/chart/ChartRenderLoop.d.ts +100 -0
  26. package/dist/core/chart/ChartRenderer.d.ts +52 -0
  27. package/dist/core/chart/ChartScaling.d.ts +31 -0
  28. package/dist/core/chart/ChartSeries.d.ts +4 -0
  29. package/dist/core/chart/ChartSetup.d.ts +67 -0
  30. package/dist/core/chart/ChartStateManager.d.ts +54 -0
  31. package/dist/core/chart/ChartUI.d.ts +40 -0
  32. package/dist/core/chart/exporter/SVGExporter.d.ts +6 -0
  33. package/dist/core/chart/exporter/index.d.ts +5 -0
  34. package/dist/core/chart/index.d.ts +14 -0
  35. package/dist/core/chart/series/SeriesActions.d.ts +7 -0
  36. package/dist/core/chart/series/SeriesBuffer.d.ts +4 -0
  37. package/dist/core/chart/series/index.d.ts +6 -0
  38. package/dist/core/chart/series/types.d.ts +22 -0
  39. package/dist/core/chart/types.d.ts +188 -0
  40. package/dist/core/clipboard/index.d.ts +137 -0
  41. package/dist/core/debug/index.d.ts +143 -0
  42. package/dist/core/index.d.ts +17 -0
  43. package/dist/core/keybindings/index.d.ts +157 -0
  44. package/dist/core/layout/index.d.ts +12 -0
  45. package/dist/core/layout/types.d.ts +165 -0
  46. package/dist/core/loading/index.d.ts +104 -0
  47. package/dist/core/locale/index.d.ts +91 -0
  48. package/dist/core/responsive/ResponsiveManager.d.ts +133 -0
  49. package/dist/core/responsive/index.d.ts +4 -0
  50. package/dist/core/selection/SelectionManager.d.ts +165 -0
  51. package/dist/core/selection/index.d.ts +4 -0
  52. package/dist/core/series/Series.d.ts +73 -0
  53. package/dist/core/series/SeriesBounds.d.ts +3 -0
  54. package/dist/core/series/SeriesDataUtils.d.ts +7 -0
  55. package/dist/core/series/index.d.ts +6 -0
  56. package/dist/core/sync/index.d.ts +147 -0
  57. package/dist/core/theme-editor/index.d.ts +122 -0
  58. package/dist/examples/PluginDemonstration.d.ts +20 -0
  59. package/dist/examples.d.ts +25 -0
  60. package/dist/gpu/adapter/gpuRenderer.d.ts +135 -0
  61. package/dist/gpu/adapter/index.d.ts +7 -0
  62. package/dist/gpu/adapter/seriesAdapter.d.ts +88 -0
  63. package/dist/gpu/backends/webgl/WebGLBackend.d.ts +42 -0
  64. package/dist/gpu/backends/webgl/index.d.ts +5 -0
  65. package/dist/gpu/backends/webgl/programFactory.d.ts +30 -0
  66. package/dist/gpu/backends/webgl/shaders.d.ts +14 -0
  67. package/dist/gpu/backends/webgpu/MassiveDataRenderer.d.ts +111 -0
  68. package/dist/gpu/backends/webgpu/WebGPUBackend.d.ts +58 -0
  69. package/dist/gpu/backends/webgpu/pipelines/bandPipeline.d.ts +24 -0
  70. package/dist/gpu/backends/webgpu/pipelines/heatmapPipeline.d.ts +28 -0
  71. package/dist/gpu/backends/webgpu/pipelines/index.d.ts +10 -0
  72. package/dist/gpu/backends/webgpu/pipelines/instancedLinePipeline.d.ts +23 -0
  73. package/dist/gpu/backends/webgpu/pipelines/instancedPointPipeline.d.ts +25 -0
  74. package/dist/gpu/backends/webgpu/pipelines/linePipeline.d.ts +23 -0
  75. package/dist/gpu/backends/webgpu/pipelines/pointPipeline.d.ts +28 -0
  76. package/dist/gpu/backends/webgpu/pipelines/trianglePipeline.d.ts +5 -0
  77. package/dist/gpu/backends/webgpu/pipelines/triangleShader.d.ts +1 -0
  78. package/dist/gpu/backends/webgpu/shaders/heatmap.wgsl.d.ts +8 -0
  79. package/dist/gpu/backends/webgpu/shaders/index.d.ts +8 -0
  80. package/dist/gpu/backends/webgpu/shaders/instanced.wgsl.d.ts +16 -0
  81. package/dist/gpu/backends/webgpu/shaders/line.wgsl.d.ts +8 -0
  82. package/dist/gpu/backends/webgpu/shaders/point.wgsl.d.ts +9 -0
  83. package/dist/gpu/benchmark/benchmark.d.ts +74 -0
  84. package/dist/gpu/benchmark/index.d.ts +5 -0
  85. package/dist/gpu/compute/gpuCompute.d.ts +72 -0
  86. package/dist/gpu/compute/index.d.ts +6 -0
  87. package/dist/gpu/compute/shaders.d.ts +9 -0
  88. package/dist/gpu/drawList.d.ts +77 -0
  89. package/dist/gpu/examples/gallery.d.ts +20 -0
  90. package/dist/gpu/examples/index.d.ts +3 -0
  91. package/dist/gpu/examples/webgpu-line-demo.d.ts +8 -0
  92. package/dist/gpu/examples/webgpu-triangle.d.ts +1 -0
  93. package/dist/gpu/frame.d.ts +25 -0
  94. package/dist/gpu/index.d.ts +24 -0
  95. package/dist/gpu/resources/bufferStore.d.ts +40 -0
  96. package/dist/gpu/resources/index.d.ts +9 -0
  97. package/dist/gpu/resources/pipelineCache.d.ts +33 -0
  98. package/dist/gpu/resources/textureStore.d.ts +41 -0
  99. package/dist/gpu/types.d.ts +47 -0
  100. package/dist/index-BMiZoKmm.js +536 -0
  101. package/dist/index-BMiZoKmm.js.map +1 -0
  102. package/dist/index-Ce2JgkH_.js +282 -0
  103. package/dist/index-Ce2JgkH_.js.map +1 -0
  104. package/dist/index-D8ifudJH.js +2431 -0
  105. package/dist/index-D8ifudJH.js.map +1 -0
  106. package/dist/index-Dag88bW4.js +499 -0
  107. package/dist/index-Dag88bW4.js.map +1 -0
  108. package/dist/index-qhscKTDy.js +309 -0
  109. package/dist/index-qhscKTDy.js.map +1 -0
  110. package/dist/index-x4stH3jD.js +282 -0
  111. package/dist/index-x4stH3jD.js.map +1 -0
  112. package/dist/index.core-CYu3tydL.js +7252 -0
  113. package/dist/index.core-CYu3tydL.js.map +1 -0
  114. package/dist/index.core.d.ts +20 -0
  115. package/dist/index.d.ts +51 -0
  116. package/dist/overlay/CanvasOverlay.d.ts +102 -0
  117. package/dist/overlay/index.d.ts +4 -0
  118. package/dist/plugins/3d/Area3DRenderer.d.ts +122 -0
  119. package/dist/plugins/3d/Axes3D.d.ts +104 -0
  120. package/dist/plugins/3d/Bubble3DRenderer.d.ts +198 -0
  121. package/dist/plugins/3d/Impulse3DRenderer.d.ts +130 -0
  122. package/dist/plugins/3d/Line3DRenderer.d.ts +118 -0
  123. package/dist/plugins/3d/PointCloud3DRenderer.d.ts +84 -0
  124. package/dist/plugins/3d/Raycaster3D.d.ts +137 -0
  125. package/dist/plugins/3d/Ribbon3DRenderer.d.ts +83 -0
  126. package/dist/plugins/3d/SurfaceBar3DRenderer.d.ts +92 -0
  127. package/dist/plugins/3d/SurfaceMesh3DRenderer.d.ts +130 -0
  128. package/dist/plugins/3d/Tooltip3D.d.ts +71 -0
  129. package/dist/plugins/3d/VectorField3DRenderer.d.ts +86 -0
  130. package/dist/plugins/3d/Voxel3DRenderer.d.ts +89 -0
  131. package/dist/plugins/3d/Waterfall3DRenderer.d.ts +94 -0
  132. package/dist/plugins/3d/camera/OrbitCamera.d.ts +99 -0
  133. package/dist/plugins/3d/camera/index.d.ts +1 -0
  134. package/dist/plugins/3d/colorThemes.d.ts +39 -0
  135. package/dist/plugins/3d/controls/OrbitController.d.ts +69 -0
  136. package/dist/plugins/3d/controls/index.d.ts +1 -0
  137. package/dist/plugins/3d/index.d.ts +50 -0
  138. package/dist/plugins/3d/math/Mat4.d.ts +33 -0
  139. package/dist/plugins/3d/math/Vec3.d.ts +37 -0
  140. package/dist/plugins/3d/math/index.d.ts +4 -0
  141. package/dist/plugins/3d/mesh/InstancedMesh.d.ts +42 -0
  142. package/dist/plugins/3d/mesh/geometry.d.ts +34 -0
  143. package/dist/plugins/3d/mesh/index.d.ts +2 -0
  144. package/dist/plugins/3d/series/Area3D.d.ts +17 -0
  145. package/dist/plugins/3d/series/Column3D.d.ts +20 -0
  146. package/dist/plugins/3d/series/Heatmap3D.d.ts +17 -0
  147. package/dist/plugins/3d/series/Impulse3D.d.ts +16 -0
  148. package/dist/plugins/3d/series/PointLine3D.d.ts +20 -0
  149. package/dist/plugins/3d/series/Ribbon3D.d.ts +17 -0
  150. package/dist/plugins/3d/series/Scatter3D.d.ts +21 -0
  151. package/dist/plugins/3d/series/SurfaceMesh3D.d.ts +35 -0
  152. package/dist/plugins/3d/series/Waterfall3D.d.ts +38 -0
  153. package/dist/plugins/3d/series/index.d.ts +13 -0
  154. package/dist/plugins/3d/series/types.d.ts +143 -0
  155. package/dist/plugins/3d/shader/index.d.ts +2 -0
  156. package/dist/plugins/3d/shader/programs.d.ts +24 -0
  157. package/dist/plugins/3d/shader/sources.d.ts +27 -0
  158. package/dist/plugins/3d/types.d.ts +71 -0
  159. package/dist/plugins/3d.d.ts +3 -0
  160. package/dist/plugins/3d.js +5498 -0
  161. package/dist/plugins/3d.js.map +1 -0
  162. package/dist/plugins/PluginContext.d.ts +53 -0
  163. package/dist/plugins/PluginManager.d.ts +129 -0
  164. package/dist/plugins/PluginRegistry.d.ts +38 -0
  165. package/dist/plugins/analysis/SeriesFit.d.ts +3 -0
  166. package/dist/plugins/analysis/contours.d.ts +20 -0
  167. package/dist/plugins/analysis/fft.d.ts +138 -0
  168. package/dist/plugins/analysis/filters.d.ts +76 -0
  169. package/dist/plugins/analysis/fitting.d.ts +24 -0
  170. package/dist/plugins/analysis/index.d.ts +29 -0
  171. package/dist/plugins/analysis/indicators.d.ts +148 -0
  172. package/dist/plugins/analysis/math.d.ts +32 -0
  173. package/dist/plugins/analysis/statistics.d.ts +78 -0
  174. package/dist/plugins/analysis/utils.d.ts +150 -0
  175. package/dist/plugins/analysis.d.ts +3 -0
  176. package/dist/plugins/analysis.js +1202 -0
  177. package/dist/plugins/analysis.js.map +1 -0
  178. package/dist/plugins/annotations/index.d.ts +16 -0
  179. package/dist/plugins/annotations.d.ts +3 -0
  180. package/dist/plugins/annotations.js +438 -0
  181. package/dist/plugins/annotations.js.map +1 -0
  182. package/dist/plugins/anomaly-detection/algorithms.d.ts +38 -0
  183. package/dist/plugins/anomaly-detection/index.d.ts +16 -0
  184. package/dist/plugins/anomaly-detection/types.d.ts +57 -0
  185. package/dist/plugins/broken-axis/BrokenAxisScale.d.ts +24 -0
  186. package/dist/plugins/broken-axis/exports.d.ts +6 -0
  187. package/dist/plugins/broken-axis/index.d.ts +6 -0
  188. package/dist/plugins/broken-axis/types.d.ts +50 -0
  189. package/dist/plugins/builtins/crosshair/CrosshairPlugin.d.ts +40 -0
  190. package/dist/plugins/builtins/crosshair/index.d.ts +1 -0
  191. package/dist/plugins/builtins/data-logger/DataLoggerPlugin.d.ts +11 -0
  192. package/dist/plugins/builtins/data-logger/index.d.ts +1 -0
  193. package/dist/plugins/builtins/direction-indicator/DirectionIndicatorPlugin.d.ts +17 -0
  194. package/dist/plugins/builtins/direction-indicator/index.d.ts +2 -0
  195. package/dist/plugins/builtins/grid-highlight/GridHighlightPlugin.d.ts +17 -0
  196. package/dist/plugins/builtins/grid-highlight/index.d.ts +1 -0
  197. package/dist/plugins/builtins/index.d.ts +25 -0
  198. package/dist/plugins/builtins/stats/StatsPlugin.d.ts +11 -0
  199. package/dist/plugins/builtins/stats/index.d.ts +1 -0
  200. package/dist/plugins/builtins/watermark/WatermarkPlugin.d.ts +15 -0
  201. package/dist/plugins/builtins/watermark/index.d.ts +1 -0
  202. package/dist/plugins/caching/exports.d.ts +6 -0
  203. package/dist/plugins/caching/index.d.ts +6 -0
  204. package/dist/plugins/caching/types.d.ts +120 -0
  205. package/dist/plugins/clipboard/index.d.ts +20 -0
  206. package/dist/plugins/clipboard.d.ts +3 -0
  207. package/dist/plugins/clipboard.js +270 -0
  208. package/dist/plugins/clipboard.js.map +1 -0
  209. package/dist/plugins/context-menu/index.d.ts +12 -0
  210. package/dist/plugins/context-menu/renderer.d.ts +43 -0
  211. package/dist/plugins/context-menu/types.d.ts +202 -0
  212. package/dist/plugins/context-menu.d.ts +3 -0
  213. package/dist/plugins/context-menu.js +621 -0
  214. package/dist/plugins/context-menu.js.map +1 -0
  215. package/dist/plugins/data-export/formatters.d.ts +34 -0
  216. package/dist/plugins/data-export/index.d.ts +15 -0
  217. package/dist/plugins/data-export/types.d.ts +166 -0
  218. package/dist/plugins/data-export.d.ts +3 -0
  219. package/dist/plugins/data-export.js +463 -0
  220. package/dist/plugins/data-export.js.map +1 -0
  221. package/dist/plugins/data-transform/index.d.ts +6 -0
  222. package/dist/plugins/data-transform/types.d.ts +34 -0
  223. package/dist/plugins/debug/index.d.ts +24 -0
  224. package/dist/plugins/debug.d.ts +3 -0
  225. package/dist/plugins/debug.js +330 -0
  226. package/dist/plugins/debug.js.map +1 -0
  227. package/dist/plugins/drag-edit/exports.d.ts +6 -0
  228. package/dist/plugins/drag-edit/index.d.ts +6 -0
  229. package/dist/plugins/drag-edit/types.d.ts +118 -0
  230. package/dist/plugins/forecasting/algorithms.d.ts +6 -0
  231. package/dist/plugins/forecasting/exports.d.ts +3 -0
  232. package/dist/plugins/forecasting/index.d.ts +11 -0
  233. package/dist/plugins/forecasting/types.d.ts +88 -0
  234. package/dist/plugins/gpu/index.d.ts +24 -0
  235. package/dist/plugins/gpu.d.ts +3 -0
  236. package/dist/plugins/gpu.js +2430 -0
  237. package/dist/plugins/gpu.js.map +1 -0
  238. package/dist/plugins/i18n/index.d.ts +22 -0
  239. package/dist/plugins/i18n.d.ts +3 -0
  240. package/dist/plugins/i18n.js +37 -0
  241. package/dist/plugins/i18n.js.map +1 -0
  242. package/dist/plugins/index.d.ts +110 -0
  243. package/dist/plugins/keyboard/index.d.ts +15 -0
  244. package/dist/plugins/keyboard.d.ts +3 -0
  245. package/dist/plugins/keyboard.js +8 -0
  246. package/dist/plugins/keyboard.js.map +1 -0
  247. package/dist/plugins/latex/exports.d.ts +6 -0
  248. package/dist/plugins/latex/index.d.ts +8 -0
  249. package/dist/plugins/latex/parser.d.ts +6 -0
  250. package/dist/plugins/latex/renderer.d.ts +6 -0
  251. package/dist/plugins/latex/symbols.d.ts +28 -0
  252. package/dist/plugins/latex/types.d.ts +88 -0
  253. package/dist/plugins/lazy-load/exports.d.ts +6 -0
  254. package/dist/plugins/lazy-load/index.d.ts +6 -0
  255. package/dist/plugins/lazy-load/types.d.ts +121 -0
  256. package/dist/plugins/loading/index.d.ts +15 -0
  257. package/dist/plugins/loading.d.ts +3 -0
  258. package/dist/plugins/loading.js +7 -0
  259. package/dist/plugins/loading.js.map +1 -0
  260. package/dist/plugins/ml-integration/exports.d.ts +11 -0
  261. package/dist/plugins/ml-integration/index.d.ts +6 -0
  262. package/dist/plugins/ml-integration/native-algorithms.d.ts +69 -0
  263. package/dist/plugins/ml-integration/types.d.ts +74 -0
  264. package/dist/plugins/offscreen/exports.d.ts +6 -0
  265. package/dist/plugins/offscreen/index.d.ts +6 -0
  266. package/dist/plugins/offscreen/pool.d.ts +32 -0
  267. package/dist/plugins/offscreen/types.d.ts +35 -0
  268. package/dist/plugins/pattern-recognition/index.d.ts +6 -0
  269. package/dist/plugins/pattern-recognition/patterns.d.ts +3 -0
  270. package/dist/plugins/pattern-recognition/types.d.ts +245 -0
  271. package/dist/plugins/radar/index.d.ts +6 -0
  272. package/dist/plugins/radar/types.d.ts +40 -0
  273. package/dist/plugins/regression/algorithms.d.ts +6 -0
  274. package/dist/plugins/regression/index.d.ts +6 -0
  275. package/dist/plugins/regression/types.d.ts +261 -0
  276. package/dist/plugins/roi/exports.d.ts +6 -0
  277. package/dist/plugins/roi/index.d.ts +49 -0
  278. package/dist/plugins/roi/types.d.ts +60 -0
  279. package/dist/plugins/snapshot/index.d.ts +11 -0
  280. package/dist/plugins/snapshot/types.d.ts +38 -0
  281. package/dist/plugins/streaming/index.d.ts +32 -0
  282. package/dist/plugins/streaming.d.ts +3 -0
  283. package/dist/plugins/streaming.js +13 -0
  284. package/dist/plugins/streaming.js.map +1 -0
  285. package/dist/plugins/sync/index.d.ts +22 -0
  286. package/dist/plugins/sync.d.ts +3 -0
  287. package/dist/plugins/sync.js +261 -0
  288. package/dist/plugins/sync.js.map +1 -0
  289. package/dist/plugins/theme-editor/index.d.ts +18 -0
  290. package/dist/plugins/theme-editor.d.ts +3 -0
  291. package/dist/plugins/theme-editor.js +7 -0
  292. package/dist/plugins/theme-editor.js.map +1 -0
  293. package/dist/plugins/tools/delta-tool/index.d.ts +159 -0
  294. package/dist/plugins/tools/index.d.ts +21 -0
  295. package/dist/plugins/tools/peak-tool/index.d.ts +159 -0
  296. package/dist/plugins/tools/tooltip/TooltipManager.d.ts +213 -0
  297. package/dist/plugins/tools/tooltip/TooltipPositioner.d.ts +83 -0
  298. package/dist/plugins/tools/tooltip/TooltipRenderer.d.ts +64 -0
  299. package/dist/plugins/tools/tooltip/index.d.ts +18 -0
  300. package/dist/plugins/tools/tooltip/templates/AnnotationTemplate.d.ts +18 -0
  301. package/dist/plugins/tools/tooltip/templates/CrosshairTemplate.d.ts +39 -0
  302. package/dist/plugins/tools/tooltip/templates/DefaultTemplate.d.ts +30 -0
  303. package/dist/plugins/tools/tooltip/templates/HeatmapTemplate.d.ts +34 -0
  304. package/dist/plugins/tools/tooltip/templates/MinimalTemplate.d.ts +26 -0
  305. package/dist/plugins/tools/tooltip/templates/RangeTemplate.d.ts +18 -0
  306. package/dist/plugins/tools/tooltip/templates/ScientificTemplate.d.ts +34 -0
  307. package/dist/plugins/tools/tooltip/templates/index.d.ts +27 -0
  308. package/dist/plugins/tools/tooltip/themes.d.ts +48 -0
  309. package/dist/plugins/tools/tooltip/types.d.ts +396 -0
  310. package/dist/plugins/tools.d.ts +3 -0
  311. package/dist/plugins/tools.js +9 -0
  312. package/dist/plugins/tools.js.map +1 -0
  313. package/dist/plugins/types.d.ts +451 -0
  314. package/dist/plugins/video-recorder/exports.d.ts +6 -0
  315. package/dist/plugins/video-recorder/index.d.ts +6 -0
  316. package/dist/plugins/video-recorder/types.d.ts +55 -0
  317. package/dist/plugins/virtualization/exports.d.ts +6 -0
  318. package/dist/plugins/virtualization/index.d.ts +6 -0
  319. package/dist/plugins/virtualization/types.d.ts +48 -0
  320. package/dist/react/SciPlot.d.ts +60 -0
  321. package/dist/react/index.d.ts +5 -0
  322. package/dist/react/useSciPlot.d.ts +56 -0
  323. package/dist/renderer/BarRenderer.d.ts +14 -0
  324. package/dist/renderer/CandlestickRenderer.d.ts +12 -0
  325. package/dist/renderer/GaugeRenderer.d.ts +3 -0
  326. package/dist/renderer/HeatmapRenderer.d.ts +15 -0
  327. package/dist/renderer/NativeWebGLRenderer.d.ts +16 -0
  328. package/dist/renderer/PolarRenderer.d.ts +64 -0
  329. package/dist/renderer/RendererInterface.d.ts +70 -0
  330. package/dist/renderer/SankeyRenderer.d.ts +3 -0
  331. package/dist/renderer/WebGPURenderer.d.ts +16 -0
  332. package/dist/renderer/index.d.ts +13 -0
  333. package/dist/renderer/native/NativeWebGLRenderer.d.ts +31 -0
  334. package/dist/renderer/native/bufferStore.d.ts +11 -0
  335. package/dist/renderer/native/draw.d.ts +47 -0
  336. package/dist/renderer/native/programFactory.d.ts +3 -0
  337. package/dist/renderer/native/renderFrame.d.ts +3 -0
  338. package/dist/renderer/native/shaderSources.d.ts +6 -0
  339. package/dist/renderer/native/textureStore.d.ts +8 -0
  340. package/dist/renderer/native/types.d.ts +77 -0
  341. package/dist/renderer/native/utils.d.ts +31 -0
  342. package/dist/renderer/radar/RadarRenderer.d.ts +71 -0
  343. package/dist/renderer/radar/index.d.ts +10 -0
  344. package/dist/renderer/shaders.d.ts +77 -0
  345. package/dist/renderer/ternary/TernaryRenderer.d.ts +39 -0
  346. package/dist/renderer/ternary/index.d.ts +6 -0
  347. package/dist/renderer/ternary/types.d.ts +56 -0
  348. package/dist/scales/index.d.ts +54 -0
  349. package/dist/serialization/index.d.ts +153 -0
  350. package/dist/streaming/backpressure.d.ts +179 -0
  351. package/dist/streaming/index.d.ts +7 -0
  352. package/dist/streaming/mock.d.ts +12 -0
  353. package/dist/streaming/types.d.ts +57 -0
  354. package/dist/streaming/utils.d.ts +19 -0
  355. package/dist/streaming/websocket.d.ts +6 -0
  356. package/dist/testing/index.d.ts +225 -0
  357. package/dist/theme/colorSchemes.d.ts +56 -0
  358. package/dist/theme/index.d.ts +138 -0
  359. package/dist/types.d.ts +753 -0
  360. package/dist/utils-Dbro9-qM.js +254 -0
  361. package/dist/utils-Dbro9-qM.js.map +1 -0
  362. package/dist/velo-plot.d.ts +1 -0
  363. package/dist/velo-plot.full.d.ts +1 -0
  364. package/dist/velo-plot.full.js +5804 -0
  365. package/dist/velo-plot.full.js.map +1 -0
  366. package/dist/velo-plot.js +31 -0
  367. package/dist/velo-plot.js.map +1 -0
  368. package/dist/workers/downsample.d.ts +34 -0
  369. package/dist/workers/downsample.worker.d.ts +46 -0
  370. package/package.json +185 -0
@@ -0,0 +1,165 @@
1
+ import { Bounds, PlotArea } from '../../types';
2
+ import { Scale } from '../../scales';
3
+ import { Series } from '../series/Series';
4
+ import { EventEmitter } from '../EventEmitter';
5
+
6
+ /** Represents a single selected data point */
7
+ export interface SelectedPoint {
8
+ seriesId: string;
9
+ index: number;
10
+ x: number;
11
+ y: number;
12
+ }
13
+ /** Selection mode for multi-select operations */
14
+ export type SelectionMode = 'single' | 'add' | 'remove' | 'toggle';
15
+ /** Event data for point selection changes */
16
+ export interface PointSelectEvent {
17
+ points: SelectedPoint[];
18
+ mode: SelectionMode;
19
+ source: 'click' | 'box' | 'api';
20
+ }
21
+ /** Event data for region/box selection */
22
+ export interface RegionSelectEvent {
23
+ bounds: Bounds;
24
+ containedPoints: SelectedPoint[];
25
+ }
26
+ /** Selection event map */
27
+ export interface SelectionEventMap {
28
+ pointSelect: PointSelectEvent;
29
+ regionSelect: RegionSelectEvent;
30
+ selectionChange: {
31
+ selected: SelectedPoint[];
32
+ previous: SelectedPoint[];
33
+ };
34
+ selectionClear: undefined;
35
+ }
36
+ /** Hit-test result for a single point */
37
+ export interface HitTestResult {
38
+ seriesId: string;
39
+ index: number;
40
+ x: number;
41
+ y: number;
42
+ distance: number;
43
+ pixelX: number;
44
+ pixelY: number;
45
+ }
46
+ /** Selection manager configuration */
47
+ export interface SelectionConfig {
48
+ /** Enable selection (default: true) */
49
+ enabled?: boolean;
50
+ /** Maximum distance in pixels for hit-testing (default: 20) */
51
+ hitRadius?: number;
52
+ /** Allow multi-selection with Ctrl+click (default: true) */
53
+ multiSelect?: boolean;
54
+ /** Enable box selection with Shift+drag (default: true) */
55
+ boxSelect?: boolean;
56
+ /** Highlight style for selected points */
57
+ highlightStyle?: {
58
+ color?: string;
59
+ size?: number;
60
+ ringWidth?: number;
61
+ };
62
+ }
63
+ /** Context for selection operations */
64
+ export interface SelectionContext {
65
+ getSeries: () => Map<string, Series>;
66
+ getPlotArea: () => PlotArea;
67
+ getXScale: () => Scale;
68
+ getYScales: () => Map<string, Scale>;
69
+ getPrimaryYAxisId: () => string;
70
+ events: EventEmitter<SelectionEventMap>;
71
+ requestRender: () => void;
72
+ }
73
+ export declare class SelectionManager {
74
+ private ctx;
75
+ private config;
76
+ private selected;
77
+ private isBoxSelecting;
78
+ private boxStart;
79
+ private boxEnd;
80
+ constructor(ctx: SelectionContext, config?: SelectionConfig);
81
+ configure(config: Partial<SelectionConfig>): void;
82
+ getConfig(): SelectionConfig;
83
+ setEnabled(enabled: boolean): void;
84
+ isEnabled(): boolean;
85
+ /**
86
+ * Hit-test at a pixel coordinate to find the nearest data point
87
+ */
88
+ hitTest(pixelX: number, pixelY: number, radius?: number): HitTestResult | null;
89
+ /**
90
+ * Hit-test all points within a rectangular region
91
+ */
92
+ hitTestRegion(bounds: Bounds): HitTestResult[];
93
+ /**
94
+ * Select specific points programmatically
95
+ */
96
+ selectPoints(points: Array<{
97
+ seriesId: string;
98
+ indices: number[];
99
+ }>, mode?: SelectionMode): void;
100
+ /**
101
+ * Get all currently selected points
102
+ */
103
+ getSelectedPoints(): SelectedPoint[];
104
+ /**
105
+ * Check if a specific point is selected
106
+ */
107
+ isPointSelected(seriesId: string, index: number): boolean;
108
+ /**
109
+ * Get selected points for a specific series
110
+ */
111
+ getSelectedForSeries(seriesId: string): number[];
112
+ /**
113
+ * Clear all selections
114
+ */
115
+ clearSelection(): void;
116
+ /**
117
+ * Get selection count
118
+ */
119
+ getSelectionCount(): number;
120
+ /**
121
+ * Handle click event for selection
122
+ */
123
+ handleClick(pixelX: number, pixelY: number, ctrlKey: boolean, shiftKey: boolean): void;
124
+ /**
125
+ * Start box selection
126
+ */
127
+ startBoxSelection(pixelX: number, pixelY: number): void;
128
+ /**
129
+ * Update box selection during drag
130
+ */
131
+ updateBoxSelection(pixelX: number, pixelY: number): void;
132
+ /**
133
+ * Complete box selection
134
+ */
135
+ completeBoxSelection(additive?: boolean): void;
136
+ /**
137
+ * Cancel box selection
138
+ */
139
+ cancelBoxSelection(): void;
140
+ /**
141
+ * Check if box selection is active
142
+ */
143
+ isBoxSelectActive(): boolean;
144
+ /**
145
+ * Get current box selection rectangle (for rendering)
146
+ */
147
+ getBoxSelectionRect(): {
148
+ x: number;
149
+ y: number;
150
+ width: number;
151
+ height: number;
152
+ } | null;
153
+ /**
154
+ * Render selected point highlights
155
+ */
156
+ render(ctx: CanvasRenderingContext2D, plotArea: PlotArea): void;
157
+ /**
158
+ * Binary search to find nearest index in sorted array
159
+ */
160
+ private findNearestIndex;
161
+ /**
162
+ * Destroy the selection manager
163
+ */
164
+ destroy(): void;
165
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Selection module exports
3
+ */
4
+ export { SelectionManager, type SelectedPoint, type SelectionMode, type PointSelectEvent, type RegionSelectEvent, type SelectionEventMap, type HitTestResult, type SelectionConfig, type SelectionContext, } from './SelectionManager';
@@ -0,0 +1,73 @@
1
+ import { SeriesOptions, SeriesData, SeriesStyle, SeriesUpdateData, Bounds, SeriesType, HeatmapOptions, HeatmapData, HeatmapStyle, PolarOptions, PolarData, GaugeOptions, GaugeData, GaugeStyle, SankeyOptions, SankeyData, SankeyStyle } from '../../types';
2
+
3
+ export declare class Series {
4
+ private id;
5
+ private type;
6
+ private yAxisId?;
7
+ private data;
8
+ private style;
9
+ private visible;
10
+ private name?;
11
+ private stackId?;
12
+ private cycle?;
13
+ private maxPoints?;
14
+ bullishCount: number;
15
+ bearishCount: number;
16
+ waterfallCounts?: {
17
+ positive: number;
18
+ negative: number;
19
+ subtotal: number;
20
+ connectors: number;
21
+ };
22
+ private heatmapData?;
23
+ private heatmapStyle?;
24
+ private polarData?;
25
+ private gaugeData?;
26
+ private gaugeStyle?;
27
+ private sankeyData?;
28
+ private sankeyStyle?;
29
+ private lastAppendCount;
30
+ private cachedBounds;
31
+ private boundsNeedsUpdate;
32
+ private _needsBufferUpdate;
33
+ private smoothedData;
34
+ private smoothingNeedsUpdate;
35
+ constructor(options: SeriesOptions | HeatmapOptions | PolarOptions | GaugeOptions | SankeyOptions);
36
+ getId: () => string;
37
+ getName: () => string;
38
+ getType: () => SeriesType;
39
+ getYAxisId: () => string | undefined;
40
+ setYAxisId: (id: string) => void;
41
+ getStackId: () => string | undefined;
42
+ getVisible: () => boolean;
43
+ isVisible: () => boolean;
44
+ getStyle: () => SeriesStyle;
45
+ getHeatmapData: () => HeatmapData | undefined;
46
+ getHeatmapStyle: () => HeatmapStyle | undefined;
47
+ getPolarData: () => PolarData | undefined;
48
+ getGaugeData: () => GaugeData | undefined;
49
+ getGaugeStyle: () => GaugeStyle | undefined;
50
+ getSankeyData: () => SankeyData | undefined;
51
+ getSankeyStyle: () => SankeyStyle | undefined;
52
+ getCycle: () => number | undefined;
53
+ getPointCount: () => number;
54
+ getLastAppendCount: () => number;
55
+ resetLastAppendCount: () => void;
56
+ hasErrorData: () => boolean;
57
+ getYError: (i: number) => [number, number] | null;
58
+ getXError: (i: number) => [number, number] | null;
59
+ getData(): SeriesData;
60
+ getBounds(): Bounds | null;
61
+ updateData(update: SeriesUpdateData): void;
62
+ setStyle(style: Partial<SeriesStyle>): void;
63
+ setType(type: SeriesType): void;
64
+ /**
65
+ * Invalidate buffers - call this after modifying data directly
66
+ */
67
+ invalidateBuffers(): void;
68
+ setVisible(visible: boolean): void;
69
+ get needsBufferUpdate(): boolean;
70
+ set needsBufferUpdate(val: boolean);
71
+ setMaxPoints(maxPoints: number | undefined): void;
72
+ destroy(): void;
73
+ }
@@ -0,0 +1,3 @@
1
+ import { SeriesData, Bounds, SeriesType, HeatmapData, PolarData } from '../../types';
2
+
3
+ export declare function calculateSeriesBounds(type: SeriesType, data: SeriesData, heatmapData?: HeatmapData, polarData?: PolarData): Bounds;
@@ -0,0 +1,7 @@
1
+ import { SeriesData } from '../../types';
2
+
3
+ export declare function ensureTypedArray(data: Float32Array | Float64Array | number[] | undefined): Float32Array | Float64Array;
4
+ export declare function appendTypedArray(existing: Float32Array | Float64Array, newData: Float32Array | Float64Array): Float32Array | Float64Array;
5
+ export declare function applySmoothing(data: SeriesData, windowSize: number): SeriesData;
6
+ export declare function getYError(data: SeriesData, i: number): [number, number] | null;
7
+ export declare function getXError(data: SeriesData, i: number): [number, number] | null;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Series Barrel Export
3
+ */
4
+ export * from './Series';
5
+ export * from './SeriesBounds';
6
+ export * from './SeriesDataUtils';
@@ -0,0 +1,147 @@
1
+ import { Bounds, Range } from '../../types';
2
+
3
+ export type SyncAxis = 'x' | 'y' | 'xy' | 'none';
4
+ export interface SyncOptions {
5
+ /** Synchronize axis (default: 'x') */
6
+ axis?: SyncAxis;
7
+ /** Synchronize cursor position (default: true) */
8
+ syncCursor?: boolean;
9
+ /** Synchronize selection state (default: false) */
10
+ syncSelection?: boolean;
11
+ /** Synchronize zoom level (default: true) */
12
+ syncZoom?: boolean;
13
+ /** Synchronize pan (default: true) */
14
+ syncPan?: boolean;
15
+ /** Debounce time for sync events in ms (default: 0) */
16
+ debounce?: number;
17
+ /** Enable bidirectional sync (default: true) */
18
+ bidirectional?: boolean;
19
+ }
20
+ export interface ChartLike {
21
+ /** Unique identifier for the chart */
22
+ getId(): string;
23
+ /** Get current view bounds */
24
+ getViewBounds(): Bounds;
25
+ /** Set view bounds (zoom) */
26
+ zoom(options: {
27
+ x?: Range;
28
+ y?: Range;
29
+ animate?: boolean;
30
+ }): void;
31
+ /** Pan the chart */
32
+ pan(dx: number, dy: number): void;
33
+ /** Get cursor position */
34
+ getCursorPosition?(): {
35
+ x: number;
36
+ y: number;
37
+ } | null;
38
+ /** Set external cursor position */
39
+ setExternalCursor?(x: number, y: number): void;
40
+ /** Clear external cursor */
41
+ clearExternalCursor?(): void;
42
+ /** Get selected points */
43
+ getSelectedPoints?(): {
44
+ seriesId: string;
45
+ indices: number[];
46
+ }[];
47
+ /** Set selection */
48
+ selectPoints?(points: {
49
+ seriesId: string;
50
+ indices: number[];
51
+ }[]): void;
52
+ /** Clear selection */
53
+ clearSelection?(): void;
54
+ /** Subscribe to events */
55
+ on(event: string, callback: (...args: unknown[]) => void): void;
56
+ /** Unsubscribe from events */
57
+ off(event: string, callback: (...args: unknown[]) => void): void;
58
+ }
59
+ export interface SyncEvent {
60
+ /** Source chart ID */
61
+ sourceId: string;
62
+ /** Event type */
63
+ type: 'zoom' | 'pan' | 'cursor' | 'selection' | 'bounds';
64
+ /** Event data */
65
+ data: unknown;
66
+ }
67
+ export declare class ChartGroup {
68
+ private charts;
69
+ private options;
70
+ private eventHandlers;
71
+ private isUpdating;
72
+ private debounceTimers;
73
+ constructor(options?: SyncOptions);
74
+ /**
75
+ * Add a chart to the group
76
+ */
77
+ add(chart: ChartLike): this;
78
+ /**
79
+ * Add multiple charts at once
80
+ */
81
+ addAll(...charts: ChartLike[]): this;
82
+ /**
83
+ * Remove a chart from the group
84
+ */
85
+ remove(chart: ChartLike): this;
86
+ /**
87
+ * Get all charts in the group
88
+ */
89
+ getCharts(): ChartLike[];
90
+ /**
91
+ * Get chart count
92
+ */
93
+ size(): number;
94
+ /**
95
+ * Check if a chart is in the group
96
+ */
97
+ has(chart: ChartLike): boolean;
98
+ /**
99
+ * Set synchronization axis
100
+ */
101
+ syncAxis(axis: SyncAxis): this;
102
+ /**
103
+ * Enable/disable cursor synchronization
104
+ */
105
+ syncCursor(enabled: boolean): this;
106
+ /**
107
+ * Enable/disable selection synchronization
108
+ */
109
+ syncSelection(enabled: boolean): this;
110
+ /**
111
+ * Synchronize all charts to a specific view
112
+ */
113
+ syncTo(bounds: Partial<Bounds>, excludeChartId?: string): void;
114
+ /**
115
+ * Reset all charts to auto-scale
116
+ */
117
+ resetAll(): void;
118
+ /**
119
+ * Clear all selections in the group
120
+ */
121
+ clearAllSelections(): void;
122
+ /**
123
+ * Destroy the group and cleanup
124
+ */
125
+ destroy(): void;
126
+ private attachEventHandlers;
127
+ private detachEventHandlers;
128
+ private handleZoom;
129
+ private handlePan;
130
+ private handleCursor;
131
+ private handleSelection;
132
+ private propagateZoom;
133
+ private propagatePan;
134
+ private debounceAction;
135
+ }
136
+ /**
137
+ * Create a chart group with specified charts
138
+ */
139
+ export declare function createChartGroup(charts: ChartLike[], options?: SyncOptions): ChartGroup;
140
+ /**
141
+ * Link two charts for synchronized viewing
142
+ */
143
+ export declare function linkCharts(chart1: ChartLike, chart2: ChartLike, options?: SyncOptions): ChartGroup;
144
+ /**
145
+ * Create a master-slave relationship (master controls slave)
146
+ */
147
+ export declare function createMasterSlave(master: ChartLike, slave: ChartLike, axis?: SyncAxis): ChartGroup;
@@ -0,0 +1,122 @@
1
+ /**
2
+ * Sci Plot - Theme Editor Module
3
+ *
4
+ * Provides a visual theme editor for customizing chart appearance:
5
+ * - Color pickers for all theme elements
6
+ * - Live preview
7
+ * - Theme export/import
8
+ * - Preset theme gallery
9
+ *
10
+ * @module theme-editor
11
+ */
12
+ export type EditorTheme = Record<string, unknown>;
13
+ export interface ThemeEditorOptions {
14
+ /** Base theme to start from */
15
+ baseTheme?: EditorTheme | string;
16
+ /** Enable live preview (default: true) */
17
+ livePreview?: boolean;
18
+ /** Show advanced options (default: false) */
19
+ showAdvanced?: boolean;
20
+ /** Custom CSS class for the editor */
21
+ className?: string;
22
+ /** Callback when theme changes */
23
+ onChange?: (theme: EditorTheme) => void;
24
+ /** Callback when export is requested */
25
+ onExport?: (theme: EditorTheme, json: string) => void;
26
+ }
27
+ export interface ThemePreset {
28
+ /** Preset name */
29
+ name: string;
30
+ /** Description */
31
+ description?: string;
32
+ /** Theme configuration */
33
+ theme: EditorTheme;
34
+ /** Preview colors (for UI) */
35
+ previewColors?: string[];
36
+ /** Tags for filtering */
37
+ tags?: string[];
38
+ }
39
+ export interface ColorGroup {
40
+ /** Group label */
41
+ label: string;
42
+ /** Group description */
43
+ description?: string;
44
+ /** Color properties in this group */
45
+ colors: ColorProperty[];
46
+ }
47
+ export interface ColorProperty {
48
+ /** Property key path (e.g., 'background', 'axis.color') */
49
+ key: string;
50
+ /** Display label */
51
+ label: string;
52
+ /** Description/tooltip */
53
+ description?: string;
54
+ /** Current value */
55
+ value: string;
56
+ /** Default value */
57
+ defaultValue?: string;
58
+ }
59
+ export declare const THEME_PRESETS: ThemePreset[];
60
+ export declare class ThemeEditor {
61
+ private container;
62
+ private options;
63
+ private currentTheme;
64
+ private element;
65
+ constructor(container: HTMLElement, options?: ThemeEditorOptions);
66
+ /**
67
+ * Get current theme
68
+ */
69
+ getTheme(): EditorTheme;
70
+ /**
71
+ * Set theme
72
+ */
73
+ setTheme(theme: EditorTheme | string): void;
74
+ /**
75
+ * Update a specific theme property
76
+ */
77
+ updateProperty(key: string, value: string): void;
78
+ /**
79
+ * Export theme as JSON
80
+ */
81
+ exportTheme(): string;
82
+ /**
83
+ * Import theme from JSON
84
+ */
85
+ importTheme(json: string): void;
86
+ /**
87
+ * Get theme preset by name
88
+ */
89
+ getPreset(name: string): ThemePreset | undefined;
90
+ /**
91
+ * Apply a preset
92
+ */
93
+ applyPreset(name: string): void;
94
+ /**
95
+ * Get all available presets
96
+ */
97
+ getPresets(): ThemePreset[];
98
+ /**
99
+ * Destroy the editor
100
+ */
101
+ destroy(): void;
102
+ private resolveTheme;
103
+ private setNestedValue;
104
+ private getNestedValue;
105
+ private notifyChange;
106
+ private render;
107
+ private generateHTML;
108
+ private normalizeColor;
109
+ private attachEventListeners;
110
+ }
111
+ /**
112
+ * Create a theme editor instance
113
+ */
114
+ export declare function createThemeEditor(container: HTMLElement, options?: ThemeEditorOptions): ThemeEditor;
115
+ /**
116
+ * Get a preset theme by name
117
+ */
118
+ export declare function getPresetTheme(name: string): EditorTheme | undefined;
119
+ /**
120
+ * Get all preset names
121
+ */
122
+ export declare function getPresetNames(): string[];
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Sci Plot - Plugin Demonstration Examples
3
+ *
4
+ * This file contains 3 comprehensive examples of how to use the mới modular plugin architecture.
5
+ */
6
+ /**
7
+ * Demonstrates how to combine the Debug plugin for performance metrics
8
+ * and the Analysis plugin for real-time signal processing.
9
+ */
10
+ export declare function examplePerformanceAndAnalysis(container: HTMLDivElement): Promise<import('..').Chart>;
11
+ /**
12
+ * Demonstrates the Streaming plugin capabilities, including WebSocket
13
+ * integration and backpressure management for high-frequency data.
14
+ */
15
+ export declare function exampleAdvancedStreaming(container: HTMLDivElement): Promise<import('..').Chart>;
16
+ /**
17
+ * Demonstrates how to use the i18n plugin for multiple languages
18
+ * and the ThemeEditor for visual customization.
19
+ */
20
+ export declare function exampleCustomization(container: HTMLDivElement): Promise<import('..').Chart>;
@@ -0,0 +1,25 @@
1
+ import { createChart } from './index';
2
+
3
+ /**
4
+ * Example: Basic CV Plot
5
+ */
6
+ export declare function exampleBasicCV(): import('./index.core').Chart;
7
+ /**
8
+ * Example: FFT of sine, square, and mixed waves
9
+ */
10
+ export declare function exampleFFTWaveforms(target?: HTMLDivElement): {
11
+ destroy(): void;
12
+ };
13
+ /**
14
+ * Example: Streaming data (real-time)
15
+ */
16
+ export declare function exampleStreaming(): () => void;
17
+ /**
18
+ * Example: Multi-cycle CV with cycle detection
19
+ */
20
+ export declare function exampleMultiCycle(): import('./index.core').Chart;
21
+ /**
22
+ * Example: Zoom controls
23
+ */
24
+ export declare function exampleZoomControls(chart: ReturnType<typeof createChart>): void;
25
+ export { createChart };