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,15 +1,16 @@
1
1
  import { useTheme as e } from "../../theme/MinervaProvider.js";
2
2
  import { part as t } from "../../internal/parts.js";
3
- import { createChartController as n } from "../../charts/src/engine/controller.js";
3
+ import { chartAriaLabel as n } from "../../charts/src/engine/labels.js";
4
+ import { createChartController as r } from "../../charts/src/engine/controller.js";
4
5
  import "../../charts/src/canvas.js";
5
- import { measureChartText as r } from "./measure.js";
6
- import { drawHover as i, drawStatic as a, tooltipCard as o } from "./scene.js";
7
- import { chartThemeInput as s } from "./theme.js";
8
- import { useEffect as c, useImperativeHandle as l, useLayoutEffect as u, useMemo as d, useRef as f, useState as p, useSyncExternalStore as m } from "react";
9
- import { StyleSheet as h, View as g } from "react-native";
10
- import { jsx as _, jsxs as v } from "react/jsx-runtime";
6
+ import { measureChartText as i } from "./measure.js";
7
+ import { drawHover as a, drawStatic as o, tooltipCard as s } from "./scene.js";
8
+ import { chartThemeInput as c } from "./theme.js";
9
+ import { useEffect as l, useImperativeHandle as u, useLayoutEffect as d, useMemo as f, useRef as p, useState as m, useSyncExternalStore as h } from "react";
10
+ import { StyleSheet as g, View as _ } from "react-native";
11
+ import { jsx as v, jsxs as y } from "react/jsx-runtime";
11
12
  //#region src/components/Chart/ChartBase.tsx
12
- var y = (e) => ({
13
+ var b = (e) => ({
13
14
  series: e.series,
14
15
  xAxis: e.xAxis,
15
16
  yAxis: e.yAxis,
@@ -20,11 +21,13 @@ var y = (e) => ({
20
21
  interaction: e.interaction,
21
22
  padding: e.padding,
22
23
  palette: e.palette,
23
- ariaLabel: e.ariaLabel
24
- }), b = {}, x = (e, t) => {
24
+ ariaLabel: e.ariaLabel,
25
+ locale: e.locale,
26
+ labels: e.labels
27
+ }), x = {}, S = (e, t) => {
25
28
  let n = Number(e.identifier);
26
29
  return Number.isFinite(n) ? n : t;
27
- }, S = (e) => {
30
+ }, C = (e) => {
28
31
  if (typeof requestAnimationFrame == "function") {
29
32
  let t = requestAnimationFrame(e);
30
33
  return { cancel: () => cancelAnimationFrame(t) };
@@ -32,32 +35,32 @@ var y = (e) => ({
32
35
  let t = setTimeout(e, 16);
33
36
  return { cancel: () => clearTimeout(t) };
34
37
  };
35
- function C(e, t, i) {
36
- let o = 0, s = null, c = /* @__PURE__ */ new Set(), l = null, u = {
38
+ function w(e, t, n) {
39
+ let a = 0, s = null, c = /* @__PURE__ */ new Set(), l = null, u = {
37
40
  x: 0,
38
41
  y: 0
39
42
  }, d = /* @__PURE__ */ new Map(), f = (e) => typeof e.interaction == "object" && !!e.interaction.dragPoints, p = f(e), m = !1, h = () => {
40
- o++, c.forEach((e) => e());
43
+ a++, c.forEach((e) => e());
41
44
  }, g = () => {
42
45
  s?.cancel(), s = null;
43
- }, _ = n({
46
+ }, _ = r({
44
47
  options: e,
45
48
  theme: t,
46
- measureText: r,
49
+ measureText: i,
47
50
  onInvalidate: () => {
48
- !s && c.size && (s = S(() => {
51
+ !s && c.size && (s = C(() => {
49
52
  s = null, h();
50
53
  }));
51
54
  }
52
55
  });
53
- i && _.setSize(i[0], i[1]);
56
+ n && _.setSize(n[0], n[1]);
54
57
  let v = (e) => ({
55
58
  x: e.pageX - u.x,
56
59
  y: e.pageY - u.y
57
60
  }), y = (e) => {
58
61
  let t = e.nativeEvent;
59
62
  (t.touches?.length ? t.touches : [t]).forEach((e, t) => {
60
- let n = x(e, t), r = v(e), i = d.get(n);
63
+ let n = S(e, t), r = v(e), i = d.get(n);
61
64
  i ? (i.x !== r.x || i.y !== r.y) && (d.set(n, r), _.pointerMove(r.x, r.y, {
62
65
  id: n,
63
66
  touch: !0
@@ -76,7 +79,7 @@ function C(e, t, i) {
76
79
  c.delete(e), c.size || g();
77
80
  };
78
81
  },
79
- version: () => o,
82
+ version: () => a,
80
83
  commit() {
81
84
  g(), h();
82
85
  },
@@ -99,7 +102,7 @@ function C(e, t, i) {
99
102
  ];
100
103
  return (!l || l.key.some((e, t) => e !== i[t])) && (l = {
101
104
  key: i,
102
- node: a(e, t)
105
+ node: o(e, t)
103
106
  }), l.node;
104
107
  },
105
108
  anchor: null,
@@ -117,10 +120,10 @@ function C(e, t, i) {
117
120
  },
118
121
  touchMove: y,
119
122
  touchEnd(e) {
120
- let t = e.nativeEvent, n = new Set((t.touches ?? []).map((e, t) => x(e, t))), r = t.changedTouches?.length ? t.changedTouches : [t];
123
+ let t = e.nativeEvent, n = new Set((t.touches ?? []).map((e, t) => S(e, t))), r = t.changedTouches?.length ? t.changedTouches : [t];
121
124
  for (let [e, t] of [...d]) {
122
125
  if (n.has(e)) continue;
123
- let i = r.find((t, n) => x(t, n) === e), a = i ? v(i) : t;
126
+ let i = r.find((t, n) => S(t, n) === e), a = i ? v(i) : t;
124
127
  d.delete(e), d.size === 0 && (b.anchor = a), _.pointerUp(a.x, a.y, {
125
128
  id: e,
126
129
  touch: !0
@@ -143,9 +146,9 @@ function C(e, t, i) {
143
146
  };
144
147
  return b;
145
148
  }
146
- function w({ scene: e, anchor: n, children: r }) {
147
- let [i, a] = p(null), { width: s, height: c } = e, l = n.x + 14, u = n.y;
148
- return i && (l + i.width > s - 4 && (l = n.x - 14 - i.width), l = Math.max(4, Math.min(l, s - i.width - 4)), u = Math.max(4, Math.min(n.y - i.height / 2, c - i.height - 4))), /* @__PURE__ */ _(g, {
149
+ function T({ scene: e, anchor: n, children: r }) {
150
+ let [i, a] = m(null), { width: o, height: c } = e, l = n.x + 14, u = n.y;
151
+ return i && (l + i.width > o - 4 && (l = n.x - 14 - i.width), l = Math.max(4, Math.min(l, o - i.width - 4)), u = Math.max(4, Math.min(n.y - i.height / 2, c - i.height - 4))), /* @__PURE__ */ v(_, {
149
152
  pointerEvents: "none",
150
153
  ...t("chart", "tooltip", { custom: !0 }),
151
154
  onLayout: (e) => {
@@ -155,10 +158,10 @@ function w({ scene: e, anchor: n, children: r }) {
155
158
  height: n
156
159
  });
157
160
  },
158
- style: [o(e), {
161
+ style: [s(e), {
159
162
  left: 0,
160
163
  top: 0,
161
- maxWidth: Math.max(0, s - 8),
164
+ maxWidth: Math.max(0, o - 8),
162
165
  padding: 8,
163
166
  opacity: +!!i,
164
167
  transform: [{ translateX: l }, { translateY: u }]
@@ -166,122 +169,122 @@ function w({ scene: e, anchor: n, children: r }) {
166
169
  children: r
167
170
  });
168
171
  }
169
- function T({ options: n, height: r = 320, width: a = "100%", style: o, testID: y, handleRef: x, renderTooltip: S, overlay: T, ...E }) {
170
- let { tokens: D, fonts: O } = e(), k = O.sans, A = d(() => s(D), [D]), j = !!S && n.tooltip !== !1, M = d(() => {
171
- if (!j) return n;
172
- let e = typeof n.tooltip == "object" ? n.tooltip : {};
172
+ function E({ options: r, height: i = 320, width: o = "100%", style: s, testID: b, handleRef: S, renderTooltip: C, overlay: E, ...D }) {
173
+ let { tokens: O, fonts: k } = e(), A = k.sans, j = f(() => c(O), [O]), M = !!C && r.tooltip !== !1, N = f(() => {
174
+ if (!M) return r;
175
+ let e = typeof r.tooltip == "object" ? r.tooltip : {};
173
176
  return {
174
- ...n,
177
+ ...r,
175
178
  tooltip: {
176
179
  ...e,
177
- render: () => b
180
+ render: () => x
178
181
  }
179
182
  };
180
- }, [n, j]), [N] = p(() => C(M, A, typeof a == "number" && typeof r == "number" ? [a, r] : null)), { controller: P } = N;
181
- m(N.subscribe, N.version, N.version);
182
- let F = f({
183
- options: M,
184
- theme: A
183
+ }, [r, M]), [P] = m(() => w(N, j, typeof o == "number" && typeof i == "number" ? [o, i] : null)), { controller: F } = P;
184
+ h(P.subscribe, P.version, P.version);
185
+ let I = p({
186
+ options: N,
187
+ theme: j
185
188
  });
186
- u(() => {
187
- let e = F.current;
188
- (e.theme !== A || e.options !== M) && (e.theme !== A && P.setTheme(A), e.options !== M && N.setOptions(M), F.current = {
189
- options: M,
190
- theme: A
191
- }, N.commit());
189
+ d(() => {
190
+ let e = I.current;
191
+ (e.theme !== j || e.options !== N) && (e.theme !== j && F.setTheme(j), e.options !== N && P.setOptions(N), I.current = {
192
+ options: N,
193
+ theme: j
194
+ }, P.commit());
192
195
  }, [
196
+ F,
193
197
  P,
194
198
  N,
195
- M,
196
- A
197
- ]), u(() => {
198
- if (typeof a != "number" || typeof r != "number") return;
199
- let e = P.getScene();
200
- e && e.width === a && e.height === r || (P.setSize(a, r), N.commit());
199
+ j
200
+ ]), d(() => {
201
+ if (typeof o != "number" || typeof i != "number") return;
202
+ let e = F.getScene();
203
+ e && e.width === o && e.height === i || (F.setSize(o, i), P.commit());
201
204
  }, [
205
+ F,
202
206
  P,
203
- N,
204
- a,
205
- r
207
+ o,
208
+ i
206
209
  ]);
207
- let I = f(E);
208
- u(() => {
209
- I.current = E;
210
- }), c(() => {
211
- let e = I, t = [
212
- P.on("hover", (t) => e.current.onHover?.(t)),
213
- P.on("click", (t) => e.current.onPointClick?.(t)),
214
- P.on("plotClick", (t) => e.current.onPlotClick?.(t)),
215
- P.on("zoom", (t) => e.current.onZoom?.(t)),
216
- P.on("drag", (t) => e.current.onDrag?.(t)),
217
- P.on("drop", (t) => e.current.onDrop?.(t))
210
+ let L = p(D);
211
+ d(() => {
212
+ L.current = D;
213
+ }), l(() => {
214
+ let e = L, t = [
215
+ F.on("hover", (t) => e.current.onHover?.(t)),
216
+ F.on("click", (t) => e.current.onPointClick?.(t)),
217
+ F.on("plotClick", (t) => e.current.onPlotClick?.(t)),
218
+ F.on("zoom", (t) => e.current.onZoom?.(t)),
219
+ F.on("drag", (t) => e.current.onDrag?.(t)),
220
+ F.on("drop", (t) => e.current.onDrop?.(t))
218
221
  ];
219
222
  return () => t.forEach((e) => e());
220
- }, [P]), l(x, () => ({
221
- resetZoom: () => P.resetZoom(),
222
- getView: () => P.getView(),
223
- setView: (e) => P.setView(e),
224
- getPlotRect: () => P.getPlotRect(),
225
- getController: () => P
226
- }), [P]);
227
- let L = (e) => {
228
- let { width: t, height: n } = e.nativeEvent.layout, r = P.getScene();
229
- r && r.width === t && r.height === n || (P.setSize(t, n), N.commit());
230
- }, R = P.getScene(), z = null, B = R?.hover?.tooltip ? R.hover.event : null;
231
- if (R && B && j && S) {
232
- let e = S(B), t = N.anchor ?? R.hover?.marks[0] ?? null;
233
- e != null && e !== !1 && t && (z = /* @__PURE__ */ _(w, {
234
- scene: R,
223
+ }, [F]), u(S, () => ({
224
+ resetZoom: () => F.resetZoom(),
225
+ getView: () => F.getView(),
226
+ setView: (e) => F.setView(e),
227
+ getPlotRect: () => F.getPlotRect(),
228
+ getController: () => F
229
+ }), [F]);
230
+ let R = (e) => {
231
+ let { width: t, height: n } = e.nativeEvent.layout, r = F.getScene();
232
+ r && r.width === t && r.height === n || (F.setSize(t, n), P.commit());
233
+ }, z = F.getScene(), B = null, V = z?.hover?.tooltip ? z.hover.event : null;
234
+ if (z && V && M && C) {
235
+ let e = C(V), t = P.anchor ?? z.hover?.marks[0] ?? null;
236
+ e != null && e !== !1 && t && (B = /* @__PURE__ */ v(T, {
237
+ scene: z,
235
238
  anchor: t,
236
239
  children: e
237
240
  }));
238
241
  }
239
- return /* @__PURE__ */ v(g, {
240
- testID: y,
241
- onLayout: L,
242
+ return /* @__PURE__ */ y(_, {
243
+ testID: b,
244
+ onLayout: R,
242
245
  style: [{
243
- width: a,
244
- height: r
245
- }, o],
246
+ width: o,
247
+ height: i
248
+ }, s],
246
249
  ...t("chart", "root"),
247
250
  children: [
248
- /* @__PURE__ */ _(g, {
249
- style: h.absoluteFill,
251
+ /* @__PURE__ */ v(_, {
252
+ style: g.absoluteFill,
250
253
  accessible: !0,
251
254
  accessibilityRole: "image",
252
- accessibilityLabel: n.ariaLabel,
255
+ accessibilityLabel: r.ariaLabel ?? (z ? n(z.model) : void 0),
253
256
  onStartShouldSetResponder: () => !0,
254
- onResponderTerminationRequest: () => !N.holdsGesture(),
255
- onResponderGrant: N.touchStart,
256
- onResponderStart: N.touchAdd,
257
- onResponderMove: N.touchMove,
258
- onResponderEnd: N.touchEnd,
259
- onResponderRelease: N.touchEnd,
260
- onResponderTerminate: N.touchCancel,
257
+ onResponderTerminationRequest: () => !P.holdsGesture(),
258
+ onResponderGrant: P.touchStart,
259
+ onResponderStart: P.touchAdd,
260
+ onResponderMove: P.touchMove,
261
+ onResponderEnd: P.touchEnd,
262
+ onResponderRelease: P.touchEnd,
263
+ onResponderTerminate: P.touchCancel,
261
264
  ...t("chart", "surface"),
262
- children: /* @__PURE__ */ v(g, {
265
+ children: /* @__PURE__ */ y(_, {
263
266
  pointerEvents: "none",
264
- style: h.absoluteFill,
265
- children: [R ? N.layers(R, k) : null, R ? i(R, k, j) : null]
267
+ style: g.absoluteFill,
268
+ children: [z ? P.layers(z, A) : null, z ? a(z, A, M) : null]
266
269
  })
267
270
  }),
268
- T && R ? /* @__PURE__ */ _(g, {
271
+ E && z ? /* @__PURE__ */ v(_, {
269
272
  pointerEvents: "box-none",
270
273
  style: {
271
274
  position: "absolute",
272
- left: R.layout.plot.x,
273
- top: R.layout.plot.y,
274
- width: R.layout.plot.width,
275
- height: R.layout.plot.height
275
+ left: z.layout.plot.x,
276
+ top: z.layout.plot.y,
277
+ width: z.layout.plot.width,
278
+ height: z.layout.plot.height
276
279
  },
277
280
  ...t("chart", "overlay"),
278
- children: T(R.layout.plot)
281
+ children: E(z.layout.plot)
279
282
  }) : null,
280
- z
283
+ B
281
284
  ]
282
285
  });
283
286
  }
284
287
  //#endregion
285
- export { T as ChartBase, y as engineOptions };
288
+ export { E as ChartBase, b as engineOptions };
286
289
 
287
290
  //# sourceMappingURL=ChartBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChartBase.js","names":["engineOptions","props","CUSTOM_TOOLTIP","idOf","id","t","index","requestFrame","callback","createChartStore","version","frame","listeners","cache","origin","touches","dragsPoints","o","draggable","options","claimed","notify","listener","cancelFrame","controller","createChartController","measureChartText","size","local","sync","n","event","i","p","previous","store","next","scene","key","view","plot","family","value","drawStatic","active","changed","last","touch","base","CustomTooltip","setSize","useState","left","anchor","top","width","height","View","part","w","h","tooltipCard","ChartBase","handlers","useTheme","fonts","theme","useMemo","chartThemeInput","tokens","customTooltip","renderTooltip","resolved","applied","useRef","useLayoutEffect","current","handlersRef","useEffect","offs","e","v","off","useImperativeHandle","handleRef","onLayout","tooltip","content","style","StyleSheet","drawHover","overlay"],"sources":["../../../../../native/src/components/Chart/ChartBase.tsx"],"sourcesContent":["// The chart host of React Native: owns a platform-free chart controller\n// (@minerva/charts/canvas: options, model, zoom, gestures, scene in pixels)\n// and draws its scene with views (./scene). Touches go through the\n// responder system; the drawing is `pointerEvents=\"none\"`, so every touch\n// lands on the surface and positions come from page coordinates.\n\nimport {\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n useSyncExternalStore,\n type ReactNode,\n type Ref,\n} from \"react\";\nimport {\n StyleSheet,\n View,\n type DimensionValue,\n type GestureResponderEvent,\n type LayoutChangeEvent,\n type StyleProp,\n type ViewStyle,\n} from \"react-native\";\nimport {\n createChartController,\n type ChartController,\n type ChartDragEvent,\n type ChartHoverEvent,\n type ChartOptions,\n type ChartPlotClickEvent,\n type ChartRect,\n type ChartScene,\n type ChartThemeInput,\n type ChartTooltipOptions,\n type ChartView,\n} from \"@minerva/charts/canvas\";\nimport { useTheme } from \"../../theme/MinervaProvider\";\nimport { part } from \"../../internal/parts\";\nimport { measureChartText } from \"./measure\";\nimport { drawHover, drawStatic, tooltipCard } from \"./scene\";\nimport { chartThemeInput } from \"./theme\";\nimport type { ChartCommonProps, ChartHandle } from \"./types\";\n\ninterface Handlers {\n onHover?: (event: ChartHoverEvent | null) => void;\n onPointClick?: (event: ChartHoverEvent) => void;\n onPlotClick?: (event: ChartPlotClickEvent) => void;\n onZoom?: (view: ChartView) => void;\n onDrag?: (event: ChartDragEvent) => void;\n onDrop?: (event: ChartDragEvent) => void;\n}\n\n/** Engine options of the common props */\nexport const engineOptions = (\n props: Pick<\n ChartCommonProps,\n | \"xAxis\"\n | \"yAxis\"\n | \"legend\"\n | \"tooltip\"\n | \"crosshair\"\n | \"annotations\"\n | \"interaction\"\n | \"padding\"\n | \"palette\"\n | \"ariaLabel\"\n > &\n Pick<ChartOptions, \"series\">,\n): ChartOptions => ({\n series: props.series,\n xAxis: props.xAxis,\n yAxis: props.yAxis,\n legend: props.legend,\n tooltip: props.tooltip,\n crosshair: props.crosshair,\n annotations: props.annotations,\n interaction: props.interaction,\n padding: props.padding,\n palette: props.palette,\n ariaLabel: props.ariaLabel,\n});\n\ntype TooltipResult = Exclude<\n ReturnType<NonNullable<ChartTooltipOptions[\"render\"]>>,\n string | null\n>;\n/** Non-string result of `tooltip.render`: the engine lays a tooltip out without drawing text */\nconst CUSTOM_TOOLTIP = {} as unknown as TooltipResult;\n\ninterface TouchPoint {\n identifier?: number | string;\n pageX: number;\n pageY: number;\n locationX?: number;\n locationY?: number;\n}\n\nconst idOf = (t: TouchPoint, index: number) => {\n const id = Number(t.identifier);\n return Number.isFinite(id) ? id : index;\n};\n\ntype Frame = { cancel: () => void };\n\nconst requestFrame = (callback: () => void): Frame => {\n if (typeof requestAnimationFrame === \"function\") {\n const id = requestAnimationFrame(callback);\n return { cancel: () => cancelAnimationFrame(id) };\n }\n const id = setTimeout(callback, 16);\n return { cancel: () => clearTimeout(id) };\n};\n\n/**\n * External store of a chart: the controller, a version bumped when its\n * scene must be drawn again (coalesced per frame), the touches being\n * tracked and the cache of the static layers.\n */\ninterface ChartStore {\n controller: ChartController;\n /** Options of the controller (`setOptions` of the controller) */\n setOptions: (options: ChartOptions) => void;\n subscribe: (listener: () => void) => () => void;\n version: () => number;\n /** Draws again now */\n commit: () => void;\n /** Static layers of a scene (cached while model / view / size are the same) */\n layers: (scene: ChartScene, family: string | undefined) => ReactNode;\n /** Last single-finger position (anchor of a custom tooltip) */\n anchor: { x: number; y: number } | null;\n /**\n * First finger (responder grant); returns whether the chart owns the\n * gesture, which keeps native scroll views from taking it (Android)\n */\n touchStart: (event: GestureResponderEvent) => boolean;\n /** Another finger touches the chart */\n touchAdd: (event: GestureResponderEvent) => void;\n /** Moves (drawn on the next frame) */\n touchMove: (event: GestureResponderEvent) => void;\n touchEnd: (event: GestureResponderEvent) => void;\n touchCancel: () => void;\n /** Whether the chart keeps the touches (pinch, point drag, pan when zoomed) */\n holdsGesture: () => boolean;\n}\n\nfunction createChartStore(\n options: ChartOptions,\n theme: ChartThemeInput,\n size: [number, number] | null,\n): ChartStore {\n let version = 0;\n let frame: Frame | null = null;\n const listeners = new Set<() => void>();\n let cache: { key: unknown[]; node: ReactNode } | null = null;\n let origin = { x: 0, y: 0 };\n const touches = new Map<number, { x: number; y: number }>();\n const dragsPoints = (o: ChartOptions) =>\n typeof o.interaction === \"object\" && !!o.interaction.dragPoints;\n let draggable = dragsPoints(options);\n /** The current touch sequence started on the plot of a draggable chart */\n let claimed = false;\n\n const notify = () => {\n version++;\n listeners.forEach((listener) => listener());\n };\n const cancelFrame = () => {\n frame?.cancel();\n frame = null;\n };\n const schedule = () => {\n if (frame || !listeners.size) return;\n frame = requestFrame(() => {\n frame = null;\n notify();\n });\n };\n\n const controller = createChartController({\n options,\n theme,\n measureText: measureChartText,\n onInvalidate: schedule,\n });\n if (size) controller.setSize(size[0], size[1]);\n\n const local = (t: TouchPoint) => ({\n x: t.pageX - origin.x,\n y: t.pageY - origin.y,\n });\n\n /** Feeds the controller the fingers that appeared or moved */\n const sync = (event: GestureResponderEvent) => {\n const n = event.nativeEvent;\n const list: readonly TouchPoint[] = n.touches?.length\n ? n.touches\n : [n as unknown as TouchPoint];\n list.forEach((t, i) => {\n const id = idOf(t, i);\n const p = local(t);\n const previous = touches.get(id);\n if (!previous) {\n touches.set(id, p);\n controller.pointerDown(p.x, p.y, { id, touch: true });\n } else if (previous.x !== p.x || previous.y !== p.y) {\n touches.set(id, p);\n controller.pointerMove(p.x, p.y, { id, touch: true });\n }\n });\n if (touches.size === 1) store.anchor = [...touches.values()][0];\n };\n\n const store: ChartStore = {\n controller,\n setOptions(next) {\n draggable = dragsPoints(next);\n controller.setOptions(next);\n },\n subscribe(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n if (!listeners.size) cancelFrame();\n };\n },\n version: () => version,\n commit() {\n cancelFrame();\n notify();\n },\n layers(scene, family) {\n const { plot } = scene.layout;\n const { view } = scene;\n const key = [\n scene.model,\n scene.annotations,\n scene.theme,\n scene.width,\n scene.height,\n view.x[0],\n view.x[1],\n view.y[0],\n view.y[1],\n plot.x,\n plot.y,\n plot.width,\n plot.height,\n family,\n ];\n if (!cache || cache.key.some((value, i) => value !== key[i]))\n cache = { key, node: drawStatic(scene, family) };\n return cache.node;\n },\n anchor: null,\n touchStart(event) {\n const n = event.nativeEvent as unknown as TouchPoint;\n // the drawing ignores touches: `location` is relative to the surface\n if (!touches.size && n.locationX !== undefined)\n origin = { x: n.pageX - n.locationX, y: n.pageY - (n.locationY ?? 0) };\n sync(event);\n store.commit();\n // draggable points: the drag only starts after the touch slop, too\n // late to keep a scroll view from stealing the touch: claim it now\n const plot = controller.getPlotRect();\n const p = touches.values().next().value;\n claimed =\n draggable &&\n !!plot &&\n !!p &&\n p.x >= plot.x &&\n p.x <= plot.x + plot.width &&\n p.y >= plot.y &&\n p.y <= plot.y + plot.height;\n return store.holdsGesture();\n },\n touchAdd(event) {\n sync(event);\n store.commit();\n },\n touchMove: sync,\n touchEnd(event) {\n const n = event.nativeEvent;\n const active = new Set(\n (n.touches ?? []).map((t, i) => idOf(t as TouchPoint, i)),\n );\n const changed: readonly TouchPoint[] = n.changedTouches?.length\n ? n.changedTouches\n : [n as unknown as TouchPoint];\n for (const [id, last] of [...touches]) {\n if (active.has(id)) continue;\n const touch = changed.find((t, i) => idOf(t, i) === id);\n const p = touch ? local(touch) : last;\n touches.delete(id);\n if (touches.size === 0) store.anchor = p;\n controller.pointerUp(p.x, p.y, { id, touch: true });\n }\n store.commit();\n },\n touchCancel() {\n for (const id of touches.keys()) controller.pointerCancel({ id });\n touches.clear();\n store.commit();\n },\n holdsGesture() {\n if (touches.size > 1 || (claimed && touches.size > 0)) return true;\n const scene = controller.getScene();\n if (!scene) return false;\n if (scene.dragging) return true;\n const { base } = scene.model;\n const view = controller.getView();\n return (\n view.x[0] !== base.x[0] ||\n view.x[1] !== base.x[1] ||\n view.y[0] !== base.y[0] ||\n view.y[1] !== base.y[1]\n );\n },\n };\n return store;\n}\n\n/** A `renderTooltip` node, placed next to the finger once measured */\nfunction CustomTooltip({\n scene,\n anchor,\n children,\n}: {\n scene: ChartScene;\n anchor: { x: number; y: number };\n children: ReactNode;\n}) {\n const [size, setSize] = useState<{ width: number; height: number } | null>(\n null,\n );\n const { width, height } = scene;\n let left = anchor.x + 14;\n let top = anchor.y;\n if (size) {\n if (left + size.width > width - 4) left = anchor.x - 14 - size.width;\n left = Math.max(4, Math.min(left, width - size.width - 4));\n top = Math.max(\n 4,\n Math.min(anchor.y - size.height / 2, height - size.height - 4),\n );\n }\n return (\n <View\n pointerEvents=\"none\"\n {...part(\"chart\", \"tooltip\", { custom: true })}\n onLayout={(e: LayoutChangeEvent) => {\n const { width: w, height: h } = e.nativeEvent.layout;\n setSize((previous) =>\n previous && previous.width === w && previous.height === h\n ? previous\n : { width: w, height: h },\n );\n }}\n style={[\n tooltipCard(scene),\n {\n // laid out at the origin (full width available), moved by a transform\n left: 0,\n top: 0,\n maxWidth: Math.max(0, width - 8),\n padding: 8,\n opacity: size ? 1 : 0,\n transform: [{ translateX: left }, { translateY: top }],\n },\n ]}\n >\n {children}\n </View>\n );\n}\n\ninterface ChartBaseProps extends Handlers {\n options: ChartOptions;\n height?: DimensionValue;\n width?: DimensionValue;\n style?: StyleProp<ViewStyle>;\n testID?: string;\n handleRef?: Ref<ChartHandle>;\n /** React content of the tooltip (replaces the engine's content) */\n renderTooltip?: (event: ChartHoverEvent) => ReactNode;\n /** React content placed over the plot area, given the plot rectangle */\n overlay?: (plot: ChartRect) => ReactNode;\n}\n\n/** Sizes the chart, forwards options / theme / touches to the controller and draws its scene */\nexport function ChartBase({\n options,\n height = 320,\n width = \"100%\",\n style,\n testID,\n handleRef,\n renderTooltip,\n overlay,\n ...handlers\n}: ChartBaseProps) {\n const { tokens, fonts } = useTheme();\n const family = fonts.sans;\n const theme = useMemo(() => chartThemeInput(tokens), [tokens]);\n const customTooltip = !!renderTooltip && options.tooltip !== false;\n const resolved = useMemo((): ChartOptions => {\n if (!customTooltip) return options;\n const base = typeof options.tooltip === \"object\" ? options.tooltip : {};\n return { ...options, tooltip: { ...base, render: () => CUSTOM_TOOLTIP } };\n }, [options, customTooltip]);\n\n const [store] = useState(() =>\n createChartStore(\n resolved,\n theme,\n typeof width === \"number\" && typeof height === \"number\"\n ? [width, height]\n : null,\n ),\n );\n const { controller } = store;\n useSyncExternalStore(store.subscribe, store.version, store.version);\n\n const applied = useRef({ options: resolved, theme });\n useLayoutEffect(() => {\n const current = applied.current;\n if (current.theme === theme && current.options === resolved) return;\n if (current.theme !== theme) controller.setTheme(theme);\n if (current.options !== resolved) store.setOptions(resolved);\n applied.current = { options: resolved, theme };\n store.commit();\n }, [controller, store, resolved, theme]);\n\n useLayoutEffect(() => {\n if (typeof width !== \"number\" || typeof height !== \"number\") return;\n const scene = controller.getScene();\n if (scene && scene.width === width && scene.height === height) return;\n controller.setSize(width, height);\n store.commit();\n }, [controller, store, width, height]);\n\n const handlersRef = useRef<Handlers>(handlers);\n useLayoutEffect(() => {\n handlersRef.current = handlers;\n });\n useEffect(() => {\n const h = handlersRef;\n const offs = [\n controller.on(\"hover\", (e) => h.current.onHover?.(e)),\n controller.on(\"click\", (e) => h.current.onPointClick?.(e)),\n controller.on(\"plotClick\", (e) => h.current.onPlotClick?.(e)),\n controller.on(\"zoom\", (v) => h.current.onZoom?.(v)),\n controller.on(\"drag\", (e) => h.current.onDrag?.(e)),\n controller.on(\"drop\", (e) => h.current.onDrop?.(e)),\n ];\n return () => offs.forEach((off) => off());\n }, [controller]);\n\n useImperativeHandle(\n handleRef,\n () => ({\n resetZoom: () => controller.resetZoom(),\n getView: () => controller.getView(),\n setView: (view) => controller.setView(view),\n getPlotRect: () => controller.getPlotRect(),\n getController: () => controller,\n }),\n [controller],\n );\n\n const onLayout = (e: LayoutChangeEvent) => {\n const { width: w, height: h } = e.nativeEvent.layout;\n const scene = controller.getScene();\n if (scene && scene.width === w && scene.height === h) return;\n controller.setSize(w, h);\n store.commit();\n };\n\n const scene = controller.getScene();\n let tooltip: ReactNode = null;\n const event = scene?.hover?.tooltip ? scene.hover.event : null;\n if (scene && event && customTooltip && renderTooltip) {\n const content = renderTooltip(event);\n const anchor = store.anchor ?? scene.hover?.marks[0] ?? null;\n if (\n content !== null &&\n content !== undefined &&\n content !== false &&\n anchor\n )\n tooltip = (\n <CustomTooltip scene={scene} anchor={anchor}>\n {content}\n </CustomTooltip>\n );\n }\n\n return (\n <View\n testID={testID}\n onLayout={onLayout}\n style={[{ width, height }, style]}\n {...part(\"chart\", \"root\")}\n >\n <View\n style={StyleSheet.absoluteFill}\n accessible\n accessibilityRole=\"image\"\n accessibilityLabel={options.ariaLabel}\n onStartShouldSetResponder={() => true}\n onResponderTerminationRequest={() => !store.holdsGesture()}\n onResponderGrant={store.touchStart}\n onResponderStart={store.touchAdd}\n onResponderMove={store.touchMove}\n onResponderEnd={store.touchEnd}\n onResponderRelease={store.touchEnd}\n onResponderTerminate={store.touchCancel}\n {...part(\"chart\", \"surface\")}\n >\n <View pointerEvents=\"none\" style={StyleSheet.absoluteFill}>\n {scene ? store.layers(scene, family) : null}\n {scene ? drawHover(scene, family, customTooltip) : null}\n </View>\n </View>\n {overlay && scene ? (\n <View\n pointerEvents=\"box-none\"\n style={{\n position: \"absolute\",\n left: scene.layout.plot.x,\n top: scene.layout.plot.y,\n width: scene.layout.plot.width,\n height: scene.layout.plot.height,\n }}\n {...part(\"chart\", \"overlay\")}\n >\n {overlay(scene.layout.plot)}\n </View>\n ) : null}\n {tooltip}\n </View>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ChartBase.js","names":["engineOptions","props","CUSTOM_TOOLTIP","idOf","id","t","index","requestFrame","callback","createChartStore","version","frame","listeners","cache","origin","touches","dragsPoints","o","draggable","options","claimed","notify","listener","cancelFrame","controller","createChartController","measureChartText","size","local","sync","n","event","i","p","previous","store","next","scene","key","view","plot","family","value","drawStatic","active","changed","last","touch","base","CustomTooltip","setSize","useState","left","anchor","top","width","height","View","part","w","h","tooltipCard","ChartBase","handlers","useTheme","fonts","theme","useMemo","chartThemeInput","tokens","customTooltip","renderTooltip","resolved","applied","useRef","useLayoutEffect","current","handlersRef","useEffect","offs","e","v","off","useImperativeHandle","handleRef","onLayout","tooltip","content","style","StyleSheet","chartAriaLabel","drawHover","overlay"],"sources":["../../../../../native/src/components/Chart/ChartBase.tsx"],"sourcesContent":["// The chart host of React Native: owns a platform-free chart controller\n// (@minerva/charts/canvas: options, model, zoom, gestures, scene in pixels)\n// and draws its scene with views (./scene). Touches go through the\n// responder system; the drawing is `pointerEvents=\"none\"`, so every touch\n// lands on the surface and positions come from page coordinates.\n\nimport {\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n useSyncExternalStore,\n type ReactNode,\n type Ref,\n} from \"react\";\nimport {\n StyleSheet,\n View,\n type DimensionValue,\n type GestureResponderEvent,\n type LayoutChangeEvent,\n type StyleProp,\n type ViewStyle,\n} from \"react-native\";\nimport {\n chartAriaLabel,\n createChartController,\n type ChartController,\n type ChartDragEvent,\n type ChartHoverEvent,\n type ChartOptions,\n type ChartPlotClickEvent,\n type ChartRect,\n type ChartScene,\n type ChartThemeInput,\n type ChartTooltipOptions,\n type ChartView,\n} from \"@minerva/charts/canvas\";\nimport { useTheme } from \"../../theme/MinervaProvider\";\nimport { part } from \"../../internal/parts\";\nimport { measureChartText } from \"./measure\";\nimport { drawHover, drawStatic, tooltipCard } from \"./scene\";\nimport { chartThemeInput } from \"./theme\";\nimport type { ChartCommonProps, ChartHandle } from \"./types\";\n\ninterface Handlers {\n onHover?: (event: ChartHoverEvent | null) => void;\n onPointClick?: (event: ChartHoverEvent) => void;\n onPlotClick?: (event: ChartPlotClickEvent) => void;\n onZoom?: (view: ChartView) => void;\n onDrag?: (event: ChartDragEvent) => void;\n onDrop?: (event: ChartDragEvent) => void;\n}\n\n/** Engine options of the common props */\nexport const engineOptions = (\n props: Pick<\n ChartCommonProps,\n | \"xAxis\"\n | \"yAxis\"\n | \"legend\"\n | \"tooltip\"\n | \"crosshair\"\n | \"annotations\"\n | \"interaction\"\n | \"padding\"\n | \"palette\"\n | \"ariaLabel\"\n | \"locale\"\n | \"labels\"\n > &\n Pick<ChartOptions, \"series\">,\n): ChartOptions => ({\n series: props.series,\n xAxis: props.xAxis,\n yAxis: props.yAxis,\n legend: props.legend,\n tooltip: props.tooltip,\n crosshair: props.crosshair,\n annotations: props.annotations,\n interaction: props.interaction,\n padding: props.padding,\n palette: props.palette,\n ariaLabel: props.ariaLabel,\n locale: props.locale,\n labels: props.labels,\n});\n\ntype TooltipResult = Exclude<\n ReturnType<NonNullable<ChartTooltipOptions[\"render\"]>>,\n string | null\n>;\n/** Non-string result of `tooltip.render`: the engine lays a tooltip out without drawing text */\nconst CUSTOM_TOOLTIP = {} as unknown as TooltipResult;\n\ninterface TouchPoint {\n identifier?: number | string;\n pageX: number;\n pageY: number;\n locationX?: number;\n locationY?: number;\n}\n\nconst idOf = (t: TouchPoint, index: number) => {\n const id = Number(t.identifier);\n return Number.isFinite(id) ? id : index;\n};\n\ntype Frame = { cancel: () => void };\n\nconst requestFrame = (callback: () => void): Frame => {\n if (typeof requestAnimationFrame === \"function\") {\n const id = requestAnimationFrame(callback);\n return { cancel: () => cancelAnimationFrame(id) };\n }\n const id = setTimeout(callback, 16);\n return { cancel: () => clearTimeout(id) };\n};\n\n/**\n * External store of a chart: the controller, a version bumped when its\n * scene must be drawn again (coalesced per frame), the touches being\n * tracked and the cache of the static layers.\n */\ninterface ChartStore {\n controller: ChartController;\n /** Options of the controller (`setOptions` of the controller) */\n setOptions: (options: ChartOptions) => void;\n subscribe: (listener: () => void) => () => void;\n version: () => number;\n /** Draws again now */\n commit: () => void;\n /** Static layers of a scene (cached while model / view / size are the same) */\n layers: (scene: ChartScene, family: string | undefined) => ReactNode;\n /** Last single-finger position (anchor of a custom tooltip) */\n anchor: { x: number; y: number } | null;\n /**\n * First finger (responder grant); returns whether the chart owns the\n * gesture, which keeps native scroll views from taking it (Android)\n */\n touchStart: (event: GestureResponderEvent) => boolean;\n /** Another finger touches the chart */\n touchAdd: (event: GestureResponderEvent) => void;\n /** Moves (drawn on the next frame) */\n touchMove: (event: GestureResponderEvent) => void;\n touchEnd: (event: GestureResponderEvent) => void;\n touchCancel: () => void;\n /** Whether the chart keeps the touches (pinch, point drag, pan when zoomed) */\n holdsGesture: () => boolean;\n}\n\nfunction createChartStore(\n options: ChartOptions,\n theme: ChartThemeInput,\n size: [number, number] | null,\n): ChartStore {\n let version = 0;\n let frame: Frame | null = null;\n const listeners = new Set<() => void>();\n let cache: { key: unknown[]; node: ReactNode } | null = null;\n let origin = { x: 0, y: 0 };\n const touches = new Map<number, { x: number; y: number }>();\n const dragsPoints = (o: ChartOptions) =>\n typeof o.interaction === \"object\" && !!o.interaction.dragPoints;\n let draggable = dragsPoints(options);\n /** The current touch sequence started on the plot of a draggable chart */\n let claimed = false;\n\n const notify = () => {\n version++;\n listeners.forEach((listener) => listener());\n };\n const cancelFrame = () => {\n frame?.cancel();\n frame = null;\n };\n const schedule = () => {\n if (frame || !listeners.size) return;\n frame = requestFrame(() => {\n frame = null;\n notify();\n });\n };\n\n const controller = createChartController({\n options,\n theme,\n measureText: measureChartText,\n onInvalidate: schedule,\n });\n if (size) controller.setSize(size[0], size[1]);\n\n const local = (t: TouchPoint) => ({\n x: t.pageX - origin.x,\n y: t.pageY - origin.y,\n });\n\n /** Feeds the controller the fingers that appeared or moved */\n const sync = (event: GestureResponderEvent) => {\n const n = event.nativeEvent;\n const list: readonly TouchPoint[] = n.touches?.length\n ? n.touches\n : [n as unknown as TouchPoint];\n list.forEach((t, i) => {\n const id = idOf(t, i);\n const p = local(t);\n const previous = touches.get(id);\n if (!previous) {\n touches.set(id, p);\n controller.pointerDown(p.x, p.y, { id, touch: true });\n } else if (previous.x !== p.x || previous.y !== p.y) {\n touches.set(id, p);\n controller.pointerMove(p.x, p.y, { id, touch: true });\n }\n });\n if (touches.size === 1) store.anchor = [...touches.values()][0];\n };\n\n const store: ChartStore = {\n controller,\n setOptions(next) {\n draggable = dragsPoints(next);\n controller.setOptions(next);\n },\n subscribe(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n if (!listeners.size) cancelFrame();\n };\n },\n version: () => version,\n commit() {\n cancelFrame();\n notify();\n },\n layers(scene, family) {\n const { plot } = scene.layout;\n const { view } = scene;\n const key = [\n scene.model,\n scene.annotations,\n scene.theme,\n scene.width,\n scene.height,\n view.x[0],\n view.x[1],\n view.y[0],\n view.y[1],\n plot.x,\n plot.y,\n plot.width,\n plot.height,\n family,\n ];\n if (!cache || cache.key.some((value, i) => value !== key[i]))\n cache = { key, node: drawStatic(scene, family) };\n return cache.node;\n },\n anchor: null,\n touchStart(event) {\n const n = event.nativeEvent as unknown as TouchPoint;\n // the drawing ignores touches: `location` is relative to the surface\n if (!touches.size && n.locationX !== undefined)\n origin = { x: n.pageX - n.locationX, y: n.pageY - (n.locationY ?? 0) };\n sync(event);\n store.commit();\n // draggable points: the drag only starts after the touch slop, too\n // late to keep a scroll view from stealing the touch: claim it now\n const plot = controller.getPlotRect();\n const p = touches.values().next().value;\n claimed =\n draggable &&\n !!plot &&\n !!p &&\n p.x >= plot.x &&\n p.x <= plot.x + plot.width &&\n p.y >= plot.y &&\n p.y <= plot.y + plot.height;\n return store.holdsGesture();\n },\n touchAdd(event) {\n sync(event);\n store.commit();\n },\n touchMove: sync,\n touchEnd(event) {\n const n = event.nativeEvent;\n const active = new Set(\n (n.touches ?? []).map((t, i) => idOf(t as TouchPoint, i)),\n );\n const changed: readonly TouchPoint[] = n.changedTouches?.length\n ? n.changedTouches\n : [n as unknown as TouchPoint];\n for (const [id, last] of [...touches]) {\n if (active.has(id)) continue;\n const touch = changed.find((t, i) => idOf(t, i) === id);\n const p = touch ? local(touch) : last;\n touches.delete(id);\n if (touches.size === 0) store.anchor = p;\n controller.pointerUp(p.x, p.y, { id, touch: true });\n }\n store.commit();\n },\n touchCancel() {\n for (const id of touches.keys()) controller.pointerCancel({ id });\n touches.clear();\n store.commit();\n },\n holdsGesture() {\n if (touches.size > 1 || (claimed && touches.size > 0)) return true;\n const scene = controller.getScene();\n if (!scene) return false;\n if (scene.dragging) return true;\n const { base } = scene.model;\n const view = controller.getView();\n return (\n view.x[0] !== base.x[0] ||\n view.x[1] !== base.x[1] ||\n view.y[0] !== base.y[0] ||\n view.y[1] !== base.y[1]\n );\n },\n };\n return store;\n}\n\n/** A `renderTooltip` node, placed next to the finger once measured */\nfunction CustomTooltip({\n scene,\n anchor,\n children,\n}: {\n scene: ChartScene;\n anchor: { x: number; y: number };\n children: ReactNode;\n}) {\n const [size, setSize] = useState<{ width: number; height: number } | null>(\n null,\n );\n const { width, height } = scene;\n let left = anchor.x + 14;\n let top = anchor.y;\n if (size) {\n if (left + size.width > width - 4) left = anchor.x - 14 - size.width;\n left = Math.max(4, Math.min(left, width - size.width - 4));\n top = Math.max(\n 4,\n Math.min(anchor.y - size.height / 2, height - size.height - 4),\n );\n }\n return (\n <View\n pointerEvents=\"none\"\n {...part(\"chart\", \"tooltip\", { custom: true })}\n onLayout={(e: LayoutChangeEvent) => {\n const { width: w, height: h } = e.nativeEvent.layout;\n setSize((previous) =>\n previous && previous.width === w && previous.height === h\n ? previous\n : { width: w, height: h },\n );\n }}\n style={[\n tooltipCard(scene),\n {\n // laid out at the origin (full width available), moved by a transform\n left: 0,\n top: 0,\n maxWidth: Math.max(0, width - 8),\n padding: 8,\n opacity: size ? 1 : 0,\n transform: [{ translateX: left }, { translateY: top }],\n },\n ]}\n >\n {children}\n </View>\n );\n}\n\ninterface ChartBaseProps extends Handlers {\n options: ChartOptions;\n height?: DimensionValue;\n width?: DimensionValue;\n style?: StyleProp<ViewStyle>;\n testID?: string;\n handleRef?: Ref<ChartHandle>;\n /** React content of the tooltip (replaces the engine's content) */\n renderTooltip?: (event: ChartHoverEvent) => ReactNode;\n /** React content placed over the plot area, given the plot rectangle */\n overlay?: (plot: ChartRect) => ReactNode;\n}\n\n/** Sizes the chart, forwards options / theme / touches to the controller and draws its scene */\nexport function ChartBase({\n options,\n height = 320,\n width = \"100%\",\n style,\n testID,\n handleRef,\n renderTooltip,\n overlay,\n ...handlers\n}: ChartBaseProps) {\n const { tokens, fonts } = useTheme();\n const family = fonts.sans;\n const theme = useMemo(() => chartThemeInput(tokens), [tokens]);\n const customTooltip = !!renderTooltip && options.tooltip !== false;\n const resolved = useMemo((): ChartOptions => {\n if (!customTooltip) return options;\n const base = typeof options.tooltip === \"object\" ? options.tooltip : {};\n return { ...options, tooltip: { ...base, render: () => CUSTOM_TOOLTIP } };\n }, [options, customTooltip]);\n\n const [store] = useState(() =>\n createChartStore(\n resolved,\n theme,\n typeof width === \"number\" && typeof height === \"number\"\n ? [width, height]\n : null,\n ),\n );\n const { controller } = store;\n useSyncExternalStore(store.subscribe, store.version, store.version);\n\n const applied = useRef({ options: resolved, theme });\n useLayoutEffect(() => {\n const current = applied.current;\n if (current.theme === theme && current.options === resolved) return;\n if (current.theme !== theme) controller.setTheme(theme);\n if (current.options !== resolved) store.setOptions(resolved);\n applied.current = { options: resolved, theme };\n store.commit();\n }, [controller, store, resolved, theme]);\n\n useLayoutEffect(() => {\n if (typeof width !== \"number\" || typeof height !== \"number\") return;\n const scene = controller.getScene();\n if (scene && scene.width === width && scene.height === height) return;\n controller.setSize(width, height);\n store.commit();\n }, [controller, store, width, height]);\n\n const handlersRef = useRef<Handlers>(handlers);\n useLayoutEffect(() => {\n handlersRef.current = handlers;\n });\n useEffect(() => {\n const h = handlersRef;\n const offs = [\n controller.on(\"hover\", (e) => h.current.onHover?.(e)),\n controller.on(\"click\", (e) => h.current.onPointClick?.(e)),\n controller.on(\"plotClick\", (e) => h.current.onPlotClick?.(e)),\n controller.on(\"zoom\", (v) => h.current.onZoom?.(v)),\n controller.on(\"drag\", (e) => h.current.onDrag?.(e)),\n controller.on(\"drop\", (e) => h.current.onDrop?.(e)),\n ];\n return () => offs.forEach((off) => off());\n }, [controller]);\n\n useImperativeHandle(\n handleRef,\n () => ({\n resetZoom: () => controller.resetZoom(),\n getView: () => controller.getView(),\n setView: (view) => controller.setView(view),\n getPlotRect: () => controller.getPlotRect(),\n getController: () => controller,\n }),\n [controller],\n );\n\n const onLayout = (e: LayoutChangeEvent) => {\n const { width: w, height: h } = e.nativeEvent.layout;\n const scene = controller.getScene();\n if (scene && scene.width === w && scene.height === h) return;\n controller.setSize(w, h);\n store.commit();\n };\n\n const scene = controller.getScene();\n let tooltip: ReactNode = null;\n const event = scene?.hover?.tooltip ? scene.hover.event : null;\n if (scene && event && customTooltip && renderTooltip) {\n const content = renderTooltip(event);\n const anchor = store.anchor ?? scene.hover?.marks[0] ?? null;\n if (\n content !== null &&\n content !== undefined &&\n content !== false &&\n anchor\n )\n tooltip = (\n <CustomTooltip scene={scene} anchor={anchor}>\n {content}\n </CustomTooltip>\n );\n }\n\n return (\n <View\n testID={testID}\n onLayout={onLayout}\n style={[{ width, height }, style]}\n {...part(\"chart\", \"root\")}\n >\n <View\n style={StyleSheet.absoluteFill}\n accessible\n accessibilityRole=\"image\"\n accessibilityLabel={\n options.ariaLabel ?? (scene ? chartAriaLabel(scene.model) : undefined)\n }\n onStartShouldSetResponder={() => true}\n onResponderTerminationRequest={() => !store.holdsGesture()}\n onResponderGrant={store.touchStart}\n onResponderStart={store.touchAdd}\n onResponderMove={store.touchMove}\n onResponderEnd={store.touchEnd}\n onResponderRelease={store.touchEnd}\n onResponderTerminate={store.touchCancel}\n {...part(\"chart\", \"surface\")}\n >\n <View pointerEvents=\"none\" style={StyleSheet.absoluteFill}>\n {scene ? store.layers(scene, family) : null}\n {scene ? drawHover(scene, family, customTooltip) : null}\n </View>\n </View>\n {overlay && scene ? (\n <View\n pointerEvents=\"box-none\"\n style={{\n position: \"absolute\",\n left: scene.layout.plot.x,\n top: scene.layout.plot.y,\n width: scene.layout.plot.width,\n height: scene.layout.plot.height,\n }}\n {...part(\"chart\", \"overlay\")}\n >\n {overlay(scene.layout.plot)}\n </View>\n ) : null}\n {tooltip}\n </View>\n );\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- const e=require("../../internal/parts.cjs"),t=require("../../charts/src/engine/presets.cjs");require("../../charts/src/canvas.cjs");const n=require("./ChartBase.cjs");let r=require("react"),i=require("react-native"),a=require("react/jsx-runtime");function o(e,t){let{xAxis:i,yAxis:a,legend:o,tooltip:s,crosshair:c,annotations:l,interaction:u,padding:d,palette:f,ariaLabel:p}=e;return(0,r.useMemo)(()=>n.engineOptions({series:t,xAxis:i,yAxis:a,legend:o,tooltip:s,crosshair:c,annotations:l,interaction:u,padding:d,palette:f,ariaLabel:p}),[t,i,a,o,s,c,l,u,d,f,p])}var s=e=>({height:e.height,width:e.width,style:e.style,testID:e.testID,handleRef:e.ref,onHover:e.onHover,onPointClick:e.onPointClick,onPlotClick:e.onPlotClick,onZoom:e.onZoom,renderTooltip:e.renderTooltip});function c(e){let t=o(e,e.series);return(0,a.jsx)(n.ChartBase,{options:t,...s(e)})}function l(e){let{series:i,area:c=!1}=e,l=o(e,(0,r.useMemo)(()=>t.lineSeries(i,c),[i,c]));return(0,a.jsx)(n.ChartBase,{options:l,...s(e)})}function u(e){let{series:i,stacked:c=!1}=e,l=o(e,(0,r.useMemo)(()=>t.barSeries(i,c),[i,c]));return(0,a.jsx)(n.ChartBase,{options:l,...s(e)})}function d(e){let{series:i}=e,c=o(e,(0,r.useMemo)(()=>t.scatterSeries(i),[i]));return(0,a.jsx)(n.ChartBase,{options:c,...s(e)})}var f=[`topLeft`,`topRight`,`bottomLeft`,`bottomRight`],p=[];function m(c){let{points:l,xDomain:u,yDomain:d,xSplit:m,ySplit:h,quadrants:g,xLabel:_,yLabel:v,axisLabels:y,showTicks:b,reverseX:x,showLabels:S,pointSize:C,name:w,draggable:T,onPointClick:E,onPointDrop:D,onQuadrantClick:O,renderTooltip:k,quadrantContent:A}=c,j=o(c,p),M=T??!!D,N=(0,r.useMemo)(()=>t.quadrantChartOptions({points:l,xDomain:u,yDomain:d,xSplit:m,ySplit:h,quadrants:g,xLabel:_,yLabel:v,axisLabels:y,showTicks:b,reverseX:x,showLabels:S,pointSize:C,name:w,draggable:M},j),[l,u,d,m,h,g,_,v,y,b,x,S,C,w,M,j]),P={xDomain:u,yDomain:d,xSplit:m,ySplit:h,reverseX:x},F=A?t=>{let[n,r]=u??[0,10],[o,s]=d??[0,10],c=m??(n+r)/2,l=h??(o+s)/2,p=(c-n)/(r-n||1),g=(l-o)/(s-o||1),_=t.width*(x?1-p:p),v=t.height*(1-g);return f.map(n=>{let r=A[n];if(r==null||r===!1)return null;let o=n.endsWith(`Left`),s=n.startsWith(`top`);return(0,a.jsx)(i.View,{pointerEvents:`box-none`,style:{position:`absolute`,left:o?0:_,top:s?0:v,width:o?_:t.width-_,height:s?v:t.height-v},...e.part(`chart`,`quadrant`,{corner:n}),children:r},n)})}:void 0;return(0,a.jsx)(n.ChartBase,{options:N,...s({...c,onPointClick:void 0,renderTooltip:void 0}),overlay:F,onPointClick:E?e=>{let t=e.items[0]?.index;t!==void 0&&l[t]&&E(l[t],t)}:void 0,onPlotClick:O?e=>O(t.quadrantOf(P,e.x,e.y),e):void 0,onDrop:D?e=>{let n=e.item.index;l[n]&&D(l[n],n,{x:e.x,y:e.y,quadrant:t.quadrantOf(P,e.x,e.y)})}:void 0,renderTooltip:k?e=>{let t=e.items[0]?.index;return t!==void 0&&l[t]?k(l[t],t):null}:void 0})}exports.BarChart=u,exports.Chart=c,exports.LineChart=l,exports.QuadrantChart=m,exports.ScatterChart=d;
1
+ const e=require("../../internal/parts.cjs"),t=require("../../charts/src/engine/presets.cjs");require("../../charts/src/canvas.cjs");const n=require("./ChartBase.cjs");let r=require("react"),i=require("react-native"),a=require("react/jsx-runtime");function o(e,t,i){let{xAxis:a,yAxis:o,legend:s,tooltip:c,crosshair:l,annotations:u,interaction:d,padding:f,palette:p,ariaLabel:m,locale:h,labels:g}=e,_=typeof g==`object`?g:void 0,v=i?.orientation,y=i?.yAxis2;return(0,r.useMemo)(()=>({...n.engineOptions({series:t,xAxis:a,yAxis:o,legend:s,tooltip:c,crosshair:l,annotations:u,interaction:d,padding:f,palette:p,ariaLabel:m,locale:h,labels:_}),...v?{orientation:v}:null,...y?{yAxis2:y}:null}),[t,v,y,a,o,s,c,l,u,d,f,p,m,h,_])}var s=e=>({height:e.height,width:e.width,style:e.style,testID:e.testID,handleRef:e.ref,onHover:e.onHover,onPointClick:e.onPointClick,onPlotClick:e.onPlotClick,onZoom:e.onZoom,renderTooltip:e.renderTooltip});function c(e){let{series:t,orientation:r,yAxis2:i}=e,c=o(e,t,{orientation:r,yAxis2:i});return(0,a.jsx)(n.ChartBase,{options:c,...s(e)})}function l(e){let{series:i,area:c=!1}=e,l=o(e,(0,r.useMemo)(()=>t.lineSeries(i,c),[i,c]));return(0,a.jsx)(n.ChartBase,{options:l,...s(e)})}function u(e){let{series:i,stacked:c=!1}=e,l=o(e,(0,r.useMemo)(()=>t.barSeries(i,c),[i,c]));return(0,a.jsx)(n.ChartBase,{options:l,...s(e)})}function d(e){let{series:i,stacked:c=!1,labels:l=!1}=e,u=o(e,(0,r.useMemo)(()=>t.barSeries(i,c,l),[i,c,l]),{orientation:`horizontal`});return(0,a.jsx)(n.ChartBase,{options:u,...s(e)})}function f(e){let{series:i}=e,c=o(e,(0,r.useMemo)(()=>t.scatterSeries(i),[i]));return(0,a.jsx)(n.ChartBase,{options:c,...s(e)})}var p=[`topLeft`,`topRight`,`bottomLeft`,`bottomRight`],m=[];function h(c){let{points:l,xDomain:u,yDomain:d,xSplit:f,ySplit:h,quadrants:g,xLabel:_,yLabel:v,axisLabels:y,showTicks:b,reverseX:x,showLabels:S,pointSize:C,name:w,draggable:T,onPointClick:E,onPointDrop:D,onQuadrantClick:O,renderTooltip:k,quadrantContent:A}=c,j=o(c,m),M=T??!!D,N=(0,r.useMemo)(()=>t.quadrantChartOptions({points:l,xDomain:u,yDomain:d,xSplit:f,ySplit:h,quadrants:g,xLabel:_,yLabel:v,axisLabels:y,showTicks:b,reverseX:x,showLabels:S,pointSize:C,name:w,draggable:M},j),[l,u,d,f,h,g,_,v,y,b,x,S,C,w,M,j]),P={xDomain:u,yDomain:d,xSplit:f,ySplit:h,reverseX:x},F=A?t=>{let[n,r]=u??[0,10],[o,s]=d??[0,10],c=f??(n+r)/2,l=h??(o+s)/2,m=(c-n)/(r-n||1),g=(l-o)/(s-o||1),_=t.width*(x?1-m:m),v=t.height*(1-g);return p.map(n=>{let r=A[n];if(r==null||r===!1)return null;let o=n.endsWith(`Left`),s=n.startsWith(`top`);return(0,a.jsx)(i.View,{pointerEvents:`box-none`,style:{position:`absolute`,left:o?0:_,top:s?0:v,width:o?_:t.width-_,height:s?v:t.height-v},...e.part(`chart`,`quadrant`,{corner:n}),children:r},n)})}:void 0;return(0,a.jsx)(n.ChartBase,{options:N,...s({...c,onPointClick:void 0,renderTooltip:void 0}),overlay:F,onPointClick:E?e=>{let t=e.items[0]?.index;t!==void 0&&l[t]&&E(l[t],t)}:void 0,onPlotClick:O?e=>O(t.quadrantOf(P,e.x,e.y),e):void 0,onDrop:D?e=>{let n=e.item.index;l[n]&&D(l[n],n,{x:e.x,y:e.y,quadrant:t.quadrantOf(P,e.x,e.y)})}:void 0,renderTooltip:k?e=>{let t=e.items[0]?.index;return t!==void 0&&l[t]?k(l[t],t):null}:void 0})}exports.BarChart=u,exports.Chart=c,exports.HorizontalBarChart=d,exports.LineChart=l,exports.QuadrantChart=h,exports.ScatterChart=f;
2
2
  //# sourceMappingURL=charts.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"charts.cjs","names":["useMemo","engineOptions","ChartBase","lineSeries","barSeries","scatterSeries","quadrantChartOptions","View","part","quadrantOf","require_parts","require_presets","require_ChartBase","react","react_native","react_jsx_runtime","useEngineOptions","props","series","xAxis","yAxis","legend","tooltip","crosshair","annotations","interaction","padding","palette","ariaLabel","frameProps","Chart","options","LineChart","input","area","BarChart","stacked","ScatterChart","CORNERS","NO_SERIES","QuadrantChart","base","dragPoints","draggable","onPointDrop","points","xDomain","yDomain","xSplit","ySplit","quadrants","xLabel","yLabel","axisLabels","showTicks","reverseX","showLabels","pointSize","name","geometry","overlay","quadrantContent","x0","x1","y0","y1","xs","ys","fx","fy","sx","plot","sy","content","corner","left","top","onPointClick","index","event","onQuadrantClick","at","renderTooltip"],"sources":["../../../../../native/src/components/Chart/charts.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { View } from \"react-native\";\nimport {\n barSeries,\n lineSeries,\n quadrantChartOptions,\n quadrantOf,\n scatterSeries,\n type ChartHoverEvent,\n type ChartOptions,\n type ChartRect,\n type ChartSeries,\n type QuadrantCorner,\n} from \"@minerva/charts/canvas\";\nimport { part } from \"../../internal/parts\";\nimport { ChartBase, engineOptions } from \"./ChartBase\";\nimport type {\n BarChartProps,\n ChartCommonProps,\n ChartProps,\n LineChartProps,\n QuadrantChartProps,\n ScatterChartProps,\n} from \"./types\";\n\n/** Engine options of the common props, kept while the props are the same */\nfunction useEngineOptions(\n props: Omit<\n ChartCommonProps,\n \"onPointClick\" | \"onPlotClick\" | \"renderTooltip\"\n >,\n series: readonly ChartSeries[],\n): ChartOptions {\n const {\n xAxis,\n yAxis,\n legend,\n tooltip,\n crosshair,\n annotations,\n interaction,\n padding,\n palette,\n ariaLabel,\n } = props;\n return useMemo(\n () =>\n engineOptions({\n series,\n xAxis,\n yAxis,\n legend,\n tooltip,\n crosshair,\n annotations,\n interaction,\n padding,\n palette,\n ariaLabel,\n }),\n [\n series,\n xAxis,\n yAxis,\n legend,\n tooltip,\n crosshair,\n annotations,\n interaction,\n padding,\n palette,\n ariaLabel,\n ],\n );\n}\n\nconst frameProps = (props: ChartCommonProps) => ({\n height: props.height,\n width: props.width,\n style: props.style,\n testID: props.testID,\n handleRef: props.ref,\n onHover: props.onHover,\n onPointClick: props.onPointClick,\n onPlotClick: props.onPlotClick,\n onZoom: props.onZoom,\n renderTooltip: props.renderTooltip,\n});\n\n/**\n * Chart mixing line, area, bar and scatter series, drawn with views:\n * tap for the tooltip, pinch to zoom, drag to pan, double tap to reset.\n * Themed by the closest `MinervaProvider` (light / dark).\n */\nexport function Chart(props: ChartProps) {\n const options = useEngineOptions(props, props.series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/** Line (or area) chart; large series are decimated to the pixel columns */\nexport function LineChart(props: LineChartProps) {\n const { series: input, area = false } = props;\n const series = useMemo(() => lineSeries(input, area), [input, area]);\n const options = useEngineOptions(props, series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/** Bar chart: grouped side by side, or stacked */\nexport function BarChart(props: BarChartProps) {\n const { series: input, stacked = false } = props;\n const series = useMemo(() => barSeries(input, stacked), [input, stacked]);\n const options = useEngineOptions(props, series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/** Scatter chart: zooms on both axes; large point sets are merged per cell */\nexport function ScatterChart(props: ScatterChartProps) {\n const { series: input } = props;\n const series = useMemo(() => scatterSeries(input), [input]);\n const options = useEngineOptions(props, series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\nconst CORNERS: QuadrantCorner[] = [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n \"bottomRight\",\n];\n\nconst NO_SERIES: readonly ChartSeries[] = [];\n\n/**\n * Four-quadrant matrix (priority matrix, Eisenhower, BCG, ...): tinted\n * quadrants with titles, dividers, and labelled dots placed without\n * overlapping labels. Dots can be dragged to another quadrant.\n */\nexport function QuadrantChart(props: QuadrantChartProps) {\n const {\n points,\n xDomain,\n yDomain,\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n axisLabels,\n showTicks,\n reverseX,\n showLabels,\n pointSize,\n name,\n draggable,\n onPointClick,\n onPointDrop,\n onQuadrantClick,\n renderTooltip,\n quadrantContent,\n } = props;\n const base = useEngineOptions(props, NO_SERIES);\n const dragPoints = draggable ?? !!onPointDrop;\n const options = useMemo(\n () =>\n quadrantChartOptions(\n {\n points,\n xDomain,\n yDomain,\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n axisLabels,\n showTicks,\n reverseX,\n showLabels,\n pointSize,\n name,\n draggable: dragPoints,\n },\n base,\n ),\n [\n points,\n xDomain,\n yDomain,\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n axisLabels,\n showTicks,\n reverseX,\n showLabels,\n pointSize,\n name,\n dragPoints,\n base,\n ],\n );\n const geometry = { xDomain, yDomain, xSplit, ySplit, reverseX };\n\n const overlay = quadrantContent\n ? (plot: ChartRect) => {\n const [x0, x1] = xDomain ?? [0, 10];\n const [y0, y1] = yDomain ?? [0, 10];\n const xs = xSplit ?? (x0 + x1) / 2;\n const ys = ySplit ?? (y0 + y1) / 2;\n const fx = (xs - x0) / (x1 - x0 || 1);\n const fy = (ys - y0) / (y1 - y0 || 1);\n // split point relative to the plot area\n const sx = plot.width * (reverseX ? 1 - fx : fx);\n const sy = plot.height * (1 - fy);\n return CORNERS.map((corner) => {\n const content = quadrantContent[corner];\n if (content === undefined || content === null || content === false)\n return null;\n const left = corner.endsWith(\"Left\");\n const top = corner.startsWith(\"top\");\n return (\n <View\n key={corner}\n pointerEvents=\"box-none\"\n style={{\n position: \"absolute\",\n left: left ? 0 : sx,\n top: top ? 0 : sy,\n width: left ? sx : plot.width - sx,\n height: top ? sy : plot.height - sy,\n }}\n {...part(\"chart\", \"quadrant\", { corner })}\n >\n {content}\n </View>\n );\n });\n }\n : undefined;\n\n return (\n <ChartBase\n options={options}\n {...frameProps({\n ...props,\n onPointClick: undefined,\n renderTooltip: undefined,\n })}\n overlay={overlay}\n onPointClick={\n onPointClick\n ? (event: ChartHoverEvent) => {\n const index = event.items[0]?.index;\n if (index !== undefined && points[index])\n onPointClick(points[index], index);\n }\n : undefined\n }\n onPlotClick={\n onQuadrantClick\n ? (at) => onQuadrantClick(quadrantOf(geometry, at.x, at.y), at)\n : undefined\n }\n onDrop={\n onPointDrop\n ? (event) => {\n const index = event.item.index;\n if (!points[index]) return;\n onPointDrop(points[index], index, {\n x: event.x,\n y: event.y,\n quadrant: quadrantOf(geometry, event.x, event.y),\n });\n }\n : undefined\n }\n renderTooltip={\n renderTooltip\n ? (event) => {\n const index = event.items[0]?.index;\n return index !== undefined && points[index]\n ? renderTooltip(points[index], index)\n : null;\n }\n : undefined\n }\n />\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"charts.cjs","names":["useMemo","engineOptions","ChartBase","lineSeries","barSeries","scatterSeries","quadrantChartOptions","View","part","quadrantOf","require_parts","require_presets","require_ChartBase","react","react_native","react_jsx_runtime","useEngineOptions","labelsProp","props","labels","orientation","extra","yAxis2","series","xAxis","yAxis","legend","tooltip","crosshair","annotations","interaction","padding","palette","ariaLabel","locale","frameProps","Chart","options","LineChart","input","area","BarChart","stacked","HorizontalBarChart","ScatterChart","CORNERS","NO_SERIES","QuadrantChart","base","dragPoints","draggable","onPointDrop","points","xDomain","yDomain","xSplit","ySplit","quadrants","xLabel","yLabel","axisLabels","showTicks","reverseX","showLabels","pointSize","name","geometry","overlay","quadrantContent","x0","x1","y0","y1","xs","ys","fx","fy","sx","plot","sy","content","corner","left","top","onPointClick","index","event","onQuadrantClick","at","renderTooltip"],"sources":["../../../../../native/src/components/Chart/charts.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { View } from \"react-native\";\nimport {\n barSeries,\n lineSeries,\n quadrantChartOptions,\n quadrantOf,\n scatterSeries,\n type ChartHoverEvent,\n type ChartOptions,\n type ChartRect,\n type ChartSeries,\n type QuadrantCorner,\n} from \"@minerva/charts/canvas\";\nimport { part } from \"../../internal/parts\";\nimport { ChartBase, engineOptions } from \"./ChartBase\";\nimport type {\n BarChartProps,\n ChartCommonProps,\n ChartProps,\n HorizontalBarChartProps,\n LineChartProps,\n QuadrantChartProps,\n ScatterChartProps,\n} from \"./types\";\n\n/** Engine options of the common props, kept while the props are the same */\nfunction useEngineOptions(\n props: Omit<\n ChartCommonProps,\n \"onPointClick\" | \"onPlotClick\" | \"renderTooltip\" | \"labels\"\n > & {\n /** Texts of the engine (a boolean is the `labels` of a bar chart) */\n labels?: ChartCommonProps[\"labels\"] | boolean;\n },\n series: readonly ChartSeries[],\n extra?: Pick<ChartOptions, \"orientation\" | \"yAxis2\">,\n): ChartOptions {\n const {\n xAxis,\n yAxis,\n legend,\n tooltip,\n crosshair,\n annotations,\n interaction,\n padding,\n palette,\n ariaLabel,\n locale,\n labels: labelsProp,\n } = props;\n const labels = typeof labelsProp === \"object\" ? labelsProp : undefined;\n const orientation = extra?.orientation;\n const yAxis2 = extra?.yAxis2;\n return useMemo(\n () => ({\n ...engineOptions({\n series,\n xAxis,\n yAxis,\n legend,\n tooltip,\n crosshair,\n annotations,\n interaction,\n padding,\n palette,\n ariaLabel,\n locale,\n labels,\n }),\n ...(orientation ? { orientation } : null),\n ...(yAxis2 ? { yAxis2 } : null),\n }),\n [\n series,\n orientation,\n yAxis2,\n xAxis,\n yAxis,\n legend,\n tooltip,\n crosshair,\n annotations,\n interaction,\n padding,\n palette,\n ariaLabel,\n locale,\n labels,\n ],\n );\n}\n\nconst frameProps = (props: Omit<ChartCommonProps, \"labels\">) => ({\n height: props.height,\n width: props.width,\n style: props.style,\n testID: props.testID,\n handleRef: props.ref,\n onHover: props.onHover,\n onPointClick: props.onPointClick,\n onPlotClick: props.onPlotClick,\n onZoom: props.onZoom,\n renderTooltip: props.renderTooltip,\n});\n\n/**\n * Chart mixing line, area, bar and scatter series, drawn with views:\n * tap for the tooltip, pinch to zoom, drag to pan, double tap to reset.\n * Themed by the closest `MinervaProvider` (light / dark).\n */\nexport function Chart(props: ChartProps) {\n const { series, orientation, yAxis2 } = props;\n const options = useEngineOptions(props, series, { orientation, yAxis2 });\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/** Line (or area) chart; large series are decimated to the pixel columns */\nexport function LineChart(props: LineChartProps) {\n const { series: input, area = false } = props;\n const series = useMemo(() => lineSeries(input, area), [input, area]);\n const options = useEngineOptions(props, series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/** Bar chart: grouped side by side, or stacked */\nexport function BarChart(props: BarChartProps) {\n const { series: input, stacked = false } = props;\n const series = useMemo(() => barSeries(input, stacked), [input, stacked]);\n const options = useEngineOptions(props, series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/**\n * Horizontal bar chart: categories down the left side (rankings, long\n * names, surveys), grouped, stacked or with the values at the bar ends\n */\nexport function HorizontalBarChart(props: HorizontalBarChartProps) {\n const { series: input, stacked = false, labels = false } = props;\n const series = useMemo(\n () => barSeries(input, stacked, labels),\n [input, stacked, labels],\n );\n const options = useEngineOptions(props, series, {\n orientation: \"horizontal\",\n });\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\n/** Scatter chart: zooms on both axes; large point sets are merged per cell */\nexport function ScatterChart(props: ScatterChartProps) {\n const { series: input } = props;\n const series = useMemo(() => scatterSeries(input), [input]);\n const options = useEngineOptions(props, series);\n return <ChartBase options={options} {...frameProps(props)} />;\n}\n\nconst CORNERS: QuadrantCorner[] = [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n \"bottomRight\",\n];\n\nconst NO_SERIES: readonly ChartSeries[] = [];\n\n/**\n * Four-quadrant matrix (priority matrix, Eisenhower, BCG, ...): tinted\n * quadrants with titles, dividers, and labelled dots placed without\n * overlapping labels. Dots can be dragged to another quadrant.\n */\nexport function QuadrantChart(props: QuadrantChartProps) {\n const {\n points,\n xDomain,\n yDomain,\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n axisLabels,\n showTicks,\n reverseX,\n showLabels,\n pointSize,\n name,\n draggable,\n onPointClick,\n onPointDrop,\n onQuadrantClick,\n renderTooltip,\n quadrantContent,\n } = props;\n const base = useEngineOptions(props, NO_SERIES);\n const dragPoints = draggable ?? !!onPointDrop;\n const options = useMemo(\n () =>\n quadrantChartOptions(\n {\n points,\n xDomain,\n yDomain,\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n axisLabels,\n showTicks,\n reverseX,\n showLabels,\n pointSize,\n name,\n draggable: dragPoints,\n },\n base,\n ),\n [\n points,\n xDomain,\n yDomain,\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n axisLabels,\n showTicks,\n reverseX,\n showLabels,\n pointSize,\n name,\n dragPoints,\n base,\n ],\n );\n const geometry = { xDomain, yDomain, xSplit, ySplit, reverseX };\n\n const overlay = quadrantContent\n ? (plot: ChartRect) => {\n const [x0, x1] = xDomain ?? [0, 10];\n const [y0, y1] = yDomain ?? [0, 10];\n const xs = xSplit ?? (x0 + x1) / 2;\n const ys = ySplit ?? (y0 + y1) / 2;\n const fx = (xs - x0) / (x1 - x0 || 1);\n const fy = (ys - y0) / (y1 - y0 || 1);\n // split point relative to the plot area\n const sx = plot.width * (reverseX ? 1 - fx : fx);\n const sy = plot.height * (1 - fy);\n return CORNERS.map((corner) => {\n const content = quadrantContent[corner];\n if (content === undefined || content === null || content === false)\n return null;\n const left = corner.endsWith(\"Left\");\n const top = corner.startsWith(\"top\");\n return (\n <View\n key={corner}\n pointerEvents=\"box-none\"\n style={{\n position: \"absolute\",\n left: left ? 0 : sx,\n top: top ? 0 : sy,\n width: left ? sx : plot.width - sx,\n height: top ? sy : plot.height - sy,\n }}\n {...part(\"chart\", \"quadrant\", { corner })}\n >\n {content}\n </View>\n );\n });\n }\n : undefined;\n\n return (\n <ChartBase\n options={options}\n {...frameProps({\n ...props,\n onPointClick: undefined,\n renderTooltip: undefined,\n })}\n overlay={overlay}\n onPointClick={\n onPointClick\n ? (event: ChartHoverEvent) => {\n const index = event.items[0]?.index;\n if (index !== undefined && points[index])\n onPointClick(points[index], index);\n }\n : undefined\n }\n onPlotClick={\n onQuadrantClick\n ? (at) => onQuadrantClick(quadrantOf(geometry, at.x, at.y), at)\n : undefined\n }\n onDrop={\n onPointDrop\n ? (event) => {\n const index = event.item.index;\n if (!points[index]) return;\n onPointDrop(points[index], index, {\n x: event.x,\n y: event.y,\n quadrant: quadrantOf(geometry, event.x, event.y),\n });\n }\n : undefined\n }\n renderTooltip={\n renderTooltip\n ? (event) => {\n const index = event.items[0]?.index;\n return index !== undefined && points[index]\n ? renderTooltip(points[index], index)\n : null;\n }\n : undefined\n }\n />\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { BarChartProps, ChartProps, LineChartProps, QuadrantChartProps, ScatterChartProps } from './types.cjs';
1
+ import { BarChartProps, ChartProps, HorizontalBarChartProps, LineChartProps, QuadrantChartProps, ScatterChartProps } from './types.cjs';
2
2
  /**
3
3
  * Chart mixing line, area, bar and scatter series, drawn with views:
4
4
  * tap for the tooltip, pinch to zoom, drag to pan, double tap to reset.
@@ -9,6 +9,11 @@ export declare function Chart(props: ChartProps): import('react').JSX.Element;
9
9
  export declare function LineChart(props: LineChartProps): import('react').JSX.Element;
10
10
  /** Bar chart: grouped side by side, or stacked */
11
11
  export declare function BarChart(props: BarChartProps): import('react').JSX.Element;
12
+ /**
13
+ * Horizontal bar chart: categories down the left side (rankings, long
14
+ * names, surveys), grouped, stacked or with the values at the bar ends
15
+ */
16
+ export declare function HorizontalBarChart(props: HorizontalBarChartProps): import('react').JSX.Element;
12
17
  /** Scatter chart: zooms on both axes; large point sets are merged per cell */
13
18
  export declare function ScatterChart(props: ScatterChartProps): import('react').JSX.Element;
14
19
  /**
@@ -1,4 +1,4 @@
1
- import { BarChartProps, ChartProps, LineChartProps, QuadrantChartProps, ScatterChartProps } from './types.js';
1
+ import { BarChartProps, ChartProps, HorizontalBarChartProps, LineChartProps, QuadrantChartProps, ScatterChartProps } from './types.js';
2
2
  /**
3
3
  * Chart mixing line, area, bar and scatter series, drawn with views:
4
4
  * tap for the tooltip, pinch to zoom, drag to pan, double tap to reset.
@@ -9,6 +9,11 @@ export declare function Chart(props: ChartProps): import('react').JSX.Element;
9
9
  export declare function LineChart(props: LineChartProps): import('react').JSX.Element;
10
10
  /** Bar chart: grouped side by side, or stacked */
11
11
  export declare function BarChart(props: BarChartProps): import('react').JSX.Element;
12
+ /**
13
+ * Horizontal bar chart: categories down the left side (rankings, long
14
+ * names, surveys), grouped, stacked or with the values at the bar ends
15
+ */
16
+ export declare function HorizontalBarChart(props: HorizontalBarChartProps): import('react').JSX.Element;
12
17
  /** Scatter chart: zooms on both axes; large point sets are merged per cell */
13
18
  export declare function ScatterChart(props: ScatterChartProps): import('react').JSX.Element;
14
19
  /**