minerva-design 1.2.0 → 1.4.0

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 (1226) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +21 -21
  3. package/custom-elements.json +13630 -4757
  4. package/dist/angular/fesm2022/minerva-angular.mjs +6872 -172
  5. package/dist/angular/fesm2022/minerva-angular.mjs.map +1 -1
  6. package/dist/angular/types/minerva-angular.d.ts +2240 -0
  7. package/dist/charts/canvas.d.cts +10 -2
  8. package/dist/charts/canvas.d.ts +10 -2
  9. package/dist/charts/core.cjs +1 -1
  10. package/dist/charts/core.d.cts +9 -3
  11. package/dist/charts/core.d.ts +9 -3
  12. package/dist/charts/core.js +19 -6
  13. package/dist/charts/engine/axis.cjs +1 -1
  14. package/dist/charts/engine/axis.cjs.map +1 -1
  15. package/dist/charts/engine/axis.js +6 -6
  16. package/dist/charts/engine/axis.js.map +1 -1
  17. package/dist/charts/engine/canvas.cjs +1 -1
  18. package/dist/charts/engine/canvas.cjs.map +1 -1
  19. package/dist/charts/engine/canvas.d.cts +11 -1
  20. package/dist/charts/engine/canvas.d.ts +11 -1
  21. package/dist/charts/engine/canvas.js +161 -99
  22. package/dist/charts/engine/canvas.js.map +1 -1
  23. package/dist/charts/engine/chart.cjs +1 -2
  24. package/dist/charts/engine/chart.cjs.map +1 -1
  25. package/dist/charts/engine/chart.d.cts +1 -1
  26. package/dist/charts/engine/chart.d.ts +1 -1
  27. package/dist/charts/engine/chart.js +390 -349
  28. package/dist/charts/engine/chart.js.map +1 -1
  29. package/dist/charts/engine/color.cjs +1 -1
  30. package/dist/charts/engine/color.cjs.map +1 -1
  31. package/dist/charts/engine/color.d.cts +17 -0
  32. package/dist/charts/engine/color.d.ts +17 -0
  33. package/dist/charts/engine/color.js +27 -3
  34. package/dist/charts/engine/color.js.map +1 -1
  35. package/dist/charts/engine/controller.cjs +2 -2
  36. package/dist/charts/engine/controller.cjs.map +1 -1
  37. package/dist/charts/engine/controller.d.cts +17 -2
  38. package/dist/charts/engine/controller.d.ts +17 -2
  39. package/dist/charts/engine/controller.js +404 -280
  40. package/dist/charts/engine/controller.js.map +1 -1
  41. package/dist/charts/engine/curve.cjs +2 -0
  42. package/dist/charts/engine/curve.cjs.map +1 -0
  43. package/dist/charts/engine/curve.d.cts +15 -0
  44. package/dist/charts/engine/curve.d.ts +15 -0
  45. package/dist/charts/engine/curve.js +56 -0
  46. package/dist/charts/engine/curve.js.map +1 -0
  47. package/dist/charts/engine/data.cjs +1 -1
  48. package/dist/charts/engine/data.cjs.map +1 -1
  49. package/dist/charts/engine/data.d.cts +21 -2
  50. package/dist/charts/engine/data.d.ts +21 -2
  51. package/dist/charts/engine/data.js +117 -43
  52. package/dist/charts/engine/data.js.map +1 -1
  53. package/dist/charts/engine/dom.cjs +1 -1
  54. package/dist/charts/engine/dom.cjs.map +1 -1
  55. package/dist/charts/engine/dom.d.cts +5 -3
  56. package/dist/charts/engine/dom.d.ts +5 -3
  57. package/dist/charts/engine/dom.js +27 -22
  58. package/dist/charts/engine/dom.js.map +1 -1
  59. package/dist/charts/engine/format.cjs +1 -1
  60. package/dist/charts/engine/format.cjs.map +1 -1
  61. package/dist/charts/engine/format.d.cts +21 -6
  62. package/dist/charts/engine/format.d.ts +21 -6
  63. package/dist/charts/engine/format.js +46 -21
  64. package/dist/charts/engine/format.js.map +1 -1
  65. package/dist/charts/engine/items.cjs +1 -1
  66. package/dist/charts/engine/items.cjs.map +1 -1
  67. package/dist/charts/engine/items.js +290 -62
  68. package/dist/charts/engine/items.js.map +1 -1
  69. package/dist/charts/engine/labels.cjs +2 -0
  70. package/dist/charts/engine/labels.cjs.map +1 -0
  71. package/dist/charts/engine/labels.d.cts +13 -0
  72. package/dist/charts/engine/labels.d.ts +13 -0
  73. package/dist/charts/engine/labels.js +74 -0
  74. package/dist/charts/engine/labels.js.map +1 -0
  75. package/dist/charts/engine/layout.cjs +1 -1
  76. package/dist/charts/engine/layout.cjs.map +1 -1
  77. package/dist/charts/engine/layout.d.cts +34 -2
  78. package/dist/charts/engine/layout.d.ts +34 -2
  79. package/dist/charts/engine/layout.js +53 -12
  80. package/dist/charts/engine/layout.js.map +1 -1
  81. package/dist/charts/engine/locale.cjs +2 -0
  82. package/dist/charts/engine/locale.cjs.map +1 -0
  83. package/dist/charts/engine/locale.d.cts +33 -0
  84. package/dist/charts/engine/locale.d.ts +33 -0
  85. package/dist/charts/engine/locale.js +68 -0
  86. package/dist/charts/engine/locale.js.map +1 -0
  87. package/dist/charts/engine/model.cjs +1 -1
  88. package/dist/charts/engine/model.cjs.map +1 -1
  89. package/dist/charts/engine/model.d.cts +68 -3
  90. package/dist/charts/engine/model.d.ts +68 -3
  91. package/dist/charts/engine/model.js +332 -108
  92. package/dist/charts/engine/model.js.map +1 -1
  93. package/dist/charts/engine/orderbook/book.cjs +2 -0
  94. package/dist/charts/engine/orderbook/book.cjs.map +1 -0
  95. package/dist/charts/engine/orderbook/book.d.cts +28 -0
  96. package/dist/charts/engine/orderbook/book.d.ts +28 -0
  97. package/dist/charts/engine/orderbook/book.js +134 -0
  98. package/dist/charts/engine/orderbook/book.js.map +1 -0
  99. package/dist/charts/engine/orderbook/depth.cjs +2 -0
  100. package/dist/charts/engine/orderbook/depth.cjs.map +1 -0
  101. package/dist/charts/engine/orderbook/depth.d.cts +7 -0
  102. package/dist/charts/engine/orderbook/depth.d.ts +7 -0
  103. package/dist/charts/engine/orderbook/depth.js +413 -0
  104. package/dist/charts/engine/orderbook/depth.js.map +1 -0
  105. package/dist/charts/engine/orderbook/format.cjs +2 -0
  106. package/dist/charts/engine/orderbook/format.cjs.map +1 -0
  107. package/dist/charts/engine/orderbook/format.d.cts +48 -0
  108. package/dist/charts/engine/orderbook/format.d.ts +48 -0
  109. package/dist/charts/engine/orderbook/format.js +65 -0
  110. package/dist/charts/engine/orderbook/format.js.map +1 -0
  111. package/dist/charts/engine/orderbook/heatmap.cjs +2 -0
  112. package/dist/charts/engine/orderbook/heatmap.cjs.map +1 -0
  113. package/dist/charts/engine/orderbook/heatmap.d.cts +9 -0
  114. package/dist/charts/engine/orderbook/heatmap.d.ts +9 -0
  115. package/dist/charts/engine/orderbook/heatmap.js +703 -0
  116. package/dist/charts/engine/orderbook/heatmap.js.map +1 -0
  117. package/dist/charts/engine/orderbook/host.cjs +2 -0
  118. package/dist/charts/engine/orderbook/host.cjs.map +1 -0
  119. package/dist/charts/engine/orderbook/host.d.cts +50 -0
  120. package/dist/charts/engine/orderbook/host.d.ts +50 -0
  121. package/dist/charts/engine/orderbook/host.js +161 -0
  122. package/dist/charts/engine/orderbook/host.js.map +1 -0
  123. package/dist/charts/engine/orderbook/index.cjs +1 -0
  124. package/dist/charts/engine/orderbook/index.d.cts +6 -0
  125. package/dist/charts/engine/orderbook/index.d.ts +6 -0
  126. package/dist/charts/engine/orderbook/index.js +6 -0
  127. package/dist/charts/engine/orderbook/ladder.cjs +2 -0
  128. package/dist/charts/engine/orderbook/ladder.cjs.map +1 -0
  129. package/dist/charts/engine/orderbook/ladder.d.cts +6 -0
  130. package/dist/charts/engine/orderbook/ladder.d.ts +6 -0
  131. package/dist/charts/engine/orderbook/ladder.js +341 -0
  132. package/dist/charts/engine/orderbook/ladder.js.map +1 -0
  133. package/dist/charts/engine/orderbook/tape.cjs +2 -0
  134. package/dist/charts/engine/orderbook/tape.cjs.map +1 -0
  135. package/dist/charts/engine/orderbook/tape.d.cts +6 -0
  136. package/dist/charts/engine/orderbook/tape.d.ts +6 -0
  137. package/dist/charts/engine/orderbook/tape.js +450 -0
  138. package/dist/charts/engine/orderbook/tape.js.map +1 -0
  139. package/dist/charts/engine/orderbook/types.d.cts +735 -0
  140. package/dist/charts/engine/orderbook/types.d.ts +735 -0
  141. package/dist/charts/engine/overlay.cjs +1 -1
  142. package/dist/charts/engine/overlay.cjs.map +1 -1
  143. package/dist/charts/engine/overlay.d.cts +18 -0
  144. package/dist/charts/engine/overlay.d.ts +18 -0
  145. package/dist/charts/engine/overlay.js +138 -102
  146. package/dist/charts/engine/overlay.js.map +1 -1
  147. package/dist/charts/engine/presets.cjs +2 -2
  148. package/dist/charts/engine/presets.cjs.map +1 -1
  149. package/dist/charts/engine/presets.d.cts +319 -5
  150. package/dist/charts/engine/presets.d.ts +319 -5
  151. package/dist/charts/engine/presets.js +463 -38
  152. package/dist/charts/engine/presets.js.map +1 -1
  153. package/dist/charts/engine/renderers/canvas2d.cjs +1 -1
  154. package/dist/charts/engine/renderers/canvas2d.cjs.map +1 -1
  155. package/dist/charts/engine/renderers/canvas2d.js +149 -111
  156. package/dist/charts/engine/renderers/canvas2d.js.map +1 -1
  157. package/dist/charts/engine/renderers/detect.cjs +1 -1
  158. package/dist/charts/engine/renderers/detect.cjs.map +1 -1
  159. package/dist/charts/engine/renderers/detect.js +18 -15
  160. package/dist/charts/engine/renderers/detect.js.map +1 -1
  161. package/dist/charts/engine/renderers/gl.cjs +2 -0
  162. package/dist/charts/engine/renderers/gl.cjs.map +1 -0
  163. package/dist/charts/engine/renderers/gl.d.cts +21 -0
  164. package/dist/charts/engine/renderers/gl.d.ts +21 -0
  165. package/dist/charts/engine/renderers/gl.js +56 -0
  166. package/dist/charts/engine/renderers/gl.js.map +1 -0
  167. package/dist/charts/engine/renderers/range.cjs +1 -1
  168. package/dist/charts/engine/renderers/range.cjs.map +1 -1
  169. package/dist/charts/engine/renderers/range.js +4 -4
  170. package/dist/charts/engine/renderers/range.js.map +1 -1
  171. package/dist/charts/engine/renderers/shaders.cjs +180 -20
  172. package/dist/charts/engine/renderers/shaders.cjs.map +1 -1
  173. package/dist/charts/engine/renderers/shaders.d.cts +18 -2
  174. package/dist/charts/engine/renderers/shaders.d.ts +18 -2
  175. package/dist/charts/engine/renderers/shaders.js +176 -20
  176. package/dist/charts/engine/renderers/shaders.js.map +1 -1
  177. package/dist/charts/engine/renderers/types.cjs.map +1 -1
  178. package/dist/charts/engine/renderers/types.d.cts +11 -4
  179. package/dist/charts/engine/renderers/types.d.ts +11 -4
  180. package/dist/charts/engine/renderers/types.js.map +1 -1
  181. package/dist/charts/engine/renderers/webgl.cjs +2 -0
  182. package/dist/charts/engine/renderers/webgl.cjs.map +1 -0
  183. package/dist/charts/engine/renderers/webgl.d.cts +4 -0
  184. package/dist/charts/engine/renderers/webgl.d.ts +4 -0
  185. package/dist/charts/engine/renderers/webgl.js +133 -0
  186. package/dist/charts/engine/renderers/webgl.js.map +1 -0
  187. package/dist/charts/engine/renderers/webgl2.cjs +1 -1
  188. package/dist/charts/engine/renderers/webgl2.cjs.map +1 -1
  189. package/dist/charts/engine/renderers/webgl2.d.cts +0 -1
  190. package/dist/charts/engine/renderers/webgl2.d.ts +0 -1
  191. package/dist/charts/engine/renderers/webgl2.js +62 -90
  192. package/dist/charts/engine/renderers/webgl2.js.map +1 -1
  193. package/dist/charts/engine/renderers/webgpu.cjs +1 -1
  194. package/dist/charts/engine/renderers/webgpu.cjs.map +1 -1
  195. package/dist/charts/engine/renderers/webgpu.js +18 -15
  196. package/dist/charts/engine/renderers/webgpu.js.map +1 -1
  197. package/dist/charts/engine/scale.cjs +1 -1
  198. package/dist/charts/engine/scale.cjs.map +1 -1
  199. package/dist/charts/engine/scale.js +1 -1
  200. package/dist/charts/engine/scale.js.map +1 -1
  201. package/dist/charts/engine/scene.cjs +1 -1
  202. package/dist/charts/engine/scene.cjs.map +1 -1
  203. package/dist/charts/engine/scene.d.cts +32 -9
  204. package/dist/charts/engine/scene.d.ts +32 -9
  205. package/dist/charts/engine/scene.js +363 -122
  206. package/dist/charts/engine/scene.js.map +1 -1
  207. package/dist/charts/engine/shapes/bullet.cjs +2 -0
  208. package/dist/charts/engine/shapes/bullet.cjs.map +1 -0
  209. package/dist/charts/engine/shapes/bullet.d.cts +6 -0
  210. package/dist/charts/engine/shapes/bullet.d.ts +6 -0
  211. package/dist/charts/engine/shapes/bullet.js +255 -0
  212. package/dist/charts/engine/shapes/bullet.js.map +1 -0
  213. package/dist/charts/engine/shapes/calendar.cjs +2 -0
  214. package/dist/charts/engine/shapes/calendar.cjs.map +1 -0
  215. package/dist/charts/engine/shapes/calendar.d.cts +38 -0
  216. package/dist/charts/engine/shapes/calendar.d.ts +38 -0
  217. package/dist/charts/engine/shapes/calendar.js +369 -0
  218. package/dist/charts/engine/shapes/calendar.js.map +1 -0
  219. package/dist/charts/engine/shapes/canvas.cjs +2 -0
  220. package/dist/charts/engine/shapes/canvas.cjs.map +1 -0
  221. package/dist/charts/engine/shapes/canvas.d.cts +65 -0
  222. package/dist/charts/engine/shapes/canvas.d.ts +65 -0
  223. package/dist/charts/engine/shapes/canvas.js +168 -0
  224. package/dist/charts/engine/shapes/canvas.js.map +1 -0
  225. package/dist/charts/engine/shapes/chart.cjs +2 -0
  226. package/dist/charts/engine/shapes/chart.cjs.map +1 -0
  227. package/dist/charts/engine/shapes/chart.d.cts +7 -0
  228. package/dist/charts/engine/shapes/chart.d.ts +7 -0
  229. package/dist/charts/engine/shapes/chart.js +292 -0
  230. package/dist/charts/engine/shapes/chart.js.map +1 -0
  231. package/dist/charts/engine/shapes/draw.cjs +2 -0
  232. package/dist/charts/engine/shapes/draw.cjs.map +1 -0
  233. package/dist/charts/engine/shapes/draw.d.cts +22 -0
  234. package/dist/charts/engine/shapes/draw.d.ts +22 -0
  235. package/dist/charts/engine/shapes/draw.js +165 -0
  236. package/dist/charts/engine/shapes/draw.js.map +1 -0
  237. package/dist/charts/engine/shapes/funnel.cjs +2 -0
  238. package/dist/charts/engine/shapes/funnel.cjs.map +1 -0
  239. package/dist/charts/engine/shapes/funnel.d.cts +6 -0
  240. package/dist/charts/engine/shapes/funnel.d.ts +6 -0
  241. package/dist/charts/engine/shapes/funnel.js +149 -0
  242. package/dist/charts/engine/shapes/funnel.js.map +1 -0
  243. package/dist/charts/engine/shapes/gauge.cjs +2 -0
  244. package/dist/charts/engine/shapes/gauge.cjs.map +1 -0
  245. package/dist/charts/engine/shapes/gauge.d.cts +7 -0
  246. package/dist/charts/engine/shapes/gauge.d.ts +7 -0
  247. package/dist/charts/engine/shapes/gauge.js +210 -0
  248. package/dist/charts/engine/shapes/gauge.js.map +1 -0
  249. package/dist/charts/engine/shapes/hit.cjs +2 -0
  250. package/dist/charts/engine/shapes/hit.cjs.map +1 -0
  251. package/dist/charts/engine/shapes/hit.d.cts +30 -0
  252. package/dist/charts/engine/shapes/hit.d.ts +30 -0
  253. package/dist/charts/engine/shapes/hit.js +145 -0
  254. package/dist/charts/engine/shapes/hit.js.map +1 -0
  255. package/dist/charts/engine/shapes/index.d.cts +12 -0
  256. package/dist/charts/engine/shapes/index.d.ts +12 -0
  257. package/dist/charts/engine/shapes/labels.cjs +2 -0
  258. package/dist/charts/engine/shapes/labels.cjs.map +1 -0
  259. package/dist/charts/engine/shapes/labels.d.cts +14 -0
  260. package/dist/charts/engine/shapes/labels.d.ts +14 -0
  261. package/dist/charts/engine/shapes/labels.js +146 -0
  262. package/dist/charts/engine/shapes/labels.js.map +1 -0
  263. package/dist/charts/engine/shapes/layout.cjs +3 -0
  264. package/dist/charts/engine/shapes/layout.cjs.map +1 -0
  265. package/dist/charts/engine/shapes/layout.d.cts +93 -0
  266. package/dist/charts/engine/shapes/layout.d.ts +93 -0
  267. package/dist/charts/engine/shapes/layout.js +353 -0
  268. package/dist/charts/engine/shapes/layout.js.map +1 -0
  269. package/dist/charts/engine/shapes/pie.cjs +2 -0
  270. package/dist/charts/engine/shapes/pie.cjs.map +1 -0
  271. package/dist/charts/engine/shapes/pie.d.cts +20 -0
  272. package/dist/charts/engine/shapes/pie.d.ts +20 -0
  273. package/dist/charts/engine/shapes/pie.js +302 -0
  274. package/dist/charts/engine/shapes/pie.js.map +1 -0
  275. package/dist/charts/engine/shapes/radar.cjs +2 -0
  276. package/dist/charts/engine/shapes/radar.cjs.map +1 -0
  277. package/dist/charts/engine/shapes/radar.d.cts +8 -0
  278. package/dist/charts/engine/shapes/radar.d.ts +8 -0
  279. package/dist/charts/engine/shapes/radar.js +198 -0
  280. package/dist/charts/engine/shapes/radar.js.map +1 -0
  281. package/dist/charts/engine/shapes/radialBar.cjs +2 -0
  282. package/dist/charts/engine/shapes/radialBar.cjs.map +1 -0
  283. package/dist/charts/engine/shapes/radialBar.d.cts +8 -0
  284. package/dist/charts/engine/shapes/radialBar.d.ts +8 -0
  285. package/dist/charts/engine/shapes/radialBar.js +155 -0
  286. package/dist/charts/engine/shapes/radialBar.js.map +1 -0
  287. package/dist/charts/engine/shapes/runtime.cjs +2 -0
  288. package/dist/charts/engine/shapes/runtime.cjs.map +1 -0
  289. package/dist/charts/engine/shapes/runtime.d.cts +36 -0
  290. package/dist/charts/engine/shapes/runtime.d.ts +36 -0
  291. package/dist/charts/engine/shapes/runtime.js +107 -0
  292. package/dist/charts/engine/shapes/runtime.js.map +1 -0
  293. package/dist/charts/engine/shapes/sankey.cjs +2 -0
  294. package/dist/charts/engine/shapes/sankey.cjs.map +1 -0
  295. package/dist/charts/engine/shapes/sankey.d.cts +29 -0
  296. package/dist/charts/engine/shapes/sankey.d.ts +29 -0
  297. package/dist/charts/engine/shapes/sankey.js +372 -0
  298. package/dist/charts/engine/shapes/sankey.js.map +1 -0
  299. package/dist/charts/engine/shapes/scene.cjs +2 -0
  300. package/dist/charts/engine/shapes/scene.cjs.map +1 -0
  301. package/dist/charts/engine/shapes/scene.d.cts +311 -0
  302. package/dist/charts/engine/shapes/scene.d.ts +311 -0
  303. package/dist/charts/engine/shapes/scene.js +125 -0
  304. package/dist/charts/engine/shapes/scene.js.map +1 -0
  305. package/dist/charts/engine/shapes/sunburst.cjs +2 -0
  306. package/dist/charts/engine/shapes/sunburst.cjs.map +1 -0
  307. package/dist/charts/engine/shapes/sunburst.d.cts +6 -0
  308. package/dist/charts/engine/shapes/sunburst.d.ts +6 -0
  309. package/dist/charts/engine/shapes/sunburst.js +261 -0
  310. package/dist/charts/engine/shapes/sunburst.js.map +1 -0
  311. package/dist/charts/engine/shapes/treemap.cjs +2 -0
  312. package/dist/charts/engine/shapes/treemap.cjs.map +1 -0
  313. package/dist/charts/engine/shapes/treemap.d.cts +14 -0
  314. package/dist/charts/engine/shapes/treemap.d.ts +14 -0
  315. package/dist/charts/engine/shapes/treemap.js +213 -0
  316. package/dist/charts/engine/shapes/treemap.js.map +1 -0
  317. package/dist/charts/engine/shapes/types.d.cts +719 -0
  318. package/dist/charts/engine/shapes/types.d.ts +719 -0
  319. package/dist/charts/engine/signature.cjs +2 -0
  320. package/dist/charts/engine/signature.cjs.map +1 -0
  321. package/dist/charts/engine/signature.d.cts +9 -0
  322. package/dist/charts/engine/signature.d.ts +9 -0
  323. package/dist/charts/engine/signature.js +13 -0
  324. package/dist/charts/engine/signature.js.map +1 -0
  325. package/dist/charts/engine/theme.cjs +1 -1
  326. package/dist/charts/engine/theme.cjs.map +1 -1
  327. package/dist/charts/engine/theme.d.cts +10 -1
  328. package/dist/charts/engine/theme.d.ts +10 -1
  329. package/dist/charts/engine/theme.js +40 -16
  330. package/dist/charts/engine/theme.js.map +1 -1
  331. package/dist/charts/engine/three-d/canvas2d.cjs +2 -0
  332. package/dist/charts/engine/three-d/canvas2d.cjs.map +1 -0
  333. package/dist/charts/engine/three-d/canvas2d.d.cts +4 -0
  334. package/dist/charts/engine/three-d/canvas2d.d.ts +4 -0
  335. package/dist/charts/engine/three-d/canvas2d.js +104 -0
  336. package/dist/charts/engine/three-d/canvas2d.js.map +1 -0
  337. package/dist/charts/engine/three-d/chart.cjs +2 -0
  338. package/dist/charts/engine/three-d/chart.cjs.map +1 -0
  339. package/dist/charts/engine/three-d/chart.d.cts +15 -0
  340. package/dist/charts/engine/three-d/chart.d.ts +15 -0
  341. package/dist/charts/engine/three-d/chart.js +621 -0
  342. package/dist/charts/engine/three-d/chart.js.map +1 -0
  343. package/dist/charts/engine/three-d/colormap.cjs +2 -0
  344. package/dist/charts/engine/three-d/colormap.cjs.map +1 -0
  345. package/dist/charts/engine/three-d/colormap.d.cts +16 -0
  346. package/dist/charts/engine/three-d/colormap.d.ts +16 -0
  347. package/dist/charts/engine/three-d/colormap.js +166 -0
  348. package/dist/charts/engine/three-d/colormap.js.map +1 -0
  349. package/dist/charts/engine/three-d/contours.cjs +2 -0
  350. package/dist/charts/engine/three-d/contours.cjs.map +1 -0
  351. package/dist/charts/engine/three-d/contours.d.cts +7 -0
  352. package/dist/charts/engine/three-d/contours.d.ts +7 -0
  353. package/dist/charts/engine/three-d/contours.js +47 -0
  354. package/dist/charts/engine/three-d/contours.js.map +1 -0
  355. package/dist/charts/engine/three-d/detect.cjs +2 -0
  356. package/dist/charts/engine/three-d/detect.cjs.map +1 -0
  357. package/dist/charts/engine/three-d/detect.d.cts +11 -0
  358. package/dist/charts/engine/three-d/detect.d.ts +11 -0
  359. package/dist/charts/engine/three-d/detect.js +35 -0
  360. package/dist/charts/engine/three-d/detect.js.map +1 -0
  361. package/dist/charts/engine/three-d/dom.cjs +2 -0
  362. package/dist/charts/engine/three-d/dom.cjs.map +1 -0
  363. package/dist/charts/engine/three-d/dom.d.cts +21 -0
  364. package/dist/charts/engine/three-d/dom.d.ts +21 -0
  365. package/dist/charts/engine/three-d/dom.js +98 -0
  366. package/dist/charts/engine/three-d/dom.js.map +1 -0
  367. package/dist/charts/engine/three-d/geometry.cjs +2 -0
  368. package/dist/charts/engine/three-d/geometry.cjs.map +1 -0
  369. package/dist/charts/engine/three-d/geometry.d.cts +76 -0
  370. package/dist/charts/engine/three-d/geometry.d.ts +76 -0
  371. package/dist/charts/engine/three-d/geometry.js +529 -0
  372. package/dist/charts/engine/three-d/geometry.js.map +1 -0
  373. package/dist/charts/engine/three-d/hover.cjs +2 -0
  374. package/dist/charts/engine/three-d/hover.cjs.map +1 -0
  375. package/dist/charts/engine/three-d/hover.d.cts +25 -0
  376. package/dist/charts/engine/three-d/hover.d.ts +25 -0
  377. package/dist/charts/engine/three-d/hover.js +131 -0
  378. package/dist/charts/engine/three-d/hover.js.map +1 -0
  379. package/dist/charts/engine/three-d/index.cjs +1 -0
  380. package/dist/charts/engine/three-d/index.d.cts +2 -0
  381. package/dist/charts/engine/three-d/index.d.ts +2 -0
  382. package/dist/charts/engine/three-d/index.js +2 -0
  383. package/dist/charts/engine/three-d/labels.cjs +2 -0
  384. package/dist/charts/engine/three-d/labels.cjs.map +1 -0
  385. package/dist/charts/engine/three-d/labels.d.cts +23 -0
  386. package/dist/charts/engine/three-d/labels.d.ts +23 -0
  387. package/dist/charts/engine/three-d/labels.js +136 -0
  388. package/dist/charts/engine/three-d/labels.js.map +1 -0
  389. package/dist/charts/engine/three-d/math.cjs +2 -0
  390. package/dist/charts/engine/three-d/math.cjs.map +1 -0
  391. package/dist/charts/engine/three-d/math.d.cts +84 -0
  392. package/dist/charts/engine/three-d/math.d.ts +84 -0
  393. package/dist/charts/engine/three-d/math.js +150 -0
  394. package/dist/charts/engine/three-d/math.js.map +1 -0
  395. package/dist/charts/engine/three-d/model.cjs +2 -0
  396. package/dist/charts/engine/three-d/model.cjs.map +1 -0
  397. package/dist/charts/engine/three-d/model.d.cts +130 -0
  398. package/dist/charts/engine/three-d/model.d.ts +130 -0
  399. package/dist/charts/engine/three-d/model.js +277 -0
  400. package/dist/charts/engine/three-d/model.js.map +1 -0
  401. package/dist/charts/engine/three-d/overlay.cjs +2 -0
  402. package/dist/charts/engine/three-d/overlay.cjs.map +1 -0
  403. package/dist/charts/engine/three-d/overlay.d.cts +72 -0
  404. package/dist/charts/engine/three-d/overlay.d.ts +72 -0
  405. package/dist/charts/engine/three-d/overlay.js +197 -0
  406. package/dist/charts/engine/three-d/overlay.js.map +1 -0
  407. package/dist/charts/engine/three-d/pick.cjs +2 -0
  408. package/dist/charts/engine/three-d/pick.cjs.map +1 -0
  409. package/dist/charts/engine/three-d/pick.d.cts +52 -0
  410. package/dist/charts/engine/three-d/pick.d.ts +52 -0
  411. package/dist/charts/engine/three-d/pick.js +220 -0
  412. package/dist/charts/engine/three-d/pick.js.map +1 -0
  413. package/dist/charts/engine/three-d/render-types.cjs +2 -0
  414. package/dist/charts/engine/three-d/render-types.cjs.map +1 -0
  415. package/dist/charts/engine/three-d/render-types.d.cts +82 -0
  416. package/dist/charts/engine/three-d/render-types.d.ts +82 -0
  417. package/dist/charts/engine/three-d/render-types.js +13 -0
  418. package/dist/charts/engine/three-d/render-types.js.map +1 -0
  419. package/dist/charts/engine/three-d/shaders.cjs +276 -0
  420. package/dist/charts/engine/three-d/shaders.cjs.map +1 -0
  421. package/dist/charts/engine/three-d/shaders.d.cts +26 -0
  422. package/dist/charts/engine/three-d/shaders.d.ts +26 -0
  423. package/dist/charts/engine/three-d/shaders.js +191 -0
  424. package/dist/charts/engine/three-d/shaders.js.map +1 -0
  425. package/dist/charts/engine/three-d/sort.cjs +2 -0
  426. package/dist/charts/engine/three-d/sort.cjs.map +1 -0
  427. package/dist/charts/engine/three-d/sort.d.cts +18 -0
  428. package/dist/charts/engine/three-d/sort.d.ts +18 -0
  429. package/dist/charts/engine/three-d/sort.js +71 -0
  430. package/dist/charts/engine/three-d/sort.js.map +1 -0
  431. package/dist/charts/engine/three-d/types.d.cts +588 -0
  432. package/dist/charts/engine/three-d/types.d.ts +588 -0
  433. package/dist/charts/engine/three-d/webgl.cjs +2 -0
  434. package/dist/charts/engine/three-d/webgl.cjs.map +1 -0
  435. package/dist/charts/engine/three-d/webgl.d.cts +10 -0
  436. package/dist/charts/engine/three-d/webgl.d.ts +10 -0
  437. package/dist/charts/engine/three-d/webgl.js +130 -0
  438. package/dist/charts/engine/three-d/webgl.js.map +1 -0
  439. package/dist/charts/engine/three-d/webgpu.cjs +2 -0
  440. package/dist/charts/engine/three-d/webgpu.cjs.map +1 -0
  441. package/dist/charts/engine/three-d/webgpu.d.cts +5 -0
  442. package/dist/charts/engine/three-d/webgpu.d.ts +5 -0
  443. package/dist/charts/engine/three-d/webgpu.js +249 -0
  444. package/dist/charts/engine/three-d/webgpu.js.map +1 -0
  445. package/dist/charts/engine/time.cjs +1 -1
  446. package/dist/charts/engine/time.cjs.map +1 -1
  447. package/dist/charts/engine/time.d.cts +13 -4
  448. package/dist/charts/engine/time.d.ts +13 -4
  449. package/dist/charts/engine/time.js +156 -91
  450. package/dist/charts/engine/time.js.map +1 -1
  451. package/dist/charts/engine/trading/chart.cjs +2 -0
  452. package/dist/charts/engine/trading/chart.cjs.map +1 -0
  453. package/dist/charts/engine/trading/chart.d.cts +3 -0
  454. package/dist/charts/engine/trading/chart.d.ts +3 -0
  455. package/dist/charts/engine/trading/chart.js +1507 -0
  456. package/dist/charts/engine/trading/chart.js.map +1 -0
  457. package/dist/charts/engine/trading/drawings.cjs +2 -0
  458. package/dist/charts/engine/trading/drawings.cjs.map +1 -0
  459. package/dist/charts/engine/trading/drawings.d.cts +57 -0
  460. package/dist/charts/engine/trading/drawings.d.ts +57 -0
  461. package/dist/charts/engine/trading/drawings.js +160 -0
  462. package/dist/charts/engine/trading/drawings.js.map +1 -0
  463. package/dist/charts/engine/trading/format.cjs +2 -0
  464. package/dist/charts/engine/trading/format.cjs.map +1 -0
  465. package/dist/charts/engine/trading/format.d.cts +60 -0
  466. package/dist/charts/engine/trading/format.d.ts +60 -0
  467. package/dist/charts/engine/trading/format.js +131 -0
  468. package/dist/charts/engine/trading/format.js.map +1 -0
  469. package/dist/charts/engine/trading/geometry.cjs +2 -0
  470. package/dist/charts/engine/trading/geometry.cjs.map +1 -0
  471. package/dist/charts/engine/trading/geometry.d.cts +55 -0
  472. package/dist/charts/engine/trading/geometry.d.ts +55 -0
  473. package/dist/charts/engine/trading/geometry.js +131 -0
  474. package/dist/charts/engine/trading/geometry.js.map +1 -0
  475. package/dist/charts/engine/trading/index.cjs +1 -0
  476. package/dist/charts/engine/trading/index.d.cts +3 -0
  477. package/dist/charts/engine/trading/index.d.ts +3 -0
  478. package/dist/charts/engine/trading/index.js +3 -0
  479. package/dist/charts/engine/trading/indicators.cjs +2 -0
  480. package/dist/charts/engine/trading/indicators.cjs.map +1 -0
  481. package/dist/charts/engine/trading/indicators.d.cts +105 -0
  482. package/dist/charts/engine/trading/indicators.d.ts +105 -0
  483. package/dist/charts/engine/trading/indicators.js +268 -0
  484. package/dist/charts/engine/trading/indicators.js.map +1 -0
  485. package/dist/charts/engine/trading/labels.cjs +2 -0
  486. package/dist/charts/engine/trading/labels.cjs.map +1 -0
  487. package/dist/charts/engine/trading/labels.d.cts +7 -0
  488. package/dist/charts/engine/trading/labels.d.ts +7 -0
  489. package/dist/charts/engine/trading/labels.js +91 -0
  490. package/dist/charts/engine/trading/labels.js.map +1 -0
  491. package/dist/charts/engine/trading/scale.cjs +2 -0
  492. package/dist/charts/engine/trading/scale.cjs.map +1 -0
  493. package/dist/charts/engine/trading/scale.d.cts +46 -0
  494. package/dist/charts/engine/trading/scale.d.ts +46 -0
  495. package/dist/charts/engine/trading/scale.js +100 -0
  496. package/dist/charts/engine/trading/scale.js.map +1 -0
  497. package/dist/charts/engine/trading/store.cjs +2 -0
  498. package/dist/charts/engine/trading/store.cjs.map +1 -0
  499. package/dist/charts/engine/trading/store.d.cts +62 -0
  500. package/dist/charts/engine/trading/store.d.ts +62 -0
  501. package/dist/charts/engine/trading/store.js +129 -0
  502. package/dist/charts/engine/trading/store.js.map +1 -0
  503. package/dist/charts/engine/trading/studies.cjs +2 -0
  504. package/dist/charts/engine/trading/studies.cjs.map +1 -0
  505. package/dist/charts/engine/trading/studies.d.cts +52 -0
  506. package/dist/charts/engine/trading/studies.d.ts +52 -0
  507. package/dist/charts/engine/trading/studies.js +254 -0
  508. package/dist/charts/engine/trading/studies.js.map +1 -0
  509. package/dist/charts/engine/trading/types.d.cts +656 -0
  510. package/dist/charts/engine/trading/types.d.ts +656 -0
  511. package/dist/charts/engine/types.d.cts +227 -15
  512. package/dist/charts/engine/types.d.ts +227 -15
  513. package/dist/charts/index.cjs +1 -1
  514. package/dist/charts/index.d.cts +7 -2
  515. package/dist/charts/index.d.ts +7 -2
  516. package/dist/charts/index.js +22 -8
  517. package/dist/charts/react/Chart.cjs +1 -1
  518. package/dist/charts/react/Chart.cjs.map +1 -1
  519. package/dist/charts/react/Chart.d.cts +11 -4
  520. package/dist/charts/react/Chart.d.ts +11 -4
  521. package/dist/charts/react/Chart.js +70 -47
  522. package/dist/charts/react/Chart.js.map +1 -1
  523. package/dist/charts/react/charts.cjs +1 -1
  524. package/dist/charts/react/charts.cjs.map +1 -1
  525. package/dist/charts/react/charts.d.cts +48 -2
  526. package/dist/charts/react/charts.d.ts +48 -2
  527. package/dist/charts/react/charts.js +371 -76
  528. package/dist/charts/react/charts.js.map +1 -1
  529. package/dist/charts/react/orderbook.cjs +2 -0
  530. package/dist/charts/react/orderbook.cjs.map +1 -0
  531. package/dist/charts/react/orderbook.d.cts +142 -0
  532. package/dist/charts/react/orderbook.d.ts +142 -0
  533. package/dist/charts/react/orderbook.js +182 -0
  534. package/dist/charts/react/orderbook.js.map +1 -0
  535. package/dist/charts/react/shapes.cjs +2 -0
  536. package/dist/charts/react/shapes.cjs.map +1 -0
  537. package/dist/charts/react/shapes.d.cts +537 -0
  538. package/dist/charts/react/shapes.d.ts +537 -0
  539. package/dist/charts/react/shapes.js +429 -0
  540. package/dist/charts/react/shapes.js.map +1 -0
  541. package/dist/charts/react/three-d.cjs +2 -0
  542. package/dist/charts/react/three-d.cjs.map +1 -0
  543. package/dist/charts/react/three-d.d.cts +151 -0
  544. package/dist/charts/react/three-d.d.ts +151 -0
  545. package/dist/charts/react/three-d.js +154 -0
  546. package/dist/charts/react/three-d.js.map +1 -0
  547. package/dist/charts/react/trading.cjs +2 -0
  548. package/dist/charts/react/trading.cjs.map +1 -0
  549. package/dist/charts/react/trading.d.cts +93 -0
  550. package/dist/charts/react/trading.d.ts +93 -0
  551. package/dist/charts/react/trading.js +95 -0
  552. package/dist/charts/react/trading.js.map +1 -0
  553. package/dist/charts/react/types.d.cts +200 -7
  554. package/dist/charts/react/types.d.ts +200 -7
  555. package/dist/core/contracts.cjs +1 -1
  556. package/dist/core/contracts.cjs.map +1 -1
  557. package/dist/core/contracts.js +1 -1
  558. package/dist/core/contracts.js.map +1 -1
  559. package/dist/native/charts/src/canvas.cjs +1 -1
  560. package/dist/native/charts/src/canvas.js +9 -3
  561. package/dist/native/charts/src/engine/axis.cjs +1 -1
  562. package/dist/native/charts/src/engine/axis.cjs.map +1 -1
  563. package/dist/native/charts/src/engine/axis.js +6 -6
  564. package/dist/native/charts/src/engine/axis.js.map +1 -1
  565. package/dist/native/charts/src/engine/color.cjs +1 -1
  566. package/dist/native/charts/src/engine/color.cjs.map +1 -1
  567. package/dist/native/charts/src/engine/color.js +12 -3
  568. package/dist/native/charts/src/engine/color.js.map +1 -1
  569. package/dist/native/charts/src/engine/controller.cjs +2 -2
  570. package/dist/native/charts/src/engine/controller.cjs.map +1 -1
  571. package/dist/native/charts/src/engine/controller.js +418 -294
  572. package/dist/native/charts/src/engine/controller.js.map +1 -1
  573. package/dist/native/charts/src/engine/curve.cjs +2 -0
  574. package/dist/native/charts/src/engine/curve.cjs.map +1 -0
  575. package/dist/native/charts/src/engine/curve.js +56 -0
  576. package/dist/native/charts/src/engine/curve.js.map +1 -0
  577. package/dist/native/charts/src/engine/data.cjs +1 -1
  578. package/dist/native/charts/src/engine/data.cjs.map +1 -1
  579. package/dist/native/charts/src/engine/data.js +117 -43
  580. package/dist/native/charts/src/engine/data.js.map +1 -1
  581. package/dist/native/charts/src/engine/format.cjs +1 -1
  582. package/dist/native/charts/src/engine/format.cjs.map +1 -1
  583. package/dist/native/charts/src/engine/format.js +46 -21
  584. package/dist/native/charts/src/engine/format.js.map +1 -1
  585. package/dist/native/charts/src/engine/labels.cjs +2 -0
  586. package/dist/native/charts/src/engine/labels.cjs.map +1 -0
  587. package/dist/native/charts/src/engine/labels.js +74 -0
  588. package/dist/native/charts/src/engine/labels.js.map +1 -0
  589. package/dist/native/charts/src/engine/layout.cjs +1 -1
  590. package/dist/native/charts/src/engine/layout.cjs.map +1 -1
  591. package/dist/native/charts/src/engine/layout.js +53 -12
  592. package/dist/native/charts/src/engine/layout.js.map +1 -1
  593. package/dist/native/charts/src/engine/locale.cjs +2 -0
  594. package/dist/native/charts/src/engine/locale.cjs.map +1 -0
  595. package/dist/native/charts/src/engine/locale.js +60 -0
  596. package/dist/native/charts/src/engine/locale.js.map +1 -0
  597. package/dist/native/charts/src/engine/model.cjs +1 -1
  598. package/dist/native/charts/src/engine/model.cjs.map +1 -1
  599. package/dist/native/charts/src/engine/model.js +335 -111
  600. package/dist/native/charts/src/engine/model.js.map +1 -1
  601. package/dist/native/charts/src/engine/overlay.cjs +1 -1
  602. package/dist/native/charts/src/engine/overlay.cjs.map +1 -1
  603. package/dist/native/charts/src/engine/overlay.js +54 -31
  604. package/dist/native/charts/src/engine/overlay.js.map +1 -1
  605. package/dist/native/charts/src/engine/presets.cjs +2 -2
  606. package/dist/native/charts/src/engine/presets.cjs.map +1 -1
  607. package/dist/native/charts/src/engine/presets.js +456 -34
  608. package/dist/native/charts/src/engine/presets.js.map +1 -1
  609. package/dist/native/charts/src/engine/scale.cjs +1 -1
  610. package/dist/native/charts/src/engine/scale.cjs.map +1 -1
  611. package/dist/native/charts/src/engine/scale.js +1 -1
  612. package/dist/native/charts/src/engine/scale.js.map +1 -1
  613. package/dist/native/charts/src/engine/scene.cjs +1 -1
  614. package/dist/native/charts/src/engine/scene.cjs.map +1 -1
  615. package/dist/native/charts/src/engine/scene.js +369 -128
  616. package/dist/native/charts/src/engine/scene.js.map +1 -1
  617. package/dist/native/charts/src/engine/shapes/bullet.cjs +2 -0
  618. package/dist/native/charts/src/engine/shapes/bullet.cjs.map +1 -0
  619. package/dist/native/charts/src/engine/shapes/bullet.js +255 -0
  620. package/dist/native/charts/src/engine/shapes/bullet.js.map +1 -0
  621. package/dist/native/charts/src/engine/shapes/calendar.cjs +2 -0
  622. package/dist/native/charts/src/engine/shapes/calendar.cjs.map +1 -0
  623. package/dist/native/charts/src/engine/shapes/calendar.js +364 -0
  624. package/dist/native/charts/src/engine/shapes/calendar.js.map +1 -0
  625. package/dist/native/charts/src/engine/shapes/canvas.cjs +2 -0
  626. package/dist/native/charts/src/engine/shapes/canvas.cjs.map +1 -0
  627. package/dist/native/charts/src/engine/shapes/canvas.js +168 -0
  628. package/dist/native/charts/src/engine/shapes/canvas.js.map +1 -0
  629. package/dist/native/charts/src/engine/shapes/draw.cjs +2 -0
  630. package/dist/native/charts/src/engine/shapes/draw.cjs.map +1 -0
  631. package/dist/native/charts/src/engine/shapes/draw.js +165 -0
  632. package/dist/native/charts/src/engine/shapes/draw.js.map +1 -0
  633. package/dist/native/charts/src/engine/shapes/funnel.cjs +2 -0
  634. package/dist/native/charts/src/engine/shapes/funnel.cjs.map +1 -0
  635. package/dist/native/charts/src/engine/shapes/funnel.js +149 -0
  636. package/dist/native/charts/src/engine/shapes/funnel.js.map +1 -0
  637. package/dist/native/charts/src/engine/shapes/gauge.cjs +2 -0
  638. package/dist/native/charts/src/engine/shapes/gauge.cjs.map +1 -0
  639. package/dist/native/charts/src/engine/shapes/gauge.js +210 -0
  640. package/dist/native/charts/src/engine/shapes/gauge.js.map +1 -0
  641. package/dist/native/charts/src/engine/shapes/hit.cjs +2 -0
  642. package/dist/native/charts/src/engine/shapes/hit.cjs.map +1 -0
  643. package/dist/native/charts/src/engine/shapes/hit.js +106 -0
  644. package/dist/native/charts/src/engine/shapes/hit.js.map +1 -0
  645. package/dist/native/charts/src/engine/shapes/labels.cjs +2 -0
  646. package/dist/native/charts/src/engine/shapes/labels.cjs.map +1 -0
  647. package/dist/native/charts/src/engine/shapes/labels.js +146 -0
  648. package/dist/native/charts/src/engine/shapes/labels.js.map +1 -0
  649. package/dist/native/charts/src/engine/shapes/layout.cjs +3 -0
  650. package/dist/native/charts/src/engine/shapes/layout.cjs.map +1 -0
  651. package/dist/native/charts/src/engine/shapes/layout.js +331 -0
  652. package/dist/native/charts/src/engine/shapes/layout.js.map +1 -0
  653. package/dist/native/charts/src/engine/shapes/pie.cjs +2 -0
  654. package/dist/native/charts/src/engine/shapes/pie.cjs.map +1 -0
  655. package/dist/native/charts/src/engine/shapes/pie.js +302 -0
  656. package/dist/native/charts/src/engine/shapes/pie.js.map +1 -0
  657. package/dist/native/charts/src/engine/shapes/radar.cjs +2 -0
  658. package/dist/native/charts/src/engine/shapes/radar.cjs.map +1 -0
  659. package/dist/native/charts/src/engine/shapes/radar.js +198 -0
  660. package/dist/native/charts/src/engine/shapes/radar.js.map +1 -0
  661. package/dist/native/charts/src/engine/shapes/radialBar.cjs +2 -0
  662. package/dist/native/charts/src/engine/shapes/radialBar.cjs.map +1 -0
  663. package/dist/native/charts/src/engine/shapes/radialBar.js +155 -0
  664. package/dist/native/charts/src/engine/shapes/radialBar.js.map +1 -0
  665. package/dist/native/charts/src/engine/shapes/runtime.cjs +2 -0
  666. package/dist/native/charts/src/engine/shapes/runtime.cjs.map +1 -0
  667. package/dist/native/charts/src/engine/shapes/runtime.js +107 -0
  668. package/dist/native/charts/src/engine/shapes/runtime.js.map +1 -0
  669. package/dist/native/charts/src/engine/shapes/sankey.cjs +2 -0
  670. package/dist/native/charts/src/engine/shapes/sankey.cjs.map +1 -0
  671. package/dist/native/charts/src/engine/shapes/sankey.js +372 -0
  672. package/dist/native/charts/src/engine/shapes/sankey.js.map +1 -0
  673. package/dist/native/charts/src/engine/shapes/scene.cjs +2 -0
  674. package/dist/native/charts/src/engine/shapes/scene.cjs.map +1 -0
  675. package/dist/native/charts/src/engine/shapes/scene.js +125 -0
  676. package/dist/native/charts/src/engine/shapes/scene.js.map +1 -0
  677. package/dist/native/charts/src/engine/shapes/sunburst.cjs +2 -0
  678. package/dist/native/charts/src/engine/shapes/sunburst.cjs.map +1 -0
  679. package/dist/native/charts/src/engine/shapes/sunburst.js +261 -0
  680. package/dist/native/charts/src/engine/shapes/sunburst.js.map +1 -0
  681. package/dist/native/charts/src/engine/shapes/treemap.cjs +2 -0
  682. package/dist/native/charts/src/engine/shapes/treemap.cjs.map +1 -0
  683. package/dist/native/charts/src/engine/shapes/treemap.js +213 -0
  684. package/dist/native/charts/src/engine/shapes/treemap.js.map +1 -0
  685. package/dist/native/charts/src/engine/theme.cjs.map +1 -1
  686. package/dist/native/charts/src/engine/theme.js.map +1 -1
  687. package/dist/native/charts/src/engine/time.cjs +1 -1
  688. package/dist/native/charts/src/engine/time.cjs.map +1 -1
  689. package/dist/native/charts/src/engine/time.js +156 -91
  690. package/dist/native/charts/src/engine/time.js.map +1 -1
  691. package/dist/native/components/Chart/ChartBase.cjs +1 -1
  692. package/dist/native/components/Chart/ChartBase.cjs.map +1 -1
  693. package/dist/native/components/Chart/ChartBase.d.cts +1 -1
  694. package/dist/native/components/Chart/ChartBase.d.ts +1 -1
  695. package/dist/native/components/Chart/ChartBase.js +110 -107
  696. package/dist/native/components/Chart/ChartBase.js.map +1 -1
  697. package/dist/native/components/Chart/charts.cjs +1 -1
  698. package/dist/native/components/Chart/charts.cjs.map +1 -1
  699. package/dist/native/components/Chart/charts.d.cts +6 -1
  700. package/dist/native/components/Chart/charts.d.ts +6 -1
  701. package/dist/native/components/Chart/charts.js +53 -29
  702. package/dist/native/components/Chart/charts.js.map +1 -1
  703. package/dist/native/components/Chart/index.cjs +1 -1
  704. package/dist/native/components/Chart/index.d.cts +1 -1
  705. package/dist/native/components/Chart/index.d.ts +1 -1
  706. package/dist/native/components/Chart/index.js +2 -2
  707. package/dist/native/components/Chart/scene.cjs +1 -1
  708. package/dist/native/components/Chart/scene.cjs.map +1 -1
  709. package/dist/native/components/Chart/scene.js +244 -215
  710. package/dist/native/components/Chart/scene.js.map +1 -1
  711. package/dist/native/components/Chart/types.d.cts +26 -3
  712. package/dist/native/components/Chart/types.d.ts +26 -3
  713. package/dist/native/components/Charts/charts.cjs +2 -0
  714. package/dist/native/components/Charts/charts.cjs.map +1 -0
  715. package/dist/native/components/Charts/charts.d.cts +41 -0
  716. package/dist/native/components/Charts/charts.d.ts +41 -0
  717. package/dist/native/components/Charts/charts.js +338 -0
  718. package/dist/native/components/Charts/charts.js.map +1 -0
  719. package/dist/native/components/Charts/index.cjs +1 -0
  720. package/dist/native/components/Charts/index.d.cts +2 -0
  721. package/dist/native/components/Charts/index.d.ts +2 -0
  722. package/dist/native/components/Charts/index.js +2 -0
  723. package/dist/native/components/Charts/types.d.cts +144 -0
  724. package/dist/native/components/Charts/types.d.ts +144 -0
  725. package/dist/native/components/ShapeChart/ShapeChartBase.cjs +2 -0
  726. package/dist/native/components/ShapeChart/ShapeChartBase.cjs.map +1 -0
  727. package/dist/native/components/ShapeChart/ShapeChartBase.d.cts +24 -0
  728. package/dist/native/components/ShapeChart/ShapeChartBase.d.ts +24 -0
  729. package/dist/native/components/ShapeChart/ShapeChartBase.js +271 -0
  730. package/dist/native/components/ShapeChart/ShapeChartBase.js.map +1 -0
  731. package/dist/native/components/ShapeChart/charts.cjs +2 -0
  732. package/dist/native/components/ShapeChart/charts.cjs.map +1 -0
  733. package/dist/native/components/ShapeChart/charts.d.cts +38 -0
  734. package/dist/native/components/ShapeChart/charts.d.ts +38 -0
  735. package/dist/native/components/ShapeChart/charts.js +387 -0
  736. package/dist/native/components/ShapeChart/charts.js.map +1 -0
  737. package/dist/native/components/ShapeChart/draw.cjs +2 -0
  738. package/dist/native/components/ShapeChart/draw.cjs.map +1 -0
  739. package/dist/native/components/ShapeChart/draw.d.cts +4 -0
  740. package/dist/native/components/ShapeChart/draw.d.ts +4 -0
  741. package/dist/native/components/ShapeChart/draw.js +104 -0
  742. package/dist/native/components/ShapeChart/draw.js.map +1 -0
  743. package/dist/native/components/ShapeChart/geometry.cjs +2 -0
  744. package/dist/native/components/ShapeChart/geometry.cjs.map +1 -0
  745. package/dist/native/components/ShapeChart/geometry.d.cts +71 -0
  746. package/dist/native/components/ShapeChart/geometry.d.ts +71 -0
  747. package/dist/native/components/ShapeChart/geometry.js +602 -0
  748. package/dist/native/components/ShapeChart/geometry.js.map +1 -0
  749. package/dist/native/components/ShapeChart/index.cjs +1 -0
  750. package/dist/native/components/ShapeChart/index.d.cts +2 -0
  751. package/dist/native/components/ShapeChart/index.d.ts +2 -0
  752. package/dist/native/components/ShapeChart/index.js +2 -0
  753. package/dist/native/components/ShapeChart/recorder.cjs +2 -0
  754. package/dist/native/components/ShapeChart/recorder.cjs.map +1 -0
  755. package/dist/native/components/ShapeChart/recorder.d.cts +106 -0
  756. package/dist/native/components/ShapeChart/recorder.d.ts +106 -0
  757. package/dist/native/components/ShapeChart/recorder.js +574 -0
  758. package/dist/native/components/ShapeChart/recorder.js.map +1 -0
  759. package/dist/native/components/ShapeChart/types.d.cts +509 -0
  760. package/dist/native/components/ShapeChart/types.d.ts +509 -0
  761. package/dist/native/index.cjs +1 -1
  762. package/dist/native/index.d.cts +2 -0
  763. package/dist/native/index.d.ts +2 -0
  764. package/dist/native/index.js +14 -10
  765. package/dist/native/manifest.d.cts +6 -4
  766. package/dist/native/manifest.d.ts +6 -4
  767. package/dist/native/source/components/Chart/ChartBase.tsx +8 -1
  768. package/dist/native/source/components/Chart/charts.tsx +42 -6
  769. package/dist/native/source/components/Chart/index.ts +1 -0
  770. package/dist/native/source/components/Chart/scene.tsx +204 -100
  771. package/dist/native/source/components/Chart/types.ts +31 -1
  772. package/dist/native/source/components/Charts/charts.tsx +493 -0
  773. package/dist/native/source/components/Charts/index.ts +14 -0
  774. package/dist/native/source/components/Charts/types.ts +207 -0
  775. package/dist/native/source/components/ShapeChart/ShapeChartBase.tsx +484 -0
  776. package/dist/native/source/components/ShapeChart/charts.tsx +605 -0
  777. package/dist/native/source/components/ShapeChart/draw.tsx +170 -0
  778. package/dist/native/source/components/ShapeChart/geometry.ts +1185 -0
  779. package/dist/native/source/components/ShapeChart/index.ts +15 -0
  780. package/dist/native/source/components/ShapeChart/recorder.ts +830 -0
  781. package/dist/native/source/components/ShapeChart/types.ts +564 -0
  782. package/dist/native/source/index.ts +2 -0
  783. package/dist/native/source/manifest.ts +30 -4
  784. package/dist/taro/charts.d.ts +209 -4
  785. package/dist/taro/index.d.ts +1 -0
  786. package/dist/taro/index.js +8032 -1891
  787. package/dist/taro/manifest.d.ts +1 -0
  788. package/dist/taro/shape-charts.d.ts +537 -0
  789. package/dist/uni/AreaChart.vue +68 -0
  790. package/dist/uni/AreaChart.vue.d.ts +120 -0
  791. package/dist/uni/Badge.vue.d.ts +1 -1
  792. package/dist/uni/BoxPlotChart.vue +66 -0
  793. package/dist/uni/BoxPlotChart.vue.d.ts +102 -0
  794. package/dist/uni/BubbleChart.vue +68 -0
  795. package/dist/uni/BubbleChart.vue.d.ts +106 -0
  796. package/dist/uni/BulletChart.vue +86 -0
  797. package/dist/uni/BulletChart.vue.d.ts +110 -0
  798. package/dist/uni/CalendarHeatmap.vue +92 -0
  799. package/dist/uni/CalendarHeatmap.vue.d.ts +129 -0
  800. package/dist/uni/CandlestickChart.vue +66 -0
  801. package/dist/uni/CandlestickChart.vue.d.ts +100 -0
  802. package/dist/uni/DonutChart.vue +72 -0
  803. package/dist/uni/DonutChart.vue.d.ts +114 -0
  804. package/dist/uni/FunnelChart.vue +67 -0
  805. package/dist/uni/FunnelChart.vue.d.ts +104 -0
  806. package/dist/uni/GanttChart.vue +67 -0
  807. package/dist/uni/GanttChart.vue.d.ts +123 -0
  808. package/dist/uni/GaugeChart.vue +77 -0
  809. package/dist/uni/GaugeChart.vue.d.ts +123 -0
  810. package/dist/uni/HeatmapChart.vue +66 -0
  811. package/dist/uni/HeatmapChart.vue.d.ts +114 -0
  812. package/dist/uni/HistogramChart.vue +66 -0
  813. package/dist/uni/HistogramChart.vue.d.ts +121 -0
  814. package/dist/uni/HorizontalBarChart.vue +68 -0
  815. package/dist/uni/HorizontalBarChart.vue.d.ts +127 -0
  816. package/dist/uni/Input.vue.d.ts +1 -1
  817. package/dist/uni/MixedChart.vue +68 -0
  818. package/dist/uni/MixedChart.vue.d.ts +106 -0
  819. package/dist/uni/NumberInput.vue.d.ts +1 -1
  820. package/dist/uni/PieChart.vue +72 -0
  821. package/dist/uni/PieChart.vue.d.ts +114 -0
  822. package/dist/uni/RadarChart.vue +67 -0
  823. package/dist/uni/RadarChart.vue.d.ts +110 -0
  824. package/dist/uni/RadialBarChart.vue +90 -0
  825. package/dist/uni/RadialBarChart.vue.d.ts +132 -0
  826. package/dist/uni/RangeAreaChart.vue +68 -0
  827. package/dist/uni/RangeAreaChart.vue.d.ts +102 -0
  828. package/dist/uni/ResponsiveGrid.vue.d.ts +1 -1
  829. package/dist/uni/SankeyChart.vue +88 -0
  830. package/dist/uni/SankeyChart.vue.d.ts +121 -0
  831. package/dist/uni/ShapeChart.vue +73 -0
  832. package/dist/uni/ShapeChart.vue.d.ts +54 -0
  833. package/dist/uni/Sparkline.vue +58 -0
  834. package/dist/uni/Sparkline.vue.d.ts +77 -0
  835. package/dist/uni/SunburstChart.vue +90 -0
  836. package/dist/uni/SunburstChart.vue.d.ts +114 -0
  837. package/dist/uni/Textarea.vue.d.ts +1 -1
  838. package/dist/uni/TimePicker.vue.d.ts +1 -1
  839. package/dist/uni/TreemapChart.vue +65 -0
  840. package/dist/uni/TreemapChart.vue.d.ts +100 -0
  841. package/dist/uni/WaterfallChart.vue +66 -0
  842. package/dist/uni/WaterfallChart.vue.d.ts +125 -0
  843. package/dist/uni/chart-types.d.ts +216 -2
  844. package/dist/uni/chart-types.js +174 -0
  845. package/dist/uni/charts-canvas.js +10 -3
  846. package/dist/uni/index.d.ts +26 -1
  847. package/dist/uni/index.js +26 -1
  848. package/dist/uni/manifest.d.ts +272 -0
  849. package/dist/uni/manifest.js +387 -0
  850. package/dist/uni/named-chart-options.d.ts +88 -0
  851. package/dist/uni/named-chart-options.js +156 -0
  852. package/dist/uni/shape-chart-canvas.d.ts +51 -0
  853. package/dist/uni/shape-chart-canvas.js +342 -0
  854. package/dist/uni/shape-chart-types.d.ts +381 -0
  855. package/dist/uni/shape-chart-types.js +261 -0
  856. package/dist/vue/components/Chart/AreaChart.vue.d.ts +124 -0
  857. package/dist/vue/components/Chart/AreaChart.vue.js +7 -0
  858. package/dist/vue/components/Chart/AreaChart.vue.js.map +1 -0
  859. package/dist/vue/components/Chart/AreaChart.vue_vue_type_script_setup_true_lang.js +49 -0
  860. package/dist/vue/components/Chart/AreaChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  861. package/dist/vue/components/Chart/Bar3DChart.vue.d.ts +132 -0
  862. package/dist/vue/components/Chart/Bar3DChart.vue.js +7 -0
  863. package/dist/vue/components/Chart/Bar3DChart.vue.js.map +1 -0
  864. package/dist/vue/components/Chart/Bar3DChart.vue_vue_type_script_setup_true_lang.js +55 -0
  865. package/dist/vue/components/Chart/Bar3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  866. package/dist/vue/components/Chart/BarChart.vue.d.ts +123 -0
  867. package/dist/vue/components/Chart/BarChart.vue.js +7 -0
  868. package/dist/vue/components/Chart/BarChart.vue.js.map +1 -0
  869. package/dist/vue/components/Chart/BarChart.vue_vue_type_script_setup_true_lang.js +53 -0
  870. package/dist/vue/components/Chart/BarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  871. package/dist/vue/components/Chart/BoxPlotChart.vue.d.ts +112 -0
  872. package/dist/vue/components/Chart/BoxPlotChart.vue.js +7 -0
  873. package/dist/vue/components/Chart/BoxPlotChart.vue.js.map +1 -0
  874. package/dist/vue/components/Chart/BoxPlotChart.vue_vue_type_script_setup_true_lang.js +57 -0
  875. package/dist/vue/components/Chart/BoxPlotChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  876. package/dist/vue/components/Chart/BubbleChart.vue.d.ts +106 -0
  877. package/dist/vue/components/Chart/BubbleChart.vue.js +7 -0
  878. package/dist/vue/components/Chart/BubbleChart.vue.js.map +1 -0
  879. package/dist/vue/components/Chart/BubbleChart.vue_vue_type_script_setup_true_lang.js +52 -0
  880. package/dist/vue/components/Chart/BubbleChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  881. package/dist/vue/components/Chart/BulletChart.vue.d.ts +117 -0
  882. package/dist/vue/components/Chart/BulletChart.vue.js +7 -0
  883. package/dist/vue/components/Chart/BulletChart.vue.js.map +1 -0
  884. package/dist/vue/components/Chart/BulletChart.vue_vue_type_script_setup_true_lang.js +64 -0
  885. package/dist/vue/components/Chart/BulletChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  886. package/dist/vue/components/Chart/CalendarHeatmap.vue.d.ts +144 -0
  887. package/dist/vue/components/Chart/CalendarHeatmap.vue.js +7 -0
  888. package/dist/vue/components/Chart/CalendarHeatmap.vue.js.map +1 -0
  889. package/dist/vue/components/Chart/CalendarHeatmap.vue_vue_type_script_setup_true_lang.js +77 -0
  890. package/dist/vue/components/Chart/CalendarHeatmap.vue_vue_type_script_setup_true_lang.js.map +1 -0
  891. package/dist/vue/components/Chart/CandlestickChart.vue.d.ts +94 -0
  892. package/dist/vue/components/Chart/CandlestickChart.vue.js +7 -0
  893. package/dist/vue/components/Chart/CandlestickChart.vue.js.map +1 -0
  894. package/dist/vue/components/Chart/CandlestickChart.vue_vue_type_script_setup_true_lang.js +44 -0
  895. package/dist/vue/components/Chart/CandlestickChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  896. package/dist/vue/components/Chart/Chart.vue.d.ts +103 -0
  897. package/dist/vue/components/Chart/Chart.vue.js +7 -0
  898. package/dist/vue/components/Chart/Chart.vue.js.map +1 -0
  899. package/dist/vue/components/Chart/Chart.vue_vue_type_script_setup_true_lang.js +47 -0
  900. package/dist/vue/components/Chart/Chart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  901. package/dist/vue/components/Chart/DepthChart.vue.d.ts +139 -0
  902. package/dist/vue/components/Chart/DepthChart.vue.js +7 -0
  903. package/dist/vue/components/Chart/DepthChart.vue.js.map +1 -0
  904. package/dist/vue/components/Chart/DepthChart.vue_vue_type_script_setup_true_lang.js +42 -0
  905. package/dist/vue/components/Chart/DepthChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  906. package/dist/vue/components/Chart/DonutChart.vue.d.ts +104 -0
  907. package/dist/vue/components/Chart/DonutChart.vue.js +7 -0
  908. package/dist/vue/components/Chart/DonutChart.vue.js.map +1 -0
  909. package/dist/vue/components/Chart/DonutChart.vue_vue_type_script_setup_true_lang.js +53 -0
  910. package/dist/vue/components/Chart/DonutChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  911. package/dist/vue/components/Chart/FunnelChart.vue.d.ts +105 -0
  912. package/dist/vue/components/Chart/FunnelChart.vue.js +7 -0
  913. package/dist/vue/components/Chart/FunnelChart.vue.js.map +1 -0
  914. package/dist/vue/components/Chart/FunnelChart.vue_vue_type_script_setup_true_lang.js +58 -0
  915. package/dist/vue/components/Chart/FunnelChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  916. package/dist/vue/components/Chart/GanttChart.vue.d.ts +132 -0
  917. package/dist/vue/components/Chart/GanttChart.vue.js +7 -0
  918. package/dist/vue/components/Chart/GanttChart.vue.js.map +1 -0
  919. package/dist/vue/components/Chart/GanttChart.vue_vue_type_script_setup_true_lang.js +98 -0
  920. package/dist/vue/components/Chart/GanttChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  921. package/dist/vue/components/Chart/GaugeChart.vue.d.ts +132 -0
  922. package/dist/vue/components/Chart/GaugeChart.vue.js +7 -0
  923. package/dist/vue/components/Chart/GaugeChart.vue.js.map +1 -0
  924. package/dist/vue/components/Chart/GaugeChart.vue_vue_type_script_setup_true_lang.js +71 -0
  925. package/dist/vue/components/Chart/GaugeChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  926. package/dist/vue/components/Chart/HeatmapChart.vue.d.ts +125 -0
  927. package/dist/vue/components/Chart/HeatmapChart.vue.js +7 -0
  928. package/dist/vue/components/Chart/HeatmapChart.vue.js.map +1 -0
  929. package/dist/vue/components/Chart/HeatmapChart.vue_vue_type_script_setup_true_lang.js +65 -0
  930. package/dist/vue/components/Chart/HeatmapChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  931. package/dist/vue/components/Chart/HistogramChart.vue.d.ts +132 -0
  932. package/dist/vue/components/Chart/HistogramChart.vue.js +7 -0
  933. package/dist/vue/components/Chart/HistogramChart.vue.js.map +1 -0
  934. package/dist/vue/components/Chart/HistogramChart.vue_vue_type_script_setup_true_lang.js +66 -0
  935. package/dist/vue/components/Chart/HistogramChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  936. package/dist/vue/components/Chart/HorizontalBarChart.vue.d.ts +121 -0
  937. package/dist/vue/components/Chart/HorizontalBarChart.vue.js +7 -0
  938. package/dist/vue/components/Chart/HorizontalBarChart.vue.js.map +1 -0
  939. package/dist/vue/components/Chart/HorizontalBarChart.vue_vue_type_script_setup_true_lang.js +55 -0
  940. package/dist/vue/components/Chart/HorizontalBarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  941. package/dist/vue/components/Chart/Line3DChart.vue.d.ts +121 -0
  942. package/dist/vue/components/Chart/Line3DChart.vue.js +7 -0
  943. package/dist/vue/components/Chart/Line3DChart.vue.js.map +1 -0
  944. package/dist/vue/components/Chart/Line3DChart.vue_vue_type_script_setup_true_lang.js +47 -0
  945. package/dist/vue/components/Chart/Line3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  946. package/dist/vue/components/Chart/LineChart.vue.d.ts +125 -0
  947. package/dist/vue/components/Chart/LineChart.vue.js +7 -0
  948. package/dist/vue/components/Chart/LineChart.vue.js.map +1 -0
  949. package/dist/vue/components/Chart/LineChart.vue_vue_type_script_setup_true_lang.js +50 -0
  950. package/dist/vue/components/Chart/LineChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  951. package/dist/vue/components/Chart/MixedChart.vue.d.ts +103 -0
  952. package/dist/vue/components/Chart/MixedChart.vue.js +7 -0
  953. package/dist/vue/components/Chart/MixedChart.vue.js.map +1 -0
  954. package/dist/vue/components/Chart/MixedChart.vue_vue_type_script_setup_true_lang.js +47 -0
  955. package/dist/vue/components/Chart/MixedChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  956. package/dist/vue/components/Chart/OrderBook.vue.d.ts +125 -0
  957. package/dist/vue/components/Chart/OrderBook.vue.js +7 -0
  958. package/dist/vue/components/Chart/OrderBook.vue.js.map +1 -0
  959. package/dist/vue/components/Chart/OrderBook.vue_vue_type_script_setup_true_lang.js +38 -0
  960. package/dist/vue/components/Chart/OrderBook.vue_vue_type_script_setup_true_lang.js.map +1 -0
  961. package/dist/vue/components/Chart/OrderBookHeatmap.vue.d.ts +128 -0
  962. package/dist/vue/components/Chart/OrderBookHeatmap.vue.js +7 -0
  963. package/dist/vue/components/Chart/OrderBookHeatmap.vue.js.map +1 -0
  964. package/dist/vue/components/Chart/OrderBookHeatmap.vue_vue_type_script_setup_true_lang.js +46 -0
  965. package/dist/vue/components/Chart/OrderBookHeatmap.vue_vue_type_script_setup_true_lang.js.map +1 -0
  966. package/dist/vue/components/Chart/PieChart.vue.d.ts +104 -0
  967. package/dist/vue/components/Chart/PieChart.vue.js +7 -0
  968. package/dist/vue/components/Chart/PieChart.vue.js.map +1 -0
  969. package/dist/vue/components/Chart/PieChart.vue_vue_type_script_setup_true_lang.js +53 -0
  970. package/dist/vue/components/Chart/PieChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  971. package/dist/vue/components/Chart/QuadrantChart.vue.d.ts +186 -0
  972. package/dist/vue/components/Chart/QuadrantChart.vue.js +7 -0
  973. package/dist/vue/components/Chart/QuadrantChart.vue.js.map +1 -0
  974. package/dist/vue/components/Chart/QuadrantChart.vue_vue_type_script_setup_true_lang.js +107 -0
  975. package/dist/vue/components/Chart/QuadrantChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  976. package/dist/vue/components/Chart/RadarChart.vue.d.ts +111 -0
  977. package/dist/vue/components/Chart/RadarChart.vue.js +7 -0
  978. package/dist/vue/components/Chart/RadarChart.vue.js.map +1 -0
  979. package/dist/vue/components/Chart/RadarChart.vue_vue_type_script_setup_true_lang.js +61 -0
  980. package/dist/vue/components/Chart/RadarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  981. package/dist/vue/components/Chart/RadialBarChart.vue.d.ts +147 -0
  982. package/dist/vue/components/Chart/RadialBarChart.vue.js +7 -0
  983. package/dist/vue/components/Chart/RadialBarChart.vue.js.map +1 -0
  984. package/dist/vue/components/Chart/RadialBarChart.vue_vue_type_script_setup_true_lang.js +78 -0
  985. package/dist/vue/components/Chart/RadialBarChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  986. package/dist/vue/components/Chart/RangeAreaChart.vue.d.ts +106 -0
  987. package/dist/vue/components/Chart/RangeAreaChart.vue.js +7 -0
  988. package/dist/vue/components/Chart/RangeAreaChart.vue.js.map +1 -0
  989. package/dist/vue/components/Chart/RangeAreaChart.vue_vue_type_script_setup_true_lang.js +51 -0
  990. package/dist/vue/components/Chart/RangeAreaChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  991. package/dist/vue/components/Chart/SankeyChart.vue.d.ts +132 -0
  992. package/dist/vue/components/Chart/SankeyChart.vue.js +7 -0
  993. package/dist/vue/components/Chart/SankeyChart.vue.js.map +1 -0
  994. package/dist/vue/components/Chart/SankeyChart.vue_vue_type_script_setup_true_lang.js +71 -0
  995. package/dist/vue/components/Chart/SankeyChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  996. package/dist/vue/components/Chart/Scatter3DChart.vue.d.ts +121 -0
  997. package/dist/vue/components/Chart/Scatter3DChart.vue.js +7 -0
  998. package/dist/vue/components/Chart/Scatter3DChart.vue.js.map +1 -0
  999. package/dist/vue/components/Chart/Scatter3DChart.vue_vue_type_script_setup_true_lang.js +47 -0
  1000. package/dist/vue/components/Chart/Scatter3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1001. package/dist/vue/components/Chart/ScatterChart.vue.d.ts +94 -0
  1002. package/dist/vue/components/Chart/ScatterChart.vue.js +7 -0
  1003. package/dist/vue/components/Chart/ScatterChart.vue.js.map +1 -0
  1004. package/dist/vue/components/Chart/ScatterChart.vue_vue_type_script_setup_true_lang.js +44 -0
  1005. package/dist/vue/components/Chart/ScatterChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1006. package/dist/vue/components/Chart/ShapeChart.vue.d.ts +39 -0
  1007. package/dist/vue/components/Chart/ShapeChart.vue.js +7 -0
  1008. package/dist/vue/components/Chart/ShapeChart.vue.js.map +1 -0
  1009. package/dist/vue/components/Chart/ShapeChart.vue_vue_type_script_setup_true_lang.js +43 -0
  1010. package/dist/vue/components/Chart/ShapeChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1011. package/dist/vue/components/Chart/Sparkline.vue.d.ts +90 -0
  1012. package/dist/vue/components/Chart/Sparkline.vue.js +7 -0
  1013. package/dist/vue/components/Chart/Sparkline.vue.js.map +1 -0
  1014. package/dist/vue/components/Chart/Sparkline.vue_vue_type_script_setup_true_lang.js +66 -0
  1015. package/dist/vue/components/Chart/Sparkline.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1016. package/dist/vue/components/Chart/SunburstChart.vue.d.ts +123 -0
  1017. package/dist/vue/components/Chart/SunburstChart.vue.js +7 -0
  1018. package/dist/vue/components/Chart/SunburstChart.vue.js.map +1 -0
  1019. package/dist/vue/components/Chart/SunburstChart.vue_vue_type_script_setup_true_lang.js +68 -0
  1020. package/dist/vue/components/Chart/SunburstChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1021. package/dist/vue/components/Chart/Surface3DChart.vue.d.ts +143 -0
  1022. package/dist/vue/components/Chart/Surface3DChart.vue.js +7 -0
  1023. package/dist/vue/components/Chart/Surface3DChart.vue.js.map +1 -0
  1024. package/dist/vue/components/Chart/Surface3DChart.vue_vue_type_script_setup_true_lang.js +60 -0
  1025. package/dist/vue/components/Chart/Surface3DChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1026. package/dist/vue/components/Chart/TimeAndSales.vue.d.ts +114 -0
  1027. package/dist/vue/components/Chart/TimeAndSales.vue.js +7 -0
  1028. package/dist/vue/components/Chart/TimeAndSales.vue.js.map +1 -0
  1029. package/dist/vue/components/Chart/TimeAndSales.vue_vue_type_script_setup_true_lang.js +46 -0
  1030. package/dist/vue/components/Chart/TimeAndSales.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1031. package/dist/vue/components/Chart/TradingChart.vue.d.ts +160 -0
  1032. package/dist/vue/components/Chart/TradingChart.vue.js +7 -0
  1033. package/dist/vue/components/Chart/TradingChart.vue.js.map +1 -0
  1034. package/dist/vue/components/Chart/TradingChart.vue_vue_type_script_setup_true_lang.js +70 -0
  1035. package/dist/vue/components/Chart/TradingChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1036. package/dist/vue/components/Chart/TreemapChart.vue.d.ts +97 -0
  1037. package/dist/vue/components/Chart/TreemapChart.vue.js +7 -0
  1038. package/dist/vue/components/Chart/TreemapChart.vue.js.map +1 -0
  1039. package/dist/vue/components/Chart/TreemapChart.vue_vue_type_script_setup_true_lang.js +54 -0
  1040. package/dist/vue/components/Chart/TreemapChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1041. package/dist/vue/components/Chart/WaterfallChart.vue.d.ts +132 -0
  1042. package/dist/vue/components/Chart/WaterfallChart.vue.js +7 -0
  1043. package/dist/vue/components/Chart/WaterfallChart.vue.js.map +1 -0
  1044. package/dist/vue/components/Chart/WaterfallChart.vue_vue_type_script_setup_true_lang.js +68 -0
  1045. package/dist/vue/components/Chart/WaterfallChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  1046. package/dist/vue/components/Chart/cartesian.d.ts +47 -0
  1047. package/dist/vue/components/Chart/cartesian.js +56 -0
  1048. package/dist/vue/components/Chart/cartesian.js.map +1 -0
  1049. package/dist/vue/components/Chart/engine.d.ts +35 -0
  1050. package/dist/vue/components/Chart/engine.js +35 -0
  1051. package/dist/vue/components/Chart/engine.js.map +1 -0
  1052. package/dist/vue/components/Chart/index.d.ts +41 -0
  1053. package/dist/vue/components/Chart/index.js +40 -0
  1054. package/dist/vue/components/Chart/orderbook.d.ts +359 -0
  1055. package/dist/vue/components/Chart/orderbook.js +126 -0
  1056. package/dist/vue/components/Chart/orderbook.js.map +1 -0
  1057. package/dist/vue/components/Chart/props.d.ts +188 -0
  1058. package/dist/vue/components/Chart/props.js +92 -0
  1059. package/dist/vue/components/Chart/props.js.map +1 -0
  1060. package/dist/vue/components/Chart/shape.d.ts +41 -0
  1061. package/dist/vue/components/Chart/shape.js +42 -0
  1062. package/dist/vue/components/Chart/shape.js.map +1 -0
  1063. package/dist/vue/components/Chart/three-d.d.ts +106 -0
  1064. package/dist/vue/components/Chart/three-d.js +88 -0
  1065. package/dist/vue/components/Chart/three-d.js.map +1 -0
  1066. package/dist/vue/components/Chart/trading.d.ts +105 -0
  1067. package/dist/vue/components/Chart/trading.js +55 -0
  1068. package/dist/vue/components/Chart/trading.js.map +1 -0
  1069. package/dist/vue/components/Chart/types.d.ts +137 -0
  1070. package/dist/vue/global.d.ts +38 -0
  1071. package/dist/vue/groups/charts.d.ts +1 -0
  1072. package/dist/vue/groups/charts.js +87 -0
  1073. package/dist/vue/groups/charts.js.map +1 -0
  1074. package/dist/vue/index.d.ts +1 -0
  1075. package/dist/vue/index.js +63 -23
  1076. package/dist/vue/plugin.js +12 -10
  1077. package/dist/vue/plugin.js.map +1 -1
  1078. package/dist/weapp/area-chart/index.js +1 -0
  1079. package/dist/weapp/area-chart/index.json +1 -0
  1080. package/dist/weapp/area-chart/index.wxml +1 -0
  1081. package/dist/weapp/area-chart/index.wxss +1 -0
  1082. package/dist/weapp/box-plot-chart/index.js +1 -0
  1083. package/dist/weapp/box-plot-chart/index.json +1 -0
  1084. package/dist/weapp/box-plot-chart/index.wxml +1 -0
  1085. package/dist/weapp/box-plot-chart/index.wxss +1 -0
  1086. package/dist/weapp/bubble-chart/index.js +1 -0
  1087. package/dist/weapp/bubble-chart/index.json +1 -0
  1088. package/dist/weapp/bubble-chart/index.wxml +1 -0
  1089. package/dist/weapp/bubble-chart/index.wxss +1 -0
  1090. package/dist/weapp/bullet-chart/index.js +1 -0
  1091. package/dist/weapp/bullet-chart/index.json +1 -0
  1092. package/dist/weapp/bullet-chart/index.wxml +1 -0
  1093. package/dist/weapp/bullet-chart/index.wxss +1 -0
  1094. package/dist/weapp/calendar-heatmap/index.js +1 -0
  1095. package/dist/weapp/calendar-heatmap/index.json +1 -0
  1096. package/dist/weapp/calendar-heatmap/index.wxml +1 -0
  1097. package/dist/weapp/calendar-heatmap/index.wxss +1 -0
  1098. package/dist/weapp/candlestick-chart/index.js +1 -0
  1099. package/dist/weapp/candlestick-chart/index.json +1 -0
  1100. package/dist/weapp/candlestick-chart/index.wxml +1 -0
  1101. package/dist/weapp/candlestick-chart/index.wxss +1 -0
  1102. package/dist/weapp/charts/canvas.js +11436 -0
  1103. package/dist/weapp/charts/core.d.ts +2 -0
  1104. package/dist/weapp/charts/core.js +41 -0
  1105. package/dist/weapp/controls.js +1428 -3732
  1106. package/dist/weapp/donut-chart/index.js +1 -0
  1107. package/dist/weapp/donut-chart/index.json +1 -0
  1108. package/dist/weapp/donut-chart/index.wxml +1 -0
  1109. package/dist/weapp/donut-chart/index.wxss +1 -0
  1110. package/dist/weapp/funnel-chart/index.js +1 -0
  1111. package/dist/weapp/funnel-chart/index.json +1 -0
  1112. package/dist/weapp/funnel-chart/index.wxml +1 -0
  1113. package/dist/weapp/funnel-chart/index.wxss +1 -0
  1114. package/dist/weapp/gantt-chart/index.js +1 -0
  1115. package/dist/weapp/gantt-chart/index.json +1 -0
  1116. package/dist/weapp/gantt-chart/index.wxml +1 -0
  1117. package/dist/weapp/gantt-chart/index.wxss +1 -0
  1118. package/dist/weapp/gauge-chart/index.js +1 -0
  1119. package/dist/weapp/gauge-chart/index.json +1 -0
  1120. package/dist/weapp/gauge-chart/index.wxml +1 -0
  1121. package/dist/weapp/gauge-chart/index.wxss +1 -0
  1122. package/dist/weapp/heatmap-chart/index.js +1 -0
  1123. package/dist/weapp/heatmap-chart/index.json +1 -0
  1124. package/dist/weapp/heatmap-chart/index.wxml +1 -0
  1125. package/dist/weapp/heatmap-chart/index.wxss +1 -0
  1126. package/dist/weapp/histogram-chart/index.js +1 -0
  1127. package/dist/weapp/histogram-chart/index.json +1 -0
  1128. package/dist/weapp/histogram-chart/index.wxml +1 -0
  1129. package/dist/weapp/histogram-chart/index.wxss +1 -0
  1130. package/dist/weapp/horizontal-bar-chart/index.js +1 -0
  1131. package/dist/weapp/horizontal-bar-chart/index.json +1 -0
  1132. package/dist/weapp/horizontal-bar-chart/index.wxml +1 -0
  1133. package/dist/weapp/horizontal-bar-chart/index.wxss +1 -0
  1134. package/dist/weapp/mixed-chart/index.js +1 -0
  1135. package/dist/weapp/mixed-chart/index.json +1 -0
  1136. package/dist/weapp/mixed-chart/index.wxml +1 -0
  1137. package/dist/weapp/mixed-chart/index.wxss +1 -0
  1138. package/dist/weapp/pie-chart/index.js +1 -0
  1139. package/dist/weapp/pie-chart/index.json +1 -0
  1140. package/dist/weapp/pie-chart/index.wxml +1 -0
  1141. package/dist/weapp/pie-chart/index.wxss +1 -0
  1142. package/dist/weapp/radar-chart/index.js +1 -0
  1143. package/dist/weapp/radar-chart/index.json +1 -0
  1144. package/dist/weapp/radar-chart/index.wxml +1 -0
  1145. package/dist/weapp/radar-chart/index.wxss +1 -0
  1146. package/dist/weapp/radial-bar-chart/index.js +1 -0
  1147. package/dist/weapp/radial-bar-chart/index.json +1 -0
  1148. package/dist/weapp/radial-bar-chart/index.wxml +1 -0
  1149. package/dist/weapp/radial-bar-chart/index.wxss +1 -0
  1150. package/dist/weapp/range-area-chart/index.js +1 -0
  1151. package/dist/weapp/range-area-chart/index.json +1 -0
  1152. package/dist/weapp/range-area-chart/index.wxml +1 -0
  1153. package/dist/weapp/range-area-chart/index.wxss +1 -0
  1154. package/dist/weapp/sankey-chart/index.js +1 -0
  1155. package/dist/weapp/sankey-chart/index.json +1 -0
  1156. package/dist/weapp/sankey-chart/index.wxml +1 -0
  1157. package/dist/weapp/sankey-chart/index.wxss +1 -0
  1158. package/dist/weapp/shape-chart/index.js +1 -0
  1159. package/dist/weapp/shape-chart/index.json +1 -0
  1160. package/dist/weapp/shape-chart/index.wxml +1 -0
  1161. package/dist/weapp/shape-chart/index.wxss +1 -0
  1162. package/dist/weapp/sparkline/index.js +1 -0
  1163. package/dist/weapp/sparkline/index.json +1 -0
  1164. package/dist/weapp/sparkline/index.wxml +1 -0
  1165. package/dist/weapp/sparkline/index.wxss +1 -0
  1166. package/dist/weapp/sunburst-chart/index.js +1 -0
  1167. package/dist/weapp/sunburst-chart/index.json +1 -0
  1168. package/dist/weapp/sunburst-chart/index.wxml +1 -0
  1169. package/dist/weapp/sunburst-chart/index.wxss +1 -0
  1170. package/dist/weapp/treemap-chart/index.js +1 -0
  1171. package/dist/weapp/treemap-chart/index.json +1 -0
  1172. package/dist/weapp/treemap-chart/index.wxml +1 -0
  1173. package/dist/weapp/treemap-chart/index.wxss +1 -0
  1174. package/dist/weapp/types.d.ts +466 -0
  1175. package/dist/weapp/waterfall-chart/index.js +1 -0
  1176. package/dist/weapp/waterfall-chart/index.json +1 -0
  1177. package/dist/weapp/waterfall-chart/index.wxml +1 -0
  1178. package/dist/weapp/waterfall-chart/index.wxss +1 -0
  1179. package/dist/web-components/components/chart/chart.d.ts +58 -0
  1180. package/dist/web-components/components/chart/chart.js +55 -0
  1181. package/dist/web-components/components/chart/chart.js.map +1 -0
  1182. package/dist/web-components/components/chart/charts.d.ts +252 -0
  1183. package/dist/web-components/components/chart/charts.js +201 -0
  1184. package/dist/web-components/components/chart/charts.js.map +1 -0
  1185. package/dist/web-components/components/chart/engine-element.d.ts +53 -0
  1186. package/dist/web-components/components/chart/engine-element.js +77 -0
  1187. package/dist/web-components/components/chart/engine-element.js.map +1 -0
  1188. package/dist/web-components/components/chart/extended.d.ts +224 -0
  1189. package/dist/web-components/components/chart/extended.js +183 -0
  1190. package/dist/web-components/components/chart/extended.js.map +1 -0
  1191. package/dist/web-components/components/chart/series.d.ts +7 -0
  1192. package/dist/web-components/components/chart/series.js +14 -0
  1193. package/dist/web-components/components/chart/series.js.map +1 -0
  1194. package/dist/web-components/components/chart/shape-chart.d.ts +199 -0
  1195. package/dist/web-components/components/chart/shape-chart.js +161 -0
  1196. package/dist/web-components/components/chart/shape-chart.js.map +1 -0
  1197. package/dist/web-components/components/chart/shapes-extended.d.ts +162 -0
  1198. package/dist/web-components/components/chart/shapes-extended.js +156 -0
  1199. package/dist/web-components/components/chart/shapes-extended.js.map +1 -0
  1200. package/dist/web-components/components/chart-3d/chart-3d.d.ts +111 -0
  1201. package/dist/web-components/components/chart-3d/chart-3d.js +97 -0
  1202. package/dist/web-components/components/chart-3d/chart-3d.js.map +1 -0
  1203. package/dist/web-components/components/order-book/order-book.d.ts +165 -0
  1204. package/dist/web-components/components/order-book/order-book.js +174 -0
  1205. package/dist/web-components/components/order-book/order-book.js.map +1 -0
  1206. package/dist/web-components/components/trading-chart/trading-chart.d.ts +96 -0
  1207. package/dist/web-components/components/trading-chart/trading-chart.js +96 -0
  1208. package/dist/web-components/components/trading-chart/trading-chart.js.map +1 -0
  1209. package/dist/web-components/elements/chart-3d.d.ts +2 -0
  1210. package/dist/web-components/elements/chart-3d.js +13 -0
  1211. package/dist/web-components/elements/chart-3d.js.map +1 -0
  1212. package/dist/web-components/elements/chart.d.ts +7 -0
  1213. package/dist/web-components/elements/chart.js +43 -0
  1214. package/dist/web-components/elements/chart.js.map +1 -0
  1215. package/dist/web-components/elements/order-book.d.ts +2 -0
  1216. package/dist/web-components/elements/order-book.js +13 -0
  1217. package/dist/web-components/elements/order-book.js.map +1 -0
  1218. package/dist/web-components/elements/trading-chart.d.ts +2 -0
  1219. package/dist/web-components/elements/trading-chart.js +8 -0
  1220. package/dist/web-components/elements/trading-chart.js.map +1 -0
  1221. package/dist/web-components/html-custom-data.json +1192 -29
  1222. package/dist/web-components/types/react.d.ts +435 -0
  1223. package/dist/web-components/types/solid.d.ts +321 -0
  1224. package/dist/web-components/types/svelte.d.ts +321 -0
  1225. package/dist/web-components/types/vue.d.ts +359 -0
  1226. package/package.json +113 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depth.cjs","names":["createOrderBookStore","createEmitter","createFormatters","localeLabels","createHost","sideColors","inferPriceDecimals","inferSizeDecimals","clamp","ease","fontOf","linearTicks","niceDomain","toCss","localPoint","applyDeltas","require_color","require_locale","require_scale","require_book","require_format","require_host","LABELS","createDepthChart","options","initial","store","emitter","fmt","texts","inferred","colors","rangeOverride","shownRange","shownMax","shownMid","bidShown","askShown","bidTarget","askTarget","lastFrame","plot","hoverAt","hoverKey","lastHover","pointers","pinch","host","container","refreshColors","mirrorTip","root","labels","refreshFormat","applyOptions","limits","a","b","autoRange","nb","na","bidExtent","mid","askExtent","extent","currentRange","min","max","currentMid","bid","depthAt","amount","total","n","side","i","p","price","s","sampleSide","cols","target","quote","linear","priceOf","lo","c","hi","best","cum","prevPrice","step","start","next","nextCum","t","ensureColumns","easeColumns","moving","shown","k","epsilon","draw","ctx","dt","now","animate","l","fontSize","width","axes","dpr","height","theme","range","top","bottom","probe","axisWidth","v","domainMax","yOf","xOfPrice","base","yTicks","y","count","xTicks","x","text","w","fill","drawSide","first","last","x0","x1","xl","xr","gradient","color","line","lx","midX","spread","title","bps","sub","w1","w2","narrow","boxW","boxH","bx","right","drawHover","hide","bestBid","bestAsk","point","mirrorPrice","other","mirror","event","column","px","shownOf","colorOf","marker","value","mx","my","rows","show","doc","tip","py","room","key","setRangeInternal","emit","instance","inPlot","onPointerMove","distance","onPointerDown","onPointerUp","onPointerLeave","onClick","onWheel","onDoubleClick","onKeyDown","zoom","dx","onBlur","changed","snapshot","deltas","handler"],"sources":["../../../../../charts/src/engine/orderbook/depth.ts"],"sourcesContent":["// createDepthChart: cumulative bid / ask depth around the mid price, drawn\n// with Canvas2D. The curves are sampled once per pixel column (a sweep over\n// the levels, so the cost follows the width, not the book) and eased from\n// one snapshot to the next.\n\nimport { toCss, type Rgba } from \"../color\";\nimport { localeLabels, type LabelDictionary } from \"../locale\";\nimport { linearTicks, niceDomain } from \"../scale\";\nimport {\n applyDeltas,\n createOrderBookStore,\n inferPriceDecimals,\n inferSizeDecimals,\n} from \"./book\";\nimport {\n clamp,\n createFormatters,\n ease,\n fontOf,\n roundRect,\n sideColors,\n type Formatters,\n} from \"./format\";\nimport { createEmitter, createHost, localPoint, tooltipHtml } from \"./host\";\nimport type {\n DepthChartEventMap,\n DepthChartHoverEvent,\n DepthChartInstance,\n DepthChartLabels,\n DepthChartOptions,\n DepthPoint,\n OrderBookSide,\n} from \"./types\";\n\nconst LABELS: LabelDictionary<DepthChartLabels> = {\n en: {\n bids: \"Bids\",\n asks: \"Asks\",\n price: \"Price\",\n amount: \"Amount\",\n total: \"Total\",\n average: \"Avg. price\",\n distance: \"From mid\",\n mid: \"Mid\",\n spread: \"Spread\",\n basisPoints: \"bp\",\n name: \"Depth chart\",\n },\n zh: {\n bids: \"买盘\",\n asks: \"卖盘\",\n price: \"价格\",\n amount: \"累计数量\",\n total: \"累计金额\",\n average: \"均价\",\n distance: \"距中间价\",\n mid: \"中间价\",\n spread: \"价差\",\n basisPoints: \"基点\",\n name: \"深度图\",\n },\n ja: {\n bids: \"買い\",\n asks: \"売り\",\n price: \"価格\",\n amount: \"累計数量\",\n total: \"累計金額\",\n average: \"平均価格\",\n distance: \"仲値から\",\n mid: \"仲値\",\n spread: \"スプレッド\",\n basisPoints: \"bp\",\n name: \"デプスチャート\",\n },\n fr: {\n bids: \"Achats\",\n asks: \"Ventes\",\n price: \"Prix\",\n amount: \"Quantité\",\n total: \"Montant\",\n average: \"Prix moyen\",\n distance: \"Écart au médian\",\n mid: \"Médian\",\n spread: \"Écart\",\n basisPoints: \"pb\",\n name: \"Graphique de profondeur\",\n },\n};\n\ninterface Plot {\n x: number;\n y: number;\n w: number;\n h: number;\n}\n\n/**\n * Creates a depth chart in `container`: cumulative bid and ask areas around\n * the mid price, with a mirrored hover tooltip and incremental updates\n * coalesced into one frame.\n */\nexport const createDepthChart = (\n container: HTMLElement,\n initial: DepthChartOptions = {},\n): DepthChartInstance => {\n let options = initial;\n const store = createOrderBookStore();\n const emitter = createEmitter<DepthChartEventMap>();\n let fmt: Formatters = createFormatters(options, 2, 4);\n /** Texts in the locale, resolved on every option update */\n let texts = localeLabels(LABELS, options.locale, options.labels);\n let inferred = false;\n let colors = { up: [0, 0, 0, 1] as Rgba, down: [0, 0, 0, 1] as Rgba };\n\n let rangeOverride: number | null = null;\n /** Range drawn (eased) */\n let shownRange = NaN;\n let shownMax = NaN;\n let shownMid = NaN;\n let bidShown = new Float64Array(0);\n let askShown = new Float64Array(0);\n let bidTarget = new Float64Array(0);\n let askTarget = new Float64Array(0);\n let lastFrame = 0;\n let plot: Plot = { x: 0, y: 0, w: 0, h: 0 };\n /** Hover position in CSS pixels (pointer or keyboard) */\n let hoverAt: [number, number] | null = null;\n let hoverKey = \"\";\n let lastHover: DepthChartHoverEvent | null = null;\n const pointers = new Map<number, [number, number]>();\n let pinch: { distance: number; range: number } | null = null;\n\n const host = createHost(container, {\n className: \"minerva-depth-chart\",\n draw,\n onTheme: () => refreshColors(),\n });\n const { root, doc } = host;\n const mirrorTip = host.createTooltip();\n root.tabIndex = 0;\n root.setAttribute(\"role\", \"figure\");\n root.style.touchAction = \"pan-y\";\n\n const labels = () => texts;\n\n function refreshColors() {\n colors = sideColors(host.theme, options);\n }\n\n function refreshFormat() {\n fmt = createFormatters(\n options,\n inferPriceDecimals(store),\n inferSizeDecimals(store),\n );\n }\n\n const applyOptions = () => {\n texts = localeLabels(LABELS, options.locale, options.labels);\n root.setAttribute(\"aria-label\", options.ariaLabel ?? texts.name);\n refreshColors();\n refreshFormat();\n host.invalidate();\n };\n\n const limits = (): [number, number] => {\n const [a, b] = options.rangeLimits ?? [0.0005, 0.5];\n return [Math.min(a, b), Math.max(a, b)];\n };\n\n /** Range fitting the shorter side of the book */\n const autoRange = (mid: number) => {\n const nb = store.count(\"bid\");\n const na = store.count(\"ask\");\n if (!nb && !na) return 0.01;\n const bidExtent = nb\n ? (mid - store.priceAt(\"bid\", nb - 1)) / mid\n : Infinity;\n const askExtent = na\n ? (store.priceAt(\"ask\", na - 1) - mid) / mid\n : Infinity;\n const extent = Math.min(bidExtent, askExtent);\n return Number.isFinite(extent) && extent > 0 ? extent : 0.01;\n };\n\n const currentRange = (mid: number) => {\n const [min, max] = limits();\n return clamp(rangeOverride ?? options.range ?? autoRange(mid), min, max);\n };\n\n const currentMid = () => {\n const mid = store.mid();\n if (Number.isFinite(mid)) return mid;\n const bid = store.bestBid();\n return Number.isFinite(bid) ? bid : store.bestAsk();\n };\n\n // ---------------------------------------------------------- depth values\n\n /** Cumulative depth of a side down to (bids) / up to (asks) a price */\n const depthAt = (side: OrderBookSide, price: number, mid: number) => {\n let amount = 0;\n let total = 0;\n const n = store.count(side);\n for (let i = 0; i < n; i++) {\n const p = store.priceAt(side, i);\n if (side === \"bid\" ? p < price : p > price) break;\n const s = store.sizeAt(side, i);\n amount += s;\n total += s * p;\n }\n const point: DepthPoint = {\n side,\n price,\n amount,\n total,\n average: amount > 0 ? total / amount : NaN,\n distance: (price - mid) / mid,\n };\n return point;\n };\n\n /**\n * Target cumulative values per pixel column (NaN outside the side): one\n * sweep from the best level outwards\n */\n const sampleSide = (\n side: OrderBookSide,\n target: Float64Array,\n lo: number,\n hi: number,\n ) => {\n const cols = target.length;\n target.fill(NaN);\n const n = store.count(side);\n if (!n) return;\n const quote = options.amount === \"quote\";\n const linear = options.curve === \"linear\";\n const priceOf = (c: number) => lo + ((c + 0.5) / cols) * (hi - lo);\n const best = store.priceAt(side, 0);\n let i = 0;\n let cum = 0;\n /** Price of the last level included (linear curves) */\n let prevPrice = best;\n const step = side === \"bid\" ? -1 : 1;\n const start =\n side === \"bid\"\n ? Math.min(cols - 1, Math.floor(((best - lo) / (hi - lo)) * cols))\n : Math.max(0, Math.ceil(((best - lo) / (hi - lo)) * cols - 1));\n for (let c = start; c >= 0 && c < cols; c += step) {\n const price = priceOf(c);\n const inside = side === \"bid\" ? price <= best : price >= best;\n if (!inside) continue;\n while (i < n) {\n const p = store.priceAt(side, i);\n if (side === \"bid\" ? p < price : p > price) break;\n const s = store.sizeAt(side, i);\n prevPrice = p;\n cum += quote ? s * p : s;\n i++;\n }\n if (linear && i < n) {\n // between the last included level and the next one\n const next = store.priceAt(side, i);\n const nextCum = cum + store.sizeAt(side, i) * (quote ? next : 1);\n const t = (price - prevPrice) / (next - prevPrice);\n target[c] = Number.isFinite(t) ? cum + (nextCum - cum) * t : cum;\n } else {\n target[c] = cum;\n }\n }\n };\n\n // ------------------------------------------------------------------ draw\n\n const ensureColumns = (cols: number) => {\n if (bidShown.length === cols) return;\n bidShown = new Float64Array(cols).fill(NaN);\n askShown = new Float64Array(cols).fill(NaN);\n bidTarget = new Float64Array(cols);\n askTarget = new Float64Array(cols);\n };\n\n /** Eases `shown` towards `target`; `true` while it still moves */\n const easeColumns = (\n shown: Float64Array,\n target: Float64Array,\n k: number,\n epsilon: number,\n ) => {\n let moving = false;\n for (let c = 0; c < shown.length; c++) {\n const t = target[c]!;\n const s = shown[c]!;\n if (!Number.isFinite(t) || !Number.isFinite(s) || k >= 1) {\n shown[c] = t;\n continue;\n }\n const next = s + (t - s) * k;\n if (Math.abs(t - next) > epsilon) moving = true;\n else {\n shown[c] = t;\n continue;\n }\n shown[c] = next;\n }\n return moving;\n };\n\n function draw(now: number): boolean {\n const ctx = host.ctx;\n if (!ctx) return false;\n const { width, height, dpr, theme } = host;\n const dt = lastFrame ? now - lastFrame : 0;\n lastFrame = now;\n const animate = options.animate !== false;\n const k = animate && dt > 0 ? ease(dt, 70) : 1;\n const l = labels();\n const fontSize = options.fontSize ?? (width < 360 ? 11 : 12);\n const axes = options.axes !== false;\n\n ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n ctx.clearRect(0, 0, width, height);\n ctx.font = fontOf(theme, options, 400, fontSize);\n\n const mid = currentMid();\n const range = Number.isFinite(mid) ? currentRange(mid) : 0.01;\n shownRange =\n Number.isFinite(shownRange) && animate\n ? shownRange + (range - shownRange) * k\n : range;\n shownMid =\n Number.isFinite(shownMid) && Number.isFinite(mid) && animate\n ? shownMid + (mid - shownMid) * Math.min(1, k * 1.5)\n : mid;\n let moving = Math.abs(shownRange - range) > range * 1e-3;\n if (Math.abs(shownMid - mid) > Math.abs(mid) * 1e-7) moving = true;\n\n const lo = shownMid * (1 - shownRange);\n const hi = shownMid * (1 + shownRange);\n\n // y scale: largest cumulative value inside the range\n const top = options.legend === false && options.midLine === false ? 10 : 30;\n const bottom = axes ? fontSize + 12 : 4;\n const probe = linearTicks(0, Math.max(1, shownMax || 1), 4);\n const axisWidth = axes\n ? Math.ceil(\n Math.max(\n ...probe.map((v) => ctx.measureText(fmt.compact(v)).width),\n 24,\n ),\n ) + 12\n : 0;\n plot = {\n x: 0,\n y: top,\n w: Math.max(10, width - axisWidth),\n h: Math.max(10, height - top - bottom),\n };\n const cols = Math.max(1, Math.floor(plot.w));\n ensureColumns(cols);\n if (Number.isFinite(lo) && hi > lo) {\n sampleSide(\"bid\", bidTarget, lo, hi);\n sampleSide(\"ask\", askTarget, lo, hi);\n } else {\n bidTarget.fill(NaN);\n askTarget.fill(NaN);\n }\n let max = 0;\n for (let c = 0; c < cols; c++) {\n const b = bidTarget[c]!;\n const a = askTarget[c]!;\n if (b > max) max = b;\n if (a > max) max = a;\n }\n const domainMax = max > 0 ? niceDomain(0, max * 1.08, 4)[1] : 1;\n shownMax =\n Number.isFinite(shownMax) && animate\n ? shownMax + (domainMax - shownMax) * k\n : domainMax;\n if (Math.abs(shownMax - domainMax) > domainMax * 1e-3) moving = true;\n const epsilon = shownMax * 1e-4;\n if (easeColumns(bidShown, bidTarget, k, epsilon)) moving = true;\n if (easeColumns(askShown, askTarget, k, epsilon)) moving = true;\n\n const yOf = (v: number) => plot.y + plot.h - (v / shownMax) * plot.h;\n const xOfPrice = (p: number) => plot.x + ((p - lo) / (hi - lo)) * plot.w;\n const base = plot.y + plot.h;\n\n // grid and axes\n const yTicks = linearTicks(\n 0,\n shownMax,\n Math.max(2, Math.floor(plot.h / 48)),\n );\n if (options.grid !== false) {\n ctx.strokeStyle = toCss(theme.grid);\n ctx.lineWidth = 1;\n ctx.beginPath();\n for (const v of yTicks) {\n const y = Math.round(yOf(v)) + 0.5;\n ctx.moveTo(plot.x, y);\n ctx.lineTo(plot.x + plot.w, y);\n }\n ctx.stroke();\n }\n if (axes) {\n ctx.fillStyle = toCss(theme.textMuted);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n for (const v of yTicks) {\n if (v === 0) continue;\n ctx.fillText(fmt.compact(v), plot.x + plot.w + 6, yOf(v));\n }\n ctx.textBaseline = \"top\";\n ctx.textAlign = \"center\";\n const count = Math.max(2, Math.floor(plot.w / 110));\n const xTicks = Number.isFinite(lo) ? linearTicks(lo, hi, count) : [];\n for (const p of xTicks) {\n const x = xOfPrice(p);\n const text = fmt.price(p);\n const w = ctx.measureText(text).width;\n if (x - w / 2 < 2 || x + w / 2 > plot.x + plot.w - 2) continue;\n ctx.fillText(text, x, base + 6);\n }\n ctx.strokeStyle = toCss(theme.axis);\n ctx.beginPath();\n ctx.moveTo(plot.x, Math.round(base) + 0.5);\n ctx.lineTo(plot.x + plot.w, Math.round(base) + 0.5);\n ctx.stroke();\n }\n\n // areas\n const fill = options.fillOpacity ?? 0.28;\n const drawSide = (shown: Float64Array, color: Rgba) => {\n let first = -1;\n let last = -1;\n for (let c = 0; c < cols; c++) {\n if (Number.isFinite(shown[c]!)) {\n if (first < 0) first = c;\n last = c;\n }\n }\n if (first < 0) return;\n const x0 = plot.x + (first / cols) * plot.w;\n const x1 = plot.x + ((last + 1) / cols) * plot.w;\n ctx.beginPath();\n ctx.moveTo(x0, yOf(shown[first]!));\n for (let c = first; c <= last; c++) {\n const y = yOf(shown[c]!);\n const xl = plot.x + (c / cols) * plot.w;\n const xr = plot.x + ((c + 1) / cols) * plot.w;\n ctx.lineTo(xl, y);\n ctx.lineTo(xr, y);\n }\n const gradient = ctx.createLinearGradient(0, plot.y, 0, base);\n gradient.addColorStop(0, toCss(color, fill));\n gradient.addColorStop(1, toCss(color, fill * 0.15));\n ctx.save();\n ctx.lineTo(x1, base);\n ctx.lineTo(x0, base);\n ctx.closePath();\n ctx.fillStyle = gradient;\n ctx.fill();\n ctx.restore();\n ctx.beginPath();\n ctx.moveTo(x0, yOf(shown[first]!));\n for (let c = first; c <= last; c++) {\n const y = yOf(shown[c]!);\n ctx.lineTo(plot.x + (c / cols) * plot.w, y);\n ctx.lineTo(plot.x + ((c + 1) / cols) * plot.w, y);\n }\n ctx.lineTo(x1, base);\n ctx.strokeStyle = toCss(color);\n ctx.lineWidth = 1.5;\n ctx.lineJoin = \"round\";\n ctx.stroke();\n };\n ctx.save();\n ctx.beginPath();\n ctx.rect(plot.x, plot.y - 2, plot.w, plot.h + 2);\n ctx.clip();\n drawSide(bidShown, colors.up);\n drawSide(askShown, colors.down);\n\n // price lines\n for (const line of options.priceLines ?? []) {\n const x = Math.round(xOfPrice(line.price)) + 0.5;\n if (x < plot.x || x > plot.x + plot.w) continue;\n const color =\n line.color && theme.resolve\n ? theme.resolve(line.color, theme.text)\n : theme.text;\n ctx.strokeStyle = toCss(color, 0.8);\n ctx.setLineDash([4, 3]);\n ctx.beginPath();\n ctx.moveTo(x, plot.y);\n ctx.lineTo(x, base);\n ctx.stroke();\n ctx.setLineDash([]);\n if (line.label) {\n ctx.font = fontOf(theme, options, 500, fontSize - 1);\n const w = ctx.measureText(line.label).width + 10;\n const lx = clamp(x - w / 2, plot.x + 2, plot.x + plot.w - w - 2);\n ctx.fillStyle = toCss(color);\n roundRect(ctx, lx, base - fontSize - 10, w, fontSize + 6, 4);\n ctx.fill();\n ctx.fillStyle = toCss(theme.background);\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n ctx.fillText(line.label, lx + 5, base - fontSize / 2 - 7);\n ctx.font = fontOf(theme, options, 400, fontSize);\n }\n }\n ctx.restore();\n\n // mid line and spread label\n const midX = xOfPrice(shownMid);\n if (options.midLine !== false && Number.isFinite(midX)) {\n ctx.strokeStyle = toCss(theme.textMuted, 0.55);\n ctx.setLineDash([3, 3]);\n ctx.beginPath();\n ctx.moveTo(Math.round(midX) + 0.5, plot.y);\n ctx.lineTo(Math.round(midX) + 0.5, base);\n ctx.stroke();\n ctx.setLineDash([]);\n const spread = store.spread();\n const title = `${l.mid} ${fmt.price(mid)}`;\n const bps = (spread / mid) * 1e4;\n const sub = Number.isFinite(spread)\n ? `${l.spread} ${fmt.price(spread)} · ${fmt.fixed(bps, bps < 10 ? 2 : 1)} ${l.basisPoints}`\n : \"\";\n ctx.font = fontOf(theme, options, 600, fontSize);\n const w1 = ctx.measureText(title).width;\n ctx.font = fontOf(theme, options, 400, fontSize - 1);\n const w2 = sub ? ctx.measureText(sub).width : 0;\n const narrow = width < 420;\n const boxW = narrow ? Math.max(w1, w2) + 16 : w1 + w2 + 28;\n const boxH = narrow && sub ? fontSize * 2 + 10 : fontSize + 10;\n const bx = clamp(midX - boxW / 2, 2, width - boxW - 2);\n const by = 4;\n ctx.fillStyle = toCss(theme.background, 0.92);\n ctx.strokeStyle = toCss(theme.axis);\n roundRect(ctx, bx, by, boxW, boxH, 6);\n ctx.fill();\n ctx.stroke();\n ctx.textBaseline = \"middle\";\n ctx.textAlign = \"left\";\n ctx.fillStyle = toCss(theme.text);\n ctx.font = fontOf(theme, options, 600, fontSize);\n ctx.fillText(title, bx + 8, by + fontSize / 2 + 5);\n if (sub) {\n ctx.font = fontOf(theme, options, 400, fontSize - 1);\n ctx.fillStyle = toCss(theme.textMuted);\n if (narrow) ctx.fillText(sub, bx + 8, by + fontSize * 1.5 + 6);\n else ctx.fillText(sub, bx + 20 + w1, by + fontSize / 2 + 5);\n }\n ctx.font = fontOf(theme, options, 400, fontSize);\n }\n\n // legend\n if (options.legend !== false && width >= 300) {\n ctx.textBaseline = \"middle\";\n const y = 4 + fontSize / 2 + 5;\n ctx.font = fontOf(theme, options, 500, fontSize);\n ctx.fillStyle = toCss(colors.up);\n ctx.beginPath();\n ctx.arc(8, y, 3.5, 0, Math.PI * 2);\n ctx.fill();\n ctx.textAlign = \"left\";\n ctx.fillStyle = toCss(theme.textMuted);\n ctx.fillText(l.bids, 16, y);\n const right = plot.x + plot.w;\n ctx.textAlign = \"right\";\n ctx.fillText(l.asks, right - 16, y);\n ctx.fillStyle = toCss(colors.down);\n ctx.beginPath();\n ctx.arc(right - 8, y, 3.5, 0, Math.PI * 2);\n ctx.fill();\n ctx.font = fontOf(theme, options, 400, fontSize);\n }\n\n drawHover(ctx, mid, lo, hi, cols, yOf, fontSize);\n\n host.describe(\n Number.isFinite(mid)\n ? `${options.ariaLabel ?? l.name}. ${l.bids} ${fmt.price(store.bestBid())}, ${l.asks} ${fmt.price(store.bestAsk())}, ${l.spread} ${fmt.price(store.spread())}.`\n : (options.ariaLabel ?? l.name),\n );\n return moving;\n }\n\n function drawHover(\n ctx: CanvasRenderingContext2D,\n mid: number,\n lo: number,\n hi: number,\n cols: number,\n yOf: (v: number) => number,\n fontSize: number,\n ) {\n const { theme } = host;\n const hide = () => {\n host.tooltip.style.display = \"none\";\n mirrorTip.style.display = \"none\";\n if (lastHover) {\n lastHover = null;\n hoverKey = \"\";\n emitter.emit(\"hover\", null);\n }\n };\n if (!hoverAt || options.tooltip === false || !Number.isFinite(mid)) {\n hide();\n return;\n }\n const x = clamp(hoverAt[0], plot.x, plot.x + plot.w - 1);\n const price = lo + ((x - plot.x) / plot.w) * (hi - lo);\n const bestBid = store.bestBid();\n const bestAsk = store.bestAsk();\n let side: OrderBookSide = price < shownMid ? \"bid\" : \"ask\";\n if (side === \"bid\" && !Number.isFinite(bestBid)) side = \"ask\";\n if (side === \"ask\" && !Number.isFinite(bestAsk)) side = \"bid\";\n const point = depthAt(side, price, mid);\n const mirrorPrice = 2 * shownMid - price;\n const other: OrderBookSide = side === \"bid\" ? \"ask\" : \"bid\";\n const mirror =\n options.mirror !== false && store.count(other)\n ? depthAt(other, mirrorPrice, mid)\n : null;\n const event: DepthChartHoverEvent = { ...point, mirror };\n const l = labels();\n\n const column = (px: number) =>\n clamp(Math.floor(((px - plot.x) / plot.w) * cols), 0, cols - 1);\n const shownOf = (s: OrderBookSide, px: number) =>\n (s === \"bid\" ? bidShown : askShown)[column(px)]!;\n const colorOf = (s: OrderBookSide) =>\n s === \"bid\" ? colors.up : colors.down;\n\n const marker = (s: OrderBookSide, px: number) => {\n const value = shownOf(s, px);\n if (!Number.isFinite(value)) return NaN;\n const y = yOf(value);\n ctx.strokeStyle = toCss(theme.textMuted, 0.6);\n ctx.setLineDash([3, 3]);\n ctx.beginPath();\n ctx.moveTo(Math.round(px) + 0.5, plot.y);\n ctx.lineTo(Math.round(px) + 0.5, plot.y + plot.h);\n ctx.moveTo(plot.x, Math.round(y) + 0.5);\n ctx.lineTo(plot.x + plot.w, Math.round(y) + 0.5);\n ctx.stroke();\n ctx.setLineDash([]);\n const color = colorOf(s);\n ctx.fillStyle = toCss(color, 0.2);\n ctx.beginPath();\n ctx.arc(px, y, 8, 0, Math.PI * 2);\n ctx.fill();\n ctx.fillStyle = toCss(color);\n ctx.strokeStyle = toCss(theme.background);\n ctx.lineWidth = 2;\n ctx.beginPath();\n ctx.arc(px, y, 4, 0, Math.PI * 2);\n ctx.fill();\n ctx.stroke();\n ctx.lineWidth = 1;\n // amount tag on the axis\n if (options.axes !== false) {\n const text = fmt.compact(value);\n ctx.font = fontOf(theme, options, 500, fontSize - 1);\n const w = ctx.measureText(text).width + 8;\n ctx.fillStyle = toCss(color);\n roundRect(ctx, plot.x + plot.w + 2, y - 9, w, 18, 3);\n ctx.fill();\n ctx.fillStyle = \"#fff\";\n ctx.textAlign = \"left\";\n ctx.textBaseline = \"middle\";\n ctx.fillText(text, plot.x + plot.w + 6, y);\n ctx.font = fontOf(theme, options, 400, fontSize);\n }\n return y;\n };\n\n const y = marker(side, x);\n const mx = plot.x + ((mirrorPrice - lo) / (hi - lo)) * plot.w;\n const my =\n mirror && mx >= plot.x && mx <= plot.x + plot.w ? marker(other, mx) : NaN;\n\n const rows = (p: DepthPoint): [string, string][] => [\n [l.price, fmt.price(p.price)],\n [l.amount, fmt.total(p.amount)],\n [l.total, fmt.notional(p.total)],\n [l.average, fmt.price(p.average)],\n [\n l.distance,\n fmt.percent(p.distance, Math.abs(p.distance) < 0.01 ? 3 : 2),\n ],\n ];\n const show = (\n tip: HTMLDivElement,\n p: DepthPoint,\n px: number,\n py: number,\n ) => {\n tooltipHtml(\n doc,\n tip,\n {\n text: p.side === \"bid\" ? l.bids : l.asks,\n color: toCss(colorOf(p.side)),\n },\n rows(p),\n );\n tip.style.display = \"block\";\n host.placeTooltip(\n tip,\n px,\n Number.isFinite(py) ? py : plot.y + plot.h / 2,\n p.side === \"bid\" ? \"left\" : \"right\",\n );\n };\n show(host.tooltip, point, x, y);\n // the mirror needs room for both tooltips side by side (phones: one)\n const room = plot.w >= 2 * (host.tooltip.offsetWidth + 24);\n if (mirror && Number.isFinite(my) && room) show(mirrorTip, mirror, mx, my);\n else mirrorTip.style.display = \"none\";\n\n const key = `${point.price}|${point.amount}|${mirror?.amount ?? \"\"}`;\n lastHover = event;\n if (key !== hoverKey) {\n hoverKey = key;\n emitter.emit(\"hover\", event);\n }\n }\n\n // ---------------------------------------------------------- interaction\n\n const setRangeInternal = (range: number | null, emit: boolean) => {\n if (range === null) rangeOverride = null;\n else {\n const [min, max] = limits();\n rangeOverride = clamp(range, min, max);\n }\n host.invalidate();\n if (emit) emitter.emit(\"range\", instance.getRange());\n };\n\n const inPlot = (x: number, y: number) =>\n x >= plot.x &&\n x <= plot.x + plot.w &&\n y >= plot.y - 30 &&\n y <= plot.y + plot.h;\n\n const onPointerMove = (event: PointerEvent) => {\n const point = localPoint(root, event);\n pointers.set(event.pointerId, point);\n if (pinch && pointers.size === 2) {\n const [a, b] = [...pointers.values()] as [\n [number, number],\n [number, number],\n ];\n const distance = Math.hypot(a[0] - b[0], a[1] - b[1]);\n if (distance > 0 && options.zoomable !== false)\n setRangeInternal((pinch.range * pinch.distance) / distance, true);\n return;\n }\n hoverAt = inPlot(point[0], point[1]) ? point : null;\n host.invalidate();\n };\n const onPointerDown = (event: PointerEvent) => {\n const point = localPoint(root, event);\n pointers.set(event.pointerId, point);\n if (pointers.size === 2) {\n const [a, b] = [...pointers.values()] as [\n [number, number],\n [number, number],\n ];\n pinch = {\n distance: Math.hypot(a[0] - b[0], a[1] - b[1]),\n range: instance.getRange(),\n };\n hoverAt = null;\n } else {\n hoverAt = inPlot(point[0], point[1]) ? point : null;\n }\n host.invalidate();\n };\n const onPointerUp = (event: PointerEvent) => {\n pointers.delete(event.pointerId);\n if (pointers.size < 2) pinch = null;\n };\n const onPointerLeave = (event: PointerEvent) => {\n pointers.delete(event.pointerId);\n if (event.pointerType === \"mouse\") {\n hoverAt = null;\n host.invalidate();\n }\n };\n const onClick = () => {\n if (lastHover) emitter.emit(\"click\", lastHover);\n };\n const onWheel = (event: WheelEvent) => {\n if (options.zoomable === false || !(event.ctrlKey || event.metaKey)) return;\n event.preventDefault();\n setRangeInternal(\n instance.getRange() * Math.exp(event.deltaY * 0.0025),\n true,\n );\n };\n const onDoubleClick = () => {\n if (options.zoomable === false) return;\n setRangeInternal(null, true);\n };\n const onKeyDown = (event: KeyboardEvent) => {\n const zoom = options.zoomable !== false;\n switch (event.key) {\n case \"+\":\n case \"=\":\n if (zoom) setRangeInternal(instance.getRange() / 1.25, true);\n break;\n case \"-\":\n if (zoom) setRangeInternal(instance.getRange() * 1.25, true);\n break;\n case \"0\":\n if (zoom) setRangeInternal(null, true);\n break;\n case \"ArrowLeft\":\n case \"ArrowRight\": {\n const dx =\n (event.key === \"ArrowLeft\" ? -1 : 1) * Math.max(2, plot.w / 50);\n const x = hoverAt ? hoverAt[0] + dx : plot.x + plot.w / 2 + dx;\n hoverAt = [clamp(x, plot.x, plot.x + plot.w - 1), plot.y + plot.h / 2];\n host.invalidate();\n break;\n }\n case \"Escape\":\n hoverAt = null;\n host.invalidate();\n break;\n case \"Enter\":\n onClick();\n break;\n default:\n return;\n }\n event.preventDefault();\n };\n const onBlur = () => {\n if (hoverAt && !pointers.size) {\n hoverAt = null;\n host.invalidate();\n }\n };\n\n root.addEventListener(\"pointermove\", onPointerMove);\n root.addEventListener(\"pointerdown\", onPointerDown);\n root.addEventListener(\"pointerup\", onPointerUp);\n root.addEventListener(\"pointercancel\", onPointerUp);\n root.addEventListener(\"pointerleave\", onPointerLeave);\n root.addEventListener(\"click\", onClick);\n root.addEventListener(\"wheel\", onWheel, { passive: false });\n root.addEventListener(\"dblclick\", onDoubleClick);\n root.addEventListener(\"keydown\", onKeyDown);\n root.addEventListener(\"blur\", onBlur);\n\n const changed = () => {\n if (!inferred && store.count(\"bid\") + store.count(\"ask\") > 0) {\n inferred = true;\n refreshFormat();\n }\n host.invalidate();\n };\n\n const instance: DepthChartInstance = {\n setBook(snapshot) {\n store.setSnapshot(snapshot);\n inferred = false;\n changed();\n },\n applyDeltas(deltas) {\n if (applyDeltas(store, deltas)) changed();\n },\n clear() {\n store.clear();\n inferred = false;\n host.invalidate();\n },\n setOptions(next) {\n // a new range option replaces the zoom of the user\n if (next.range !== options.range) rangeOverride = null;\n options = next;\n applyOptions();\n },\n setRange(range) {\n setRangeInternal(range, false);\n },\n getRange() {\n const mid = currentMid();\n return Number.isFinite(mid)\n ? currentRange(mid)\n : (rangeOverride ?? options.range ?? 0.01);\n },\n getStore: () => store,\n on: (event, handler) => emitter.on(event, handler),\n resize() {\n host.invalidate();\n },\n destroy() {\n root.removeEventListener(\"pointermove\", onPointerMove);\n root.removeEventListener(\"pointerdown\", onPointerDown);\n root.removeEventListener(\"pointerup\", onPointerUp);\n root.removeEventListener(\"pointercancel\", onPointerUp);\n root.removeEventListener(\"pointerleave\", onPointerLeave);\n root.removeEventListener(\"click\", onClick);\n root.removeEventListener(\"wheel\", onWheel);\n root.removeEventListener(\"dblclick\", onDoubleClick);\n root.removeEventListener(\"keydown\", onKeyDown);\n root.removeEventListener(\"blur\", onBlur);\n emitter.clear();\n host.destroy();\n },\n };\n applyOptions();\n return instance;\n};\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { DepthChartInstance, DepthChartOptions } from './types.cjs';
2
+ /**
3
+ * Creates a depth chart in `container`: cumulative bid and ask areas around
4
+ * the mid price, with a mirrored hover tooltip and incremental updates
5
+ * coalesced into one frame.
6
+ */
7
+ export declare const createDepthChart: (container: HTMLElement, initial?: DepthChartOptions) => DepthChartInstance;
@@ -0,0 +1,7 @@
1
+ import { DepthChartInstance, DepthChartOptions } from './types.js';
2
+ /**
3
+ * Creates a depth chart in `container`: cumulative bid and ask areas around
4
+ * the mid price, with a mirrored hover tooltip and incremental updates
5
+ * coalesced into one frame.
6
+ */
7
+ export declare const createDepthChart: (container: HTMLElement, initial?: DepthChartOptions) => DepthChartInstance;
@@ -0,0 +1,413 @@
1
+ import { toCss as e } from "../color.js";
2
+ import { localeLabels as t } from "../locale.js";
3
+ import { linearTicks as n, niceDomain as r } from "../scale.js";
4
+ import { applyDeltas as i, createOrderBookStore as a, inferPriceDecimals as o, inferSizeDecimals as s } from "./book.js";
5
+ import { clamp as c, createFormatters as l, ease as u, fontOf as d, roundRect as f, sideColors as p } from "./format.js";
6
+ import { createEmitter as m, createHost as h, localPoint as g, tooltipHtml as _ } from "./host.js";
7
+ //#region src/engine/orderbook/depth.ts
8
+ var v = {
9
+ en: {
10
+ bids: "Bids",
11
+ asks: "Asks",
12
+ price: "Price",
13
+ amount: "Amount",
14
+ total: "Total",
15
+ average: "Avg. price",
16
+ distance: "From mid",
17
+ mid: "Mid",
18
+ spread: "Spread",
19
+ basisPoints: "bp",
20
+ name: "Depth chart"
21
+ },
22
+ zh: {
23
+ bids: "买盘",
24
+ asks: "卖盘",
25
+ price: "价格",
26
+ amount: "累计数量",
27
+ total: "累计金额",
28
+ average: "均价",
29
+ distance: "距中间价",
30
+ mid: "中间价",
31
+ spread: "价差",
32
+ basisPoints: "基点",
33
+ name: "深度图"
34
+ },
35
+ ja: {
36
+ bids: "買い",
37
+ asks: "売り",
38
+ price: "価格",
39
+ amount: "累計数量",
40
+ total: "累計金額",
41
+ average: "平均価格",
42
+ distance: "仲値から",
43
+ mid: "仲値",
44
+ spread: "スプレッド",
45
+ basisPoints: "bp",
46
+ name: "デプスチャート"
47
+ },
48
+ fr: {
49
+ bids: "Achats",
50
+ asks: "Ventes",
51
+ price: "Prix",
52
+ amount: "Quantité",
53
+ total: "Montant",
54
+ average: "Prix moyen",
55
+ distance: "Écart au médian",
56
+ mid: "Médian",
57
+ spread: "Écart",
58
+ basisPoints: "pb",
59
+ name: "Graphique de profondeur"
60
+ }
61
+ }, y = (y, b = {}) => {
62
+ let x = b, S = a(), C = m(), w = l(x, 2, 4), T = t(v, x.locale, x.labels), E = !1, D = {
63
+ up: [
64
+ 0,
65
+ 0,
66
+ 0,
67
+ 1
68
+ ],
69
+ down: [
70
+ 0,
71
+ 0,
72
+ 0,
73
+ 1
74
+ ]
75
+ }, O = null, k = NaN, A = NaN, j = NaN, M = /* @__PURE__ */ new Float64Array(), N = /* @__PURE__ */ new Float64Array(), P = /* @__PURE__ */ new Float64Array(), F = /* @__PURE__ */ new Float64Array(), I = 0, L = {
76
+ x: 0,
77
+ y: 0,
78
+ w: 0,
79
+ h: 0
80
+ }, R = null, z = "", B = null, V = /* @__PURE__ */ new Map(), H = null, U = h(y, {
81
+ className: "minerva-depth-chart",
82
+ draw: ce,
83
+ onTheme: () => K()
84
+ }), { root: W, doc: ee } = U, G = U.createTooltip();
85
+ W.tabIndex = 0, W.setAttribute("role", "figure"), W.style.touchAction = "pan-y";
86
+ let te = () => T;
87
+ function K() {
88
+ D = p(U.theme, x);
89
+ }
90
+ function q() {
91
+ w = l(x, o(S), s(S));
92
+ }
93
+ let J = () => {
94
+ T = t(v, x.locale, x.labels), W.setAttribute("aria-label", x.ariaLabel ?? T.name), K(), q(), U.invalidate();
95
+ }, Y = () => {
96
+ let [e, t] = x.rangeLimits ?? [5e-4, .5];
97
+ return [Math.min(e, t), Math.max(e, t)];
98
+ }, ne = (e) => {
99
+ let t = S.count("bid"), n = S.count("ask");
100
+ if (!t && !n) return .01;
101
+ let r = t ? (e - S.priceAt("bid", t - 1)) / e : Infinity, i = n ? (S.priceAt("ask", n - 1) - e) / e : Infinity, a = Math.min(r, i);
102
+ return Number.isFinite(a) && a > 0 ? a : .01;
103
+ }, re = (e) => {
104
+ let [t, n] = Y();
105
+ return c(O ?? x.range ?? ne(e), t, n);
106
+ }, ie = () => {
107
+ let e = S.mid();
108
+ if (Number.isFinite(e)) return e;
109
+ let t = S.bestBid();
110
+ return Number.isFinite(t) ? t : S.bestAsk();
111
+ }, X = (e, t, n) => {
112
+ let r = 0, i = 0, a = S.count(e);
113
+ for (let n = 0; n < a; n++) {
114
+ let a = S.priceAt(e, n);
115
+ if (e === "bid" ? a < t : a > t) break;
116
+ let o = S.sizeAt(e, n);
117
+ r += o, i += o * a;
118
+ }
119
+ return {
120
+ side: e,
121
+ price: t,
122
+ amount: r,
123
+ total: i,
124
+ average: r > 0 ? i / r : NaN,
125
+ distance: (t - n) / n
126
+ };
127
+ }, ae = (e, t, n, r) => {
128
+ let i = t.length;
129
+ t.fill(NaN);
130
+ let a = S.count(e);
131
+ if (!a) return;
132
+ let o = x.amount === "quote", s = x.curve === "linear", c = (e) => n + (e + .5) / i * (r - n), l = S.priceAt(e, 0), u = 0, d = 0, f = l, p = e === "bid" ? -1 : 1, m = e === "bid" ? Math.min(i - 1, Math.floor((l - n) / (r - n) * i)) : Math.max(0, Math.ceil((l - n) / (r - n) * i - 1));
133
+ for (let n = m; n >= 0 && n < i; n += p) {
134
+ let r = c(n);
135
+ if (e === "bid" ? r <= l : r >= l) {
136
+ for (; u < a;) {
137
+ let t = S.priceAt(e, u);
138
+ if (e === "bid" ? t < r : t > r) break;
139
+ let n = S.sizeAt(e, u);
140
+ f = t, d += o ? n * t : n, u++;
141
+ }
142
+ if (s && u < a) {
143
+ let i = S.priceAt(e, u), a = d + S.sizeAt(e, u) * (o ? i : 1), s = (r - f) / (i - f);
144
+ t[n] = Number.isFinite(s) ? d + (a - d) * s : d;
145
+ } else t[n] = d;
146
+ }
147
+ }
148
+ }, oe = (e) => {
149
+ M.length !== e && (M = new Float64Array(e).fill(NaN), N = new Float64Array(e).fill(NaN), P = new Float64Array(e), F = new Float64Array(e));
150
+ }, se = (e, t, n, r) => {
151
+ let i = !1;
152
+ for (let a = 0; a < e.length; a++) {
153
+ let o = t[a], s = e[a];
154
+ if (!Number.isFinite(o) || !Number.isFinite(s) || n >= 1) {
155
+ e[a] = o;
156
+ continue;
157
+ }
158
+ let c = s + (o - s) * n;
159
+ if (Math.abs(o - c) > r) i = !0;
160
+ else {
161
+ e[a] = o;
162
+ continue;
163
+ }
164
+ e[a] = c;
165
+ }
166
+ return i;
167
+ };
168
+ function ce(t) {
169
+ let i = U.ctx;
170
+ if (!i) return !1;
171
+ let { width: a, height: o, dpr: s, theme: l } = U, p = I ? t - I : 0;
172
+ I = t;
173
+ let m = x.animate !== !1, h = m && p > 0 ? u(p, 70) : 1, g = te(), _ = x.fontSize ?? (a < 360 ? 11 : 12), v = x.axes !== !1;
174
+ i.setTransform(s, 0, 0, s, 0, 0), i.clearRect(0, 0, a, o), i.font = d(l, x, 400, _);
175
+ let y = ie(), b = Number.isFinite(y) ? re(y) : .01;
176
+ k = Number.isFinite(k) && m ? k + (b - k) * h : b, j = Number.isFinite(j) && Number.isFinite(y) && m ? j + (y - j) * Math.min(1, h * 1.5) : y;
177
+ let C = Math.abs(k - b) > b * .001;
178
+ Math.abs(j - y) > Math.abs(y) * 1e-7 && (C = !0);
179
+ let T = j * (1 - k), E = j * (1 + k), O = x.legend === !1 && x.midLine === !1 ? 10 : 30, R = v ? _ + 12 : 4, z = n(0, Math.max(1, A || 1), 4), B = v ? Math.ceil(Math.max(...z.map((e) => i.measureText(w.compact(e)).width), 24)) + 12 : 0;
180
+ L = {
181
+ x: 0,
182
+ y: O,
183
+ w: Math.max(10, a - B),
184
+ h: Math.max(10, o - O - R)
185
+ };
186
+ let V = Math.max(1, Math.floor(L.w));
187
+ oe(V), Number.isFinite(T) && E > T ? (ae("bid", P, T, E), ae("ask", F, T, E)) : (P.fill(NaN), F.fill(NaN));
188
+ let H = 0;
189
+ for (let e = 0; e < V; e++) {
190
+ let t = P[e], n = F[e];
191
+ t > H && (H = t), n > H && (H = n);
192
+ }
193
+ let W = H > 0 ? r(0, H * 1.08, 4)[1] : 1;
194
+ A = Number.isFinite(A) && m ? A + (W - A) * h : W, Math.abs(A - W) > W * .001 && (C = !0);
195
+ let ee = A * 1e-4;
196
+ se(M, P, h, ee) && (C = !0), se(N, F, h, ee) && (C = !0);
197
+ let G = (e) => L.y + L.h - e / A * L.h, K = (e) => L.x + (e - T) / (E - T) * L.w, q = L.y + L.h, J = n(0, A, Math.max(2, Math.floor(L.h / 48)));
198
+ if (x.grid !== !1) {
199
+ i.strokeStyle = e(l.grid), i.lineWidth = 1, i.beginPath();
200
+ for (let e of J) {
201
+ let t = Math.round(G(e)) + .5;
202
+ i.moveTo(L.x, t), i.lineTo(L.x + L.w, t);
203
+ }
204
+ i.stroke();
205
+ }
206
+ if (v) {
207
+ i.fillStyle = e(l.textMuted), i.textAlign = "left", i.textBaseline = "middle";
208
+ for (let e of J) e !== 0 && i.fillText(w.compact(e), L.x + L.w + 6, G(e));
209
+ i.textBaseline = "top", i.textAlign = "center";
210
+ let t = Math.max(2, Math.floor(L.w / 110)), r = Number.isFinite(T) ? n(T, E, t) : [];
211
+ for (let e of r) {
212
+ let t = K(e), n = w.price(e), r = i.measureText(n).width;
213
+ t - r / 2 < 2 || t + r / 2 > L.x + L.w - 2 || i.fillText(n, t, q + 6);
214
+ }
215
+ i.strokeStyle = e(l.axis), i.beginPath(), i.moveTo(L.x, Math.round(q) + .5), i.lineTo(L.x + L.w, Math.round(q) + .5), i.stroke();
216
+ }
217
+ let Y = x.fillOpacity ?? .28, ne = (t, n) => {
218
+ let r = -1, a = -1;
219
+ for (let e = 0; e < V; e++) Number.isFinite(t[e]) && (r < 0 && (r = e), a = e);
220
+ if (r < 0) return;
221
+ let o = L.x + r / V * L.w, s = L.x + (a + 1) / V * L.w;
222
+ i.beginPath(), i.moveTo(o, G(t[r]));
223
+ for (let e = r; e <= a; e++) {
224
+ let n = G(t[e]), r = L.x + e / V * L.w, a = L.x + (e + 1) / V * L.w;
225
+ i.lineTo(r, n), i.lineTo(a, n);
226
+ }
227
+ let c = i.createLinearGradient(0, L.y, 0, q);
228
+ c.addColorStop(0, e(n, Y)), c.addColorStop(1, e(n, Y * .15)), i.save(), i.lineTo(s, q), i.lineTo(o, q), i.closePath(), i.fillStyle = c, i.fill(), i.restore(), i.beginPath(), i.moveTo(o, G(t[r]));
229
+ for (let e = r; e <= a; e++) {
230
+ let n = G(t[e]);
231
+ i.lineTo(L.x + e / V * L.w, n), i.lineTo(L.x + (e + 1) / V * L.w, n);
232
+ }
233
+ i.lineTo(s, q), i.strokeStyle = e(n), i.lineWidth = 1.5, i.lineJoin = "round", i.stroke();
234
+ };
235
+ i.save(), i.beginPath(), i.rect(L.x, L.y - 2, L.w, L.h + 2), i.clip(), ne(M, D.up), ne(N, D.down);
236
+ for (let t of x.priceLines ?? []) {
237
+ let n = Math.round(K(t.price)) + .5;
238
+ if (n < L.x || n > L.x + L.w) continue;
239
+ let r = t.color && l.resolve ? l.resolve(t.color, l.text) : l.text;
240
+ if (i.strokeStyle = e(r, .8), i.setLineDash([4, 3]), i.beginPath(), i.moveTo(n, L.y), i.lineTo(n, q), i.stroke(), i.setLineDash([]), t.label) {
241
+ i.font = d(l, x, 500, _ - 1);
242
+ let a = i.measureText(t.label).width + 10, o = c(n - a / 2, L.x + 2, L.x + L.w - a - 2);
243
+ i.fillStyle = e(r), f(i, o, q - _ - 10, a, _ + 6, 4), i.fill(), i.fillStyle = e(l.background), i.textAlign = "left", i.textBaseline = "middle", i.fillText(t.label, o + 5, q - _ / 2 - 7), i.font = d(l, x, 400, _);
244
+ }
245
+ }
246
+ i.restore();
247
+ let X = K(j);
248
+ if (x.midLine !== !1 && Number.isFinite(X)) {
249
+ i.strokeStyle = e(l.textMuted, .55), i.setLineDash([3, 3]), i.beginPath(), i.moveTo(Math.round(X) + .5, L.y), i.lineTo(Math.round(X) + .5, q), i.stroke(), i.setLineDash([]);
250
+ let t = S.spread(), n = `${g.mid} ${w.price(y)}`, r = t / y * 1e4, o = Number.isFinite(t) ? `${g.spread} ${w.price(t)} · ${w.fixed(r, r < 10 ? 2 : 1)} ${g.basisPoints}` : "";
251
+ i.font = d(l, x, 600, _);
252
+ let s = i.measureText(n).width;
253
+ i.font = d(l, x, 400, _ - 1);
254
+ let u = o ? i.measureText(o).width : 0, p = a < 420, m = p ? Math.max(s, u) + 16 : s + u + 28, h = p && o ? _ * 2 + 10 : _ + 10, v = c(X - m / 2, 2, a - m - 2);
255
+ i.fillStyle = e(l.background, .92), i.strokeStyle = e(l.axis), f(i, v, 4, m, h, 6), i.fill(), i.stroke(), i.textBaseline = "middle", i.textAlign = "left", i.fillStyle = e(l.text), i.font = d(l, x, 600, _), i.fillText(n, v + 8, 4 + _ / 2 + 5), o && (i.font = d(l, x, 400, _ - 1), i.fillStyle = e(l.textMuted), p ? i.fillText(o, v + 8, 4 + _ * 1.5 + 6) : i.fillText(o, v + 20 + s, 4 + _ / 2 + 5)), i.font = d(l, x, 400, _);
256
+ }
257
+ if (x.legend !== !1 && a >= 300) {
258
+ i.textBaseline = "middle";
259
+ let t = 4 + _ / 2 + 5;
260
+ i.font = d(l, x, 500, _), i.fillStyle = e(D.up), i.beginPath(), i.arc(8, t, 3.5, 0, Math.PI * 2), i.fill(), i.textAlign = "left", i.fillStyle = e(l.textMuted), i.fillText(g.bids, 16, t);
261
+ let n = L.x + L.w;
262
+ i.textAlign = "right", i.fillText(g.asks, n - 16, t), i.fillStyle = e(D.down), i.beginPath(), i.arc(n - 8, t, 3.5, 0, Math.PI * 2), i.fill(), i.font = d(l, x, 400, _);
263
+ }
264
+ return le(i, y, T, E, V, G, _), U.describe(Number.isFinite(y) ? `${x.ariaLabel ?? g.name}. ${g.bids} ${w.price(S.bestBid())}, ${g.asks} ${w.price(S.bestAsk())}, ${g.spread} ${w.price(S.spread())}.` : x.ariaLabel ?? g.name), C;
265
+ }
266
+ function le(t, n, r, i, a, o, s) {
267
+ let { theme: l } = U, u = () => {
268
+ U.tooltip.style.display = "none", G.style.display = "none", B && (B = null, z = "", C.emit("hover", null));
269
+ };
270
+ if (!R || x.tooltip === !1 || !Number.isFinite(n)) {
271
+ u();
272
+ return;
273
+ }
274
+ let p = c(R[0], L.x, L.x + L.w - 1), m = r + (p - L.x) / L.w * (i - r), h = S.bestBid(), g = S.bestAsk(), v = m < j ? "bid" : "ask";
275
+ v === "bid" && !Number.isFinite(h) && (v = "ask"), v === "ask" && !Number.isFinite(g) && (v = "bid");
276
+ let y = X(v, m, n), b = 2 * j - m, T = v === "bid" ? "ask" : "bid", E = x.mirror !== !1 && S.count(T) ? X(T, b, n) : null, O = {
277
+ ...y,
278
+ mirror: E
279
+ }, k = te(), A = (e) => c(Math.floor((e - L.x) / L.w * a), 0, a - 1), P = (e, t) => (e === "bid" ? M : N)[A(t)], F = (e) => e === "bid" ? D.up : D.down, I = (n, r) => {
280
+ let i = P(n, r);
281
+ if (!Number.isFinite(i)) return NaN;
282
+ let a = o(i);
283
+ t.strokeStyle = e(l.textMuted, .6), t.setLineDash([3, 3]), t.beginPath(), t.moveTo(Math.round(r) + .5, L.y), t.lineTo(Math.round(r) + .5, L.y + L.h), t.moveTo(L.x, Math.round(a) + .5), t.lineTo(L.x + L.w, Math.round(a) + .5), t.stroke(), t.setLineDash([]);
284
+ let c = F(n);
285
+ if (t.fillStyle = e(c, .2), t.beginPath(), t.arc(r, a, 8, 0, Math.PI * 2), t.fill(), t.fillStyle = e(c), t.strokeStyle = e(l.background), t.lineWidth = 2, t.beginPath(), t.arc(r, a, 4, 0, Math.PI * 2), t.fill(), t.stroke(), t.lineWidth = 1, x.axes !== !1) {
286
+ let n = w.compact(i);
287
+ t.font = d(l, x, 500, s - 1);
288
+ let r = t.measureText(n).width + 8;
289
+ t.fillStyle = e(c), f(t, L.x + L.w + 2, a - 9, r, 18, 3), t.fill(), t.fillStyle = "#fff", t.textAlign = "left", t.textBaseline = "middle", t.fillText(n, L.x + L.w + 6, a), t.font = d(l, x, 400, s);
290
+ }
291
+ return a;
292
+ }, V = I(v, p), H = L.x + (b - r) / (i - r) * L.w, W = E && H >= L.x && H <= L.x + L.w ? I(T, H) : NaN, K = (e) => [
293
+ [k.price, w.price(e.price)],
294
+ [k.amount, w.total(e.amount)],
295
+ [k.total, w.notional(e.total)],
296
+ [k.average, w.price(e.average)],
297
+ [k.distance, w.percent(e.distance, Math.abs(e.distance) < .01 ? 3 : 2)]
298
+ ], q = (t, n, r, i) => {
299
+ _(ee, t, {
300
+ text: n.side === "bid" ? k.bids : k.asks,
301
+ color: e(F(n.side))
302
+ }, K(n)), t.style.display = "block", U.placeTooltip(t, r, Number.isFinite(i) ? i : L.y + L.h / 2, n.side === "bid" ? "left" : "right");
303
+ };
304
+ q(U.tooltip, y, p, V);
305
+ let J = L.w >= 2 * (U.tooltip.offsetWidth + 24);
306
+ E && Number.isFinite(W) && J ? q(G, E, H, W) : G.style.display = "none";
307
+ let Y = `${y.price}|${y.amount}|${E?.amount ?? ""}`;
308
+ B = O, Y !== z && (z = Y, C.emit("hover", O));
309
+ }
310
+ let Z = (e, t) => {
311
+ if (e === null) O = null;
312
+ else {
313
+ let [t, n] = Y();
314
+ O = c(e, t, n);
315
+ }
316
+ U.invalidate(), t && C.emit("range", $.getRange());
317
+ }, ue = (e, t) => e >= L.x && e <= L.x + L.w && t >= L.y - 30 && t <= L.y + L.h, de = (e) => {
318
+ let t = g(W, e);
319
+ if (V.set(e.pointerId, t), H && V.size === 2) {
320
+ let [e, t] = [...V.values()], n = Math.hypot(e[0] - t[0], e[1] - t[1]);
321
+ n > 0 && x.zoomable !== !1 && Z(H.range * H.distance / n, !0);
322
+ return;
323
+ }
324
+ R = ue(t[0], t[1]) ? t : null, U.invalidate();
325
+ }, fe = (e) => {
326
+ let t = g(W, e);
327
+ if (V.set(e.pointerId, t), V.size === 2) {
328
+ let [e, t] = [...V.values()];
329
+ H = {
330
+ distance: Math.hypot(e[0] - t[0], e[1] - t[1]),
331
+ range: $.getRange()
332
+ }, R = null;
333
+ } else R = ue(t[0], t[1]) ? t : null;
334
+ U.invalidate();
335
+ }, Q = (e) => {
336
+ V.delete(e.pointerId), V.size < 2 && (H = null);
337
+ }, pe = (e) => {
338
+ V.delete(e.pointerId), e.pointerType === "mouse" && (R = null, U.invalidate());
339
+ }, me = () => {
340
+ B && C.emit("click", B);
341
+ }, he = (e) => {
342
+ x.zoomable !== !1 && (e.ctrlKey || e.metaKey) && (e.preventDefault(), Z($.getRange() * Math.exp(e.deltaY * .0025), !0));
343
+ }, ge = () => {
344
+ x.zoomable !== !1 && Z(null, !0);
345
+ }, _e = (e) => {
346
+ let t = x.zoomable !== !1;
347
+ switch (e.key) {
348
+ case "+":
349
+ case "=":
350
+ t && Z($.getRange() / 1.25, !0);
351
+ break;
352
+ case "-":
353
+ t && Z($.getRange() * 1.25, !0);
354
+ break;
355
+ case "0":
356
+ t && Z(null, !0);
357
+ break;
358
+ case "ArrowLeft":
359
+ case "ArrowRight": {
360
+ let t = (e.key === "ArrowLeft" ? -1 : 1) * Math.max(2, L.w / 50), n = R ? R[0] + t : L.x + L.w / 2 + t;
361
+ R = [c(n, L.x, L.x + L.w - 1), L.y + L.h / 2], U.invalidate();
362
+ break;
363
+ }
364
+ case "Escape":
365
+ R = null, U.invalidate();
366
+ break;
367
+ case "Enter":
368
+ me();
369
+ break;
370
+ default: return;
371
+ }
372
+ e.preventDefault();
373
+ }, ve = () => {
374
+ R && !V.size && (R = null, U.invalidate());
375
+ };
376
+ W.addEventListener("pointermove", de), W.addEventListener("pointerdown", fe), W.addEventListener("pointerup", Q), W.addEventListener("pointercancel", Q), W.addEventListener("pointerleave", pe), W.addEventListener("click", me), W.addEventListener("wheel", he, { passive: !1 }), W.addEventListener("dblclick", ge), W.addEventListener("keydown", _e), W.addEventListener("blur", ve);
377
+ let ye = () => {
378
+ !E && S.count("bid") + S.count("ask") > 0 && (E = !0, q()), U.invalidate();
379
+ }, $ = {
380
+ setBook(e) {
381
+ S.setSnapshot(e), E = !1, ye();
382
+ },
383
+ applyDeltas(e) {
384
+ i(S, e) && ye();
385
+ },
386
+ clear() {
387
+ S.clear(), E = !1, U.invalidate();
388
+ },
389
+ setOptions(e) {
390
+ e.range !== x.range && (O = null), x = e, J();
391
+ },
392
+ setRange(e) {
393
+ Z(e, !1);
394
+ },
395
+ getRange() {
396
+ let e = ie();
397
+ return Number.isFinite(e) ? re(e) : O ?? x.range ?? .01;
398
+ },
399
+ getStore: () => S,
400
+ on: (e, t) => C.on(e, t),
401
+ resize() {
402
+ U.invalidate();
403
+ },
404
+ destroy() {
405
+ W.removeEventListener("pointermove", de), W.removeEventListener("pointerdown", fe), W.removeEventListener("pointerup", Q), W.removeEventListener("pointercancel", Q), W.removeEventListener("pointerleave", pe), W.removeEventListener("click", me), W.removeEventListener("wheel", he), W.removeEventListener("dblclick", ge), W.removeEventListener("keydown", _e), W.removeEventListener("blur", ve), C.clear(), U.destroy();
406
+ }
407
+ };
408
+ return J(), $;
409
+ };
410
+ //#endregion
411
+ export { y as createDepthChart };
412
+
413
+ //# sourceMappingURL=depth.js.map