@363045841yyt/klinechart-core 0.9.0-alpha.0 → 0.9.0-alpha.2

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 (372) hide show
  1. package/dist/controllers/createChartController.d.ts.map +1 -1
  2. package/dist/controllers/createChartController.js +31 -13
  3. package/dist/controllers/createChartController.js.map +1 -1
  4. package/dist/controllers/index.d.ts +1 -0
  5. package/dist/controllers/index.d.ts.map +1 -1
  6. package/dist/controllers/index.js.map +1 -1
  7. package/dist/controllers/types.d.ts +12 -0
  8. package/dist/controllers/types.d.ts.map +1 -1
  9. package/dist/engine/chart.d.ts +29 -11
  10. package/dist/engine/chart.d.ts.map +1 -1
  11. package/dist/engine/chart.js +147 -25
  12. package/dist/engine/chart.js.map +1 -1
  13. package/dist/engine/controller/interaction.d.ts +29 -4
  14. package/dist/engine/controller/interaction.d.ts.map +1 -1
  15. package/dist/engine/controller/interaction.js +78 -31
  16. package/dist/engine/controller/interaction.js.map +1 -1
  17. package/dist/engine/data/incrementalLoadHint.d.ts.map +1 -1
  18. package/dist/engine/data/incrementalLoadHint.js +5 -1
  19. package/dist/engine/data/incrementalLoadHint.js.map +1 -1
  20. package/dist/engine/drawing/DrawingState.d.ts +19 -34
  21. package/dist/engine/drawing/DrawingState.d.ts.map +1 -1
  22. package/dist/engine/drawing/DrawingState.js +110 -92
  23. package/dist/engine/drawing/DrawingState.js.map +1 -1
  24. package/dist/engine/drawing/index.d.ts +4 -1
  25. package/dist/engine/drawing/index.d.ts.map +1 -1
  26. package/dist/engine/drawing/index.js +9 -4
  27. package/dist/engine/drawing/index.js.map +1 -1
  28. package/dist/engine/drawing/interaction.d.ts +9 -29
  29. package/dist/engine/drawing/interaction.d.ts.map +1 -1
  30. package/dist/engine/drawing/interaction.js +23 -40
  31. package/dist/engine/drawing/interaction.js.map +1 -1
  32. package/dist/engine/indicators/chartIndicatorManager.d.ts.map +1 -1
  33. package/dist/engine/indicators/chartIndicatorManager.js +4 -12
  34. package/dist/engine/indicators/chartIndicatorManager.js.map +1 -1
  35. package/dist/engine/layout/chartPaneLayout.d.ts +0 -2
  36. package/dist/engine/layout/chartPaneLayout.d.ts.map +1 -1
  37. package/dist/engine/layout/chartPaneLayout.js +5 -9
  38. package/dist/engine/layout/chartPaneLayout.js.map +1 -1
  39. package/dist/engine/layout/pane.d.ts +0 -39
  40. package/dist/engine/layout/pane.d.ts.map +1 -1
  41. package/dist/engine/layout/pane.js +0 -9
  42. package/dist/engine/layout/pane.js.map +1 -1
  43. package/dist/engine/paneRenderer.d.ts +1 -10
  44. package/dist/engine/paneRenderer.d.ts.map +1 -1
  45. package/dist/engine/paneRenderer.js +2 -19
  46. package/dist/engine/paneRenderer.js.map +1 -1
  47. package/dist/engine/render/chartRenderer.d.ts +49 -8
  48. package/dist/engine/render/chartRenderer.d.ts.map +1 -1
  49. package/dist/engine/render/chartRenderer.js +143 -72
  50. package/dist/engine/render/chartRenderer.js.map +1 -1
  51. package/dist/engine/renderers/Indicator/atr.js +3 -13
  52. package/dist/engine/renderers/Indicator/atr.js.map +1 -1
  53. package/dist/engine/renderers/Indicator/boll.d.ts.map +1 -1
  54. package/dist/engine/renderers/Indicator/boll.js +12 -24
  55. package/dist/engine/renderers/Indicator/boll.js.map +1 -1
  56. package/dist/engine/renderers/Indicator/cci.js +6 -13
  57. package/dist/engine/renderers/Indicator/cci.js.map +1 -1
  58. package/dist/engine/renderers/Indicator/chaikinVol.js +3 -11
  59. package/dist/engine/renderers/Indicator/chaikinVol.js.map +1 -1
  60. package/dist/engine/renderers/Indicator/cmf.js +3 -11
  61. package/dist/engine/renderers/Indicator/cmf.js.map +1 -1
  62. package/dist/engine/renderers/Indicator/dema.js +3 -11
  63. package/dist/engine/renderers/Indicator/dema.js.map +1 -1
  64. package/dist/engine/renderers/Indicator/donchian.js +3 -11
  65. package/dist/engine/renderers/Indicator/donchian.js.map +1 -1
  66. package/dist/engine/renderers/Indicator/ene.d.ts.map +1 -1
  67. package/dist/engine/renderers/Indicator/ene.js +12 -24
  68. package/dist/engine/renderers/Indicator/ene.js.map +1 -1
  69. package/dist/engine/renderers/Indicator/expma.d.ts.map +1 -1
  70. package/dist/engine/renderers/Indicator/expma.js +5 -11
  71. package/dist/engine/renderers/Indicator/expma.js.map +1 -1
  72. package/dist/engine/renderers/Indicator/fastk.js +6 -13
  73. package/dist/engine/renderers/Indicator/fastk.js.map +1 -1
  74. package/dist/engine/renderers/Indicator/fib.js +3 -11
  75. package/dist/engine/renderers/Indicator/fib.js.map +1 -1
  76. package/dist/engine/renderers/Indicator/hma.js +3 -11
  77. package/dist/engine/renderers/Indicator/hma.js.map +1 -1
  78. package/dist/engine/renderers/Indicator/hv.js +3 -11
  79. package/dist/engine/renderers/Indicator/hv.js.map +1 -1
  80. package/dist/engine/renderers/Indicator/ichimoku.js +24 -18
  81. package/dist/engine/renderers/Indicator/ichimoku.js.map +1 -1
  82. package/dist/engine/renderers/Indicator/kama.js +3 -11
  83. package/dist/engine/renderers/Indicator/kama.js.map +1 -1
  84. package/dist/engine/renderers/Indicator/keltner.js +3 -11
  85. package/dist/engine/renderers/Indicator/keltner.js.map +1 -1
  86. package/dist/engine/renderers/Indicator/kst.js +9 -17
  87. package/dist/engine/renderers/Indicator/kst.js.map +1 -1
  88. package/dist/engine/renderers/Indicator/ma.d.ts.map +1 -1
  89. package/dist/engine/renderers/Indicator/ma.js +10 -21
  90. package/dist/engine/renderers/Indicator/ma.js.map +1 -1
  91. package/dist/engine/renderers/Indicator/macd.js +14 -44
  92. package/dist/engine/renderers/Indicator/macd.js.map +1 -1
  93. package/dist/engine/renderers/Indicator/mfi.js +3 -11
  94. package/dist/engine/renderers/Indicator/mfi.js.map +1 -1
  95. package/dist/engine/renderers/Indicator/mom.js +6 -13
  96. package/dist/engine/renderers/Indicator/mom.js.map +1 -1
  97. package/dist/engine/renderers/Indicator/obv.js +3 -11
  98. package/dist/engine/renderers/Indicator/obv.js.map +1 -1
  99. package/dist/engine/renderers/Indicator/parkinson.js +3 -11
  100. package/dist/engine/renderers/Indicator/parkinson.js.map +1 -1
  101. package/dist/engine/renderers/Indicator/pvt.js +3 -11
  102. package/dist/engine/renderers/Indicator/pvt.js.map +1 -1
  103. package/dist/engine/renderers/Indicator/roc.js +3 -11
  104. package/dist/engine/renderers/Indicator/roc.js.map +1 -1
  105. package/dist/engine/renderers/Indicator/rsi.js +12 -20
  106. package/dist/engine/renderers/Indicator/rsi.js.map +1 -1
  107. package/dist/engine/renderers/Indicator/shared/webglBand.d.ts +0 -2
  108. package/dist/engine/renderers/Indicator/shared/webglBand.d.ts.map +1 -1
  109. package/dist/engine/renderers/Indicator/shared/webglBand.js +0 -6
  110. package/dist/engine/renderers/Indicator/shared/webglBand.js.map +1 -1
  111. package/dist/engine/renderers/Indicator/stoch.js +9 -17
  112. package/dist/engine/renderers/Indicator/stoch.js.map +1 -1
  113. package/dist/engine/renderers/Indicator/tema.js +3 -11
  114. package/dist/engine/renderers/Indicator/tema.js.map +1 -1
  115. package/dist/engine/renderers/Indicator/trix.js +3 -11
  116. package/dist/engine/renderers/Indicator/trix.js.map +1 -1
  117. package/dist/engine/renderers/Indicator/vma.js +3 -11
  118. package/dist/engine/renderers/Indicator/vma.js.map +1 -1
  119. package/dist/engine/renderers/Indicator/vwap.js +3 -11
  120. package/dist/engine/renderers/Indicator/vwap.js.map +1 -1
  121. package/dist/engine/renderers/Indicator/wma.js +3 -11
  122. package/dist/engine/renderers/Indicator/wma.js.map +1 -1
  123. package/dist/engine/renderers/Indicator/wmsr.js +6 -13
  124. package/dist/engine/renderers/Indicator/wmsr.js.map +1 -1
  125. package/dist/engine/renderers/candle.d.ts.map +1 -1
  126. package/dist/engine/renderers/candle.js +21 -28
  127. package/dist/engine/renderers/candle.js.map +1 -1
  128. package/dist/engine/renderers/candleViaRenderer.d.ts +19 -0
  129. package/dist/engine/renderers/candleViaRenderer.d.ts.map +1 -0
  130. package/dist/engine/renderers/candleViaRenderer.js +15 -0
  131. package/dist/engine/renderers/candleViaRenderer.js.map +1 -0
  132. package/dist/engine/renderers/linesViaRenderer.d.ts +55 -0
  133. package/dist/engine/renderers/linesViaRenderer.d.ts.map +1 -0
  134. package/dist/engine/renderers/linesViaRenderer.js +169 -0
  135. package/dist/engine/renderers/linesViaRenderer.js.map +1 -0
  136. package/dist/engine/renderers/rectsViaRenderer.d.ts +18 -0
  137. package/dist/engine/renderers/rectsViaRenderer.d.ts.map +1 -0
  138. package/dist/engine/renderers/rectsViaRenderer.js +63 -0
  139. package/dist/engine/renderers/rectsViaRenderer.js.map +1 -0
  140. package/dist/engine/renderers/subVolume.js +7 -26
  141. package/dist/engine/renderers/subVolume.js.map +1 -1
  142. package/dist/engine/renderers/timeAxis.js +1 -1
  143. package/dist/engine/renderers/timeAxis.js.map +1 -1
  144. package/dist/engine/state/chartStateKernel.d.ts +11 -2
  145. package/dist/engine/state/chartStateKernel.d.ts.map +1 -1
  146. package/dist/engine/state/chartStateKernel.js +28 -12
  147. package/dist/engine/state/chartStateKernel.js.map +1 -1
  148. package/dist/engine/state/index.d.ts +1 -1
  149. package/dist/engine/state/index.d.ts.map +1 -1
  150. package/dist/engine/state/index.js +1 -1
  151. package/dist/engine/state/index.js.map +1 -1
  152. package/dist/engine/state/interactionState.d.ts +15 -7
  153. package/dist/engine/state/interactionState.d.ts.map +1 -1
  154. package/dist/engine/state/interactionState.js +55 -60
  155. package/dist/engine/state/interactionState.js.map +1 -1
  156. package/dist/engine/state/rendererState.d.ts +14 -0
  157. package/dist/engine/state/rendererState.d.ts.map +1 -0
  158. package/dist/engine/state/rendererState.js +25 -0
  159. package/dist/engine/state/rendererState.js.map +1 -0
  160. package/dist/engine/state/themeState.d.ts +11 -4
  161. package/dist/engine/state/themeState.d.ts.map +1 -1
  162. package/dist/engine/state/themeState.js +13 -5
  163. package/dist/engine/state/themeState.js.map +1 -1
  164. package/dist/engine/state/viewportState.d.ts.map +1 -1
  165. package/dist/engine/state/viewportState.js +7 -3
  166. package/dist/engine/state/viewportState.js.map +1 -1
  167. package/dist/engine/subPaneManager.d.ts.map +1 -1
  168. package/dist/engine/subPaneManager.js +2 -10
  169. package/dist/engine/subPaneManager.js.map +1 -1
  170. package/dist/foundation/config/chartSettings.d.ts +16 -4
  171. package/dist/foundation/config/chartSettings.d.ts.map +1 -1
  172. package/dist/foundation/config/chartSettings.js +21 -6
  173. package/dist/foundation/config/chartSettings.js.map +1 -1
  174. package/dist/foundation/plugin/index.d.ts +0 -1
  175. package/dist/foundation/plugin/index.d.ts.map +1 -1
  176. package/dist/foundation/plugin/rendererPluginManager.d.ts +1 -22
  177. package/dist/foundation/plugin/rendererPluginManager.d.ts.map +1 -1
  178. package/dist/foundation/plugin/rendererPluginManager.js +0 -84
  179. package/dist/foundation/plugin/rendererPluginManager.js.map +1 -1
  180. package/dist/foundation/plugin/types.d.ts +11 -17
  181. package/dist/foundation/plugin/types.d.ts.map +1 -1
  182. package/dist/foundation/plugin/types.js.map +1 -1
  183. package/dist/foundation/reactivity/frameTransaction.d.ts +71 -0
  184. package/dist/foundation/reactivity/frameTransaction.d.ts.map +1 -0
  185. package/dist/foundation/reactivity/frameTransaction.js +170 -0
  186. package/dist/foundation/reactivity/frameTransaction.js.map +1 -0
  187. package/dist/foundation/reactivity/index.d.ts +4 -2
  188. package/dist/foundation/reactivity/index.d.ts.map +1 -1
  189. package/dist/foundation/reactivity/index.js +2 -1
  190. package/dist/foundation/reactivity/index.js.map +1 -1
  191. package/dist/foundation/reactivity/signal.d.ts +20 -0
  192. package/dist/foundation/reactivity/signal.d.ts.map +1 -1
  193. package/dist/foundation/reactivity/signal.js +27 -0
  194. package/dist/foundation/reactivity/signal.js.map +1 -1
  195. package/dist/foundation/tokens/theme-dark.d.ts.map +1 -1
  196. package/dist/foundation/tokens/theme-dark.js +2 -1
  197. package/dist/foundation/tokens/theme-dark.js.map +1 -1
  198. package/dist/foundation/tokens/theme-light.d.ts.map +1 -1
  199. package/dist/foundation/tokens/theme-light.js +2 -1
  200. package/dist/foundation/tokens/theme-light.js.map +1 -1
  201. package/dist/rendering/render/Renderer.d.ts +29 -14
  202. package/dist/rendering/render/Renderer.d.ts.map +1 -1
  203. package/dist/rendering/render/Renderer.js +3 -10
  204. package/dist/rendering/render/Renderer.js.map +1 -1
  205. package/dist/rendering/render/SurfaceBackend.d.ts +5 -7
  206. package/dist/rendering/render/SurfaceBackend.d.ts.map +1 -1
  207. package/dist/rendering/render/SurfaceBackend.js +5 -7
  208. package/dist/rendering/render/SurfaceBackend.js.map +1 -1
  209. package/dist/rendering/render/createCanvas2DRenderer.d.ts +3 -0
  210. package/dist/rendering/render/createCanvas2DRenderer.d.ts.map +1 -0
  211. package/dist/rendering/render/createCanvas2DRenderer.js +74 -0
  212. package/dist/rendering/render/createCanvas2DRenderer.js.map +1 -0
  213. package/dist/rendering/render/createDefaultRendererHost.d.ts +4 -0
  214. package/dist/rendering/render/createDefaultRendererHost.d.ts.map +1 -0
  215. package/dist/rendering/render/createDefaultRendererHost.js +54 -0
  216. package/dist/rendering/render/createDefaultRendererHost.js.map +1 -0
  217. package/dist/rendering/render/createWebGLRenderer.d.ts.map +1 -1
  218. package/dist/rendering/render/createWebGLRenderer.js +42 -80
  219. package/dist/rendering/render/createWebGLRenderer.js.map +1 -1
  220. package/dist/rendering/render/createWebGPURenderer.d.ts +11 -0
  221. package/dist/rendering/render/createWebGPURenderer.d.ts.map +1 -0
  222. package/dist/rendering/render/createWebGPURenderer.js +619 -0
  223. package/dist/rendering/render/createWebGPURenderer.js.map +1 -0
  224. package/dist/rendering/render/createWebGPUSurfaceBackend.d.ts +15 -0
  225. package/dist/rendering/render/createWebGPUSurfaceBackend.d.ts.map +1 -0
  226. package/dist/rendering/render/createWebGPUSurfaceBackend.js +92 -0
  227. package/dist/rendering/render/createWebGPUSurfaceBackend.js.map +1 -0
  228. package/dist/rendering/render/frameMetrics.d.ts +19 -0
  229. package/dist/rendering/render/frameMetrics.d.ts.map +1 -0
  230. package/dist/rendering/render/frameMetrics.js +43 -0
  231. package/dist/rendering/render/frameMetrics.js.map +1 -0
  232. package/dist/rendering/render/index.d.ts +10 -0
  233. package/dist/rendering/render/index.d.ts.map +1 -1
  234. package/dist/rendering/render/index.js +6 -0
  235. package/dist/rendering/render/index.js.map +1 -1
  236. package/dist/rendering/render/rendererHost.d.ts +34 -0
  237. package/dist/rendering/render/rendererHost.d.ts.map +1 -0
  238. package/dist/rendering/render/rendererHost.js +144 -0
  239. package/dist/rendering/render/rendererHost.js.map +1 -0
  240. package/dist/rendering/render/webgpuResourceTable.d.ts +25 -0
  241. package/dist/rendering/render/webgpuResourceTable.d.ts.map +1 -0
  242. package/dist/rendering/render/webgpuResourceTable.js +54 -0
  243. package/dist/rendering/render/webgpuResourceTable.js.map +1 -0
  244. package/dist/rendering/scene/createLayerFromPlugin.d.ts.map +1 -1
  245. package/dist/rendering/scene/createLayerFromPlugin.js +10 -2
  246. package/dist/rendering/scene/createLayerFromPlugin.js.map +1 -1
  247. package/dist/rendering/scene/layerRegistry.d.ts +3 -5
  248. package/dist/rendering/scene/layerRegistry.d.ts.map +1 -1
  249. package/dist/rendering/scene/layerRegistry.js +1 -1
  250. package/dist/rendering/scene/layerRegistry.js.map +1 -1
  251. package/dist/rendering/scene/retainedScene.d.ts +60 -0
  252. package/dist/rendering/scene/retainedScene.d.ts.map +1 -0
  253. package/dist/rendering/scene/retainedScene.js +42 -0
  254. package/dist/rendering/scene/retainedScene.js.map +1 -0
  255. package/dist/version.d.ts +1 -1
  256. package/dist/version.js +1 -1
  257. package/package.json +2 -1
  258. package/src/__tests__/signal.test.ts +47 -1
  259. package/src/controllers/__tests__/createChartController.theme.test.ts +102 -0
  260. package/src/controllers/createChartController.ts +36 -12
  261. package/src/controllers/index.ts +5 -0
  262. package/src/controllers/types.ts +14 -0
  263. package/src/engine/__tests__/chart.dpr.test.ts +64 -0
  264. package/src/engine/__tests__/paneRenderer.resize.test.ts +0 -7
  265. package/src/engine/__tests__/renderSinglePath.test.ts +121 -0
  266. package/src/engine/chart.ts +172 -25
  267. package/src/engine/controller/__tests__/interaction.dpr.test.ts +45 -41
  268. package/src/engine/controller/interaction.ts +81 -30
  269. package/src/engine/data/__tests__/chartDataManager.incrementalLoad.test.ts +1 -0
  270. package/src/engine/data/incrementalLoadHint.ts +6 -1
  271. package/src/engine/drawing/DrawingState.ts +107 -89
  272. package/src/engine/drawing/__tests__/drawingState.workCopy.test.ts +95 -36
  273. package/src/engine/drawing/__tests__/drawingStore.projection.test.ts +22 -0
  274. package/src/engine/drawing/index.ts +12 -4
  275. package/src/engine/drawing/interaction.ts +25 -40
  276. package/src/engine/indicators/chartIndicatorManager.ts +6 -16
  277. package/src/engine/layout/chartPaneLayout.ts +6 -11
  278. package/src/engine/layout/pane.ts +0 -44
  279. package/src/engine/paneRenderer.ts +3 -34
  280. package/src/engine/render/chartRenderer.ts +181 -81
  281. package/src/engine/renderers/Indicator/atr.ts +5 -17
  282. package/src/engine/renderers/Indicator/boll.ts +15 -26
  283. package/src/engine/renderers/Indicator/cci.ts +7 -17
  284. package/src/engine/renderers/Indicator/chaikinVol.ts +3 -15
  285. package/src/engine/renderers/Indicator/cmf.ts +3 -15
  286. package/src/engine/renderers/Indicator/dema.ts +3 -15
  287. package/src/engine/renderers/Indicator/donchian.ts +3 -12
  288. package/src/engine/renderers/Indicator/ene.ts +15 -25
  289. package/src/engine/renderers/Indicator/expma.ts +4 -13
  290. package/src/engine/renderers/Indicator/fastk.ts +7 -17
  291. package/src/engine/renderers/Indicator/fib.ts +3 -12
  292. package/src/engine/renderers/Indicator/hma.ts +3 -15
  293. package/src/engine/renderers/Indicator/hv.ts +3 -15
  294. package/src/engine/renderers/Indicator/ichimoku.ts +21 -24
  295. package/src/engine/renderers/Indicator/kama.ts +3 -15
  296. package/src/engine/renderers/Indicator/keltner.ts +3 -12
  297. package/src/engine/renderers/Indicator/kst.ts +9 -20
  298. package/src/engine/renderers/Indicator/ma.ts +9 -21
  299. package/src/engine/renderers/Indicator/macd.ts +27 -102
  300. package/src/engine/renderers/Indicator/mfi.ts +3 -15
  301. package/src/engine/renderers/Indicator/mom.ts +7 -17
  302. package/src/engine/renderers/Indicator/obv.ts +3 -15
  303. package/src/engine/renderers/Indicator/parkinson.ts +3 -15
  304. package/src/engine/renderers/Indicator/pvt.ts +3 -15
  305. package/src/engine/renderers/Indicator/roc.ts +3 -15
  306. package/src/engine/renderers/Indicator/rsi.ts +12 -23
  307. package/src/engine/renderers/Indicator/shared/webglBand.ts +0 -13
  308. package/src/engine/renderers/Indicator/stoch.ts +9 -20
  309. package/src/engine/renderers/Indicator/tema.ts +3 -15
  310. package/src/engine/renderers/Indicator/trix.ts +3 -12
  311. package/src/engine/renderers/Indicator/vma.ts +3 -15
  312. package/src/engine/renderers/Indicator/vwap.ts +3 -15
  313. package/src/engine/renderers/Indicator/wma.ts +3 -15
  314. package/src/engine/renderers/Indicator/wmsr.ts +7 -17
  315. package/src/engine/renderers/__tests__/candle.sceneRenderer.test.ts +208 -0
  316. package/src/engine/renderers/__tests__/candleViaRenderer.test.ts +100 -0
  317. package/src/engine/renderers/__tests__/linesViaRenderer.test.ts +263 -0
  318. package/src/engine/renderers/__tests__/rectsViaRenderer.test.ts +87 -0
  319. package/src/engine/renderers/candle.ts +26 -69
  320. package/src/engine/renderers/candleViaRenderer.ts +38 -0
  321. package/src/engine/renderers/linesViaRenderer.ts +226 -0
  322. package/src/engine/renderers/rectsViaRenderer.ts +83 -0
  323. package/src/engine/renderers/subVolume.ts +9 -61
  324. package/src/engine/renderers/timeAxis.ts +1 -1
  325. package/src/engine/state/__tests__/effectiveTheme.test.ts +49 -0
  326. package/src/engine/state/__tests__/rendererState.test.ts +36 -0
  327. package/src/engine/state/__tests__/settingsState.test.ts +1 -1
  328. package/src/engine/state/chartStateKernel.ts +38 -17
  329. package/src/engine/state/index.ts +6 -1
  330. package/src/engine/state/interactionState.ts +73 -102
  331. package/src/engine/state/rendererState.ts +32 -0
  332. package/src/engine/state/themeState.ts +15 -8
  333. package/src/engine/state/viewportState.ts +6 -3
  334. package/src/engine/subPaneManager.ts +2 -16
  335. package/src/foundation/config/__tests__/chartSettings.test.ts +25 -0
  336. package/src/foundation/config/chartSettings.ts +24 -7
  337. package/src/foundation/plugin/index.ts +0 -1
  338. package/src/foundation/plugin/rendererPluginManager.ts +0 -99
  339. package/src/foundation/plugin/types.ts +11 -18
  340. package/src/foundation/reactivity/__tests__/frameTransaction.test.ts +306 -0
  341. package/src/foundation/reactivity/frameTransaction.ts +239 -0
  342. package/src/foundation/reactivity/index.ts +8 -0
  343. package/src/foundation/reactivity/signal.ts +39 -0
  344. package/src/foundation/tokens/__tests__/__snapshots__/baseline.test.ts.snap +2 -2
  345. package/src/foundation/tokens/theme-dark.ts +2 -1
  346. package/src/foundation/tokens/theme-light.ts +2 -1
  347. package/src/rendering/render/Renderer.ts +27 -14
  348. package/src/rendering/render/SurfaceBackend.ts +5 -7
  349. package/src/rendering/render/__tests__/canvas2DRenderer.test.ts +34 -0
  350. package/src/rendering/render/__tests__/contract.test.ts +2 -2
  351. package/src/rendering/render/__tests__/frameMetrics.test.ts +24 -0
  352. package/src/rendering/render/__tests__/rendererHost.test.ts +157 -0
  353. package/src/rendering/render/__tests__/webglRenderer.fallback.test.ts +14 -74
  354. package/src/rendering/render/__tests__/webglRenderer.test.ts +64 -6
  355. package/src/rendering/render/__tests__/webgpuRenderer.test.ts +370 -0
  356. package/src/rendering/render/__tests__/webgpuResourceTable.test.ts +62 -0
  357. package/src/rendering/render/__tests__/webgpuSurfaceBackend.test.ts +120 -0
  358. package/src/rendering/render/createCanvas2DRenderer.ts +83 -0
  359. package/src/rendering/render/createDefaultRendererHost.ts +74 -0
  360. package/src/rendering/render/createWebGLRenderer.ts +41 -87
  361. package/src/rendering/render/createWebGPURenderer.ts +677 -0
  362. package/src/rendering/render/createWebGPUSurfaceBackend.ts +106 -0
  363. package/src/rendering/render/frameMetrics.ts +54 -0
  364. package/src/rendering/render/index.ts +30 -0
  365. package/src/rendering/render/rendererHost.ts +210 -0
  366. package/src/rendering/render/webgpuResourceTable.ts +87 -0
  367. package/src/rendering/scene/__tests__/layerFromPlugin.test.ts +29 -2
  368. package/src/rendering/scene/__tests__/retainedScene.test.ts +59 -0
  369. package/src/rendering/scene/createLayerFromPlugin.ts +9 -2
  370. package/src/rendering/scene/layerRegistry.ts +4 -6
  371. package/src/rendering/scene/retainedScene.ts +101 -0
  372. package/src/version.ts +1 -1
@@ -0,0 +1,71 @@
1
+ /**
2
+ * 帧事务:高频输入集中写入,每帧最多发布一次不可变快照。
3
+ *
4
+ * @remarks
5
+ * 解决两类问题:
6
+ * 1. pointermove 等事件若直接写普通 Signal,会按事件频率广播订阅者。
7
+ * 2. latest 与 published 双视图会让不同模块读到不同代际状态。
8
+ *
9
+ * 本原语只暴露 pending 写入与 published 快照,不暴露公开 latest。
10
+ * 一帧固定走 capture → derive → seal → render → publish → complete。
11
+ * render 或 publish 期间的 writeInput 一律进入下一代 pending。
12
+ * 非 idle 时调用 flush 不会嵌套发布,仅保留 dirty 供外层完成后调度。
13
+ */
14
+ import { type ReadonlySignal } from './signal';
15
+ /** 帧事务所处阶段;用于隔离重入写入 */
16
+ export type FramePhase = 'idle' | 'capturing' | 'deriving' | 'sealing' | 'rendering' | 'publishing';
17
+ export interface FrameTransactionOptions<TInput extends Record<string, unknown>, TSnapshot> {
18
+ /** 初始 pending 输入;也会用于生成 generation 0 的占位 published */
19
+ initialInput: TInput;
20
+ /**
21
+ * 由封存输入纯推导快照。
22
+ * 不得写外部 kernel / DOM;失败则本帧不发布。
23
+ */
24
+ derive: (input: Readonly<TInput>, generation: number) => TSnapshot;
25
+ /**
26
+ * 可选:使用本帧快照绘制或执行副作用。
27
+ * 此阶段 writeInput 进入下一代,不得假定能改当前快照。
28
+ */
29
+ render?: (snapshot: Readonly<TSnapshot>) => void;
30
+ /**
31
+ * 调度 flush 的宿主。默认 requestAnimationFrame;测试可注入同步队列。
32
+ * 返回值可忽略(兼容 rAF handle)。
33
+ */
34
+ schedule?: (run: () => void) => unknown;
35
+ }
36
+ export interface FrameTransaction<TInput extends Record<string, unknown>, TSnapshot> {
37
+ /** 最近一次成功发布的快照(只读 Signal) */
38
+ readonly published$: ReadonlySignal<Readonly<TSnapshot>>;
39
+ /** 已成功发布的帧代际;失败 flush 不增加 */
40
+ readonly generation: number;
41
+ /** 当前阶段,调试与不变量检查用 */
42
+ readonly phase: FramePhase;
43
+ /**
44
+ * 合并高频输入。idle 写入当前 pending;非 idle 写入 nextPending。
45
+ * 不触发订阅通知。
46
+ */
47
+ writeInput(patch: Partial<TInput>): void;
48
+ /**
49
+ * 同步执行一帧事务。无 pending 时返回当前 published,且不通知。
50
+ * 非 idle 调用不会嵌套发布,返回当前 published。
51
+ * @returns 本帧使用的快照(成功时等于 published$.peek())
52
+ */
53
+ flush(): Readonly<TSnapshot>;
54
+ /**
55
+ * 请求在宿主调度器上合并 flush;多次调用在同一 pending 调度内只注册一次。
56
+ */
57
+ scheduleFlush(): void;
58
+ /**
59
+ * 从 published 投影只读 Signal。
60
+ * 仅当 select 结果相对上一值 Object.is 不等时通知。
61
+ */
62
+ select<T>(selector: (snapshot: Readonly<TSnapshot>) => T): ReadonlySignal<T>;
63
+ }
64
+ /**
65
+ * 创建帧事务控制器。
66
+ *
67
+ * @typeParam TInput - 可合并的输入形状(浅层 Partial 合并)
68
+ * @typeParam TSnapshot - derive 产出的不可变快照类型
69
+ */
70
+ export declare function createFrameTransaction<TInput extends Record<string, unknown>, TSnapshot>(options: FrameTransactionOptions<TInput, TSnapshot>): FrameTransaction<TInput, TSnapshot>;
71
+ //# sourceMappingURL=frameTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frameTransaction.d.ts","sourceRoot":"","sources":["../../../src/foundation/reactivity/frameTransaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAE5D,uBAAuB;AACvB,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,YAAY,CAAA;AAkBnG,MAAM,WAAW,uBAAuB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;IACxF,sDAAsD;IACtD,YAAY,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,KAAK,SAAS,CAAA;IAClE;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,IAAI,CAAA;IAChD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,IAAI,KAAK,OAAO,CAAA;CACxC;AAED,MAAM,WAAW,gBAAgB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;IACjF,6BAA6B;IAC7B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;IACxD,6BAA6B;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,qBAAqB;IACrB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B;;;OAGG;IACH,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;IACxC;;;;OAIG;IACH,KAAK,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAA;IAC5B;;OAEG;IACH,aAAa,IAAI,IAAI,CAAA;IACrB;;;OAGG;IACH,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;CAC7E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,SAAS,EACT,OAAO,EAAE,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAiJ1F"}
@@ -0,0 +1,170 @@
1
+ /**
2
+ * 帧事务:高频输入集中写入,每帧最多发布一次不可变快照。
3
+ *
4
+ * @remarks
5
+ * 解决两类问题:
6
+ * 1. pointermove 等事件若直接写普通 Signal,会按事件频率广播订阅者。
7
+ * 2. latest 与 published 双视图会让不同模块读到不同代际状态。
8
+ *
9
+ * 本原语只暴露 pending 写入与 published 快照,不暴露公开 latest。
10
+ * 一帧固定走 capture → derive → seal → render → publish → complete。
11
+ * render 或 publish 期间的 writeInput 一律进入下一代 pending。
12
+ * 非 idle 时调用 flush 不会嵌套发布,仅保留 dirty 供外层完成后调度。
13
+ */
14
+ import { createSignal } from './signal';
15
+ /**
16
+ * 浅合并输入补丁。
17
+ * 仅顶层键覆盖,不递归合并嵌套对象。
18
+ */
19
+ function mergeInput(base, patch) {
20
+ return { ...base, ...patch };
21
+ }
22
+ /** 浅冻结快照根对象;大数组字段由 derive 侧结构共享,禁止深拷贝 */
23
+ function sealSnapshotRoot(snapshot) {
24
+ if (typeof snapshot === 'object' && snapshot !== null) {
25
+ Object.freeze(snapshot);
26
+ }
27
+ return snapshot;
28
+ }
29
+ /**
30
+ * 创建帧事务控制器。
31
+ *
32
+ * @typeParam TInput - 可合并的输入形状(浅层 Partial 合并)
33
+ * @typeParam TSnapshot - derive 产出的不可变快照类型
34
+ */
35
+ export function createFrameTransaction(options) {
36
+ const { derive, render } = options;
37
+ const schedule = options.schedule ??
38
+ ((run) => {
39
+ if (typeof requestAnimationFrame === 'function') {
40
+ return requestAnimationFrame(run);
41
+ }
42
+ return setTimeout(run, 0);
43
+ });
44
+ /** 当前代可写入的输入(仅 idle 时接收 writeInput) */
45
+ let pending = { ...options.initialInput };
46
+ /** 事务进行中产生的输入,complete 后并入下一代 */
47
+ let nextPending = null;
48
+ /** 是否存在尚未 flush 的 pending 变更 */
49
+ let dirty = false;
50
+ let generation = 0;
51
+ let phase = 'idle';
52
+ let scheduleQueued = false;
53
+ // generation 0:用初始输入 derive 一次,作为 published 占位,避免订阅者读到 undefined
54
+ const initialSnapshot = sealSnapshotRoot(derive({ ...pending }, 0));
55
+ const published = createSignal(initialSnapshot);
56
+ function writeInput(patch) {
57
+ if (phase === 'idle') {
58
+ pending = mergeInput(pending, patch);
59
+ dirty = true;
60
+ return;
61
+ }
62
+ // capturing 之后当前输入已封存;重入写入只能进下一代
63
+ const base = nextPending ?? pending;
64
+ nextPending = mergeInput(base, patch);
65
+ }
66
+ function flush() {
67
+ // 禁止嵌套发布:订阅者 / render 中 flush 只保留 dirty,由外层 complete 后再调度
68
+ if (phase !== 'idle') {
69
+ return published.peek();
70
+ }
71
+ if (!dirty && nextPending === null) {
72
+ return published.peek();
73
+ }
74
+ // 若仅有 nextPending(例如上一帧 render 中写入),提升为当前 pending
75
+ if (!dirty && nextPending !== null) {
76
+ pending = nextPending;
77
+ nextPending = null;
78
+ dirty = true;
79
+ }
80
+ let sealedInput;
81
+ phase = 'capturing';
82
+ try {
83
+ sealedInput = pending;
84
+ dirty = false;
85
+ // 本帧 capture 之后的新写入进入 nextPending,不得污染 sealedInput
86
+ pending = { ...sealedInput };
87
+ phase = 'deriving';
88
+ const nextGeneration = generation + 1;
89
+ const snapshot = derive(sealedInput, nextGeneration);
90
+ phase = 'sealing';
91
+ sealSnapshotRoot(snapshot);
92
+ phase = 'rendering';
93
+ render?.(snapshot);
94
+ // 先推进代际再发布,保证订阅者读 generation 与 snapshot.generation 一致
95
+ phase = 'publishing';
96
+ generation = nextGeneration;
97
+ published.set(snapshot);
98
+ return snapshot;
99
+ }
100
+ catch (err) {
101
+ // derive/render 失败:不推进 generation(若已推进则回滚),保留 sealed 输入供重试
102
+ if (sealedInput !== undefined) {
103
+ pending = sealedInput;
104
+ dirty = true;
105
+ }
106
+ throw err;
107
+ }
108
+ finally {
109
+ phase = 'idle';
110
+ // 事务中累积的 nextPending 与重试 pending 合并
111
+ if (nextPending !== null) {
112
+ pending = mergeInput(pending, nextPending);
113
+ nextPending = null;
114
+ dirty = true;
115
+ }
116
+ // 有残留 dirty 时挂下一代调度(含 re-entrant write / 失败重试)
117
+ if (dirty) {
118
+ scheduleFlush();
119
+ }
120
+ }
121
+ }
122
+ function scheduleFlush() {
123
+ if (scheduleQueued)
124
+ return;
125
+ if (!dirty && nextPending === null)
126
+ return;
127
+ scheduleQueued = true;
128
+ try {
129
+ schedule(() => {
130
+ scheduleQueued = false;
131
+ // flush 的 finally 已在失败时保留 dirty 并 scheduleFlush;此处继续抛出供测试/诊断
132
+ flush();
133
+ });
134
+ }
135
+ catch (err) {
136
+ // schedule 本身失败:复位标志,允许后续 scheduleFlush 重试
137
+ scheduleQueued = false;
138
+ throw err;
139
+ }
140
+ }
141
+ function select(selector) {
142
+ const selected = createSignal(selector(published.peek()));
143
+ published.subscribe(() => {
144
+ const next = selector(published.peek());
145
+ selected.set(next);
146
+ });
147
+ const read = () => selected();
148
+ return Object.assign(read, {
149
+ peek: selected.peek,
150
+ subscribe: selected.subscribe,
151
+ });
152
+ }
153
+ return {
154
+ published$: Object.assign((() => published()), {
155
+ peek: published.peek,
156
+ subscribe: published.subscribe,
157
+ }),
158
+ get generation() {
159
+ return generation;
160
+ },
161
+ get phase() {
162
+ return phase;
163
+ },
164
+ writeInput,
165
+ flush,
166
+ scheduleFlush,
167
+ select,
168
+ };
169
+ }
170
+ //# sourceMappingURL=frameTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frameTransaction.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/frameTransaction.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
- export { createSignal, writableRef, computed, effect, batch, createStateStore, createSubState, } from './signal';
2
- export type { Signal, WritableSignal, ReadonlySignal, WritableRef, ReadonlyRef, Computed, } from './signal';
1
+ export { createSignal, writableRef, computed, effect, batch, selectSignal, createStateStore, createSubState, } from './signal';
2
+ export type { Signal, WritableSignal, ReadonlySignal, WritableRef, ReadonlyRef, Computed, SelectedSignal, } from './signal';
3
+ export { createFrameTransaction } from './frameTransaction';
4
+ export type { FramePhase, FrameTransaction, FrameTransactionOptions, } from './frameTransaction';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/foundation/reactivity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,MAAM,EACN,KAAK,EACL,gBAAgB,EAChB,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,YAAY,EACV,MAAM,EACN,cAAc,EACd,cAAc,EACd,WAAW,EACX,WAAW,EACX,QAAQ,GACT,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/foundation/reactivity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,MAAM,EACN,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,YAAY,EACV,MAAM,EACN,cAAc,EACd,cAAc,EACd,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,oBAAoB,CAAA"}
@@ -1,2 +1,3 @@
1
- export { createSignal, writableRef, computed, effect, batch, createStateStore, createSubState, } from './signal';
1
+ export { createSignal, writableRef, computed, effect, batch, selectSignal, createStateStore, createSubState, } from './signal';
2
+ export { createFrameTransaction } from './frameTransaction';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,MAAM,EACN,KAAK,EACL,gBAAgB,EAChB,cAAc,GACf,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,MAAM,EACN,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,GACf,MAAM,UAAU,CAAA;AAUjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA"}
@@ -130,6 +130,26 @@ export declare function computed<T>(fn: () => T): ReadonlySignal<T>;
130
130
  * @returns fn 的返回值
131
131
  */
132
132
  export declare function batch<T>(fn: () => T): T;
133
+ /**
134
+ * selectSignal 返回值:只读投影 + 解除对 source 的订阅。
135
+ */
136
+ export type SelectedSignal<U> = ReadonlySignal<U> & {
137
+ /** 取消对 source 的订阅;之后不再随 source 更新 */
138
+ dispose: () => void;
139
+ };
140
+ /**
141
+ * 从源 Signal 投影只读 Signal。
142
+ * 仅当 selector 结果相对上一值 equal 判定为不等时通知。
143
+ *
144
+ * @remarks
145
+ * 用于框架桥接:避免整包 snapshot 变化时无关字段也触发 UI 更新。
146
+ * 默认 equal 为 Object.is;对 {x,y} 等可传入结构相等函数。
147
+ * 短生命周期投影必须调用 dispose,否则会永久订阅 source。
148
+ *
149
+ * @typeParam T - 源快照类型
150
+ * @typeParam U - 投影结果类型
151
+ */
152
+ export declare function selectSignal<T, U>(source: ReadonlySignal<T>, selector: (value: T) => U, equal?: (a: U, b: U) => boolean): SelectedSignal<U>;
133
153
  /**
134
154
  * 从初始状态对象创建一组相关 signal。
135
155
  *
@@ -1 +1 @@
1
- {"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../../src/foundation/reactivity/signal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC9B;;OAEG;IACH,IAAI,CAAC,CAAA;IACL;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,CAAA;IACb;;OAEG;IACH,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAA;CAChD,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG;IAClD;;OAEG;IACH,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;CACvB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAA;AAEzC;;;;GAIG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAA;AAE9C;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAA;AAY9C;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAiC7D;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,qBAAe,CAAA;AAEvC;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAqBjD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAe1D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAYvC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;gBACnD,CAAC;iCACc,CAAC,CAAC,GAAC,CAAC,KAAK,IAAI;oBAYrC,CAAC;EAGlB;AAiBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,cAAc,CAC5B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAEjC,OAAO,EAAE,CAAC,EACV,WAAW,CAAC,EAAE;KACX,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE;SAAG,EAAE,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;KAAE,KAAK,CAAC,CAAC,CAAC,CAAC;CAC5E;IAmBC,6BAA6B;gBAjBN,CAAC;IAmBxB,0BAA0B;cACwB,GAC/C,GAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GACrC,GAAG,GAAG,GAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GAAE;IAC5C,mCAAmC;oBAIrB,CAAC;EAGlB"}
1
+ {"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../../src/foundation/reactivity/signal.ts"],"names":[],"mappings":"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"}
@@ -151,6 +151,33 @@ export function batch(fn) {
151
151
  }
152
152
  }
153
153
  }
154
+ /**
155
+ * 从源 Signal 投影只读 Signal。
156
+ * 仅当 selector 结果相对上一值 equal 判定为不等时通知。
157
+ *
158
+ * @remarks
159
+ * 用于框架桥接:避免整包 snapshot 变化时无关字段也触发 UI 更新。
160
+ * 默认 equal 为 Object.is;对 {x,y} 等可传入结构相等函数。
161
+ * 短生命周期投影必须调用 dispose,否则会永久订阅 source。
162
+ *
163
+ * @typeParam T - 源快照类型
164
+ * @typeParam U - 投影结果类型
165
+ */
166
+ export function selectSignal(source, selector, equal = Object.is) {
167
+ const selected = createSignal(selector(source.peek()));
168
+ const unsubSource = source.subscribe(() => {
169
+ const next = selector(source.peek());
170
+ if (equal(selected.peek(), next))
171
+ return;
172
+ selected.set(next);
173
+ });
174
+ const read = () => selected();
175
+ return Object.assign(read, {
176
+ peek: selected.peek,
177
+ subscribe: selected.subscribe,
178
+ dispose: unsubSource,
179
+ });
180
+ }
154
181
  /**
155
182
  * 从初始状态对象创建一组相关 signal。
156
183
  *
@@ -1 +1 @@
1
- {"version":3,"file":"signal.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/signal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA+EH,IAAI,aAAa,GAAmB,IAAI,CAAA;AAExC,IAAI,UAAU,GAAG,CAAC,CAAA;AAClB,MAAM,YAAY,GAAG,IAAI,GAAG,EAAc,CAAA;AAE1C;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAI,OAAU;IACxC,IAAI,KAAK,GAAG,OAAO,CAAA;IACnB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAc,CAAA;IAEzC,MAAM,IAAI,GAAG,GAAM,EAAE;QACnB,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC3B,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;YAClC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QACrC,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,GAAM,EAAE,CAAC,KAAK,CAAA;IAE3B,MAAM,GAAG,GAAG,CAAC,IAAO,EAAQ,EAAE;QAC5B,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;YAAE,OAAM;QAClC,KAAK,GAAG,IAAI,CAAA;QACZ,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,KAAK,MAAM,QAAQ,IAAI,WAAW;gBAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAChE,CAAC;aAAM,CAAC;YACN,wDAAwD;YACxD,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,WAAW,CAAC;gBAAE,QAAQ,EAAE,CAAA;QACrD,CAAC;IACH,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,QAAoB,EAAgB,EAAE;QACvD,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACzB,OAAO,GAAG,EAAE;YACV,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC,CAAA;IACH,CAAC,CAAA;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,CAAsB,CAAA;AAC3E,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAA;AAEvC;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,EAAc;IACnC,MAAM,OAAO,GAAY;QACvB,IAAI,EAAE,IAAI,GAAG,EAAE;QACf,GAAG,EAAE,GAAG,EAAE;YACR,sDAAsD;YACtD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI;gBAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YACvD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YACpB,MAAM,IAAI,GAAG,aAAa,CAAA;YAC1B,aAAa,GAAG,OAAO,CAAA;YACvB,IAAI,CAAC;gBACH,EAAE,EAAE,CAAA;YACN,CAAC;oBAAS,CAAC;gBACT,aAAa,GAAG,IAAI,CAAA;YACtB,CAAC;QACH,CAAC;KACF,CAAA;IACD,OAAO,CAAC,GAAG,EAAE,CAAA;IACb,OAAO,GAAG,EAAE;QACV,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI;YAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACvD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CAAI,EAAW;IACrC,MAAM,KAAK,GAAG,YAAY,CAAI,SAAyB,CAAC,CAAA;IACxD,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,IAAI,GAAG,EAAE,EAAE,CAAA;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,IAAI,CAEjB;YAAC,KAA4C,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACxD,OAAM;QACR,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,GAAM,EAAE,CAAC,KAAK,EAAE,CAAA;IAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAsB,CAAA;AACnG,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,KAAK,CAAI,EAAW;IAClC,UAAU,EAAE,CAAA;IACZ,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;YAAS,CAAC;QACT,UAAU,EAAE,CAAA;QACZ,IAAI,UAAU,KAAK,CAAC,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,CAAA;YAClC,YAAY,CAAC,KAAK,EAAE,CAAA;YACpB,KAAK,MAAM,QAAQ,IAAI,QAAQ;gBAAE,QAAQ,EAAE,CAAA;QAC7C,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,gBAAgB,CAAoC,OAAU;IAC5E,MAAM,OAAO,GAAG,EAA8C,CAAA;IAC9D,MAAM,GAAG,GAAG,EAA2C,CAAA;IACvD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAgB,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,YAAY,CAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;QACrD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;QAClB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAgB,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC;IACD,OAAO;QACL,OAAO;QACP,GAAG;QACH,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,CAAC,GAA4B,EAAE,CAAA;YACrC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAgB;gBAAE,CAAC,CAAC,CAAW,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvF,OAAO,CAAM,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAI,GAAsB;IACjD,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAsB,CAAA;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QACzB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,SAAS,EAAE,GAAG,CAAC,SAAS;KACzB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,UAAU,cAAc,CAI5B,OAAU,EACV,WAEC;IAED,MAAM,OAAO,GAAG,EAA8C,CAAA;IAC9D,MAAM,QAAQ,GAAG,EAA8C,CAAA;IAC/D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAgB,EAAE,CAAC;QACtD,MAAM,GAAG,GAAG,YAAY,CAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;QACrD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;QAClB,QAAQ,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,gBAAgB,GAAG,EAA6C,CAAA;IACtE,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAa,EAAE,CAAC;YACvD,MAAM,EAAE,GAAI,WAAmE,CAAC,GAAG,CAAE,CAAA;YACrF,gBAAgB,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;QACtD,CAAC;IACH,CAAC;IAED,OAAO;QACL,6BAA6B;QAC7B,OAAO;QACP,0BAA0B;QAC1B,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,gBAAgB,EAEA;QAC5C,mCAAmC;QACnC,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,CAAC,GAA4B,EAAE,CAAA;YACrC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAgB;gBAAE,CAAC,CAAC,CAAW,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvF,OAAO,CAAM,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"signal.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/signal.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"theme-dark.d.ts","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-dark.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,eAAO,MAAM,SAAS,EAAE,KAqMvB,CAAA"}
1
+ {"version":3,"file":"theme-dark.d.ts","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-dark.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,eAAO,MAAM,SAAS,EAAE,KAsMvB,CAAA"}
@@ -101,7 +101,8 @@ export const darkTheme = {
101
101
  transparent: 'transparent',
102
102
  active: '#1890ff',
103
103
  activeHover: '#40a9ff',
104
- hover: '#262C36',
104
+ // 相对 background #111827 提高悬停对比,列表项 hover 更易辨认
105
+ hover: '#2D3544',
105
106
  },
106
107
  border: {
107
108
  dark: 'rgba(255, 255, 255, 0.15)',
@@ -1 +1 @@
1
- {"version":3,"file":"theme-dark.js","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-dark.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-dark.js","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-dark.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"theme-light.d.ts","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-light.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,eAAO,MAAM,UAAU,EAAE,KAyMxB,CAAA"}
1
+ {"version":3,"file":"theme-light.d.ts","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-light.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,eAAO,MAAM,UAAU,EAAE,KA0MxB,CAAA"}
@@ -107,7 +107,8 @@ export const lightTheme = {
107
107
  transparent: 'transparent',
108
108
  active: '#1890ff',
109
109
  activeHover: '#40a9ff',
110
- hover: '#f0f0f0',
110
+ // 相对 background #FAFAFA 提高悬停对比,避免与底色糊成一片
111
+ hover: '#E5E7EB',
111
112
  },
112
113
  border: {
113
114
  dark: 'rgba(0, 0, 0, 0.12)',
@@ -1 +1 @@
1
- {"version":3,"file":"theme-light.js","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-light.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-light.js","sourceRoot":"","sources":["../../../src/foundation/tokens/theme-light.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,9 @@
2
2
  * High-level renderer interface — the drawing primitives the chart's
3
3
  * scene layers (candles, volume, indicators, drawings) call into.
4
4
  *
5
- * Both the existing WebGL renderer (currently spread across
6
- * `src/core/renderers/{candle,subVolume,crosshair,...}.ts`) and the
7
- * P1 WebGPU renderer implement this contract. v0's WebGL path will
8
- * be refactored to fit behind it in a follow-up PR (this file ships
9
- * the contract first; the legacy code is unchanged until the next
10
- * step is approved).
5
+ * WebGL (`createWebGLRenderer`) implements this contract today; P1 WebGPU
6
+ * will implement the same surface. Call sites only use sceneRenderer
7
+ * (fail-closed boolean Canvas2D), never dual-path surfaces.
11
8
  *
12
9
  * Design notes:
13
10
  * - `drawInstances` is the workhorse: render N copies of a unit geometry
@@ -22,10 +19,6 @@
22
19
  * - `setUniforms` is intentionally schemaless on the interface — the
23
20
  * uniform layout is owned by each shader/program. Callers pass a
24
21
  * structured object that the backend translates into uniform writes.
25
- *
26
- * This file is **pure interface** in this PR; behaviour comes in the
27
- * next two PRs (Scale interfaces, then a Renderer impl that wraps
28
- * the existing WebGL primitives).
29
22
  */
30
23
  import type { SurfaceBackend, SurfaceRegion } from './SurfaceBackend';
31
24
  /** Reported by the backend so feature-conditional code can branch. */
@@ -65,12 +58,26 @@ export type DrawInstancesParams = {
65
58
  /** Uniform block — opaque object the backend reads. */
66
59
  uniforms?: Record<string, unknown>;
67
60
  };
61
+ export type DrawLineStrip = {
62
+ points: ReadonlyArray<{
63
+ x: number;
64
+ y: number;
65
+ }>;
66
+ color: string;
67
+ width?: number;
68
+ };
68
69
  export type DrawLinesParams = {
69
70
  pipeline: PipelineHandle;
70
- vertices: BufferHandle;
71
- vertexCount: number;
71
+ /**
72
+ * 单 strip 路径:vertices 为交错 x,y Float32。
73
+ * 若提供 strips,则忽略 vertices/vertexCount,一次 GPU 提交多条(避免 MSAA 逐条 clear)。
74
+ */
75
+ vertices?: BufferHandle;
76
+ vertexCount?: number;
72
77
  /** Line strip vs disconnected segments. */
73
78
  topology?: 'strip' | 'list';
79
+ /** 多色折线批量(推荐 MA 等多周期) */
80
+ strips?: ReadonlyArray<DrawLineStrip>;
74
81
  uniforms?: Record<string, unknown>;
75
82
  };
76
83
  export type DispatchComputeParams = {
@@ -106,8 +113,16 @@ export interface Renderer {
106
113
  createComputePipeline(descriptor: unknown): ComputePipelineHandle;
107
114
  destroyComputePipeline(handle: ComputePipelineHandle): void;
108
115
  beginFrame(region: SurfaceRegion): void;
109
- drawInstances(params: DrawInstancesParams): void;
110
- drawLines(params: DrawLinesParams): void;
116
+ /**
117
+ * 返回 true 表示本批已成功提交 GPU(或 instanceCount<=0 无需绘制)。
118
+ * 返回 false 表示未画上(无 surface / pipeline 不匹配 / 资源缺失)——调用方应 fail-closed 走 2D。
119
+ */
120
+ drawInstances(params: DrawInstancesParams): boolean;
121
+ /**
122
+ * 返回 true 表示本批折线/填充已成功提交 GPU。
123
+ * 返回 false 表示未画上——调用方应 fail-closed 走 2D。
124
+ */
125
+ drawLines(params: DrawLinesParams): boolean;
111
126
  /** WebGPU only — WebGL implementations MUST throw. Caller checks caps first. */
112
127
  dispatchCompute(params: DispatchComputeParams): void;
113
128
  endFrame(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/Renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/Renderer.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,9 @@
2
2
  * High-level renderer interface — the drawing primitives the chart's
3
3
  * scene layers (candles, volume, indicators, drawings) call into.
4
4
  *
5
- * Both the existing WebGL renderer (currently spread across
6
- * `src/core/renderers/{candle,subVolume,crosshair,...}.ts`) and the
7
- * P1 WebGPU renderer implement this contract. v0's WebGL path will
8
- * be refactored to fit behind it in a follow-up PR (this file ships
9
- * the contract first; the legacy code is unchanged until the next
10
- * step is approved).
5
+ * WebGL (`createWebGLRenderer`) implements this contract today; P1 WebGPU
6
+ * will implement the same surface. Call sites only use sceneRenderer
7
+ * (fail-closed boolean Canvas2D), never dual-path surfaces.
11
8
  *
12
9
  * Design notes:
13
10
  * - `drawInstances` is the workhorse: render N copies of a unit geometry
@@ -22,10 +19,6 @@
22
19
  * - `setUniforms` is intentionally schemaless on the interface — the
23
20
  * uniform layout is owned by each shader/program. Callers pass a
24
21
  * structured object that the backend translates into uniform writes.
25
- *
26
- * This file is **pure interface** in this PR; behaviour comes in the
27
- * next two PRs (Scale interfaces, then a Renderer impl that wraps
28
- * the existing WebGL primitives).
29
22
  */
30
23
  export {};
31
24
  //# sourceMappingURL=Renderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/rendering/render/Renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG"}
1
+ {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/rendering/render/Renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
@@ -2,22 +2,20 @@
2
2
  * Low-level GPU surface backend.
3
3
  *
4
4
  * Abstracts canvas + context lifecycle, viewport / scissor regions, clear,
5
- * compositing into a 2D canvas overlay, and teardown. Both the existing
6
- * WebGL surface (`src/core/renderers/webgl/sharedWebGLSurface.ts`) and the
7
- * P1 WebGPU surface implement this contract.
5
+ * compositing into a 2D canvas overlay, and teardown. WebGL
6
+ * (`createWebGLSurfaceBackend` over SharedWebGLSurface) implements this today;
7
+ * P1 WebGPU will implement the same contract.
8
8
  *
9
9
  * This file is **pure interface** — no implementation. It exists so that:
10
10
  *
11
- * 1. Existing WebGL code can declare conformance via a one-line adapter
12
- * (see `createLegacyWebGLBackend` below) without changing any behaviour.
11
+ * 1. WebGL can adapt SharedWebGLSurface behind a stable contract.
13
12
  * 2. P1's WebGPU implementation has a fixed target to write against.
14
13
  * 3. The higher-level `Renderer` (`./Renderer.ts`) can compose a backend
15
14
  * without knowing which GPU API it sits on.
16
15
  *
17
16
  * Design notes:
18
17
  * - All region coordinates are in **logical pixels** with the surface
19
- * responsible for DPR scaling internally. This matches the existing
20
- * `WebGLRegion` semantics so the legacy adapter is a transparent pass-through.
18
+ * responsible for DPR scaling internally (same semantics as WebGLRegion).
21
19
  * - `compositeTo` takes a 2D `CanvasRenderingContext2D` because the chart's
22
20
  * final composition target is a 2D overlay canvas — WebGL/WebGPU pixels
23
21
  * are drawn into the overlay via `drawImage`. Future paths that bypass
@@ -1 +1 @@
1
- {"version":3,"file":"SurfaceBackend.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/SurfaceBackend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,kEAAkE;IAClE,CAAC,EAAE,MAAM,CAAA;IACT,kEAAkE;IAClE,CAAC,EAAE,MAAM,CAAA;IACT,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oEAAoE;IACpE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,wEAAwE;IACxE,WAAW,IAAI,OAAO,CAAA;IAEtB;;;OAGG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAEtE;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAA;IAE1C;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAA;IAExC;;;;;;;OAOG;IACH,WAAW,CACT,SAAS,EAAE,wBAAwB,EACnC,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE,gBAAgB,GACzB,IAAI,CAAA;IAEP;;;OAGG;IACH,OAAO,IAAI,IAAI,CAAA;CAChB"}
1
+ {"version":3,"file":"SurfaceBackend.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/SurfaceBackend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,kEAAkE;IAClE,CAAC,EAAE,MAAM,CAAA;IACT,kEAAkE;IAClE,CAAC,EAAE,MAAM,CAAA;IACT,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oEAAoE;IACpE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,wEAAwE;IACxE,WAAW,IAAI,OAAO,CAAA;IAEtB;;;OAGG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAEtE;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAA;IAE1C;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAA;IAExC;;;;;;;OAOG;IACH,WAAW,CACT,SAAS,EAAE,wBAAwB,EACnC,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE,gBAAgB,GACzB,IAAI,CAAA;IAEP;;;OAGG;IACH,OAAO,IAAI,IAAI,CAAA;CAChB"}