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

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 (190) hide show
  1. package/dist/controllers/createChartController.d.ts.map +1 -1
  2. package/dist/controllers/createChartController.js +9 -8
  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 +5 -0
  8. package/dist/controllers/types.d.ts.map +1 -1
  9. package/dist/data/binance.d.ts +1 -1
  10. package/dist/data/binance.d.ts.map +1 -1
  11. package/dist/data/binance.js +1 -1
  12. package/dist/data/binance.js.map +1 -1
  13. package/dist/engine/chart.d.ts +9 -9
  14. package/dist/engine/chart.d.ts.map +1 -1
  15. package/dist/engine/chart.js +69 -96
  16. package/dist/engine/chart.js.map +1 -1
  17. package/dist/engine/chartTypes.d.ts +5 -0
  18. package/dist/engine/chartTypes.d.ts.map +1 -1
  19. package/dist/engine/controller/interaction.d.ts +4 -2
  20. package/dist/engine/controller/interaction.d.ts.map +1 -1
  21. package/dist/engine/controller/interaction.js +18 -10
  22. package/dist/engine/controller/interaction.js.map +1 -1
  23. package/dist/engine/data/chartDataManager.d.ts +12 -18
  24. package/dist/engine/data/chartDataManager.d.ts.map +1 -1
  25. package/dist/engine/data/chartDataManager.js +46 -37
  26. package/dist/engine/data/chartDataManager.js.map +1 -1
  27. package/dist/engine/data/incrementalLoadHint.d.ts +2 -4
  28. package/dist/engine/data/incrementalLoadHint.d.ts.map +1 -1
  29. package/dist/engine/data/incrementalLoadHint.js +5 -2
  30. package/dist/engine/data/incrementalLoadHint.js.map +1 -1
  31. package/dist/engine/data/scrollCompensator.d.ts +3 -13
  32. package/dist/engine/data/scrollCompensator.d.ts.map +1 -1
  33. package/dist/engine/data/scrollCompensator.js +13 -14
  34. package/dist/engine/data/scrollCompensator.js.map +1 -1
  35. package/dist/engine/indicators/chartIndicatorManager.d.ts +16 -17
  36. package/dist/engine/indicators/chartIndicatorManager.d.ts.map +1 -1
  37. package/dist/engine/indicators/chartIndicatorManager.js +37 -37
  38. package/dist/engine/indicators/chartIndicatorManager.js.map +1 -1
  39. package/dist/engine/layout/chartPaneLayout.d.ts +11 -7
  40. package/dist/engine/layout/chartPaneLayout.d.ts.map +1 -1
  41. package/dist/engine/layout/chartPaneLayout.js +58 -16
  42. package/dist/engine/layout/chartPaneLayout.js.map +1 -1
  43. package/dist/engine/paneRenderer.d.ts +2 -0
  44. package/dist/engine/paneRenderer.d.ts.map +1 -1
  45. package/dist/engine/paneRenderer.js +15 -5
  46. package/dist/engine/paneRenderer.js.map +1 -1
  47. package/dist/engine/render/chartRenderer.d.ts +28 -22
  48. package/dist/engine/render/chartRenderer.d.ts.map +1 -1
  49. package/dist/engine/render/chartRenderer.js +117 -69
  50. package/dist/engine/render/chartRenderer.js.map +1 -1
  51. package/dist/engine/render/layers/leftYAxisLayer.d.ts +9 -2
  52. package/dist/engine/render/layers/leftYAxisLayer.d.ts.map +1 -1
  53. package/dist/engine/render/layers/leftYAxisLayer.js +11 -2
  54. package/dist/engine/render/layers/leftYAxisLayer.js.map +1 -1
  55. package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts +6 -4
  56. package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts.map +1 -1
  57. package/dist/engine/render/layers/mainIndicatorLegendLayer.js +6 -9
  58. package/dist/engine/render/layers/mainIndicatorLegendLayer.js.map +1 -1
  59. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts +2 -0
  60. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts.map +1 -0
  61. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js +19 -0
  62. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js.map +1 -0
  63. package/dist/engine/render/layers/yAxisLayer.d.ts +9 -2
  64. package/dist/engine/render/layers/yAxisLayer.d.ts.map +1 -1
  65. package/dist/engine/render/layers/yAxisLayer.js +11 -2
  66. package/dist/engine/render/layers/yAxisLayer.js.map +1 -1
  67. package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts +7 -3
  68. package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts.map +1 -1
  69. package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +234 -330
  70. package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
  71. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts +72 -0
  72. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts.map +1 -0
  73. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js +177 -0
  74. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js.map +1 -0
  75. package/dist/engine/renderers/leftYAxis.d.ts +15 -2
  76. package/dist/engine/renderers/leftYAxis.d.ts.map +1 -1
  77. package/dist/engine/renderers/leftYAxis.js +56 -16
  78. package/dist/engine/renderers/leftYAxis.js.map +1 -1
  79. package/dist/engine/renderers/yAxis.d.ts +16 -6
  80. package/dist/engine/renderers/yAxis.d.ts.map +1 -1
  81. package/dist/engine/renderers/yAxis.js +49 -16
  82. package/dist/engine/renderers/yAxis.js.map +1 -1
  83. package/dist/engine/state/viewportState.d.ts +4 -1
  84. package/dist/engine/state/viewportState.d.ts.map +1 -1
  85. package/dist/engine/state/viewportState.js +40 -8
  86. package/dist/engine/state/viewportState.js.map +1 -1
  87. package/dist/engine/subPaneManager.d.ts +5 -3
  88. package/dist/engine/subPaneManager.d.ts.map +1 -1
  89. package/dist/engine/subPaneManager.js +3 -2
  90. package/dist/engine/subPaneManager.js.map +1 -1
  91. package/dist/engine/utils/chartZoomController.d.ts +9 -7
  92. package/dist/engine/utils/chartZoomController.d.ts.map +1 -1
  93. package/dist/engine/utils/chartZoomController.js +13 -12
  94. package/dist/engine/utils/chartZoomController.js.map +1 -1
  95. package/dist/engine/viewport/chartViewportManager.d.ts +5 -16
  96. package/dist/engine/viewport/chartViewportManager.d.ts.map +1 -1
  97. package/dist/engine/viewport/chartViewportManager.js +7 -48
  98. package/dist/engine/viewport/chartViewportManager.js.map +1 -1
  99. package/dist/engine/viewport/viewport.d.ts +14 -0
  100. package/dist/engine/viewport/viewport.d.ts.map +1 -1
  101. package/dist/engine/viewport/viewport.js +10 -0
  102. package/dist/engine/viewport/viewport.js.map +1 -1
  103. package/dist/foundation/plugin/rendererPluginManager.test.js +15 -0
  104. package/dist/foundation/plugin/rendererPluginManager.test.js.map +1 -1
  105. package/dist/foundation/plugin/types.d.ts +3 -0
  106. package/dist/foundation/plugin/types.d.ts.map +1 -1
  107. package/dist/foundation/plugin/types.js.map +1 -1
  108. package/dist/foundation/reactivity/frameTransaction.d.ts +11 -0
  109. package/dist/foundation/reactivity/frameTransaction.d.ts.map +1 -1
  110. package/dist/foundation/reactivity/frameTransaction.js +17 -2
  111. package/dist/foundation/reactivity/frameTransaction.js.map +1 -1
  112. package/dist/rendering/render/Renderer.d.ts +58 -74
  113. package/dist/rendering/render/Renderer.d.ts.map +1 -1
  114. package/dist/rendering/render/Renderer.js +8 -18
  115. package/dist/rendering/render/Renderer.js.map +1 -1
  116. package/dist/rendering/render/createWebGPURenderer.d.ts.map +1 -1
  117. package/dist/rendering/render/createWebGPURenderer.js +30 -17
  118. package/dist/rendering/render/createWebGPURenderer.js.map +1 -1
  119. package/dist/rendering/render/createWebGPUSurfaceBackend.js +3 -3
  120. package/dist/rendering/render/createWebGPUSurfaceBackend.js.map +1 -1
  121. package/dist/rendering/render/physicalLine.d.ts +4 -0
  122. package/dist/rendering/render/physicalLine.d.ts.map +1 -0
  123. package/dist/rendering/render/physicalLine.js +37 -0
  124. package/dist/rendering/render/physicalLine.js.map +1 -0
  125. package/dist/rendering/render/physicalRegion.d.ts +14 -0
  126. package/dist/rendering/render/physicalRegion.d.ts.map +1 -0
  127. package/dist/rendering/render/physicalRegion.js +15 -0
  128. package/dist/rendering/render/physicalRegion.js.map +1 -0
  129. package/dist/rendering/scene/createLayerFromPlugin.d.ts.map +1 -1
  130. package/dist/rendering/scene/createLayerFromPlugin.js +8 -3
  131. package/dist/rendering/scene/createLayerFromPlugin.js.map +1 -1
  132. package/dist/rendering/scene/createScene.d.ts.map +1 -1
  133. package/dist/rendering/scene/createScene.js +4 -3
  134. package/dist/rendering/scene/createScene.js.map +1 -1
  135. package/dist/version.d.ts +1 -1
  136. package/dist/version.js +1 -1
  137. package/package.json +1 -1
  138. package/src/__tests__/stateKernel.test.ts +1 -0
  139. package/src/controllers/createChartController.ts +9 -8
  140. package/src/controllers/index.ts +11 -0
  141. package/src/controllers/types.ts +7 -0
  142. package/src/data/binance.ts +1 -1
  143. package/src/engine/__tests__/chart.dpr.test.ts +3 -2
  144. package/src/engine/__tests__/paneRenderer.resize.test.ts +52 -54
  145. package/src/engine/__tests__/subPaneManager.test.ts +5 -3
  146. package/src/engine/chart.ts +76 -109
  147. package/src/engine/chartTypes.ts +5 -0
  148. package/src/engine/controller/__tests__/interaction.dpr.test.ts +39 -2
  149. package/src/engine/controller/interaction.ts +18 -10
  150. package/src/engine/data/__tests__/chartDataManager.incrementalLoad.test.ts +37 -17
  151. package/src/engine/data/__tests__/scrollCompensator.geometry.test.ts +87 -75
  152. package/src/engine/data/chartDataManager.ts +54 -59
  153. package/src/engine/data/incrementalLoadHint.ts +8 -7
  154. package/src/engine/data/scrollCompensator.ts +16 -24
  155. package/src/engine/indicators/__tests__/chartIndicatorManager.test.ts +18 -26
  156. package/src/engine/indicators/chartIndicatorManager.ts +62 -62
  157. package/src/engine/layout/chartPaneLayout.ts +73 -21
  158. package/src/engine/paneRenderer.ts +17 -10
  159. package/src/engine/render/chartRenderer.ts +187 -129
  160. package/src/engine/render/layers/leftYAxisLayer.ts +29 -7
  161. package/src/engine/render/layers/mainIndicatorLegendLayer.test.ts +26 -0
  162. package/src/engine/render/layers/mainIndicatorLegendLayer.ts +13 -10
  163. package/src/engine/render/layers/yAxisLayer.ts +29 -7
  164. package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +270 -403
  165. package/src/engine/renderers/Indicator/mainIndicatorLegendContext.ts +282 -0
  166. package/src/engine/renderers/__tests__/mainIndicatorLegend.renderer.test.ts +73 -2
  167. package/src/engine/renderers/__tests__/yAxis.renderer.test.ts +10 -6
  168. package/src/engine/renderers/leftYAxis.ts +60 -18
  169. package/src/engine/renderers/yAxis.ts +57 -22
  170. package/src/engine/state/viewportState.ts +44 -8
  171. package/src/engine/subPaneManager.ts +8 -5
  172. package/src/engine/utils/chartZoomController.ts +22 -19
  173. package/src/engine/viewport/__tests__/visibleRange.clamp.test.ts +50 -0
  174. package/src/engine/viewport/chartViewportManager.ts +9 -60
  175. package/src/engine/viewport/viewport.ts +14 -0
  176. package/src/foundation/plugin/rendererPluginManager.test.ts +18 -0
  177. package/src/foundation/plugin/types.ts +3 -0
  178. package/src/foundation/reactivity/frameTransaction.ts +20 -6
  179. package/src/rendering/render/Renderer.ts +69 -85
  180. package/src/rendering/render/__tests__/physicalLine.test.ts +51 -0
  181. package/src/rendering/render/__tests__/physicalRegion.test.ts +23 -0
  182. package/src/rendering/render/__tests__/webgpuRenderer.test.ts +31 -1
  183. package/src/rendering/render/__tests__/webgpuSurfaceBackend.test.ts +11 -0
  184. package/src/rendering/render/createWebGPURenderer.ts +30 -17
  185. package/src/rendering/render/createWebGPUSurfaceBackend.ts +3 -3
  186. package/src/rendering/render/physicalLine.ts +45 -0
  187. package/src/rendering/render/physicalRegion.ts +32 -0
  188. package/src/rendering/scene/createLayerFromPlugin.ts +8 -3
  189. package/src/rendering/scene/createScene.ts +4 -3
  190. package/src/version.ts +1 -1
@@ -1,49 +1,27 @@
1
+ /**
2
+ * Viewport DOM 适配层:只挂 ResizeObserver 与 scroll,读写一律走 kernel。
3
+ */
1
4
  export class ChartViewportManager {
2
5
  deps;
3
6
  kernel;
4
7
  resizeObserver;
5
8
  onScroll;
6
- get viewportSignal() {
7
- return this.kernel.viewport.readonly.viewportState;
8
- }
9
9
  constructor(deps, kernel) {
10
10
  this.deps = deps;
11
11
  this.kernel = kernel;
12
12
  }
13
- getCachedScrollLeft() {
14
- return this.kernel.viewport.readonly.scrollLeft.peek();
15
- }
16
- getLogicalScrollLeft() {
17
- return this.kernel.viewport.readonly.scrollLeftLogical.peek();
18
- }
19
- getViewport() {
20
- if (this.kernel.viewport.readonly.viewWidth.peek() === 0)
21
- return null;
22
- return this.kernel.viewport.readonly.viewport.peek();
23
- }
24
- getEffectiveDpr() {
25
- return this.kernel.viewport.readonly.dpr.peek();
26
- }
27
- getObservedSize() {
28
- return {
29
- width: this.kernel.viewport.readonly.viewWidth.peek(),
30
- height: this.kernel.viewport.readonly.viewHeight.peek(),
31
- };
32
- }
33
- setScrollLeft(v) {
34
- this.kernel.viewport.actions.scrollTo(v);
35
- }
36
13
  init() {
37
- if (typeof ResizeObserver === 'undefined')
38
- return;
39
14
  const target = this.deps.getDom().container;
40
15
  if (!target)
41
16
  return;
17
+ // 首帧尺寸写入 kernel,不依赖 ResizeObserver 是否可用
42
18
  this.kernel.initViewport();
43
- this.onScroll = (e) => {
19
+ this.onScroll = () => {
44
20
  this.kernel.viewport.actions.syncFromDomScroll();
45
21
  };
46
22
  target.addEventListener('scroll', this.onScroll, { passive: true });
23
+ if (typeof ResizeObserver === 'undefined')
24
+ return;
47
25
  this.resizeObserver = new ResizeObserver((entries) => {
48
26
  const entry = entries[0];
49
27
  if (!entry)
@@ -91,24 +69,5 @@ export class ChartViewportManager {
91
69
  this.onScroll = undefined;
92
70
  }
93
71
  }
94
- computeViewport() {
95
- const container = this.deps.getDom().container;
96
- if (!container)
97
- return null;
98
- const viewWidth = this.kernel.viewport.readonly.viewWidth.peek();
99
- const viewHeight = this.kernel.viewport.readonly.viewHeight.peek();
100
- if (viewWidth === 0 || viewHeight === 0) {
101
- const fallbackW = Math.max(1, Math.round(container.clientWidth));
102
- const fallbackH = Math.max(1, Math.round(container.clientHeight));
103
- if (fallbackW > 0 && fallbackH > 0) {
104
- this.kernel.viewport.actions.resize(fallbackW, fallbackH, this.kernel.viewport.readonly.preciseDpr.peek());
105
- }
106
- }
107
- return this.kernel.viewport.readonly.viewport.peek();
108
- }
109
- /** @deprecated No-op — viewportState is now computed(). */
110
- updateViewportSignal() {
111
- // no-op
112
- }
113
72
  }
114
73
  //# sourceMappingURL=chartViewportManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chartViewportManager.js","sourceRoot":"","sources":["../../../src/engine/viewport/chartViewportManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chartViewportManager.js","sourceRoot":"","sources":["../../../src/engine/viewport/chartViewportManager.ts"],"names":[],"mappings":"AASA;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACvB,IAAI,CAAsB;IAC1B,MAAM,CAAkB;IACxB,cAAc,CAAiB;IAC/B,QAAQ,CAAqB;IAErC,YAAY,IAA0B,EAAE,MAAwB;QAC9D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,CAAA;QAC3C,IAAI,CAAC,MAAM;YAAE,OAAM;QAEnB,wCAAwC;QACxC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAA;QAE1B,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAA;QAClD,CAAC,CAAA;QACD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAEnE,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE,OAAM;QAEjD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE;YACnD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACxB,IAAI,CAAC,KAAK;gBAAE,OAAM;YAElB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;YAChE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;YAClE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;YAE/D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YACjE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;YAEnE,IAAI,UAAU,GAAG,CAAC,CAAA;YAClB,MAAM,SAAS,GAAG,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAA;YACtD,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAA;YACzC,IAAI,SAAS,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnD,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;gBACrD,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;YACxC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;YAEpE,MAAM,YAAY,GAAG,QAAQ,KAAK,SAAS,CAAA;YAC3C,MAAM,aAAa,GAAG,SAAS,KAAK,UAAU,CAAA;YAC9C,MAAM,UAAU,GAAG,UAAU,KAAK,OAAO,CAAA;YACzC,IAAK,MAAM,CAAC,IAAY,CAAC,GAAG,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;gBACpD,OAAO,CAAC,GAAG,CACT,2BAA2B;oBACzB,QAAQ,SAAS,IAAI,UAAU,OAAO,QAAQ,IAAI,SAAS,GAAG;oBAC9D,OAAO,OAAO,OAAO,UAAU,GAAG;oBAClC,YAAY,YAAY,IAAI,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,IAAI,CAAC,aAAa,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACjJ,CAAA;YACH,CAAC;YACD,IAAI,YAAY,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;gBAChD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAA;YAC/B,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE;gBAClC,GAAG,EAAE,0BAAsD;aAC5D,CAAC,CAAA;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE,CAAA;QACjC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;QAE/B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC1E,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAA;QAC3B,CAAC;IACH,CAAC;CACF"}
@@ -17,6 +17,20 @@ export declare function getVisibleRange(scrollLeft: number, viewWidth: number, k
17
17
  start: number;
18
18
  end: number;
19
19
  };
20
+ /**
21
+ * 将 raw visible range 钳制为可索引区间。
22
+ *
23
+ * @remarks getVisibleRange 左右各扩 1 根时 start 可能为 -1;
24
+ * 绘制 / hit-test / 数据下标必须用 clamp 后的 start>=0。
25
+ * 增量加载检测仍读 raw(start 小于 0 表示已滚到左缘扩窗)。
26
+ */
27
+ export declare function clampVisibleRange(range: {
28
+ start: number;
29
+ end: number;
30
+ }): {
31
+ start: number;
32
+ end: number;
33
+ };
20
34
  /**
21
35
  * 计算指定索引区间内的价格范围(max/min)。
22
36
  *
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../src/engine/viewport/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,GAAG,GAAE,MAAU,GACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAgBhC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,SAAS,EAAE,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,UAAU,CAgBZ"}
1
+ {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../src/engine/viewport/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,GAAG,GAAE,MAAU,GACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAgBhC;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAEjC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,SAAS,EAAE,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,UAAU,CAgBZ"}
@@ -23,6 +23,16 @@ export function getVisibleRange(scrollLeft, viewWidth, kWidth, kGap, totalDataCo
23
23
  const end = Math.min(totalDataCount, Math.ceil((scrollLeftPx + viewWidthPx - startXPx) / unitPx) + 1);
24
24
  return { start, end };
25
25
  }
26
+ /**
27
+ * 将 raw visible range 钳制为可索引区间。
28
+ *
29
+ * @remarks getVisibleRange 左右各扩 1 根时 start 可能为 -1;
30
+ * 绘制 / hit-test / 数据下标必须用 clamp 后的 start>=0。
31
+ * 增量加载检测仍读 raw(start 小于 0 表示已滚到左缘扩窗)。
32
+ */
33
+ export function clampVisibleRange(range) {
34
+ return { start: Math.max(0, range.start), end: range.end };
35
+ }
26
36
  /**
27
37
  * 计算指定索引区间内的价格范围(max/min)。
28
38
  *
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../src/engine/viewport/viewport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAE7D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAkB,EAClB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,cAAsB,EACtB,MAAc,CAAC;IAEf,0CAA0C;IAC1C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEtE,mCAAmC;IACnC,MAAM,YAAY,GAAG,UAAU,GAAG,GAAG,CAAA;IACrC,MAAM,WAAW,GAAG,SAAS,GAAG,GAAG,CAAA;IAEnC,qBAAqB;IACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAChE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAClB,cAAc,EACd,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAChE,CAAA;IAED,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAA;AACvB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAiB,EACjB,UAAkB,EAClB,QAAgB;IAEhB,IAAI,QAAQ,GAAG,CAAC,QAAQ,CAAA;IACxB,IAAI,QAAQ,GAAG,QAAQ,CAAA;IAEvB,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9D,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,CAAC;YAAE,SAAQ;QAChB,IAAI,CAAC,CAAC,IAAI,GAAG,QAAQ;YAAE,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAA;QACxC,IAAI,CAAC,CAAC,GAAG,GAAG,QAAQ;YAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAA;IACxC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IACvC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;AAC/B,CAAC"}
1
+ {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../src/engine/viewport/viewport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAE7D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAkB,EAClB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,cAAsB,EACtB,MAAc,CAAC;IAEf,0CAA0C;IAC1C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEtE,mCAAmC;IACnC,MAAM,YAAY,GAAG,UAAU,GAAG,GAAG,CAAA;IACrC,MAAM,WAAW,GAAG,SAAS,GAAG,GAAG,CAAA;IAEnC,qBAAqB;IACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAChE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAClB,cAAc,EACd,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAChE,CAAA;IAED,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAA;AACvB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAGjC;IACC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAA;AAC5D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAiB,EACjB,UAAkB,EAClB,QAAgB;IAEhB,IAAI,QAAQ,GAAG,CAAC,QAAQ,CAAA;IACxB,IAAI,QAAQ,GAAG,QAAQ,CAAA;IAEvB,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9D,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,CAAC;YAAE,SAAQ;QAChB,IAAI,CAAC,CAAC,IAAI,GAAG,QAAQ;YAAE,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAA;QACxC,IAAI,CAAC,CAAC,GAAG,GAAG,QAAQ;YAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAA;IACxC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAA;IACvC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;AAC/B,CAAC"}
@@ -1,5 +1,20 @@
1
1
  import { describe, expect, it, vi } from 'vitest';
2
2
  import { RendererPluginManager } from './rendererPluginManager';
3
+ describe('RendererPluginManager lifecycle', () => {
4
+ it('installs a renderer plugin exactly once', () => {
5
+ const manager = new RendererPluginManager();
6
+ const onInstall = vi.fn();
7
+ manager.setPluginHost({});
8
+ manager.register({
9
+ name: 'test',
10
+ paneId: 'main',
11
+ priority: 0,
12
+ draw: vi.fn(),
13
+ onInstall,
14
+ });
15
+ expect(onInstall).toHaveBeenCalledTimes(1);
16
+ });
17
+ });
3
18
  describe('RendererPluginManager transaction', () => {
4
19
  it('coalesces renderer invalidations into one callback', () => {
5
20
  const manager = new RendererPluginManager();
@@ -1 +1 @@
1
- {"version":3,"file":"rendererPluginManager.test.js","sourceRoot":"","sources":["../../../src/foundation/plugin/rendererPluginManager.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,OAAO,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAC3C,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC1B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;QACzC,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;YACb,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;SACnB,CAAA;QAED,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;YACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACxB,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACtC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,OAAO,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAC3C,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC1B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;QAEzC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;YACvB,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;gBACvB,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAChF,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"rendererPluginManager.test.js","sourceRoot":"","sources":["../../../src/foundation/plugin/rendererPluginManager.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,OAAO,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAC3C,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QACzB,OAAO,CAAC,aAAa,CAAC,EAAW,CAAC,CAAA;QAElC,OAAO,CAAC,QAAQ,CAAC;YACf,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;YACb,SAAS;SACV,CAAC,CAAA;QAEF,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,OAAO,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAC3C,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC1B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;QACzC,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;YACb,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;SACnB,CAAA;QAED,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;YACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACxB,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACtC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,OAAO,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAC3C,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC1B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAA;QAEzC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;YACvB,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;gBACvB,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAChF,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -250,7 +250,10 @@ export interface RenderContext {
250
250
  /** 十字线指向的 K 线索引(无十字线时为 null) */
251
251
  crosshairIndex?: number | null;
252
252
  yAxisCtx?: CanvasRenderingContext2D;
253
+ /** 轴区动态层(最新价标签、十字线价签) */
254
+ yAxisOverlayCtx?: CanvasRenderingContext2D;
253
255
  leftAxisCtx?: CanvasRenderingContext2D;
256
+ leftAxisOverlayCtx?: CanvasRenderingContext2D;
254
257
  xAxisCtx?: CanvasRenderingContext2D;
255
258
  borderCtx?: CanvasRenderingContext2D;
256
259
  /** 覆盖层 Canvas 上下文(用于十字线、Tooltip 等动态内容) */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/foundation/plugin/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/foundation/plugin/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/foundation/plugin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,eAAe;AACf,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,sCAAuB,CAAA;IACvB,8BAAe,CAAA;AACjB,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AA8JD;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,IAQ5B;IACC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,YAAY,EAAE,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE;QACtC,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACvC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;YAC/C,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;YACrD,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;YACjD,eAAe,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC;YACrE,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YAC7C,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YAC7C,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;YACjD,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC;YACjD,sBAAsB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE;SAClE;QACD,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAA;AACH,CAAC;AAiQD,6BAA6B;AAC7B,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;AAEnD,cAAc;AACd,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,gBAAgB,EAAE,CAAC,EAAE,EAAE,qCAAqC;IAC5D,YAAY,EAAE,CAAC,EAAE,EAAE,UAAU;IAC7B,YAAY,EAAE,CAAC,EAAE,EAAE,UAAU;IAC7B,UAAU,EAAE,CAAC,EAAE,MAAM;IACrB,IAAI,EAAE,EAAE,EAAE,MAAM;IAChB;;;OAGG;IACH,SAAS,EAAE,EAAE;IACb,IAAI,EAAE,EAAE,EAAE,SAAS;IACnB;;;OAGG;IACH,eAAe,EAAE,EAAE;IACnB,OAAO,EAAE,EAAE,EAAE,WAAW;IACxB,UAAU,EAAE,GAAG,EAAE,WAAW;IAC5B,aAAa,EAAE,GAAG,EAAE,UAAU;IAC9B,gBAAgB,EAAE,GAAG,EAAE,WAAW;CAC1B,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/foundation/plugin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,eAAe;AACf,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,sCAAuB,CAAA;IACvB,8BAAe,CAAA;AACjB,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AA8JD;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,IAQ5B;IACC,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,YAAY,EAAE,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE;QACtC,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE;YACL,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACvC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;YAC/C,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;YACrD,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;YACjD,eAAe,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC;YACrE,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YAC7C,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;YAC7C,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;YACjD,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC;YACjD,sBAAsB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE;SAClE;QACD,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAA;AACH,CAAC;AAoQD,6BAA6B;AAC7B,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;AAEnD,cAAc;AACd,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,gBAAgB,EAAE,CAAC,EAAE,EAAE,qCAAqC;IAC5D,YAAY,EAAE,CAAC,EAAE,EAAE,UAAU;IAC7B,YAAY,EAAE,CAAC,EAAE,EAAE,UAAU;IAC7B,UAAU,EAAE,CAAC,EAAE,MAAM;IACrB,IAAI,EAAE,EAAE,EAAE,MAAM;IAChB;;;OAGG;IACH,SAAS,EAAE,EAAE;IACb,IAAI,EAAE,EAAE,EAAE,SAAS;IACnB;;;OAGG;IACH,eAAe,EAAE,EAAE;IACnB,OAAO,EAAE,EAAE,EAAE,WAAW;IACxB,UAAU,EAAE,GAAG,EAAE,WAAW;IAC5B,aAAa,EAAE,GAAG,EAAE,UAAU;IAC9B,gBAAgB,EAAE,GAAG,EAAE,WAAW;CAC1B,CAAA"}
@@ -10,6 +10,17 @@
10
10
  * 一帧固定走 capture → derive → seal → render → publish → complete。
11
11
  * render 或 publish 期间的 writeInput 一律进入下一代 pending。
12
12
  * 非 idle 时调用 flush 不会嵌套发布,仅保留 dirty 供外层完成后调度。
13
+ *
14
+ * @remarks 适用范围
15
+ * 这是一个半通用的 rAF 合帧器(semi-general frame coalescer),
16
+ * 专为 ChartRenderer 的绘制管线设计,并非全场景通用的高频处理方案。
17
+ *
18
+ * @Todo 如需在其他场景(WebSocket 消息合并、键盘事件批处理)复用,需补充:
19
+ * - 深层合并 / 自定义 merge 策略(目前 mergeInput 仅浅合并)
20
+ * - 快照深层不可变保证(目前 sealSnapshotRoot 只冻根对象)
21
+ * - 超时/失帧策略(目前纯乐观逐帧)
22
+ * - 背压与优先级集成(FrameBudget 在 scheduler 层但未在此集成)
23
+ * - 非 Record 输入类型支持(目前 TInput 约束为 Record)
13
24
  */
14
25
  import { type ReadonlySignal } from './signal';
15
26
  /** 帧事务所处阶段;用于隔离重入写入 */
@@ -1 +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"}
1
+ {"version":3,"file":"frameTransaction.d.ts","sourceRoot":"","sources":["../../../src/foundation/reactivity/frameTransaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;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,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EACtF,OAAO,EAAE,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,GAClD,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAqJrC"}
@@ -10,6 +10,17 @@
10
10
  * 一帧固定走 capture → derive → seal → render → publish → complete。
11
11
  * render 或 publish 期间的 writeInput 一律进入下一代 pending。
12
12
  * 非 idle 时调用 flush 不会嵌套发布,仅保留 dirty 供外层完成后调度。
13
+ *
14
+ * @remarks 适用范围
15
+ * 这是一个半通用的 rAF 合帧器(semi-general frame coalescer),
16
+ * 专为 ChartRenderer 的绘制管线设计,并非全场景通用的高频处理方案。
17
+ *
18
+ * @Todo 如需在其他场景(WebSocket 消息合并、键盘事件批处理)复用,需补充:
19
+ * - 深层合并 / 自定义 merge 策略(目前 mergeInput 仅浅合并)
20
+ * - 快照深层不可变保证(目前 sealSnapshotRoot 只冻根对象)
21
+ * - 超时/失帧策略(目前纯乐观逐帧)
22
+ * - 背压与优先级集成(FrameBudget 在 scheduler 层但未在此集成)
23
+ * - 非 Record 输入类型支持(目前 TInput 约束为 Record)
13
24
  */
14
25
  import { createSignal } from './signal';
15
26
  /**
@@ -78,20 +89,23 @@ export function createFrameTransaction(options) {
78
89
  dirty = true;
79
90
  }
80
91
  let sealedInput;
92
+ // 封存输入,后续写入只能进下一代
81
93
  phase = 'capturing';
82
94
  try {
83
95
  sealedInput = pending;
84
96
  dirty = false;
85
- // 本帧 capture 之后的新写入进入 nextPending,不得污染 sealedInput
86
97
  pending = { ...sealedInput };
98
+ // 从封存输入纯推导不可变快照
87
99
  phase = 'deriving';
88
100
  const nextGeneration = generation + 1;
89
101
  const snapshot = derive(sealedInput, nextGeneration);
102
+ // 冻结快照根对象
90
103
  phase = 'sealing';
91
104
  sealSnapshotRoot(snapshot);
105
+ // 用本帧快照绘制
92
106
  phase = 'rendering';
93
107
  render?.(snapshot);
94
- // 先推进代际再发布,保证订阅者读 generation 与 snapshot.generation 一致
108
+ // 先推进代际再发布,保证订阅者读到一致代际
95
109
  phase = 'publishing';
96
110
  generation = nextGeneration;
97
111
  published.set(snapshot);
@@ -120,6 +134,7 @@ export function createFrameTransaction(options) {
120
134
  }
121
135
  }
122
136
  function scheduleFlush() {
137
+ // 已有 raf 帧,
123
138
  if (scheduleQueued)
124
139
  return;
125
140
  if (!dirty && nextPending === null)
@@ -1 +1 @@
1
- {"version":3,"file":"frameTransaction.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/frameTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frameTransaction.js","sourceRoot":"","sources":["../../../src/foundation/reactivity/frameTransaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,YAAY,EAAuB,MAAM,UAAU,CAAA;AAK5D;;;GAGG;AACH,SAAS,UAAU,CAAoC,IAAO,EAAE,KAAiB;IAC/E,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,CAAA;AAC9B,CAAC;AAED,yCAAyC;AACzC,SAAS,gBAAgB,CAAI,QAAW;IACtC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAmDD;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAmD;IAEnD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAClC,MAAM,QAAQ,GACZ,OAAO,CAAC,QAAQ;QAChB,CAAC,CAAC,GAAe,EAAE,EAAE;YACnB,IAAI,OAAO,qBAAqB,KAAK,UAAU,EAAE,CAAC;gBAChD,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAA;YACnC,CAAC;YACD,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAC3B,CAAC,CAAC,CAAA;IAEJ,uCAAuC;IACvC,IAAI,OAAO,GAAW,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAA;IACjD,iCAAiC;IACjC,IAAI,WAAW,GAAkB,IAAI,CAAA;IACrC,gCAAgC;IAChC,IAAI,KAAK,GAAG,KAAK,CAAA;IACjB,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,KAAK,GAAe,MAAM,CAAA;IAC9B,IAAI,cAAc,GAAG,KAAK,CAAA;IAE1B,iEAAiE;IACjE,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IACnE,MAAM,SAAS,GAAG,YAAY,CAAY,eAAe,CAAC,CAAA;IAE1D,SAAS,UAAU,CAAC,KAAsB;QACxC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YACpC,KAAK,GAAG,IAAI,CAAA;YACZ,OAAM;QACR,CAAC;QACD,iCAAiC;QACjC,MAAM,IAAI,GAAG,WAAW,IAAI,OAAO,CAAA;QACnC,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACvC,CAAC;IAED,SAAS,KAAK;QACZ,0DAA0D;QAC1D,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,OAAO,SAAS,CAAC,IAAI,EAAE,CAAA;QACzB,CAAC;QAED,IAAI,CAAC,KAAK,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC,IAAI,EAAE,CAAA;QACzB,CAAC;QAED,kDAAkD;QAClD,IAAI,CAAC,KAAK,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACnC,OAAO,GAAG,WAAW,CAAA;YACrB,WAAW,GAAG,IAAI,CAAA;YAClB,KAAK,GAAG,IAAI,CAAA;QACd,CAAC;QAED,IAAI,WAA+B,CAAA;QACnC,kBAAkB;QAClB,KAAK,GAAG,WAAW,CAAA;QACnB,IAAI,CAAC;YACH,WAAW,GAAG,OAAO,CAAA;YACrB,KAAK,GAAG,KAAK,CAAA;YACb,OAAO,GAAG,EAAE,GAAG,WAAW,EAAE,CAAA;YAE5B,gBAAgB;YAChB,KAAK,GAAG,UAAU,CAAA;YAClB,MAAM,cAAc,GAAG,UAAU,GAAG,CAAC,CAAA;YACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;YAEpD,UAAU;YACV,KAAK,GAAG,SAAS,CAAA;YACjB,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YAE1B,UAAU;YACV,KAAK,GAAG,WAAW,CAAA;YACnB,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAA;YAElB,uBAAuB;YACvB,KAAK,GAAG,YAAY,CAAA;YACpB,UAAU,GAAG,cAAc,CAAA;YAC3B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAEvB,OAAO,QAAQ,CAAA;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,2DAA2D;YAC3D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,GAAG,WAAW,CAAA;gBACrB,KAAK,GAAG,IAAI,CAAA;YACd,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;gBAAS,CAAC;YACT,KAAK,GAAG,MAAM,CAAA;YACd,oCAAoC;YACpC,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;gBAC1C,WAAW,GAAG,IAAI,CAAA;gBAClB,KAAK,GAAG,IAAI,CAAA;YACd,CAAC;YACD,+CAA+C;YAC/C,IAAI,KAAK,EAAE,CAAC;gBACV,aAAa,EAAE,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,aAAa;QACpB,YAAY;QACZ,IAAI,cAAc;YAAE,OAAM;QAC1B,IAAI,CAAC,KAAK,IAAI,WAAW,KAAK,IAAI;YAAE,OAAM;QAC1C,cAAc,GAAG,IAAI,CAAA;QACrB,IAAI,CAAC;YACH,QAAQ,CAAC,GAAG,EAAE;gBACZ,cAAc,GAAG,KAAK,CAAA;gBACtB,6DAA6D;gBAC7D,KAAK,EAAE,CAAA;YACT,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,2CAA2C;YAC3C,cAAc,GAAG,KAAK,CAAA;YACtB,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,SAAS,MAAM,CAAI,QAA8C;QAC/D,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QACzD,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE;YACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;YACvC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;QACF,MAAM,IAAI,GAAG,GAAM,EAAE,CAAC,QAAQ,EAAE,CAAA;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;YACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;SAC9B,CAAsB,CAAA;IACzB,CAAC;IAED,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,CAAwC,EAAE;YACpF,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B,CAAC;QACF,IAAI,UAAU;YACZ,OAAO,UAAU,CAAA;QACnB,CAAC;QACD,IAAI,KAAK;YACP,OAAO,KAAK,CAAA;QACd,CAAC;QACD,UAAU;QACV,KAAK;QACL,aAAa;QACb,MAAM;KACP,CAAA;AACH,CAAC"}
@@ -1,61 +1,85 @@
1
1
  /**
2
- * High-level renderer interface the drawing primitives the chart's
3
- * scene layers (candles, volume, indicators, drawings) call into.
2
+ * 渲染器接口Scene 各层(蜡烛、指标、drawing 等)通过它画图。
4
3
  *
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.
4
+ * WebGL WebGPU 实现同一套接口。调用方只走 sceneRenderer(返回 false fail-closed 降级 Canvas2D),不走双路径。
8
5
  *
9
- * Design notes:
10
- * - `drawInstances` is the workhorse: render N copies of a unit geometry
11
- * parameterized by an instance buffer. K-lines, volume bars, footprint
12
- * cells, heatmap tiles all reduce to instanced primitives — see
13
- * `docs/ROADMAP.md` §2.3 for the K-line example.
14
- * - `drawLines` covers MA-style continuous polylines, drawings, axes.
15
- * - `dispatchCompute` exists only because WebGPU has compute shaders;
16
- * the WebGL implementation throws on call so callers can feature-detect
17
- * via `caps.compute`. Volume Profile binning, M4 downsampling, footprint
18
- * aggregation will use it on the WebGPU path.
19
- * - `setUniforms` is intentionally schemaless on the interface — the
20
- * uniform layout is owned by each shader/program. Callers pass a
21
- * structured object that the backend translates into uniform writes.
6
+ * 设计说明:
7
+ * - drawInstances 是主力:一份 unit geometry instance buffer 渲染 N 份。
8
+ * 蜡烛、成交量柱、footprint 格子、heatmap 磁贴都归约为 instanced 图元。
9
+ * - drawLines MA-style 折线、drawing、坐标轴。
10
+ * - dispatchCompute 只有 WebGPU 有;WebGL 实现会抛异常,调用方先查 caps.compute。
11
+ * - uniform 布局由各 shader/pipeline 自行定义,接口不做 schema 约束。
22
12
  */
23
13
  import type { SurfaceBackend, SurfaceRegion } from './SurfaceBackend';
24
- /** Reported by the backend so feature-conditional code can branch. */
14
+ /** 后端上报的能力位,调用方据此分支 */
25
15
  export type RendererCapabilities = {
26
- /** WebGPU compute shaders available. WebGL backends report false. */
16
+ /** WebGPU compute shader 是否可用;WebGL 返回 false */
27
17
  compute: boolean;
28
- /** Storage buffers usable as ring buffers / scatter-add targets. */
18
+ /** storage buffer 是否可用 */
29
19
  storageBuffer: boolean;
30
- /** Maximum elements per drawInstances call (engine-imposed cap). */
20
+ /** 单次 drawInstances 上限(引擎强加) */
31
21
  maxInstances: number;
32
- /** Friendly name, e.g. "webgl2" or "webgpu". */
22
+ /** 名称,如 "webgl2" "webgpu" */
33
23
  name: string;
34
24
  };
35
- /** Vertex/instance buffer wrapper. Backends own the GPU handle. */
25
+ /**
26
+ * 各后端(WebGL/WebGPU/Canvas2D)都实现的绘制接口。
27
+ * 后端持有 GPU 资源,调用方通过不透明 handle 操作。
28
+ */
29
+ export interface Renderer {
30
+ /** 底层 surface,用于 region 绑定和最终合成 */
31
+ readonly surface: SurfaceBackend;
32
+ /** 能力位标志 */
33
+ readonly caps: RendererCapabilities;
34
+ createBuffer(usage: BufferUsage, sizeBytes: number): BufferHandle;
35
+ writeBuffer(handle: BufferHandle, data: ArrayBufferView, offsetBytes?: number): void;
36
+ destroyBuffer(handle: BufferHandle): void;
37
+ /** 编译 shader pipeline。descriptor 格式后端自定,适配层通常提供工厂函数(如 createCandlePipeline) */
38
+ createPipeline(descriptor: unknown): PipelineHandle;
39
+ destroyPipeline(handle: PipelineHandle): void;
40
+ /** WebGPU only — WebGL 会抛异常 */
41
+ createComputePipeline(descriptor: unknown): ComputePipelineHandle;
42
+ destroyComputePipeline(handle: ComputePipelineHandle): void;
43
+ beginFrame(region: SurfaceRegion): void;
44
+ /**
45
+ * 返回 true 表示本批已成功提交 GPU(或 instanceCount<=0 无需绘制)。
46
+ * 返回 false 表示未画上(无 surface / pipeline 不匹配 / 资源缺失)——调用方应 fail-closed 走 2D。
47
+ */
48
+ drawInstances(params: DrawInstancesParams): boolean;
49
+ /**
50
+ * 返回 true 表示本批折线/填充已成功提交 GPU。
51
+ * 返回 false 表示未画上——调用方应 fail-closed 走 2D。
52
+ */
53
+ drawLines(params: DrawLinesParams): boolean;
54
+ /** WebGPU only — WebGL 会抛异常,调用方先查 caps */
55
+ dispatchCompute(params: DispatchComputeParams): void;
56
+ endFrame(): void;
57
+ dispose(): void;
58
+ }
59
+ /** 不透明 buffer handle,后端持有 GPU 资源 */
36
60
  export type BufferHandle = {
37
61
  readonly __brand: 'BufferHandle';
38
62
  };
39
- /** Pipeline / shader program wrapper. */
63
+ /** 不透明 pipeline handle */
40
64
  export type PipelineHandle = {
41
65
  readonly __brand: 'PipelineHandle';
42
66
  };
43
- /** Compute shader handle (WebGPU only). */
67
+ /** WebGPU compute pipeline handle */
44
68
  export type ComputePipelineHandle = {
45
69
  readonly __brand: 'ComputePipelineHandle';
46
70
  };
47
71
  export type BufferUsage = 'vertex' | 'instance' | 'index' | 'uniform' | 'storage';
48
72
  export type DrawInstancesParams = {
49
73
  pipeline: PipelineHandle;
50
- /** Unit-geometry buffer (e.g. a single rectangle) shared across instances. */
74
+ /** 所有 instance 共享的 unit geometry(如一个矩形) */
51
75
  vertices: BufferHandle;
52
- /** Per-instance attribute buffer (e.g. one row per K-line). */
76
+ /** 每个 instance 的属性 buffer(如一行 K 线数据) */
53
77
  instances: BufferHandle;
54
- /** Number of instances to draw. */
78
+ /** 绘制多少个 instance */
55
79
  instanceCount: number;
56
- /** Vertices per instance (e.g. 4 for a quad, 6 if using triangles). */
80
+ /** 每个 instance 的顶点数(quad 4,triangle 6 */
57
81
  vertexCount: number;
58
- /** Uniform block — opaque object the backend reads. */
82
+ /** uniform 块,后端自行解译 */
59
83
  uniforms?: Record<string, unknown>;
60
84
  };
61
85
  export type DrawLineStrip = {
@@ -74,7 +98,7 @@ export type DrawLinesParams = {
74
98
  */
75
99
  vertices?: BufferHandle;
76
100
  vertexCount?: number;
77
- /** Line strip vs disconnected segments. */
101
+ /** strip 连续折线 / list 独立线段 */
78
102
  topology?: 'strip' | 'list';
79
103
  /** 多色折线批量(推荐 MA 等多周期) */
80
104
  strips?: ReadonlyArray<DrawLineStrip>;
@@ -82,50 +106,10 @@ export type DrawLinesParams = {
82
106
  };
83
107
  export type DispatchComputeParams = {
84
108
  pipeline: ComputePipelineHandle;
85
- /** Workgroup counts per axis. */
109
+ /** 各轴 workgroup */
86
110
  workgroups: [number, number?, number?];
87
- /** Input/output buffer bindings, keyed by binding index. */
111
+ /** 输入/输出 buffer 绑定,key binding index */
88
112
  bindings: Record<number, BufferHandle>;
89
113
  uniforms?: Record<string, unknown>;
90
114
  };
91
- /**
92
- * The drawing-primitives interface every backend implements.
93
- *
94
- * Backends own the GPU resources; callers receive opaque handles
95
- * (`BufferHandle`, `PipelineHandle`) and pass them back for draws.
96
- */
97
- export interface Renderer {
98
- /** Underlying surface (for region binding and final composite). */
99
- readonly surface: SurfaceBackend;
100
- /** Reported feature flags — caller branches on `caps.compute` etc. */
101
- readonly caps: RendererCapabilities;
102
- createBuffer(usage: BufferUsage, sizeBytes: number): BufferHandle;
103
- writeBuffer(handle: BufferHandle, data: ArrayBufferView, offsetBytes?: number): void;
104
- destroyBuffer(handle: BufferHandle): void;
105
- /**
106
- * Compile a shader pipeline. The exact pipeline descriptor is backend-specific;
107
- * adapters typically expose factory helpers (e.g. `createCandlePipeline`) that
108
- * internally call this with the right vertex/fragment sources.
109
- */
110
- createPipeline(descriptor: unknown): PipelineHandle;
111
- destroyPipeline(handle: PipelineHandle): void;
112
- /** WebGPU only — WebGL implementations MUST throw with a clear message. */
113
- createComputePipeline(descriptor: unknown): ComputePipelineHandle;
114
- destroyComputePipeline(handle: ComputePipelineHandle): void;
115
- beginFrame(region: SurfaceRegion): 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;
126
- /** WebGPU only — WebGL implementations MUST throw. Caller checks caps first. */
127
- dispatchCompute(params: DispatchComputeParams): void;
128
- endFrame(): void;
129
- dispose(): void;
130
- }
131
115
  //# sourceMappingURL=Renderer.d.ts.map
@@ -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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"}
@@ -1,24 +1,14 @@
1
1
  /**
2
- * High-level renderer interface the drawing primitives the chart's
3
- * scene layers (candles, volume, indicators, drawings) call into.
2
+ * 渲染器接口Scene 各层(蜡烛、指标、drawing 等)通过它画图。
4
3
  *
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.
4
+ * WebGL WebGPU 实现同一套接口。调用方只走 sceneRenderer(返回 false fail-closed 降级 Canvas2D),不走双路径。
8
5
  *
9
- * Design notes:
10
- * - `drawInstances` is the workhorse: render N copies of a unit geometry
11
- * parameterized by an instance buffer. K-lines, volume bars, footprint
12
- * cells, heatmap tiles all reduce to instanced primitives — see
13
- * `docs/ROADMAP.md` §2.3 for the K-line example.
14
- * - `drawLines` covers MA-style continuous polylines, drawings, axes.
15
- * - `dispatchCompute` exists only because WebGPU has compute shaders;
16
- * the WebGL implementation throws on call so callers can feature-detect
17
- * via `caps.compute`. Volume Profile binning, M4 downsampling, footprint
18
- * aggregation will use it on the WebGPU path.
19
- * - `setUniforms` is intentionally schemaless on the interface — the
20
- * uniform layout is owned by each shader/program. Callers pass a
21
- * structured object that the backend translates into uniform writes.
6
+ * 设计说明:
7
+ * - drawInstances 是主力:一份 unit geometry instance buffer 渲染 N 份。
8
+ * 蜡烛、成交量柱、footprint 格子、heatmap 磁贴都归约为 instanced 图元。
9
+ * - drawLines MA-style 折线、drawing、坐标轴。
10
+ * - dispatchCompute 只有 WebGPU 有;WebGL 实现会抛异常,调用方先查 caps.compute。
11
+ * - uniform 布局由各 shader/pipeline 自行定义,接口不做 schema 约束。
22
12
  */
23
13
  export {};
24
14
  //# sourceMappingURL=Renderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/rendering/render/Renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
1
+ {"version":3,"file":"Renderer.js","sourceRoot":"","sources":["../../../src/rendering/render/Renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
@@ -1 +1 @@
1
- {"version":3,"file":"createWebGPURenderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPURenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EASV,QAAQ,EACT,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAcnD,MAAM,MAAM,2BAA2B,GAAG;IACxC,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAA;IAChD,yCAAyC;IACzC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAA;CAChD,CAAA;AAiKD,wBAAsB,oBAAoB,CACxC,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,QAAQ,CAAC,CAienB"}
1
+ {"version":3,"file":"createWebGPURenderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPURenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EASV,QAAQ,EACT,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAgBnD,MAAM,MAAM,2BAA2B,GAAG;IACxC,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAA;IAChD,yCAAyC;IACzC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAA;CAChD,CAAA;AA2KD,wBAAsB,oBAAoB,CACxC,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,QAAQ,CAAC,CAkenB"}