@chartgpu/chartgpu 0.2.5

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 (273) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +208 -0
  3. package/dist/ChartGPU.d.ts +146 -0
  4. package/dist/ChartGPU.d.ts.map +1 -0
  5. package/dist/components/createAnnotationConfigDialog.d.ts +24 -0
  6. package/dist/components/createAnnotationConfigDialog.d.ts.map +1 -0
  7. package/dist/components/createDataZoomSlider.d.ts +14 -0
  8. package/dist/components/createDataZoomSlider.d.ts.map +1 -0
  9. package/dist/components/createLegend.d.ts +9 -0
  10. package/dist/components/createLegend.d.ts.map +1 -0
  11. package/dist/components/createTextOverlay.d.ts +17 -0
  12. package/dist/components/createTextOverlay.d.ts.map +1 -0
  13. package/dist/components/createTooltip.d.ts +12 -0
  14. package/dist/components/createTooltip.d.ts.map +1 -0
  15. package/dist/components/formatTooltip.d.ts +19 -0
  16. package/dist/components/formatTooltip.d.ts.map +1 -0
  17. package/dist/config/OptionResolver.d.ts +137 -0
  18. package/dist/config/OptionResolver.d.ts.map +1 -0
  19. package/dist/config/defaults.d.ts +56 -0
  20. package/dist/config/defaults.d.ts.map +1 -0
  21. package/dist/config/types.d.ts +553 -0
  22. package/dist/config/types.d.ts.map +1 -0
  23. package/dist/core/GPUContext.d.ts +242 -0
  24. package/dist/core/GPUContext.d.ts.map +1 -0
  25. package/dist/core/RenderScheduler.d.ts +174 -0
  26. package/dist/core/RenderScheduler.d.ts.map +1 -0
  27. package/dist/core/createAnimationController.d.ts +15 -0
  28. package/dist/core/createAnimationController.d.ts.map +1 -0
  29. package/dist/core/createRenderCoordinator.d.ts +78 -0
  30. package/dist/core/createRenderCoordinator.d.ts.map +1 -0
  31. package/dist/core/renderCoordinator/animation/animationHelpers.d.ts +183 -0
  32. package/dist/core/renderCoordinator/animation/animationHelpers.d.ts.map +1 -0
  33. package/dist/core/renderCoordinator/annotations/processAnnotations.d.ts +88 -0
  34. package/dist/core/renderCoordinator/annotations/processAnnotations.d.ts.map +1 -0
  35. package/dist/core/renderCoordinator/axis/axisLabelHelpers.d.ts +91 -0
  36. package/dist/core/renderCoordinator/axis/axisLabelHelpers.d.ts.map +1 -0
  37. package/dist/core/renderCoordinator/axis/computeAxisTicks.d.ts +53 -0
  38. package/dist/core/renderCoordinator/axis/computeAxisTicks.d.ts.map +1 -0
  39. package/dist/core/renderCoordinator/data/computeVisibleSlice.d.ts +66 -0
  40. package/dist/core/renderCoordinator/data/computeVisibleSlice.d.ts.map +1 -0
  41. package/dist/core/renderCoordinator/gpu/textureManager.d.ts +69 -0
  42. package/dist/core/renderCoordinator/gpu/textureManager.d.ts.map +1 -0
  43. package/dist/core/renderCoordinator/interaction/interactionHelpers.d.ts +160 -0
  44. package/dist/core/renderCoordinator/interaction/interactionHelpers.d.ts.map +1 -0
  45. package/dist/core/renderCoordinator/render/renderAnnotationLabels.d.ts +36 -0
  46. package/dist/core/renderCoordinator/render/renderAnnotationLabels.d.ts.map +1 -0
  47. package/dist/core/renderCoordinator/render/renderAxisLabels.d.ts +40 -0
  48. package/dist/core/renderCoordinator/render/renderAxisLabels.d.ts.map +1 -0
  49. package/dist/core/renderCoordinator/render/renderOverlays.d.ts +70 -0
  50. package/dist/core/renderCoordinator/render/renderOverlays.d.ts.map +1 -0
  51. package/dist/core/renderCoordinator/render/renderSeries.d.ts +146 -0
  52. package/dist/core/renderCoordinator/render/renderSeries.d.ts.map +1 -0
  53. package/dist/core/renderCoordinator/renderers/rendererPool.d.ts +112 -0
  54. package/dist/core/renderCoordinator/renderers/rendererPool.d.ts.map +1 -0
  55. package/dist/core/renderCoordinator/types.d.ts +19 -0
  56. package/dist/core/renderCoordinator/types.d.ts.map +1 -0
  57. package/dist/core/renderCoordinator/ui/tooltipLegendHelpers.d.ts +104 -0
  58. package/dist/core/renderCoordinator/ui/tooltipLegendHelpers.d.ts.map +1 -0
  59. package/dist/core/renderCoordinator/utils/axisUtils.d.ts +122 -0
  60. package/dist/core/renderCoordinator/utils/axisUtils.d.ts.map +1 -0
  61. package/dist/core/renderCoordinator/utils/boundsComputation.d.ts +69 -0
  62. package/dist/core/renderCoordinator/utils/boundsComputation.d.ts.map +1 -0
  63. package/dist/core/renderCoordinator/utils/canvasUtils.d.ts +52 -0
  64. package/dist/core/renderCoordinator/utils/canvasUtils.d.ts.map +1 -0
  65. package/dist/core/renderCoordinator/utils/dataPointUtils.d.ts +71 -0
  66. package/dist/core/renderCoordinator/utils/dataPointUtils.d.ts.map +1 -0
  67. package/dist/core/renderCoordinator/utils/index.d.ts +12 -0
  68. package/dist/core/renderCoordinator/utils/index.d.ts.map +1 -0
  69. package/dist/core/renderCoordinator/utils/timeAxisUtils.d.ts +149 -0
  70. package/dist/core/renderCoordinator/utils/timeAxisUtils.d.ts.map +1 -0
  71. package/dist/core/renderCoordinator/zoom/zoomHelpers.d.ts +129 -0
  72. package/dist/core/renderCoordinator/zoom/zoomHelpers.d.ts.map +1 -0
  73. package/dist/data/cartesianData.d.ts +72 -0
  74. package/dist/data/cartesianData.d.ts.map +1 -0
  75. package/dist/data/createDataStore.d.ts +27 -0
  76. package/dist/data/createDataStore.d.ts.map +1 -0
  77. package/dist/data/createStreamBuffer.d.ts +20 -0
  78. package/dist/data/createStreamBuffer.d.ts.map +1 -0
  79. package/dist/data/lttbSample.d.ts +5 -0
  80. package/dist/data/lttbSample.d.ts.map +1 -0
  81. package/dist/data/ohlcSample.d.ts +21 -0
  82. package/dist/data/ohlcSample.d.ts.map +1 -0
  83. package/dist/data/packDataPoints.d.ts +65 -0
  84. package/dist/data/packDataPoints.d.ts.map +1 -0
  85. package/dist/data/sampleSeries.d.ts +20 -0
  86. package/dist/data/sampleSeries.d.ts.map +1 -0
  87. package/dist/esm/ChartGPUWorkerController-B50J-8sx.js +772 -0
  88. package/dist/esm/ChartGPUWorkerController-B50J-8sx.js.map +1 -0
  89. package/dist/esm/OptionResolver-R_gJDRSD.js +7150 -0
  90. package/dist/esm/OptionResolver-R_gJDRSD.js.map +1 -0
  91. package/dist/esm/assets/worker-entry-Wg897auv.js +779 -0
  92. package/dist/esm/assets/worker-entry-Wg897auv.js.map +1 -0
  93. package/dist/esm/createChartInWorker-C4fEeJL8.js +1224 -0
  94. package/dist/esm/createChartInWorker-C4fEeJL8.js.map +1 -0
  95. package/dist/esm/index.js +795 -0
  96. package/dist/esm/index.js.map +1 -0
  97. package/dist/index.cjs +1270 -0
  98. package/dist/index.cjs.map +1 -0
  99. package/dist/index.d.ts +30 -0
  100. package/dist/index.d.ts.map +1 -0
  101. package/dist/index.js +10504 -0
  102. package/dist/index.js.map +1 -0
  103. package/dist/interaction/createAnnotationAuthoring.d.ts +115 -0
  104. package/dist/interaction/createAnnotationAuthoring.d.ts.map +1 -0
  105. package/dist/interaction/createAnnotationDragHandler.d.ts +28 -0
  106. package/dist/interaction/createAnnotationDragHandler.d.ts.map +1 -0
  107. package/dist/interaction/createAnnotationHitTester.d.ts +32 -0
  108. package/dist/interaction/createAnnotationHitTester.d.ts.map +1 -0
  109. package/dist/interaction/createChartSync.d.ts +27 -0
  110. package/dist/interaction/createChartSync.d.ts.map +1 -0
  111. package/dist/interaction/createEventManager.d.ts +24 -0
  112. package/dist/interaction/createEventManager.d.ts.map +1 -0
  113. package/dist/interaction/createHoverState.d.ts +20 -0
  114. package/dist/interaction/createHoverState.d.ts.map +1 -0
  115. package/dist/interaction/createInsideZoom.d.ts +14 -0
  116. package/dist/interaction/createInsideZoom.d.ts.map +1 -0
  117. package/dist/interaction/createZoomState.d.ts +63 -0
  118. package/dist/interaction/createZoomState.d.ts.map +1 -0
  119. package/dist/interaction/findCandlestick.d.ts +41 -0
  120. package/dist/interaction/findCandlestick.d.ts.map +1 -0
  121. package/dist/interaction/findNearestPoint.d.ts +61 -0
  122. package/dist/interaction/findNearestPoint.d.ts.map +1 -0
  123. package/dist/interaction/findPieSlice.d.ts +36 -0
  124. package/dist/interaction/findPieSlice.d.ts.map +1 -0
  125. package/dist/interaction/findPointsAtX.d.ts +37 -0
  126. package/dist/interaction/findPointsAtX.d.ts.map +1 -0
  127. package/dist/renderers/createAnnotationMarkerRenderer.d.ts +58 -0
  128. package/dist/renderers/createAnnotationMarkerRenderer.d.ts.map +1 -0
  129. package/dist/renderers/createAreaRenderer.d.ts +19 -0
  130. package/dist/renderers/createAreaRenderer.d.ts.map +1 -0
  131. package/dist/renderers/createAxisRenderer.d.ts +19 -0
  132. package/dist/renderers/createAxisRenderer.d.ts.map +1 -0
  133. package/dist/renderers/createBarRenderer.d.ts +20 -0
  134. package/dist/renderers/createBarRenderer.d.ts.map +1 -0
  135. package/dist/renderers/createCandlestickRenderer.d.ts +19 -0
  136. package/dist/renderers/createCandlestickRenderer.d.ts.map +1 -0
  137. package/dist/renderers/createCrosshairRenderer.d.ts +43 -0
  138. package/dist/renderers/createCrosshairRenderer.d.ts.map +1 -0
  139. package/dist/renderers/createGridRenderer.d.ts +45 -0
  140. package/dist/renderers/createGridRenderer.d.ts.map +1 -0
  141. package/dist/renderers/createHighlightRenderer.d.ts +41 -0
  142. package/dist/renderers/createHighlightRenderer.d.ts.map +1 -0
  143. package/dist/renderers/createLineRenderer.d.ts +18 -0
  144. package/dist/renderers/createLineRenderer.d.ts.map +1 -0
  145. package/dist/renderers/createPieRenderer.d.ts +18 -0
  146. package/dist/renderers/createPieRenderer.d.ts.map +1 -0
  147. package/dist/renderers/createReferenceLineRenderer.d.ts +81 -0
  148. package/dist/renderers/createReferenceLineRenderer.d.ts.map +1 -0
  149. package/dist/renderers/createScatterDensityRenderer.d.ts +14 -0
  150. package/dist/renderers/createScatterDensityRenderer.d.ts.map +1 -0
  151. package/dist/renderers/createScatterRenderer.d.ts +20 -0
  152. package/dist/renderers/createScatterRenderer.d.ts.map +1 -0
  153. package/dist/renderers/rendererUtils.d.ts +100 -0
  154. package/dist/renderers/rendererUtils.d.ts.map +1 -0
  155. package/dist/themes/darkTheme.d.ts +11 -0
  156. package/dist/themes/darkTheme.d.ts.map +1 -0
  157. package/dist/themes/index.d.ts +8 -0
  158. package/dist/themes/index.d.ts.map +1 -0
  159. package/dist/themes/lightTheme.d.ts +11 -0
  160. package/dist/themes/lightTheme.d.ts.map +1 -0
  161. package/dist/themes/types.d.ts +14 -0
  162. package/dist/themes/types.d.ts.map +1 -0
  163. package/dist/types/ChartGPU.d.ts +99 -0
  164. package/dist/types/ChartGPU.d.ts.map +1 -0
  165. package/dist/types/components/createDataZoomSlider.d.ts +14 -0
  166. package/dist/types/components/createDataZoomSlider.d.ts.map +1 -0
  167. package/dist/types/components/createLegend.d.ts +9 -0
  168. package/dist/types/components/createLegend.d.ts.map +1 -0
  169. package/dist/types/components/createTextOverlay.d.ts +17 -0
  170. package/dist/types/components/createTextOverlay.d.ts.map +1 -0
  171. package/dist/types/components/createTooltip.d.ts +12 -0
  172. package/dist/types/components/createTooltip.d.ts.map +1 -0
  173. package/dist/types/components/formatTooltip.d.ts +19 -0
  174. package/dist/types/components/formatTooltip.d.ts.map +1 -0
  175. package/dist/types/config/OptionResolver.d.ts +134 -0
  176. package/dist/types/config/OptionResolver.d.ts.map +1 -0
  177. package/dist/types/config/defaults.d.ts +55 -0
  178. package/dist/types/config/defaults.d.ts.map +1 -0
  179. package/dist/types/config/types.d.ts +485 -0
  180. package/dist/types/config/types.d.ts.map +1 -0
  181. package/dist/types/core/GPUContext.d.ts +242 -0
  182. package/dist/types/core/GPUContext.d.ts.map +1 -0
  183. package/dist/types/core/RenderScheduler.d.ts +174 -0
  184. package/dist/types/core/RenderScheduler.d.ts.map +1 -0
  185. package/dist/types/core/createAnimationController.d.ts +15 -0
  186. package/dist/types/core/createAnimationController.d.ts.map +1 -0
  187. package/dist/types/core/createRenderCoordinator.d.ts +129 -0
  188. package/dist/types/core/createRenderCoordinator.d.ts.map +1 -0
  189. package/dist/types/data/createDataStore.d.ts +33 -0
  190. package/dist/types/data/createDataStore.d.ts.map +1 -0
  191. package/dist/types/data/createStreamBuffer.d.ts +20 -0
  192. package/dist/types/data/createStreamBuffer.d.ts.map +1 -0
  193. package/dist/types/data/lttbSample.d.ts +5 -0
  194. package/dist/types/data/lttbSample.d.ts.map +1 -0
  195. package/dist/types/data/ohlcSample.d.ts +21 -0
  196. package/dist/types/data/ohlcSample.d.ts.map +1 -0
  197. package/dist/types/data/packDataPoints.d.ts +79 -0
  198. package/dist/types/data/packDataPoints.d.ts.map +1 -0
  199. package/dist/types/data/sampleSeries.d.ts +3 -0
  200. package/dist/types/data/sampleSeries.d.ts.map +1 -0
  201. package/dist/types/index.d.ts +35 -0
  202. package/dist/types/index.d.ts.map +1 -0
  203. package/dist/types/interaction/createChartSync.d.ts +12 -0
  204. package/dist/types/interaction/createChartSync.d.ts.map +1 -0
  205. package/dist/types/interaction/createEventManager.d.ts +24 -0
  206. package/dist/types/interaction/createEventManager.d.ts.map +1 -0
  207. package/dist/types/interaction/createHoverState.d.ts +20 -0
  208. package/dist/types/interaction/createHoverState.d.ts.map +1 -0
  209. package/dist/types/interaction/createInsideZoom.d.ts +14 -0
  210. package/dist/types/interaction/createInsideZoom.d.ts.map +1 -0
  211. package/dist/types/interaction/createZoomState.d.ts +63 -0
  212. package/dist/types/interaction/createZoomState.d.ts.map +1 -0
  213. package/dist/types/interaction/findCandlestick.d.ts +41 -0
  214. package/dist/types/interaction/findCandlestick.d.ts.map +1 -0
  215. package/dist/types/interaction/findNearestPoint.d.ts +61 -0
  216. package/dist/types/interaction/findNearestPoint.d.ts.map +1 -0
  217. package/dist/types/interaction/findPieSlice.d.ts +36 -0
  218. package/dist/types/interaction/findPieSlice.d.ts.map +1 -0
  219. package/dist/types/interaction/findPointsAtX.d.ts +37 -0
  220. package/dist/types/interaction/findPointsAtX.d.ts.map +1 -0
  221. package/dist/types/renderers/createAreaRenderer.d.ts +18 -0
  222. package/dist/types/renderers/createAreaRenderer.d.ts.map +1 -0
  223. package/dist/types/renderers/createAxisRenderer.d.ts +19 -0
  224. package/dist/types/renderers/createAxisRenderer.d.ts.map +1 -0
  225. package/dist/types/renderers/createBarRenderer.d.ts +20 -0
  226. package/dist/types/renderers/createBarRenderer.d.ts.map +1 -0
  227. package/dist/types/renderers/createCandlestickRenderer.d.ts +19 -0
  228. package/dist/types/renderers/createCandlestickRenderer.d.ts.map +1 -0
  229. package/dist/types/renderers/createCrosshairRenderer.d.ts +43 -0
  230. package/dist/types/renderers/createCrosshairRenderer.d.ts.map +1 -0
  231. package/dist/types/renderers/createGridRenderer.d.ts +45 -0
  232. package/dist/types/renderers/createGridRenderer.d.ts.map +1 -0
  233. package/dist/types/renderers/createHighlightRenderer.d.ts +41 -0
  234. package/dist/types/renderers/createHighlightRenderer.d.ts.map +1 -0
  235. package/dist/types/renderers/createLineRenderer.d.ts +18 -0
  236. package/dist/types/renderers/createLineRenderer.d.ts.map +1 -0
  237. package/dist/types/renderers/createPieRenderer.d.ts +18 -0
  238. package/dist/types/renderers/createPieRenderer.d.ts.map +1 -0
  239. package/dist/types/renderers/createScatterDensityRenderer.d.ts +14 -0
  240. package/dist/types/renderers/createScatterDensityRenderer.d.ts.map +1 -0
  241. package/dist/types/renderers/createScatterRenderer.d.ts +19 -0
  242. package/dist/types/renderers/createScatterRenderer.d.ts.map +1 -0
  243. package/dist/types/renderers/rendererUtils.d.ts +100 -0
  244. package/dist/types/renderers/rendererUtils.d.ts.map +1 -0
  245. package/dist/types/themes/darkTheme.d.ts +11 -0
  246. package/dist/types/themes/darkTheme.d.ts.map +1 -0
  247. package/dist/types/themes/index.d.ts +8 -0
  248. package/dist/types/themes/index.d.ts.map +1 -0
  249. package/dist/types/themes/lightTheme.d.ts +11 -0
  250. package/dist/types/themes/lightTheme.d.ts.map +1 -0
  251. package/dist/types/themes/types.d.ts +14 -0
  252. package/dist/types/themes/types.d.ts.map +1 -0
  253. package/dist/types/utils/axisLabelStyling.d.ts +27 -0
  254. package/dist/types/utils/axisLabelStyling.d.ts.map +1 -0
  255. package/dist/types/utils/checkWebGPU.d.ts +39 -0
  256. package/dist/types/utils/checkWebGPU.d.ts.map +1 -0
  257. package/dist/types/utils/colors.d.ts +14 -0
  258. package/dist/types/utils/colors.d.ts.map +1 -0
  259. package/dist/types/utils/easing.d.ts +9 -0
  260. package/dist/types/utils/easing.d.ts.map +1 -0
  261. package/dist/types/utils/scales.d.ts +79 -0
  262. package/dist/types/utils/scales.d.ts.map +1 -0
  263. package/dist/utils/axisLabelStyling.d.ts +20 -0
  264. package/dist/utils/axisLabelStyling.d.ts.map +1 -0
  265. package/dist/utils/checkWebGPU.d.ts +39 -0
  266. package/dist/utils/checkWebGPU.d.ts.map +1 -0
  267. package/dist/utils/colors.d.ts +14 -0
  268. package/dist/utils/colors.d.ts.map +1 -0
  269. package/dist/utils/easing.d.ts +9 -0
  270. package/dist/utils/easing.d.ts.map +1 -0
  271. package/dist/utils/scales.d.ts +79 -0
  272. package/dist/utils/scales.d.ts.map +1 -0
  273. package/package.json +64 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptionResolver.d.ts","sourceRoot":"","sources":["../../src/config/OptionResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { CandlestickStyle } from './types';
2
+ export declare const defaultGrid: {
3
+ readonly left: 60;
4
+ readonly right: 20;
5
+ readonly top: 40;
6
+ readonly bottom: 40;
7
+ };
8
+ export declare const defaultPalette: readonly ["#5470C6", "#91CC75", "#FAC858", "#EE6666", "#73C0DE", "#3BA272", "#FC8452", "#9A60B4", "#EA7CCC"];
9
+ export declare const defaultLineStyle: {
10
+ readonly width: 2;
11
+ readonly opacity: 1;
12
+ };
13
+ export declare const defaultAreaStyle: {
14
+ readonly opacity: 0.25;
15
+ };
16
+ export declare const candlestickDefaults: {
17
+ readonly style: CandlestickStyle;
18
+ readonly itemStyle: {
19
+ readonly upColor: "#22c55e";
20
+ readonly downColor: "#ef4444";
21
+ readonly upBorderColor: "#22c55e";
22
+ readonly downBorderColor: "#ef4444";
23
+ readonly borderWidth: 1;
24
+ };
25
+ readonly barWidth: "80%";
26
+ readonly barMinWidth: 1;
27
+ readonly barMaxWidth: 50;
28
+ readonly sampling: "ohlc";
29
+ readonly samplingThreshold: 5000;
30
+ };
31
+ export declare const scatterDefaults: {
32
+ readonly mode: "points";
33
+ readonly binSize: 2;
34
+ readonly densityColormap: "viridis";
35
+ readonly densityNormalization: "log";
36
+ };
37
+ export declare const defaultOptions: {
38
+ readonly grid: {
39
+ readonly left: 60;
40
+ readonly right: 20;
41
+ readonly top: 40;
42
+ readonly bottom: 40;
43
+ };
44
+ readonly xAxis: {
45
+ readonly type: "value";
46
+ };
47
+ readonly yAxis: {
48
+ readonly type: "value";
49
+ readonly autoBounds: "visible";
50
+ };
51
+ readonly autoScroll: false;
52
+ readonly theme: "dark";
53
+ readonly palette: readonly ["#5470C6", "#91CC75", "#FAC858", "#EE6666", "#73C0DE", "#3BA272", "#FC8452", "#9A60B4", "#EA7CCC"];
54
+ readonly series: readonly [];
55
+ };
56
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,gBAAgB,EAIjB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,WAAW;;;;;CAKiB,CAAC;AAE1C,eAAO,MAAM,cAAc,8GAUjB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;CAGgC,CAAC;AAE9D,eAAO,MAAM,gBAAgB;;CAEgC,CAAC;AAE9D,eAAO,MAAM,mBAAmB;oBACV,gBAAgB;;;;;;;;;;;;;CAa5B,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;CAMlB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;CAY1B,CAAC"}
@@ -0,0 +1,553 @@
1
+ /**
2
+ * Chart configuration types (Phase 1).
3
+ */
4
+ import type { ThemeConfig } from '../themes/types';
5
+ export type AxisType = 'value' | 'time' | 'category';
6
+ export type SeriesType = 'line' | 'area' | 'bar' | 'scatter' | 'pie' | 'candlestick';
7
+ /**
8
+ * A single data point for a series.
9
+ */
10
+ export type DataPointTuple = readonly [x: number, y: number, size?: number];
11
+ export type DataPoint = DataPointTuple | Readonly<{
12
+ x: number;
13
+ y: number;
14
+ size?: number;
15
+ }>;
16
+ /**
17
+ * Separate x/y/size arrays for cartesian series data.
18
+ * Allows providing data as parallel arrays instead of array-of-objects.
19
+ */
20
+ export type XYArraysData = Readonly<{
21
+ x: ArrayLike<number>;
22
+ y: ArrayLike<number>;
23
+ size?: ArrayLike<number>;
24
+ }>;
25
+ /**
26
+ * Pre-interleaved XY cartesian data as a typed array view.
27
+ * Data must be laid out as [x0, y0, x1, y1, ...] with even length.
28
+ * Size dimension is NOT interleaved (use XYArraysData.size if needed).
29
+ *
30
+ * Prefer Float32Array for GPU-friendly data transfer, but any ArrayBufferView is accepted.
31
+ */
32
+ export type InterleavedXYData = ArrayBufferView;
33
+ /**
34
+ * Union type for cartesian series data formats.
35
+ * Supports three input formats:
36
+ * - Traditional array of DataPoint objects/tuples
37
+ * - Separate x/y arrays (XYArraysData)
38
+ * - Pre-interleaved typed array (InterleavedXYData)
39
+ */
40
+ export type CartesianSeriesData = ReadonlyArray<DataPoint> | XYArraysData | InterleavedXYData;
41
+ /**
42
+ * OHLC (Open-High-Low-Close) data point for candlestick charts.
43
+ * Order matches ECharts convention: [timestamp, open, close, low, high].
44
+ */
45
+ export type OHLCDataPointTuple = readonly [
46
+ timestamp: number,
47
+ open: number,
48
+ close: number,
49
+ low: number,
50
+ high: number
51
+ ];
52
+ export type OHLCDataPointObject = Readonly<{
53
+ timestamp: number;
54
+ open: number;
55
+ close: number;
56
+ low: number;
57
+ high: number;
58
+ }>;
59
+ export type OHLCDataPoint = OHLCDataPointTuple | OHLCDataPointObject;
60
+ export type SeriesSampling = 'none' | 'lttb' | 'average' | 'max' | 'min' | 'ohlc';
61
+ /**
62
+ * Scatter points use the tuple form `[x, y, size?]`.
63
+ */
64
+ export type ScatterPointTuple = DataPointTuple;
65
+ export type ScatterSymbol = 'circle' | 'rect' | 'triangle';
66
+ /**
67
+ * Grid/padding around the plot area, in CSS pixels.
68
+ */
69
+ export interface GridConfig {
70
+ readonly left?: number;
71
+ readonly right?: number;
72
+ readonly top?: number;
73
+ readonly bottom?: number;
74
+ }
75
+ export interface AxisConfig {
76
+ readonly type: AxisType;
77
+ readonly min?: number;
78
+ readonly max?: number;
79
+ /** Tick length in CSS pixels (default: 6). */
80
+ readonly tickLength?: number;
81
+ readonly name?: string;
82
+ /**
83
+ * Axis domain auto-bounds mode (primarily used for y-axis):
84
+ * - `'global'`: derive from full dataset (pre-zoom behavior)
85
+ * - `'visible'`: derive from visible/zoomed data range (default for y-axis)
86
+ *
87
+ * Note: explicit `min`/`max` always take precedence over auto-bounds.
88
+ * This option is primarily intended for `yAxis` (it has no effect on `xAxis` currently).
89
+ */
90
+ readonly autoBounds?: 'global' | 'visible';
91
+ }
92
+ export interface DataZoomConfig {
93
+ readonly type: 'inside' | 'slider';
94
+ readonly xAxisIndex?: number;
95
+ /** Start percent in [0, 100]. */
96
+ readonly start?: number;
97
+ /** End percent in [0, 100]. */
98
+ readonly end?: number;
99
+ readonly minSpan?: number;
100
+ readonly maxSpan?: number;
101
+ }
102
+ export interface LineStyleConfig {
103
+ readonly width?: number;
104
+ readonly opacity?: number;
105
+ readonly color?: string;
106
+ }
107
+ export interface AreaStyleConfig {
108
+ readonly opacity?: number;
109
+ readonly color?: string;
110
+ }
111
+ export interface SeriesConfigBase {
112
+ readonly name?: string;
113
+ readonly data: CartesianSeriesData;
114
+ readonly color?: string;
115
+ /**
116
+ * Controls whether the series is visible and rendered.
117
+ * When `false`, the series is hidden from the chart and excluded from interactions.
118
+ * Defaults to `true`.
119
+ */
120
+ readonly visible?: boolean;
121
+ /**
122
+ * Optional per-series sampling strategy for large datasets.
123
+ *
124
+ * When `sampling !== 'none'` and `data.length > samplingThreshold`, ChartGPU may downsample
125
+ * the series for rendering and interaction hit-testing. Sampling does not affect axis
126
+ * auto-bounds derivation (bounds use raw/unsampled series data).
127
+ */
128
+ readonly sampling?: SeriesSampling;
129
+ /**
130
+ * Auto-sample when point count exceeds this threshold.
131
+ *
132
+ * Note: when `sampling === 'none'`, this value is ignored at runtime but may still be provided.
133
+ */
134
+ readonly samplingThreshold?: number;
135
+ }
136
+ export interface LineSeriesConfig extends SeriesConfigBase {
137
+ readonly type: 'line';
138
+ readonly lineStyle?: LineStyleConfig;
139
+ /**
140
+ * Optional filled-area styling for a line series.
141
+ * When provided, renderers may choose to render a filled area under the line.
142
+ */
143
+ readonly areaStyle?: AreaStyleConfig;
144
+ }
145
+ export interface AreaSeriesConfig extends SeriesConfigBase {
146
+ readonly type: 'area';
147
+ /**
148
+ * Baseline in data-space used as the filled area floor.
149
+ * If omitted, ChartGPU will default to the y-axis minimum.
150
+ */
151
+ readonly baseline?: number;
152
+ readonly areaStyle?: AreaStyleConfig;
153
+ }
154
+ export interface BarItemStyleConfig {
155
+ readonly borderRadius?: number;
156
+ readonly borderWidth?: number;
157
+ readonly borderColor?: string;
158
+ }
159
+ export interface BarSeriesConfig extends SeriesConfigBase {
160
+ readonly type: 'bar';
161
+ /**
162
+ * Bar width in CSS pixels, or as a percentage of the category width (e.g. '50%').
163
+ */
164
+ readonly barWidth?: number | string;
165
+ /**
166
+ * Gap between bars in the same category, as a ratio in [0, 1].
167
+ */
168
+ readonly barGap?: number;
169
+ /**
170
+ * Gap between categories, as a ratio in [0, 1].
171
+ */
172
+ readonly barCategoryGap?: number;
173
+ /** Stack group id. Bars with the same id may be stacked. */
174
+ readonly stack?: string;
175
+ readonly itemStyle?: BarItemStyleConfig;
176
+ }
177
+ export interface ScatterSeriesConfig extends SeriesConfigBase {
178
+ readonly type: 'scatter';
179
+ /**
180
+ * Scatter rendering mode.
181
+ *
182
+ * - `'points'` (default): draw point markers (current behavior).
183
+ * - `'density'`: render a binned density heatmap in screen space.
184
+ */
185
+ readonly mode?: 'points' | 'density';
186
+ /**
187
+ * Density bin size in CSS pixels (used only when `mode === 'density'`).
188
+ *
189
+ * Smaller bins increase detail but can reduce performance.
190
+ */
191
+ readonly binSize?: number;
192
+ /**
193
+ * Colormap used for density rendering (used only when `mode === 'density'`).
194
+ *
195
+ * - Named: `'viridis' | 'plasma' | 'inferno'`
196
+ * - Custom: a low→high `string[]` of CSS colors
197
+ */
198
+ readonly densityColormap?: 'viridis' | 'plasma' | 'inferno' | readonly string[];
199
+ /**
200
+ * Normalization curve applied to per-bin counts before mapping to the colormap
201
+ * (used only when `mode === 'density'`).
202
+ */
203
+ readonly densityNormalization?: 'linear' | 'sqrt' | 'log';
204
+ /**
205
+ * Scatter symbol size in CSS pixels. When a function is provided, it receives
206
+ * the point tuple `[x, y, size?]`.
207
+ */
208
+ readonly symbolSize?: number | ((value: ScatterPointTuple) => number);
209
+ readonly symbol?: ScatterSymbol;
210
+ }
211
+ export type PieDataItem = Readonly<{
212
+ value: number;
213
+ name: string;
214
+ color?: string;
215
+ /**
216
+ * Controls whether the pie slice is visible and rendered.
217
+ * When `false`, the slice is hidden from the chart and excluded from interactions.
218
+ * Defaults to `true`.
219
+ */
220
+ visible?: boolean;
221
+ }>;
222
+ export interface PieItemStyleConfig {
223
+ readonly borderRadius?: number;
224
+ readonly borderWidth?: number;
225
+ }
226
+ export type PieRadius = number | string | readonly [inner: number | string, outer: number | string];
227
+ export type PieCenter = readonly [x: number | string, y: number | string];
228
+ export interface PieSeriesConfig extends Omit<SeriesConfigBase, 'data' | 'sampling' | 'samplingThreshold'> {
229
+ readonly type: 'pie';
230
+ /**
231
+ * Radius in CSS pixels, as a percent string (e.g. '50%'), or a tuple [inner, outer].
232
+ * When inner > 0, the series renders as a donut.
233
+ */
234
+ readonly radius?: PieRadius;
235
+ /**
236
+ * Center position as [x, y] in CSS pixels or percent strings.
237
+ */
238
+ readonly center?: PieCenter;
239
+ /**
240
+ * Start angle in degrees (default: 90 = top).
241
+ */
242
+ readonly startAngle?: number;
243
+ readonly data: ReadonlyArray<PieDataItem>;
244
+ readonly itemStyle?: PieItemStyleConfig;
245
+ }
246
+ export type CandlestickStyle = 'classic' | 'hollow';
247
+ export interface CandlestickItemStyleConfig {
248
+ readonly upColor?: string;
249
+ readonly downColor?: string;
250
+ readonly upBorderColor?: string;
251
+ readonly downBorderColor?: string;
252
+ readonly borderWidth?: number;
253
+ }
254
+ export interface CandlestickSeriesConfig extends Omit<SeriesConfigBase, 'data'> {
255
+ readonly type: 'candlestick';
256
+ readonly data: ReadonlyArray<OHLCDataPoint>;
257
+ readonly style?: CandlestickStyle;
258
+ readonly itemStyle?: CandlestickItemStyleConfig;
259
+ readonly barWidth?: number | string;
260
+ readonly barMinWidth?: number;
261
+ readonly barMaxWidth?: number;
262
+ /**
263
+ * Sampling strategy for candlestick data. Only 'none' and 'ohlc' are supported.
264
+ */
265
+ readonly sampling?: 'none' | 'ohlc';
266
+ }
267
+ export type SeriesConfig = LineSeriesConfig | AreaSeriesConfig | BarSeriesConfig | ScatterSeriesConfig | PieSeriesConfig | CandlestickSeriesConfig;
268
+ /**
269
+ * Parameters passed to tooltip formatter function.
270
+ */
271
+ export interface TooltipParams {
272
+ readonly seriesName: string;
273
+ readonly seriesIndex: number;
274
+ readonly dataIndex: number;
275
+ /**
276
+ * Value tuple for the data point.
277
+ * - Cartesian series (line, area, bar, scatter): [x, y]
278
+ * - Candlestick series: [timestamp, open, close, low, high]
279
+ */
280
+ readonly value: readonly [number, number] | readonly [number, number, number, number, number];
281
+ readonly color: string;
282
+ }
283
+ /**
284
+ * Tooltip configuration.
285
+ */
286
+ export interface TooltipConfig {
287
+ readonly show?: boolean;
288
+ readonly trigger?: 'item' | 'axis';
289
+ /**
290
+ * Custom formatter function for tooltip content.
291
+ * When trigger is 'item', receives a single TooltipParams.
292
+ * When trigger is 'axis', receives an array of TooltipParams.
293
+ * When trigger is undefined, formatter should handle both signatures.
294
+ */
295
+ readonly formatter?: ((params: TooltipParams) => string) | ((params: ReadonlyArray<TooltipParams>) => string);
296
+ }
297
+ /**
298
+ * Animation configuration for transitions (type definitions only).
299
+ *
300
+ * - `duration` is in milliseconds (default: 300).
301
+ * - Set `ChartGPUOptions.animation = false` to disable all animation.
302
+ */
303
+ export interface AnimationConfig {
304
+ /** Animation duration in ms (default: 300). */
305
+ readonly duration?: number;
306
+ readonly easing?: 'linear' | 'cubicOut' | 'cubicInOut' | 'bounceOut';
307
+ /** Animation delay in ms. */
308
+ readonly delay?: number;
309
+ }
310
+ /**
311
+ * Legend position within the chart.
312
+ */
313
+ export type LegendPosition = 'top' | 'bottom' | 'left' | 'right';
314
+ /**
315
+ * Legend configuration for series display.
316
+ */
317
+ export interface LegendConfig {
318
+ readonly show?: boolean;
319
+ readonly position?: LegendPosition;
320
+ }
321
+ /**
322
+ * Branded type for exact FPS measurements.
323
+ * Use this to distinguish FPS from other numeric values at compile time.
324
+ */
325
+ export type ExactFPS = number & {
326
+ readonly __brand: 'ExactFPS';
327
+ };
328
+ /**
329
+ * Branded type for millisecond durations.
330
+ * Use this to distinguish milliseconds from other numeric values at compile time.
331
+ */
332
+ export type Milliseconds = number & {
333
+ readonly __brand: 'Milliseconds';
334
+ };
335
+ /**
336
+ * Branded type for byte sizes.
337
+ * Use this to distinguish bytes from other numeric values at compile time.
338
+ */
339
+ export type Bytes = number & {
340
+ readonly __brand: 'Bytes';
341
+ };
342
+ /**
343
+ * Statistics for frame time measurements.
344
+ * All times are in milliseconds.
345
+ */
346
+ export interface FrameTimeStats {
347
+ /** Minimum frame time in the measurement window. */
348
+ readonly min: Milliseconds;
349
+ /** Maximum frame time in the measurement window. */
350
+ readonly max: Milliseconds;
351
+ /** Average (mean) frame time. */
352
+ readonly avg: Milliseconds;
353
+ /** 50th percentile (median) frame time. */
354
+ readonly p50: Milliseconds;
355
+ /** 95th percentile frame time. */
356
+ readonly p95: Milliseconds;
357
+ /** 99th percentile frame time. */
358
+ readonly p99: Milliseconds;
359
+ }
360
+ /**
361
+ * GPU timing statistics.
362
+ * Tracks CPU vs GPU time for render operations.
363
+ */
364
+ export interface GPUTimingStats {
365
+ /** Whether GPU timing is enabled and supported. */
366
+ readonly enabled: boolean;
367
+ /** CPU time spent preparing render commands (milliseconds). */
368
+ readonly cpuTime: Milliseconds;
369
+ /** GPU time spent executing render commands (milliseconds). */
370
+ readonly gpuTime: Milliseconds;
371
+ }
372
+ /**
373
+ * Memory usage statistics.
374
+ * Tracks GPU buffer allocations.
375
+ */
376
+ export interface MemoryStats {
377
+ /** Currently used memory in bytes. */
378
+ readonly used: Bytes;
379
+ /** Peak memory usage in bytes since initialization. */
380
+ readonly peak: Bytes;
381
+ /** Total allocated memory in bytes (may include freed regions). */
382
+ readonly allocated: Bytes;
383
+ }
384
+ /**
385
+ * Frame drop detection statistics.
386
+ * Tracks when frame time exceeds expected interval.
387
+ */
388
+ export interface FrameDropStats {
389
+ /** Total number of dropped frames. */
390
+ readonly totalDrops: number;
391
+ /** Consecutive dropped frames (current streak). */
392
+ readonly consecutiveDrops: number;
393
+ /** Timestamp of last dropped frame. */
394
+ readonly lastDropTimestamp: Milliseconds;
395
+ }
396
+ /**
397
+ * Comprehensive performance metrics.
398
+ * Provides exact FPS measurement and detailed frame statistics.
399
+ */
400
+ export interface PerformanceMetrics {
401
+ /** Exact FPS calculated from frame time deltas. */
402
+ readonly fps: ExactFPS;
403
+ /** Frame time statistics (min/max/avg/percentiles). */
404
+ readonly frameTimeStats: FrameTimeStats;
405
+ /** GPU timing statistics (CPU vs GPU time). */
406
+ readonly gpuTiming: GPUTimingStats;
407
+ /** Memory usage statistics. */
408
+ readonly memory: MemoryStats;
409
+ /** Frame drop detection statistics. */
410
+ readonly frameDrops: FrameDropStats;
411
+ /** Total frames rendered since initialization. */
412
+ readonly totalFrames: number;
413
+ /** Total time elapsed since initialization (milliseconds). */
414
+ readonly elapsedTime: Milliseconds;
415
+ }
416
+ /**
417
+ * Performance capabilities of the current environment.
418
+ * Indicates which performance features are supported.
419
+ */
420
+ export interface PerformanceCapabilities {
421
+ /** Whether GPU timing is supported (requires timestamp-query feature). */
422
+ readonly gpuTimingSupported: boolean;
423
+ /** Whether high-resolution timer is available (performance.now). */
424
+ readonly highResTimerSupported: boolean;
425
+ /** Whether performance metrics API is available. */
426
+ readonly performanceMetricsSupported: boolean;
427
+ }
428
+ export type AnnotationLayer = 'belowSeries' | 'aboveSeries';
429
+ export interface AnnotationStyle {
430
+ readonly color?: string;
431
+ readonly lineWidth?: number;
432
+ readonly lineDash?: ReadonlyArray<number>;
433
+ readonly opacity?: number;
434
+ }
435
+ export type AnnotationLabelAnchor = 'start' | 'center' | 'end';
436
+ export type AnnotationLabelPadding = number | readonly [top: number, right: number, bottom: number, left: number];
437
+ export interface AnnotationLabelBackground {
438
+ readonly color?: string;
439
+ readonly opacity?: number;
440
+ readonly padding?: AnnotationLabelPadding;
441
+ readonly borderRadius?: number;
442
+ }
443
+ export interface AnnotationLabel {
444
+ /**
445
+ * Explicit label text. If provided, it takes precedence over template rendering.
446
+ */
447
+ readonly text?: string;
448
+ /**
449
+ * A template string for label generation (e.g. 'x={x}, y={y}').
450
+ * Template semantics are implemented at runtime (types only here).
451
+ */
452
+ readonly template?: string;
453
+ /**
454
+ * Decimal places used when formatting numeric values for templates.
455
+ */
456
+ readonly decimals?: number;
457
+ /**
458
+ * Pixel offset from the anchor point, in CSS pixels: [dx, dy].
459
+ */
460
+ readonly offset?: readonly [dx: number, dy: number];
461
+ readonly anchor?: AnnotationLabelAnchor;
462
+ readonly background?: AnnotationLabelBackground;
463
+ }
464
+ export type AnnotationPosition = Readonly<{
465
+ space: 'data';
466
+ x: number;
467
+ y: number;
468
+ }> | Readonly<{
469
+ space: 'plot';
470
+ x: number;
471
+ y: number;
472
+ }>;
473
+ export interface AnnotationLineX {
474
+ readonly type: 'lineX';
475
+ /** Data-space x coordinate for a vertical line. */
476
+ readonly x: number;
477
+ /**
478
+ * Optional y-range in data-space: [minY, maxY].
479
+ * If omitted, runtime may render the full plot height.
480
+ */
481
+ readonly yRange?: readonly [minY: number, maxY: number];
482
+ }
483
+ export interface AnnotationLineY {
484
+ readonly type: 'lineY';
485
+ /** Data-space y coordinate for a horizontal line. */
486
+ readonly y: number;
487
+ /**
488
+ * Optional x-range in data-space: [minX, maxX].
489
+ * If omitted, runtime may render the full plot width.
490
+ */
491
+ readonly xRange?: readonly [minX: number, maxX: number];
492
+ }
493
+ export interface AnnotationPointMarker {
494
+ readonly symbol?: ScatterSymbol;
495
+ /** Marker size in CSS pixels. */
496
+ readonly size?: number;
497
+ readonly style?: AnnotationStyle;
498
+ }
499
+ export interface AnnotationPoint {
500
+ readonly type: 'point';
501
+ readonly x: number;
502
+ readonly y: number;
503
+ readonly marker?: AnnotationPointMarker;
504
+ }
505
+ export interface AnnotationText {
506
+ readonly type: 'text';
507
+ readonly position: AnnotationPosition;
508
+ readonly text: string;
509
+ }
510
+ export interface AnnotationConfigBase {
511
+ /**
512
+ * Optional stable identifier for updates/diffing in userland.
513
+ * This is not interpreted by ChartGPU runtime yet (types only).
514
+ */
515
+ readonly id?: string;
516
+ readonly layer?: AnnotationLayer;
517
+ readonly style?: AnnotationStyle;
518
+ readonly label?: AnnotationLabel;
519
+ }
520
+ export type AnnotationConfig = (AnnotationLineX | AnnotationLineY | AnnotationPoint | AnnotationText) & AnnotationConfigBase;
521
+ export interface ChartGPUOptions {
522
+ readonly grid?: GridConfig;
523
+ readonly xAxis?: AxisConfig;
524
+ readonly yAxis?: AxisConfig;
525
+ readonly dataZoom?: ReadonlyArray<DataZoomConfig>;
526
+ readonly series?: ReadonlyArray<SeriesConfig>;
527
+ readonly annotations?: ReadonlyArray<AnnotationConfig>;
528
+ /**
529
+ * When true, the chart may automatically keep the view anchored to the latest data while streaming.
530
+ * Default: false.
531
+ */
532
+ readonly autoScroll?: boolean;
533
+ /**
534
+ * Chart theme used for styling and palette defaults.
535
+ * Accepts a built-in theme name or a custom ThemeConfig override.
536
+ */
537
+ readonly theme?: 'dark' | 'light' | ThemeConfig;
538
+ /**
539
+ * Color palette used for series color assignment when a series does not
540
+ * explicitly specify `color`. Colors should be valid CSS color strings.
541
+ */
542
+ readonly palette?: ReadonlyArray<string>;
543
+ readonly tooltip?: TooltipConfig;
544
+ readonly legend?: LegendConfig;
545
+ /**
546
+ * Animation configuration for transitions.
547
+ *
548
+ * - `false` disables all animation.
549
+ * - `true` enables animation with defaults.
550
+ */
551
+ readonly animation?: AnimationConfig | boolean;
552
+ }
553
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}