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
@@ -1 +1 @@
1
- {"version":3,"file":"format.cjs","names":["stepDecimals","require_scale","UNITS","trim","text","formatCompact","value","abs","unit","suffix","maxDecimals","decimals","tickFormatter","maxAbs","u","step","formatValue"],"sources":["../../../../charts/src/engine/format.ts"],"sourcesContent":["// Number formatting of tick labels and tooltip values.\n\nimport { stepDecimals } from \"./scale\";\n\nconst UNITS: readonly [number, string][] = [\n [1e12, \"T\"],\n [1e9, \"B\"],\n [1e6, \"M\"],\n [1e3, \"k\"],\n];\n\nconst trim = (text: string) =>\n text.includes(\".\") ? text.replace(/\\.?0+$/, \"\") : text;\n\n/** `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0` */\nexport const formatCompact = (value: number, maxDecimals = 2): string => {\n if (!Number.isFinite(value)) return String(value);\n if (Object.is(value, -0) || value === 0) return \"0\";\n const abs = Math.abs(value);\n for (const [unit, suffix] of UNITS) {\n if (abs >= unit) return trim((value / unit).toFixed(maxDecimals)) + suffix;\n }\n if (abs < 1e-4) return value.toExponential(1);\n const decimals = Math.min(6, Math.max(maxDecimals, stepDecimals(abs) + 2));\n return trim(value.toFixed(decimals));\n};\n\n/**\n * Formatter of the ticks of a linear axis: enough decimals to tell the\n * ticks apart; compact units (k, M, ...) when the values are large.\n */\nexport const tickFormatter = (step: number, maxAbs: number) => {\n if (maxAbs >= 1e4) {\n const unit = UNITS.find(([u]) => maxAbs >= u)?.[0] ?? 1;\n const decimals = Math.min(3, stepDecimals(step / unit));\n return (value: number) => formatCompact(value, decimals);\n }\n const decimals = stepDecimals(step);\n return (value: number) => {\n const text = value.toFixed(decimals);\n return /^-0(\\.0*)?$/.test(text) ? text.slice(1) : text;\n };\n};\n\n/** Value of a tooltip: up to 4 significant decimals */\nexport const formatValue = (value: number): string => {\n if (!Number.isFinite(value)) return \"–\";\n const abs = Math.abs(value);\n if (abs >= 1e6) return formatCompact(value, 2);\n if (Number.isInteger(value)) return value.toLocaleString(\"en-US\");\n return trim(value.toFixed(abs >= 100 ? 2 : abs >= 1 ? 3 : 4));\n};\n"],"mappings":"+BAIA,IAAME,EAAqC,CACzC,CAAC,aAAM,GAAG,EACV,CAAC,IAAK,GAAG,EACT,CAAC,IAAK,GAAG,EACT,CAAC,IAAK,GAAG,CACX,EAEMC,EAAQ,GACZC,EAAK,SAAS,GAAG,EAAIA,EAAK,QAAQ,SAAU,EAAE,EAAIA,EAGvCC,GAAiB,EAAe,EAAc,IAAc,CACvE,GAAI,CAAC,OAAO,SAASC,CAAK,EAAG,OAAO,OAAOA,CAAK,EAChD,GAAI,OAAO,GAAGA,EAAO,EAAE,GAAKA,IAAU,EAAG,MAAO,IAChD,IAAMC,EAAM,KAAK,IAAID,CAAK,EAC1B,IAAK,GAAM,CAACE,EAAMC,KAAWP,EAC3B,GAAIK,GAAOC,EAAM,OAAOL,GAAMG,EAAQE,EAAA,CAAM,QAAQE,CAAW,CAAC,EAAID,EAEtE,GAAIF,EAAM,KAAM,OAAOD,EAAM,cAAc,CAAC,EAC5C,IAAMK,EAAW,KAAK,IAAI,EAAG,KAAK,IAAID,EAAaV,EAAAA,aAAaO,CAAG,EAAI,CAAC,CAAC,EACzE,OAAOJ,EAAKG,EAAM,QAAQK,CAAQ,CAAC,CACrC,EAMaC,GAAiB,EAAc,IAAmB,CAC7D,GAAIC,GAAU,IAAK,CACjB,IAAML,EAAON,EAAM,MAAM,CAACY,KAAOD,GAAUC,CAAC,CAAC,GAAG,IAAM,EAChDH,EAAW,KAAK,IAAI,EAAGX,EAAAA,aAAae,EAAOP,CAAI,CAAC,EACtD,MAAQ,IAAkBH,EAAcC,EAAOK,CAAQ,CACzD,CACA,IAAMA,EAAWX,EAAAA,aAAae,CAAI,EAClC,MAAQ,IAAkB,CACxB,IAAMX,EAAOE,EAAM,QAAQK,CAAQ,EACnC,MAAO,cAAc,KAAKP,CAAI,EAAIA,EAAK,MAAM,CAAC,EAAIA,CACpD,CACF,EAGaY,EAAe,GAA0B,CACpD,GAAI,CAAC,OAAO,SAASV,CAAK,EAAG,MAAO,IACpC,IAAMC,EAAM,KAAK,IAAID,CAAK,EAG1B,OAFIC,GAAO,IAAYF,EAAcC,EAAO,CAAC,EACzC,OAAO,UAAUA,CAAK,EAAUA,EAAM,eAAe,OAAO,EACzDH,EAAKG,EAAM,QAAQC,GAAO,IAAM,EAAIA,GAAO,EAAI,EAAI,CAAC,CAAC,CAC9D"}
1
+ {"version":3,"file":"format.cjs","names":["compactUnits","numberFormat","stepDecimals","require_locale","require_scale","UNITS","unitCache","unitsOf","locale","units","trim","text","decimalFormats","localized","key","decimals","format","value","formatCompact","abs","unit","suffix","maxDecimals","tickFormatter","maxAbs","u","step","rounded","formatValue","valueFormatter","formatPercent","fixed"],"sources":["../../../../charts/src/engine/format.ts"],"sourcesContent":["// Number formatting of tick labels and tooltip values. Without a `locale`\n// the output is the historical one (English units, `.` decimals); with a\n// locale, the units and separators of its language (`1,5 k`, `2.5万`).\n\nimport { compactUnits, numberFormat } from \"./locale\";\nimport { stepDecimals } from \"./scale\";\n\nconst UNITS: readonly [number, string][] = [\n [1e12, \"T\"],\n [1e9, \"B\"],\n [1e6, \"M\"],\n [1e3, \"k\"],\n];\n\nconst unitCache = new Map<string, readonly [number, string][]>();\n\n/** Compact units of a locale (English without one) */\nconst unitsOf = (locale?: string) => {\n if (!locale) return UNITS;\n let units = unitCache.get(locale);\n if (!units) {\n units = compactUnits(locale);\n unitCache.set(locale, units);\n }\n return units;\n};\n\nconst trim = (text: string) =>\n text.includes(\".\") ? text.replace(/\\.?0+$/, \"\") : text;\n\nconst decimalFormats = new Map<string, Intl.NumberFormat>();\n\n/** `value` with at most `decimals` decimals in a locale (no trailing zeros) */\nconst localized = (value: number, decimals: number, locale: string) => {\n // hot path (ticks, tooltips): cheaper key than `numberFormat`'s JSON\n const key = `${locale}|${decimals}`;\n let format = decimalFormats.get(key);\n if (!format) {\n format = numberFormat(locale, { maximumFractionDigits: decimals });\n decimalFormats.set(key, format);\n }\n return format.format(value);\n};\n\n/**\n * `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0`. With a\n * `locale`: its compact units and separators (`123.46万` in Chinese,\n * `1,23 M` in French).\n */\nexport const formatCompact = (\n value: number,\n maxDecimals = 2,\n locale?: string,\n): string => {\n if (!Number.isFinite(value)) return String(value);\n if (Object.is(value, -0) || value === 0) return \"0\";\n const abs = Math.abs(value);\n for (const [unit, suffix] of unitsOf(locale)) {\n if (abs >= unit)\n return locale\n ? localized(value / unit, maxDecimals, locale) + suffix\n : trim((value / unit).toFixed(maxDecimals)) + suffix;\n }\n if (abs < 1e-4) return value.toExponential(1);\n const decimals = Math.min(6, Math.max(maxDecimals, stepDecimals(abs) + 2));\n return locale\n ? localized(value, decimals, locale)\n : trim(value.toFixed(decimals));\n};\n\n/**\n * Formatter of the ticks of a linear axis: enough decimals to tell the\n * ticks apart; compact units (k, M, ... or 万, 亿 with a `locale`) when the\n * values are large.\n */\nexport const tickFormatter = (\n step: number,\n maxAbs: number,\n locale?: string,\n) => {\n if (maxAbs >= 1e4) {\n const unit = unitsOf(locale).find(([u]) => maxAbs >= u)?.[0] ?? 1;\n const decimals = Math.min(3, stepDecimals(step / unit));\n return (value: number) => formatCompact(value, decimals, locale);\n }\n const decimals = stepDecimals(step);\n if (locale) {\n const format = numberFormat(locale, {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n // ticks stay below 10 000 here: `5000`, not `5,000`\n useGrouping: false,\n });\n return (value: number) => {\n const rounded = Number(value.toFixed(decimals));\n return format.format(rounded === 0 ? 0 : rounded);\n };\n }\n return (value: number) => {\n const text = value.toFixed(decimals);\n return /^-0(\\.0*)?$/.test(text) ? text.slice(1) : text;\n };\n};\n\n/**\n * Value of a tooltip: up to 4 significant decimals, thousands separators\n * (of the `locale`, English without it)\n */\nexport const formatValue = (value: number, locale?: string): string => {\n if (!Number.isFinite(value)) return \"–\";\n const abs = Math.abs(value);\n if (abs >= 1e6) return formatCompact(value, 2, locale);\n const decimals = Number.isInteger(value)\n ? 0\n : abs >= 100\n ? 2\n : abs >= 1\n ? 3\n : 4;\n if (locale) return localized(value, decimals, locale);\n if (decimals === 0) return value.toLocaleString(\"en-US\");\n return trim(value.toFixed(decimals));\n};\n\n/** `formatValue` bound to a locale */\nexport const valueFormatter = (locale: string) => (value: number) =>\n formatValue(value, locale);\n\n/**\n * `12.5` -> `12.5%` (`12,5 %` in French): one decimal at most, exactly one\n * with `fixed` (`75.0%`)\n */\nexport const formatPercent = (\n value: number,\n locale?: string,\n fixed = false,\n): string =>\n locale\n ? numberFormat(locale, {\n style: \"percent\",\n minimumFractionDigits: fixed ? 1 : 0,\n maximumFractionDigits: 1,\n }).format(value / 100)\n : `${fixed ? value.toFixed(1) : +value.toFixed(1)}%`;\n"],"mappings":"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"}
@@ -1,9 +1,24 @@
1
- /** `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0` */
2
- export declare const formatCompact: (value: number, maxDecimals?: number) => string;
1
+ /**
2
+ * `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0`. With a
3
+ * `locale`: its compact units and separators (`123.46万` in Chinese,
4
+ * `1,23 M` in French).
5
+ */
6
+ export declare const formatCompact: (value: number, maxDecimals?: number, locale?: string) => string;
3
7
  /**
4
8
  * Formatter of the ticks of a linear axis: enough decimals to tell the
5
- * ticks apart; compact units (k, M, ...) when the values are large.
9
+ * ticks apart; compact units (k, M, ... or 万, 亿 with a `locale`) when the
10
+ * values are large.
11
+ */
12
+ export declare const tickFormatter: (step: number, maxAbs: number, locale?: string) => (value: number) => string;
13
+ /**
14
+ * Value of a tooltip: up to 4 significant decimals, thousands separators
15
+ * (of the `locale`, English without it)
16
+ */
17
+ export declare const formatValue: (value: number, locale?: string) => string;
18
+ /** `formatValue` bound to a locale */
19
+ export declare const valueFormatter: (locale: string) => (value: number) => string;
20
+ /**
21
+ * `12.5` -> `12.5%` (`12,5 %` in French): one decimal at most, exactly one
22
+ * with `fixed` (`75.0%`)
6
23
  */
7
- export declare const tickFormatter: (step: number, maxAbs: number) => (value: number) => string;
8
- /** Value of a tooltip: up to 4 significant decimals */
9
- export declare const formatValue: (value: number) => string;
24
+ export declare const formatPercent: (value: number, locale?: string, fixed?: boolean) => string;
@@ -1,9 +1,24 @@
1
- /** `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0` */
2
- export declare const formatCompact: (value: number, maxDecimals?: number) => string;
1
+ /**
2
+ * `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0`. With a
3
+ * `locale`: its compact units and separators (`123.46万` in Chinese,
4
+ * `1,23 M` in French).
5
+ */
6
+ export declare const formatCompact: (value: number, maxDecimals?: number, locale?: string) => string;
3
7
  /**
4
8
  * Formatter of the ticks of a linear axis: enough decimals to tell the
5
- * ticks apart; compact units (k, M, ...) when the values are large.
9
+ * ticks apart; compact units (k, M, ... or 万, 亿 with a `locale`) when the
10
+ * values are large.
11
+ */
12
+ export declare const tickFormatter: (step: number, maxAbs: number, locale?: string) => (value: number) => string;
13
+ /**
14
+ * Value of a tooltip: up to 4 significant decimals, thousands separators
15
+ * (of the `locale`, English without it)
16
+ */
17
+ export declare const formatValue: (value: number, locale?: string) => string;
18
+ /** `formatValue` bound to a locale */
19
+ export declare const valueFormatter: (locale: string) => (value: number) => string;
20
+ /**
21
+ * `12.5` -> `12.5%` (`12,5 %` in French): one decimal at most, exactly one
22
+ * with `fixed` (`75.0%`)
6
23
  */
7
- export declare const tickFormatter: (step: number, maxAbs: number) => (value: number) => string;
8
- /** Value of a tooltip: up to 4 significant decimals */
9
- export declare const formatValue: (value: number) => string;
24
+ export declare const formatPercent: (value: number, locale?: string, fixed?: boolean) => string;
@@ -1,34 +1,59 @@
1
- import { stepDecimals as e } from "./scale.js";
1
+ import { compactUnits as e, numberFormat as t } from "./locale.js";
2
+ import { stepDecimals as n } from "./scale.js";
2
3
  //#region src/engine/format.ts
3
- var t = [
4
+ var r = [
4
5
  [0xe8d4a51000, "T"],
5
6
  [1e9, "B"],
6
7
  [1e6, "M"],
7
8
  [1e3, "k"]
8
- ], n = (e) => e.includes(".") ? e.replace(/\.?0+$/, "") : e, r = (r, i = 2) => {
9
- if (!Number.isFinite(r)) return String(r);
10
- if (Object.is(r, -0) || r === 0) return "0";
11
- let a = Math.abs(r);
12
- for (let [e, o] of t) if (a >= e) return n((r / e).toFixed(i)) + o;
13
- if (a < 1e-4) return r.toExponential(1);
14
- let o = Math.min(6, Math.max(i, e(a) + 2));
15
- return n(r.toFixed(o));
16
- }, i = (n, i) => {
17
- if (i >= 1e4) {
18
- let a = t.find(([e]) => i >= e)?.[0] ?? 1, o = Math.min(3, e(n / a));
19
- return (e) => r(e, o);
9
+ ], i = /* @__PURE__ */ new Map(), a = (t) => {
10
+ if (!t) return r;
11
+ let n = i.get(t);
12
+ return n || (n = e(t), i.set(t, n)), n;
13
+ }, o = (e) => e.includes(".") ? e.replace(/\.?0+$/, "") : e, s = /* @__PURE__ */ new Map(), c = (e, n, r) => {
14
+ let i = `${r}|${n}`, a = s.get(i);
15
+ return a || (a = t(r, { maximumFractionDigits: n }), s.set(i, a)), a.format(e);
16
+ }, l = (e, t = 2, r) => {
17
+ if (!Number.isFinite(e)) return String(e);
18
+ if (Object.is(e, -0) || e === 0) return "0";
19
+ let i = Math.abs(e);
20
+ for (let [n, s] of a(r)) if (i >= n) return r ? c(e / n, t, r) + s : o((e / n).toFixed(t)) + s;
21
+ if (i < 1e-4) return e.toExponential(1);
22
+ let s = Math.min(6, Math.max(t, n(i) + 2));
23
+ return r ? c(e, s, r) : o(e.toFixed(s));
24
+ }, u = (e, r, i) => {
25
+ if (r >= 1e4) {
26
+ let t = a(i).find(([e]) => r >= e)?.[0] ?? 1, o = Math.min(3, n(e / t));
27
+ return (e) => l(e, o, i);
28
+ }
29
+ let o = n(e);
30
+ if (i) {
31
+ let e = t(i, {
32
+ minimumFractionDigits: o,
33
+ maximumFractionDigits: o,
34
+ useGrouping: !1
35
+ });
36
+ return (t) => {
37
+ let n = Number(t.toFixed(o));
38
+ return e.format(n === 0 ? 0 : n);
39
+ };
20
40
  }
21
- let a = e(n);
22
41
  return (e) => {
23
- let t = e.toFixed(a);
42
+ let t = e.toFixed(o);
24
43
  return /^-0(\.0*)?$/.test(t) ? t.slice(1) : t;
25
44
  };
26
- }, a = (e) => {
45
+ }, d = (e, t) => {
27
46
  if (!Number.isFinite(e)) return "–";
28
- let t = Math.abs(e);
29
- return t >= 1e6 ? r(e, 2) : Number.isInteger(e) ? e.toLocaleString("en-US") : n(e.toFixed(t >= 100 ? 2 : t >= 1 ? 3 : 4));
30
- };
47
+ let n = Math.abs(e);
48
+ if (n >= 1e6) return l(e, 2, t);
49
+ let r = Number.isInteger(e) ? 0 : n >= 100 ? 2 : n >= 1 ? 3 : 4;
50
+ return t ? c(e, r, t) : r === 0 ? e.toLocaleString("en-US") : o(e.toFixed(r));
51
+ }, f = (e) => (t) => d(t, e), p = (e, n, r = !1) => n ? t(n, {
52
+ style: "percent",
53
+ minimumFractionDigits: +!!r,
54
+ maximumFractionDigits: 1
55
+ }).format(e / 100) : `${r ? e.toFixed(1) : +e.toFixed(1)}%`;
31
56
  //#endregion
32
- export { r as formatCompact, a as formatValue, i as tickFormatter };
57
+ export { l as formatCompact, p as formatPercent, d as formatValue, u as tickFormatter, f as valueFormatter };
33
58
 
34
59
  //# sourceMappingURL=format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","names":["UNITS","trim","text","formatCompact","value","abs","unit","suffix","maxDecimals","decimals","stepDecimals","tickFormatter","maxAbs","u","step","formatValue"],"sources":["../../../../charts/src/engine/format.ts"],"sourcesContent":["// Number formatting of tick labels and tooltip values.\n\nimport { stepDecimals } from \"./scale\";\n\nconst UNITS: readonly [number, string][] = [\n [1e12, \"T\"],\n [1e9, \"B\"],\n [1e6, \"M\"],\n [1e3, \"k\"],\n];\n\nconst trim = (text: string) =>\n text.includes(\".\") ? text.replace(/\\.?0+$/, \"\") : text;\n\n/** `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0` */\nexport const formatCompact = (value: number, maxDecimals = 2): string => {\n if (!Number.isFinite(value)) return String(value);\n if (Object.is(value, -0) || value === 0) return \"0\";\n const abs = Math.abs(value);\n for (const [unit, suffix] of UNITS) {\n if (abs >= unit) return trim((value / unit).toFixed(maxDecimals)) + suffix;\n }\n if (abs < 1e-4) return value.toExponential(1);\n const decimals = Math.min(6, Math.max(maxDecimals, stepDecimals(abs) + 2));\n return trim(value.toFixed(decimals));\n};\n\n/**\n * Formatter of the ticks of a linear axis: enough decimals to tell the\n * ticks apart; compact units (k, M, ...) when the values are large.\n */\nexport const tickFormatter = (step: number, maxAbs: number) => {\n if (maxAbs >= 1e4) {\n const unit = UNITS.find(([u]) => maxAbs >= u)?.[0] ?? 1;\n const decimals = Math.min(3, stepDecimals(step / unit));\n return (value: number) => formatCompact(value, decimals);\n }\n const decimals = stepDecimals(step);\n return (value: number) => {\n const text = value.toFixed(decimals);\n return /^-0(\\.0*)?$/.test(text) ? text.slice(1) : text;\n };\n};\n\n/** Value of a tooltip: up to 4 significant decimals */\nexport const formatValue = (value: number): string => {\n if (!Number.isFinite(value)) return \"–\";\n const abs = Math.abs(value);\n if (abs >= 1e6) return formatCompact(value, 2);\n if (Number.isInteger(value)) return value.toLocaleString(\"en-US\");\n return trim(value.toFixed(abs >= 100 ? 2 : abs >= 1 ? 3 : 4));\n};\n"],"mappings":";;AAIA,IAAMA,IAAqC;CACzC,CAAC,cAAM,GAAG;CACV,CAAC,KAAK,GAAG;CACT,CAAC,KAAK,GAAG;CACT,CAAC,KAAK,GAAG;AACX,GAEMC,KAAQ,MACZC,EAAK,SAAS,GAAG,IAAIA,EAAK,QAAQ,UAAU,EAAE,IAAIA,GAGvCC,KAAiB,GAAe,IAAc,MAAc;CACvE,IAAI,CAAC,OAAO,SAASC,CAAK,GAAG,OAAO,OAAOA,CAAK;CAChD,IAAI,OAAO,GAAGA,GAAO,EAAE,KAAKA,MAAU,GAAG,OAAO;CAChD,IAAMC,IAAM,KAAK,IAAID,CAAK;CAC1B,KAAK,IAAM,CAACE,GAAMC,MAAWP,GAC3B,IAAIK,KAAOC,GAAM,OAAOL,GAAMG,IAAQE,EAAA,CAAM,QAAQE,CAAW,CAAC,IAAID;CAEtE,IAAIF,IAAM,MAAM,OAAOD,EAAM,cAAc,CAAC;CAC5C,IAAMK,IAAW,KAAK,IAAI,GAAG,KAAK,IAAID,GAAaE,EAAaL,CAAG,IAAI,CAAC,CAAC;CACzE,OAAOJ,EAAKG,EAAM,QAAQK,CAAQ,CAAC;AACrC,GAMaE,KAAiB,GAAc,MAAmB;CAC7D,IAAIC,KAAU,KAAK;EACjB,IAAMN,IAAON,EAAM,MAAM,CAACa,OAAOD,KAAUC,CAAC,CAAC,GAAG,MAAM,GAChDJ,IAAW,KAAK,IAAI,GAAGC,EAAaI,IAAOR,CAAI,CAAC;EACtD,QAAQ,MAAkBH,EAAcC,GAAOK,CAAQ;CACzD;CACA,IAAMA,IAAWC,EAAaI,CAAI;CAClC,QAAQ,MAAkB;EACxB,IAAMZ,IAAOE,EAAM,QAAQK,CAAQ;EACnC,OAAO,cAAc,KAAKP,CAAI,IAAIA,EAAK,MAAM,CAAC,IAAIA;CACpD;AACF,GAGaa,KAAe,MAA0B;CACpD,IAAI,CAAC,OAAO,SAASX,CAAK,GAAG,OAAO;CACpC,IAAMC,IAAM,KAAK,IAAID,CAAK;CAG1B,OAFIC,KAAO,MAAYF,EAAcC,GAAO,CAAC,IACzC,OAAO,UAAUA,CAAK,IAAUA,EAAM,eAAe,OAAO,IACzDH,EAAKG,EAAM,QAAQC,KAAO,MAAM,IAAIA,KAAO,IAAI,IAAI,CAAC,CAAC;AAC9D"}
1
+ {"version":3,"file":"format.js","names":["UNITS","unitCache","unitsOf","locale","units","compactUnits","trim","text","decimalFormats","localized","key","decimals","format","numberFormat","value","formatCompact","abs","unit","suffix","maxDecimals","stepDecimals","tickFormatter","maxAbs","u","step","rounded","formatValue","valueFormatter","formatPercent","fixed"],"sources":["../../../../charts/src/engine/format.ts"],"sourcesContent":["// Number formatting of tick labels and tooltip values. Without a `locale`\n// the output is the historical one (English units, `.` decimals); with a\n// locale, the units and separators of its language (`1,5 k`, `2.5万`).\n\nimport { compactUnits, numberFormat } from \"./locale\";\nimport { stepDecimals } from \"./scale\";\n\nconst UNITS: readonly [number, string][] = [\n [1e12, \"T\"],\n [1e9, \"B\"],\n [1e6, \"M\"],\n [1e3, \"k\"],\n];\n\nconst unitCache = new Map<string, readonly [number, string][]>();\n\n/** Compact units of a locale (English without one) */\nconst unitsOf = (locale?: string) => {\n if (!locale) return UNITS;\n let units = unitCache.get(locale);\n if (!units) {\n units = compactUnits(locale);\n unitCache.set(locale, units);\n }\n return units;\n};\n\nconst trim = (text: string) =>\n text.includes(\".\") ? text.replace(/\\.?0+$/, \"\") : text;\n\nconst decimalFormats = new Map<string, Intl.NumberFormat>();\n\n/** `value` with at most `decimals` decimals in a locale (no trailing zeros) */\nconst localized = (value: number, decimals: number, locale: string) => {\n // hot path (ticks, tooltips): cheaper key than `numberFormat`'s JSON\n const key = `${locale}|${decimals}`;\n let format = decimalFormats.get(key);\n if (!format) {\n format = numberFormat(locale, { maximumFractionDigits: decimals });\n decimalFormats.set(key, format);\n }\n return format.format(value);\n};\n\n/**\n * `1234567` -> `1.23M`, `0.5` -> `0.5`; `-0` is printed as `0`. With a\n * `locale`: its compact units and separators (`123.46万` in Chinese,\n * `1,23 M` in French).\n */\nexport const formatCompact = (\n value: number,\n maxDecimals = 2,\n locale?: string,\n): string => {\n if (!Number.isFinite(value)) return String(value);\n if (Object.is(value, -0) || value === 0) return \"0\";\n const abs = Math.abs(value);\n for (const [unit, suffix] of unitsOf(locale)) {\n if (abs >= unit)\n return locale\n ? localized(value / unit, maxDecimals, locale) + suffix\n : trim((value / unit).toFixed(maxDecimals)) + suffix;\n }\n if (abs < 1e-4) return value.toExponential(1);\n const decimals = Math.min(6, Math.max(maxDecimals, stepDecimals(abs) + 2));\n return locale\n ? localized(value, decimals, locale)\n : trim(value.toFixed(decimals));\n};\n\n/**\n * Formatter of the ticks of a linear axis: enough decimals to tell the\n * ticks apart; compact units (k, M, ... or 万, 亿 with a `locale`) when the\n * values are large.\n */\nexport const tickFormatter = (\n step: number,\n maxAbs: number,\n locale?: string,\n) => {\n if (maxAbs >= 1e4) {\n const unit = unitsOf(locale).find(([u]) => maxAbs >= u)?.[0] ?? 1;\n const decimals = Math.min(3, stepDecimals(step / unit));\n return (value: number) => formatCompact(value, decimals, locale);\n }\n const decimals = stepDecimals(step);\n if (locale) {\n const format = numberFormat(locale, {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n // ticks stay below 10 000 here: `5000`, not `5,000`\n useGrouping: false,\n });\n return (value: number) => {\n const rounded = Number(value.toFixed(decimals));\n return format.format(rounded === 0 ? 0 : rounded);\n };\n }\n return (value: number) => {\n const text = value.toFixed(decimals);\n return /^-0(\\.0*)?$/.test(text) ? text.slice(1) : text;\n };\n};\n\n/**\n * Value of a tooltip: up to 4 significant decimals, thousands separators\n * (of the `locale`, English without it)\n */\nexport const formatValue = (value: number, locale?: string): string => {\n if (!Number.isFinite(value)) return \"–\";\n const abs = Math.abs(value);\n if (abs >= 1e6) return formatCompact(value, 2, locale);\n const decimals = Number.isInteger(value)\n ? 0\n : abs >= 100\n ? 2\n : abs >= 1\n ? 3\n : 4;\n if (locale) return localized(value, decimals, locale);\n if (decimals === 0) return value.toLocaleString(\"en-US\");\n return trim(value.toFixed(decimals));\n};\n\n/** `formatValue` bound to a locale */\nexport const valueFormatter = (locale: string) => (value: number) =>\n formatValue(value, locale);\n\n/**\n * `12.5` -> `12.5%` (`12,5 %` in French): one decimal at most, exactly one\n * with `fixed` (`75.0%`)\n */\nexport const formatPercent = (\n value: number,\n locale?: string,\n fixed = false,\n): string =>\n locale\n ? numberFormat(locale, {\n style: \"percent\",\n minimumFractionDigits: fixed ? 1 : 0,\n maximumFractionDigits: 1,\n }).format(value / 100)\n : `${fixed ? value.toFixed(1) : +value.toFixed(1)}%`;\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- const e=require("./color.cjs"),t=require("./renderers/types.cjs");var n=(e,n)=>Number.isFinite(e)?e-n:t.GAP,r=(e,r,i,a)=>{let o=new Float32Array(i*2);for(let s=0;s<i;s++)o[s*2]=n(e[s],a.x),o[s*2+1]=Number.isFinite(r[s])?r[s]-a.y:t.GAP;return o},i={area:0,bar:1,line:2,scatter:3},a=(a,o,s)=>{let c=[],l=[],u=a.series.filter(e=>!e.hidden).sort((e,t)=>i[e.type]-i[t.type]||e.index-t.index);for(let i of u){let{x:u,y:d,count:f,sorted:p}=i.cols;switch((i.type===`line`||i.type===`scatter`)&&l.length&&c.push(...l.splice(0)),i.type){case`line`:case`area`:{let e=r(u,d,f,o);i.type===`area`&&c.push({kind:`area`,key:`${i.key}:area`,version:s,color:i.color,points:e,count:f,baseline:a.baseline-o.y,opacity:i.opacity,sorted:p}),(i.type===`area`?l:c).push({kind:`line`,key:`${i.key}:line`,version:s,color:i.color,points:e,count:f,width:i.lineWidth,sorted:p});break}case`bar`:{let e=i.barBase??new Float64Array(f),r=i.barTop??d,l=new Float32Array(f*3);for(let a=0;a<f;a++){let s=Number.isFinite(r[a])&&Number.isFinite(e[a]);l[a*3]=n(u[a]+i.barOffset,o.x),l[a*3+1]=s?e[a]-o.y:t.GAP,l[a*3+2]=s?r[a]-o.y:t.GAP}c.push({kind:`bar`,key:`${i.key}:bar`,version:s,color:i.color,instances:l,count:f,halfWidth:i.barHalfWidth,sorted:p,radius:a.series.some(e=>e!==i&&!e.hidden&&e.type===`bar`&&e.barOffset===i.barOffset)?0:3});break}default:{let n=new ArrayBuffer(f*16),r=new Float32Array(n),a=new Uint32Array(n),l=e.packColor(i.color),p=i.cols.size;for(let n=0;n<f;n++){let s=Number.isFinite(d[n])&&Number.isFinite(u[n]);r[n*4]=s?u[n]-o.x:t.GAP,r[n*4+1]=s?d[n]-o.y:t.GAP;let c=p?p[n]:NaN;r[n*4+2]=Number.isFinite(c)&&c>0?c:i.pointSize;let f=i.pointColors?.[n];a[n*4+3]=f?e.packColor(f):l}c.push({kind:`scatter`,key:`${i.key}:scatter`,version:s,color:i.color,instances:n,count:f,opacity:i.opacity,stroke:f<=5e3?1.25:0});break}}}return c.push(...l),c};exports.buildItems=a;
1
+ const e=require("./color.cjs"),t=require("./curve.cjs"),n=require("./renderers/types.cjs");var r=(e,t)=>Number.isFinite(e)?e-t:n.GAP,i={heatmap:0,area:1,bar:2,boxplot:2,candlestick:3,line:4,scatter:5},a=e=>{let{x:n,count:r}=e.cols,i=e.stackTop??e.cols.y,a=e.stackBase;if(e.curve===`linear`)return{n:r,xAt:e=>n[e],yAt:e=>i[e],baseAt:a?e=>a[e]:null};let o=t.curvePoints(n,i,0,r,e.curve),s=a?t.curvePoints(n,a,0,r,e.curve).points:null,c=o.points;return{n:o.length,xAt:e=>c[e*2],yAt:e=>c[e*2+1],baseAt:s?e=>s[e*2+1]:null}},o=(e,t,n,r,i,a)=>{let o=new ArrayBuffer(r*16),s=new Float32Array(o),c=new Uint32Array(o);for(let e=0;e<r;e++)i(e,s,c);return{kind:`bar`,key:e,version:t,color:n.color,instances:o,count:r,...a}},s=(t,s,u)=>{let d=[],f=[],p=t.series.filter(e=>!e.hidden).sort((e,t)=>i[e.type]-i[t.type]||e.index-t.index);for(let i of p){let{x:p,y:m,count:h,sorted:g}=i.cols;switch((i.type===`line`||i.type===`scatter`)&&f.length&&d.push(...f.splice(0)),i.type){case`line`:case`area`:{let{n:e,xAt:o,yAt:c,baseAt:l}=a(i),h=new Float32Array(e*2);if(i.curve===`linear`){let t=i.stackTop??m,r=s.x,a=s.y;for(let i=0;i<e;i++){let e=p[i],o=t[i];h[i*2]=Number.isFinite(e)?e-r:n.GAP,h[i*2+1]=Number.isFinite(o)?o-a:n.GAP}}else for(let t=0;t<e;t++)h[t*2]=r(o(t),s.x),h[t*2+1]=r(c(t),s.y);if(i.type===`area`){let n=new Float32Array(e*3),a=t.baseline-s.y;for(let t=0;t<e;t++)n[t*3]=h[t*2],n[t*3+1]=h[t*2+1],n[t*3+2]=l?r(l(t),s.y):a;d.push({kind:`area`,key:`${i.key}:area`,version:u,color:i.color,points:n,count:e,opacity:i.opacity,sorted:g})}if(i.lineWidth<=0)break;if((i.type===`area`?f:d).push({kind:`line`,key:`${i.key}:line`,version:u,color:i.color,points:h,count:e,width:i.lineWidth,sorted:g}),i.type===`area`&&i.cols.y0&&l){let t=new Float32Array(e*2);for(let n=0;n<e;n++)t[n*2]=h[n*2],t[n*2+1]=r(l(n),s.y);f.push({kind:`line`,key:`${i.key}:lower`,version:u,color:i.color,points:t,count:e,width:i.lineWidth,sorted:g})}break}case`bar`:{let a=i.barBase??new Float64Array(h),l=i.barTop??m,f=e=>i.opacity<1?[e[0],e[1],e[2],e[3]*i.opacity]:e,_=e.packColor(f(i.color)),v=!i.floating&&t.series.some(e=>e!==i&&!e.hidden&&e.type===`bar`&&!e.floating&&e.barOffset===i.barOffset),y=i.barHalfWidth>0&&c(t,i);d.push(o(`${i.key}:bar`,u,i,h,(t,o,c)=>{let u=Number.isFinite(l[t])&&Number.isFinite(a[t]);o[t*4]=r(p[t]+i.barOffset,s.x),o[t*4+1]=u?a[t]-s.y:n.GAP,o[t*4+2]=u?l[t]-s.y:n.GAP;let d=i.pointColors?.[t];c[t*4+3]=d?e.packColor(f(d)):_},{halfWidth:i.barHalfWidth,radius:v?0:i.radius,inset:y?.5:0,minHalf:0,sorted:g}));break}case`candlestick`:{let{open:t,high:a,low:c}=i.cols,l=e.packColor(i.upColor),f=e.packColor(i.downColor),_=e=>t&&Number.isFinite(t[e])&&m[e]<t[e]?f:l;d.push(o(`${i.key}:wick`,u,i,h,(e,t,i)=>{let o=a?a[e]:m[e],l=c?c[e]:m[e],u=Number.isFinite(o)&&Number.isFinite(l)&&Number.isFinite(m[e]);t[e*4]=r(p[e],s.x),t[e*4+1]=u?l-s.y:n.GAP,t[e*4+2]=u?o-s.y:n.GAP,i[e*4+3]=_(e)},{halfWidth:0,radius:0,inset:0,minHalf:i.lineWidth/2,sorted:g}),o(`${i.key}:body`,u,i,h,(e,i,a)=>{let o=t?t[e]:m[e],c=Number.isFinite(o)&&Number.isFinite(m[e]);i[e*4]=r(p[e],s.x),i[e*4+1]=c?o-s.y:n.GAP,i[e*4+2]=c?m[e]-s.y:n.GAP,a[e*4+3]=_(e)},{halfWidth:i.barHalfWidth,radius:Math.min(i.radius,1.5),inset:0,minHalf:.5,sorted:g}));break}case`boxplot`:d.push(...l(i,s,u));break;case`heatmap`:{let e=i.cellColors,t=i.cellHalf.y;d.push(o(`${i.key}:cells`,u,i,h,(i,a,o)=>{let c=e?e[i]:0,l=c!==0&&Number.isFinite(p[i]);a[i*4]=r(p[i],s.x),a[i*4+1]=l?m[i]-t-s.y:n.GAP,a[i*4+2]=l?m[i]+t-s.y:n.GAP,o[i*4+3]=c},{halfWidth:i.cellHalf.x,radius:i.radius,inset:1,minHalf:0,sorted:g}));break}default:{let t=new ArrayBuffer(h*16),r=new Float32Array(t),a=new Uint32Array(t),o=e.packColor(i.color),c=i.cols.size;for(let t=0;t<h;t++){let l=Number.isFinite(m[t])&&Number.isFinite(p[t]);r[t*4]=l?p[t]-s.x:n.GAP,r[t*4+1]=l?m[t]-s.y:n.GAP;let u=c?c[t]:NaN;r[t*4+2]=Number.isFinite(u)&&u>0?u:i.pointSize;let d=i.pointColors?.[t];a[t*4+3]=d?e.packColor(d):o}d.push({kind:`scatter`,key:`${i.key}:scatter`,version:u,color:i.color,instances:t,count:h,opacity:i.opacity,stroke:h<=5e3?1.25:0});break}}}return d.push(...f),d},c=(e,t)=>{let n=1;if(e.x.type!==`category`){let{x:e,count:r}=t.cols;n=1/0;for(let t=1;t<Math.min(r,64);t++){let r=Math.abs(e[t]-e[t-1]);r>0&&r<n&&(n=r)}if(!Number.isFinite(n))return!1}return t.barHalfWidth*2>=n*.98},l=(t,i,a)=>{let{x:s,y:c,count:l,high:u,low:d,q1:f,q3:p,outliers:m}=t.cols,h=e.packColor(t.color),g=e.packColor([t.color[0],t.color[1],t.color[2],t.color[3]*t.opacity]),_=(n,r=!1)=>{let i=t.pointColors?.[n];return i?e.packColor(r?[i[0],i[1],i[2],i[3]*t.opacity]:i):r?g:h},v=t.barHalfWidth,y=Math.max(1,t.lineWidth),b=(e,t)=>e&&Number.isFinite(e[t])?e[t]:c[t],x=(e,n=0)=>r(s[e]+t.barOffset+n,i.x),S=e=>e-i.y,C=(e,r,i,o)=>{let u=new ArrayBuffer(l*r*16),d=new Float32Array(u),f=new Uint32Array(u);for(let e=0;e<l;e++){let t=Number.isFinite(c[e])&&Number.isFinite(s[e]);for(let a=0;a<r;a++){let o=(e*r+a)*4,[s,c,l]=t?i(e,a):[0,NaN,NaN];d[o]=t?x(e,s):n.GAP,d[o+1]=t?S(c):n.GAP,d[o+2]=t?S(l):n.GAP,f[o+3]=_(e)}}return{kind:`bar`,key:`${t.key}:${e}`,version:a,color:t.color,instances:u,count:l*r,radius:0,inset:0,sorted:!1,...o}},w=[o(`${t.key}:box`,a,t,l,(e,t,r)=>{let i=Number.isFinite(c[e])&&Number.isFinite(s[e]);t[e*4]=i?x(e):n.GAP,t[e*4+1]=i?S(b(f,e)):n.GAP,t[e*4+2]=i?S(b(p,e)):n.GAP,r[e*4+3]=_(e,!0)},{halfWidth:v,radius:0,inset:0,minHalf:0,sorted:!1}),C(`stems`,4,(e,t)=>t===0?[0,b(d,e),b(f,e)]:t===1?[0,b(p,e),b(u,e)]:[t===2?-v:v,b(f,e),b(p,e)],{halfWidth:0,minHalf:y/2}),C(`caps`,2,(e,t)=>{let n=b(t===0?d:u,e);return[0,n,n]},{halfWidth:v/2,minHalf:y/2}),C(`edges`,2,(e,t)=>{let n=b(t===0?f:p,e);return[0,n,n]},{halfWidth:v,minHalf:y/2}),C(`median`,1,e=>[0,c[e],c[e]],{halfWidth:v,minHalf:Math.max(1,y*.8)})];if(m){let e=0;for(let t=0;t<l;t++)e+=m[t]?.length??0;if(e){let r=new ArrayBuffer(e*16),i=new Float32Array(r),o=new Uint32Array(r),c=0;for(let e=0;e<l;e++){let r=m[e];if(r)for(let a of r){let r=Number.isFinite(a)&&Number.isFinite(s[e]);i[c*4]=r?x(e):n.GAP,i[c*4+1]=r?S(a):n.GAP,i[c*4+2]=t.pointSize,o[c*4+3]=_(e),c++}}w.push({kind:`scatter`,key:`${t.key}:outliers`,version:a,color:t.color,instances:r,count:e,opacity:.85,stroke:e<=5e3?1.25:0})}}return w};exports.buildItems=s;
2
2
  //# sourceMappingURL=items.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"items.cjs","names":["GAP","packColor","require_color","require_types","rel","value","origin","points","out","count","i","x","o","y","DRAW_ORDER","buildItems","items","outlines","ordered","model","s","a","b","pts","base","top","instances","valid","buffer","f","u","seriesColor","sizes","size","pc"],"sources":["../../../../charts/src/engine/items.ts"],"sourcesContent":["// Chart model -> GPU-ready buffers (positions relative to an origin).\n\nimport { packColor } from \"./color\";\nimport type { ChartModel } from \"./model\";\nimport { GAP, SCATTER_STRIDE, type RenderItem } from \"./renderers/types\";\n\nexport interface Origin {\n x: number;\n y: number;\n}\n\nconst rel = (value: number, origin: number) =>\n Number.isFinite(value) ? value - origin : GAP;\n\nconst points = (x: Float64Array, y: Float64Array, count: number, o: Origin) => {\n const out = new Float32Array(count * 2);\n for (let i = 0; i < count; i++) {\n // x stays real at gaps so sorted data can be binary searched\n out[i * 2] = rel(x[i], o.x);\n out[i * 2 + 1] = Number.isFinite(y[i]) ? y[i] - o.y : GAP;\n }\n return out;\n};\n\nconst DRAW_ORDER = { area: 0, bar: 1, line: 2, scatter: 3 } as const;\n\n/** Render items of the visible series, back to front */\nexport const buildItems = (\n model: ChartModel,\n origin: Origin,\n version: number,\n): RenderItem[] => {\n const items: RenderItem[] = [];\n /** Outlines of the areas are drawn with the lines, above the bars */\n const outlines: RenderItem[] = [];\n const ordered = model.series\n .filter((s) => !s.hidden)\n .sort(\n (a, b) => DRAW_ORDER[a.type] - DRAW_ORDER[b.type] || a.index - b.index,\n );\n for (const s of ordered) {\n const { x, y, count, sorted } = s.cols;\n if ((s.type === \"line\" || s.type === \"scatter\") && outlines.length) {\n items.push(...outlines.splice(0));\n }\n switch (s.type) {\n case \"line\":\n case \"area\": {\n const pts = points(x, y, count, origin);\n if (s.type === \"area\") {\n items.push({\n kind: \"area\",\n key: `${s.key}:area`,\n version,\n color: s.color,\n points: pts,\n count,\n baseline: model.baseline - origin.y,\n opacity: s.opacity,\n sorted,\n });\n }\n (s.type === \"area\" ? outlines : items).push({\n kind: \"line\",\n key: `${s.key}:line`,\n version,\n color: s.color,\n points: pts,\n count,\n width: s.lineWidth,\n sorted,\n });\n break;\n }\n case \"bar\": {\n const base = s.barBase ?? new Float64Array(count);\n const top = s.barTop ?? y;\n const instances = new Float32Array(count * 3);\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(top[i]) && Number.isFinite(base[i]);\n instances[i * 3] = rel(x[i] + s.barOffset, origin.x);\n instances[i * 3 + 1] = valid ? base[i] - origin.y : GAP;\n instances[i * 3 + 2] = valid ? top[i] - origin.y : GAP;\n }\n items.push({\n kind: \"bar\",\n key: `${s.key}:bar`,\n version,\n color: s.color,\n instances,\n count,\n halfWidth: s.barHalfWidth,\n sorted,\n radius: model.series.some(\n (o) =>\n o !== s &&\n !o.hidden &&\n o.type === \"bar\" &&\n o.barOffset === s.barOffset,\n )\n ? 0\n : 3,\n });\n break;\n }\n default: {\n const buffer = new ArrayBuffer(count * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n const seriesColor = packColor(s.color);\n const sizes = s.cols.size;\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? x[i] - origin.x : GAP;\n f[i * 4 + 1] = valid ? y[i] - origin.y : GAP;\n const size = sizes ? sizes[i] : NaN;\n f[i * 4 + 2] = Number.isFinite(size) && size > 0 ? size : s.pointSize;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(pc) : seriesColor;\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:scatter`,\n version,\n color: s.color,\n instances: buffer,\n count,\n opacity: s.opacity,\n stroke: count <= 5000 ? 1.25 : 0,\n });\n break;\n }\n }\n }\n items.push(...outlines);\n return items;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"items.cjs","names":["GAP","curvePoints","packColor","require_color","require_curve","require_types","rel","value","origin","DRAW_ORDER","linePoints","s","top","stackBase","count","x","i","curved","base","points","barItem","instances","f","u","write","extra","buildItems","items","outlines","ordered","model","a","b","pts","n","y","ox","oy","xv","yv","xAt","yAt","area","baseline","baseAt","lower","fade","c","seriesColor","shared","o","touching","isTouching","version","valid","pc","up","down","colorAt","open","hi","high","lo","low","boxItems","colors","hy","buffer","sizes","size","band","d","color","fill","alpha","half","lw","at","column","dx","v","multi","parts","k","j","key","q1","q3","outliers","list"],"sources":["../../../../charts/src/engine/items.ts"],"sourcesContent":["// Chart model -> GPU-ready buffers (positions relative to an origin).\n\nimport { packColor, type Rgba } from \"./color\";\nimport { curvePoints } from \"./curve\";\nimport type { ChartModel, SeriesModel } from \"./model\";\nimport {\n AREA_STRIDE,\n BAR_STRIDE,\n GAP,\n SCATTER_STRIDE,\n type BarItem,\n type RenderItem,\n} from \"./renderers/types\";\n\nexport interface Origin {\n x: number;\n y: number;\n}\n\nconst rel = (value: number, origin: number) =>\n Number.isFinite(value) ? value - origin : GAP;\n\nconst DRAW_ORDER = {\n heatmap: 0,\n area: 1,\n bar: 2,\n boxplot: 2,\n candlestick: 3,\n line: 4,\n scatter: 5,\n} as const;\n\n/** Line (and area) points of a series: stacked, curved; interleaved x, y */\nconst linePoints = (s: SeriesModel) => {\n const { x, count } = s.cols;\n const top = s.stackTop ?? s.cols.y;\n const stackBase = s.stackBase;\n if (s.curve === \"linear\") {\n // no copy: the hot path of large series\n return {\n n: count,\n xAt: (i: number) => x[i],\n yAt: (i: number) => top[i],\n baseAt: stackBase ? (i: number) => stackBase[i] : null,\n };\n }\n const curved = curvePoints(x, top, 0, count, s.curve);\n const base = stackBase\n ? curvePoints(x, stackBase, 0, count, s.curve).points\n : null;\n const points = curved.points;\n return {\n // the buffers are allocated for the worst case: only `length` are written\n n: curved.length,\n xAt: (i: number) => points[i * 2],\n yAt: (i: number) => points[i * 2 + 1],\n baseAt: base ? (i: number) => base[i * 2 + 1] : null,\n };\n};\n\nconst barItem = (\n key: string,\n version: number,\n s: SeriesModel,\n count: number,\n write: (i: number, f: Float32Array, u: Uint32Array) => void,\n extra: Pick<BarItem, \"halfWidth\" | \"radius\" | \"inset\" | \"minHalf\" | \"sorted\">,\n): BarItem => {\n const instances = new ArrayBuffer(count * BAR_STRIDE);\n const f = new Float32Array(instances);\n const u = new Uint32Array(instances);\n for (let i = 0; i < count; i++) write(i, f, u);\n return {\n kind: \"bar\",\n key,\n version,\n color: s.color,\n instances,\n count,\n ...extra,\n };\n};\n\n/** Render items of the visible series, back to front */\nexport const buildItems = (\n model: ChartModel,\n origin: Origin,\n version: number,\n): RenderItem[] => {\n const items: RenderItem[] = [];\n /** Outlines of the areas are drawn with the lines, above the bars */\n const outlines: RenderItem[] = [];\n const ordered = model.series\n .filter((s) => !s.hidden)\n .sort(\n (a, b) => DRAW_ORDER[a.type] - DRAW_ORDER[b.type] || a.index - b.index,\n );\n for (const s of ordered) {\n const { x, y, count, sorted } = s.cols;\n if ((s.type === \"line\" || s.type === \"scatter\") && outlines.length) {\n items.push(...outlines.splice(0));\n }\n switch (s.type) {\n case \"line\":\n case \"area\": {\n const { n, xAt, yAt, baseAt } = linePoints(s);\n const pts = new Float32Array(n * 2);\n if (s.curve === \"linear\") {\n // direct loop: the hot path of very large series\n const top = s.stackTop ?? y;\n const ox = origin.x;\n const oy = origin.y;\n for (let i = 0; i < n; i++) {\n const xv = x[i];\n const yv = top[i];\n pts[i * 2] = Number.isFinite(xv) ? xv - ox : GAP;\n pts[i * 2 + 1] = Number.isFinite(yv) ? yv - oy : GAP;\n }\n } else {\n for (let i = 0; i < n; i++) {\n // x stays real at gaps so sorted data can be binary searched\n pts[i * 2] = rel(xAt(i), origin.x);\n pts[i * 2 + 1] = rel(yAt(i), origin.y);\n }\n }\n if (s.type === \"area\") {\n const area = new Float32Array(n * AREA_STRIDE);\n const baseline = model.baseline - origin.y;\n for (let i = 0; i < n; i++) {\n area[i * 3] = pts[i * 2];\n area[i * 3 + 1] = pts[i * 2 + 1];\n area[i * 3 + 2] = baseAt ? rel(baseAt(i), origin.y) : baseline;\n }\n items.push({\n kind: \"area\",\n key: `${s.key}:area`,\n version,\n color: s.color,\n points: area,\n count: n,\n opacity: s.opacity,\n sorted,\n });\n }\n if (s.lineWidth <= 0) break;\n (s.type === \"area\" ? outlines : items).push({\n kind: \"line\",\n key: `${s.key}:line`,\n version,\n color: s.color,\n points: pts,\n count: n,\n width: s.lineWidth,\n sorted,\n });\n if (s.type === \"area\" && s.cols.y0 && baseAt) {\n // range areas: the lower edge is drawn too\n const lower = new Float32Array(n * 2);\n for (let i = 0; i < n; i++) {\n lower[i * 2] = pts[i * 2];\n lower[i * 2 + 1] = rel(baseAt(i), origin.y);\n }\n outlines.push({\n kind: \"line\",\n key: `${s.key}:lower`,\n version,\n color: s.color,\n points: lower,\n count: n,\n width: s.lineWidth,\n sorted,\n });\n }\n break;\n }\n case \"bar\": {\n const base = s.barBase ?? new Float64Array(count);\n const top = s.barTop ?? y;\n const fade = (c: Rgba): Rgba =>\n s.opacity < 1 ? [c[0], c[1], c[2], c[3] * s.opacity] : c;\n const seriesColor = packColor(fade(s.color));\n // floating bars (ranges, Gantt progress) keep their corners\n const shared =\n !s.floating &&\n model.series.some(\n (o) =>\n o !== s &&\n !o.hidden &&\n o.type === \"bar\" &&\n !o.floating &&\n o.barOffset === s.barOffset,\n );\n const touching = s.barHalfWidth > 0 && isTouching(model, s);\n items.push(\n barItem(\n `${s.key}:bar`,\n version,\n s,\n count,\n (i, f, u) => {\n const valid = Number.isFinite(top[i]) && Number.isFinite(base[i]);\n f[i * 4] = rel(x[i] + s.barOffset, origin.x);\n f[i * 4 + 1] = valid ? base[i] - origin.y : GAP;\n f[i * 4 + 2] = valid ? top[i] - origin.y : GAP;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(fade(pc)) : seriesColor;\n },\n {\n halfWidth: s.barHalfWidth,\n // stacked segments stay square so the stack reads as one bar\n radius: shared ? 0 : s.radius,\n // bars filling their category (histograms): a hairline apart\n inset: touching ? 0.5 : 0,\n minHalf: 0,\n sorted,\n },\n ),\n );\n break;\n }\n case \"candlestick\": {\n const { open, high, low } = s.cols;\n const up = packColor(s.upColor);\n const down = packColor(s.downColor);\n const colorAt = (i: number) =>\n open && Number.isFinite(open[i]) && y[i] < open[i] ? down : up;\n // wicks first, the bodies cover them\n items.push(\n barItem(\n `${s.key}:wick`,\n version,\n s,\n count,\n (i, f, u) => {\n const hi = high ? high[i] : y[i];\n const lo = low ? low[i] : y[i];\n const valid =\n Number.isFinite(hi) &&\n Number.isFinite(lo) &&\n Number.isFinite(y[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? lo - origin.y : GAP;\n f[i * 4 + 2] = valid ? hi - origin.y : GAP;\n u[i * 4 + 3] = colorAt(i);\n },\n {\n halfWidth: 0,\n radius: 0,\n inset: 0,\n minHalf: s.lineWidth / 2,\n sorted,\n },\n ),\n barItem(\n `${s.key}:body`,\n version,\n s,\n count,\n (i, f, u) => {\n const o = open ? open[i] : y[i];\n const valid = Number.isFinite(o) && Number.isFinite(y[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? o - origin.y : GAP;\n f[i * 4 + 2] = valid ? y[i] - origin.y : GAP;\n u[i * 4 + 3] = colorAt(i);\n },\n {\n halfWidth: s.barHalfWidth,\n radius: Math.min(s.radius, 1.5),\n inset: 0,\n minHalf: 0.5,\n sorted,\n },\n ),\n );\n break;\n }\n case \"boxplot\":\n items.push(...boxItems(s, origin, version));\n break;\n case \"heatmap\": {\n const colors = s.cellColors;\n const hy = s.cellHalf.y;\n items.push(\n barItem(\n `${s.key}:cells`,\n version,\n s,\n count,\n (i, f, u) => {\n const c = colors ? colors[i] : 0;\n const valid = c !== 0 && Number.isFinite(x[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? y[i] - hy - origin.y : GAP;\n f[i * 4 + 2] = valid ? y[i] + hy - origin.y : GAP;\n u[i * 4 + 3] = c;\n },\n {\n halfWidth: s.cellHalf.x,\n radius: s.radius,\n inset: 1,\n minHalf: 0,\n sorted,\n },\n ),\n );\n break;\n }\n default: {\n const buffer = new ArrayBuffer(count * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n const seriesColor = packColor(s.color);\n const sizes = s.cols.size;\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? x[i] - origin.x : GAP;\n f[i * 4 + 1] = valid ? y[i] - origin.y : GAP;\n const size = sizes ? sizes[i] : NaN;\n f[i * 4 + 2] = Number.isFinite(size) && size > 0 ? size : s.pointSize;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(pc) : seriesColor;\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:scatter`,\n version,\n color: s.color,\n instances: buffer,\n count,\n opacity: s.opacity,\n stroke: count <= 5000 ? 1.25 : 0,\n });\n break;\n }\n }\n }\n items.push(...outlines);\n return items;\n};\n\n/** Bars of a series fill their whole category (`barWidth: 1`, histograms) */\nconst isTouching = (model: ChartModel, s: SeriesModel) => {\n let band = 1;\n if (model.x.type !== \"category\") {\n const { x, count } = s.cols;\n band = Infinity;\n for (let i = 1; i < Math.min(count, 64); i++) {\n const d = Math.abs(x[i] - x[i - 1]);\n if (d > 0 && d < band) band = d;\n }\n if (!Number.isFinite(band)) return false;\n }\n return s.barHalfWidth * 2 >= band * 0.98;\n};\n\n/**\n * Box plot: a translucent box, whiskers and box sides (zero-width bars of\n * the line width), caps, box edges and the median (zero-height bars), and\n * the outliers as dots\n */\nconst boxItems = (\n s: SeriesModel,\n origin: Origin,\n version: number,\n): RenderItem[] => {\n const { x, y, count, high, low, q1, q3, outliers } = s.cols;\n const color = packColor(s.color);\n const fill = packColor([\n s.color[0],\n s.color[1],\n s.color[2],\n s.color[3] * s.opacity,\n ]);\n const colorAt = (i: number, alpha = false) => {\n const pc = s.pointColors?.[i];\n if (!pc) return alpha ? fill : color;\n return packColor(alpha ? [pc[0], pc[1], pc[2], pc[3] * s.opacity] : pc);\n };\n const half = s.barHalfWidth;\n const lw = Math.max(1, s.lineWidth);\n const at = (column: Float64Array | null, i: number) =>\n column && Number.isFinite(column[i]) ? column[i] : y[i];\n const ox = (i: number, dx = 0) => rel(x[i] + s.barOffset + dx, origin.x);\n const oy = (v: number) => v - origin.y;\n /** Several bars per point: `parts` gives their (x shift, from, to) */\n const multi = (\n key: string,\n parts: number,\n write: (i: number, k: number) => [number, number, number],\n extra: Pick<BarItem, \"halfWidth\" | \"minHalf\">,\n ): BarItem => {\n const buffer = new ArrayBuffer(count * parts * BAR_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n for (let k = 0; k < parts; k++) {\n const j = (i * parts + k) * 4;\n const [dx, a, b] = valid ? write(i, k) : [0, NaN, NaN];\n f[j] = valid ? ox(i, dx) : GAP;\n f[j + 1] = valid ? oy(a) : GAP;\n f[j + 2] = valid ? oy(b) : GAP;\n u[j + 3] = colorAt(i);\n }\n }\n return {\n kind: \"bar\",\n key: `${s.key}:${key}`,\n version,\n color: s.color,\n instances: buffer,\n count: count * parts,\n radius: 0,\n inset: 0,\n sorted: false,\n ...extra,\n };\n };\n const box = barItem(\n `${s.key}:box`,\n version,\n s,\n count,\n (i, f, u) => {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? ox(i) : GAP;\n f[i * 4 + 1] = valid ? oy(at(q1, i)) : GAP;\n f[i * 4 + 2] = valid ? oy(at(q3, i)) : GAP;\n u[i * 4 + 3] = colorAt(i, true);\n },\n { halfWidth: half, radius: 0, inset: 0, minHalf: 0, sorted: false },\n );\n // whiskers and sides of the box\n const stems = multi(\n \"stems\",\n 4,\n (i, k) =>\n k === 0\n ? [0, at(low, i), at(q1, i)]\n : k === 1\n ? [0, at(q3, i), at(high, i)]\n : [k === 2 ? -half : half, at(q1, i), at(q3, i)],\n { halfWidth: 0, minHalf: lw / 2 },\n );\n const caps = multi(\n \"caps\",\n 2,\n (i, k) => {\n const v = at(k === 0 ? low : high, i);\n return [0, v, v];\n },\n { halfWidth: half / 2, minHalf: lw / 2 },\n );\n const edges = multi(\n \"edges\",\n 2,\n (i, k) => {\n const v = at(k === 0 ? q1 : q3, i);\n return [0, v, v];\n },\n { halfWidth: half, minHalf: lw / 2 },\n );\n const median = multi(\"median\", 1, (i) => [0, y[i], y[i]], {\n halfWidth: half,\n minHalf: Math.max(1, lw * 0.8),\n });\n const items: RenderItem[] = [box, stems, caps, edges, median];\n if (outliers) {\n let n = 0;\n for (let i = 0; i < count; i++) n += outliers[i]?.length ?? 0;\n if (n) {\n const buffer = new ArrayBuffer(n * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n let j = 0;\n for (let i = 0; i < count; i++) {\n const list = outliers[i];\n if (!list) continue;\n for (const v of list) {\n const valid = Number.isFinite(v) && Number.isFinite(x[i]);\n f[j * 4] = valid ? ox(i) : GAP;\n f[j * 4 + 1] = valid ? oy(v) : GAP;\n f[j * 4 + 2] = s.pointSize;\n u[j * 4 + 3] = colorAt(i);\n j++;\n }\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:outliers`,\n version,\n color: s.color,\n instances: buffer,\n count: n,\n opacity: 0.85,\n stroke: n <= 5000 ? 1.25 : 0,\n });\n }\n }\n return items;\n};\n"],"mappings":"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"}