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

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 (234) 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/data/timeShareBuffer.d.ts +3 -0
  14. package/dist/data/timeShareBuffer.d.ts.map +1 -1
  15. package/dist/data/timeShareBuffer.js +13 -0
  16. package/dist/data/timeShareBuffer.js.map +1 -1
  17. package/dist/engine/chart.d.ts +9 -9
  18. package/dist/engine/chart.d.ts.map +1 -1
  19. package/dist/engine/chart.js +87 -101
  20. package/dist/engine/chart.js.map +1 -1
  21. package/dist/engine/chartTypes.d.ts +5 -0
  22. package/dist/engine/chartTypes.d.ts.map +1 -1
  23. package/dist/engine/controller/interaction.d.ts +4 -2
  24. package/dist/engine/controller/interaction.d.ts.map +1 -1
  25. package/dist/engine/controller/interaction.js +18 -10
  26. package/dist/engine/controller/interaction.js.map +1 -1
  27. package/dist/engine/data/chartDataManager.d.ts +14 -18
  28. package/dist/engine/data/chartDataManager.d.ts.map +1 -1
  29. package/dist/engine/data/chartDataManager.js +55 -37
  30. package/dist/engine/data/chartDataManager.js.map +1 -1
  31. package/dist/engine/data/incrementalLoadHint.d.ts +2 -4
  32. package/dist/engine/data/incrementalLoadHint.d.ts.map +1 -1
  33. package/dist/engine/data/incrementalLoadHint.js +5 -2
  34. package/dist/engine/data/incrementalLoadHint.js.map +1 -1
  35. package/dist/engine/data/scrollCompensator.d.ts +3 -13
  36. package/dist/engine/data/scrollCompensator.d.ts.map +1 -1
  37. package/dist/engine/data/scrollCompensator.js +13 -14
  38. package/dist/engine/data/scrollCompensator.js.map +1 -1
  39. package/dist/engine/indicators/chartIndicatorManager.d.ts +16 -17
  40. package/dist/engine/indicators/chartIndicatorManager.d.ts.map +1 -1
  41. package/dist/engine/indicators/chartIndicatorManager.js +37 -37
  42. package/dist/engine/indicators/chartIndicatorManager.js.map +1 -1
  43. package/dist/engine/layout/chartPaneLayout.d.ts +11 -7
  44. package/dist/engine/layout/chartPaneLayout.d.ts.map +1 -1
  45. package/dist/engine/layout/chartPaneLayout.js +58 -16
  46. package/dist/engine/layout/chartPaneLayout.js.map +1 -1
  47. package/dist/engine/modes/timeShareMath.d.ts +56 -0
  48. package/dist/engine/modes/timeShareMath.d.ts.map +1 -0
  49. package/dist/engine/modes/timeShareMath.js +90 -0
  50. package/dist/engine/modes/timeShareMath.js.map +1 -0
  51. package/dist/engine/modes/timeShareMode.d.ts +5 -0
  52. package/dist/engine/modes/timeShareMode.d.ts.map +1 -1
  53. package/dist/engine/modes/timeShareMode.js +27 -27
  54. package/dist/engine/modes/timeShareMode.js.map +1 -1
  55. package/dist/engine/paneRenderer.d.ts +2 -0
  56. package/dist/engine/paneRenderer.d.ts.map +1 -1
  57. package/dist/engine/paneRenderer.js +15 -5
  58. package/dist/engine/paneRenderer.js.map +1 -1
  59. package/dist/engine/render/chartRenderer.d.ts +28 -22
  60. package/dist/engine/render/chartRenderer.d.ts.map +1 -1
  61. package/dist/engine/render/chartRenderer.js +143 -85
  62. package/dist/engine/render/chartRenderer.js.map +1 -1
  63. package/dist/engine/render/layers/leftYAxisLayer.d.ts +9 -2
  64. package/dist/engine/render/layers/leftYAxisLayer.d.ts.map +1 -1
  65. package/dist/engine/render/layers/leftYAxisLayer.js +11 -2
  66. package/dist/engine/render/layers/leftYAxisLayer.js.map +1 -1
  67. package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts +6 -4
  68. package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts.map +1 -1
  69. package/dist/engine/render/layers/mainIndicatorLegendLayer.js +6 -9
  70. package/dist/engine/render/layers/mainIndicatorLegendLayer.js.map +1 -1
  71. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts +2 -0
  72. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts.map +1 -0
  73. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js +19 -0
  74. package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js.map +1 -0
  75. package/dist/engine/render/layers/yAxisLayer.d.ts +9 -2
  76. package/dist/engine/render/layers/yAxisLayer.d.ts.map +1 -1
  77. package/dist/engine/render/layers/yAxisLayer.js +11 -2
  78. package/dist/engine/render/layers/yAxisLayer.js.map +1 -1
  79. package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts +7 -3
  80. package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts.map +1 -1
  81. package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +234 -330
  82. package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
  83. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts +73 -0
  84. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts.map +1 -0
  85. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js +182 -0
  86. package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js.map +1 -0
  87. package/dist/engine/renderers/leftYAxis.d.ts +15 -2
  88. package/dist/engine/renderers/leftYAxis.d.ts.map +1 -1
  89. package/dist/engine/renderers/leftYAxis.js +56 -16
  90. package/dist/engine/renderers/leftYAxis.js.map +1 -1
  91. package/dist/engine/renderers/timeShare.d.ts.map +1 -1
  92. package/dist/engine/renderers/timeShare.js +20 -9
  93. package/dist/engine/renderers/timeShare.js.map +1 -1
  94. package/dist/engine/renderers/yAxis.d.ts +16 -6
  95. package/dist/engine/renderers/yAxis.d.ts.map +1 -1
  96. package/dist/engine/renderers/yAxis.js +49 -16
  97. package/dist/engine/renderers/yAxis.js.map +1 -1
  98. package/dist/engine/state/viewportState.d.ts +4 -1
  99. package/dist/engine/state/viewportState.d.ts.map +1 -1
  100. package/dist/engine/state/viewportState.js +40 -8
  101. package/dist/engine/state/viewportState.js.map +1 -1
  102. package/dist/engine/subPaneManager.d.ts +5 -3
  103. package/dist/engine/subPaneManager.d.ts.map +1 -1
  104. package/dist/engine/subPaneManager.js +3 -2
  105. package/dist/engine/subPaneManager.js.map +1 -1
  106. package/dist/engine/utils/chartZoomController.d.ts +9 -7
  107. package/dist/engine/utils/chartZoomController.d.ts.map +1 -1
  108. package/dist/engine/utils/chartZoomController.js +13 -12
  109. package/dist/engine/utils/chartZoomController.js.map +1 -1
  110. package/dist/engine/viewport/chartViewportManager.d.ts +5 -16
  111. package/dist/engine/viewport/chartViewportManager.d.ts.map +1 -1
  112. package/dist/engine/viewport/chartViewportManager.js +7 -48
  113. package/dist/engine/viewport/chartViewportManager.js.map +1 -1
  114. package/dist/engine/viewport/viewport.d.ts +14 -0
  115. package/dist/engine/viewport/viewport.d.ts.map +1 -1
  116. package/dist/engine/viewport/viewport.js +10 -0
  117. package/dist/engine/viewport/viewport.js.map +1 -1
  118. package/dist/foundation/config/chartSettings.d.ts +0 -5
  119. package/dist/foundation/config/chartSettings.d.ts.map +1 -1
  120. package/dist/foundation/config/chartSettings.js +14 -0
  121. package/dist/foundation/config/chartSettings.js.map +1 -1
  122. package/dist/foundation/plugin/rendererPluginManager.test.js +15 -0
  123. package/dist/foundation/plugin/rendererPluginManager.test.js.map +1 -1
  124. package/dist/foundation/plugin/types.d.ts +3 -0
  125. package/dist/foundation/plugin/types.d.ts.map +1 -1
  126. package/dist/foundation/plugin/types.js.map +1 -1
  127. package/dist/foundation/reactivity/frameTransaction.d.ts +11 -0
  128. package/dist/foundation/reactivity/frameTransaction.d.ts.map +1 -1
  129. package/dist/foundation/reactivity/frameTransaction.js +17 -2
  130. package/dist/foundation/reactivity/frameTransaction.js.map +1 -1
  131. package/dist/foundation/utils/kLineDraw/axis.d.ts +3 -0
  132. package/dist/foundation/utils/kLineDraw/axis.d.ts.map +1 -1
  133. package/dist/foundation/utils/kLineDraw/axis.js +40 -9
  134. package/dist/foundation/utils/kLineDraw/axis.js.map +1 -1
  135. package/dist/foundation/utils/sessionTimeLabels.d.ts +59 -0
  136. package/dist/foundation/utils/sessionTimeLabels.d.ts.map +1 -0
  137. package/dist/foundation/utils/sessionTimeLabels.js +170 -0
  138. package/dist/foundation/utils/sessionTimeLabels.js.map +1 -0
  139. package/dist/foundation/utils/timeShareAxisLabels.d.ts +27 -0
  140. package/dist/foundation/utils/timeShareAxisLabels.d.ts.map +1 -0
  141. package/dist/foundation/utils/timeShareAxisLabels.js +45 -0
  142. package/dist/foundation/utils/timeShareAxisLabels.js.map +1 -0
  143. package/dist/rendering/render/Renderer.d.ts +58 -74
  144. package/dist/rendering/render/Renderer.d.ts.map +1 -1
  145. package/dist/rendering/render/Renderer.js +8 -18
  146. package/dist/rendering/render/Renderer.js.map +1 -1
  147. package/dist/rendering/render/createWebGPURenderer.d.ts.map +1 -1
  148. package/dist/rendering/render/createWebGPURenderer.js +30 -17
  149. package/dist/rendering/render/createWebGPURenderer.js.map +1 -1
  150. package/dist/rendering/render/createWebGPUSurfaceBackend.js +3 -3
  151. package/dist/rendering/render/createWebGPUSurfaceBackend.js.map +1 -1
  152. package/dist/rendering/render/physicalLine.d.ts +4 -0
  153. package/dist/rendering/render/physicalLine.d.ts.map +1 -0
  154. package/dist/rendering/render/physicalLine.js +37 -0
  155. package/dist/rendering/render/physicalLine.js.map +1 -0
  156. package/dist/rendering/render/physicalRegion.d.ts +14 -0
  157. package/dist/rendering/render/physicalRegion.d.ts.map +1 -0
  158. package/dist/rendering/render/physicalRegion.js +15 -0
  159. package/dist/rendering/render/physicalRegion.js.map +1 -0
  160. package/dist/rendering/scene/createLayerFromPlugin.d.ts.map +1 -1
  161. package/dist/rendering/scene/createLayerFromPlugin.js +8 -3
  162. package/dist/rendering/scene/createLayerFromPlugin.js.map +1 -1
  163. package/dist/rendering/scene/createScene.d.ts.map +1 -1
  164. package/dist/rendering/scene/createScene.js +4 -3
  165. package/dist/rendering/scene/createScene.js.map +1 -1
  166. package/dist/version.d.ts +1 -1
  167. package/dist/version.js +1 -1
  168. package/package.json +1 -1
  169. package/src/__tests__/stateKernel.test.ts +1 -0
  170. package/src/controllers/createChartController.ts +9 -8
  171. package/src/controllers/index.ts +11 -0
  172. package/src/controllers/types.ts +7 -0
  173. package/src/data/__tests__/timeShareBuffer.test.ts +45 -0
  174. package/src/data/binance.ts +1 -1
  175. package/src/data/timeShareBuffer.ts +15 -0
  176. package/src/engine/__tests__/chart.dpr.test.ts +31 -2
  177. package/src/engine/__tests__/paneRenderer.resize.test.ts +52 -54
  178. package/src/engine/__tests__/subPaneManager.test.ts +5 -3
  179. package/src/engine/chart.ts +105 -115
  180. package/src/engine/chartTypes.ts +5 -0
  181. package/src/engine/controller/__tests__/interaction.dpr.test.ts +39 -2
  182. package/src/engine/controller/interaction.ts +18 -10
  183. package/src/engine/data/__tests__/chartDataManager.incrementalLoad.test.ts +37 -17
  184. package/src/engine/data/__tests__/scrollCompensator.geometry.test.ts +87 -75
  185. package/src/engine/data/chartDataManager.ts +64 -59
  186. package/src/engine/data/incrementalLoadHint.ts +8 -7
  187. package/src/engine/data/scrollCompensator.ts +16 -24
  188. package/src/engine/indicators/__tests__/chartIndicatorManager.test.ts +18 -26
  189. package/src/engine/indicators/chartIndicatorManager.ts +62 -62
  190. package/src/engine/layout/chartPaneLayout.ts +73 -21
  191. package/src/engine/modes/__tests__/timeShareMath.test.ts +185 -0
  192. package/src/engine/modes/__tests__/timeShareMode.test.ts +81 -0
  193. package/src/engine/modes/timeShareMath.ts +150 -0
  194. package/src/engine/modes/timeShareMode.ts +35 -28
  195. package/src/engine/paneRenderer.ts +17 -10
  196. package/src/engine/render/chartRenderer.ts +214 -145
  197. package/src/engine/render/layers/leftYAxisLayer.ts +29 -7
  198. package/src/engine/render/layers/mainIndicatorLegendLayer.test.ts +26 -0
  199. package/src/engine/render/layers/mainIndicatorLegendLayer.ts +13 -10
  200. package/src/engine/render/layers/yAxisLayer.ts +29 -7
  201. package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +270 -403
  202. package/src/engine/renderers/Indicator/mainIndicatorLegendContext.ts +290 -0
  203. package/src/engine/renderers/__tests__/mainIndicatorLegend.renderer.test.ts +73 -2
  204. package/src/engine/renderers/__tests__/yAxis.renderer.test.ts +10 -6
  205. package/src/engine/renderers/leftYAxis.ts +60 -18
  206. package/src/engine/renderers/timeShare.ts +25 -9
  207. package/src/engine/renderers/yAxis.ts +57 -22
  208. package/src/engine/state/__tests__/settingsState.test.ts +9 -0
  209. package/src/engine/state/viewportState.ts +44 -8
  210. package/src/engine/subPaneManager.ts +8 -5
  211. package/src/engine/utils/chartZoomController.ts +22 -19
  212. package/src/engine/viewport/__tests__/visibleRange.clamp.test.ts +50 -0
  213. package/src/engine/viewport/chartViewportManager.ts +9 -60
  214. package/src/engine/viewport/viewport.ts +14 -0
  215. package/src/foundation/config/chartSettings.ts +13 -0
  216. package/src/foundation/plugin/rendererPluginManager.test.ts +18 -0
  217. package/src/foundation/plugin/types.ts +3 -0
  218. package/src/foundation/reactivity/frameTransaction.ts +20 -6
  219. package/src/foundation/utils/__tests__/sessionTimeLabels.test.ts +91 -0
  220. package/src/foundation/utils/kLineDraw/axis.ts +50 -9
  221. package/src/foundation/utils/sessionTimeLabels.ts +237 -0
  222. package/src/foundation/utils/timeShareAxisLabels.ts +94 -0
  223. package/src/rendering/render/Renderer.ts +69 -85
  224. package/src/rendering/render/__tests__/physicalLine.test.ts +51 -0
  225. package/src/rendering/render/__tests__/physicalRegion.test.ts +23 -0
  226. package/src/rendering/render/__tests__/webgpuRenderer.test.ts +31 -1
  227. package/src/rendering/render/__tests__/webgpuSurfaceBackend.test.ts +11 -0
  228. package/src/rendering/render/createWebGPURenderer.ts +30 -17
  229. package/src/rendering/render/createWebGPUSurfaceBackend.ts +3 -3
  230. package/src/rendering/render/physicalLine.ts +45 -0
  231. package/src/rendering/render/physicalRegion.ts +32 -0
  232. package/src/rendering/scene/createLayerFromPlugin.ts +8 -3
  233. package/src/rendering/scene/createScene.ts +4 -3
  234. package/src/version.ts +1 -1
@@ -1,6 +1,6 @@
1
1
  import type { RenderContext } from '../../../foundation/plugin/index';
2
2
  import type { Layer } from '../../../rendering/scene/types';
3
- export declare function createLeftYAxisLayer(options: {
3
+ type LeftYAxisLayerOptions = {
4
4
  axisWidth: number;
5
5
  yPaddingPx: number;
6
6
  getCrosshair: () => {
@@ -8,5 +8,12 @@ export declare function createLeftYAxisLayer(options: {
8
8
  price: number;
9
9
  activePaneId: string | null;
10
10
  } | null;
11
- }, getContext: () => RenderContext | null): Layer;
11
+ };
12
+ /** 左 Y 轴静态层(刻度),main canvas 级刷新 */
13
+ export declare function createLeftYAxisStaticLayer(options: LeftYAxisLayerOptions, getContext: () => RenderContext | null): Layer;
14
+ /** 左 Y 轴动态层(十字线价签),overlay 级刷新 */
15
+ export declare function createLeftYAxisOverlayLayer(options: LeftYAxisLayerOptions, getContext: () => RenderContext | null): Layer;
16
+ /** @deprecated 使用 createLeftYAxisStaticLayer */
17
+ export declare function createLeftYAxisLayer(options: LeftYAxisLayerOptions, getContext: () => RenderContext | null): Layer;
18
+ export {};
12
19
  //# sourceMappingURL=leftYAxisLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"leftYAxisLayer.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/leftYAxisLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAErE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAG3D,wBAAgB,oBAAoB,CAClC,OAAO,EAAE;IACP,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;CACrF,EACD,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP"}
1
+ {"version":3,"file":"leftYAxisLayer.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/leftYAxisLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAErE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAM3D,KAAK,qBAAqB,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;CACrF,CAAA;AAED,mCAAmC;AACnC,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP;AAED,kCAAkC;AAClC,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP;AAED,gDAAgD;AAChD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,EAC9B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP"}
@@ -1,6 +1,15 @@
1
1
  import { createLayerFromPlugin } from '../../../rendering/scene/createLayerFromPlugin';
2
- import { createLeftYAxisRendererPlugin } from '../../renderers/leftYAxis';
2
+ import { createLeftYAxisOverlayRendererPlugin, createLeftYAxisStaticRendererPlugin, } from '../../renderers/leftYAxis';
3
+ /** 左 Y 轴静态层(刻度),main canvas 级刷新 */
4
+ export function createLeftYAxisStaticLayer(options, getContext) {
5
+ return createLayerFromPlugin(createLeftYAxisStaticRendererPlugin(options), getContext, 'global');
6
+ }
7
+ /** 左 Y 轴动态层(十字线价签),overlay 级刷新 */
8
+ export function createLeftYAxisOverlayLayer(options, getContext) {
9
+ return createLayerFromPlugin(createLeftYAxisOverlayRendererPlugin(options), getContext, 'global');
10
+ }
11
+ /** @deprecated 使用 createLeftYAxisStaticLayer */
3
12
  export function createLeftYAxisLayer(options, getContext) {
4
- return createLayerFromPlugin(createLeftYAxisRendererPlugin(options), getContext, 'global');
13
+ return createLeftYAxisStaticLayer(options, getContext);
5
14
  }
6
15
  //# sourceMappingURL=leftYAxisLayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"leftYAxisLayer.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/leftYAxisLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AAEzE,MAAM,UAAU,oBAAoB,CAClC,OAIC,EACD,UAAsC;IAEtC,OAAO,qBAAqB,CAAC,6BAA6B,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;AAC5F,CAAC"}
1
+ {"version":3,"file":"leftYAxisLayer.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/leftYAxisLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EACL,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,2BAA2B,CAAA;AAQlC,mCAAmC;AACnC,MAAM,UAAU,0BAA0B,CACxC,OAA8B,EAC9B,UAAsC;IAEtC,OAAO,qBAAqB,CAAC,mCAAmC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;AAClG,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,2BAA2B,CACzC,OAA8B,EAC9B,UAAsC;IAEtC,OAAO,qBAAqB,CAAC,oCAAoC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;AACnG,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,oBAAoB,CAClC,OAA8B,EAC9B,UAAsC;IAEtC,OAAO,0BAA0B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;AACxD,CAAC"}
@@ -1,6 +1,8 @@
1
- import type { RenderContext, PluginHost } from '../../../foundation/plugin/index';
1
+ import type { RenderContext, RendererPluginWithHost } from '../../../foundation/plugin/index';
2
2
  import type { Layer } from '../../../rendering/scene/types';
3
- export declare function createMainIndicatorLegendLayer(config: {
4
- yPaddingPx: number;
5
- }, getContext: () => RenderContext | null, pluginHost: PluginHost): Layer;
3
+ import { type MainIndicatorLegendOptions } from '../../renderers/Indicator/mainIndicatorLegend';
4
+ export declare function createMainIndicatorLegendLayer(config: MainIndicatorLegendOptions, getContext: () => RenderContext | null): {
5
+ layer: Layer;
6
+ plugin: RendererPluginWithHost;
7
+ };
6
8
  //# sourceMappingURL=mainIndicatorLegendLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mainIndicatorLegendLayer.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/mainIndicatorLegendLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAEjF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAG3D,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,EAC9B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,EACtC,UAAU,EAAE,UAAU,GACrB,KAAK,CAQP"}
1
+ {"version":3,"file":"mainIndicatorLegendLayer.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/mainIndicatorLegendLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,+CAA+C,CAAA;AAEtD,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,0BAA0B,EAClC,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,sBAAsB,CAAA;CAAE,CAMlD"}
@@ -1,13 +1,10 @@
1
1
  import { createLayerFromPlugin } from '../../../rendering/scene/createLayerFromPlugin';
2
- import { createMainIndicatorLegendRendererPlugin } from '../../renderers/Indicator/mainIndicatorLegend';
3
- export function createMainIndicatorLegendLayer(config, getContext, pluginHost) {
2
+ import { createMainIndicatorLegendRendererPlugin, } from '../../renderers/Indicator/mainIndicatorLegend';
3
+ export function createMainIndicatorLegendLayer(config, getContext) {
4
4
  const plugin = createMainIndicatorLegendRendererPlugin(config);
5
- try {
6
- plugin.onInstall?.(pluginHost);
7
- }
8
- catch (e) {
9
- console.error(`[MainIndicatorLegendLayer] onInstall error:`, e);
10
- }
11
- return createLayerFromPlugin(plugin, getContext, 'main');
5
+ return {
6
+ layer: createLayerFromPlugin(plugin, getContext, 'main'),
7
+ plugin,
8
+ };
12
9
  }
13
10
  //# sourceMappingURL=mainIndicatorLegendLayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mainIndicatorLegendLayer.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/mainIndicatorLegendLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EAAE,uCAAuC,EAAE,MAAM,+CAA+C,CAAA;AAEvG,MAAM,UAAU,8BAA8B,CAC5C,MAA8B,EAC9B,UAAsC,EACtC,UAAsB;IAEtB,MAAM,MAAM,GAAG,uCAAuC,CAAC,MAAM,CAAC,CAAA;IAC9D,IAAI,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,CAAA;IAChC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,CAAC,CAAC,CAAA;IACjE,CAAC;IACD,OAAO,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;AAC1D,CAAC"}
1
+ {"version":3,"file":"mainIndicatorLegendLayer.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/mainIndicatorLegendLayer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EACL,uCAAuC,GAExC,MAAM,+CAA+C,CAAA;AAEtD,MAAM,UAAU,8BAA8B,CAC5C,MAAkC,EAClC,UAAsC;IAEtC,MAAM,MAAM,GAAG,uCAAuC,CAAC,MAAM,CAAC,CAAA;IAC9D,OAAO;QACL,KAAK,EAAE,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC;QACxD,MAAM;KACP,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=mainIndicatorLegendLayer.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mainIndicatorLegendLayer.test.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/mainIndicatorLegendLayer.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import { describe, expect, it, vi } from 'vitest';
2
+ const plugin = vi.hoisted(() => ({
3
+ name: 'mainIndicatorLegend',
4
+ paneId: 'main',
5
+ priority: 0,
6
+ draw: vi.fn(),
7
+ onInstall: vi.fn(),
8
+ }));
9
+ vi.mock('../../renderers/Indicator/mainIndicatorLegend', () => ({
10
+ createMainIndicatorLegendRendererPlugin: vi.fn(() => plugin),
11
+ }));
12
+ import { createMainIndicatorLegendLayer } from './mainIndicatorLegendLayer';
13
+ describe('createMainIndicatorLegendLayer', () => {
14
+ it('leaves plugin installation to RendererPluginManager', () => {
15
+ createMainIndicatorLegendLayer({ yPaddingPx: 20 }, () => null);
16
+ expect(plugin.onInstall).not.toHaveBeenCalled();
17
+ });
18
+ });
19
+ //# sourceMappingURL=mainIndicatorLegendLayer.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mainIndicatorLegendLayer.test.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/mainIndicatorLegendLayer.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEjD,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/B,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;IACb,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;CACnB,CAAC,CAAC,CAAA;AAEH,EAAE,CAAC,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,uCAAuC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;CAC7D,CAAC,CAAC,CAAA;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAA;AAE3E,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,8BAA8B,CAC5B,EAAE,UAAU,EAAE,EAAE,EAAE,EAClB,GAAG,EAAE,CAAC,IAAI,CACX,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import type { RenderContext } from '../../../foundation/plugin/index';
2
2
  import type { Layer } from '../../../rendering/scene/types';
3
- export declare function createYAxisLayer(options: {
3
+ type YAxisLayerOptions = {
4
4
  axisWidth: number;
5
5
  yPaddingPx: number;
6
6
  getCrosshair: () => {
@@ -8,5 +8,12 @@ export declare function createYAxisLayer(options: {
8
8
  price: number;
9
9
  activePaneId: string | null;
10
10
  } | null;
11
- }, getContext: () => RenderContext | null): Layer;
11
+ };
12
+ /** Y 轴静态层(刻度),main canvas 级刷新 */
13
+ export declare function createYAxisStaticLayer(options: YAxisLayerOptions, getContext: () => RenderContext | null): Layer;
14
+ /** Y 轴动态层(标签 + 十字线价签),overlay 级刷新 */
15
+ export declare function createYAxisOverlayLayer(options: YAxisLayerOptions, getContext: () => RenderContext | null): Layer;
16
+ /** @deprecated 使用 createYAxisStaticLayer */
17
+ export declare function createYAxisLayer(options: YAxisLayerOptions, getContext: () => RenderContext | null): Layer;
18
+ export {};
12
19
  //# sourceMappingURL=yAxisLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"yAxisLayer.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/yAxisLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAErE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAG3D,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE;IACP,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;CACrF,EACD,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP"}
1
+ {"version":3,"file":"yAxisLayer.d.ts","sourceRoot":"","sources":["../../../../src/engine/render/layers/yAxisLayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAErE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAM3D,KAAK,iBAAiB,GAAG;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;CACrF,CAAA;AAED,iCAAiC;AACjC,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP;AAED,qCAAqC;AACrC,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP;AAED,4CAA4C;AAC5C,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,GACrC,KAAK,CAEP"}
@@ -1,6 +1,15 @@
1
1
  import { createLayerFromPlugin } from '../../../rendering/scene/createLayerFromPlugin';
2
- import { createYAxisRendererPlugin } from '../../renderers/yAxis';
2
+ import { createYAxisOverlayRendererPlugin, createYAxisStaticRendererPlugin, } from '../../renderers/yAxis';
3
+ /** Y 轴静态层(刻度),main canvas 级刷新 */
4
+ export function createYAxisStaticLayer(options, getContext) {
5
+ return createLayerFromPlugin(createYAxisStaticRendererPlugin(options), getContext, 'global');
6
+ }
7
+ /** Y 轴动态层(标签 + 十字线价签),overlay 级刷新 */
8
+ export function createYAxisOverlayLayer(options, getContext) {
9
+ return createLayerFromPlugin(createYAxisOverlayRendererPlugin(options), getContext, 'global');
10
+ }
11
+ /** @deprecated 使用 createYAxisStaticLayer */
3
12
  export function createYAxisLayer(options, getContext) {
4
- return createLayerFromPlugin(createYAxisRendererPlugin(options), getContext, 'global');
13
+ return createYAxisStaticLayer(options, getContext);
5
14
  }
6
15
  //# sourceMappingURL=yAxisLayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"yAxisLayer.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/yAxisLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AAEjE,MAAM,UAAU,gBAAgB,CAC9B,OAIC,EACD,UAAsC;IAEtC,OAAO,qBAAqB,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;AACxF,CAAC"}
1
+ {"version":3,"file":"yAxisLayer.js","sourceRoot":"","sources":["../../../../src/engine/render/layers/yAxisLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EACL,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,uBAAuB,CAAA;AAQ9B,iCAAiC;AACjC,MAAM,UAAU,sBAAsB,CACpC,OAA0B,EAC1B,UAAsC;IAEtC,OAAO,qBAAqB,CAAC,+BAA+B,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;AAC9F,CAAC;AAED,qCAAqC;AACrC,MAAM,UAAU,uBAAuB,CACrC,OAA0B,EAC1B,UAAsC;IAEtC,OAAO,qBAAqB,CAAC,gCAAgC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;AAC/F,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,gBAAgB,CAC9B,OAA0B,EAC1B,UAAsC;IAEtC,OAAO,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;AACpD,CAAC"}
@@ -1,11 +1,15 @@
1
1
  import type { RendererPluginWithHost } from '../../../foundation/plugin/index';
2
+ import { type LegendTemplateContext } from './mainIndicatorLegendContext';
3
+ export type MainIndicatorLegendOptions = {
4
+ yPaddingPx: number;
5
+ /** 每帧构建后的图例上下文回调(canvas / external 均触发) */
6
+ onContext?: (ctx: LegendTemplateContext | null) => void;
7
+ };
2
8
  /**
3
9
  * 创建主图指标图例渲染器插件
4
10
  *
5
11
  * 统一管理 MA、BOLL 等主图指标的图例显示,支持多行排列
6
12
  * MA 数据从 StateStore 读取(与 MA 线渲染器共享同一数据源)
7
13
  */
8
- export declare function createMainIndicatorLegendRendererPlugin(options: {
9
- yPaddingPx: number;
10
- }): RendererPluginWithHost;
14
+ export declare function createMainIndicatorLegendRendererPlugin(options: MainIndicatorLegendOptions): RendererPluginWithHost;
11
15
  //# sourceMappingURL=mainIndicatorLegend.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mainIndicatorLegend.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/mainIndicatorLegend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAGvB,MAAM,kCAAkC,CAAA;AA8BzC;;;;;GAKG;AACH,wBAAgB,uCAAuC,CAAC,OAAO,EAAE;IAC/D,UAAU,EAAE,MAAM,CAAA;CACnB,GAAG,sBAAsB,CAyVzB"}
1
+ {"version":3,"file":"mainIndicatorLegend.d.ts","sourceRoot":"","sources":["../../../../src/engine/renderers/Indicator/mainIndicatorLegend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAGvB,MAAM,kCAAkC,CAAA;AAIzC,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,8BAA8B,CAAA;AA2BrC,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,EAAE,MAAM,CAAA;IAClB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,KAAK,IAAI,CAAA;CACxD,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,0BAA0B,GAClC,sBAAsB,CAyDxB"}