minerva-design 1.4.0 → 1.6.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 (824) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +21 -21
  3. package/custom-elements.json +3072 -611
  4. package/dist/angular/fesm2022/minerva-angular.mjs +1491 -5
  5. package/dist/angular/fesm2022/minerva-angular.mjs.map +1 -1
  6. package/dist/angular/types/minerva-angular.d.ts +595 -5
  7. package/dist/charts/canvas.d.cts +4 -3
  8. package/dist/charts/canvas.d.ts +4 -3
  9. package/dist/charts/core.cjs +1 -1
  10. package/dist/charts/core.d.cts +6 -4
  11. package/dist/charts/core.d.ts +6 -4
  12. package/dist/charts/core.js +24 -16
  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 +42 -19
  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.js +155 -127
  20. package/dist/charts/engine/canvas.js.map +1 -1
  21. package/dist/charts/engine/chart.cjs +1 -1
  22. package/dist/charts/engine/chart.cjs.map +1 -1
  23. package/dist/charts/engine/chart.js +370 -255
  24. package/dist/charts/engine/chart.js.map +1 -1
  25. package/dist/charts/engine/color.cjs +1 -1
  26. package/dist/charts/engine/color.cjs.map +1 -1
  27. package/dist/charts/engine/color.d.cts +18 -0
  28. package/dist/charts/engine/color.d.ts +18 -0
  29. package/dist/charts/engine/color.js +48 -2
  30. package/dist/charts/engine/color.js.map +1 -1
  31. package/dist/charts/engine/controller.cjs +2 -2
  32. package/dist/charts/engine/controller.cjs.map +1 -1
  33. package/dist/charts/engine/controller.d.cts +34 -1
  34. package/dist/charts/engine/controller.d.ts +34 -1
  35. package/dist/charts/engine/controller.js +318 -273
  36. package/dist/charts/engine/controller.js.map +1 -1
  37. package/dist/charts/engine/data.cjs +1 -1
  38. package/dist/charts/engine/data.cjs.map +1 -1
  39. package/dist/charts/engine/data.d.cts +3 -1
  40. package/dist/charts/engine/data.d.ts +3 -1
  41. package/dist/charts/engine/data.js +6 -4
  42. package/dist/charts/engine/data.js.map +1 -1
  43. package/dist/charts/engine/defaults.cjs +2 -0
  44. package/dist/charts/engine/defaults.cjs.map +1 -0
  45. package/dist/charts/engine/defaults.d.cts +20 -0
  46. package/dist/charts/engine/defaults.d.ts +20 -0
  47. package/dist/charts/engine/defaults.js +35 -0
  48. package/dist/charts/engine/defaults.js.map +1 -0
  49. package/dist/charts/engine/format.cjs +1 -1
  50. package/dist/charts/engine/format.cjs.map +1 -1
  51. package/dist/charts/engine/format.d.cts +6 -0
  52. package/dist/charts/engine/format.d.ts +6 -0
  53. package/dist/charts/engine/format.js +15 -2
  54. package/dist/charts/engine/format.js.map +1 -1
  55. package/dist/charts/engine/graph/chart.cjs +2 -0
  56. package/dist/charts/engine/graph/chart.cjs.map +1 -0
  57. package/dist/charts/engine/graph/chart.d.cts +3 -0
  58. package/dist/charts/engine/graph/chart.d.ts +3 -0
  59. package/dist/charts/engine/graph/chart.js +1708 -0
  60. package/dist/charts/engine/graph/chart.js.map +1 -0
  61. package/dist/charts/engine/graph/circular.cjs +2 -0
  62. package/dist/charts/engine/graph/circular.cjs.map +1 -0
  63. package/dist/charts/engine/graph/circular.d.cts +16 -0
  64. package/dist/charts/engine/graph/circular.d.ts +16 -0
  65. package/dist/charts/engine/graph/circular.js +62 -0
  66. package/dist/charts/engine/graph/circular.js.map +1 -0
  67. package/dist/charts/engine/graph/dag.cjs +2 -0
  68. package/dist/charts/engine/graph/dag.cjs.map +1 -0
  69. package/dist/charts/engine/graph/dag.d.cts +34 -0
  70. package/dist/charts/engine/graph/dag.d.ts +34 -0
  71. package/dist/charts/engine/graph/dag.js +339 -0
  72. package/dist/charts/engine/graph/dag.js.map +1 -0
  73. package/dist/charts/engine/graph/dom.cjs +2 -0
  74. package/dist/charts/engine/graph/dom.cjs.map +1 -0
  75. package/dist/charts/engine/graph/dom.d.cts +23 -0
  76. package/dist/charts/engine/graph/dom.d.ts +23 -0
  77. package/dist/charts/engine/graph/dom.js +158 -0
  78. package/dist/charts/engine/graph/dom.js.map +1 -0
  79. package/dist/charts/engine/graph/force.cjs +2 -0
  80. package/dist/charts/engine/graph/force.cjs.map +1 -0
  81. package/dist/charts/engine/graph/force.d.cts +76 -0
  82. package/dist/charts/engine/graph/force.d.ts +76 -0
  83. package/dist/charts/engine/graph/force.js +423 -0
  84. package/dist/charts/engine/graph/force.js.map +1 -0
  85. package/dist/charts/engine/graph/geometry.cjs +2 -0
  86. package/dist/charts/engine/graph/geometry.cjs.map +1 -0
  87. package/dist/charts/engine/graph/geometry.d.cts +50 -0
  88. package/dist/charts/engine/graph/geometry.d.ts +50 -0
  89. package/dist/charts/engine/graph/geometry.js +197 -0
  90. package/dist/charts/engine/graph/geometry.js.map +1 -0
  91. package/dist/charts/engine/graph/index.cjs +1 -0
  92. package/dist/charts/engine/graph/index.d.cts +6 -0
  93. package/dist/charts/engine/graph/index.d.ts +6 -0
  94. package/dist/charts/engine/graph/index.js +6 -0
  95. package/dist/charts/engine/graph/labels.cjs +2 -0
  96. package/dist/charts/engine/graph/labels.cjs.map +1 -0
  97. package/dist/charts/engine/graph/labels.d.cts +12 -0
  98. package/dist/charts/engine/graph/labels.d.ts +12 -0
  99. package/dist/charts/engine/graph/labels.js +128 -0
  100. package/dist/charts/engine/graph/labels.js.map +1 -0
  101. package/dist/charts/engine/graph/model.cjs +2 -0
  102. package/dist/charts/engine/graph/model.cjs.map +1 -0
  103. package/dist/charts/engine/graph/model.d.cts +52 -0
  104. package/dist/charts/engine/graph/model.d.ts +52 -0
  105. package/dist/charts/engine/graph/model.js +108 -0
  106. package/dist/charts/engine/graph/model.js.map +1 -0
  107. package/dist/charts/engine/graph/sizing.cjs +2 -0
  108. package/dist/charts/engine/graph/sizing.cjs.map +1 -0
  109. package/dist/charts/engine/graph/sizing.d.cts +33 -0
  110. package/dist/charts/engine/graph/sizing.d.ts +33 -0
  111. package/dist/charts/engine/graph/sizing.js +60 -0
  112. package/dist/charts/engine/graph/sizing.js.map +1 -0
  113. package/dist/charts/engine/graph/tree.cjs +2 -0
  114. package/dist/charts/engine/graph/tree.cjs.map +1 -0
  115. package/dist/charts/engine/graph/tree.d.cts +30 -0
  116. package/dist/charts/engine/graph/tree.d.ts +30 -0
  117. package/dist/charts/engine/graph/tree.js +218 -0
  118. package/dist/charts/engine/graph/tree.js.map +1 -0
  119. package/dist/charts/engine/graph/types.d.cts +640 -0
  120. package/dist/charts/engine/graph/types.d.ts +640 -0
  121. package/dist/charts/engine/graph/worker.cjs +52 -0
  122. package/dist/charts/engine/graph/worker.cjs.map +1 -0
  123. package/dist/charts/engine/graph/worker.d.cts +36 -0
  124. package/dist/charts/engine/graph/worker.d.ts +36 -0
  125. package/dist/charts/engine/graph/worker.js +135 -0
  126. package/dist/charts/engine/graph/worker.js.map +1 -0
  127. package/dist/charts/engine/items.cjs +1 -1
  128. package/dist/charts/engine/items.cjs.map +1 -1
  129. package/dist/charts/engine/items.d.cts +15 -2
  130. package/dist/charts/engine/items.d.ts +15 -2
  131. package/dist/charts/engine/items.js +131 -112
  132. package/dist/charts/engine/items.js.map +1 -1
  133. package/dist/charts/engine/labels.cjs +1 -1
  134. package/dist/charts/engine/labels.cjs.map +1 -1
  135. package/dist/charts/engine/labels.d.cts +17 -0
  136. package/dist/charts/engine/labels.d.ts +17 -0
  137. package/dist/charts/engine/labels.js +28 -4
  138. package/dist/charts/engine/labels.js.map +1 -1
  139. package/dist/charts/engine/layout.cjs +1 -1
  140. package/dist/charts/engine/layout.cjs.map +1 -1
  141. package/dist/charts/engine/layout.d.cts +9 -0
  142. package/dist/charts/engine/layout.d.ts +9 -0
  143. package/dist/charts/engine/layout.js +11 -2
  144. package/dist/charts/engine/layout.js.map +1 -1
  145. package/dist/charts/engine/model.cjs +1 -1
  146. package/dist/charts/engine/model.cjs.map +1 -1
  147. package/dist/charts/engine/model.d.cts +73 -3
  148. package/dist/charts/engine/model.d.ts +73 -3
  149. package/dist/charts/engine/model.js +258 -154
  150. package/dist/charts/engine/model.js.map +1 -1
  151. package/dist/charts/engine/orderbook/field.cjs +37 -0
  152. package/dist/charts/engine/orderbook/field.cjs.map +1 -0
  153. package/dist/charts/engine/orderbook/field.d.cts +92 -0
  154. package/dist/charts/engine/orderbook/field.d.ts +92 -0
  155. package/dist/charts/engine/orderbook/field.js +297 -0
  156. package/dist/charts/engine/orderbook/field.js.map +1 -0
  157. package/dist/charts/engine/orderbook/format.cjs +1 -1
  158. package/dist/charts/engine/orderbook/format.cjs.map +1 -1
  159. package/dist/charts/engine/orderbook/format.d.cts +3 -2
  160. package/dist/charts/engine/orderbook/format.d.ts +3 -2
  161. package/dist/charts/engine/orderbook/format.js +5 -5
  162. package/dist/charts/engine/orderbook/format.js.map +1 -1
  163. package/dist/charts/engine/orderbook/heatmap.cjs +1 -1
  164. package/dist/charts/engine/orderbook/heatmap.cjs.map +1 -1
  165. package/dist/charts/engine/orderbook/heatmap.js +566 -475
  166. package/dist/charts/engine/orderbook/heatmap.js.map +1 -1
  167. package/dist/charts/engine/orderbook/host.cjs +1 -1
  168. package/dist/charts/engine/orderbook/host.cjs.map +1 -1
  169. package/dist/charts/engine/orderbook/host.d.cts +8 -1
  170. package/dist/charts/engine/orderbook/host.d.ts +8 -1
  171. package/dist/charts/engine/orderbook/host.js +27 -5
  172. package/dist/charts/engine/orderbook/host.js.map +1 -1
  173. package/dist/charts/engine/orderbook/ladder.cjs +1 -1
  174. package/dist/charts/engine/orderbook/ladder.cjs.map +1 -1
  175. package/dist/charts/engine/orderbook/ladder.js +1 -1
  176. package/dist/charts/engine/orderbook/ladder.js.map +1 -1
  177. package/dist/charts/engine/orderbook/layout.cjs +2 -0
  178. package/dist/charts/engine/orderbook/layout.cjs.map +1 -0
  179. package/dist/charts/engine/orderbook/layout.d.cts +42 -0
  180. package/dist/charts/engine/orderbook/layout.d.ts +42 -0
  181. package/dist/charts/engine/orderbook/layout.js +76 -0
  182. package/dist/charts/engine/orderbook/layout.js.map +1 -0
  183. package/dist/charts/engine/orderbook/tape.cjs +1 -1
  184. package/dist/charts/engine/orderbook/tape.cjs.map +1 -1
  185. package/dist/charts/engine/orderbook/tape.js +4 -4
  186. package/dist/charts/engine/orderbook/tape.js.map +1 -1
  187. package/dist/charts/engine/orderbook/types.d.cts +27 -3
  188. package/dist/charts/engine/orderbook/types.d.ts +27 -3
  189. package/dist/charts/engine/overlay.cjs +1 -1
  190. package/dist/charts/engine/overlay.cjs.map +1 -1
  191. package/dist/charts/engine/overlay.d.cts +27 -0
  192. package/dist/charts/engine/overlay.d.ts +27 -0
  193. package/dist/charts/engine/overlay.js +34 -12
  194. package/dist/charts/engine/overlay.js.map +1 -1
  195. package/dist/charts/engine/presets.cjs +2 -2
  196. package/dist/charts/engine/presets.cjs.map +1 -1
  197. package/dist/charts/engine/presets.d.cts +35 -3
  198. package/dist/charts/engine/presets.d.ts +35 -3
  199. package/dist/charts/engine/presets.js +121 -101
  200. package/dist/charts/engine/presets.js.map +1 -1
  201. package/dist/charts/engine/renderers/canvas2d.cjs +1 -1
  202. package/dist/charts/engine/renderers/canvas2d.cjs.map +1 -1
  203. package/dist/charts/engine/renderers/canvas2d.js +13 -9
  204. package/dist/charts/engine/renderers/canvas2d.js.map +1 -1
  205. package/dist/charts/engine/renderers/detect.cjs +1 -1
  206. package/dist/charts/engine/renderers/detect.cjs.map +1 -1
  207. package/dist/charts/engine/renderers/detect.d.cts +2 -1
  208. package/dist/charts/engine/renderers/detect.d.ts +2 -1
  209. package/dist/charts/engine/renderers/detect.js +23 -21
  210. package/dist/charts/engine/renderers/detect.js.map +1 -1
  211. package/dist/charts/engine/renderers/follow.cjs +2 -0
  212. package/dist/charts/engine/renderers/follow.cjs.map +1 -0
  213. package/dist/charts/engine/renderers/follow.d.cts +8 -0
  214. package/dist/charts/engine/renderers/follow.d.ts +8 -0
  215. package/dist/charts/engine/renderers/follow.js +10 -0
  216. package/dist/charts/engine/renderers/follow.js.map +1 -0
  217. package/dist/charts/engine/renderers/gl-budget.cjs +2 -0
  218. package/dist/charts/engine/renderers/gl-budget.cjs.map +1 -0
  219. package/dist/charts/engine/renderers/gl-budget.d.cts +32 -0
  220. package/dist/charts/engine/renderers/gl-budget.d.ts +32 -0
  221. package/dist/charts/engine/renderers/gl-budget.js +95 -0
  222. package/dist/charts/engine/renderers/gl-budget.js.map +1 -0
  223. package/dist/charts/engine/renderers/gl.cjs +1 -1
  224. package/dist/charts/engine/renderers/gl.cjs.map +1 -1
  225. package/dist/charts/engine/renderers/gl.js +1 -1
  226. package/dist/charts/engine/renderers/gl.js.map +1 -1
  227. package/dist/charts/engine/renderers/shaders.cjs +9 -6
  228. package/dist/charts/engine/renderers/shaders.cjs.map +1 -1
  229. package/dist/charts/engine/renderers/shaders.d.cts +1 -1
  230. package/dist/charts/engine/renderers/shaders.d.ts +1 -1
  231. package/dist/charts/engine/renderers/shaders.js +9 -6
  232. package/dist/charts/engine/renderers/shaders.js.map +1 -1
  233. package/dist/charts/engine/renderers/types.cjs.map +1 -1
  234. package/dist/charts/engine/renderers/types.d.cts +2 -0
  235. package/dist/charts/engine/renderers/types.d.ts +2 -0
  236. package/dist/charts/engine/renderers/types.js.map +1 -1
  237. package/dist/charts/engine/renderers/webgl.cjs +1 -1
  238. package/dist/charts/engine/renderers/webgl.cjs.map +1 -1
  239. package/dist/charts/engine/renderers/webgl.js +85 -64
  240. package/dist/charts/engine/renderers/webgl.js.map +1 -1
  241. package/dist/charts/engine/renderers/webgl2.cjs +1 -1
  242. package/dist/charts/engine/renderers/webgl2.cjs.map +1 -1
  243. package/dist/charts/engine/renderers/webgl2.js +72 -58
  244. package/dist/charts/engine/renderers/webgl2.js.map +1 -1
  245. package/dist/charts/engine/renderers/webgpu.cjs +1 -1
  246. package/dist/charts/engine/renderers/webgpu.cjs.map +1 -1
  247. package/dist/charts/engine/renderers/webgpu.js +1 -1
  248. package/dist/charts/engine/renderers/webgpu.js.map +1 -1
  249. package/dist/charts/engine/scene.cjs +1 -1
  250. package/dist/charts/engine/scene.cjs.map +1 -1
  251. package/dist/charts/engine/scene.d.cts +104 -4
  252. package/dist/charts/engine/scene.d.ts +104 -4
  253. package/dist/charts/engine/scene.js +412 -193
  254. package/dist/charts/engine/scene.js.map +1 -1
  255. package/dist/charts/engine/shapes/bullet.cjs +1 -1
  256. package/dist/charts/engine/shapes/bullet.cjs.map +1 -1
  257. package/dist/charts/engine/shapes/bullet.js +110 -110
  258. package/dist/charts/engine/shapes/bullet.js.map +1 -1
  259. package/dist/charts/engine/shapes/chart.cjs +1 -1
  260. package/dist/charts/engine/shapes/chart.cjs.map +1 -1
  261. package/dist/charts/engine/shapes/chart.js +4 -1
  262. package/dist/charts/engine/shapes/chart.js.map +1 -1
  263. package/dist/charts/engine/shapes/chord.cjs +2 -0
  264. package/dist/charts/engine/shapes/chord.cjs.map +1 -0
  265. package/dist/charts/engine/shapes/chord.d.cts +18 -0
  266. package/dist/charts/engine/shapes/chord.d.ts +18 -0
  267. package/dist/charts/engine/shapes/chord.js +419 -0
  268. package/dist/charts/engine/shapes/chord.js.map +1 -0
  269. package/dist/charts/engine/shapes/draw.cjs +1 -1
  270. package/dist/charts/engine/shapes/draw.cjs.map +1 -1
  271. package/dist/charts/engine/shapes/draw.d.cts +5 -1
  272. package/dist/charts/engine/shapes/draw.d.ts +5 -1
  273. package/dist/charts/engine/shapes/draw.js +47 -17
  274. package/dist/charts/engine/shapes/draw.js.map +1 -1
  275. package/dist/charts/engine/shapes/hit.cjs +1 -1
  276. package/dist/charts/engine/shapes/hit.cjs.map +1 -1
  277. package/dist/charts/engine/shapes/hit.d.cts +3 -1
  278. package/dist/charts/engine/shapes/hit.d.ts +3 -1
  279. package/dist/charts/engine/shapes/hit.js +75 -46
  280. package/dist/charts/engine/shapes/hit.js.map +1 -1
  281. package/dist/charts/engine/shapes/index.d.cts +3 -2
  282. package/dist/charts/engine/shapes/index.d.ts +3 -2
  283. package/dist/charts/engine/shapes/labels.cjs +1 -1
  284. package/dist/charts/engine/shapes/labels.cjs.map +1 -1
  285. package/dist/charts/engine/shapes/labels.js +12 -4
  286. package/dist/charts/engine/shapes/labels.js.map +1 -1
  287. package/dist/charts/engine/shapes/layout.cjs +2 -2
  288. package/dist/charts/engine/shapes/layout.cjs.map +1 -1
  289. package/dist/charts/engine/shapes/layout.d.cts +3 -1
  290. package/dist/charts/engine/shapes/layout.d.ts +3 -1
  291. package/dist/charts/engine/shapes/layout.js +106 -78
  292. package/dist/charts/engine/shapes/layout.js.map +1 -1
  293. package/dist/charts/engine/shapes/scene.cjs +1 -1
  294. package/dist/charts/engine/shapes/scene.cjs.map +1 -1
  295. package/dist/charts/engine/shapes/scene.d.cts +33 -3
  296. package/dist/charts/engine/shapes/scene.d.ts +33 -3
  297. package/dist/charts/engine/shapes/scene.js +62 -19
  298. package/dist/charts/engine/shapes/scene.js.map +1 -1
  299. package/dist/charts/engine/shapes/types.d.cts +121 -8
  300. package/dist/charts/engine/shapes/types.d.ts +121 -8
  301. package/dist/charts/engine/signature.cjs +1 -1
  302. package/dist/charts/engine/signature.cjs.map +1 -1
  303. package/dist/charts/engine/signature.js +1 -1
  304. package/dist/charts/engine/signature.js.map +1 -1
  305. package/dist/charts/engine/three-d/canvas2d.cjs +1 -1
  306. package/dist/charts/engine/three-d/canvas2d.cjs.map +1 -1
  307. package/dist/charts/engine/three-d/canvas2d.d.cts +41 -3
  308. package/dist/charts/engine/three-d/canvas2d.d.ts +41 -3
  309. package/dist/charts/engine/three-d/canvas2d.js +166 -67
  310. package/dist/charts/engine/three-d/canvas2d.js.map +1 -1
  311. package/dist/charts/engine/three-d/chart.cjs +1 -1
  312. package/dist/charts/engine/three-d/chart.cjs.map +1 -1
  313. package/dist/charts/engine/three-d/chart.js +219 -215
  314. package/dist/charts/engine/three-d/chart.js.map +1 -1
  315. package/dist/charts/engine/three-d/detect.cjs +1 -1
  316. package/dist/charts/engine/three-d/detect.cjs.map +1 -1
  317. package/dist/charts/engine/three-d/detect.d.cts +3 -2
  318. package/dist/charts/engine/three-d/detect.d.ts +3 -2
  319. package/dist/charts/engine/three-d/detect.js +22 -20
  320. package/dist/charts/engine/three-d/detect.js.map +1 -1
  321. package/dist/charts/engine/three-d/geometry.cjs +1 -1
  322. package/dist/charts/engine/three-d/geometry.cjs.map +1 -1
  323. package/dist/charts/engine/three-d/geometry.d.cts +6 -0
  324. package/dist/charts/engine/three-d/geometry.d.ts +6 -0
  325. package/dist/charts/engine/three-d/geometry.js +106 -90
  326. package/dist/charts/engine/three-d/geometry.js.map +1 -1
  327. package/dist/charts/engine/three-d/model.cjs +1 -1
  328. package/dist/charts/engine/three-d/model.cjs.map +1 -1
  329. package/dist/charts/engine/three-d/model.d.cts +2 -0
  330. package/dist/charts/engine/three-d/model.d.ts +2 -0
  331. package/dist/charts/engine/three-d/model.js +2 -0
  332. package/dist/charts/engine/three-d/model.js.map +1 -1
  333. package/dist/charts/engine/three-d/oit.cjs +109 -0
  334. package/dist/charts/engine/three-d/oit.cjs.map +1 -0
  335. package/dist/charts/engine/three-d/oit.d.cts +34 -0
  336. package/dist/charts/engine/three-d/oit.d.ts +34 -0
  337. package/dist/charts/engine/three-d/oit.js +111 -0
  338. package/dist/charts/engine/three-d/oit.js.map +1 -0
  339. package/dist/charts/engine/three-d/overlay.cjs +1 -1
  340. package/dist/charts/engine/three-d/overlay.cjs.map +1 -1
  341. package/dist/charts/engine/three-d/overlay.js +43 -36
  342. package/dist/charts/engine/three-d/overlay.js.map +1 -1
  343. package/dist/charts/engine/three-d/render-types.cjs +1 -1
  344. package/dist/charts/engine/three-d/render-types.cjs.map +1 -1
  345. package/dist/charts/engine/three-d/render-types.d.cts +37 -3
  346. package/dist/charts/engine/three-d/render-types.d.ts +37 -3
  347. package/dist/charts/engine/three-d/render-types.js +6 -10
  348. package/dist/charts/engine/three-d/render-types.js.map +1 -1
  349. package/dist/charts/engine/three-d/shaders.cjs +109 -48
  350. package/dist/charts/engine/three-d/shaders.cjs.map +1 -1
  351. package/dist/charts/engine/three-d/shaders.d.cts +12 -5
  352. package/dist/charts/engine/three-d/shaders.d.ts +12 -5
  353. package/dist/charts/engine/three-d/shaders.js +118 -55
  354. package/dist/charts/engine/three-d/shaders.js.map +1 -1
  355. package/dist/charts/engine/three-d/sort.cjs +1 -1
  356. package/dist/charts/engine/three-d/sort.cjs.map +1 -1
  357. package/dist/charts/engine/three-d/sort.d.cts +18 -5
  358. package/dist/charts/engine/three-d/sort.d.ts +18 -5
  359. package/dist/charts/engine/three-d/sort.js +129 -43
  360. package/dist/charts/engine/three-d/sort.js.map +1 -1
  361. package/dist/charts/engine/three-d/types.d.cts +36 -0
  362. package/dist/charts/engine/three-d/types.d.ts +36 -0
  363. package/dist/charts/engine/three-d/webgl.cjs +1 -1
  364. package/dist/charts/engine/three-d/webgl.cjs.map +1 -1
  365. package/dist/charts/engine/three-d/webgl.d.cts +9 -0
  366. package/dist/charts/engine/three-d/webgl.d.ts +9 -0
  367. package/dist/charts/engine/three-d/webgl.js +199 -74
  368. package/dist/charts/engine/three-d/webgl.js.map +1 -1
  369. package/dist/charts/engine/three-d/webgpu.cjs +1 -1
  370. package/dist/charts/engine/three-d/webgpu.cjs.map +1 -1
  371. package/dist/charts/engine/three-d/webgpu.js +231 -94
  372. package/dist/charts/engine/three-d/webgpu.js.map +1 -1
  373. package/dist/charts/engine/trading/chart.cjs +1 -1
  374. package/dist/charts/engine/trading/chart.cjs.map +1 -1
  375. package/dist/charts/engine/trading/chart.d.cts +10 -1
  376. package/dist/charts/engine/trading/chart.d.ts +10 -1
  377. package/dist/charts/engine/trading/chart.js +1677 -813
  378. package/dist/charts/engine/trading/chart.js.map +1 -1
  379. package/dist/charts/engine/trading/drawings.cjs +2 -1
  380. package/dist/charts/engine/trading/drawings.cjs.map +1 -1
  381. package/dist/charts/engine/trading/drawings.d.cts +53 -9
  382. package/dist/charts/engine/trading/drawings.d.ts +53 -9
  383. package/dist/charts/engine/trading/drawings.js +346 -71
  384. package/dist/charts/engine/trading/drawings.js.map +1 -1
  385. package/dist/charts/engine/trading/format.cjs +1 -1
  386. package/dist/charts/engine/trading/format.cjs.map +1 -1
  387. package/dist/charts/engine/trading/format.d.cts +19 -0
  388. package/dist/charts/engine/trading/format.d.ts +19 -0
  389. package/dist/charts/engine/trading/format.js +65 -21
  390. package/dist/charts/engine/trading/format.js.map +1 -1
  391. package/dist/charts/engine/trading/geometry.cjs +1 -1
  392. package/dist/charts/engine/trading/geometry.cjs.map +1 -1
  393. package/dist/charts/engine/trading/geometry.d.cts +16 -0
  394. package/dist/charts/engine/trading/geometry.d.ts +16 -0
  395. package/dist/charts/engine/trading/geometry.js +19 -4
  396. package/dist/charts/engine/trading/geometry.js.map +1 -1
  397. package/dist/charts/engine/trading/index.cjs +1 -1
  398. package/dist/charts/engine/trading/index.d.cts +2 -1
  399. package/dist/charts/engine/trading/index.d.ts +2 -1
  400. package/dist/charts/engine/trading/index.js +4 -3
  401. package/dist/charts/engine/trading/indicators.cjs +1 -1
  402. package/dist/charts/engine/trading/indicators.cjs.map +1 -1
  403. package/dist/charts/engine/trading/indicators.d.cts +180 -10
  404. package/dist/charts/engine/trading/indicators.d.ts +180 -10
  405. package/dist/charts/engine/trading/indicators.js +449 -173
  406. package/dist/charts/engine/trading/indicators.js.map +1 -1
  407. package/dist/charts/engine/trading/labels.cjs +1 -1
  408. package/dist/charts/engine/trading/labels.cjs.map +1 -1
  409. package/dist/charts/engine/trading/labels.js +104 -4
  410. package/dist/charts/engine/trading/labels.js.map +1 -1
  411. package/dist/charts/engine/trading/store.cjs +1 -1
  412. package/dist/charts/engine/trading/store.cjs.map +1 -1
  413. package/dist/charts/engine/trading/store.d.cts +21 -0
  414. package/dist/charts/engine/trading/store.d.ts +21 -0
  415. package/dist/charts/engine/trading/store.js +22 -1
  416. package/dist/charts/engine/trading/store.js.map +1 -1
  417. package/dist/charts/engine/trading/studies.cjs +1 -1
  418. package/dist/charts/engine/trading/studies.cjs.map +1 -1
  419. package/dist/charts/engine/trading/studies.d.cts +49 -8
  420. package/dist/charts/engine/trading/studies.d.ts +49 -8
  421. package/dist/charts/engine/trading/studies.js +352 -93
  422. package/dist/charts/engine/trading/studies.js.map +1 -1
  423. package/dist/charts/engine/trading/sync.cjs +2 -0
  424. package/dist/charts/engine/trading/sync.cjs.map +1 -0
  425. package/dist/charts/engine/trading/sync.d.cts +8 -0
  426. package/dist/charts/engine/trading/sync.d.ts +8 -0
  427. package/dist/charts/engine/trading/sync.js +25 -0
  428. package/dist/charts/engine/trading/sync.js.map +1 -0
  429. package/dist/charts/engine/trading/types.d.cts +514 -16
  430. package/dist/charts/engine/trading/types.d.ts +514 -16
  431. package/dist/charts/engine/types.d.cts +106 -11
  432. package/dist/charts/engine/types.d.ts +106 -11
  433. package/dist/charts/index.cjs +1 -1
  434. package/dist/charts/index.d.cts +3 -2
  435. package/dist/charts/index.d.ts +3 -2
  436. package/dist/charts/index.js +30 -22
  437. package/dist/charts/react/charts.cjs +1 -1
  438. package/dist/charts/react/charts.cjs.map +1 -1
  439. package/dist/charts/react/charts.js +51 -34
  440. package/dist/charts/react/charts.js.map +1 -1
  441. package/dist/charts/react/graph.cjs +2 -0
  442. package/dist/charts/react/graph.cjs.map +1 -0
  443. package/dist/charts/react/graph.d.cts +219 -0
  444. package/dist/charts/react/graph.d.ts +219 -0
  445. package/dist/charts/react/graph.js +160 -0
  446. package/dist/charts/react/graph.js.map +1 -0
  447. package/dist/charts/react/orderbook.cjs +1 -1
  448. package/dist/charts/react/orderbook.cjs.map +1 -1
  449. package/dist/charts/react/orderbook.d.cts +3 -1
  450. package/dist/charts/react/orderbook.d.ts +3 -1
  451. package/dist/charts/react/orderbook.js +1 -0
  452. package/dist/charts/react/orderbook.js.map +1 -1
  453. package/dist/charts/react/shapes.cjs +1 -1
  454. package/dist/charts/react/shapes.cjs.map +1 -1
  455. package/dist/charts/react/shapes.d.cts +88 -4
  456. package/dist/charts/react/shapes.d.ts +88 -4
  457. package/dist/charts/react/shapes.js +55 -12
  458. package/dist/charts/react/shapes.js.map +1 -1
  459. package/dist/charts/react/three-d.cjs +1 -1
  460. package/dist/charts/react/three-d.cjs.map +1 -1
  461. package/dist/charts/react/three-d.d.cts +7 -0
  462. package/dist/charts/react/three-d.d.ts +7 -0
  463. package/dist/charts/react/three-d.js +14 -13
  464. package/dist/charts/react/three-d.js.map +1 -1
  465. package/dist/charts/react/trading.cjs +1 -1
  466. package/dist/charts/react/trading.cjs.map +1 -1
  467. package/dist/charts/react/trading.d.cts +54 -2
  468. package/dist/charts/react/trading.d.ts +54 -2
  469. package/dist/charts/react/trading.js +68 -37
  470. package/dist/charts/react/trading.js.map +1 -1
  471. package/dist/charts/react/types.d.cts +11 -0
  472. package/dist/charts/react/types.d.ts +11 -0
  473. package/dist/core/contracts.cjs +1 -1
  474. package/dist/core/contracts.cjs.map +1 -1
  475. package/dist/core/contracts.js +1 -1
  476. package/dist/core/contracts.js.map +1 -1
  477. package/dist/native/charts/src/canvas.cjs +1 -1
  478. package/dist/native/charts/src/canvas.js +5 -4
  479. package/dist/native/charts/src/engine/axis.cjs +1 -1
  480. package/dist/native/charts/src/engine/axis.cjs.map +1 -1
  481. package/dist/native/charts/src/engine/axis.js +42 -19
  482. package/dist/native/charts/src/engine/axis.js.map +1 -1
  483. package/dist/native/charts/src/engine/color.cjs +1 -1
  484. package/dist/native/charts/src/engine/color.cjs.map +1 -1
  485. package/dist/native/charts/src/engine/color.js +47 -5
  486. package/dist/native/charts/src/engine/color.js.map +1 -1
  487. package/dist/native/charts/src/engine/controller.cjs +2 -2
  488. package/dist/native/charts/src/engine/controller.cjs.map +1 -1
  489. package/dist/native/charts/src/engine/controller.js +296 -251
  490. package/dist/native/charts/src/engine/controller.js.map +1 -1
  491. package/dist/native/charts/src/engine/data.cjs +1 -1
  492. package/dist/native/charts/src/engine/data.cjs.map +1 -1
  493. package/dist/native/charts/src/engine/data.js +6 -4
  494. package/dist/native/charts/src/engine/data.js.map +1 -1
  495. package/dist/native/charts/src/engine/format.cjs +1 -1
  496. package/dist/native/charts/src/engine/format.cjs.map +1 -1
  497. package/dist/native/charts/src/engine/format.js +15 -2
  498. package/dist/native/charts/src/engine/format.js.map +1 -1
  499. package/dist/native/charts/src/engine/labels.cjs +1 -1
  500. package/dist/native/charts/src/engine/labels.cjs.map +1 -1
  501. package/dist/native/charts/src/engine/labels.js +42 -5
  502. package/dist/native/charts/src/engine/labels.js.map +1 -1
  503. package/dist/native/charts/src/engine/layout.cjs +1 -1
  504. package/dist/native/charts/src/engine/layout.cjs.map +1 -1
  505. package/dist/native/charts/src/engine/layout.js +11 -2
  506. package/dist/native/charts/src/engine/layout.js.map +1 -1
  507. package/dist/native/charts/src/engine/model.cjs +1 -1
  508. package/dist/native/charts/src/engine/model.cjs.map +1 -1
  509. package/dist/native/charts/src/engine/model.js +278 -174
  510. package/dist/native/charts/src/engine/model.js.map +1 -1
  511. package/dist/native/charts/src/engine/overlay.cjs.map +1 -1
  512. package/dist/native/charts/src/engine/overlay.js.map +1 -1
  513. package/dist/native/charts/src/engine/presets.cjs +2 -2
  514. package/dist/native/charts/src/engine/presets.cjs.map +1 -1
  515. package/dist/native/charts/src/engine/presets.js +110 -90
  516. package/dist/native/charts/src/engine/presets.js.map +1 -1
  517. package/dist/native/charts/src/engine/scene.cjs +1 -1
  518. package/dist/native/charts/src/engine/scene.cjs.map +1 -1
  519. package/dist/native/charts/src/engine/scene.js +421 -202
  520. package/dist/native/charts/src/engine/scene.js.map +1 -1
  521. package/dist/native/charts/src/engine/shapes/bullet.cjs +1 -1
  522. package/dist/native/charts/src/engine/shapes/bullet.cjs.map +1 -1
  523. package/dist/native/charts/src/engine/shapes/bullet.js +110 -110
  524. package/dist/native/charts/src/engine/shapes/bullet.js.map +1 -1
  525. package/dist/native/charts/src/engine/shapes/calendar.cjs +1 -1
  526. package/dist/native/charts/src/engine/shapes/calendar.cjs.map +1 -1
  527. package/dist/native/charts/src/engine/shapes/calendar.js +21 -16
  528. package/dist/native/charts/src/engine/shapes/calendar.js.map +1 -1
  529. package/dist/native/charts/src/engine/shapes/chord.cjs +2 -0
  530. package/dist/native/charts/src/engine/shapes/chord.cjs.map +1 -0
  531. package/dist/native/charts/src/engine/shapes/chord.js +419 -0
  532. package/dist/native/charts/src/engine/shapes/chord.js.map +1 -0
  533. package/dist/native/charts/src/engine/shapes/draw.cjs +1 -1
  534. package/dist/native/charts/src/engine/shapes/draw.cjs.map +1 -1
  535. package/dist/native/charts/src/engine/shapes/draw.js +47 -17
  536. package/dist/native/charts/src/engine/shapes/draw.js.map +1 -1
  537. package/dist/native/charts/src/engine/shapes/hit.cjs +1 -1
  538. package/dist/native/charts/src/engine/shapes/hit.cjs.map +1 -1
  539. package/dist/native/charts/src/engine/shapes/hit.js +73 -44
  540. package/dist/native/charts/src/engine/shapes/hit.js.map +1 -1
  541. package/dist/native/charts/src/engine/shapes/labels.cjs +1 -1
  542. package/dist/native/charts/src/engine/shapes/labels.cjs.map +1 -1
  543. package/dist/native/charts/src/engine/shapes/labels.js +12 -4
  544. package/dist/native/charts/src/engine/shapes/labels.js.map +1 -1
  545. package/dist/native/charts/src/engine/shapes/layout.cjs +2 -2
  546. package/dist/native/charts/src/engine/shapes/layout.cjs.map +1 -1
  547. package/dist/native/charts/src/engine/shapes/layout.js +136 -94
  548. package/dist/native/charts/src/engine/shapes/layout.js.map +1 -1
  549. package/dist/native/charts/src/engine/shapes/scene.cjs +1 -1
  550. package/dist/native/charts/src/engine/shapes/scene.cjs.map +1 -1
  551. package/dist/native/charts/src/engine/shapes/scene.js +62 -19
  552. package/dist/native/charts/src/engine/shapes/scene.js.map +1 -1
  553. package/dist/native/components/Chart/ChartBase.cjs +1 -1
  554. package/dist/native/components/Chart/ChartBase.cjs.map +1 -1
  555. package/dist/native/components/Chart/ChartBase.js +127 -115
  556. package/dist/native/components/Chart/ChartBase.js.map +1 -1
  557. package/dist/native/components/Chart/charts.cjs +1 -1
  558. package/dist/native/components/Chart/charts.cjs.map +1 -1
  559. package/dist/native/components/Chart/charts.js +8 -5
  560. package/dist/native/components/Chart/charts.js.map +1 -1
  561. package/dist/native/components/Chart/scene.cjs +1 -1
  562. package/dist/native/components/Chart/scene.cjs.map +1 -1
  563. package/dist/native/components/Chart/scene.d.cts +6 -1
  564. package/dist/native/components/Chart/scene.d.ts +6 -1
  565. package/dist/native/components/Chart/scene.js +226 -108
  566. package/dist/native/components/Chart/scene.js.map +1 -1
  567. package/dist/native/components/Chart/types.d.cts +7 -1
  568. package/dist/native/components/Chart/types.d.ts +7 -1
  569. package/dist/native/components/Charts/charts.cjs +1 -1
  570. package/dist/native/components/Charts/charts.cjs.map +1 -1
  571. package/dist/native/components/Charts/charts.js +60 -43
  572. package/dist/native/components/Charts/charts.js.map +1 -1
  573. package/dist/native/components/Charts/types.d.cts +11 -0
  574. package/dist/native/components/Charts/types.d.ts +11 -0
  575. package/dist/native/components/ShapeChart/ShapeChartBase.cjs +1 -1
  576. package/dist/native/components/ShapeChart/ShapeChartBase.cjs.map +1 -1
  577. package/dist/native/components/ShapeChart/ShapeChartBase.d.cts +1 -1
  578. package/dist/native/components/ShapeChart/ShapeChartBase.d.ts +1 -1
  579. package/dist/native/components/ShapeChart/ShapeChartBase.js +97 -106
  580. package/dist/native/components/ShapeChart/ShapeChartBase.js.map +1 -1
  581. package/dist/native/components/ShapeChart/charts.cjs +1 -1
  582. package/dist/native/components/ShapeChart/charts.cjs.map +1 -1
  583. package/dist/native/components/ShapeChart/charts.d.cts +6 -1
  584. package/dist/native/components/ShapeChart/charts.d.ts +6 -1
  585. package/dist/native/components/ShapeChart/charts.js +138 -96
  586. package/dist/native/components/ShapeChart/charts.js.map +1 -1
  587. package/dist/native/components/ShapeChart/draw.cjs +1 -1
  588. package/dist/native/components/ShapeChart/draw.cjs.map +1 -1
  589. package/dist/native/components/ShapeChart/draw.d.cts +1 -1
  590. package/dist/native/components/ShapeChart/draw.d.ts +1 -1
  591. package/dist/native/components/ShapeChart/draw.js +26 -17
  592. package/dist/native/components/ShapeChart/draw.js.map +1 -1
  593. package/dist/native/components/ShapeChart/geometry.cjs +1 -1
  594. package/dist/native/components/ShapeChart/geometry.cjs.map +1 -1
  595. package/dist/native/components/ShapeChart/geometry.js +233 -70
  596. package/dist/native/components/ShapeChart/geometry.js.map +1 -1
  597. package/dist/native/components/ShapeChart/index.cjs +1 -1
  598. package/dist/native/components/ShapeChart/index.d.cts +1 -1
  599. package/dist/native/components/ShapeChart/index.d.ts +1 -1
  600. package/dist/native/components/ShapeChart/index.js +2 -2
  601. package/dist/native/components/ShapeChart/recorder.cjs +1 -1
  602. package/dist/native/components/ShapeChart/recorder.cjs.map +1 -1
  603. package/dist/native/components/ShapeChart/recorder.d.cts +10 -1
  604. package/dist/native/components/ShapeChart/recorder.d.ts +10 -1
  605. package/dist/native/components/ShapeChart/recorder.js +19 -10
  606. package/dist/native/components/ShapeChart/recorder.js.map +1 -1
  607. package/dist/native/components/ShapeChart/types.d.cts +95 -8
  608. package/dist/native/components/ShapeChart/types.d.ts +95 -8
  609. package/dist/native/index.cjs +1 -1
  610. package/dist/native/index.js +2 -2
  611. package/dist/native/source/components/Chart/ChartBase.tsx +19 -6
  612. package/dist/native/source/components/Chart/charts.tsx +10 -3
  613. package/dist/native/source/components/Chart/scene.tsx +243 -14
  614. package/dist/native/source/components/Chart/types.ts +7 -0
  615. package/dist/native/source/components/Charts/charts.tsx +37 -2
  616. package/dist/native/source/components/Charts/types.ts +11 -0
  617. package/dist/native/source/components/ShapeChart/ShapeChartBase.tsx +10 -34
  618. package/dist/native/source/components/ShapeChart/charts.tsx +91 -35
  619. package/dist/native/source/components/ShapeChart/draw.tsx +39 -8
  620. package/dist/native/source/components/ShapeChart/geometry.ts +376 -25
  621. package/dist/native/source/components/ShapeChart/index.ts +1 -0
  622. package/dist/native/source/components/ShapeChart/recorder.ts +20 -5
  623. package/dist/native/source/components/ShapeChart/types.ts +99 -6
  624. package/dist/native/source/manifest.ts +1 -0
  625. package/dist/taro/chart-a11y.d.ts +7 -0
  626. package/dist/taro/charts.d.ts +29 -6
  627. package/dist/taro/index.js +3129 -1902
  628. package/dist/taro/shape-charts.d.ts +99 -5
  629. package/dist/uni/AreaChart.vue +2 -1
  630. package/dist/uni/AreaChart.vue.d.ts +5 -1
  631. package/dist/uni/Badge.vue.d.ts +1 -1
  632. package/dist/uni/BarChart.vue +2 -1
  633. package/dist/uni/BarChart.vue.d.ts +5 -1
  634. package/dist/uni/BoxPlotChart.vue +2 -1
  635. package/dist/uni/BoxPlotChart.vue.d.ts +8 -0
  636. package/dist/uni/BubbleChart.vue +2 -1
  637. package/dist/uni/BubbleChart.vue.d.ts +4 -0
  638. package/dist/uni/BulletChart.vue.d.ts +4 -0
  639. package/dist/uni/CalendarHeatmap.vue.d.ts +2 -0
  640. package/dist/uni/CandlestickChart.vue +2 -1
  641. package/dist/uni/CandlestickChart.vue.d.ts +4 -0
  642. package/dist/uni/Chart.vue +2 -1
  643. package/dist/uni/Chart.vue.d.ts +4 -0
  644. package/dist/uni/ChordChart.vue +93 -0
  645. package/dist/uni/ChordChart.vue.d.ts +136 -0
  646. package/dist/uni/Divider.vue.d.ts +1 -1
  647. package/dist/uni/DonutChart.vue.d.ts +5 -1
  648. package/dist/uni/FunnelChart.vue.d.ts +4 -0
  649. package/dist/uni/GanttChart.vue +2 -1
  650. package/dist/uni/GanttChart.vue.d.ts +15 -0
  651. package/dist/uni/GaugeChart.vue.d.ts +5 -1
  652. package/dist/uni/HeatmapChart.vue +2 -1
  653. package/dist/uni/HeatmapChart.vue.d.ts +8 -2
  654. package/dist/uni/HistogramChart.vue +2 -1
  655. package/dist/uni/HistogramChart.vue.d.ts +4 -0
  656. package/dist/uni/HorizontalBarChart.vue +2 -1
  657. package/dist/uni/HorizontalBarChart.vue.d.ts +3 -1
  658. package/dist/uni/LineChart.vue +2 -1
  659. package/dist/uni/LineChart.vue.d.ts +4 -0
  660. package/dist/uni/MixedChart.vue +2 -1
  661. package/dist/uni/MixedChart.vue.d.ts +4 -0
  662. package/dist/uni/PieChart.vue.d.ts +5 -1
  663. package/dist/uni/QuadrantChart.vue +2 -1
  664. package/dist/uni/QuadrantChart.vue.d.ts +4 -0
  665. package/dist/uni/RadarChart.vue.d.ts +4 -0
  666. package/dist/uni/RadialBarChart.vue.d.ts +4 -0
  667. package/dist/uni/RangeAreaChart.vue +2 -1
  668. package/dist/uni/RangeAreaChart.vue.d.ts +4 -0
  669. package/dist/uni/SankeyChart.vue.d.ts +4 -0
  670. package/dist/uni/ScatterChart.vue +2 -1
  671. package/dist/uni/ScatterChart.vue.d.ts +4 -0
  672. package/dist/uni/Sparkline.vue +2 -1
  673. package/dist/uni/Sparkline.vue.d.ts +4 -0
  674. package/dist/uni/SunburstChart.vue.d.ts +4 -0
  675. package/dist/uni/ToastProvider.vue.d.ts +1 -1
  676. package/dist/uni/TreemapChart.vue.d.ts +4 -0
  677. package/dist/uni/WaterfallChart.vue +2 -1
  678. package/dist/uni/WaterfallChart.vue.d.ts +9 -0
  679. package/dist/uni/chart-a11y.d.ts +7 -0
  680. package/dist/uni/chart-a11y.js +29 -0
  681. package/dist/uni/chart-canvas.d.ts +12 -0
  682. package/dist/uni/chart-canvas.js +15 -1
  683. package/dist/uni/chart-types.d.ts +36 -5
  684. package/dist/uni/chart-types.js +31 -3
  685. package/dist/uni/charts-canvas.js +3 -2
  686. package/dist/uni/index.d.ts +2 -1
  687. package/dist/uni/index.js +1 -0
  688. package/dist/uni/manifest.d.ts +7 -0
  689. package/dist/uni/manifest.js +10 -0
  690. package/dist/uni/named-chart-options.d.ts +11 -2
  691. package/dist/uni/named-chart-options.js +21 -1
  692. package/dist/uni/shape-chart-canvas.d.ts +3 -3
  693. package/dist/uni/shape-chart-canvas.js +17 -58
  694. package/dist/uni/shape-chart-types.d.ts +53 -3
  695. package/dist/uni/shape-chart-types.js +45 -1
  696. package/dist/vue/charts-global.d.ts +48 -0
  697. package/dist/vue/charts.d.ts +18 -0
  698. package/dist/vue/charts.js +56 -0
  699. package/dist/vue/charts.js.map +1 -0
  700. package/dist/vue/components/Chart/Bar3DChart.vue.d.ts +2 -0
  701. package/dist/vue/components/Chart/BoxPlotChart.vue.d.ts +8 -0
  702. package/dist/vue/components/Chart/BoxPlotChart.vue.js.map +1 -1
  703. package/dist/vue/components/Chart/BoxPlotChart.vue_vue_type_script_setup_true_lang.js +8 -2
  704. package/dist/vue/components/Chart/BoxPlotChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  705. package/dist/vue/components/Chart/ChordChart.vue.d.ts +153 -0
  706. package/dist/vue/components/Chart/ChordChart.vue.js +7 -0
  707. package/dist/vue/components/Chart/ChordChart.vue.js.map +1 -0
  708. package/dist/vue/components/Chart/ChordChart.vue_vue_type_script_setup_true_lang.js +81 -0
  709. package/dist/vue/components/Chart/ChordChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  710. package/dist/vue/components/Chart/DependencyGraph.vue.d.ts +181 -0
  711. package/dist/vue/components/Chart/DependencyGraph.vue.js +7 -0
  712. package/dist/vue/components/Chart/DependencyGraph.vue.js.map +1 -0
  713. package/dist/vue/components/Chart/DependencyGraph.vue_vue_type_script_setup_true_lang.js +65 -0
  714. package/dist/vue/components/Chart/DependencyGraph.vue_vue_type_script_setup_true_lang.js.map +1 -0
  715. package/dist/vue/components/Chart/GanttChart.vue.d.ts +19 -0
  716. package/dist/vue/components/Chart/GanttChart.vue.js.map +1 -1
  717. package/dist/vue/components/Chart/GanttChart.vue_vue_type_script_setup_true_lang.js +12 -1
  718. package/dist/vue/components/Chart/GanttChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  719. package/dist/vue/components/Chart/GraphChart.vue.d.ts +186 -0
  720. package/dist/vue/components/Chart/GraphChart.vue.js +7 -0
  721. package/dist/vue/components/Chart/GraphChart.vue.js.map +1 -0
  722. package/dist/vue/components/Chart/GraphChart.vue_vue_type_script_setup_true_lang.js +62 -0
  723. package/dist/vue/components/Chart/GraphChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  724. package/dist/vue/components/Chart/HeatmapChart.vue.d.ts +9 -5
  725. package/dist/vue/components/Chart/HeatmapChart.vue.js.map +1 -1
  726. package/dist/vue/components/Chart/HeatmapChart.vue_vue_type_script_setup_true_lang.js +3 -1
  727. package/dist/vue/components/Chart/HeatmapChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  728. package/dist/vue/components/Chart/Line3DChart.vue.d.ts +2 -0
  729. package/dist/vue/components/Chart/OrderBookHeatmap.vue.d.ts +2 -0
  730. package/dist/vue/components/Chart/Scatter3DChart.vue.d.ts +2 -0
  731. package/dist/vue/components/Chart/Surface3DChart.vue.d.ts +2 -0
  732. package/dist/vue/components/Chart/TimeAndSales.vue.d.ts +2 -0
  733. package/dist/vue/components/Chart/TradingChart.vue.d.ts +58 -1
  734. package/dist/vue/components/Chart/TradingChart.vue.js.map +1 -1
  735. package/dist/vue/components/Chart/TradingChart.vue_vue_type_script_setup_true_lang.js +31 -0
  736. package/dist/vue/components/Chart/TradingChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  737. package/dist/vue/components/Chart/TreeChart.vue.d.ts +174 -0
  738. package/dist/vue/components/Chart/TreeChart.vue.js +7 -0
  739. package/dist/vue/components/Chart/TreeChart.vue.js.map +1 -0
  740. package/dist/vue/components/Chart/TreeChart.vue_vue_type_script_setup_true_lang.js +56 -0
  741. package/dist/vue/components/Chart/TreeChart.vue_vue_type_script_setup_true_lang.js.map +1 -0
  742. package/dist/vue/components/Chart/WaterfallChart.vue.d.ts +12 -1
  743. package/dist/vue/components/Chart/WaterfallChart.vue.js.map +1 -1
  744. package/dist/vue/components/Chart/WaterfallChart.vue_vue_type_script_setup_true_lang.js +8 -2
  745. package/dist/vue/components/Chart/WaterfallChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  746. package/dist/vue/components/Chart/graph.d.ts +156 -0
  747. package/dist/vue/components/Chart/graph.js +137 -0
  748. package/dist/vue/components/Chart/graph.js.map +1 -0
  749. package/dist/vue/components/Chart/index.d.ts +5 -1
  750. package/dist/vue/components/Chart/index.js +5 -1
  751. package/dist/vue/components/Chart/orderbook.d.ts +5 -1
  752. package/dist/vue/components/Chart/orderbook.js +2 -0
  753. package/dist/vue/components/Chart/orderbook.js.map +1 -1
  754. package/dist/vue/components/Chart/three-d.d.ts +3 -0
  755. package/dist/vue/components/Chart/three-d.js +2 -0
  756. package/dist/vue/components/Chart/three-d.js.map +1 -1
  757. package/dist/vue/components/Chart/trading.d.ts +30 -3
  758. package/dist/vue/components/Chart/trading.js +9 -0
  759. package/dist/vue/components/Chart/trading.js.map +1 -1
  760. package/dist/vue/components/Chart/types.d.ts +74 -2
  761. package/dist/vue/global.d.ts +2 -38
  762. package/dist/vue/groups/charts.js +10 -2
  763. package/dist/vue/groups/charts.js.map +1 -1
  764. package/dist/vue/index.js +6 -2
  765. package/dist/vue/internal/register.d.ts +7 -0
  766. package/dist/vue/internal/register.js +14 -0
  767. package/dist/vue/internal/register.js.map +1 -0
  768. package/dist/vue/plugin.d.ts +9 -4
  769. package/dist/vue/plugin.js +6 -11
  770. package/dist/vue/plugin.js.map +1 -1
  771. package/dist/weapp/area-chart/index.wxml +1 -1
  772. package/dist/weapp/bar-chart/index.wxml +1 -1
  773. package/dist/weapp/box-plot-chart/index.wxml +1 -1
  774. package/dist/weapp/bubble-chart/index.wxml +1 -1
  775. package/dist/weapp/candlestick-chart/index.wxml +1 -1
  776. package/dist/weapp/chart/index.wxml +1 -1
  777. package/dist/weapp/charts/canvas.js +1987 -175
  778. package/dist/weapp/charts/core.js +3 -0
  779. package/dist/weapp/chord-chart/index.js +1 -0
  780. package/dist/weapp/chord-chart/index.json +1 -0
  781. package/dist/weapp/chord-chart/index.wxml +1 -0
  782. package/dist/weapp/chord-chart/index.wxss +1 -0
  783. package/dist/weapp/controls.js +148 -57
  784. package/dist/weapp/gantt-chart/index.wxml +1 -1
  785. package/dist/weapp/heatmap-chart/index.wxml +1 -1
  786. package/dist/weapp/histogram-chart/index.wxml +1 -1
  787. package/dist/weapp/horizontal-bar-chart/index.wxml +1 -1
  788. package/dist/weapp/line-chart/index.wxml +1 -1
  789. package/dist/weapp/mixed-chart/index.wxml +1 -1
  790. package/dist/weapp/quadrant-chart/index.wxml +1 -1
  791. package/dist/weapp/range-area-chart/index.wxml +1 -1
  792. package/dist/weapp/scatter-chart/index.wxml +1 -1
  793. package/dist/weapp/sparkline/index.wxml +1 -1
  794. package/dist/weapp/types.d.ts +96 -4
  795. package/dist/weapp/waterfall-chart/index.wxml +1 -1
  796. package/dist/web-components/components/chart/charts.d.ts +4 -2
  797. package/dist/web-components/components/chart/charts.js +8 -1
  798. package/dist/web-components/components/chart/charts.js.map +1 -1
  799. package/dist/web-components/components/chart/extended.d.ts +21 -7
  800. package/dist/web-components/components/chart/extended.js +29 -9
  801. package/dist/web-components/components/chart/extended.js.map +1 -1
  802. package/dist/web-components/components/chart/shapes-extended.d.ts +37 -1
  803. package/dist/web-components/components/chart/shapes-extended.js +27 -1
  804. package/dist/web-components/components/chart/shapes-extended.js.map +1 -1
  805. package/dist/web-components/components/chart-3d/chart-3d.d.ts +1 -1
  806. package/dist/web-components/components/chart-3d/chart-3d.js.map +1 -1
  807. package/dist/web-components/components/graph/graph.d.ts +156 -0
  808. package/dist/web-components/components/graph/graph.js +150 -0
  809. package/dist/web-components/components/graph/graph.js.map +1 -0
  810. package/dist/web-components/components/trading-chart/trading-chart.d.ts +49 -2
  811. package/dist/web-components/components/trading-chart/trading-chart.js +62 -0
  812. package/dist/web-components/components/trading-chart/trading-chart.js.map +1 -1
  813. package/dist/web-components/elements/chart.d.ts +1 -1
  814. package/dist/web-components/elements/chart.js +6 -5
  815. package/dist/web-components/elements/chart.js.map +1 -1
  816. package/dist/web-components/elements/graph.d.ts +2 -0
  817. package/dist/web-components/elements/graph.js +12 -0
  818. package/dist/web-components/elements/graph.js.map +1 -0
  819. package/dist/web-components/html-custom-data.json +318 -4
  820. package/dist/web-components/types/react.d.ts +63 -4
  821. package/dist/web-components/types/solid.d.ts +55 -8
  822. package/dist/web-components/types/svelte.d.ts +55 -8
  823. package/dist/web-components/types/vue.d.ts +55 -4
  824. package/package.json +16 -1
@@ -1,8 +1,9 @@
1
1
  import { packColor as e } from "./color.js";
2
2
  import { curvePoints as t } from "./curve.js";
3
- import { GAP as n } from "./renderers/types.js";
3
+ import { heatCellStyle as n } from "./layout.js";
4
+ import { GAP as r } from "./renderers/types.js";
4
5
  //#region src/engine/items.ts
5
- var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
6
+ var i = (e, t) => Number.isFinite(e) ? e - t : r, a = {
6
7
  heatmap: 0,
7
8
  area: 1,
8
9
  bar: 2,
@@ -10,7 +11,7 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
10
11
  candlestick: 3,
11
12
  line: 4,
12
13
  scatter: 5
13
- }, a = (e) => {
14
+ }, o = (e) => {
14
15
  let { x: n, count: r } = e.cols, i = e.stackTop ?? e.cols.y, a = e.stackBase;
15
16
  if (e.curve === "linear") return {
16
17
  n: r,
@@ -25,7 +26,7 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
25
26
  yAt: (e) => c[e * 2 + 1],
26
27
  baseAt: s ? (e) => s[e * 2 + 1] : null
27
28
  };
28
- }, o = (e, t, n, r, i, a) => {
29
+ }, s = (e, t, n, r, i, a) => {
29
30
  let o = /* @__PURE__ */ new ArrayBuffer(r * 16), s = new Float32Array(o), c = new Uint32Array(o);
30
31
  for (let e = 0; e < r; e++) i(e, s, c);
31
32
  return {
@@ -37,148 +38,166 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
37
38
  count: r,
38
39
  ...a
39
40
  };
40
- }, s = (t, s, u) => {
41
- let d = [], f = [], p = t.series.filter((e) => !e.hidden).sort((e, t) => i[e.type] - i[t.type] || e.index - t.index);
42
- for (let i of p) {
43
- let { x: p, y: m, count: h, sorted: g } = i.cols;
44
- switch ((i.type === "line" || i.type === "scatter") && f.length && d.push(...f.splice(0)), i.type) {
41
+ }, c = (e, t) => {
42
+ if (!t) return {
43
+ inset: .5,
44
+ radius: Math.min(e.radius, 2)
45
+ };
46
+ let r = n(e.cellHalf.x * 2 * t.x, e.cellHalf.y * 2 * t.y, e.radius);
47
+ return {
48
+ inset: Math.max(.5, r.inset),
49
+ radius: r.radius
50
+ };
51
+ }, l = (e, t) => {
52
+ let n = "";
53
+ for (let r of e.series) {
54
+ if (r.type !== "heatmap" || r.hidden) continue;
55
+ let e = c(r, t);
56
+ n += `${e.inset}/${e.radius};`;
57
+ }
58
+ return n;
59
+ }, u = (t, n, l, u) => {
60
+ let p = [], m = [], h = t.series.filter((e) => !e.hidden).sort((e, t) => a[e.type] - a[t.type] || e.index - t.index);
61
+ for (let a of h) {
62
+ let { x: h, y: g, count: _, sorted: v } = a.cols;
63
+ switch ((a.type === "line" || a.type === "scatter") && m.length && p.push(...m.splice(0)), a.type) {
45
64
  case "line":
46
65
  case "area": {
47
- let { n: e, xAt: o, yAt: c, baseAt: l } = a(i), h = new Float32Array(e * 2);
48
- if (i.curve === "linear") {
49
- let t = i.stackTop ?? m, r = s.x, a = s.y;
50
- for (let i = 0; i < e; i++) {
51
- let e = p[i], o = t[i];
52
- h[i * 2] = Number.isFinite(e) ? e - r : n, h[i * 2 + 1] = Number.isFinite(o) ? o - a : n;
66
+ let { n: e, xAt: s, yAt: c, baseAt: u } = o(a), d = new Float32Array(e * 2);
67
+ if (a.curve === "linear") {
68
+ let t = a.stackTop ?? g, i = n.x, o = n.y;
69
+ for (let n = 0; n < e; n++) {
70
+ let e = h[n], a = t[n];
71
+ d[n * 2] = Number.isFinite(e) ? e - i : r, d[n * 2 + 1] = Number.isFinite(a) ? a - o : r;
53
72
  }
54
- } else for (let t = 0; t < e; t++) h[t * 2] = r(o(t), s.x), h[t * 2 + 1] = r(c(t), s.y);
55
- if (i.type === "area") {
56
- let n = new Float32Array(e * 3), a = t.baseline - s.y;
57
- for (let t = 0; t < e; t++) n[t * 3] = h[t * 2], n[t * 3 + 1] = h[t * 2 + 1], n[t * 3 + 2] = l ? r(l(t), s.y) : a;
58
- d.push({
73
+ } else for (let t = 0; t < e; t++) d[t * 2] = i(s(t), n.x), d[t * 2 + 1] = i(c(t), n.y);
74
+ if (a.type === "area") {
75
+ let r = new Float32Array(e * 3), o = t.baseline - n.y;
76
+ for (let t = 0; t < e; t++) r[t * 3] = d[t * 2], r[t * 3 + 1] = d[t * 2 + 1], r[t * 3 + 2] = u ? i(u(t), n.y) : o;
77
+ p.push({
59
78
  kind: "area",
60
- key: `${i.key}:area`,
61
- version: u,
62
- color: i.color,
63
- points: n,
79
+ key: `${a.key}:area`,
80
+ version: l,
81
+ color: a.color,
82
+ points: r,
64
83
  count: e,
65
- opacity: i.opacity,
66
- sorted: g
84
+ opacity: a.opacity,
85
+ sorted: v
67
86
  });
68
87
  }
69
- if (i.lineWidth <= 0) break;
70
- if ((i.type === "area" ? f : d).push({
88
+ if (a.lineWidth <= 0) break;
89
+ if ((a.type === "area" ? m : p).push({
71
90
  kind: "line",
72
- key: `${i.key}:line`,
73
- version: u,
74
- color: i.color,
75
- points: h,
91
+ key: `${a.key}:line`,
92
+ version: l,
93
+ color: a.color,
94
+ points: d,
76
95
  count: e,
77
- width: i.lineWidth,
78
- sorted: g
79
- }), i.type === "area" && i.cols.y0 && l) {
96
+ width: a.lineWidth,
97
+ sorted: v
98
+ }), a.type === "area" && a.cols.y0 && u) {
80
99
  let t = new Float32Array(e * 2);
81
- for (let n = 0; n < e; n++) t[n * 2] = h[n * 2], t[n * 2 + 1] = r(l(n), s.y);
82
- f.push({
100
+ for (let r = 0; r < e; r++) t[r * 2] = d[r * 2], t[r * 2 + 1] = i(u(r), n.y);
101
+ m.push({
83
102
  kind: "line",
84
- key: `${i.key}:lower`,
85
- version: u,
86
- color: i.color,
103
+ key: `${a.key}:lower`,
104
+ version: l,
105
+ color: a.color,
87
106
  points: t,
88
107
  count: e,
89
- width: i.lineWidth,
90
- sorted: g
108
+ width: a.lineWidth,
109
+ sorted: v
91
110
  });
92
111
  }
93
112
  break;
94
113
  }
95
114
  case "bar": {
96
- let a = i.barBase ?? new Float64Array(h), l = i.barTop ?? m, f = (e) => i.opacity < 1 ? [
115
+ let o = a.barBase ?? new Float64Array(_), c = a.barTop ?? g, u = (e) => a.opacity < 1 ? [
97
116
  e[0],
98
117
  e[1],
99
118
  e[2],
100
- e[3] * i.opacity
101
- ] : e, _ = e(f(i.color)), v = !i.floating && t.series.some((e) => e !== i && !e.hidden && e.type === "bar" && !e.floating && e.barOffset === i.barOffset), y = i.barHalfWidth > 0 && c(t, i);
102
- d.push(o(`${i.key}:bar`, u, i, h, (t, o, c) => {
103
- let u = Number.isFinite(l[t]) && Number.isFinite(a[t]);
104
- o[t * 4] = r(p[t] + i.barOffset, s.x), o[t * 4 + 1] = u ? a[t] - s.y : n, o[t * 4 + 2] = u ? l[t] - s.y : n;
105
- let d = i.pointColors?.[t];
106
- c[t * 4 + 3] = d ? e(f(d)) : _;
119
+ e[3] * a.opacity
120
+ ] : e, f = e(u(a.color)), m = !a.floating && t.series.some((e) => e !== a && !e.hidden && e.type === "bar" && !e.floating && e.barOffset === a.barOffset), y = a.barHalfWidth > 0 && d(t, a);
121
+ p.push(s(`${a.key}:bar`, l, a, _, (t, s, l) => {
122
+ let d = Number.isFinite(c[t]) && Number.isFinite(o[t]);
123
+ s[t * 4] = i(h[t] + a.barOffset, n.x), s[t * 4 + 1] = d ? o[t] - n.y : r, s[t * 4 + 2] = d ? c[t] - n.y : r;
124
+ let p = a.pointColors?.[t];
125
+ l[t * 4 + 3] = p ? e(u(p)) : f;
107
126
  }, {
108
- halfWidth: i.barHalfWidth,
109
- radius: v ? 0 : i.radius,
127
+ halfWidth: a.barHalfWidth,
128
+ radius: m ? 0 : a.radius,
110
129
  inset: y ? .5 : 0,
111
130
  minHalf: 0,
112
- sorted: g
131
+ sorted: v
113
132
  }));
114
133
  break;
115
134
  }
116
135
  case "candlestick": {
117
- let { open: t, high: a, low: c } = i.cols, l = e(i.upColor), f = e(i.downColor), _ = (e) => t && Number.isFinite(t[e]) && m[e] < t[e] ? f : l;
118
- d.push(o(`${i.key}:wick`, u, i, h, (e, t, i) => {
119
- let o = a ? a[e] : m[e], l = c ? c[e] : m[e], u = Number.isFinite(o) && Number.isFinite(l) && Number.isFinite(m[e]);
120
- t[e * 4] = r(p[e], s.x), t[e * 4 + 1] = u ? l - s.y : n, t[e * 4 + 2] = u ? o - s.y : n, i[e * 4 + 3] = _(e);
136
+ let { open: t, high: o, low: c } = a.cols, u = e(a.upColor), d = e(a.downColor), f = (e) => t && Number.isFinite(t[e]) && g[e] < t[e] ? d : u;
137
+ p.push(s(`${a.key}:wick`, l, a, _, (e, t, a) => {
138
+ let s = o ? o[e] : g[e], l = c ? c[e] : g[e], u = Number.isFinite(s) && Number.isFinite(l) && Number.isFinite(g[e]);
139
+ t[e * 4] = i(h[e], n.x), t[e * 4 + 1] = u ? l - n.y : r, t[e * 4 + 2] = u ? s - n.y : r, a[e * 4 + 3] = f(e);
121
140
  }, {
122
141
  halfWidth: 0,
123
142
  radius: 0,
124
143
  inset: 0,
125
- minHalf: i.lineWidth / 2,
126
- sorted: g
127
- }), o(`${i.key}:body`, u, i, h, (e, i, a) => {
128
- let o = t ? t[e] : m[e], c = Number.isFinite(o) && Number.isFinite(m[e]);
129
- i[e * 4] = r(p[e], s.x), i[e * 4 + 1] = c ? o - s.y : n, i[e * 4 + 2] = c ? m[e] - s.y : n, a[e * 4 + 3] = _(e);
144
+ minHalf: a.lineWidth / 2,
145
+ sorted: v
146
+ }), s(`${a.key}:body`, l, a, _, (e, a, o) => {
147
+ let s = t ? t[e] : g[e], c = Number.isFinite(s) && Number.isFinite(g[e]);
148
+ a[e * 4] = i(h[e], n.x), a[e * 4 + 1] = c ? s - n.y : r, a[e * 4 + 2] = c ? g[e] - n.y : r, o[e * 4 + 3] = f(e);
130
149
  }, {
131
- halfWidth: i.barHalfWidth,
132
- radius: Math.min(i.radius, 1.5),
150
+ halfWidth: a.barHalfWidth,
151
+ radius: Math.min(a.radius, 1.5),
133
152
  inset: 0,
134
153
  minHalf: .5,
135
- sorted: g
154
+ sorted: v
136
155
  }));
137
156
  break;
138
157
  }
139
158
  case "boxplot":
140
- d.push(...l(i, s, u));
159
+ p.push(...f(a, n, l));
141
160
  break;
142
161
  case "heatmap": {
143
- let e = i.cellColors, t = i.cellHalf.y;
144
- d.push(o(`${i.key}:cells`, u, i, h, (i, a, o) => {
145
- let c = e ? e[i] : 0, l = c !== 0 && Number.isFinite(p[i]);
146
- a[i * 4] = r(p[i], s.x), a[i * 4 + 1] = l ? m[i] - t - s.y : n, a[i * 4 + 2] = l ? m[i] + t - s.y : n, o[i * 4 + 3] = c;
162
+ let e = a.cellColors, t = a.cellHalf.y, o = c(a, u);
163
+ p.push(s(`${a.key}:cells`, l, a, _, (a, o, s) => {
164
+ let c = e ? e[a] : 0, l = c !== 0 && Number.isFinite(h[a]);
165
+ o[a * 4] = i(h[a], n.x), o[a * 4 + 1] = l ? g[a] - t - n.y : r, o[a * 4 + 2] = l ? g[a] + t - n.y : r, s[a * 4 + 3] = c;
147
166
  }, {
148
- halfWidth: i.cellHalf.x,
149
- radius: i.radius,
150
- inset: 1,
167
+ halfWidth: a.cellHalf.x,
168
+ radius: o.radius,
169
+ inset: o.inset,
151
170
  minHalf: 0,
152
- sorted: g
171
+ sorted: v
153
172
  }));
154
173
  break;
155
174
  }
156
175
  default: {
157
- let t = /* @__PURE__ */ new ArrayBuffer(h * 16), r = new Float32Array(t), a = new Uint32Array(t), o = e(i.color), c = i.cols.size;
158
- for (let t = 0; t < h; t++) {
159
- let l = Number.isFinite(m[t]) && Number.isFinite(p[t]);
160
- r[t * 4] = l ? p[t] - s.x : n, r[t * 4 + 1] = l ? m[t] - s.y : n;
176
+ let t = /* @__PURE__ */ new ArrayBuffer(_ * 16), i = new Float32Array(t), o = new Uint32Array(t), s = e(a.color), c = a.cols.size;
177
+ for (let t = 0; t < _; t++) {
178
+ let l = Number.isFinite(g[t]) && Number.isFinite(h[t]);
179
+ i[t * 4] = l ? h[t] - n.x : r, i[t * 4 + 1] = l ? g[t] - n.y : r;
161
180
  let u = c ? c[t] : NaN;
162
- r[t * 4 + 2] = Number.isFinite(u) && u > 0 ? u : i.pointSize;
163
- let d = i.pointColors?.[t];
164
- a[t * 4 + 3] = d ? e(d) : o;
181
+ i[t * 4 + 2] = Number.isFinite(u) && u > 0 ? u : a.pointSize;
182
+ let d = a.pointColors?.[t];
183
+ o[t * 4 + 3] = d ? e(d) : s;
165
184
  }
166
- d.push({
185
+ p.push({
167
186
  kind: "scatter",
168
- key: `${i.key}:scatter`,
169
- version: u,
170
- color: i.color,
187
+ key: `${a.key}:scatter`,
188
+ version: l,
189
+ color: a.color,
171
190
  instances: t,
172
- count: h,
173
- opacity: i.opacity,
174
- stroke: h <= 5e3 ? 1.25 : 0
191
+ count: _,
192
+ opacity: a.opacity,
193
+ stroke: _ <= 5e3 ? 1.25 : 0
175
194
  });
176
195
  break;
177
196
  }
178
197
  }
179
198
  }
180
- return d.push(...f), d;
181
- }, c = (e, t) => {
199
+ return p.push(...m), p;
200
+ }, d = (e, t) => {
182
201
  let n = 1;
183
202
  if (e.x.type !== "category") {
184
203
  let { x: e, count: r } = t.cols;
@@ -190,8 +209,8 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
190
209
  if (!Number.isFinite(n)) return !1;
191
210
  }
192
211
  return t.barHalfWidth * 2 >= n * .98;
193
- }, l = (t, i, a) => {
194
- let { x: s, y: c, count: l, high: u, low: d, q1: f, q3: p, outliers: m } = t.cols, h = e(t.color), g = e([
212
+ }, f = (t, n, a) => {
213
+ let { x: o, y: c, count: l, high: u, low: d, q1: f, q3: p, outliers: m } = t.cols, h = e(t.color), g = e([
195
214
  t.color[0],
196
215
  t.color[1],
197
216
  t.color[2],
@@ -204,17 +223,17 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
204
223
  i[2],
205
224
  i[3] * t.opacity
206
225
  ] : i) : r ? g : h;
207
- }, v = t.barHalfWidth, y = Math.max(1, t.lineWidth), b = (e, t) => e && Number.isFinite(e[t]) ? e[t] : c[t], x = (e, n = 0) => r(s[e] + t.barOffset + n, i.x), S = (e) => e - i.y, C = (e, r, i, o) => {
208
- let u = /* @__PURE__ */ new ArrayBuffer(l * r * 16), d = new Float32Array(u), f = new Uint32Array(u);
226
+ }, v = t.barHalfWidth, y = Math.max(1, t.lineWidth), b = (e, t) => e && Number.isFinite(e[t]) ? e[t] : c[t], x = (e, r = 0) => i(o[e] + t.barOffset + r, n.x), S = (e) => e - n.y, C = (e, n, i, s) => {
227
+ let u = /* @__PURE__ */ new ArrayBuffer(l * n * 16), d = new Float32Array(u), f = new Uint32Array(u);
209
228
  for (let e = 0; e < l; e++) {
210
- let t = Number.isFinite(c[e]) && Number.isFinite(s[e]);
211
- for (let a = 0; a < r; a++) {
212
- let o = (e * r + a) * 4, [s, c, l] = t ? i(e, a) : [
229
+ let t = Number.isFinite(c[e]) && Number.isFinite(o[e]);
230
+ for (let a = 0; a < n; a++) {
231
+ let o = (e * n + a) * 4, [s, c, l] = t ? i(e, a) : [
213
232
  0,
214
233
  NaN,
215
234
  NaN
216
235
  ];
217
- d[o] = t ? x(e, s) : n, d[o + 1] = t ? S(c) : n, d[o + 2] = t ? S(l) : n, f[o + 3] = _(e);
236
+ d[o] = t ? x(e, s) : r, d[o + 1] = t ? S(c) : r, d[o + 2] = t ? S(l) : r, f[o + 3] = _(e);
218
237
  }
219
238
  }
220
239
  return {
@@ -223,16 +242,16 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
223
242
  version: a,
224
243
  color: t.color,
225
244
  instances: u,
226
- count: l * r,
245
+ count: l * n,
227
246
  radius: 0,
228
247
  inset: 0,
229
248
  sorted: !1,
230
- ...o
249
+ ...s
231
250
  };
232
251
  }, w = [
233
- o(`${t.key}:box`, a, t, l, (e, t, r) => {
234
- let i = Number.isFinite(c[e]) && Number.isFinite(s[e]);
235
- t[e * 4] = i ? x(e) : n, t[e * 4 + 1] = i ? S(b(f, e)) : n, t[e * 4 + 2] = i ? S(b(p, e)) : n, r[e * 4 + 3] = _(e, !0);
252
+ s(`${t.key}:box`, a, t, l, (e, t, n) => {
253
+ let i = Number.isFinite(c[e]) && Number.isFinite(o[e]);
254
+ t[e * 4] = i ? x(e) : r, t[e * 4 + 1] = i ? S(b(f, e)) : r, t[e * 4 + 2] = i ? S(b(p, e)) : r, n[e * 4 + 3] = _(e, !0);
236
255
  }, {
237
256
  halfWidth: v,
238
257
  radius: 0,
@@ -291,12 +310,12 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
291
310
  let e = 0;
292
311
  for (let t = 0; t < l; t++) e += m[t]?.length ?? 0;
293
312
  if (e) {
294
- let r = /* @__PURE__ */ new ArrayBuffer(e * 16), i = new Float32Array(r), o = new Uint32Array(r), c = 0;
313
+ let n = /* @__PURE__ */ new ArrayBuffer(e * 16), i = new Float32Array(n), s = new Uint32Array(n), c = 0;
295
314
  for (let e = 0; e < l; e++) {
296
- let r = m[e];
297
- if (r) for (let a of r) {
298
- let r = Number.isFinite(a) && Number.isFinite(s[e]);
299
- i[c * 4] = r ? x(e) : n, i[c * 4 + 1] = r ? S(a) : n, i[c * 4 + 2] = t.pointSize, o[c * 4 + 3] = _(e), c++;
315
+ let n = m[e];
316
+ if (n) for (let a of n) {
317
+ let n = Number.isFinite(a) && Number.isFinite(o[e]);
318
+ i[c * 4] = n ? x(e) : r, i[c * 4 + 1] = n ? S(a) : r, i[c * 4 + 2] = t.outlierSize, s[c * 4 + 3] = _(e), c++;
300
319
  }
301
320
  }
302
321
  w.push({
@@ -304,16 +323,16 @@ var r = (e, t) => Number.isFinite(e) ? e - t : n, i = {
304
323
  key: `${t.key}:outliers`,
305
324
  version: a,
306
325
  color: t.color,
307
- instances: r,
326
+ instances: n,
308
327
  count: e,
309
- opacity: .85,
310
- stroke: e <= 5e3 ? 1.25 : 0
328
+ opacity: t.outlierShape === "hollow" ? 0 : .85,
329
+ stroke: t.outlierShape === "hollow" || e <= 5e3 ? 1.25 : 0
311
330
  });
312
331
  }
313
332
  }
314
333
  return w;
315
334
  };
316
335
  //#endregion
317
- export { s as buildItems };
336
+ export { u as buildItems, l as cellStyleKey };
318
337
 
319
338
  //# sourceMappingURL=items.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"items.js","names":["rel","value","origin","GAP","DRAW_ORDER","linePoints","s","top","stackBase","count","x","i","curved","curvePoints","base","points","barItem","instances","f","u","extra","buildItems","items","outlines","ordered","model","a","b","pts","n","y","ox","oy","xv","yv","xAt","yAt","area","baseline","baseAt","lower","fade","c","seriesColor","packColor","shared","o","touching","isTouching","version","valid","pc","up","down","colorAt","open","hi","high","lo","low","boxItems","colors","hy","buffer","sizes","size","band","d","color","fill","alpha","half","lw","at","column","dx","v","multi","parts","k","j","write","key","q1","q3","outliers","list"],"sources":["../../../../charts/src/engine/items.ts"],"sourcesContent":["// Chart model -> GPU-ready buffers (positions relative to an origin).\n\nimport { packColor, type Rgba } from \"./color\";\nimport { curvePoints } from \"./curve\";\nimport type { ChartModel, SeriesModel } from \"./model\";\nimport {\n AREA_STRIDE,\n BAR_STRIDE,\n GAP,\n SCATTER_STRIDE,\n type BarItem,\n type RenderItem,\n} from \"./renderers/types\";\n\nexport interface Origin {\n x: number;\n y: number;\n}\n\nconst rel = (value: number, origin: number) =>\n Number.isFinite(value) ? value - origin : GAP;\n\nconst DRAW_ORDER = {\n heatmap: 0,\n area: 1,\n bar: 2,\n boxplot: 2,\n candlestick: 3,\n line: 4,\n scatter: 5,\n} as const;\n\n/** Line (and area) points of a series: stacked, curved; interleaved x, y */\nconst linePoints = (s: SeriesModel) => {\n const { x, count } = s.cols;\n const top = s.stackTop ?? s.cols.y;\n const stackBase = s.stackBase;\n if (s.curve === \"linear\") {\n // no copy: the hot path of large series\n return {\n n: count,\n xAt: (i: number) => x[i],\n yAt: (i: number) => top[i],\n baseAt: stackBase ? (i: number) => stackBase[i] : null,\n };\n }\n const curved = curvePoints(x, top, 0, count, s.curve);\n const base = stackBase\n ? curvePoints(x, stackBase, 0, count, s.curve).points\n : null;\n const points = curved.points;\n return {\n // the buffers are allocated for the worst case: only `length` are written\n n: curved.length,\n xAt: (i: number) => points[i * 2],\n yAt: (i: number) => points[i * 2 + 1],\n baseAt: base ? (i: number) => base[i * 2 + 1] : null,\n };\n};\n\nconst barItem = (\n key: string,\n version: number,\n s: SeriesModel,\n count: number,\n write: (i: number, f: Float32Array, u: Uint32Array) => void,\n extra: Pick<BarItem, \"halfWidth\" | \"radius\" | \"inset\" | \"minHalf\" | \"sorted\">,\n): BarItem => {\n const instances = new ArrayBuffer(count * BAR_STRIDE);\n const f = new Float32Array(instances);\n const u = new Uint32Array(instances);\n for (let i = 0; i < count; i++) write(i, f, u);\n return {\n kind: \"bar\",\n key,\n version,\n color: s.color,\n instances,\n count,\n ...extra,\n };\n};\n\n/** Render items of the visible series, back to front */\nexport const buildItems = (\n model: ChartModel,\n origin: Origin,\n version: number,\n): RenderItem[] => {\n const items: RenderItem[] = [];\n /** Outlines of the areas are drawn with the lines, above the bars */\n const outlines: RenderItem[] = [];\n const ordered = model.series\n .filter((s) => !s.hidden)\n .sort(\n (a, b) => DRAW_ORDER[a.type] - DRAW_ORDER[b.type] || a.index - b.index,\n );\n for (const s of ordered) {\n const { x, y, count, sorted } = s.cols;\n if ((s.type === \"line\" || s.type === \"scatter\") && outlines.length) {\n items.push(...outlines.splice(0));\n }\n switch (s.type) {\n case \"line\":\n case \"area\": {\n const { n, xAt, yAt, baseAt } = linePoints(s);\n const pts = new Float32Array(n * 2);\n if (s.curve === \"linear\") {\n // direct loop: the hot path of very large series\n const top = s.stackTop ?? y;\n const ox = origin.x;\n const oy = origin.y;\n for (let i = 0; i < n; i++) {\n const xv = x[i];\n const yv = top[i];\n pts[i * 2] = Number.isFinite(xv) ? xv - ox : GAP;\n pts[i * 2 + 1] = Number.isFinite(yv) ? yv - oy : GAP;\n }\n } else {\n for (let i = 0; i < n; i++) {\n // x stays real at gaps so sorted data can be binary searched\n pts[i * 2] = rel(xAt(i), origin.x);\n pts[i * 2 + 1] = rel(yAt(i), origin.y);\n }\n }\n if (s.type === \"area\") {\n const area = new Float32Array(n * AREA_STRIDE);\n const baseline = model.baseline - origin.y;\n for (let i = 0; i < n; i++) {\n area[i * 3] = pts[i * 2];\n area[i * 3 + 1] = pts[i * 2 + 1];\n area[i * 3 + 2] = baseAt ? rel(baseAt(i), origin.y) : baseline;\n }\n items.push({\n kind: \"area\",\n key: `${s.key}:area`,\n version,\n color: s.color,\n points: area,\n count: n,\n opacity: s.opacity,\n sorted,\n });\n }\n if (s.lineWidth <= 0) break;\n (s.type === \"area\" ? outlines : items).push({\n kind: \"line\",\n key: `${s.key}:line`,\n version,\n color: s.color,\n points: pts,\n count: n,\n width: s.lineWidth,\n sorted,\n });\n if (s.type === \"area\" && s.cols.y0 && baseAt) {\n // range areas: the lower edge is drawn too\n const lower = new Float32Array(n * 2);\n for (let i = 0; i < n; i++) {\n lower[i * 2] = pts[i * 2];\n lower[i * 2 + 1] = rel(baseAt(i), origin.y);\n }\n outlines.push({\n kind: \"line\",\n key: `${s.key}:lower`,\n version,\n color: s.color,\n points: lower,\n count: n,\n width: s.lineWidth,\n sorted,\n });\n }\n break;\n }\n case \"bar\": {\n const base = s.barBase ?? new Float64Array(count);\n const top = s.barTop ?? y;\n const fade = (c: Rgba): Rgba =>\n s.opacity < 1 ? [c[0], c[1], c[2], c[3] * s.opacity] : c;\n const seriesColor = packColor(fade(s.color));\n // floating bars (ranges, Gantt progress) keep their corners\n const shared =\n !s.floating &&\n model.series.some(\n (o) =>\n o !== s &&\n !o.hidden &&\n o.type === \"bar\" &&\n !o.floating &&\n o.barOffset === s.barOffset,\n );\n const touching = s.barHalfWidth > 0 && isTouching(model, s);\n items.push(\n barItem(\n `${s.key}:bar`,\n version,\n s,\n count,\n (i, f, u) => {\n const valid = Number.isFinite(top[i]) && Number.isFinite(base[i]);\n f[i * 4] = rel(x[i] + s.barOffset, origin.x);\n f[i * 4 + 1] = valid ? base[i] - origin.y : GAP;\n f[i * 4 + 2] = valid ? top[i] - origin.y : GAP;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(fade(pc)) : seriesColor;\n },\n {\n halfWidth: s.barHalfWidth,\n // stacked segments stay square so the stack reads as one bar\n radius: shared ? 0 : s.radius,\n // bars filling their category (histograms): a hairline apart\n inset: touching ? 0.5 : 0,\n minHalf: 0,\n sorted,\n },\n ),\n );\n break;\n }\n case \"candlestick\": {\n const { open, high, low } = s.cols;\n const up = packColor(s.upColor);\n const down = packColor(s.downColor);\n const colorAt = (i: number) =>\n open && Number.isFinite(open[i]) && y[i] < open[i] ? down : up;\n // wicks first, the bodies cover them\n items.push(\n barItem(\n `${s.key}:wick`,\n version,\n s,\n count,\n (i, f, u) => {\n const hi = high ? high[i] : y[i];\n const lo = low ? low[i] : y[i];\n const valid =\n Number.isFinite(hi) &&\n Number.isFinite(lo) &&\n Number.isFinite(y[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? lo - origin.y : GAP;\n f[i * 4 + 2] = valid ? hi - origin.y : GAP;\n u[i * 4 + 3] = colorAt(i);\n },\n {\n halfWidth: 0,\n radius: 0,\n inset: 0,\n minHalf: s.lineWidth / 2,\n sorted,\n },\n ),\n barItem(\n `${s.key}:body`,\n version,\n s,\n count,\n (i, f, u) => {\n const o = open ? open[i] : y[i];\n const valid = Number.isFinite(o) && Number.isFinite(y[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? o - origin.y : GAP;\n f[i * 4 + 2] = valid ? y[i] - origin.y : GAP;\n u[i * 4 + 3] = colorAt(i);\n },\n {\n halfWidth: s.barHalfWidth,\n radius: Math.min(s.radius, 1.5),\n inset: 0,\n minHalf: 0.5,\n sorted,\n },\n ),\n );\n break;\n }\n case \"boxplot\":\n items.push(...boxItems(s, origin, version));\n break;\n case \"heatmap\": {\n const colors = s.cellColors;\n const hy = s.cellHalf.y;\n items.push(\n barItem(\n `${s.key}:cells`,\n version,\n s,\n count,\n (i, f, u) => {\n const c = colors ? colors[i] : 0;\n const valid = c !== 0 && Number.isFinite(x[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? y[i] - hy - origin.y : GAP;\n f[i * 4 + 2] = valid ? y[i] + hy - origin.y : GAP;\n u[i * 4 + 3] = c;\n },\n {\n halfWidth: s.cellHalf.x,\n radius: s.radius,\n inset: 1,\n minHalf: 0,\n sorted,\n },\n ),\n );\n break;\n }\n default: {\n const buffer = new ArrayBuffer(count * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n const seriesColor = packColor(s.color);\n const sizes = s.cols.size;\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? x[i] - origin.x : GAP;\n f[i * 4 + 1] = valid ? y[i] - origin.y : GAP;\n const size = sizes ? sizes[i] : NaN;\n f[i * 4 + 2] = Number.isFinite(size) && size > 0 ? size : s.pointSize;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(pc) : seriesColor;\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:scatter`,\n version,\n color: s.color,\n instances: buffer,\n count,\n opacity: s.opacity,\n stroke: count <= 5000 ? 1.25 : 0,\n });\n break;\n }\n }\n }\n items.push(...outlines);\n return items;\n};\n\n/** Bars of a series fill their whole category (`barWidth: 1`, histograms) */\nconst isTouching = (model: ChartModel, s: SeriesModel) => {\n let band = 1;\n if (model.x.type !== \"category\") {\n const { x, count } = s.cols;\n band = Infinity;\n for (let i = 1; i < Math.min(count, 64); i++) {\n const d = Math.abs(x[i] - x[i - 1]);\n if (d > 0 && d < band) band = d;\n }\n if (!Number.isFinite(band)) return false;\n }\n return s.barHalfWidth * 2 >= band * 0.98;\n};\n\n/**\n * Box plot: a translucent box, whiskers and box sides (zero-width bars of\n * the line width), caps, box edges and the median (zero-height bars), and\n * the outliers as dots\n */\nconst boxItems = (\n s: SeriesModel,\n origin: Origin,\n version: number,\n): RenderItem[] => {\n const { x, y, count, high, low, q1, q3, outliers } = s.cols;\n const color = packColor(s.color);\n const fill = packColor([\n s.color[0],\n s.color[1],\n s.color[2],\n s.color[3] * s.opacity,\n ]);\n const colorAt = (i: number, alpha = false) => {\n const pc = s.pointColors?.[i];\n if (!pc) return alpha ? fill : color;\n return packColor(alpha ? [pc[0], pc[1], pc[2], pc[3] * s.opacity] : pc);\n };\n const half = s.barHalfWidth;\n const lw = Math.max(1, s.lineWidth);\n const at = (column: Float64Array | null, i: number) =>\n column && Number.isFinite(column[i]) ? column[i] : y[i];\n const ox = (i: number, dx = 0) => rel(x[i] + s.barOffset + dx, origin.x);\n const oy = (v: number) => v - origin.y;\n /** Several bars per point: `parts` gives their (x shift, from, to) */\n const multi = (\n key: string,\n parts: number,\n write: (i: number, k: number) => [number, number, number],\n extra: Pick<BarItem, \"halfWidth\" | \"minHalf\">,\n ): BarItem => {\n const buffer = new ArrayBuffer(count * parts * BAR_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n for (let k = 0; k < parts; k++) {\n const j = (i * parts + k) * 4;\n const [dx, a, b] = valid ? write(i, k) : [0, NaN, NaN];\n f[j] = valid ? ox(i, dx) : GAP;\n f[j + 1] = valid ? oy(a) : GAP;\n f[j + 2] = valid ? oy(b) : GAP;\n u[j + 3] = colorAt(i);\n }\n }\n return {\n kind: \"bar\",\n key: `${s.key}:${key}`,\n version,\n color: s.color,\n instances: buffer,\n count: count * parts,\n radius: 0,\n inset: 0,\n sorted: false,\n ...extra,\n };\n };\n const box = barItem(\n `${s.key}:box`,\n version,\n s,\n count,\n (i, f, u) => {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? ox(i) : GAP;\n f[i * 4 + 1] = valid ? oy(at(q1, i)) : GAP;\n f[i * 4 + 2] = valid ? oy(at(q3, i)) : GAP;\n u[i * 4 + 3] = colorAt(i, true);\n },\n { halfWidth: half, radius: 0, inset: 0, minHalf: 0, sorted: false },\n );\n // whiskers and sides of the box\n const stems = multi(\n \"stems\",\n 4,\n (i, k) =>\n k === 0\n ? [0, at(low, i), at(q1, i)]\n : k === 1\n ? [0, at(q3, i), at(high, i)]\n : [k === 2 ? -half : half, at(q1, i), at(q3, i)],\n { halfWidth: 0, minHalf: lw / 2 },\n );\n const caps = multi(\n \"caps\",\n 2,\n (i, k) => {\n const v = at(k === 0 ? low : high, i);\n return [0, v, v];\n },\n { halfWidth: half / 2, minHalf: lw / 2 },\n );\n const edges = multi(\n \"edges\",\n 2,\n (i, k) => {\n const v = at(k === 0 ? q1 : q3, i);\n return [0, v, v];\n },\n { halfWidth: half, minHalf: lw / 2 },\n );\n const median = multi(\"median\", 1, (i) => [0, y[i], y[i]], {\n halfWidth: half,\n minHalf: Math.max(1, lw * 0.8),\n });\n const items: RenderItem[] = [box, stems, caps, edges, median];\n if (outliers) {\n let n = 0;\n for (let i = 0; i < count; i++) n += outliers[i]?.length ?? 0;\n if (n) {\n const buffer = new ArrayBuffer(n * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n let j = 0;\n for (let i = 0; i < count; i++) {\n const list = outliers[i];\n if (!list) continue;\n for (const v of list) {\n const valid = Number.isFinite(v) && Number.isFinite(x[i]);\n f[j * 4] = valid ? ox(i) : GAP;\n f[j * 4 + 1] = valid ? oy(v) : GAP;\n f[j * 4 + 2] = s.pointSize;\n u[j * 4 + 3] = colorAt(i);\n j++;\n }\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:outliers`,\n version,\n color: s.color,\n instances: buffer,\n count: n,\n opacity: 0.85,\n stroke: n <= 5000 ? 1.25 : 0,\n });\n }\n }\n return items;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"items.js","names":["rel","value","origin","GAP","DRAW_ORDER","linePoints","s","top","stackBase","count","x","i","curved","curvePoints","base","points","barItem","instances","f","u","extra","cellStyleOf","density","style","heatCellStyle","cellStyleKey","key","model","buildItems","items","outlines","ordered","a","b","pts","n","y","ox","oy","xv","yv","xAt","yAt","area","baseline","baseAt","lower","fade","c","seriesColor","packColor","shared","o","touching","isTouching","version","valid","pc","up","down","colorAt","open","hi","high","lo","low","boxItems","colors","hy","buffer","sizes","size","band","d","color","fill","alpha","half","lw","at","column","dx","v","multi","parts","k","j","write","q1","q3","outliers","list"],"sources":["../../../../charts/src/engine/items.ts"],"sourcesContent":["// Chart model -> GPU-ready buffers (positions relative to an origin).\n\nimport { packColor, type Rgba } from \"./color\";\nimport { curvePoints } from \"./curve\";\nimport { heatCellStyle } from \"./layout\";\nimport type { ChartModel, SeriesModel } from \"./model\";\nimport {\n AREA_STRIDE,\n BAR_STRIDE,\n GAP,\n SCATTER_STRIDE,\n type BarItem,\n type RenderItem,\n} from \"./renderers/types\";\n\nexport interface Origin {\n x: number;\n y: number;\n}\n\nconst rel = (value: number, origin: number) =>\n Number.isFinite(value) ? value - origin : GAP;\n\nconst DRAW_ORDER = {\n heatmap: 0,\n area: 1,\n bar: 2,\n boxplot: 2,\n candlestick: 3,\n line: 4,\n scatter: 5,\n} as const;\n\n/** Line (and area) points of a series: stacked, curved; interleaved x, y */\nconst linePoints = (s: SeriesModel) => {\n const { x, count } = s.cols;\n const top = s.stackTop ?? s.cols.y;\n const stackBase = s.stackBase;\n if (s.curve === \"linear\") {\n // no copy: the hot path of large series\n return {\n n: count,\n xAt: (i: number) => x[i],\n yAt: (i: number) => top[i],\n baseAt: stackBase ? (i: number) => stackBase[i] : null,\n };\n }\n const curved = curvePoints(x, top, 0, count, s.curve);\n const base = stackBase\n ? curvePoints(x, stackBase, 0, count, s.curve).points\n : null;\n const points = curved.points;\n return {\n // the buffers are allocated for the worst case: only `length` are written\n n: curved.length,\n xAt: (i: number) => points[i * 2],\n yAt: (i: number) => points[i * 2 + 1],\n baseAt: base ? (i: number) => base[i * 2 + 1] : null,\n };\n};\n\nconst barItem = (\n key: string,\n version: number,\n s: SeriesModel,\n count: number,\n write: (i: number, f: Float32Array, u: Uint32Array) => void,\n extra: Pick<BarItem, \"halfWidth\" | \"radius\" | \"inset\" | \"minHalf\" | \"sorted\">,\n): BarItem => {\n const instances = new ArrayBuffer(count * BAR_STRIDE);\n const f = new Float32Array(instances);\n const u = new Uint32Array(instances);\n for (let i = 0; i < count; i++) write(i, f, u);\n return {\n kind: \"bar\",\n key,\n version,\n color: s.color,\n instances,\n count,\n ...extra,\n };\n};\n\n/** CSS pixels per data unit along each axis (sizes the heatmap cells) */\nexport interface PixelDensity {\n x: number;\n y: number;\n}\n\n/**\n * Inset and radius of the cells of a heatmap at a pixel density; the\n * renderers fade small insets out and overlap tiny cells (no seams)\n */\nconst cellStyleOf = (s: SeriesModel, density?: PixelDensity) => {\n if (!density) return { inset: 0.5, radius: Math.min(s.radius, 2) };\n const style = heatCellStyle(\n s.cellHalf.x * 2 * density.x,\n s.cellHalf.y * 2 * density.y,\n s.radius,\n );\n return { inset: Math.max(0.5, style.inset), radius: style.radius };\n};\n\n/**\n * What the heatmap items depend on besides the model: their cell style at\n * the current pixel density (`\"\"` without heatmaps)\n */\nexport const cellStyleKey = (\n model: ChartModel,\n density?: PixelDensity,\n): string => {\n let key = \"\";\n for (const s of model.series) {\n if (s.type !== \"heatmap\" || s.hidden) continue;\n const style = cellStyleOf(s, density);\n key += `${style.inset}/${style.radius};`;\n }\n return key;\n};\n\n/**\n * Render items of the visible series, back to front; `density` sizes the\n * gaps and corners of heatmap cells\n */\nexport const buildItems = (\n model: ChartModel,\n origin: Origin,\n version: number,\n density?: PixelDensity,\n): RenderItem[] => {\n const items: RenderItem[] = [];\n /** Outlines of the areas are drawn with the lines, above the bars */\n const outlines: RenderItem[] = [];\n const ordered = model.series\n .filter((s) => !s.hidden)\n .sort(\n (a, b) => DRAW_ORDER[a.type] - DRAW_ORDER[b.type] || a.index - b.index,\n );\n for (const s of ordered) {\n const { x, y, count, sorted } = s.cols;\n if ((s.type === \"line\" || s.type === \"scatter\") && outlines.length) {\n items.push(...outlines.splice(0));\n }\n switch (s.type) {\n case \"line\":\n case \"area\": {\n const { n, xAt, yAt, baseAt } = linePoints(s);\n const pts = new Float32Array(n * 2);\n if (s.curve === \"linear\") {\n // direct loop: the hot path of very large series\n const top = s.stackTop ?? y;\n const ox = origin.x;\n const oy = origin.y;\n for (let i = 0; i < n; i++) {\n const xv = x[i];\n const yv = top[i];\n pts[i * 2] = Number.isFinite(xv) ? xv - ox : GAP;\n pts[i * 2 + 1] = Number.isFinite(yv) ? yv - oy : GAP;\n }\n } else {\n for (let i = 0; i < n; i++) {\n // x stays real at gaps so sorted data can be binary searched\n pts[i * 2] = rel(xAt(i), origin.x);\n pts[i * 2 + 1] = rel(yAt(i), origin.y);\n }\n }\n if (s.type === \"area\") {\n const area = new Float32Array(n * AREA_STRIDE);\n const baseline = model.baseline - origin.y;\n for (let i = 0; i < n; i++) {\n area[i * 3] = pts[i * 2];\n area[i * 3 + 1] = pts[i * 2 + 1];\n area[i * 3 + 2] = baseAt ? rel(baseAt(i), origin.y) : baseline;\n }\n items.push({\n kind: \"area\",\n key: `${s.key}:area`,\n version,\n color: s.color,\n points: area,\n count: n,\n opacity: s.opacity,\n sorted,\n });\n }\n if (s.lineWidth <= 0) break;\n (s.type === \"area\" ? outlines : items).push({\n kind: \"line\",\n key: `${s.key}:line`,\n version,\n color: s.color,\n points: pts,\n count: n,\n width: s.lineWidth,\n sorted,\n });\n if (s.type === \"area\" && s.cols.y0 && baseAt) {\n // range areas: the lower edge is drawn too\n const lower = new Float32Array(n * 2);\n for (let i = 0; i < n; i++) {\n lower[i * 2] = pts[i * 2];\n lower[i * 2 + 1] = rel(baseAt(i), origin.y);\n }\n outlines.push({\n kind: \"line\",\n key: `${s.key}:lower`,\n version,\n color: s.color,\n points: lower,\n count: n,\n width: s.lineWidth,\n sorted,\n });\n }\n break;\n }\n case \"bar\": {\n const base = s.barBase ?? new Float64Array(count);\n const top = s.barTop ?? y;\n const fade = (c: Rgba): Rgba =>\n s.opacity < 1 ? [c[0], c[1], c[2], c[3] * s.opacity] : c;\n const seriesColor = packColor(fade(s.color));\n // floating bars (ranges, Gantt progress) keep their corners\n const shared =\n !s.floating &&\n model.series.some(\n (o) =>\n o !== s &&\n !o.hidden &&\n o.type === \"bar\" &&\n !o.floating &&\n o.barOffset === s.barOffset,\n );\n const touching = s.barHalfWidth > 0 && isTouching(model, s);\n items.push(\n barItem(\n `${s.key}:bar`,\n version,\n s,\n count,\n (i, f, u) => {\n const valid = Number.isFinite(top[i]) && Number.isFinite(base[i]);\n f[i * 4] = rel(x[i] + s.barOffset, origin.x);\n f[i * 4 + 1] = valid ? base[i] - origin.y : GAP;\n f[i * 4 + 2] = valid ? top[i] - origin.y : GAP;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(fade(pc)) : seriesColor;\n },\n {\n halfWidth: s.barHalfWidth,\n // stacked segments stay square so the stack reads as one bar\n radius: shared ? 0 : s.radius,\n // bars filling their category (histograms): a hairline apart\n inset: touching ? 0.5 : 0,\n minHalf: 0,\n sorted,\n },\n ),\n );\n break;\n }\n case \"candlestick\": {\n const { open, high, low } = s.cols;\n const up = packColor(s.upColor);\n const down = packColor(s.downColor);\n const colorAt = (i: number) =>\n open && Number.isFinite(open[i]) && y[i] < open[i] ? down : up;\n // wicks first, the bodies cover them\n items.push(\n barItem(\n `${s.key}:wick`,\n version,\n s,\n count,\n (i, f, u) => {\n const hi = high ? high[i] : y[i];\n const lo = low ? low[i] : y[i];\n const valid =\n Number.isFinite(hi) &&\n Number.isFinite(lo) &&\n Number.isFinite(y[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? lo - origin.y : GAP;\n f[i * 4 + 2] = valid ? hi - origin.y : GAP;\n u[i * 4 + 3] = colorAt(i);\n },\n {\n halfWidth: 0,\n radius: 0,\n inset: 0,\n minHalf: s.lineWidth / 2,\n sorted,\n },\n ),\n barItem(\n `${s.key}:body`,\n version,\n s,\n count,\n (i, f, u) => {\n const o = open ? open[i] : y[i];\n const valid = Number.isFinite(o) && Number.isFinite(y[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? o - origin.y : GAP;\n f[i * 4 + 2] = valid ? y[i] - origin.y : GAP;\n u[i * 4 + 3] = colorAt(i);\n },\n {\n halfWidth: s.barHalfWidth,\n radius: Math.min(s.radius, 1.5),\n inset: 0,\n minHalf: 0.5,\n sorted,\n },\n ),\n );\n break;\n }\n case \"boxplot\":\n items.push(...boxItems(s, origin, version));\n break;\n case \"heatmap\": {\n const colors = s.cellColors;\n const hy = s.cellHalf.y;\n const style = cellStyleOf(s, density);\n items.push(\n barItem(\n `${s.key}:cells`,\n version,\n s,\n count,\n (i, f, u) => {\n const c = colors ? colors[i] : 0;\n const valid = c !== 0 && Number.isFinite(x[i]);\n f[i * 4] = rel(x[i], origin.x);\n f[i * 4 + 1] = valid ? y[i] - hy - origin.y : GAP;\n f[i * 4 + 2] = valid ? y[i] + hy - origin.y : GAP;\n u[i * 4 + 3] = c;\n },\n {\n halfWidth: s.cellHalf.x,\n radius: style.radius,\n inset: style.inset,\n minHalf: 0,\n sorted,\n },\n ),\n );\n break;\n }\n default: {\n const buffer = new ArrayBuffer(count * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n const seriesColor = packColor(s.color);\n const sizes = s.cols.size;\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? x[i] - origin.x : GAP;\n f[i * 4 + 1] = valid ? y[i] - origin.y : GAP;\n const size = sizes ? sizes[i] : NaN;\n f[i * 4 + 2] = Number.isFinite(size) && size > 0 ? size : s.pointSize;\n const pc = s.pointColors?.[i];\n u[i * 4 + 3] = pc ? packColor(pc) : seriesColor;\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:scatter`,\n version,\n color: s.color,\n instances: buffer,\n count,\n opacity: s.opacity,\n stroke: count <= 5000 ? 1.25 : 0,\n });\n break;\n }\n }\n }\n items.push(...outlines);\n return items;\n};\n\n/** Bars of a series fill their whole category (`barWidth: 1`, histograms) */\nconst isTouching = (model: ChartModel, s: SeriesModel) => {\n let band = 1;\n if (model.x.type !== \"category\") {\n const { x, count } = s.cols;\n band = Infinity;\n for (let i = 1; i < Math.min(count, 64); i++) {\n const d = Math.abs(x[i] - x[i - 1]);\n if (d > 0 && d < band) band = d;\n }\n if (!Number.isFinite(band)) return false;\n }\n return s.barHalfWidth * 2 >= band * 0.98;\n};\n\n/**\n * Box plot: a translucent box, whiskers and box sides (zero-width bars of\n * the line width), caps, box edges and the median (zero-height bars), and\n * the outliers as dots\n */\nconst boxItems = (\n s: SeriesModel,\n origin: Origin,\n version: number,\n): RenderItem[] => {\n const { x, y, count, high, low, q1, q3, outliers } = s.cols;\n const color = packColor(s.color);\n const fill = packColor([\n s.color[0],\n s.color[1],\n s.color[2],\n s.color[3] * s.opacity,\n ]);\n const colorAt = (i: number, alpha = false) => {\n const pc = s.pointColors?.[i];\n if (!pc) return alpha ? fill : color;\n return packColor(alpha ? [pc[0], pc[1], pc[2], pc[3] * s.opacity] : pc);\n };\n const half = s.barHalfWidth;\n const lw = Math.max(1, s.lineWidth);\n const at = (column: Float64Array | null, i: number) =>\n column && Number.isFinite(column[i]) ? column[i] : y[i];\n const ox = (i: number, dx = 0) => rel(x[i] + s.barOffset + dx, origin.x);\n const oy = (v: number) => v - origin.y;\n /** Several bars per point: `parts` gives their (x shift, from, to) */\n const multi = (\n key: string,\n parts: number,\n write: (i: number, k: number) => [number, number, number],\n extra: Pick<BarItem, \"halfWidth\" | \"minHalf\">,\n ): BarItem => {\n const buffer = new ArrayBuffer(count * parts * BAR_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n for (let i = 0; i < count; i++) {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n for (let k = 0; k < parts; k++) {\n const j = (i * parts + k) * 4;\n const [dx, a, b] = valid ? write(i, k) : [0, NaN, NaN];\n f[j] = valid ? ox(i, dx) : GAP;\n f[j + 1] = valid ? oy(a) : GAP;\n f[j + 2] = valid ? oy(b) : GAP;\n u[j + 3] = colorAt(i);\n }\n }\n return {\n kind: \"bar\",\n key: `${s.key}:${key}`,\n version,\n color: s.color,\n instances: buffer,\n count: count * parts,\n radius: 0,\n inset: 0,\n sorted: false,\n ...extra,\n };\n };\n const box = barItem(\n `${s.key}:box`,\n version,\n s,\n count,\n (i, f, u) => {\n const valid = Number.isFinite(y[i]) && Number.isFinite(x[i]);\n f[i * 4] = valid ? ox(i) : GAP;\n f[i * 4 + 1] = valid ? oy(at(q1, i)) : GAP;\n f[i * 4 + 2] = valid ? oy(at(q3, i)) : GAP;\n u[i * 4 + 3] = colorAt(i, true);\n },\n { halfWidth: half, radius: 0, inset: 0, minHalf: 0, sorted: false },\n );\n // whiskers and sides of the box\n const stems = multi(\n \"stems\",\n 4,\n (i, k) =>\n k === 0\n ? [0, at(low, i), at(q1, i)]\n : k === 1\n ? [0, at(q3, i), at(high, i)]\n : [k === 2 ? -half : half, at(q1, i), at(q3, i)],\n { halfWidth: 0, minHalf: lw / 2 },\n );\n const caps = multi(\n \"caps\",\n 2,\n (i, k) => {\n const v = at(k === 0 ? low : high, i);\n return [0, v, v];\n },\n { halfWidth: half / 2, minHalf: lw / 2 },\n );\n const edges = multi(\n \"edges\",\n 2,\n (i, k) => {\n const v = at(k === 0 ? q1 : q3, i);\n return [0, v, v];\n },\n { halfWidth: half, minHalf: lw / 2 },\n );\n const median = multi(\"median\", 1, (i) => [0, y[i], y[i]], {\n halfWidth: half,\n minHalf: Math.max(1, lw * 0.8),\n });\n const items: RenderItem[] = [box, stems, caps, edges, median];\n if (outliers) {\n let n = 0;\n for (let i = 0; i < count; i++) n += outliers[i]?.length ?? 0;\n if (n) {\n const buffer = new ArrayBuffer(n * SCATTER_STRIDE);\n const f = new Float32Array(buffer);\n const u = new Uint32Array(buffer);\n let j = 0;\n for (let i = 0; i < count; i++) {\n const list = outliers[i];\n if (!list) continue;\n for (const v of list) {\n const valid = Number.isFinite(v) && Number.isFinite(x[i]);\n f[j * 4] = valid ? ox(i) : GAP;\n f[j * 4 + 1] = valid ? oy(v) : GAP;\n f[j * 4 + 2] = s.outlierSize;\n u[j * 4 + 3] = colorAt(i);\n j++;\n }\n }\n items.push({\n kind: \"scatter\",\n key: `${s.key}:outliers`,\n version,\n color: s.color,\n instances: buffer,\n count: n,\n // rings of the series color (the box shows through), or dots\n opacity: s.outlierShape === \"hollow\" ? 0 : 0.85,\n stroke: s.outlierShape === \"hollow\" || n <= 5000 ? 1.25 : 0,\n });\n }\n }\n return items;\n};\n"],"mappings":";;;;;AAoBA,IAAMA,KAAO,GAAe,MAC1B,OAAO,SAASC,CAAK,IAAIA,IAAQC,IAASC,GAEtCC,IAAa;CACjB,SAAS;CACT,MAAM;CACN,KAAK;CACL,SAAS;CACT,aAAa;CACb,MAAM;CACN,SAAS;AACX,GAGMC,KAAc,MAAmB;CACrC,IAAM,EAAE,MAAG,aAAUC,EAAE,MACjBC,IAAMD,EAAE,YAAYA,EAAE,KAAK,GAC3BE,IAAYF,EAAE;CACpB,IAAIA,EAAE,UAAU,UAEd,OAAO;EACL,GAAGG;EACH,MAAM,MAAcC,EAAEC;EACtB,MAAM,MAAcJ,EAAII;EACxB,QAAQH,KAAa,MAAcA,EAAUG,KAAK;CACpD;CAEF,IAAMC,IAASC,EAAYH,GAAGH,GAAK,GAAGE,GAAOH,EAAE,KAAK,GAC9CQ,IAAON,IACTK,EAAYH,GAAGF,GAAW,GAAGC,GAAOH,EAAE,KAAK,CAAC,CAAC,SAC7C,MACES,IAASH,EAAO;CACtB,OAAO;EAEL,GAAGA,EAAO;EACV,MAAM,MAAcG,EAAOJ,IAAI;EAC/B,MAAM,MAAcI,EAAOJ,IAAI,IAAI;EACnC,QAAQG,KAAQ,MAAcA,EAAKH,IAAI,IAAI,KAAK;CAClD;AACF,GAEMK,KACJ,GACA,GACA,GACA,GACA,GACA,MACY;CACZ,IAAMC,oBAAY,IAAI,YAAYR,IAAA,EAAkB,GAC9CS,IAAI,IAAI,aAAaD,CAAS,GAC9BE,IAAI,IAAI,YAAYF,CAAS;CACnC,KAAK,IAAIN,IAAI,GAAGA,IAAIF,GAAO,KAAK,EAAME,GAAGO,GAAGC,CAAC;CAC7C,OAAO;EACL,MAAM;EACN;EACA;EACA,OAAOb,EAAE;EACT;EACA;EACA,GAAGc;CACL;AACF,GAYMC,KAAe,GAAgB,MAA2B;CAC9D,IAAI,CAACC,GAAS,OAAO;EAAE,OAAO;EAAK,QAAQ,KAAK,IAAIhB,EAAE,QAAQ,CAAC;CAAE;CACjE,IAAMiB,IAAQC,EACZlB,EAAE,SAAS,IAAI,IAAIgB,EAAQ,GAC3BhB,EAAE,SAAS,IAAI,IAAIgB,EAAQ,GAC3BhB,EAAE,MACJ;CACA,OAAO;EAAE,OAAO,KAAK,IAAI,IAAKiB,EAAM,KAAK;EAAG,QAAQA,EAAM;CAAO;AACnE,GAMaE,KACX,GACA,MACW;CACX,IAAIC,IAAM;CACV,KAAK,IAAMpB,KAAKqB,EAAM,QAAQ;EAC5B,IAAIrB,EAAE,SAAS,aAAaA,EAAE,QAAQ;EACtC,IAAMiB,IAAQF,EAAYf,GAAGgB,CAAO;EACpC,KAAO,GAAGC,EAAM,MAAM,GAAGA,EAAM,OAAO;CACxC;CACA,OAAOG;AACT,GAMaE,KACX,GACA,GACA,GACA,MACiB;CACjB,IAAMC,IAAsB,CAAC,GAEvBC,IAAyB,CAAC,GAC1BC,IAAUJ,EAAM,OACnB,QAAQ,MAAM,CAACrB,EAAE,MAAM,CAAC,CACxB,MACE,GAAG,MAAMF,EAAW4B,EAAE,QAAQ5B,EAAW6B,EAAE,SAASD,EAAE,QAAQC,EAAE,KACnE;CACF,KAAK,IAAM3B,KAAKyB,GAAS;EACvB,IAAM,EAAE,MAAG,MAAG,UAAO,cAAWzB,EAAE;EAIlC,SAHKA,EAAE,SAAS,UAAUA,EAAE,SAAS,cAAcwB,EAAS,UAC1DD,EAAM,KAAK,GAAGC,EAAS,OAAO,CAAC,CAAC,GAE1BxB,EAAE,MAAV;GACE,KAAK;GACL,KAAK,QAAQ;IACX,IAAM,EAAE,MAAG,QAAK,QAAK,cAAWD,EAAWC,CAAC,GACtC4B,IAAM,IAAI,aAAaC,IAAI,CAAC;IAClC,IAAI7B,EAAE,UAAU,UAAU;KAExB,IAAMC,IAAMD,EAAE,YAAY8B,GACpBC,IAAKnC,EAAO,GACZoC,IAAKpC,EAAO;KAClB,KAAK,IAAIS,IAAI,GAAGA,IAAIwB,GAAG,KAAK;MAC1B,IAAMI,IAAK7B,EAAEC,IACP6B,IAAKjC,EAAII;MAEf,AADA,EAAIA,IAAI,KAAK,OAAO,SAAS4B,CAAE,IAAIA,IAAKF,IAAKlC,GAC7C,EAAIQ,IAAI,IAAI,KAAK,OAAO,SAAS6B,CAAE,IAAIA,IAAKF,IAAKnC;KACnD;IACF,OACE,KAAK,IAAIQ,IAAI,GAAGA,IAAIwB,GAAG,KAGrB,AADA,EAAIxB,IAAI,KAAKX,EAAIyC,EAAI9B,CAAC,GAAGT,EAAO,CAAC,GACjC,EAAIS,IAAI,IAAI,KAAKX,EAAI0C,EAAI/B,CAAC,GAAGT,EAAO,CAAC;IAGzC,IAAII,EAAE,SAAS,QAAQ;KACrB,IAAMqC,IAAO,IAAI,aAAaR,IAAA,CAAe,GACvCS,IAAWjB,EAAM,WAAWzB,EAAO;KACzC,KAAK,IAAIS,IAAI,GAAGA,IAAIwB,GAAG,KAGrB,AAFA,EAAKxB,IAAI,KAAKuB,EAAIvB,IAAI,IACtB,EAAKA,IAAI,IAAI,KAAKuB,EAAIvB,IAAI,IAAI,IAC9B,EAAKA,IAAI,IAAI,KAAKkC,IAAS7C,EAAI6C,EAAOlC,CAAC,GAAGT,EAAO,CAAC,IAAI0C;KAExD,EAAM,KAAK;MACT,MAAM;MACN,KAAK,GAAGtC,EAAE,IAAI;MACd;MACA,OAAOA,EAAE;MACT,QAAQqC;MACR,OAAOR;MACP,SAAS7B,EAAE;MACX;KACF,CAAC;IACH;IACA,IAAIA,EAAE,aAAa,GAAG;IAWtB,KAVCA,EAAE,SAAS,SAASwB,IAAWD,EAAA,CAAO,KAAK;KAC1C,MAAM;KACN,KAAK,GAAGvB,EAAE,IAAI;KACd;KACA,OAAOA,EAAE;KACT,QAAQ4B;KACR,OAAOC;KACP,OAAO7B,EAAE;KACT;IACF,CAAC,GACGA,EAAE,SAAS,UAAUA,EAAE,KAAK,MAAMuC,GAAQ;KAE5C,IAAMC,IAAQ,IAAI,aAAaX,IAAI,CAAC;KACpC,KAAK,IAAIxB,IAAI,GAAGA,IAAIwB,GAAG,KAErB,AADA,EAAMxB,IAAI,KAAKuB,EAAIvB,IAAI,IACvB,EAAMA,IAAI,IAAI,KAAKX,EAAI6C,EAAOlC,CAAC,GAAGT,EAAO,CAAC;KAE5C,EAAS,KAAK;MACZ,MAAM;MACN,KAAK,GAAGI,EAAE,IAAI;MACd;MACA,OAAOA,EAAE;MACT,QAAQwC;MACR,OAAOX;MACP,OAAO7B,EAAE;MACT;KACF,CAAC;IACH;IACA;GACF;GACA,KAAK,OAAO;IACV,IAAMQ,IAAOR,EAAE,WAAW,IAAI,aAAaG,CAAK,GAC1CF,IAAMD,EAAE,UAAU8B,GAClBW,KAAQ,MACZzC,EAAE,UAAU,IAAI;KAAC0C,EAAE;KAAIA,EAAE;KAAIA,EAAE;KAAIA,EAAE,KAAK1C,EAAE;IAAO,IAAI0C,GACnDC,IAAcC,EAAUH,EAAKzC,EAAE,KAAK,CAAC,GAErC6C,IACJ,CAAC7C,EAAE,YACHqB,EAAM,OAAO,MACV,MACCyB,MAAM9C,KACN,CAAC8C,EAAE,UACHA,EAAE,SAAS,SACX,CAACA,EAAE,YACHA,EAAE,cAAc9C,EAAE,SACtB,GACI+C,IAAW/C,EAAE,eAAe,KAAKgD,EAAW3B,GAAOrB,CAAC;IAC1D,EAAM,KACJU,EACE,GAAGV,EAAE,IAAI,OACTiD,GACAjD,GACAG,IACC,GAAG,GAAG,MAAM;KACX,IAAM+C,IAAQ,OAAO,SAASjD,EAAII,EAAE,KAAK,OAAO,SAASG,EAAKH,EAAE;KAGhE,AAFA,EAAEA,IAAI,KAAKX,EAAIU,EAAEC,KAAKL,EAAE,WAAWJ,EAAO,CAAC,GAC3C,EAAES,IAAI,IAAI,KAAK6C,IAAQ1C,EAAKH,KAAKT,EAAO,IAAIC,GAC5C,EAAEQ,IAAI,IAAI,KAAK6C,IAAQjD,EAAII,KAAKT,EAAO,IAAIC;KAC3C,IAAMsD,IAAKnD,EAAE,cAAcK;KAC3B,EAAEA,IAAI,IAAI,KAAK8C,IAAKP,EAAUH,EAAKU,CAAE,CAAC,IAAIR;IAC5C,GACA;KACE,WAAW3C,EAAE;KAEb,QAAQ6C,IAAS,IAAI7C,EAAE;KAEvB,OAAO+C,IAAW,KAAM;KACxB,SAAS;KACT;IACF,CACF,CACF;IACA;GACF;GACA,KAAK,eAAe;IAClB,IAAM,EAAE,SAAM,SAAM,WAAQ/C,EAAE,MACxBoD,IAAKR,EAAU5C,EAAE,OAAO,GACxBqD,IAAOT,EAAU5C,EAAE,SAAS,GAC5BsD,KAAW,MACfC,KAAQ,OAAO,SAASA,EAAKlD,EAAE,KAAKyB,EAAEzB,KAAKkD,EAAKlD,KAAKgD,IAAOD;IAE9D,EAAM,KACJ1C,EACE,GAAGV,EAAE,IAAI,QACTiD,GACAjD,GACAG,IACC,GAAG,GAAG,MAAM;KACX,IAAMqD,IAAKC,IAAOA,EAAKpD,KAAKyB,EAAEzB,IACxBqD,IAAKC,IAAMA,EAAItD,KAAKyB,EAAEzB,IACtB6C,IACJ,OAAO,SAASM,CAAE,KAClB,OAAO,SAASE,CAAE,KAClB,OAAO,SAAS5B,EAAEzB,EAAE;KAItB,AAHA,EAAEA,IAAI,KAAKX,EAAIU,EAAEC,IAAIT,EAAO,CAAC,GAC7B,EAAES,IAAI,IAAI,KAAK6C,IAAQQ,IAAK9D,EAAO,IAAIC,GACvC,EAAEQ,IAAI,IAAI,KAAK6C,IAAQM,IAAK5D,EAAO,IAAIC,GACvC,EAAEQ,IAAI,IAAI,KAAKiD,EAAQjD,CAAC;IAC1B,GACA;KACE,WAAW;KACX,QAAQ;KACR,OAAO;KACP,SAASL,EAAE,YAAY;KACvB;IACF,CACF,GACAU,EACE,GAAGV,EAAE,IAAI,QACTiD,GACAjD,GACAG,IACC,GAAG,GAAG,MAAM;KACX,IAAM2C,IAAIS,IAAOA,EAAKlD,KAAKyB,EAAEzB,IACvB6C,IAAQ,OAAO,SAASJ,CAAC,KAAK,OAAO,SAAShB,EAAEzB,EAAE;KAIxD,AAHA,EAAEA,IAAI,KAAKX,EAAIU,EAAEC,IAAIT,EAAO,CAAC,GAC7B,EAAES,IAAI,IAAI,KAAK6C,IAAQJ,IAAIlD,EAAO,IAAIC,GACtC,EAAEQ,IAAI,IAAI,KAAK6C,IAAQpB,EAAEzB,KAAKT,EAAO,IAAIC,GACzC,EAAEQ,IAAI,IAAI,KAAKiD,EAAQjD,CAAC;IAC1B,GACA;KACE,WAAWL,EAAE;KACb,QAAQ,KAAK,IAAIA,EAAE,QAAQ,GAAG;KAC9B,OAAO;KACP,SAAS;KACT;IACF,CACF,CACF;IACA;GACF;GACA,KAAK;IACH,EAAM,KAAK,GAAG4D,EAAS5D,GAAGJ,GAAQqD,CAAO,CAAC;IAC1C;GACF,KAAK,WAAW;IACd,IAAMY,IAAS7D,EAAE,YACX8D,IAAK9D,EAAE,SAAS,GAChBiB,IAAQF,EAAYf,GAAGgB,CAAO;IACpC,EAAM,KACJN,EACE,GAAGV,EAAE,IAAI,SACTiD,GACAjD,GACAG,IACC,GAAG,GAAG,MAAM;KACX,IAAM,IAAI0D,IAASA,EAAOxD,KAAK,GACzB6C,IAAQ,MAAM,KAAK,OAAO,SAAS9C,EAAEC,EAAE;KAI7C,AAHA,EAAEA,IAAI,KAAKX,EAAIU,EAAEC,IAAIT,EAAO,CAAC,GAC7B,EAAES,IAAI,IAAI,KAAK6C,IAAQpB,EAAEzB,KAAKyD,IAAKlE,EAAO,IAAIC,GAC9C,EAAEQ,IAAI,IAAI,KAAK6C,IAAQpB,EAAEzB,KAAKyD,IAAKlE,EAAO,IAAIC,GAC9C,EAAEQ,IAAI,IAAI,KAAK;IACjB,GACA;KACE,WAAWL,EAAE,SAAS;KACtB,QAAQiB,EAAM;KACd,OAAOA,EAAM;KACb,SAAS;KACT;IACF,CACF,CACF;IACA;GACF;GACA,SAAS;IACP,IAAM8C,oBAAS,IAAI,YAAY5D,IAAA,EAAsB,GAC/CS,IAAI,IAAI,aAAamD,CAAM,GAC3BlD,IAAI,IAAI,YAAYkD,CAAM,GAC1BpB,IAAcC,EAAU5C,EAAE,KAAK,GAC/BgE,IAAQhE,EAAE,KAAK;IACrB,KAAK,IAAIK,IAAI,GAAGA,IAAIF,GAAO,KAAK;KAC9B,IAAM+C,IAAQ,OAAO,SAASpB,EAAEzB,EAAE,KAAK,OAAO,SAASD,EAAEC,EAAE;KAE3D,AADA,EAAEA,IAAI,KAAK6C,IAAQ9C,EAAEC,KAAKT,EAAO,IAAIC,GACrC,EAAEQ,IAAI,IAAI,KAAK6C,IAAQpB,EAAEzB,KAAKT,EAAO,IAAIC;KACzC,IAAMoE,IAAOD,IAAQA,EAAM3D,KAAK;KAChC,EAAEA,IAAI,IAAI,KAAK,OAAO,SAAS4D,CAAI,KAAKA,IAAO,IAAIA,IAAOjE,EAAE;KAC5D,IAAMmD,IAAKnD,EAAE,cAAcK;KAC3B,EAAEA,IAAI,IAAI,KAAK8C,IAAKP,EAAUO,CAAE,IAAIR;IACtC;IACA,EAAM,KAAK;KACT,MAAM;KACN,KAAK,GAAG3C,EAAE,IAAI;KACd;KACA,OAAOA,EAAE;KACT,WAAW+D;KACX;KACA,SAAS/D,EAAE;KACX,QAAQG,KAAS,MAAO,OAAO;IACjC,CAAC;IACD;GACF;EACF;CACF;CAEA,OADAoB,EAAM,KAAK,GAAGC,CAAQ,GACfD;AACT,GAGMyB,KAAc,GAAmB,MAAmB;CACxD,IAAIkB,IAAO;CACX,IAAI7C,EAAM,EAAE,SAAS,YAAY;EAC/B,IAAM,EAAE,MAAG,aAAUrB,EAAE;EACvB,IAAO;EACP,KAAK,IAAIK,IAAI,GAAGA,IAAI,KAAK,IAAIF,GAAO,EAAE,GAAG,KAAK;GAC5C,IAAMgE,IAAI,KAAK,IAAI/D,EAAEC,KAAKD,EAAEC,IAAI,EAAE;GAClC,AAAI8D,IAAI,KAAKA,IAAID,MAAM,IAAOC;EAChC;EACA,IAAI,CAAC,OAAO,SAASD,CAAI,GAAG,OAAO;CACrC;CACA,OAAOlE,EAAE,eAAe,KAAKkE,IAAO;AACtC,GAOMN,KACJ,GACA,GACA,MACiB;CACjB,IAAM,EAAE,MAAG,MAAG,UAAO,SAAM,QAAK,OAAI,OAAI,gBAAa5D,EAAE,MACjDoE,IAAQxB,EAAU5C,EAAE,KAAK,GACzBqE,IAAOzB,EAAU;EACrB5C,EAAE,MAAM;EACRA,EAAE,MAAM;EACRA,EAAE,MAAM;EACRA,EAAE,MAAM,KAAKA,EAAE;CACjB,CAAC,GACKsD,KAAW,GAAW,IAAQ,OAAU;EAC5C,IAAMH,IAAKnD,EAAE,cAAcK;EAE3B,OADK8C,IACEP,EAAU0B,IAAQ;GAACnB,EAAG;GAAIA,EAAG;GAAIA,EAAG;GAAIA,EAAG,KAAKnD,EAAE;EAAO,IAAImD,CAAE,IADtDmB,IAAQD,IAAOD;CAEjC,GACMG,IAAOvE,EAAE,cACTwE,IAAK,KAAK,IAAI,GAAGxE,EAAE,SAAS,GAC5ByE,KAAM,GAA6B,MACvCC,KAAU,OAAO,SAASA,EAAOrE,EAAE,IAAIqE,EAAOrE,KAAKyB,EAAEzB,IACjD0B,KAAM,GAAW,IAAK,MAAMrC,EAAIU,EAAEC,KAAKL,EAAE,YAAY2E,GAAI/E,EAAO,CAAC,GACjEoC,KAAM,MAAc4C,IAAIhF,EAAO,GAE/BiF,KACJ,GACA,GACA,GACA,MACY;EACZ,IAAMd,oBAAS,IAAI,YAAY5D,IAAQ2E,IAAA,EAAkB,GACnDlE,IAAI,IAAI,aAAamD,CAAM,GAC3BlD,IAAI,IAAI,YAAYkD,CAAM;EAChC,KAAK,IAAI1D,IAAI,GAAGA,IAAIF,GAAO,KAAK;GAC9B,IAAM+C,IAAQ,OAAO,SAASpB,EAAEzB,EAAE,KAAK,OAAO,SAASD,EAAEC,EAAE;GAC3D,KAAK,IAAI0E,IAAI,GAAGA,IAAID,GAAO,KAAK;IAC9B,IAAME,KAAK3E,IAAIyE,IAAQC,KAAK,GACtB,CAACJ,GAAIjD,GAAGC,KAAKuB,IAAQ+B,EAAM5E,GAAG0E,CAAC,IAAI;KAAC;KAAG;KAAK;IAAG;IAIrD,AAHA,EAAEC,KAAK9B,IAAQnB,EAAG1B,GAAGsE,CAAE,IAAI9E,GAC3B,EAAEmF,IAAI,KAAK9B,IAAQlB,EAAGN,CAAC,IAAI7B,GAC3B,EAAEmF,IAAI,KAAK9B,IAAQlB,EAAGL,CAAC,IAAI9B,GAC3B,EAAEmF,IAAI,KAAK1B,EAAQjD,CAAC;GACtB;EACF;EACA,OAAO;GACL,MAAM;GACN,KAAK,GAAGL,EAAE,IAAI,GAAGoB;GACjB;GACA,OAAOpB,EAAE;GACT,WAAW+D;GACX,OAAO5D,IAAQ2E;GACf,QAAQ;GACR,OAAO;GACP,QAAQ;GACR,GAAGhE;EACL;CACF,GAiDMS,IAAsB;EAhDhBb,EACV,GAAGV,EAAE,IAAI,OACTiD,GACAjD,GACAG,IACC,GAAG,GAAG,MAAM;GACX,IAAM+C,IAAQ,OAAO,SAASpB,EAAEzB,EAAE,KAAK,OAAO,SAASD,EAAEC,EAAE;GAI3D,AAHA,EAAEA,IAAI,KAAK6C,IAAQnB,EAAG1B,CAAC,IAAIR,GAC3B,EAAEQ,IAAI,IAAI,KAAK6C,IAAQlB,EAAGyC,EAAGS,GAAI7E,CAAC,CAAC,IAAIR,GACvC,EAAEQ,IAAI,IAAI,KAAK6C,IAAQlB,EAAGyC,EAAGU,GAAI9E,CAAC,CAAC,IAAIR,GACvC,EAAEQ,IAAI,IAAI,KAAKiD,EAAQjD,GAAG,EAAI;EAChC,GACA;GAAE,WAAWkE;GAAM,QAAQ;GAAG,OAAO;GAAG,SAAS;GAAG,QAAQ;EAAM,CAoCvC;EAjCfM,EACZ,SACA,IACC,GAAG,MACFE,MAAM,IACF;GAAC;GAAGN,EAAGd,GAAKtD,CAAC;GAAGoE,EAAGS,GAAI7E,CAAC;EAAC,IACzB0E,MAAM,IACJ;GAAC;GAAGN,EAAGU,GAAI9E,CAAC;GAAGoE,EAAGhB,GAAMpD,CAAC;EAAC,IAC1B;GAAC0E,MAAM,IAAI,CAACR,IAAOA;GAAME,EAAGS,GAAI7E,CAAC;GAAGoE,EAAGU,GAAI9E,CAAC;EAAC,GACrD;GAAE,WAAW;GAAG,SAASmE,IAAK;EAAE,CAwBA;EAtBrBK,EACX,QACA,IACC,GAAG,MAAM;GACR,IAAMD,IAAIH,EAAGM,MAAM,IAAIpB,IAAMF,GAAMpD,CAAC;GACpC,OAAO;IAAC;IAAGuE;IAAGA;GAAC;EACjB,GACA;GAAE,WAAWL,IAAO;GAAG,SAASC,IAAK;EAAE,CAeA;EAb3BK,EACZ,SACA,IACC,GAAG,MAAM;GACR,IAAMD,IAAIH,EAAGM,MAAM,IAAIG,IAAKC,GAAI9E,CAAC;GACjC,OAAO;IAAC;IAAGuE;IAAGA;GAAC;EACjB,GACA;GAAE,WAAWL;GAAM,SAASC,IAAK;EAAE,CAMU;EAJhCK,EAAM,UAAU,IAAI,MAAM;GAAC;GAAG/C,EAAEzB;GAAIyB,EAAEzB;EAAE,GAAG;GACxD,WAAWkE;GACX,SAAS,KAAK,IAAI,GAAGC,IAAK,EAAG;EAC/B,CACsD;CAAM;CAC5D,IAAIY,GAAU;EACZ,IAAIvD,IAAI;EACR,KAAK,IAAIxB,IAAI,GAAGA,IAAIF,GAAO,KAAK,KAAKiF,EAAS/E,EAAE,EAAE,UAAU;EAC5D,IAAIwB,GAAG;GACL,IAAMkC,oBAAS,IAAI,YAAYlC,IAAA,EAAkB,GAC3CjB,IAAI,IAAI,aAAamD,CAAM,GAC3BlD,IAAI,IAAI,YAAYkD,CAAM,GAC5BiB,IAAI;GACR,KAAK,IAAI3E,IAAI,GAAGA,IAAIF,GAAO,KAAK;IAC9B,IAAMkF,IAAOD,EAAS/E;IACtB,IAAKgF,GACL,KAAK,IAAMT,KAAKS,GAAM;KACpB,IAAMnC,IAAQ,OAAO,SAAS0B,CAAC,KAAK,OAAO,SAASxE,EAAEC,EAAE;KAKxD,AAJA,EAAE2E,IAAI,KAAK9B,IAAQnB,EAAG1B,CAAC,IAAIR,GAC3B,EAAEmF,IAAI,IAAI,KAAK9B,IAAQlB,EAAG4C,CAAC,IAAI/E,GAC/B,EAAEmF,IAAI,IAAI,KAAKhF,EAAE,aACjB,EAAEgF,IAAI,IAAI,KAAK1B,EAAQjD,CAAC,GACxB;IACF;GACF;GACA,EAAM,KAAK;IACT,MAAM;IACN,KAAK,GAAGL,EAAE,IAAI;IACd;IACA,OAAOA,EAAE;IACT,WAAW+D;IACX,OAAOlC;IAEP,SAAS7B,EAAE,iBAAiB,WAAW,IAAI;IAC3C,QAAQA,EAAE,iBAAiB,YAAY6B,KAAK,MAAO,OAAO;GAC5D,CAAC;EACH;CACF;CACA,OAAON;AACT"}
@@ -1,2 +1,2 @@
1
- const e=require("./locale.cjs");var t={en:{open:`Open`,high:`High`,low:`Low`,close:`Close`,max:`Max`,q3:`Q3`,median:`Median`,q1:`Q1`,min:`Min`,outliers:`Outliers`,value:`Value`,x:`x`,y:`y`,series:`Series`,chart:`Chart`,chartOf:`Chart: {series}`},zh:{open:`开盘`,high:`最高`,low:`最低`,close:`收盘`,max:`最大值`,q3:`上四分位`,median:`中位数`,q1:`下四分位`,min:`最小值`,outliers:`异常值`,value:`数值`,series:`系列`,chart:`图表`,chartOf:`图表:{series}`},ja:{open:`始値`,high:`高値`,low:`安値`,close:`終値`,max:`最大値`,q3:`第3四分位`,median:`中央値`,q1:`第1四分位`,min:`最小値`,outliers:`外れ値`,value:`値`,series:`系列`,chart:`グラフ`,chartOf:`グラフ:{series}`},fr:{open:`Ouverture`,high:`Plus haut`,low:`Plus bas`,close:`Clôture`,max:`Max`,q3:`Q3`,median:`Médiane`,q1:`Q1`,min:`Min`,outliers:`Valeurs aberrantes`,value:`Valeur`,series:`Série`,chart:`Graphique`,chartOf:`Graphique : {series}`}},n=(n,r)=>e.localeLabels(t,n,r),r=e=>/^(zh|ja)\b/i.test(e)?`、`:`, `,i=e=>e.series.length?e.labels.chartOf.replace(`{series}`,e.series.map(e=>e.name).join(r(e.locale))):e.labels.chart;exports.CHART_LABELS=t,exports.chartAriaLabel=i,exports.chartLabels=n;
1
+ const e=require("./locale.cjs");var t={en:{open:`Open`,high:`High`,low:`Low`,close:`Close`,max:`Max`,q3:`Q3`,median:`Median`,q1:`Q1`,min:`Min`,outliers:`Outliers`,value:`Value`,x:`x`,y:`y`,series:`Series`,chart:`Chart`,chartOf:`Chart: {series}`,start:`Start`,end:`End`,duration:`Duration`,progress:`Progress`,dependencies:`Depends on`,outlier:`Outlier`},zh:{open:`开盘`,high:`最高`,low:`最低`,close:`收盘`,max:`最大值`,q3:`上四分位`,median:`中位数`,q1:`下四分位`,min:`最小值`,outliers:`异常值`,value:`数值`,series:`系列`,chart:`图表`,chartOf:`图表:{series}`,start:`开始`,end:`结束`,duration:`时长`,progress:`进度`,dependencies:`前置任务`,outlier:`异常值`},ja:{open:`始値`,high:`高値`,low:`安値`,close:`終値`,max:`最大値`,q3:`第3四分位`,median:`中央値`,q1:`第1四分位`,min:`最小値`,outliers:`外れ値`,value:`値`,series:`系列`,chart:`グラフ`,chartOf:`グラフ:{series}`,start:`開始`,end:`終了`,duration:`期間`,progress:`進捗`,dependencies:`先行タスク`,outlier:`外れ値`},fr:{open:`Ouverture`,high:`Plus haut`,low:`Plus bas`,close:`Clôture`,max:`Max`,q3:`Q3`,median:`Médiane`,q1:`Q1`,min:`Min`,outliers:`Valeurs aberrantes`,value:`Valeur`,series:`Série`,chart:`Graphique`,chartOf:`Graphique : {series}`,start:`Début`,end:`Fin`,duration:`Durée`,progress:`Avancement`,dependencies:`Dépend de`,outlier:`Valeur aberrante`}},n=(n,r)=>e.localeLabels(t,n,r),r=e=>/^(zh|ja)\b/i.test(e)?`、`:`, `,i=e=>e.series.length?e.labels.chartOf.replace(`{series}`,e.series.map(e=>e.name).join(r(e.locale))):e.labels.chart;exports.CHART_LABELS=t,exports.chartAriaLabel=i,exports.chartLabels=n;
2
2
  //# sourceMappingURL=labels.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"labels.cjs","names":["localeLabels","require_locale","CHART_LABELS","chartLabels","locale","overrides","listSeparator","chartAriaLabel","model","s"],"sources":["../../../../charts/src/engine/labels.ts"],"sourcesContent":["// Built-in texts of the cartesian engine (tooltip rows, accessible names).\n\nimport { localeLabels, type LabelDictionary } from \"./locale\";\nimport type { ChartLabels } from \"./types\";\n\nexport const CHART_LABELS: LabelDictionary<ChartLabels> = {\n en: {\n open: \"Open\",\n high: \"High\",\n low: \"Low\",\n close: \"Close\",\n max: \"Max\",\n q3: \"Q3\",\n median: \"Median\",\n q1: \"Q1\",\n min: \"Min\",\n outliers: \"Outliers\",\n value: \"Value\",\n x: \"x\",\n y: \"y\",\n series: \"Series\",\n chart: \"Chart\",\n chartOf: \"Chart: {series}\",\n },\n zh: {\n open: \"开盘\",\n high: \"最高\",\n low: \"最低\",\n close: \"收盘\",\n max: \"最大值\",\n q3: \"上四分位\",\n median: \"中位数\",\n q1: \"下四分位\",\n min: \"最小值\",\n outliers: \"异常值\",\n value: \"数值\",\n series: \"系列\",\n chart: \"图表\",\n chartOf: \"图表:{series}\",\n },\n ja: {\n open: \"始値\",\n high: \"高値\",\n low: \"安値\",\n close: \"終値\",\n max: \"最大値\",\n q3: \"第3四分位\",\n median: \"中央値\",\n q1: \"第1四分位\",\n min: \"最小値\",\n outliers: \"外れ値\",\n value: \"値\",\n series: \"系列\",\n chart: \"グラフ\",\n chartOf: \"グラフ:{series}\",\n },\n fr: {\n open: \"Ouverture\",\n high: \"Plus haut\",\n low: \"Plus bas\",\n close: \"Clôture\",\n max: \"Max\",\n q3: \"Q3\",\n median: \"Médiane\",\n q1: \"Q1\",\n min: \"Min\",\n outliers: \"Valeurs aberrantes\",\n value: \"Valeur\",\n series: \"Série\",\n chart: \"Graphique\",\n chartOf: \"Graphique : {series}\",\n },\n};\n\n/** Texts of a locale with the overrides */\nexport const chartLabels = (\n locale: string,\n overrides?: Partial<ChartLabels>,\n): ChartLabels => localeLabels(CHART_LABELS, locale, overrides);\n\n/** Separator of the list of series names in accessible names */\nconst listSeparator = (locale: string) =>\n /^(zh|ja)\\b/i.test(locale) ? \"、\" : \", \";\n\n/** Default accessible name of a chart model: \"Chart: Revenue, Costs\" */\nexport const chartAriaLabel = (model: {\n labels: ChartLabels;\n locale: string;\n series: readonly { name: string }[];\n}): string =>\n model.series.length\n ? model.labels.chartOf.replace(\n \"{series}\",\n model.series.map((s) => s.name).join(listSeparator(model.locale)),\n )\n : model.labels.chart;\n"],"mappings":"gCAKA,IAAaE,EAA6C,CACxD,GAAI,CACF,KAAM,OACN,KAAM,OACN,IAAK,MACL,MAAO,QACP,IAAK,MACL,GAAI,KACJ,OAAQ,SACR,GAAI,KACJ,IAAK,MACL,SAAU,WACV,MAAO,QACP,EAAG,IACH,EAAG,IACH,OAAQ,SACR,MAAO,QACP,QAAS,iBACX,EACA,GAAI,CACF,KAAM,KACN,KAAM,KACN,IAAK,KACL,MAAO,KACP,IAAK,MACL,GAAI,OACJ,OAAQ,MACR,GAAI,OACJ,IAAK,MACL,SAAU,MACV,MAAO,KACP,OAAQ,KACR,MAAO,KACP,QAAS,aACX,EACA,GAAI,CACF,KAAM,KACN,KAAM,KACN,IAAK,KACL,MAAO,KACP,IAAK,MACL,GAAI,QACJ,OAAQ,MACR,GAAI,QACJ,IAAK,MACL,SAAU,MACV,MAAO,IACP,OAAQ,KACR,MAAO,MACP,QAAS,cACX,EACA,GAAI,CACF,KAAM,YACN,KAAM,YACN,IAAK,WACL,MAAO,UACP,IAAK,MACL,GAAI,KACJ,OAAQ,UACR,GAAI,KACJ,IAAK,MACL,SAAU,qBACV,MAAO,SACP,OAAQ,QACR,MAAO,YACP,QAAS,sBACX,CACF,EAGaC,GACX,EACA,IACgBH,EAAAA,aAAaE,EAAcE,EAAQC,CAAS,EAGxDC,EAAiB,GACrB,cAAc,KAAKF,CAAM,EAAI,IAAM,KAGxBG,EAAkB,GAK7BC,EAAM,OAAO,OACTA,EAAM,OAAO,QAAQ,QACnB,WACAA,EAAM,OAAO,IAAK,GAAMC,EAAE,IAAI,CAAC,CAAC,KAAKH,EAAcE,EAAM,MAAM,CAAC,CAClE,EACAA,EAAM,OAAO"}
1
+ {"version":3,"file":"labels.cjs","names":["localeLabels","require_locale","CHART_LABELS","chartLabels","locale","overrides","listSeparator","chartAriaLabel","model","s"],"sources":["../../../../charts/src/engine/labels.ts"],"sourcesContent":["// Built-in texts of the cartesian engine (tooltip rows, accessible names).\n\nimport { localeLabels, type LabelDictionary } from \"./locale\";\nimport type { ChartLabels } from \"./types\";\n\nexport const CHART_LABELS: LabelDictionary<ChartLabels> = {\n en: {\n open: \"Open\",\n high: \"High\",\n low: \"Low\",\n close: \"Close\",\n max: \"Max\",\n q3: \"Q3\",\n median: \"Median\",\n q1: \"Q1\",\n min: \"Min\",\n outliers: \"Outliers\",\n value: \"Value\",\n x: \"x\",\n y: \"y\",\n series: \"Series\",\n chart: \"Chart\",\n chartOf: \"Chart: {series}\",\n start: \"Start\",\n end: \"End\",\n duration: \"Duration\",\n progress: \"Progress\",\n dependencies: \"Depends on\",\n outlier: \"Outlier\",\n },\n zh: {\n open: \"开盘\",\n high: \"最高\",\n low: \"最低\",\n close: \"收盘\",\n max: \"最大值\",\n q3: \"上四分位\",\n median: \"中位数\",\n q1: \"下四分位\",\n min: \"最小值\",\n outliers: \"异常值\",\n value: \"数值\",\n series: \"系列\",\n chart: \"图表\",\n chartOf: \"图表:{series}\",\n start: \"开始\",\n end: \"结束\",\n duration: \"时长\",\n progress: \"进度\",\n dependencies: \"前置任务\",\n outlier: \"异常值\",\n },\n ja: {\n open: \"始値\",\n high: \"高値\",\n low: \"安値\",\n close: \"終値\",\n max: \"最大値\",\n q3: \"第3四分位\",\n median: \"中央値\",\n q1: \"第1四分位\",\n min: \"最小値\",\n outliers: \"外れ値\",\n value: \"値\",\n series: \"系列\",\n chart: \"グラフ\",\n chartOf: \"グラフ:{series}\",\n start: \"開始\",\n end: \"終了\",\n duration: \"期間\",\n progress: \"進捗\",\n dependencies: \"先行タスク\",\n outlier: \"外れ値\",\n },\n fr: {\n open: \"Ouverture\",\n high: \"Plus haut\",\n low: \"Plus bas\",\n close: \"Clôture\",\n max: \"Max\",\n q3: \"Q3\",\n median: \"Médiane\",\n q1: \"Q1\",\n min: \"Min\",\n outliers: \"Valeurs aberrantes\",\n value: \"Valeur\",\n series: \"Série\",\n chart: \"Graphique\",\n chartOf: \"Graphique : {series}\",\n start: \"Début\",\n end: \"Fin\",\n duration: \"Durée\",\n progress: \"Avancement\",\n dependencies: \"Dépend de\",\n outlier: \"Valeur aberrante\",\n },\n};\n\n/** Texts of a locale with the overrides */\nexport const chartLabels = (\n locale: string,\n overrides?: Partial<ChartLabels>,\n): ChartLabels => localeLabels(CHART_LABELS, locale, overrides);\n\n/** Separator of the list of series names in accessible names */\nconst listSeparator = (locale: string) =>\n /^(zh|ja)\\b/i.test(locale) ? \"、\" : \", \";\n\n/** Default accessible name of a chart model: \"Chart: Revenue, Costs\" */\nexport const chartAriaLabel = (model: {\n labels: ChartLabels;\n locale: string;\n series: readonly { name: string }[];\n}): string =>\n model.series.length\n ? model.labels.chartOf.replace(\n \"{series}\",\n model.series.map((s) => s.name).join(listSeparator(model.locale)),\n )\n : model.labels.chart;\n\n/**\n * Localized accessible description of a chart, for platforms that build their\n * own accessible name (\"Chart: Revenue, Costs\", \"营收:营收、成本\").\n * With a `title`, the title replaces the generic \"Chart\" word.\n */\nexport function describeChart(input: {\n /** BCP 47 locale (default \"en\") */\n locale?: string;\n /** Series of the chart (only their names are used) */\n series?: readonly { name: string }[];\n /** Title of the chart */\n title?: string;\n /** Overrides of the built-in texts */\n labels?: Partial<ChartLabels>;\n}): string {\n const locale = input.locale ?? \"en\";\n const labels = chartLabels(locale, input.labels);\n const series = input.series ?? [];\n const title = input.title?.trim();\n const generic = chartAriaLabel({ labels, locale, series });\n if (!title) return generic;\n if (!series.length) return title;\n const index = labels.chartOf.indexOf(labels.chart);\n if (index < 0 || !labels.chart) return `${title}. ${generic}`;\n const names = series.map((s) => s.name).join(listSeparator(locale));\n const fill = (part: string) => part.split(\"{series}\").join(names);\n return (\n fill(labels.chartOf.slice(0, index)) +\n title +\n fill(labels.chartOf.slice(index + labels.chart.length))\n );\n}\n"],"mappings":"gCAKA,IAAaE,EAA6C,CACxD,GAAI,CACF,KAAM,OACN,KAAM,OACN,IAAK,MACL,MAAO,QACP,IAAK,MACL,GAAI,KACJ,OAAQ,SACR,GAAI,KACJ,IAAK,MACL,SAAU,WACV,MAAO,QACP,EAAG,IACH,EAAG,IACH,OAAQ,SACR,MAAO,QACP,QAAS,kBACT,MAAO,QACP,IAAK,MACL,SAAU,WACV,SAAU,WACV,aAAc,aACd,QAAS,SACX,EACA,GAAI,CACF,KAAM,KACN,KAAM,KACN,IAAK,KACL,MAAO,KACP,IAAK,MACL,GAAI,OACJ,OAAQ,MACR,GAAI,OACJ,IAAK,MACL,SAAU,MACV,MAAO,KACP,OAAQ,KACR,MAAO,KACP,QAAS,cACT,MAAO,KACP,IAAK,KACL,SAAU,KACV,SAAU,KACV,aAAc,OACd,QAAS,KACX,EACA,GAAI,CACF,KAAM,KACN,KAAM,KACN,IAAK,KACL,MAAO,KACP,IAAK,MACL,GAAI,QACJ,OAAQ,MACR,GAAI,QACJ,IAAK,MACL,SAAU,MACV,MAAO,IACP,OAAQ,KACR,MAAO,MACP,QAAS,eACT,MAAO,KACP,IAAK,KACL,SAAU,KACV,SAAU,KACV,aAAc,QACd,QAAS,KACX,EACA,GAAI,CACF,KAAM,YACN,KAAM,YACN,IAAK,WACL,MAAO,UACP,IAAK,MACL,GAAI,KACJ,OAAQ,UACR,GAAI,KACJ,IAAK,MACL,SAAU,qBACV,MAAO,SACP,OAAQ,QACR,MAAO,YACP,QAAS,uBACT,MAAO,QACP,IAAK,MACL,SAAU,QACV,SAAU,aACV,aAAc,YACd,QAAS,kBACX,CACF,EAGaC,GACX,EACA,IACgBH,EAAAA,aAAaE,EAAcE,EAAQC,CAAS,EAGxDC,EAAiB,GACrB,cAAc,KAAKF,CAAM,EAAI,IAAM,KAGxBG,EAAkB,GAK7BC,EAAM,OAAO,OACTA,EAAM,OAAO,QAAQ,QACnB,WACAA,EAAM,OAAO,IAAK,GAAMC,EAAE,IAAI,CAAC,CAAC,KAAKH,EAAcE,EAAM,MAAM,CAAC,CAClE,EACAA,EAAM,OAAO"}
@@ -11,3 +11,20 @@ export declare const chartAriaLabel: (model: {
11
11
  name: string;
12
12
  }[];
13
13
  }) => string;
14
+ /**
15
+ * Localized accessible description of a chart, for platforms that build their
16
+ * own accessible name ("Chart: Revenue, Costs", "营收:营收、成本").
17
+ * With a `title`, the title replaces the generic "Chart" word.
18
+ */
19
+ export declare function describeChart(input: {
20
+ /** BCP 47 locale (default "en") */
21
+ locale?: string;
22
+ /** Series of the chart (only their names are used) */
23
+ series?: readonly {
24
+ name: string;
25
+ }[];
26
+ /** Title of the chart */
27
+ title?: string;
28
+ /** Overrides of the built-in texts */
29
+ labels?: Partial<ChartLabels>;
30
+ }): string;
@@ -11,3 +11,20 @@ export declare const chartAriaLabel: (model: {
11
11
  name: string;
12
12
  }[];
13
13
  }) => string;
14
+ /**
15
+ * Localized accessible description of a chart, for platforms that build their
16
+ * own accessible name ("Chart: Revenue, Costs", "营收:营收、成本").
17
+ * With a `title`, the title replaces the generic "Chart" word.
18
+ */
19
+ export declare function describeChart(input: {
20
+ /** BCP 47 locale (default "en") */
21
+ locale?: string;
22
+ /** Series of the chart (only their names are used) */
23
+ series?: readonly {
24
+ name: string;
25
+ }[];
26
+ /** Title of the chart */
27
+ title?: string;
28
+ /** Overrides of the built-in texts */
29
+ labels?: Partial<ChartLabels>;
30
+ }): string;