@weng-lab/visualization 2.4.0-beta.1 → 2.4.0-beta.2

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 (990) hide show
  1. package/dist/src/components/ScatterPlot/hooks/useHoverTooltip.d.ts +2 -1
  2. package/dist/src/components/ScatterPlot/hooks/useHoverTooltip.d.ts.map +1 -1
  3. package/dist/src/components/ScatterPlot/scatterplot.d.ts.map +1 -1
  4. package/dist/src/components/ScatterPlot/types.d.ts +16 -0
  5. package/dist/src/components/ScatterPlot/types.d.ts.map +1 -1
  6. package/dist/visualization.es10.js +11 -11
  7. package/dist/visualization.es100.js +221 -32
  8. package/dist/visualization.es100.js.map +1 -1
  9. package/dist/visualization.es101.js +2 -13
  10. package/dist/visualization.es101.js.map +1 -1
  11. package/dist/visualization.es102.js +557 -58
  12. package/dist/visualization.es102.js.map +1 -1
  13. package/dist/visualization.es103.js +213 -31
  14. package/dist/visualization.es103.js.map +1 -1
  15. package/dist/visualization.es104.js +2 -18
  16. package/dist/visualization.es104.js.map +1 -1
  17. package/dist/visualization.es105.js +4800 -14
  18. package/dist/visualization.es105.js.map +1 -1
  19. package/dist/visualization.es106.js +24 -25
  20. package/dist/visualization.es106.js.map +1 -1
  21. package/dist/visualization.es107.js +43 -220
  22. package/dist/visualization.es107.js.map +1 -1
  23. package/dist/visualization.es108.js +144 -2
  24. package/dist/visualization.es108.js.map +1 -1
  25. package/dist/visualization.es109.js +146 -556
  26. package/dist/visualization.es109.js.map +1 -1
  27. package/dist/visualization.es11.js +10 -10
  28. package/dist/visualization.es110.js +14 -213
  29. package/dist/visualization.es110.js.map +1 -1
  30. package/dist/visualization.es111.js +15 -2
  31. package/dist/visualization.es111.js.map +1 -1
  32. package/dist/visualization.es112.js +57 -4799
  33. package/dist/visualization.es112.js.map +1 -1
  34. package/dist/visualization.es113.js +31 -24
  35. package/dist/visualization.es113.js.map +1 -1
  36. package/dist/visualization.es114.js +18 -45
  37. package/dist/visualization.es114.js.map +1 -1
  38. package/dist/visualization.es115.js +14 -144
  39. package/dist/visualization.es115.js.map +1 -1
  40. package/dist/visualization.es116.js +26 -147
  41. package/dist/visualization.es116.js.map +1 -1
  42. package/dist/visualization.es117.js +2 -2
  43. package/dist/visualization.es118.js +1 -1
  44. package/dist/visualization.es119.js +2 -2
  45. package/dist/visualization.es12.js +2 -2
  46. package/dist/visualization.es121.js +1 -1
  47. package/dist/visualization.es122.js +2 -2
  48. package/dist/visualization.es123.js +2 -2
  49. package/dist/visualization.es124.js +2 -2
  50. package/dist/visualization.es127.js +5 -18
  51. package/dist/visualization.es127.js.map +1 -1
  52. package/dist/visualization.es128.js +10 -10
  53. package/dist/visualization.es129.js +90 -5
  54. package/dist/visualization.es129.js.map +1 -1
  55. package/dist/visualization.es13.js +7 -7
  56. package/dist/visualization.es130.js +12 -89
  57. package/dist/visualization.es130.js.map +1 -1
  58. package/dist/visualization.es131.js +4 -11
  59. package/dist/visualization.es131.js.map +1 -1
  60. package/dist/visualization.es132.js +14 -5
  61. package/dist/visualization.es132.js.map +1 -1
  62. package/dist/visualization.es133.js +7 -15
  63. package/dist/visualization.es133.js.map +1 -1
  64. package/dist/visualization.es134.js +14 -7
  65. package/dist/visualization.es134.js.map +1 -1
  66. package/dist/visualization.es135.js +4 -13
  67. package/dist/visualization.es135.js.map +1 -1
  68. package/dist/visualization.es136.js +7 -4
  69. package/dist/visualization.es136.js.map +1 -1
  70. package/dist/visualization.es137.js +60 -7
  71. package/dist/visualization.es137.js.map +1 -1
  72. package/dist/visualization.es138.js +38 -60
  73. package/dist/visualization.es138.js.map +1 -1
  74. package/dist/visualization.es139.js +35 -37
  75. package/dist/visualization.es139.js.map +1 -1
  76. package/dist/visualization.es140.js +83 -36
  77. package/dist/visualization.es140.js.map +1 -1
  78. package/dist/visualization.es141.js +27 -82
  79. package/dist/visualization.es141.js.map +1 -1
  80. package/dist/visualization.es142.js +3 -28
  81. package/dist/visualization.es142.js.map +1 -1
  82. package/dist/visualization.es143.js +71 -3
  83. package/dist/visualization.es143.js.map +1 -1
  84. package/dist/visualization.es144.js +15 -70
  85. package/dist/visualization.es144.js.map +1 -1
  86. package/dist/visualization.es145.js +11 -16
  87. package/dist/visualization.es145.js.map +1 -1
  88. package/dist/visualization.es146.js +5 -12
  89. package/dist/visualization.es146.js.map +1 -1
  90. package/dist/visualization.es147.js +19 -5
  91. package/dist/visualization.es147.js.map +1 -1
  92. package/dist/visualization.es148.js +3 -63
  93. package/dist/visualization.es148.js.map +1 -1
  94. package/dist/visualization.es149.js +36 -7
  95. package/dist/visualization.es149.js.map +1 -1
  96. package/dist/visualization.es15.js +8 -8
  97. package/dist/visualization.es150.js +8 -43
  98. package/dist/visualization.es150.js.map +1 -1
  99. package/dist/visualization.es151.js +14 -71
  100. package/dist/visualization.es151.js.map +1 -1
  101. package/dist/visualization.es152.js +11 -23
  102. package/dist/visualization.es152.js.map +1 -1
  103. package/dist/visualization.es153.js +5 -22
  104. package/dist/visualization.es153.js.map +1 -1
  105. package/dist/visualization.es154.js +11 -40
  106. package/dist/visualization.es154.js.map +1 -1
  107. package/dist/visualization.es155.js +3 -7
  108. package/dist/visualization.es155.js.map +1 -1
  109. package/dist/visualization.es156.js +2 -13
  110. package/dist/visualization.es156.js.map +1 -1
  111. package/dist/visualization.es157.js +11 -18
  112. package/dist/visualization.es157.js.map +1 -1
  113. package/dist/visualization.es158.js +30 -36
  114. package/dist/visualization.es158.js.map +1 -1
  115. package/dist/visualization.es159.js +42 -24
  116. package/dist/visualization.es159.js.map +1 -1
  117. package/dist/visualization.es160.js +49 -27
  118. package/dist/visualization.es160.js.map +1 -1
  119. package/dist/visualization.es161.js +3 -19
  120. package/dist/visualization.es161.js.map +1 -1
  121. package/dist/visualization.es162.js +3 -4
  122. package/dist/visualization.es162.js.map +1 -1
  123. package/dist/visualization.es163.js +5 -35
  124. package/dist/visualization.es163.js.map +1 -1
  125. package/dist/visualization.es164.js +5 -8
  126. package/dist/visualization.es164.js.map +1 -1
  127. package/dist/visualization.es165.js +10 -15
  128. package/dist/visualization.es165.js.map +1 -1
  129. package/dist/visualization.es166.js +4 -11
  130. package/dist/visualization.es166.js.map +1 -1
  131. package/dist/visualization.es167.js +17 -5
  132. package/dist/visualization.es167.js.map +1 -1
  133. package/dist/visualization.es168.js +18 -11
  134. package/dist/visualization.es168.js.map +1 -1
  135. package/dist/visualization.es169.js +36 -3
  136. package/dist/visualization.es169.js.map +1 -1
  137. package/dist/visualization.es170.js +2 -2
  138. package/dist/visualization.es170.js.map +1 -1
  139. package/dist/visualization.es171.js +2 -11
  140. package/dist/visualization.es171.js.map +1 -1
  141. package/dist/visualization.es172.js +4 -31
  142. package/dist/visualization.es172.js.map +1 -1
  143. package/dist/visualization.es173.js +14 -42
  144. package/dist/visualization.es173.js.map +1 -1
  145. package/dist/visualization.es174.js +3 -50
  146. package/dist/visualization.es174.js.map +1 -1
  147. package/dist/visualization.es175.js +7 -3
  148. package/dist/visualization.es175.js.map +1 -1
  149. package/dist/visualization.es176.js +3 -3
  150. package/dist/visualization.es176.js.map +1 -1
  151. package/dist/visualization.es177.js +6 -5
  152. package/dist/visualization.es177.js.map +1 -1
  153. package/dist/visualization.es178.js +3 -4
  154. package/dist/visualization.es178.js.map +1 -1
  155. package/dist/visualization.es179.js +62 -9
  156. package/dist/visualization.es179.js.map +1 -1
  157. package/dist/visualization.es18.js +1 -1
  158. package/dist/visualization.es180.js +7 -4
  159. package/dist/visualization.es180.js.map +1 -1
  160. package/dist/visualization.es181.js +42 -17
  161. package/dist/visualization.es181.js.map +1 -1
  162. package/dist/visualization.es182.js +30 -18
  163. package/dist/visualization.es182.js.map +1 -1
  164. package/dist/visualization.es183.js +7 -36
  165. package/dist/visualization.es183.js.map +1 -1
  166. package/dist/visualization.es184.js +7 -2
  167. package/dist/visualization.es184.js.map +1 -1
  168. package/dist/visualization.es185.js +4 -2
  169. package/dist/visualization.es185.js.map +1 -1
  170. package/dist/visualization.es186.js +17 -4
  171. package/dist/visualization.es186.js.map +1 -1
  172. package/dist/visualization.es187.js +16 -14
  173. package/dist/visualization.es187.js.map +1 -1
  174. package/dist/visualization.es188.js +33 -3
  175. package/dist/visualization.es188.js.map +1 -1
  176. package/dist/visualization.es189.js +17 -7
  177. package/dist/visualization.es189.js.map +1 -1
  178. package/dist/visualization.es190.js +11 -3
  179. package/dist/visualization.es190.js.map +1 -1
  180. package/dist/visualization.es191.js +6 -6
  181. package/dist/visualization.es191.js.map +1 -1
  182. package/dist/visualization.es192.js +5 -29
  183. package/dist/visualization.es192.js.map +1 -1
  184. package/dist/visualization.es193.js +10 -7
  185. package/dist/visualization.es193.js.map +1 -1
  186. package/dist/visualization.es194.js +4 -6
  187. package/dist/visualization.es194.js.map +1 -1
  188. package/dist/visualization.es195.js +4 -3
  189. package/dist/visualization.es195.js.map +1 -1
  190. package/dist/visualization.es196.js +8 -16
  191. package/dist/visualization.es196.js.map +1 -1
  192. package/dist/visualization.es197.js +4 -16
  193. package/dist/visualization.es197.js.map +1 -1
  194. package/dist/visualization.es198.js +11 -31
  195. package/dist/visualization.es198.js.map +1 -1
  196. package/dist/visualization.es199.js +25 -15
  197. package/dist/visualization.es199.js.map +1 -1
  198. package/dist/visualization.es2.js +8 -8
  199. package/dist/visualization.es20.js +64 -61
  200. package/dist/visualization.es20.js.map +1 -1
  201. package/dist/visualization.es200.js +18 -9
  202. package/dist/visualization.es200.js.map +1 -1
  203. package/dist/visualization.es201.js +27 -6
  204. package/dist/visualization.es201.js.map +1 -1
  205. package/dist/visualization.es202.js +32 -6
  206. package/dist/visualization.es202.js.map +1 -1
  207. package/dist/visualization.es203.js +112 -8
  208. package/dist/visualization.es203.js.map +1 -1
  209. package/dist/visualization.es204.js +9 -4
  210. package/dist/visualization.es204.js.map +1 -1
  211. package/dist/visualization.es205.js +6 -4
  212. package/dist/visualization.es205.js.map +1 -1
  213. package/dist/visualization.es206.js +7 -8
  214. package/dist/visualization.es206.js.map +1 -1
  215. package/dist/visualization.es207.js +9 -4
  216. package/dist/visualization.es207.js.map +1 -1
  217. package/dist/visualization.es208.js +6 -12
  218. package/dist/visualization.es208.js.map +1 -1
  219. package/dist/visualization.es209.js +6 -26
  220. package/dist/visualization.es209.js.map +1 -1
  221. package/dist/visualization.es21.js +113 -36
  222. package/dist/visualization.es21.js.map +1 -1
  223. package/dist/visualization.es210.js +5 -9
  224. package/dist/visualization.es210.js.map +1 -1
  225. package/dist/visualization.es211.js +14 -6
  226. package/dist/visualization.es211.js.map +1 -1
  227. package/dist/visualization.es212.js +5 -7
  228. package/dist/visualization.es212.js.map +1 -1
  229. package/dist/visualization.es213.js +3 -9
  230. package/dist/visualization.es213.js.map +1 -1
  231. package/dist/visualization.es214.js +6 -6
  232. package/dist/visualization.es214.js.map +1 -1
  233. package/dist/visualization.es215.js +6 -6
  234. package/dist/visualization.es215.js.map +1 -1
  235. package/dist/visualization.es216.js +9 -5
  236. package/dist/visualization.es216.js.map +1 -1
  237. package/dist/visualization.es217.js +3 -14
  238. package/dist/visualization.es217.js.map +1 -1
  239. package/dist/visualization.es218.js +5 -5
  240. package/dist/visualization.es218.js.map +1 -1
  241. package/dist/visualization.es219.js +32 -2
  242. package/dist/visualization.es219.js.map +1 -1
  243. package/dist/visualization.es22.js +147 -43
  244. package/dist/visualization.es22.js.map +1 -1
  245. package/dist/visualization.es220.js +15 -6
  246. package/dist/visualization.es220.js.map +1 -1
  247. package/dist/visualization.es221.js +7 -6
  248. package/dist/visualization.es221.js.map +1 -1
  249. package/dist/visualization.es222.js +11 -9
  250. package/dist/visualization.es222.js.map +1 -1
  251. package/dist/visualization.es223.js +72 -32
  252. package/dist/visualization.es223.js.map +1 -1
  253. package/dist/visualization.es224.js +19 -111
  254. package/dist/visualization.es224.js.map +1 -1
  255. package/dist/visualization.es225.js +22 -3
  256. package/dist/visualization.es225.js.map +1 -1
  257. package/dist/visualization.es226.js +40 -5
  258. package/dist/visualization.es226.js.map +1 -1
  259. package/dist/visualization.es227.js +6 -32
  260. package/dist/visualization.es227.js.map +1 -1
  261. package/dist/visualization.es228.js +12 -15
  262. package/dist/visualization.es228.js.map +1 -1
  263. package/dist/visualization.es229.js +17 -7
  264. package/dist/visualization.es229.js.map +1 -1
  265. package/dist/visualization.es23.js +6 -6
  266. package/dist/visualization.es23.js.map +1 -1
  267. package/dist/visualization.es230.js +36 -11
  268. package/dist/visualization.es230.js.map +1 -1
  269. package/dist/visualization.es231.js +24 -3
  270. package/dist/visualization.es231.js.map +1 -1
  271. package/dist/visualization.es232.js +27 -74
  272. package/dist/visualization.es232.js.map +1 -1
  273. package/dist/visualization.es233.js +75 -2
  274. package/dist/visualization.es233.js.map +1 -1
  275. package/dist/visualization.es234.js +2 -483
  276. package/dist/visualization.es234.js.map +1 -1
  277. package/dist/visualization.es235.js +483 -2
  278. package/dist/visualization.es235.js.map +1 -1
  279. package/dist/visualization.es236.js +2 -124
  280. package/dist/visualization.es236.js.map +1 -1
  281. package/dist/visualization.es237.js +123 -19
  282. package/dist/visualization.es237.js.map +1 -1
  283. package/dist/visualization.es238.js +17 -27
  284. package/dist/visualization.es238.js.map +1 -1
  285. package/dist/visualization.es24.js +7 -47
  286. package/dist/visualization.es24.js.map +1 -1
  287. package/dist/visualization.es242.js +1 -1
  288. package/dist/visualization.es243.js +5 -5
  289. package/dist/visualization.es25.js +45 -31
  290. package/dist/visualization.es25.js.map +1 -1
  291. package/dist/visualization.es26.js +19 -6
  292. package/dist/visualization.es26.js.map +1 -1
  293. package/dist/visualization.es27.js +5 -44
  294. package/dist/visualization.es27.js.map +1 -1
  295. package/dist/visualization.es278.js +22 -3
  296. package/dist/visualization.es278.js.map +1 -1
  297. package/dist/visualization.es279.js +37 -11
  298. package/dist/visualization.es279.js.map +1 -1
  299. package/dist/visualization.es28.js +33 -7
  300. package/dist/visualization.es28.js.map +1 -1
  301. package/dist/visualization.es280.js +33 -35
  302. package/dist/visualization.es280.js.map +1 -1
  303. package/dist/visualization.es281.js +56 -257
  304. package/dist/visualization.es281.js.map +1 -1
  305. package/dist/visualization.es282.js +5 -59
  306. package/dist/visualization.es282.js.map +1 -1
  307. package/dist/visualization.es283.js +15 -6
  308. package/dist/visualization.es283.js.map +1 -1
  309. package/dist/visualization.es284.js +19 -22
  310. package/dist/visualization.es284.js.map +1 -1
  311. package/dist/visualization.es285.js +8 -37
  312. package/dist/visualization.es285.js.map +1 -1
  313. package/dist/visualization.es286.js +5 -32
  314. package/dist/visualization.es286.js.map +1 -1
  315. package/dist/visualization.es287.js +140 -14
  316. package/dist/visualization.es287.js.map +1 -1
  317. package/dist/visualization.es288.js +6 -19
  318. package/dist/visualization.es288.js.map +1 -1
  319. package/dist/visualization.es289.js +3 -9
  320. package/dist/visualization.es289.js.map +1 -1
  321. package/dist/visualization.es29.js +33 -146
  322. package/dist/visualization.es29.js.map +1 -1
  323. package/dist/visualization.es290.js +11 -7
  324. package/dist/visualization.es290.js.map +1 -1
  325. package/dist/visualization.es291.js +35 -139
  326. package/dist/visualization.es291.js.map +1 -1
  327. package/dist/visualization.es292.js +260 -5
  328. package/dist/visualization.es292.js.map +1 -1
  329. package/dist/visualization.es293.js +16 -107
  330. package/dist/visualization.es293.js.map +1 -1
  331. package/dist/visualization.es294.js +25 -12
  332. package/dist/visualization.es294.js.map +1 -1
  333. package/dist/visualization.es295.js +23 -138
  334. package/dist/visualization.es295.js.map +1 -1
  335. package/dist/visualization.es296.js +42 -5
  336. package/dist/visualization.es296.js.map +1 -1
  337. package/dist/visualization.es297.js +15 -67
  338. package/dist/visualization.es297.js.map +1 -1
  339. package/dist/visualization.es298.js +38 -33
  340. package/dist/visualization.es298.js.map +1 -1
  341. package/dist/visualization.es299.js +56 -19
  342. package/dist/visualization.es299.js.map +1 -1
  343. package/dist/visualization.es3.js +12 -12
  344. package/dist/visualization.es30.js +52 -8
  345. package/dist/visualization.es30.js.map +1 -1
  346. package/dist/visualization.es300.js +23 -4
  347. package/dist/visualization.es300.js.map +1 -1
  348. package/dist/visualization.es301.js +102 -17
  349. package/dist/visualization.es301.js.map +1 -1
  350. package/dist/visualization.es302.js +12 -30
  351. package/dist/visualization.es302.js.map +1 -1
  352. package/dist/visualization.es303.js +142 -2
  353. package/dist/visualization.es303.js.map +1 -1
  354. package/dist/visualization.es304.js +6 -2
  355. package/dist/visualization.es304.js.map +1 -1
  356. package/dist/visualization.es305.js +71 -5
  357. package/dist/visualization.es305.js.map +1 -1
  358. package/dist/visualization.es306.js +36 -15
  359. package/dist/visualization.es306.js.map +1 -1
  360. package/dist/visualization.es307.js +20 -34
  361. package/dist/visualization.es307.js.map +1 -1
  362. package/dist/visualization.es308.js +3 -27
  363. package/dist/visualization.es308.js.map +1 -1
  364. package/dist/visualization.es309.js +24 -10
  365. package/dist/visualization.es309.js.map +1 -1
  366. package/dist/visualization.es31.js +54 -34
  367. package/dist/visualization.es31.js.map +1 -1
  368. package/dist/visualization.es310.js +30 -6
  369. package/dist/visualization.es310.js.map +1 -1
  370. package/dist/visualization.es311.js +2 -14
  371. package/dist/visualization.es311.js.map +1 -1
  372. package/dist/visualization.es312.js +2 -12
  373. package/dist/visualization.es312.js.map +1 -1
  374. package/dist/visualization.es313.js +6 -2
  375. package/dist/visualization.es313.js.map +1 -1
  376. package/dist/visualization.es314.js +15 -3
  377. package/dist/visualization.es314.js.map +1 -1
  378. package/dist/visualization.es315.js +35 -2
  379. package/dist/visualization.es315.js.map +1 -1
  380. package/dist/visualization.es316.js +27 -103
  381. package/dist/visualization.es316.js.map +1 -1
  382. package/dist/visualization.es317.js +10 -4
  383. package/dist/visualization.es317.js.map +1 -1
  384. package/dist/visualization.es318.js +7 -3
  385. package/dist/visualization.es318.js.map +1 -1
  386. package/dist/visualization.es319.js +13 -18
  387. package/dist/visualization.es319.js.map +1 -1
  388. package/dist/visualization.es32.js +40 -32
  389. package/dist/visualization.es32.js.map +1 -1
  390. package/dist/visualization.es320.js +12 -6
  391. package/dist/visualization.es320.js.map +1 -1
  392. package/dist/visualization.es321.js +2 -15
  393. package/dist/visualization.es321.js.map +1 -1
  394. package/dist/visualization.es322.js +3 -5
  395. package/dist/visualization.es322.js.map +1 -1
  396. package/dist/visualization.es323.js +2 -29
  397. package/dist/visualization.es323.js.map +1 -1
  398. package/dist/visualization.es324.js +103 -6
  399. package/dist/visualization.es324.js.map +1 -1
  400. package/dist/visualization.es325.js +5 -2
  401. package/dist/visualization.es325.js.map +1 -1
  402. package/dist/visualization.es326.js +3 -20
  403. package/dist/visualization.es326.js.map +1 -1
  404. package/dist/visualization.es327.js +19 -21
  405. package/dist/visualization.es327.js.map +1 -1
  406. package/dist/visualization.es328.js +5 -5
  407. package/dist/visualization.es328.js.map +1 -1
  408. package/dist/visualization.es329.js +14 -7
  409. package/dist/visualization.es329.js.map +1 -1
  410. package/dist/visualization.es33.js +5 -20
  411. package/dist/visualization.es33.js.map +1 -1
  412. package/dist/visualization.es330.js +4 -18
  413. package/dist/visualization.es330.js.map +1 -1
  414. package/dist/visualization.es331.js +28 -43
  415. package/dist/visualization.es331.js.map +1 -1
  416. package/dist/visualization.es332.js +7 -7
  417. package/dist/visualization.es332.js.map +1 -1
  418. package/dist/visualization.es333.js +2 -20
  419. package/dist/visualization.es333.js.map +1 -1
  420. package/dist/visualization.es334.js +20 -54
  421. package/dist/visualization.es334.js.map +1 -1
  422. package/dist/visualization.es335.js +21 -27
  423. package/dist/visualization.es335.js.map +1 -1
  424. package/dist/visualization.es336.js +6 -11
  425. package/dist/visualization.es336.js.map +1 -1
  426. package/dist/visualization.es337.js +6 -17
  427. package/dist/visualization.es337.js.map +1 -1
  428. package/dist/visualization.es338.js +18 -11
  429. package/dist/visualization.es338.js.map +1 -1
  430. package/dist/visualization.es339.js +44 -5
  431. package/dist/visualization.es339.js.map +1 -1
  432. package/dist/visualization.es34.js +4 -10
  433. package/dist/visualization.es34.js.map +1 -1
  434. package/dist/visualization.es340.js +7 -4
  435. package/dist/visualization.es340.js.map +1 -1
  436. package/dist/visualization.es341.js +19 -3
  437. package/dist/visualization.es341.js.map +1 -1
  438. package/dist/visualization.es342.js +49 -171
  439. package/dist/visualization.es342.js.map +1 -1
  440. package/dist/visualization.es343.js +25 -38
  441. package/dist/visualization.es343.js.map +1 -1
  442. package/dist/visualization.es344.js +11 -6
  443. package/dist/visualization.es344.js.map +1 -1
  444. package/dist/visualization.es345.js +18 -3
  445. package/dist/visualization.es345.js.map +1 -1
  446. package/dist/visualization.es346.js +12 -2
  447. package/dist/visualization.es346.js.map +1 -1
  448. package/dist/visualization.es347.js +5 -30
  449. package/dist/visualization.es347.js.map +1 -1
  450. package/dist/visualization.es348.js +4 -8
  451. package/dist/visualization.es348.js.map +1 -1
  452. package/dist/visualization.es349.js +3 -10
  453. package/dist/visualization.es349.js.map +1 -1
  454. package/dist/visualization.es35.js +17 -54
  455. package/dist/visualization.es35.js.map +1 -1
  456. package/dist/visualization.es350.js +175 -3
  457. package/dist/visualization.es350.js.map +1 -1
  458. package/dist/visualization.es351.js +37 -63
  459. package/dist/visualization.es351.js.map +1 -1
  460. package/dist/visualization.es352.js +6 -7
  461. package/dist/visualization.es352.js.map +1 -1
  462. package/dist/visualization.es353.js +3 -4
  463. package/dist/visualization.es353.js.map +1 -1
  464. package/dist/visualization.es354.js +2 -14
  465. package/dist/visualization.es354.js.map +1 -1
  466. package/dist/visualization.es355.js +29 -34
  467. package/dist/visualization.es355.js.map +1 -1
  468. package/dist/visualization.es356.js +8 -5
  469. package/dist/visualization.es356.js.map +1 -1
  470. package/dist/visualization.es357.js +10 -9
  471. package/dist/visualization.es357.js.map +1 -1
  472. package/dist/visualization.es358.js +4 -2
  473. package/dist/visualization.es358.js.map +1 -1
  474. package/dist/visualization.es359.js +66 -5
  475. package/dist/visualization.es359.js.map +1 -1
  476. package/dist/visualization.es36.js +5 -52
  477. package/dist/visualization.es36.js.map +1 -1
  478. package/dist/visualization.es360.js +7 -2
  479. package/dist/visualization.es360.js.map +1 -1
  480. package/dist/visualization.es361.js +4 -9
  481. package/dist/visualization.es361.js.map +1 -1
  482. package/dist/visualization.es362.js +13 -9
  483. package/dist/visualization.es362.js.map +1 -1
  484. package/dist/visualization.es363.js +34 -12
  485. package/dist/visualization.es363.js.map +1 -1
  486. package/dist/visualization.es364.js +5 -2
  487. package/dist/visualization.es364.js.map +1 -1
  488. package/dist/visualization.es365.js +10 -10
  489. package/dist/visualization.es365.js.map +1 -1
  490. package/dist/visualization.es366.js +2 -8
  491. package/dist/visualization.es366.js.map +1 -1
  492. package/dist/visualization.es367.js +5 -6
  493. package/dist/visualization.es367.js.map +1 -1
  494. package/dist/visualization.es368.js +2 -25
  495. package/dist/visualization.es368.js.map +1 -1
  496. package/dist/visualization.es369.js +10 -19
  497. package/dist/visualization.es369.js.map +1 -1
  498. package/dist/visualization.es37.js +26 -54
  499. package/dist/visualization.es37.js.map +1 -1
  500. package/dist/visualization.es370.js +9 -40
  501. package/dist/visualization.es370.js.map +1 -1
  502. package/dist/visualization.es371.js +13 -3
  503. package/dist/visualization.es371.js.map +1 -1
  504. package/dist/visualization.es372.js +2 -9
  505. package/dist/visualization.es372.js.map +1 -1
  506. package/dist/visualization.es373.js +10 -9
  507. package/dist/visualization.es373.js.map +1 -1
  508. package/dist/visualization.es374.js +7 -35
  509. package/dist/visualization.es374.js.map +1 -1
  510. package/dist/visualization.es375.js +5 -9
  511. package/dist/visualization.es375.js.map +1 -1
  512. package/dist/visualization.es376.js +23 -30
  513. package/dist/visualization.es376.js.map +1 -1
  514. package/dist/visualization.es377.js +19 -5
  515. package/dist/visualization.es377.js.map +1 -1
  516. package/dist/visualization.es378.js +41 -2
  517. package/dist/visualization.es378.js.map +1 -1
  518. package/dist/visualization.es379.js +3 -16
  519. package/dist/visualization.es379.js.map +1 -1
  520. package/dist/visualization.es38.js +30 -42
  521. package/dist/visualization.es38.js.map +1 -1
  522. package/dist/visualization.es380.js +8 -24
  523. package/dist/visualization.es380.js.map +1 -1
  524. package/dist/visualization.es381.js +9 -2
  525. package/dist/visualization.es381.js.map +1 -1
  526. package/dist/visualization.es382.js +34 -61
  527. package/dist/visualization.es382.js.map +1 -1
  528. package/dist/visualization.es383.js +10 -2
  529. package/dist/visualization.es383.js.map +1 -1
  530. package/dist/visualization.es384.js +32 -2
  531. package/dist/visualization.es384.js.map +1 -1
  532. package/dist/visualization.es385.js +4 -5
  533. package/dist/visualization.es385.js.map +1 -1
  534. package/dist/visualization.es386.js +2 -37
  535. package/dist/visualization.es386.js.map +1 -1
  536. package/dist/visualization.es387.js +14 -19
  537. package/dist/visualization.es387.js.map +1 -1
  538. package/dist/visualization.es388.js +24 -3
  539. package/dist/visualization.es388.js.map +1 -1
  540. package/dist/visualization.es389.js +2 -5
  541. package/dist/visualization.es389.js.map +1 -1
  542. package/dist/visualization.es39.js +18701 -5
  543. package/dist/visualization.es39.js.map +1 -1
  544. package/dist/visualization.es390.js +62 -4
  545. package/dist/visualization.es390.js.map +1 -1
  546. package/dist/visualization.es391.js +2 -49
  547. package/dist/visualization.es391.js.map +1 -1
  548. package/dist/visualization.es392.js +2 -27
  549. package/dist/visualization.es392.js.map +1 -1
  550. package/dist/visualization.es393.js +5 -16
  551. package/dist/visualization.es393.js.map +1 -1
  552. package/dist/visualization.es394.js +37 -10
  553. package/dist/visualization.es394.js.map +1 -1
  554. package/dist/visualization.es395.js +18 -17
  555. package/dist/visualization.es395.js.map +1 -1
  556. package/dist/visualization.es396.js +4 -14
  557. package/dist/visualization.es396.js.map +1 -1
  558. package/dist/visualization.es397.js +4 -3
  559. package/dist/visualization.es397.js.map +1 -1
  560. package/dist/visualization.es398.js +5 -13
  561. package/dist/visualization.es398.js.map +1 -1
  562. package/dist/visualization.es399.js +42 -42
  563. package/dist/visualization.es399.js.map +1 -1
  564. package/dist/visualization.es4.js +6 -6
  565. package/dist/visualization.es40.js +5 -5
  566. package/dist/visualization.es40.js.map +1 -1
  567. package/dist/visualization.es400.js +26 -5
  568. package/dist/visualization.es400.js.map +1 -1
  569. package/dist/visualization.es401.js +16 -12
  570. package/dist/visualization.es401.js.map +1 -1
  571. package/dist/visualization.es402.js +10 -2
  572. package/dist/visualization.es402.js.map +1 -1
  573. package/dist/visualization.es403.js +19 -6
  574. package/dist/visualization.es403.js.map +1 -1
  575. package/dist/visualization.es404.js +14 -210
  576. package/dist/visualization.es404.js.map +1 -1
  577. package/dist/visualization.es405.js +3 -26
  578. package/dist/visualization.es405.js.map +1 -1
  579. package/dist/visualization.es406.js +13 -4
  580. package/dist/visualization.es406.js.map +1 -1
  581. package/dist/visualization.es407.js +47 -14
  582. package/dist/visualization.es407.js.map +1 -1
  583. package/dist/visualization.es408.js +6 -15
  584. package/dist/visualization.es408.js.map +1 -1
  585. package/dist/visualization.es409.js +13 -15
  586. package/dist/visualization.es409.js.map +1 -1
  587. package/dist/visualization.es41.js +5 -18
  588. package/dist/visualization.es41.js.map +1 -1
  589. package/dist/visualization.es410.js +2 -2
  590. package/dist/visualization.es410.js.map +1 -1
  591. package/dist/visualization.es411.js +7 -2
  592. package/dist/visualization.es411.js.map +1 -1
  593. package/dist/visualization.es412.js +210 -2
  594. package/dist/visualization.es412.js.map +1 -1
  595. package/dist/visualization.es413.js +27 -5
  596. package/dist/visualization.es413.js.map +1 -1
  597. package/dist/visualization.es414.js +4 -2
  598. package/dist/visualization.es414.js.map +1 -1
  599. package/dist/visualization.es415.js +16 -25
  600. package/dist/visualization.es415.js.map +1 -1
  601. package/dist/visualization.es416.js +14 -21
  602. package/dist/visualization.es416.js.map +1 -1
  603. package/dist/visualization.es417.js +14 -8
  604. package/dist/visualization.es417.js.map +1 -1
  605. package/dist/visualization.es418.js +2 -68
  606. package/dist/visualization.es418.js.map +1 -1
  607. package/dist/visualization.es419.js +2 -6
  608. package/dist/visualization.es419.js.map +1 -1
  609. package/dist/visualization.es42.js +59 -4
  610. package/dist/visualization.es42.js.map +1 -1
  611. package/dist/visualization.es420.js +2 -29
  612. package/dist/visualization.es420.js.map +1 -1
  613. package/dist/visualization.es421.js +5 -10
  614. package/dist/visualization.es421.js.map +1 -1
  615. package/dist/visualization.es422.js +2 -6
  616. package/dist/visualization.es422.js.map +1 -1
  617. package/dist/visualization.es423.js +25 -2
  618. package/dist/visualization.es423.js.map +1 -1
  619. package/dist/visualization.es424.js +21 -4
  620. package/dist/visualization.es424.js.map +1 -1
  621. package/dist/visualization.es425.js +8 -25
  622. package/dist/visualization.es425.js.map +1 -1
  623. package/dist/visualization.es426.js +68 -11
  624. package/dist/visualization.es426.js.map +1 -1
  625. package/dist/visualization.es427.js +6 -27
  626. package/dist/visualization.es427.js.map +1 -1
  627. package/dist/visualization.es428.js +29 -10
  628. package/dist/visualization.es428.js.map +1 -1
  629. package/dist/visualization.es429.js +9 -10
  630. package/dist/visualization.es429.js.map +1 -1
  631. package/dist/visualization.es43.js +805 -21
  632. package/dist/visualization.es43.js.map +1 -1
  633. package/dist/visualization.es430.js +6 -2
  634. package/dist/visualization.es430.js.map +1 -1
  635. package/dist/visualization.es431.js +2 -16
  636. package/dist/visualization.es431.js.map +1 -1
  637. package/dist/visualization.es432.js +4 -29
  638. package/dist/visualization.es432.js.map +1 -1
  639. package/dist/visualization.es433.js +26 -26
  640. package/dist/visualization.es433.js.map +1 -1
  641. package/dist/visualization.es434.js +11 -2
  642. package/dist/visualization.es434.js.map +1 -1
  643. package/dist/visualization.es435.js +26 -8
  644. package/dist/visualization.es435.js.map +1 -1
  645. package/dist/visualization.es436.js +9 -12
  646. package/dist/visualization.es436.js.map +1 -1
  647. package/dist/visualization.es437.js +10 -22
  648. package/dist/visualization.es437.js.map +1 -1
  649. package/dist/visualization.es438.js +2 -13
  650. package/dist/visualization.es438.js.map +1 -1
  651. package/dist/visualization.es439.js +16 -3
  652. package/dist/visualization.es439.js.map +1 -1
  653. package/dist/visualization.es440.js +30 -2
  654. package/dist/visualization.es440.js.map +1 -1
  655. package/dist/visualization.es441.js +26 -18
  656. package/dist/visualization.es441.js.map +1 -1
  657. package/dist/visualization.es442.js +2 -4
  658. package/dist/visualization.es442.js.map +1 -1
  659. package/dist/visualization.es443.js +8 -11
  660. package/dist/visualization.es443.js.map +1 -1
  661. package/dist/visualization.es444.js +13 -11
  662. package/dist/visualization.es444.js.map +1 -1
  663. package/dist/visualization.es445.js +22 -6
  664. package/dist/visualization.es445.js.map +1 -1
  665. package/dist/visualization.es446.js +13 -19
  666. package/dist/visualization.es446.js.map +1 -1
  667. package/dist/visualization.es447.js +3 -23
  668. package/dist/visualization.es447.js.map +1 -1
  669. package/dist/visualization.es448.js +2 -12
  670. package/dist/visualization.es448.js.map +1 -1
  671. package/dist/visualization.es449.js +15 -48
  672. package/dist/visualization.es449.js.map +1 -1
  673. package/dist/visualization.es45.js +131 -5
  674. package/dist/visualization.es45.js.map +1 -1
  675. package/dist/visualization.es450.js +3 -17
  676. package/dist/visualization.es450.js.map +1 -1
  677. package/dist/visualization.es451.js +11 -35
  678. package/dist/visualization.es451.js.map +1 -1
  679. package/dist/visualization.es452.js +11 -23
  680. package/dist/visualization.es452.js.map +1 -1
  681. package/dist/visualization.es453.js +6 -31
  682. package/dist/visualization.es453.js.map +1 -1
  683. package/dist/visualization.es454.js +19 -4
  684. package/dist/visualization.es454.js.map +1 -1
  685. package/dist/visualization.es455.js +22 -18
  686. package/dist/visualization.es455.js.map +1 -1
  687. package/dist/visualization.es456.js +12 -14
  688. package/dist/visualization.es456.js.map +1 -1
  689. package/dist/visualization.es457.js +49 -9
  690. package/dist/visualization.es457.js.map +1 -1
  691. package/dist/visualization.es458.js +15 -27
  692. package/dist/visualization.es458.js.map +1 -1
  693. package/dist/visualization.es459.js +36 -6
  694. package/dist/visualization.es459.js.map +1 -1
  695. package/dist/visualization.es46.js +35 -54
  696. package/dist/visualization.es46.js.map +1 -1
  697. package/dist/visualization.es460.js +22 -7
  698. package/dist/visualization.es460.js.map +1 -1
  699. package/dist/visualization.es461.js +32 -2
  700. package/dist/visualization.es461.js.map +1 -1
  701. package/dist/visualization.es462.js +3 -16
  702. package/dist/visualization.es462.js.map +1 -1
  703. package/dist/visualization.es463.js +18 -8
  704. package/dist/visualization.es463.js.map +1 -1
  705. package/dist/visualization.es464.js +14 -10
  706. package/dist/visualization.es464.js.map +1 -1
  707. package/dist/visualization.es465.js +9 -614
  708. package/dist/visualization.es465.js.map +1 -1
  709. package/dist/visualization.es466.js +29 -50
  710. package/dist/visualization.es466.js.map +1 -1
  711. package/dist/visualization.es467.js +6 -13
  712. package/dist/visualization.es467.js.map +1 -1
  713. package/dist/visualization.es468.js +8 -11
  714. package/dist/visualization.es468.js.map +1 -1
  715. package/dist/visualization.es469.js +2 -23
  716. package/dist/visualization.es469.js.map +1 -1
  717. package/dist/visualization.es47.js +35 -111
  718. package/dist/visualization.es47.js.map +1 -1
  719. package/dist/visualization.es470.js +15 -33
  720. package/dist/visualization.es470.js.map +1 -1
  721. package/dist/visualization.es471.js +8 -12
  722. package/dist/visualization.es471.js.map +1 -1
  723. package/dist/visualization.es472.js +9 -18
  724. package/dist/visualization.es472.js.map +1 -1
  725. package/dist/visualization.es473.js +613 -23
  726. package/dist/visualization.es473.js.map +1 -1
  727. package/dist/visualization.es474.js +47 -23
  728. package/dist/visualization.es474.js.map +1 -1
  729. package/dist/visualization.es475.js +12 -42
  730. package/dist/visualization.es475.js.map +1 -1
  731. package/dist/visualization.es476.js +11 -20
  732. package/dist/visualization.es476.js.map +1 -1
  733. package/dist/visualization.es477.js +32 -38
  734. package/dist/visualization.es477.js.map +1 -1
  735. package/dist/visualization.es478.js +12 -57
  736. package/dist/visualization.es478.js.map +1 -1
  737. package/dist/visualization.es479.js +2 -4
  738. package/dist/visualization.es479.js.map +1 -1
  739. package/dist/visualization.es48.js +10 -7
  740. package/dist/visualization.es48.js.map +1 -1
  741. package/dist/visualization.es480.js +4 -3
  742. package/dist/visualization.es480.js.map +1 -1
  743. package/dist/visualization.es481.js +3 -7
  744. package/dist/visualization.es481.js.map +1 -1
  745. package/dist/visualization.es482.js +7 -16
  746. package/dist/visualization.es482.js.map +1 -1
  747. package/dist/visualization.es483.js +16 -2
  748. package/dist/visualization.es483.js.map +1 -1
  749. package/dist/visualization.es484.js +2 -2
  750. package/dist/visualization.es484.js.map +1 -1
  751. package/dist/visualization.es485.js +2 -2
  752. package/dist/visualization.es485.js.map +1 -1
  753. package/dist/visualization.es486.js +29 -7
  754. package/dist/visualization.es486.js.map +1 -1
  755. package/dist/visualization.es487.js +117 -32
  756. package/dist/visualization.es487.js.map +1 -1
  757. package/dist/visualization.es488.js +29 -3
  758. package/dist/visualization.es488.js.map +1 -1
  759. package/dist/visualization.es489.js +10 -3
  760. package/dist/visualization.es489.js.map +1 -1
  761. package/dist/visualization.es49.js +52 -31
  762. package/dist/visualization.es49.js.map +1 -1
  763. package/dist/visualization.es490.js +13 -6
  764. package/dist/visualization.es490.js.map +1 -1
  765. package/dist/visualization.es491.js +31 -11
  766. package/dist/visualization.es491.js.map +1 -1
  767. package/dist/visualization.es492.js +29 -2
  768. package/dist/visualization.es492.js.map +1 -1
  769. package/dist/visualization.es493.js +10 -3
  770. package/dist/visualization.es493.js.map +1 -1
  771. package/dist/visualization.es494.js +12 -3
  772. package/dist/visualization.es494.js.map +1 -1
  773. package/dist/visualization.es495.js +17 -10
  774. package/dist/visualization.es495.js.map +1 -1
  775. package/dist/visualization.es496.js +23 -25
  776. package/dist/visualization.es496.js.map +1 -1
  777. package/dist/visualization.es497.js +16 -4
  778. package/dist/visualization.es497.js.map +1 -1
  779. package/dist/visualization.es498.js +93 -29
  780. package/dist/visualization.es498.js.map +1 -1
  781. package/dist/visualization.es499.js +27 -236
  782. package/dist/visualization.es499.js.map +1 -1
  783. package/dist/visualization.es5.js +10 -10
  784. package/dist/visualization.es50.js +44 -67
  785. package/dist/visualization.es50.js.map +1 -1
  786. package/dist/visualization.es500.js +65 -986
  787. package/dist/visualization.es500.js.map +1 -1
  788. package/dist/visualization.es501.js +48 -58
  789. package/dist/visualization.es501.js.map +1 -1
  790. package/dist/visualization.es502.js +35 -29
  791. package/dist/visualization.es502.js.map +1 -1
  792. package/dist/visualization.es503.js +39 -117
  793. package/dist/visualization.es503.js.map +1 -1
  794. package/dist/visualization.es504.js +27 -27
  795. package/dist/visualization.es504.js.map +1 -1
  796. package/dist/visualization.es505.js +7 -11
  797. package/dist/visualization.es505.js.map +1 -1
  798. package/dist/visualization.es506.js +34 -13
  799. package/dist/visualization.es506.js.map +1 -1
  800. package/dist/visualization.es507.js +3 -32
  801. package/dist/visualization.es507.js.map +1 -1
  802. package/dist/visualization.es508.js +3 -28
  803. package/dist/visualization.es508.js.map +1 -1
  804. package/dist/visualization.es509.js +5 -9
  805. package/dist/visualization.es509.js.map +1 -1
  806. package/dist/visualization.es51.js +54 -112
  807. package/dist/visualization.es51.js.map +1 -1
  808. package/dist/visualization.es510.js +12 -12
  809. package/dist/visualization.es510.js.map +1 -1
  810. package/dist/visualization.es511.js +2 -18
  811. package/dist/visualization.es511.js.map +1 -1
  812. package/dist/visualization.es512.js +3 -23
  813. package/dist/visualization.es512.js.map +1 -1
  814. package/dist/visualization.es513.js +3 -16
  815. package/dist/visualization.es513.js.map +1 -1
  816. package/dist/visualization.es514.js +9 -95
  817. package/dist/visualization.es514.js.map +1 -1
  818. package/dist/visualization.es515.js +24 -27
  819. package/dist/visualization.es515.js.map +1 -1
  820. package/dist/visualization.es516.js +4 -71
  821. package/dist/visualization.es516.js.map +1 -1
  822. package/dist/visualization.es517.js +31 -50
  823. package/dist/visualization.es517.js.map +1 -1
  824. package/dist/visualization.es518.js +238 -35
  825. package/dist/visualization.es518.js.map +1 -1
  826. package/dist/visualization.es519.js +987 -36
  827. package/dist/visualization.es519.js.map +1 -1
  828. package/dist/visualization.es52.js +111 -29
  829. package/dist/visualization.es52.js.map +1 -1
  830. package/dist/visualization.es520.js +60 -28
  831. package/dist/visualization.es520.js.map +1 -1
  832. package/dist/visualization.es53.js +7 -64
  833. package/dist/visualization.es53.js.map +1 -1
  834. package/dist/visualization.es532.js +28 -11
  835. package/dist/visualization.es532.js.map +1 -1
  836. package/dist/visualization.es533.js +10 -13
  837. package/dist/visualization.es533.js.map +1 -1
  838. package/dist/visualization.es534.js +14 -8
  839. package/dist/visualization.es534.js.map +1 -1
  840. package/dist/visualization.es535.js +6 -6
  841. package/dist/visualization.es535.js.map +1 -1
  842. package/dist/visualization.es536.js +8 -20
  843. package/dist/visualization.es536.js.map +1 -1
  844. package/dist/visualization.es537.js +18 -61
  845. package/dist/visualization.es537.js.map +1 -1
  846. package/dist/visualization.es538.js +63 -28
  847. package/dist/visualization.es538.js.map +1 -1
  848. package/dist/visualization.es539.js +19 -5
  849. package/dist/visualization.es539.js.map +1 -1
  850. package/dist/visualization.es54.js +33 -61
  851. package/dist/visualization.es54.js.map +1 -1
  852. package/dist/visualization.es540.js +281 -3
  853. package/dist/visualization.es540.js.map +1 -1
  854. package/dist/visualization.es541.js +2 -2
  855. package/dist/visualization.es541.js.map +1 -1
  856. package/dist/visualization.es542.js +125 -16
  857. package/dist/visualization.es542.js.map +1 -1
  858. package/dist/visualization.es543.js +5 -282
  859. package/dist/visualization.es543.js.map +1 -1
  860. package/dist/visualization.es544.js +4 -2
  861. package/dist/visualization.es544.js.map +1 -1
  862. package/dist/visualization.es545.js +2 -128
  863. package/dist/visualization.es545.js.map +1 -1
  864. package/dist/visualization.es548.js +1 -1
  865. package/dist/visualization.es55.js +29 -4
  866. package/dist/visualization.es55.js.map +1 -1
  867. package/dist/visualization.es554.js +1 -1
  868. package/dist/visualization.es56.js +64 -46
  869. package/dist/visualization.es56.js.map +1 -1
  870. package/dist/visualization.es560.js +2 -2
  871. package/dist/visualization.es561.js +1 -1
  872. package/dist/visualization.es562.js +1 -1
  873. package/dist/visualization.es565.js +2 -2
  874. package/dist/visualization.es566.js +3 -3
  875. package/dist/visualization.es567.js +1 -1
  876. package/dist/visualization.es569.js +1 -1
  877. package/dist/visualization.es57.js +43 -3
  878. package/dist/visualization.es57.js.map +1 -1
  879. package/dist/visualization.es570.js +1 -1
  880. package/dist/visualization.es573.js +6 -6
  881. package/dist/visualization.es58.js +61 -281
  882. package/dist/visualization.es58.js.map +1 -1
  883. package/dist/visualization.es582.js +1 -1
  884. package/dist/visualization.es583.js +1 -1
  885. package/dist/visualization.es59.js +3 -18
  886. package/dist/visualization.es59.js.map +1 -1
  887. package/dist/visualization.es595.js +2 -2
  888. package/dist/visualization.es596.js +3 -3
  889. package/dist/visualization.es597.js +2 -2
  890. package/dist/visualization.es6.js +15 -15
  891. package/dist/visualization.es60.js +34 -18689
  892. package/dist/visualization.es60.js.map +1 -1
  893. package/dist/visualization.es601.js +4 -4
  894. package/dist/visualization.es602.js +4 -32
  895. package/dist/visualization.es602.js.map +1 -1
  896. package/dist/visualization.es603.js +8 -4
  897. package/dist/visualization.es603.js.map +1 -1
  898. package/dist/visualization.es604.js +4 -6
  899. package/dist/visualization.es604.js.map +1 -1
  900. package/dist/visualization.es605.js +16 -4
  901. package/dist/visualization.es605.js.map +1 -1
  902. package/dist/visualization.es606.js +13 -17
  903. package/dist/visualization.es606.js.map +1 -1
  904. package/dist/visualization.es607.js +32 -14
  905. package/dist/visualization.es607.js.map +1 -1
  906. package/dist/visualization.es61.js +4 -5
  907. package/dist/visualization.es61.js.map +1 -1
  908. package/dist/visualization.es62.js +282 -5
  909. package/dist/visualization.es62.js.map +1 -1
  910. package/dist/visualization.es63.js +18 -59
  911. package/dist/visualization.es63.js.map +1 -1
  912. package/dist/visualization.es64.js +67 -808
  913. package/dist/visualization.es64.js.map +1 -1
  914. package/dist/visualization.es65.js +15 -0
  915. package/dist/visualization.es65.js.map +1 -0
  916. package/dist/visualization.es66.js +64 -129
  917. package/dist/visualization.es66.js.map +1 -1
  918. package/dist/visualization.es67.js +300 -62
  919. package/dist/visualization.es67.js.map +1 -1
  920. package/dist/visualization.es68.js +93 -300
  921. package/dist/visualization.es68.js.map +1 -1
  922. package/dist/visualization.es69.js +27 -96
  923. package/dist/visualization.es69.js.map +1 -1
  924. package/dist/visualization.es7.js +11 -11
  925. package/dist/visualization.es70.js +20 -25
  926. package/dist/visualization.es70.js.map +1 -1
  927. package/dist/visualization.es71.js +16 -21
  928. package/dist/visualization.es71.js.map +1 -1
  929. package/dist/visualization.es72.js +19 -16
  930. package/dist/visualization.es72.js.map +1 -1
  931. package/dist/visualization.es73.js +69 -20
  932. package/dist/visualization.es73.js.map +1 -1
  933. package/dist/visualization.es74.js +54 -61
  934. package/dist/visualization.es74.js.map +1 -1
  935. package/dist/visualization.es75.js +8 -57
  936. package/dist/visualization.es75.js.map +1 -1
  937. package/dist/visualization.es76.js +7 -69
  938. package/dist/visualization.es76.js.map +1 -1
  939. package/dist/visualization.es77.js +58 -12
  940. package/dist/visualization.es77.js.map +1 -1
  941. package/dist/visualization.es78.js +46 -39
  942. package/dist/visualization.es78.js.map +1 -1
  943. package/dist/visualization.es79.js +44 -80
  944. package/dist/visualization.es79.js.map +1 -1
  945. package/dist/visualization.es8.js +50 -49
  946. package/dist/visualization.es8.js.map +1 -1
  947. package/dist/visualization.es80.js +20 -45
  948. package/dist/visualization.es80.js.map +1 -1
  949. package/dist/visualization.es81.js +113 -53
  950. package/dist/visualization.es81.js.map +1 -1
  951. package/dist/visualization.es82.js +97 -6
  952. package/dist/visualization.es82.js.map +1 -1
  953. package/dist/visualization.es83.js +61 -10
  954. package/dist/visualization.es83.js.map +1 -1
  955. package/dist/visualization.es84.js +37 -55
  956. package/dist/visualization.es84.js.map +1 -1
  957. package/dist/visualization.es85.js +79 -56
  958. package/dist/visualization.es85.js.map +1 -1
  959. package/dist/visualization.es86.js +46 -47
  960. package/dist/visualization.es86.js.map +1 -1
  961. package/dist/visualization.es87.js +56 -45
  962. package/dist/visualization.es87.js.map +1 -1
  963. package/dist/visualization.es88.js +6 -20
  964. package/dist/visualization.es88.js.map +1 -1
  965. package/dist/visualization.es89.js +12 -115
  966. package/dist/visualization.es89.js.map +1 -1
  967. package/dist/visualization.es9.js +1 -1
  968. package/dist/visualization.es90.js +56 -96
  969. package/dist/visualization.es90.js.map +1 -1
  970. package/dist/visualization.es91.js +13 -26
  971. package/dist/visualization.es91.js.map +1 -1
  972. package/dist/visualization.es92.js +74 -70
  973. package/dist/visualization.es92.js.map +1 -1
  974. package/dist/visualization.es93.js +33 -5
  975. package/dist/visualization.es93.js.map +1 -1
  976. package/dist/visualization.es94.js +13 -5
  977. package/dist/visualization.es94.js.map +1 -1
  978. package/dist/visualization.es95.js +5 -5
  979. package/dist/visualization.es95.js.map +1 -1
  980. package/dist/visualization.es96.js +4 -14
  981. package/dist/visualization.es96.js.map +1 -1
  982. package/dist/visualization.es97.js +5 -15
  983. package/dist/visualization.es97.js.map +1 -1
  984. package/dist/visualization.es98.js +26 -13
  985. package/dist/visualization.es98.js.map +1 -1
  986. package/dist/visualization.es99.js +70 -74
  987. package/dist/visualization.es99.js.map +1 -1
  988. package/package.json +1 -1
  989. package/dist/visualization.es44.js +0 -34
  990. package/dist/visualization.es44.js.map +0 -1
@@ -1,69 +1,307 @@
1
- import { jsxs as E, jsx as e, Fragment as D } from "react/jsx-runtime";
2
- import { c as R } from "react/compiler-runtime";
3
- import { useEffect as I } from "react";
4
- import { Stack as L, Tooltip as i, IconButton as a } from "@mui/material";
5
- import { BackHand as Z, Edit as j, Add as F, Remove as P, SettingsBackupRestore as T, Download as $ } from "@mui/icons-material";
6
- import { useTheme as K } from "@mui/material/styles";
7
- const V = (x) => {
8
- const t = R(7), {
9
- selectable: n,
10
- resetable: k,
11
- handleSelectionModeChange: l,
12
- selectMode: o,
13
- zoomIn: w,
14
- zoomOut: S,
15
- zoomReset: y,
16
- highlight: g,
17
- downloadButton: z,
18
- downloadPlot: C
19
- } = x, c = K(), b = g ?? c.palette.primary.main, d = {
20
- borderRadius: 0,
21
- color: c.palette.text.primary,
22
- padding: c.spacing(1)
23
- };
24
- let s, m;
25
- t[0] !== l || t[1] !== o || t[2] !== n ? (s = () => {
26
- const r = (v) => {
27
- if (v.key === "Shift" && n && o === "select") {
28
- l("pan");
29
- const u = (B) => {
30
- B.key === "Shift" && n && l("select");
31
- };
32
- return window.addEventListener("keyup", u), () => {
33
- window.removeEventListener("keyup", u);
34
- };
35
- }
1
+ import { jsx as s, jsxs as k, Fragment as Ge } from "react/jsx-runtime";
2
+ import { c as nt } from "react/compiler-runtime";
3
+ import { useRef as He, useState as rt, useEffect as fe } from "react";
4
+ import it from "@mui/material/CircularProgress";
5
+ import { Box as Ke, Stack as st } from "@mui/material";
6
+ import { rescaleX as at, rescaleY as lt, getTicks as Ze, prepareCanvas as ct, partitionPointsByHover as ft, isPointVisible as dt, drawCanvasPoint as ut } from "./visualization.es17.js";
7
+ import ht from "./visualization.es117.js";
8
+ import mt from "./visualization.es118.js";
9
+ import pt from "./visualization.es119.js";
10
+ import vt from "./visualization.es120.js";
11
+ import { useDragSelection as gt } from "./visualization.es121.js";
12
+ import qe from "./visualization.es26.js";
13
+ import xt from "./visualization.es29.js";
14
+ import yt from "./visualization.es28.js";
15
+ import St from "./visualization.es54.js";
16
+ import Mt from "./visualization.es47.js";
17
+ import Je from "./visualization.es25.js";
18
+ import bt from "./visualization.es122.js";
19
+ import kt from "./visualization.es90.js";
20
+ import wt from "./visualization.es65.js";
21
+ const to = (f) => {
22
+ const e = nt(117), {
23
+ size: v,
24
+ margin: r,
25
+ boundedWidth: o,
26
+ boundedHeight: i,
27
+ loading: de,
28
+ pointData: a,
29
+ animation: y,
30
+ animationGroupSize: w,
31
+ animationBuffer: P,
32
+ xScale: C,
33
+ yScale: T,
34
+ zoom: n,
35
+ selectMode: d,
36
+ selectable: Ne,
37
+ disableZoom: g,
38
+ groupPointsAnchor: Oe,
39
+ hoveredPoint: m,
40
+ handleMouseMove: ue,
41
+ handleMouseLeave: V,
42
+ onDisplayedPointsChange: G,
43
+ onSelectionChange: he,
44
+ onPointClicked: me,
45
+ leftAxisLabel: pe,
46
+ bottomAxisLabel: ve,
47
+ border: ge,
48
+ originLine: xe,
49
+ backgroundGradient: S,
50
+ crosshair: B,
51
+ divRef: ye
52
+ } = f, je = He(null), Se = He(null), [L, Me] = rt(!!y);
53
+ let H, j;
54
+ e[0] !== y || e[1] !== P || e[2] !== w || e[3] !== a.length ? (H = () => {
55
+ if (!y)
56
+ return;
57
+ if (a.length > 2500) {
58
+ Me(!1);
59
+ return;
60
+ }
61
+ const t = (P ?? 0.03) * 1e3, p = 450 + Math.ceil(a.length / (w ?? 1)) * t, c = window.setTimeout(() => Me(!1), p);
62
+ return () => window.clearTimeout(c);
63
+ }, j = [y, P, w, a.length], e[0] = y, e[1] = P, e[2] = w, e[3] = a.length, e[4] = H, e[5] = j) : (H = e[4], j = e[5]), fe(H, j);
64
+ let $;
65
+ e[6] !== r || e[7] !== he || e[8] !== a || e[9] !== C || e[10] !== T ? ($ = {
66
+ pointData: a,
67
+ margin: r,
68
+ xScale: C,
69
+ yScale: T,
70
+ onSelectionChange: he
71
+ }, e[6] = r, e[7] = he, e[8] = a, e[9] = C, e[10] = T, e[11] = $) : $ = e[11];
72
+ const {
73
+ lines: be,
74
+ isDragging: x,
75
+ x: D,
76
+ y: E,
77
+ dx: W,
78
+ dy: Y,
79
+ dragStart: $e,
80
+ dragMove: Ie,
81
+ dragEnd: ke,
82
+ completeSelection: we
83
+ } = gt($);
84
+ let I, U;
85
+ e[12] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (I = () => {
86
+ const t = je.current, l = Pt, p = Lt, c = Dt;
87
+ return t && (t.addEventListener("wheel", l, {
88
+ passive: !1
89
+ }), t.addEventListener("touchstart", c, {
90
+ passive: !1
91
+ }), t.addEventListener("touchmove", p, {
92
+ passive: !1
93
+ })), () => {
94
+ t && (t.removeEventListener("wheel", l), t.removeEventListener("touchstart", c), t.removeEventListener("touchmove", p));
36
95
  };
37
- return window.addEventListener("keydown", r), () => {
38
- window.removeEventListener("keydown", r);
96
+ }, U = [], e[12] = I, e[13] = U) : (I = e[12], U = e[13]), fe(I, U);
97
+ let F;
98
+ e[14] !== C || e[15] !== n.transformMatrix.scaleX || e[16] !== n.transformMatrix.translateX ? (F = at(C, n.transformMatrix.translateX, n.transformMatrix.scaleX), e[14] = C, e[15] = n.transformMatrix.scaleX, e[16] = n.transformMatrix.translateX, e[17] = F) : F = e[17];
99
+ const u = F;
100
+ let K;
101
+ e[18] !== T || e[19] !== n.transformMatrix.scaleY || e[20] !== n.transformMatrix.translateY ? (K = lt(T, n.transformMatrix.translateY, n.transformMatrix.scaleY), e[18] = T, e[19] = n.transformMatrix.scaleY, e[20] = n.transformMatrix.translateY, e[21] = K) : K = e[21];
102
+ const h = K;
103
+ let Pe;
104
+ e: {
105
+ const t = Oe;
106
+ if (t && m) {
107
+ let p;
108
+ if (e[22] !== t || e[23] !== m || e[24] !== a) {
109
+ let c;
110
+ e[26] !== t || e[27] !== m ? (c = (R) => t in R ? R[t] === m[t] : R.metaData && m.metaData ? R.metaData[t] === m.metaData[t] : !1, e[26] = t, e[27] = m, e[28] = c) : c = e[28], p = a.filter(c), e[22] = t, e[23] = m, e[24] = a, e[25] = p;
111
+ } else
112
+ p = e[25];
113
+ Pe = p;
114
+ break e;
115
+ }
116
+ let l;
117
+ e[29] !== m ? (l = m ? [m] : [], e[29] = m, e[30] = l) : l = e[30], Pe = l;
118
+ }
119
+ const Le = Pe;
120
+ let Z;
121
+ e[31] !== Le ? (Z = new Set(Le.map(Et)), e[31] = Le, e[32] = Z) : Z = e[32];
122
+ const De = Z;
123
+ let q;
124
+ if (e[33] !== i || e[34] !== o || e[35] !== a || e[36] !== u || e[37] !== h) {
125
+ let t;
126
+ e[39] !== i || e[40] !== o || e[41] !== u || e[42] !== h ? (t = (l) => {
127
+ const p = u(l.x), c = h(l.y);
128
+ return p >= 0 && p <= o && c >= 0 && c <= i;
129
+ }, e[39] = i, e[40] = o, e[41] = u, e[42] = h, e[43] = t) : t = e[43], q = a.filter(t), e[33] = i, e[34] = o, e[35] = a, e[36] = u, e[37] = h, e[38] = q;
130
+ } else
131
+ q = e[38];
132
+ const X = q;
133
+ let J;
134
+ e[44] !== S || e[45] !== i || e[46] !== o || e[47] !== De || e[48] !== a ? (J = (t, l, p) => {
135
+ const c = p.getContext("2d");
136
+ if (!c)
137
+ return;
138
+ if (ct(c, o, i), S) {
139
+ const [M, Ve, le] = S.colorScale ?? ["red", "white", "blue"], b = o, A = i, et = t(0), tt = l(0), ot = Math.max(1e-3, Math.min(0.999, (et * b - tt * A + A * A) / (b * b + A * A))), ce = c.createLinearGradient(0, A, b, 0);
140
+ ce.addColorStop(0, M), ce.addColorStop(ot, Ve), ce.addColorStop(1, le), c.globalAlpha = S.opacity ?? 1, c.fillStyle = ce, c.fillRect(0, 0, b, A), c.globalAlpha = 1;
141
+ }
142
+ const {
143
+ nonHovered: R,
144
+ hovered: Qe
145
+ } = ft(a, De), Fe = (M, Ve) => {
146
+ const le = t(M.x), b = l(M.y);
147
+ dt(le, b, o, i) && ut(c, M, le, b, Ve);
39
148
  };
40
- }, m = [l, o, n], t[0] = l, t[1] = o, t[2] = n, t[3] = s, t[4] = m) : (s = t[3], m = t[4]), I(s, m);
41
- const f = (r) => ({
42
- ...d,
43
- color: o === r ? g || "primary.main" : c.palette.text.primary,
44
- backgroundColor: o === r ? `color-mix(in srgb, ${b} 15%, transparent)` : "transparent",
45
- "&:hover": {
46
- backgroundColor: o === r ? `color-mix(in srgb, ${b} 25%, transparent)` : c.palette.action.hover
149
+ R.forEach((M) => Fe(M, !1)), Qe.forEach((M) => Fe(M, !0));
150
+ }, e[44] = S, e[45] = i, e[46] = o, e[47] = De, e[48] = a, e[49] = J) : J = e[49];
151
+ const N = J;
152
+ let O, Q;
153
+ e[50] !== N || e[51] !== L || e[52] !== u || e[53] !== h ? (O = () => {
154
+ Se.current && !L && N(u, h, Se.current);
155
+ }, Q = [N, u, h, L], e[50] = N, e[51] = L, e[52] = u, e[53] = h, e[54] = O, e[55] = Q) : (O = e[54], Q = e[55]), fe(O, Q);
156
+ let ee;
157
+ e[56] !== m || e[57] !== me ? (ee = () => {
158
+ m && me?.(m);
159
+ }, e[56] = m, e[57] = me, e[58] = ee) : ee = e[58];
160
+ const Ee = ee, Ae = g ? Ne ? x ? "none" : "crosshair" : x ? "none" : "default" : m ? "default" : d === "select" ? x ? "none" : "crosshair" : n.isDragging ? "grabbing" : "grab";
161
+ let te;
162
+ e[59] !== we || e[60] !== ke || e[61] !== n ? (te = (t) => {
163
+ ke(t), we(n);
164
+ }, e[59] = we, e[60] = ke, e[61] = n, e[62] = te) : te = e[62];
165
+ const Ce = te, Te = d === "none" ? void 0 : d === "select" ? $e : g ? void 0 : n.dragStart, We = d === "none" ? void 0 : d === "select" ? Ce : g ? void 0 : n.dragEnd, Ye = d === "none" ? void 0 : d === "select" ? x ? Ie : void 0 : g ? void 0 : n.dragMove, Xe = d === "none" ? void 0 : d === "select" ? Ce : g ? void 0 : n.dragEnd, _e = d === "none" ? void 0 : d === "select" ? $e : g ? void 0 : n.dragStart, ze = d === "none" ? void 0 : d === "select" ? Ce : g ? void 0 : n.dragEnd, Re = d === "none" ? void 0 : d === "select" ? x ? Ie : void 0 : g ? void 0 : n.dragMove;
166
+ let oe;
167
+ e[63] !== g || e[64] !== n ? (oe = (t) => {
168
+ if (Me(!1), !g) {
169
+ const l = wt(t) || {
170
+ x: 0,
171
+ y: 0
172
+ }, p = t.deltaY < 0 ? 1.1 : 0.9;
173
+ n.scale({
174
+ scaleX: p,
175
+ scaleY: p,
176
+ point: l
177
+ });
47
178
  }
48
- }), h = o !== "none" && /* @__PURE__ */ E(L, { direction: "column", alignItems: "flex-start", justifyContent: "center", sx: {
49
- background: "rgba(255, 255, 255, 0.6)",
50
- backdropFilter: "blur(2px)",
51
- WebkitBackdropFilter: "blur(2px)",
52
- border: "1px solid rgba(255, 255, 255, 0.3)",
53
- boxShadow: "0 2px 8px rgba(0, 0, 0, 0.1)",
54
- overflow: "hidden"
55
- }, children: [
56
- n && /* @__PURE__ */ e(i, { title: "Drag to pan, or hold Shift and drag", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "pan", onClick: () => l("pan"), sx: f("pan"), children: /* @__PURE__ */ e(Z, { fontSize: "small" }) }) }),
57
- n && /* @__PURE__ */ e(i, { title: "Drag to select", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "edit", onClick: () => l("select"), sx: f("select"), children: /* @__PURE__ */ e(j, { fontSize: "small" }) }) }),
58
- /* @__PURE__ */ e(i, { title: "Zoom In", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "zoom-in", onClick: w, sx: d, children: /* @__PURE__ */ e(F, { fontSize: "small" }) }) }),
59
- /* @__PURE__ */ e(i, { title: "Zoom Out", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "zoom-out", onClick: S, sx: d, children: /* @__PURE__ */ e(P, { fontSize: "small" }) }) }),
60
- /* @__PURE__ */ e(i, { title: "Reset Zoom and Pan", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "resetZoom", onClick: y, disabled: !k, sx: d, children: /* @__PURE__ */ e(T, { fontSize: "small" }) }) }),
61
- z && /* @__PURE__ */ e(i, { title: "Download Plot as SVG", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "download", onClick: () => C(), sx: d, children: /* @__PURE__ */ e($, { fontSize: "small" }) }) })
62
- ] });
63
- let p;
64
- return t[5] !== h ? (p = /* @__PURE__ */ e(D, { children: h }), t[5] = h, t[6] = p) : p = t[6], p;
179
+ }, e[63] = g, e[64] = n, e[65] = oe) : oe = e[65];
180
+ const Be = oe;
181
+ let ne;
182
+ e[66] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (ne = [], e[66] = ne) : ne = e[66];
183
+ const Ue = He(ne);
184
+ let re, ie;
185
+ e[67] !== X || e[68] !== G ? (re = () => {
186
+ At(Ue.current, X) && (G?.(X), Ue.current = X);
187
+ }, ie = [X, G], e[67] = X, e[68] = G, e[69] = re, e[70] = ie) : (re = e[69], ie = e[70]), fe(re, ie);
188
+ let se;
189
+ e[71] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (se = {
190
+ position: "relative"
191
+ }, e[71] = se) : se = e[71];
192
+ let _;
193
+ e[72] !== v ? (_ = {
194
+ width: v,
195
+ height: v
196
+ }, e[72] = v, e[73] = _) : _ = e[73];
197
+ let z;
198
+ e[74] !== y || e[75] !== P || e[76] !== w || e[77] !== S || e[78] !== ge || e[79] !== ve || e[80] !== i || e[81] !== o || e[82] !== B || e[83] !== ye || e[84] !== W || e[85] !== Y || e[86] !== V || e[87] !== ue || e[88] !== Ee || e[89] !== x || e[90] !== pe || e[91] !== be || e[92] !== de || e[93] !== r || e[94] !== Te || e[95] !== Xe || e[96] !== Ye || e[97] !== We || e[98] !== ze || e[99] !== Re || e[100] !== _e || e[101] !== Be || e[102] !== xe || e[103] !== a || e[104] !== d || e[105] !== L || e[106] !== v || e[107] !== Ae || e[108] !== D || e[109] !== u || e[110] !== E || e[111] !== h || e[112] !== n ? (z = de ? /* @__PURE__ */ s(Ke, { display: "flex", width: "100%", height: "100%", sx: {
199
+ justifyContent: "center",
200
+ alignItems: "center"
201
+ }, children: /* @__PURE__ */ s(it, {}) }) : /* @__PURE__ */ k("div", { style: {
202
+ position: "relative"
203
+ }, ref: ye, children: [
204
+ /* @__PURE__ */ s("canvas", { ref: Se, width: o * 2, height: i * 2, style: {
205
+ userSelect: "none",
206
+ position: "absolute",
207
+ top: r.top,
208
+ left: r.left,
209
+ width: o,
210
+ height: i,
211
+ backgroundColor: "transparent"
212
+ } }),
213
+ /* @__PURE__ */ k("svg", { width: v, height: v, overflow: "visible", style: {
214
+ position: "absolute",
215
+ userSelect: "none"
216
+ }, onMouseMove: (t) => {
217
+ x ? V() : ue(t, n);
218
+ }, onMouseLeave: V, children: [
219
+ /* @__PURE__ */ k(qe, { top: r.top, left: r.left, children: [
220
+ L && y && /* @__PURE__ */ s(ht, { pointData: a, animation: y, animationGroupSize: w, animationBuffer: P, xScaleTransformed: u, yScaleTransformed: h, boundedWidth: o, boundedHeight: i }),
221
+ d === "select" && /* @__PURE__ */ k(Ge, { children: [
222
+ be.map(Wt),
223
+ x && /* @__PURE__ */ k("g", { children: [
224
+ /* @__PURE__ */ s("line", { x1: D - r.left + W - 6, y1: E - r.top + Y, x2: D - r.left + W + 6, y2: E - r.top + Y, stroke: "black", strokeWidth: 1 }),
225
+ /* @__PURE__ */ s("line", { x1: D - r.left + W, y1: E - r.top + Y - 6, x2: D - r.left + W, y2: E - r.top + Y + 6, stroke: "black", strokeWidth: 1 }),
226
+ /* @__PURE__ */ s("circle", { cx: D - r.left, cy: E - r.top, r: 4, fill: "transparent", stroke: "black", pointerEvents: "none" })
227
+ ] })
228
+ ] }),
229
+ xe && (() => {
230
+ const t = u(0), l = h(0);
231
+ return /* @__PURE__ */ k(Ge, { children: [
232
+ l >= 0 && l <= i && /* @__PURE__ */ s("line", { x1: 0, x2: o, y1: l, y2: l, stroke: "#000", strokeWidth: 1, strokeDasharray: "4,4", pointerEvents: "none" }),
233
+ t >= 0 && t <= o && /* @__PURE__ */ s("line", { x1: t, x2: t, y1: 0, y2: i, stroke: "#000", strokeWidth: 1, strokeDasharray: "4,4", pointerEvents: "none" })
234
+ ] });
235
+ })(),
236
+ /* @__PURE__ */ s("rect", { ref: je, fill: "transparent", width: o, height: i, style: {
237
+ cursor: Ae
238
+ }, onMouseDown: Te, onMouseUp: We, onMouseMove: Ye, onMouseLeave: Xe, onTouchStart: _e, onTouchEnd: ze, onTouchMove: Re, onWheel: Be, onClick: Ee }),
239
+ B && !x && /* @__PURE__ */ s(vt, { position: {
240
+ x: u(B.x),
241
+ y: h(B.y)
242
+ }, boundedWidth: o, boundedHeight: i })
243
+ ] }),
244
+ /* @__PURE__ */ k(qe, { top: r.top, left: r.left, children: [
245
+ /* @__PURE__ */ s(xt, { scale: h, tickLabelProps: Yt, tickValues: Ze(h, 5) }),
246
+ /* @__PURE__ */ s(yt, { top: i, scale: u, tickLabelProps: Xt, tickValues: Ze(u, 5) }),
247
+ ge && /* @__PURE__ */ k(Ge, { children: [
248
+ /* @__PURE__ */ s(St, { top: 0, scale: u, tickValues: [] }),
249
+ /* @__PURE__ */ s(Mt, { scale: h, tickValues: [], left: o })
250
+ ] }),
251
+ /* @__PURE__ */ s(Je, { textAnchor: "middle", verticalAnchor: "end", angle: -90, fontSize: 15, y: i / 2, x: 0, dx: -50, children: pe }),
252
+ /* @__PURE__ */ s(Je, { textAnchor: "middle", verticalAnchor: "start", fontSize: 15, y: i, x: o / 2, dy: 50, children: ve })
253
+ ] }),
254
+ /* @__PURE__ */ s(mt, { pointData: a, xScaleTransformed: u, yScaleTransformed: h, boundedWidth: o, boundedHeight: i, margin: r }),
255
+ S?.legend && /* @__PURE__ */ s(pt, { backgroundGradient: S, boundedHeight: i, barLeft: r.left + o + 25, marginTop: r.top })
256
+ ] })
257
+ ] }), e[74] = y, e[75] = P, e[76] = w, e[77] = S, e[78] = ge, e[79] = ve, e[80] = i, e[81] = o, e[82] = B, e[83] = ye, e[84] = W, e[85] = Y, e[86] = V, e[87] = ue, e[88] = Ee, e[89] = x, e[90] = pe, e[91] = be, e[92] = de, e[93] = r, e[94] = Te, e[95] = Xe, e[96] = Ye, e[97] = We, e[98] = ze, e[99] = Re, e[100] = _e, e[101] = Be, e[102] = xe, e[103] = a, e[104] = d, e[105] = L, e[106] = v, e[107] = Ae, e[108] = D, e[109] = u, e[110] = E, e[111] = h, e[112] = n, e[113] = z) : z = e[113];
258
+ let ae;
259
+ return e[114] !== _ || e[115] !== z ? (ae = /* @__PURE__ */ s(st, { justifyContent: "center", alignItems: "center", direction: "row", sx: se, children: /* @__PURE__ */ s(Ke, { sx: _, children: z }) }), e[114] = _, e[115] = z, e[116] = ae) : ae = e[116], ae;
65
260
  };
261
+ function Pt(f) {
262
+ f.preventDefault();
263
+ }
264
+ function Lt(f) {
265
+ f.preventDefault();
266
+ }
267
+ function Dt(f) {
268
+ f.preventDefault();
269
+ }
270
+ function Et(f) {
271
+ return `${f.x},${f.y}`;
272
+ }
273
+ function At(f, e) {
274
+ return f.length !== e.length ? !0 : !f.every((v, r) => {
275
+ const o = e[r];
276
+ return v.x === o.x && v.y === o.y && v.r === o.r && v.shape === o.shape && v.color === o.color && v.opacity === o.opacity;
277
+ });
278
+ }
279
+ function Ct(f) {
280
+ return f.x;
281
+ }
282
+ function Tt(f) {
283
+ return f.y;
284
+ }
285
+ function Wt(f, e) {
286
+ return /* @__PURE__ */ s(bt, { fill: "transparent", stroke: "black", strokeWidth: 3, data: f, curve: kt, x: Ct, y: Tt }, `line-${e}`);
287
+ }
288
+ function Yt() {
289
+ return {
290
+ fill: "#1c1917",
291
+ fontSize: 10,
292
+ textAnchor: "end",
293
+ verticalAnchor: "middle",
294
+ x: -10
295
+ };
296
+ }
297
+ function Xt() {
298
+ return {
299
+ fill: "#1c1917",
300
+ fontSize: 11,
301
+ textAnchor: "middle"
302
+ };
303
+ }
66
304
  export {
67
- V as default
305
+ to as default
68
306
  };
69
307
  //# sourceMappingURL=visualization.es67.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es67.js","sources":["../src/components/ScatterPlot/controls.tsx"],"sourcesContent":["import { useEffect } from \"react\";\nimport { ControlButtonsProps } from \"./types\";\nimport { IconButton, Stack, Tooltip } from \"@mui/material\";\nimport { Add, Remove, BackHand, Edit, SettingsBackupRestore, Download } from \"@mui/icons-material\"\nimport { useTheme } from \"@mui/material/styles\";\n\nconst ControlButtons = ({\n selectable,\n resetable,\n handleSelectionModeChange,\n selectMode,\n zoomIn,\n zoomOut,\n zoomReset,\n highlight,\n downloadButton,\n downloadPlot\n}: ControlButtonsProps) => {\n const theme = useTheme();\n const color = highlight ?? theme.palette.primary.main;\n const tooltipPlacement = \"right\";\n \n const buttonSx = {\n borderRadius: 0,\n color: theme.palette.text.primary,\n padding: theme.spacing(1),\n };\n\n useEffect(() => {\n // Function to handle key press\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Shift' && selectable && selectMode === \"select\") {\n handleSelectionModeChange('pan'); // Switch to pan mode when Shift is pressed\n\n // Function to handle key release\n const handleKeyUp = (e: KeyboardEvent) => {\n if (e.key === 'Shift' && selectable) {\n handleSelectionModeChange('select'); // Switch back to select mode when Shift is released\n }\n };\n\n window.addEventListener('keyup', handleKeyUp);\n return () => {\n window.removeEventListener('keyup', handleKeyUp);\n };\n }\n };\n\n // Add event listeners for key press and release\n window.addEventListener('keydown', handleKeyDown);\n\n // Clean up event listeners on unmount\n return () => {\n window.removeEventListener('keydown', handleKeyDown);\n };\n }, [handleSelectionModeChange, selectMode, selectable]);\n\n const getToggleButtonSx = (mode: \"pan\" | \"select\") => ({\n ...buttonSx,\n color: selectMode === mode ? highlight || \"primary.main\" : theme.palette.text.primary,\n backgroundColor: selectMode === mode\n ? `color-mix(in srgb, ${color} 15%, transparent)`\n : \"transparent\",\n '&:hover': {\n backgroundColor: selectMode === mode\n ? `color-mix(in srgb, ${color} 25%, transparent)`\n : theme.palette.action.hover,\n },\n });\n\n return (\n <>\n {selectMode !== \"none\" && (\n <Stack\n direction=\"column\"\n alignItems=\"flex-start\"\n justifyContent={\"center\"}\n sx={{\n background: \"rgba(255, 255, 255, 0.6)\",\n backdropFilter: \"blur(2px)\",\n WebkitBackdropFilter: \"blur(2px)\",\n border: \"1px solid rgba(255, 255, 255, 0.3)\",\n boxShadow: \"0 2px 8px rgba(0, 0, 0, 0.1)\",\n overflow: \"hidden\",\n }}\n >\n {\n selectable && (\n <Tooltip title=\"Drag to pan, or hold Shift and drag\" placement={tooltipPlacement}>\n <IconButton\n aria-label=\"pan\"\n onClick={() => handleSelectionModeChange('pan')}\n sx={getToggleButtonSx(\"pan\")}\n >\n <BackHand fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n )\n }\n {\n selectable && (\n <Tooltip title=\"Drag to select\" placement={tooltipPlacement}>\n <IconButton\n aria-label=\"edit\"\n onClick={() => handleSelectionModeChange('select')}\n sx={getToggleButtonSx(\"select\")}\n >\n <Edit fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n )\n }\n <Tooltip title=\"Zoom In\" placement={tooltipPlacement}>\n <IconButton aria-label=\"zoom-in\" onClick={zoomIn} sx={buttonSx}>\n <Add fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n <Tooltip title=\"Zoom Out\" placement={tooltipPlacement}>\n <IconButton aria-label=\"zoom-out\" onClick={zoomOut} sx={buttonSx}>\n <Remove fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n <Tooltip title=\"Reset Zoom and Pan\" placement={tooltipPlacement}>\n <IconButton aria-label=\"resetZoom\" onClick={zoomReset} disabled={!resetable} sx={buttonSx}>\n <SettingsBackupRestore fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n {downloadButton && (\n <Tooltip title=\"Download Plot as SVG\" placement={tooltipPlacement}>\n <IconButton aria-label=\"download\" onClick={() => downloadPlot()} sx={buttonSx}>\n <Download fontSize=\"small\" />\n </IconButton>\n </Tooltip>\n )}\n </Stack>\n )}\n </>\n\n );\n}\n\nexport default ControlButtons;\n"],"names":["ControlButtons","t0","$","_c","selectable","resetable","handleSelectionModeChange","selectMode","zoomIn","zoomOut","zoomReset","highlight","downloadButton","downloadPlot","theme","useTheme","color","palette","primary","main","buttonSx","borderRadius","text","padding","spacing","t1","t2","handleKeyDown","e","key","handleKeyUp","e_0","window","addEventListener","removeEventListener","useEffect","getToggleButtonSx","mode","backgroundColor","action","hover","t3","jsxs","Stack","background","backdropFilter","WebkitBackdropFilter","border","boxShadow","overflow","jsx","Tooltip","tooltipPlacement","IconButton","BackHand","Edit","Add","Remove","SettingsBackupRestore","Download","t4"],"mappings":"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"}
1
+ {"version":3,"file":"visualization.es67.js","sources":["../src/components/ScatterPlot/ScatterPlotViewport.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport CircularProgress from \"@mui/material/CircularProgress\";\nimport { Box, Stack } from \"@mui/material\";\nimport { Group } from \"@visx/group\";\nimport { AxisBottom, AxisLeft, AxisRight, AxisTop } from \"@visx/axis\";\nimport { LinePath } from \"@visx/shape\";\nimport { Text } from \"@visx/text\";\nimport { curveBasis } from \"@visx/curve\";\nimport { localPoint } from \"@visx/event\";\nimport { ScaleLinear } from \"@visx/vendor/d3-scale\";\nimport { BackgroundGradient, ChartProps, CrosshairPosition, Point, SelectionMode, ZoomType } from \"./types\";\nimport { drawCanvasPoint, getTicks, isPointVisible, partitionPointsByHover, prepareCanvas, rescaleX, rescaleY } from \"./helpers\";\nimport AnimatedPoints from \"./AnimatedPoints\";\nimport PointLabels from \"./PointLabels\";\nimport GradientLegend from \"./GradientLegend\";\nimport Crosshair from \"./Crosshair\";\nimport { useDragSelection } from \"./hooks/useDragSelection\";\n\ntype ScatterPlotViewportProps<T extends object> = {\n size: number;\n margin: { top: number; left: number };\n boundedWidth: number;\n boundedHeight: number;\n loading: boolean;\n pointData: Point<T>[];\n animation?: ChartProps<T, boolean | undefined, boolean | undefined>[\"animation\"];\n animationGroupSize?: number;\n animationBuffer?: number;\n xScale: ScaleLinear<number, number, never>;\n yScale: ScaleLinear<number, number, never>;\n zoom: ZoomType;\n selectMode: SelectionMode;\n selectable: boolean;\n disableZoom?: boolean;\n groupPointsAnchor?: keyof Point<T> | keyof T;\n hoveredPoint: Point<T> | null;\n handleMouseMove: (event: React.MouseEvent<SVGElement>, zoom: ZoomType) => void;\n handleMouseLeave: () => void;\n onDisplayedPointsChange?: (points: Point<T>[]) => void;\n onSelectionChange?: (selectedPoints: Point<T>[]) => void;\n onPointClicked?: (point: Point<T>) => void;\n leftAxisLabel?: string;\n bottomAxisLabel?: string;\n border: boolean;\n originLine?: boolean;\n backgroundGradient?: BackgroundGradient;\n /** Crosshair position in data coordinates, or null for no crosshair. */\n crosshair?: CrosshairPosition | null;\n divRef: React.RefObject<HTMLDivElement | null>;\n};\n\nconst ScatterPlotViewport = <T extends object>({\n size,\n margin,\n boundedWidth,\n boundedHeight,\n loading,\n pointData,\n animation,\n animationGroupSize,\n animationBuffer,\n xScale,\n yScale,\n zoom,\n selectMode,\n selectable,\n disableZoom,\n groupPointsAnchor,\n hoveredPoint,\n handleMouseMove,\n handleMouseLeave,\n onDisplayedPointsChange,\n onSelectionChange,\n onPointClicked,\n leftAxisLabel,\n bottomAxisLabel,\n border,\n originLine,\n backgroundGradient,\n crosshair,\n divRef,\n}: ScatterPlotViewportProps<T>) => {\n const graphRef = useRef<SVGRectElement | null>(null);\n const canvasRef = useRef<HTMLCanvasElement | null>(null);\n\n // Animation state — viewport owns what it renders\n const [showPointAnimation, setShowPointAnimation] = useState(Boolean(animation));\n\n useEffect(() => {\n if (!animation) return;\n if (pointData.length > 2500) {\n setShowPointAnimation(false);\n return;\n }\n const duration = 450;\n const buffer = (animationBuffer ?? 0.03) * 1000;\n const groups = Math.ceil(pointData.length / (animationGroupSize ?? 1));\n const total = duration + groups * buffer;\n\n const t = window.setTimeout(() => setShowPointAnimation(false), total);\n return () => window.clearTimeout(t);\n }, [animation, animationBuffer, animationGroupSize, pointData.length]);\n\n const { lines, isDragging, x, y, dx, dy, dragStart, dragMove, dragEnd, completeSelection } =\n useDragSelection({ pointData, margin, xScale, yScale, onSelectionChange });\n\n // Passive event listeners to prevent default scroll/touch behavior on the chart surface\n useEffect(() => {\n const graphElement = graphRef.current;\n\n const handleWheel = (event: WheelEvent) => { event.preventDefault(); };\n const handleTouchMove = (event: TouchEvent) => { event.preventDefault(); };\n const handleTouchStart = (event: TouchEvent) => { event.preventDefault(); };\n\n if (graphElement) {\n graphElement.addEventListener('wheel', handleWheel, { passive: false });\n graphElement.addEventListener('touchstart', handleTouchStart, { passive: false });\n graphElement.addEventListener('touchmove', handleTouchMove, { passive: false });\n }\n\n return () => {\n if (graphElement) {\n graphElement.removeEventListener('wheel', handleWheel);\n graphElement.removeEventListener('touchstart', handleTouchStart);\n graphElement.removeEventListener('touchmove', handleTouchMove);\n }\n };\n }, []);\n\n const xScaleTransformed = useMemo(\n () => rescaleX(xScale, zoom.transformMatrix.translateX, zoom.transformMatrix.scaleX),\n [xScale, zoom.transformMatrix]\n );\n const yScaleTransformed = useMemo(\n () => rescaleY(yScale, zoom.transformMatrix.translateY, zoom.transformMatrix.scaleY),\n [yScale, zoom.transformMatrix]\n );\n\n const groupedPoints: Point<T>[] = useMemo(() => {\n const anchor = groupPointsAnchor;\n if (anchor && hoveredPoint) {\n return pointData.filter((point) => {\n if (anchor in point) {\n return point[anchor as keyof Point<T>] === hoveredPoint[anchor as keyof Point<T>];\n }\n if (point.metaData && hoveredPoint.metaData) {\n return point.metaData[anchor as keyof T] === hoveredPoint.metaData[anchor as keyof T];\n }\n return false;\n });\n }\n return hoveredPoint ? [hoveredPoint] : [];\n }, [hoveredPoint, groupPointsAnchor, pointData]);\n\n const hoveredPointKeys = useMemo(\n () => new Set(groupedPoints.map((point) => `${point.x},${point.y}`)),\n [groupedPoints]\n );\n\n const currentDisplayedPoints = useMemo(\n () => pointData.filter((point) => {\n const tx = xScaleTransformed(point.x);\n const ty = yScaleTransformed(point.y);\n return tx >= 0 && tx <= boundedWidth && ty >= 0 && ty <= boundedHeight;\n }),\n [pointData, xScaleTransformed, yScaleTransformed, boundedWidth, boundedHeight]\n );\n\n const drawPoints = useCallback((\n xST: ScaleLinear<number, number, never>,\n yST: ScaleLinear<number, number, never>,\n canvas: HTMLCanvasElement\n ) => {\n const context = canvas.getContext('2d');\n if (!context) return;\n\n prepareCanvas(context, boundedWidth, boundedHeight);\n\n if (backgroundGradient) {\n const [colorLow, colorMid, colorHigh] = backgroundGradient.colorScale ?? [\"red\", \"white\", \"blue\"];\n const W = boundedWidth;\n const H = boundedHeight;\n const x0 = xST(0);\n const y0 = yST(0);\n const fraction = Math.max(0.001, Math.min(0.999, (x0 * W - y0 * H + H * H) / (W * W + H * H)));\n const gradient = context.createLinearGradient(0, H, W, 0);\n gradient.addColorStop(0, colorLow);\n gradient.addColorStop(fraction, colorMid);\n gradient.addColorStop(1, colorHigh);\n context.globalAlpha = backgroundGradient.opacity ?? 1;\n context.fillStyle = gradient;\n context.fillRect(0, 0, W, H);\n context.globalAlpha = 1;\n }\n\n const { nonHovered, hovered } = partitionPointsByHover(pointData, hoveredPointKeys);\n\n const drawRenderedPoint = (point: Point<T>, isHovered: boolean) => {\n const transformedX = xST(point.x);\n const transformedY = yST(point.y);\n if (!isPointVisible(transformedX, transformedY, boundedWidth, boundedHeight)) return;\n drawCanvasPoint(context, point, transformedX, transformedY, isHovered);\n };\n\n nonHovered.forEach((point) => drawRenderedPoint(point, false));\n hovered.forEach((point) => drawRenderedPoint(point, true));\n }, [boundedHeight, boundedWidth, hoveredPointKeys, pointData, backgroundGradient]);\n\n useEffect(() => {\n if (canvasRef.current && !showPointAnimation) {\n drawPoints(xScaleTransformed, yScaleTransformed, canvasRef.current);\n }\n }, [drawPoints, xScaleTransformed, yScaleTransformed, showPointAnimation]);\n\n const handlePointClick = useCallback(() => {\n if (hoveredPoint) onPointClicked?.(hoveredPoint);\n }, [hoveredPoint, onPointClicked]);\n\n const surfaceCursor = disableZoom\n ? selectable\n ? isDragging ? 'none' : 'crosshair'\n : isDragging ? 'none' : 'default'\n : hoveredPoint\n ? 'default'\n : selectMode === 'select'\n ? isDragging ? 'none' : 'crosshair'\n : zoom.isDragging\n ? 'grabbing'\n : 'grab';\n\n const handleSelectionEnd = (event: React.MouseEvent<SVGRectElement> | React.TouchEvent<SVGRectElement>) => {\n dragEnd(event);\n completeSelection(zoom);\n };\n\n const onSurfaceMouseDown = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? dragStart\n : disableZoom ? undefined : zoom.dragStart;\n const onSurfaceMouseUp = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : zoom.dragEnd;\n const onSurfaceMouseMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : zoom.dragMove;\n const onSurfaceMouseLeave = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : zoom.dragEnd;\n const onSurfaceTouchStart = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? dragStart\n : disableZoom ? undefined : zoom.dragStart;\n const onSurfaceTouchEnd = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : zoom.dragEnd;\n const onSurfaceTouchMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : zoom.dragMove;\n const onSurfaceWheel: React.WheelEventHandler<SVGRectElement> = (event) => {\n setShowPointAnimation(false);\n if (!disableZoom) {\n const point = localPoint(event) || { x: 0, y: 0 };\n const zoomDirection = event.deltaY < 0 ? 1.1 : 0.9;\n zoom.scale({ scaleX: zoomDirection, scaleY: zoomDirection, point });\n }\n };\n\n const previousDisplayedPoints = useRef<Point<T>[]>([]);\n\n useEffect(() => {\n const haveDisplayedPointsChanged = (prevPoints: Point<T>[], nextPoints: Point<T>[]) => {\n if (prevPoints.length !== nextPoints.length) return true;\n return !prevPoints.every((point, index) => {\n const nextPoint = nextPoints[index];\n return (\n point.x === nextPoint.x &&\n point.y === nextPoint.y &&\n point.r === nextPoint.r &&\n point.shape === nextPoint.shape &&\n point.color === nextPoint.color &&\n point.opacity === nextPoint.opacity\n );\n });\n };\n\n if (haveDisplayedPointsChanged(previousDisplayedPoints.current, currentDisplayedPoints)) {\n onDisplayedPointsChange?.(currentDisplayedPoints);\n previousDisplayedPoints.current = currentDisplayedPoints;\n }\n }, [currentDisplayedPoints, onDisplayedPointsChange]);\n\n return (\n <Stack justifyContent=\"center\" alignItems=\"center\" direction=\"row\" sx={{ position: \"relative\" }}>\n <Box sx={{ width: size, height: size }}>\n {loading ? (\n <Box display=\"flex\" width=\"100%\" height=\"100%\" sx={{ justifyContent: \"center\", alignItems: \"center\" }}>\n <CircularProgress />\n </Box>\n ) : (\n <div style={{ position: \"relative\" }} ref={divRef}>\n <canvas\n ref={canvasRef}\n width={boundedWidth * 2}\n height={boundedHeight * 2}\n style={{\n userSelect: \"none\",\n position: \"absolute\",\n top: margin.top,\n left: margin.left,\n width: boundedWidth,\n height: boundedHeight,\n backgroundColor: \"transparent\",\n }}\n />\n <svg\n width={size}\n height={size}\n overflow=\"visible\"\n style={{ position: \"absolute\", userSelect: \"none\" }}\n onMouseMove={(event) => {\n if (isDragging) handleMouseLeave();\n else handleMouseMove(event, zoom);\n }}\n onMouseLeave={handleMouseLeave}\n >\n <Group top={margin.top} left={margin.left}>\n {showPointAnimation && animation && (\n <AnimatedPoints\n pointData={pointData}\n animation={animation}\n animationGroupSize={animationGroupSize}\n animationBuffer={animationBuffer}\n xScaleTransformed={xScaleTransformed}\n yScaleTransformed={yScaleTransformed}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n />\n )}\n {selectMode === \"select\" && (\n <>\n {lines.map((line, index) => (\n <LinePath\n key={`line-${index}`}\n fill=\"transparent\"\n stroke=\"black\"\n strokeWidth={3}\n data={line}\n curve={curveBasis}\n x={(datum) => datum.x}\n y={(datum) => datum.y}\n />\n ))}\n {isDragging && (\n <g>\n <line x1={x - margin.left + dx - 6} y1={y - margin.top + dy} x2={x - margin.left + dx + 6} y2={y - margin.top + dy} stroke=\"black\" strokeWidth={1} />\n <line x1={x - margin.left + dx} y1={y - margin.top + dy - 6} x2={x - margin.left + dx} y2={y - margin.top + dy + 6} stroke=\"black\" strokeWidth={1} />\n <circle cx={x - margin.left} cy={y - margin.top} r={4} fill=\"transparent\" stroke=\"black\" pointerEvents=\"none\" />\n </g>\n )}\n </>\n )}\n {originLine && (() => {\n const x0 = xScaleTransformed(0);\n const y0 = yScaleTransformed(0);\n return (\n <>\n {y0 >= 0 && y0 <= boundedHeight && (\n <line x1={0} x2={boundedWidth} y1={y0} y2={y0} stroke=\"#000\" strokeWidth={1} strokeDasharray=\"4,4\" pointerEvents=\"none\" />\n )}\n {x0 >= 0 && x0 <= boundedWidth && (\n <line x1={x0} x2={x0} y1={0} y2={boundedHeight} stroke=\"#000\" strokeWidth={1} strokeDasharray=\"4,4\" pointerEvents=\"none\" />\n )}\n </>\n );\n })()}\n <rect\n ref={graphRef}\n fill=\"transparent\"\n width={boundedWidth}\n height={boundedHeight}\n style={{ cursor: surfaceCursor }}\n onMouseDown={onSurfaceMouseDown}\n onMouseUp={onSurfaceMouseUp}\n onMouseMove={onSurfaceMouseMove}\n onMouseLeave={onSurfaceMouseLeave}\n onTouchStart={onSurfaceTouchStart}\n onTouchEnd={onSurfaceTouchEnd}\n onTouchMove={onSurfaceTouchMove}\n onWheel={onSurfaceWheel}\n onClick={handlePointClick}\n />\n {crosshair && !isDragging && (\n <Crosshair\n position={{\n x: xScaleTransformed(crosshair.x),\n y: yScaleTransformed(crosshair.y),\n }}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n />\n )}\n </Group>\n <Group top={margin.top} left={margin.left}>\n <AxisLeft\n scale={yScaleTransformed}\n tickLabelProps={() => ({\n fill: \"#1c1917\",\n fontSize: 10,\n textAnchor: \"end\",\n verticalAnchor: \"middle\",\n x: -10,\n })}\n tickValues={getTicks(yScaleTransformed, 5)}\n />\n <AxisBottom\n top={boundedHeight}\n scale={xScaleTransformed}\n tickLabelProps={() => ({\n fill: \"#1c1917\",\n fontSize: 11,\n textAnchor: \"middle\",\n })}\n tickValues={getTicks(xScaleTransformed, 5)}\n />\n {border && (\n <>\n <AxisTop top={0} scale={xScaleTransformed} tickValues={[]} />\n <AxisRight scale={yScaleTransformed} tickValues={[]} left={boundedWidth} />\n </>\n )}\n <Text textAnchor=\"middle\" verticalAnchor=\"end\" angle={-90} fontSize={15} y={boundedHeight / 2} x={0} dx={-50}>\n {leftAxisLabel}\n </Text>\n <Text textAnchor=\"middle\" verticalAnchor=\"start\" fontSize={15} y={boundedHeight} x={boundedWidth / 2} dy={50}>\n {bottomAxisLabel}\n </Text>\n </Group>\n <PointLabels\n pointData={pointData}\n xScaleTransformed={xScaleTransformed}\n yScaleTransformed={yScaleTransformed}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n margin={margin}\n />\n {backgroundGradient?.legend && (\n <GradientLegend\n backgroundGradient={backgroundGradient}\n boundedHeight={boundedHeight}\n barLeft={margin.left + boundedWidth + 25}\n marginTop={margin.top}\n />\n )}\n </svg>\n </div>\n )}\n </Box>\n </Stack>\n );\n};\n\nexport default ScatterPlotViewport;\n"],"names":["ScatterPlotViewport","t0","$","_c","size","margin","boundedWidth","boundedHeight","loading","pointData","animation","animationGroupSize","animationBuffer","xScale","yScale","zoom","selectMode","selectable","disableZoom","groupPointsAnchor","hoveredPoint","handleMouseMove","handleMouseLeave","onDisplayedPointsChange","onSelectionChange","onPointClicked","leftAxisLabel","bottomAxisLabel","border","originLine","backgroundGradient","crosshair","divRef","graphRef","useRef","canvasRef","showPointAnimation","setShowPointAnimation","useState","Boolean","t1","t2","length","buffer","total","Math","ceil","t","window","setTimeout","clearTimeout","useEffect","t3","lines","isDragging","x","y","dx","dy","dragStart","dragMove","dragEnd","completeSelection","useDragSelection","t4","t5","Symbol","for","graphElement","current","handleWheel","_temp","handleTouchMove","_temp2","handleTouchStart","_temp3","addEventListener","passive","removeEventListener","t6","transformMatrix","scaleX","translateX","rescaleX","xScaleTransformed","t7","scaleY","translateY","rescaleY","yScaleTransformed","t8","bb0","anchor","t9","t10","point","metaData","filter","groupedPoints","Set","map","_temp4","hoveredPointKeys","t11","point_1","tx","ty","currentDisplayedPoints","xST","yST","canvas","context","getContext","prepareCanvas","colorLow","colorMid","colorHigh","colorScale","W","H","x0","y0","fraction","max","min","gradient","createLinearGradient","addColorStop","globalAlpha","opacity","fillStyle","fillRect","nonHovered","hovered","partitionPointsByHover","drawRenderedPoint","point_2","isHovered","transformedX","transformedY","isPointVisible","drawCanvasPoint","forEach","point_3","point_4","drawPoints","t12","t13","t14","handlePointClick","surfaceCursor","t15","event_2","event","handleSelectionEnd","onSurfaceMouseDown","undefined","onSurfaceMouseUp","onSurfaceMouseMove","onSurfaceMouseLeave","onSurfaceTouchStart","onSurfaceTouchEnd","onSurfaceTouchMove","t16","event_3","point_5","localPoint","zoomDirection","deltaY","scale","onSurfaceWheel","t17","previousDisplayedPoints","t18","t19","_temp5","t20","position","t21","width","height","t22","Box","justifyContent","alignItems","jsx","CircularProgress","jsxs","userSelect","top","left","backgroundColor","event_4","Group","AnimatedPoints","Fragment","_temp8","x0_0","y0_0","cursor","Crosshair","AxisLeft","_temp9","getTicks","AxisBottom","_temp0","AxisTop","AxisRight","Text","PointLabels","legend","GradientLegend","t23","Stack","preventDefault","event_0","event_1","point_0","prevPoints","nextPoints","every","point_6","index","nextPoint","r","shape","color","_temp6","datum","_temp7","datum_0","line","index_0","LinePath","curveBasis","fill","fontSize","textAnchor","verticalAnchor"],"mappings":"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"}