@weng-lab/visualization 2.6.0-beta.0 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1252) hide show
  1. package/dist/src/components/Heatmap/Heatmap.d.ts.map +1 -1
  2. package/dist/src/components/Heatmap/HeatmapCanvasCells.d.ts +19 -5
  3. package/dist/src/components/Heatmap/HeatmapCanvasCells.d.ts.map +1 -1
  4. package/dist/src/components/Heatmap/HeatmapGrid.d.ts +36 -0
  5. package/dist/src/components/Heatmap/HeatmapGrid.d.ts.map +1 -0
  6. package/dist/src/components/Heatmap/{scrollable/HeatmapMiniMap.d.ts → HeatmapMiniMap.d.ts} +1 -1
  7. package/dist/src/components/Heatmap/HeatmapMiniMap.d.ts.map +1 -0
  8. package/dist/src/components/Heatmap/{scrollable/HeatmapMiniMapPopup.d.ts → HeatmapMiniMapPopup.d.ts} +1 -1
  9. package/dist/src/components/Heatmap/HeatmapMiniMapPopup.d.ts.map +1 -0
  10. package/dist/src/components/Heatmap/heatmapAxisProps.d.ts +2 -15
  11. package/dist/src/components/Heatmap/heatmapAxisProps.d.ts.map +1 -1
  12. package/dist/src/components/Heatmap/heatmapCellAppearance.d.ts +2 -2
  13. package/dist/src/components/Heatmap/heatmapExport.d.ts +20 -0
  14. package/dist/src/components/Heatmap/heatmapExport.d.ts.map +1 -0
  15. package/dist/src/components/Heatmap/heatmapLayout.d.ts +4 -18
  16. package/dist/src/components/Heatmap/heatmapLayout.d.ts.map +1 -1
  17. package/dist/src/components/Heatmap/hooks/useHeatmapCanvasGrid.d.ts +4 -3
  18. package/dist/src/components/Heatmap/hooks/useHeatmapCanvasGrid.d.ts.map +1 -1
  19. package/dist/src/components/Heatmap/types.d.ts +13 -5
  20. package/dist/src/components/Heatmap/types.d.ts.map +1 -1
  21. package/dist/src/components/ScatterPlot/controls.d.ts.map +1 -1
  22. package/dist/src/components/ScatterPlot/minimap.d.ts.map +1 -1
  23. package/dist/src/utility.d.ts +34 -20
  24. package/dist/src/utility.d.ts.map +1 -1
  25. package/dist/visualization.es10.js +10 -10
  26. package/dist/visualization.es100.js +556 -222
  27. package/dist/visualization.es100.js.map +1 -1
  28. package/dist/visualization.es101.js +214 -18
  29. package/dist/visualization.es101.js.map +1 -1
  30. package/dist/visualization.es102.js +2 -95
  31. package/dist/visualization.es102.js.map +1 -1
  32. package/dist/visualization.es103.js +4795 -170
  33. package/dist/visualization.es103.js.map +1 -1
  34. package/dist/visualization.es104.js +25 -82
  35. package/dist/visualization.es104.js.map +1 -1
  36. package/dist/visualization.es105.js +42 -34
  37. package/dist/visualization.es105.js.map +1 -1
  38. package/dist/visualization.es106.js +144 -56
  39. package/dist/visualization.es106.js.map +1 -1
  40. package/dist/visualization.es107.js +147 -47
  41. package/dist/visualization.es107.js.map +1 -1
  42. package/dist/visualization.es108.js +1 -1
  43. package/dist/visualization.es109.js +14 -221
  44. package/dist/visualization.es109.js.map +1 -1
  45. package/dist/visualization.es11.js +8 -8
  46. package/dist/visualization.es110.js +55 -2
  47. package/dist/visualization.es110.js.map +1 -1
  48. package/dist/visualization.es111.js +23 -556
  49. package/dist/visualization.es111.js.map +1 -1
  50. package/dist/visualization.es112.js +82 -212
  51. package/dist/visualization.es112.js.map +1 -1
  52. package/dist/visualization.es113.js +245 -2
  53. package/dist/visualization.es113.js.map +1 -1
  54. package/dist/visualization.es114.js +17 -4799
  55. package/dist/visualization.es114.js.map +1 -1
  56. package/dist/visualization.es115.js +142 -25
  57. package/dist/visualization.es115.js.map +1 -1
  58. package/dist/visualization.es116.js +173 -43
  59. package/dist/visualization.es116.js.map +1 -1
  60. package/dist/visualization.es117.js +102 -143
  61. package/dist/visualization.es117.js.map +1 -1
  62. package/dist/visualization.es118.js +36 -146
  63. package/dist/visualization.es118.js.map +1 -1
  64. package/dist/visualization.es119.js +25 -31
  65. package/dist/visualization.es119.js.map +1 -1
  66. package/dist/visualization.es120.js +69 -44
  67. package/dist/visualization.es120.js.map +1 -1
  68. package/dist/visualization.es121.js +29 -73
  69. package/dist/visualization.es121.js.map +1 -1
  70. package/dist/visualization.es122.js +43 -23
  71. package/dist/visualization.es122.js.map +1 -1
  72. package/dist/visualization.es123.js +71 -80
  73. package/dist/visualization.es123.js.map +1 -1
  74. package/dist/visualization.es124.js +25 -36
  75. package/dist/visualization.es124.js.map +1 -1
  76. package/dist/visualization.es125.js +84 -25
  77. package/dist/visualization.es125.js.map +1 -1
  78. package/dist/visualization.es126.js +35 -69
  79. package/dist/visualization.es126.js.map +1 -1
  80. package/dist/visualization.es127.js +55 -71
  81. package/dist/visualization.es127.js.map +1 -1
  82. package/dist/visualization.es128.js +31 -32
  83. package/dist/visualization.es128.js.map +1 -1
  84. package/dist/visualization.es129.js +18 -13
  85. package/dist/visualization.es129.js.map +1 -1
  86. package/dist/visualization.es130.js +14 -58
  87. package/dist/visualization.es130.js.map +1 -1
  88. package/dist/visualization.es131.js +25 -31
  89. package/dist/visualization.es131.js.map +1 -1
  90. package/dist/visualization.es132.js +2 -18
  91. package/dist/visualization.es132.js.map +1 -1
  92. package/dist/visualization.es133.js +1606 -14
  93. package/dist/visualization.es133.js.map +1 -1
  94. package/dist/visualization.es134.js +18 -26
  95. package/dist/visualization.es134.js.map +1 -1
  96. package/dist/visualization.es135.js +61 -2
  97. package/dist/visualization.es135.js.map +1 -1
  98. package/dist/visualization.es136.js +37 -1604
  99. package/dist/visualization.es136.js.map +1 -1
  100. package/dist/visualization.es137.js +34 -61
  101. package/dist/visualization.es137.js.map +1 -1
  102. package/dist/visualization.es138.js +84 -7
  103. package/dist/visualization.es138.js.map +1 -1
  104. package/dist/visualization.es139.js +29 -5
  105. package/dist/visualization.es139.js.map +1 -1
  106. package/dist/visualization.es14.js +6 -6
  107. package/dist/visualization.es140.js +7 -42
  108. package/dist/visualization.es140.js.map +1 -1
  109. package/dist/visualization.es141.js +4 -30
  110. package/dist/visualization.es141.js.map +1 -1
  111. package/dist/visualization.es142.js +2 -6
  112. package/dist/visualization.es142.js.map +1 -1
  113. package/dist/visualization.es143.js +63 -6
  114. package/dist/visualization.es143.js.map +1 -1
  115. package/dist/visualization.es144.js +7 -4
  116. package/dist/visualization.es144.js.map +1 -1
  117. package/dist/visualization.es145.js +5 -17
  118. package/dist/visualization.es145.js.map +1 -1
  119. package/dist/visualization.es146.js +40 -14
  120. package/dist/visualization.es146.js.map +1 -1
  121. package/dist/visualization.es147.js +84 -32
  122. package/dist/visualization.es147.js.map +1 -1
  123. package/dist/visualization.es148.js +89 -16
  124. package/dist/visualization.es148.js.map +1 -1
  125. package/dist/visualization.es149.js +11 -9
  126. package/dist/visualization.es149.js.map +1 -1
  127. package/dist/visualization.es150.js +5 -6
  128. package/dist/visualization.es150.js.map +1 -1
  129. package/dist/visualization.es151.js +14 -6
  130. package/dist/visualization.es151.js.map +1 -1
  131. package/dist/visualization.es152.js +7 -11
  132. package/dist/visualization.es152.js.map +1 -1
  133. package/dist/visualization.es153.js +13 -4
  134. package/dist/visualization.es153.js.map +1 -1
  135. package/dist/visualization.es154.js +71 -4
  136. package/dist/visualization.es154.js.map +1 -1
  137. package/dist/visualization.es155.js +16 -8
  138. package/dist/visualization.es155.js.map +1 -1
  139. package/dist/visualization.es156.js +11 -4
  140. package/dist/visualization.es156.js.map +1 -1
  141. package/dist/visualization.es157.js +5 -13
  142. package/dist/visualization.es157.js.map +1 -1
  143. package/dist/visualization.es158.js +18 -25
  144. package/dist/visualization.es158.js.map +1 -1
  145. package/dist/visualization.es159.js +27 -60
  146. package/dist/visualization.es159.js.map +1 -1
  147. package/dist/visualization.es16.js +7 -7
  148. package/dist/visualization.es160.js +30 -38
  149. package/dist/visualization.es160.js.map +1 -1
  150. package/dist/visualization.es161.js +6 -35
  151. package/dist/visualization.es161.js.map +1 -1
  152. package/dist/visualization.es162.js +6 -83
  153. package/dist/visualization.es162.js.map +1 -1
  154. package/dist/visualization.es163.js +3 -28
  155. package/dist/visualization.es163.js.map +1 -1
  156. package/dist/visualization.es164.js +15 -6
  157. package/dist/visualization.es164.js.map +1 -1
  158. package/dist/visualization.es165.js +16 -4
  159. package/dist/visualization.es165.js.map +1 -1
  160. package/dist/visualization.es166.js +32 -3
  161. package/dist/visualization.es166.js.map +1 -1
  162. package/dist/visualization.es167.js +15 -70
  163. package/dist/visualization.es167.js.map +1 -1
  164. package/dist/visualization.es168.js +8 -14
  165. package/dist/visualization.es168.js.map +1 -1
  166. package/dist/visualization.es169.js +6 -11
  167. package/dist/visualization.es169.js.map +1 -1
  168. package/dist/visualization.es170.js +7 -5
  169. package/dist/visualization.es170.js.map +1 -1
  170. package/dist/visualization.es171.js +10 -84
  171. package/dist/visualization.es171.js.map +1 -1
  172. package/dist/visualization.es172.js +4 -89
  173. package/dist/visualization.es172.js.map +1 -1
  174. package/dist/visualization.es173.js +3 -11
  175. package/dist/visualization.es173.js.map +1 -1
  176. package/dist/visualization.es174.js +8 -5
  177. package/dist/visualization.es174.js.map +1 -1
  178. package/dist/visualization.es175.js +4 -14
  179. package/dist/visualization.es175.js.map +1 -1
  180. package/dist/visualization.es176.js +13 -7
  181. package/dist/visualization.es176.js.map +1 -1
  182. package/dist/visualization.es177.js +26 -13
  183. package/dist/visualization.es177.js.map +1 -1
  184. package/dist/visualization.es178.js +3 -3
  185. package/dist/visualization.es179.js +2 -2
  186. package/dist/visualization.es180.js +3 -3
  187. package/dist/visualization.es186.js +2 -2
  188. package/dist/visualization.es187.js +2 -2
  189. package/dist/visualization.es19.js +1 -1
  190. package/dist/visualization.es193.js +2 -2
  191. package/dist/visualization.es2.js +8 -8
  192. package/dist/visualization.es206.js +3 -19
  193. package/dist/visualization.es206.js.map +1 -1
  194. package/dist/visualization.es207.js +74 -27
  195. package/dist/visualization.es207.js.map +1 -1
  196. package/dist/visualization.es208.js +2 -18
  197. package/dist/visualization.es208.js.map +1 -1
  198. package/dist/visualization.es209.js +482 -3
  199. package/dist/visualization.es209.js.map +1 -1
  200. package/dist/visualization.es21.js +1 -1
  201. package/dist/visualization.es210.js +2 -73
  202. package/dist/visualization.es210.js.map +1 -1
  203. package/dist/visualization.es211.js +16 -20
  204. package/dist/visualization.es211.js.map +1 -1
  205. package/dist/visualization.es212.js +3 -22
  206. package/dist/visualization.es212.js.map +1 -1
  207. package/dist/visualization.es213.js +34 -39
  208. package/dist/visualization.es213.js.map +1 -1
  209. package/dist/visualization.es214.js +72 -7
  210. package/dist/visualization.es214.js.map +1 -1
  211. package/dist/visualization.es215.js +20 -10
  212. package/dist/visualization.es215.js.map +1 -1
  213. package/dist/visualization.es216.js +19 -14
  214. package/dist/visualization.es216.js.map +1 -1
  215. package/dist/visualization.es217.js +37 -33
  216. package/dist/visualization.es217.js.map +1 -1
  217. package/dist/visualization.es218.js +7 -24
  218. package/dist/visualization.es218.js.map +1 -1
  219. package/dist/visualization.es219.js +10 -25
  220. package/dist/visualization.es219.js.map +1 -1
  221. package/dist/visualization.es220.js +14 -15
  222. package/dist/visualization.es220.js.map +1 -1
  223. package/dist/visualization.es221.js +36 -3
  224. package/dist/visualization.es221.js.map +1 -1
  225. package/dist/visualization.es222.js +24 -35
  226. package/dist/visualization.es222.js.map +1 -1
  227. package/dist/visualization.es223.js +27 -74
  228. package/dist/visualization.es223.js.map +1 -1
  229. package/dist/visualization.es224.js +33 -2
  230. package/dist/visualization.es224.js.map +1 -1
  231. package/dist/visualization.es225.js +114 -482
  232. package/dist/visualization.es225.js.map +1 -1
  233. package/dist/visualization.es226.js +4 -2
  234. package/dist/visualization.es226.js.map +1 -1
  235. package/dist/visualization.es227.js +5 -63
  236. package/dist/visualization.es227.js.map +1 -1
  237. package/dist/visualization.es228.js +33 -60
  238. package/dist/visualization.es228.js.map +1 -1
  239. package/dist/visualization.es229.js +15 -123
  240. package/dist/visualization.es229.js.map +1 -1
  241. package/dist/visualization.es23.js +62 -146
  242. package/dist/visualization.es23.js.map +1 -1
  243. package/dist/visualization.es230.js +6 -8
  244. package/dist/visualization.es230.js.map +1 -1
  245. package/dist/visualization.es231.js +11 -6
  246. package/dist/visualization.es231.js.map +1 -1
  247. package/dist/visualization.es232.js +9 -7
  248. package/dist/visualization.es232.js.map +1 -1
  249. package/dist/visualization.es233.js +5 -8
  250. package/dist/visualization.es233.js.map +1 -1
  251. package/dist/visualization.es234.js +7 -6
  252. package/dist/visualization.es234.js.map +1 -1
  253. package/dist/visualization.es235.js +9 -6
  254. package/dist/visualization.es235.js.map +1 -1
  255. package/dist/visualization.es236.js +6 -5
  256. package/dist/visualization.es236.js.map +1 -1
  257. package/dist/visualization.es237.js +6 -14
  258. package/dist/visualization.es237.js.map +1 -1
  259. package/dist/visualization.es238.js +4 -4
  260. package/dist/visualization.es238.js.map +1 -1
  261. package/dist/visualization.es239.js +14 -3
  262. package/dist/visualization.es239.js.map +1 -1
  263. package/dist/visualization.es24.js +1 -1
  264. package/dist/visualization.es240.js +5 -6
  265. package/dist/visualization.es240.js.map +1 -1
  266. package/dist/visualization.es241.js +3 -6
  267. package/dist/visualization.es241.js.map +1 -1
  268. package/dist/visualization.es242.js +6 -9
  269. package/dist/visualization.es242.js.map +1 -1
  270. package/dist/visualization.es243.js +6 -32
  271. package/dist/visualization.es243.js.map +1 -1
  272. package/dist/visualization.es244.js +9 -114
  273. package/dist/visualization.es244.js.map +1 -1
  274. package/dist/visualization.es245.js +123 -3
  275. package/dist/visualization.es245.js.map +1 -1
  276. package/dist/visualization.es246.js +2 -6
  277. package/dist/visualization.es246.js.map +1 -1
  278. package/dist/visualization.es247.js +3 -33
  279. package/dist/visualization.es247.js.map +1 -1
  280. package/dist/visualization.es248.js +3 -15
  281. package/dist/visualization.es248.js.map +1 -1
  282. package/dist/visualization.es249.js +3 -7
  283. package/dist/visualization.es249.js.map +1 -1
  284. package/dist/visualization.es25.js +111 -38
  285. package/dist/visualization.es25.js.map +1 -1
  286. package/dist/visualization.es250.js +3 -11
  287. package/dist/visualization.es250.js.map +1 -1
  288. package/dist/visualization.es251.js +4 -2
  289. package/dist/visualization.es251.js.map +1 -1
  290. package/dist/visualization.es252.js +3 -34
  291. package/dist/visualization.es252.js.map +1 -1
  292. package/dist/visualization.es253.js +4 -2
  293. package/dist/visualization.es253.js.map +1 -1
  294. package/dist/visualization.es254.js +7 -3
  295. package/dist/visualization.es254.js.map +1 -1
  296. package/dist/visualization.es255.js +48 -3
  297. package/dist/visualization.es255.js.map +1 -1
  298. package/dist/visualization.es256.js +3 -3
  299. package/dist/visualization.es256.js.map +1 -1
  300. package/dist/visualization.es257.js +6 -3
  301. package/dist/visualization.es257.js.map +1 -1
  302. package/dist/visualization.es258.js +4 -3
  303. package/dist/visualization.es258.js.map +1 -1
  304. package/dist/visualization.es259.js +3 -3
  305. package/dist/visualization.es259.js.map +1 -1
  306. package/dist/visualization.es26.js +175 -79
  307. package/dist/visualization.es26.js.map +1 -1
  308. package/dist/visualization.es260.js +6 -3
  309. package/dist/visualization.es260.js.map +1 -1
  310. package/dist/visualization.es261.js +4 -7
  311. package/dist/visualization.es261.js.map +1 -1
  312. package/dist/visualization.es262.js +33 -47
  313. package/dist/visualization.es262.js.map +1 -1
  314. package/dist/visualization.es263.js +2 -4
  315. package/dist/visualization.es263.js.map +1 -1
  316. package/dist/visualization.es264.js +23 -6
  317. package/dist/visualization.es264.js.map +1 -1
  318. package/dist/visualization.es265.js +53 -4
  319. package/dist/visualization.es265.js.map +1 -1
  320. package/dist/visualization.es266.js +20 -3
  321. package/dist/visualization.es266.js.map +1 -1
  322. package/dist/visualization.es267.js +52 -5
  323. package/dist/visualization.es267.js.map +1 -1
  324. package/dist/visualization.es268.js +31 -4
  325. package/dist/visualization.es268.js.map +1 -1
  326. package/dist/visualization.es269.js +34 -7
  327. package/dist/visualization.es269.js.map +1 -1
  328. package/dist/visualization.es27.js +8 -46
  329. package/dist/visualization.es27.js.map +1 -1
  330. package/dist/visualization.es270.js +12 -34
  331. package/dist/visualization.es270.js.map +1 -1
  332. package/dist/visualization.es271.js +28 -2
  333. package/dist/visualization.es271.js.map +1 -1
  334. package/dist/visualization.es272.js +3 -4
  335. package/dist/visualization.es272.js.map +1 -1
  336. package/dist/visualization.es273.js +11 -6
  337. package/dist/visualization.es273.js.map +1 -1
  338. package/dist/visualization.es274.js +36 -12
  339. package/dist/visualization.es274.js.map +1 -1
  340. package/dist/visualization.es275.js +261 -2
  341. package/dist/visualization.es275.js.map +1 -1
  342. package/dist/visualization.es276.js +59 -3
  343. package/dist/visualization.es276.js.map +1 -1
  344. package/dist/visualization.es277.js +5 -3
  345. package/dist/visualization.es277.js.map +1 -1
  346. package/dist/visualization.es278.js +6 -9
  347. package/dist/visualization.es278.js.map +1 -1
  348. package/dist/visualization.es279.js +140 -4
  349. package/dist/visualization.es279.js.map +1 -1
  350. package/dist/visualization.es28.js +7 -55
  351. package/dist/visualization.es28.js.map +1 -1
  352. package/dist/visualization.es280.js +5 -32
  353. package/dist/visualization.es280.js.map +1 -1
  354. package/dist/visualization.es281.js +21 -53
  355. package/dist/visualization.es281.js.map +1 -1
  356. package/dist/visualization.es282.js +33 -27
  357. package/dist/visualization.es282.js.map +1 -1
  358. package/dist/visualization.es283.js +31 -30
  359. package/dist/visualization.es283.js.map +1 -1
  360. package/dist/visualization.es284.js +15 -13
  361. package/dist/visualization.es284.js.map +1 -1
  362. package/dist/visualization.es285.js +19 -24
  363. package/dist/visualization.es285.js.map +1 -1
  364. package/dist/visualization.es286.js +9 -54
  365. package/dist/visualization.es286.js.map +1 -1
  366. package/dist/visualization.es287.js +108 -19
  367. package/dist/visualization.es287.js.map +1 -1
  368. package/dist/visualization.es288.js +13 -3
  369. package/dist/visualization.es288.js.map +1 -1
  370. package/dist/visualization.es289.js +141 -11
  371. package/dist/visualization.es289.js.map +1 -1
  372. package/dist/visualization.es29.js +47 -6
  373. package/dist/visualization.es29.js.map +1 -1
  374. package/dist/visualization.es290.js +5 -36
  375. package/dist/visualization.es290.js.map +1 -1
  376. package/dist/visualization.es291.js +58 -247
  377. package/dist/visualization.es291.js.map +1 -1
  378. package/dist/visualization.es292.js +33 -57
  379. package/dist/visualization.es292.js.map +1 -1
  380. package/dist/visualization.es293.js +20 -5
  381. package/dist/visualization.es293.js.map +1 -1
  382. package/dist/visualization.es294.js +3 -21
  383. package/dist/visualization.es294.js.map +1 -1
  384. package/dist/visualization.es295.js +18 -31
  385. package/dist/visualization.es295.js.map +1 -1
  386. package/dist/visualization.es296.js +30 -34
  387. package/dist/visualization.es296.js.map +1 -1
  388. package/dist/visualization.es297.js +2 -15
  389. package/dist/visualization.es297.js.map +1 -1
  390. package/dist/visualization.es298.js +2 -19
  391. package/dist/visualization.es298.js.map +1 -1
  392. package/dist/visualization.es299.js +6 -9
  393. package/dist/visualization.es299.js.map +1 -1
  394. package/dist/visualization.es3.js +10 -10
  395. package/dist/visualization.es30.js +20 -7
  396. package/dist/visualization.es30.js.map +1 -1
  397. package/dist/visualization.es300.js +15 -8
  398. package/dist/visualization.es300.js.map +1 -1
  399. package/dist/visualization.es301.js +31 -137
  400. package/dist/visualization.es301.js.map +1 -1
  401. package/dist/visualization.es302.js +27 -5
  402. package/dist/visualization.es302.js.map +1 -1
  403. package/dist/visualization.es303.js +10 -109
  404. package/dist/visualization.es303.js.map +1 -1
  405. package/dist/visualization.es304.js +6 -12
  406. package/dist/visualization.es304.js.map +1 -1
  407. package/dist/visualization.es305.js +13 -141
  408. package/dist/visualization.es305.js.map +1 -1
  409. package/dist/visualization.es306.js +12 -6
  410. package/dist/visualization.es306.js.map +1 -1
  411. package/dist/visualization.es307.js +2 -72
  412. package/dist/visualization.es307.js.map +1 -1
  413. package/dist/visualization.es308.js +3 -36
  414. package/dist/visualization.es308.js.map +1 -1
  415. package/dist/visualization.es309.js +2 -21
  416. package/dist/visualization.es309.js.map +1 -1
  417. package/dist/visualization.es310.js +103 -3
  418. package/dist/visualization.es310.js.map +1 -1
  419. package/dist/visualization.es311.js +4 -24
  420. package/dist/visualization.es311.js.map +1 -1
  421. package/dist/visualization.es312.js +3 -31
  422. package/dist/visualization.es312.js.map +1 -1
  423. package/dist/visualization.es313.js +19 -2
  424. package/dist/visualization.es313.js.map +1 -1
  425. package/dist/visualization.es314.js +6 -2
  426. package/dist/visualization.es314.js.map +1 -1
  427. package/dist/visualization.es315.js +14 -5
  428. package/dist/visualization.es315.js.map +1 -1
  429. package/dist/visualization.es316.js +5 -15
  430. package/dist/visualization.es316.js.map +1 -1
  431. package/dist/visualization.es317.js +28 -34
  432. package/dist/visualization.es317.js.map +1 -1
  433. package/dist/visualization.es318.js +6 -27
  434. package/dist/visualization.es318.js.map +1 -1
  435. package/dist/visualization.es319.js +2 -11
  436. package/dist/visualization.es319.js.map +1 -1
  437. package/dist/visualization.es32.js +33 -25
  438. package/dist/visualization.es32.js.map +1 -1
  439. package/dist/visualization.es320.js +20 -7
  440. package/dist/visualization.es320.js.map +1 -1
  441. package/dist/visualization.es321.js +21 -14
  442. package/dist/visualization.es321.js.map +1 -1
  443. package/dist/visualization.es322.js +6 -12
  444. package/dist/visualization.es322.js.map +1 -1
  445. package/dist/visualization.es323.js +8 -2
  446. package/dist/visualization.es323.js.map +1 -1
  447. package/dist/visualization.es324.js +19 -3
  448. package/dist/visualization.es324.js.map +1 -1
  449. package/dist/visualization.es325.js +44 -2
  450. package/dist/visualization.es325.js.map +1 -1
  451. package/dist/visualization.es326.js +7 -104
  452. package/dist/visualization.es326.js.map +1 -1
  453. package/dist/visualization.es327.js +19 -4
  454. package/dist/visualization.es327.js.map +1 -1
  455. package/dist/visualization.es328.js +54 -3
  456. package/dist/visualization.es328.js.map +1 -1
  457. package/dist/visualization.es329.js +26 -18
  458. package/dist/visualization.es329.js.map +1 -1
  459. package/dist/visualization.es33.js +32 -45
  460. package/dist/visualization.es33.js.map +1 -1
  461. package/dist/visualization.es330.js +11 -6
  462. package/dist/visualization.es330.js.map +1 -1
  463. package/dist/visualization.es331.js +17 -13
  464. package/dist/visualization.es331.js.map +1 -1
  465. package/dist/visualization.es332.js +11 -4
  466. package/dist/visualization.es332.js.map +1 -1
  467. package/dist/visualization.es333.js +4 -28
  468. package/dist/visualization.es333.js.map +1 -1
  469. package/dist/visualization.es334.js +4 -7
  470. package/dist/visualization.es334.js.map +1 -1
  471. package/dist/visualization.es335.js +4 -2
  472. package/dist/visualization.es335.js.map +1 -1
  473. package/dist/visualization.es336.js +176 -20
  474. package/dist/visualization.es336.js.map +1 -1
  475. package/dist/visualization.es337.js +40 -21
  476. package/dist/visualization.es337.js.map +1 -1
  477. package/dist/visualization.es338.js +5 -5
  478. package/dist/visualization.es338.js.map +1 -1
  479. package/dist/visualization.es339.js +3 -7
  480. package/dist/visualization.es339.js.map +1 -1
  481. package/dist/visualization.es34.js +41 -31
  482. package/dist/visualization.es34.js.map +1 -1
  483. package/dist/visualization.es340.js +2 -19
  484. package/dist/visualization.es340.js.map +1 -1
  485. package/dist/visualization.es341.js +29 -43
  486. package/dist/visualization.es341.js.map +1 -1
  487. package/dist/visualization.es342.js +8 -7
  488. package/dist/visualization.es342.js.map +1 -1
  489. package/dist/visualization.es343.js +10 -19
  490. package/dist/visualization.es343.js.map +1 -1
  491. package/dist/visualization.es344.js +3 -53
  492. package/dist/visualization.es344.js.map +1 -1
  493. package/dist/visualization.es345.js +65 -26
  494. package/dist/visualization.es345.js.map +1 -1
  495. package/dist/visualization.es346.js +7 -11
  496. package/dist/visualization.es346.js.map +1 -1
  497. package/dist/visualization.es347.js +4 -18
  498. package/dist/visualization.es347.js.map +1 -1
  499. package/dist/visualization.es348.js +12 -10
  500. package/dist/visualization.es348.js.map +1 -1
  501. package/dist/visualization.es349.js +34 -4
  502. package/dist/visualization.es349.js.map +1 -1
  503. package/dist/visualization.es35.js +34 -33
  504. package/dist/visualization.es35.js.map +1 -1
  505. package/dist/visualization.es350.js +5 -4
  506. package/dist/visualization.es350.js.map +1 -1
  507. package/dist/visualization.es351.js +9 -3
  508. package/dist/visualization.es351.js.map +1 -1
  509. package/dist/visualization.es352.js +2 -176
  510. package/dist/visualization.es352.js.map +1 -1
  511. package/dist/visualization.es353.js +5 -40
  512. package/dist/visualization.es353.js.map +1 -1
  513. package/dist/visualization.es354.js +2 -6
  514. package/dist/visualization.es354.js.map +1 -1
  515. package/dist/visualization.es355.js +9 -3
  516. package/dist/visualization.es355.js.map +1 -1
  517. package/dist/visualization.es356.js +10 -2
  518. package/dist/visualization.es356.js.map +1 -1
  519. package/dist/visualization.es357.js +12 -29
  520. package/dist/visualization.es357.js.map +1 -1
  521. package/dist/visualization.es358.js +2 -8
  522. package/dist/visualization.es358.js.map +1 -1
  523. package/dist/visualization.es359.js +10 -11
  524. package/dist/visualization.es359.js.map +1 -1
  525. package/dist/visualization.es36.js +67 -18
  526. package/dist/visualization.es36.js.map +1 -1
  527. package/dist/visualization.es360.js +7 -3
  528. package/dist/visualization.es360.js.map +1 -1
  529. package/dist/visualization.es361.js +5 -65
  530. package/dist/visualization.es361.js.map +1 -1
  531. package/dist/visualization.es362.js +25 -7
  532. package/dist/visualization.es362.js.map +1 -1
  533. package/dist/visualization.es363.js +19 -5
  534. package/dist/visualization.es363.js.map +1 -1
  535. package/dist/visualization.es364.js +39 -12
  536. package/dist/visualization.es364.js.map +1 -1
  537. package/dist/visualization.es365.js +3 -35
  538. package/dist/visualization.es365.js.map +1 -1
  539. package/dist/visualization.es366.js +8 -4
  540. package/dist/visualization.es366.js.map +1 -1
  541. package/dist/visualization.es367.js +8 -9
  542. package/dist/visualization.es367.js.map +1 -1
  543. package/dist/visualization.es368.js +36 -2
  544. package/dist/visualization.es368.js.map +1 -1
  545. package/dist/visualization.es369.js +10 -5
  546. package/dist/visualization.es369.js.map +1 -1
  547. package/dist/visualization.es37.js +11 -12
  548. package/dist/visualization.es37.js.map +1 -1
  549. package/dist/visualization.es370.js +32 -2
  550. package/dist/visualization.es370.js.map +1 -1
  551. package/dist/visualization.es371.js +4 -9
  552. package/dist/visualization.es371.js.map +1 -1
  553. package/dist/visualization.es372.js +2 -10
  554. package/dist/visualization.es372.js.map +1 -1
  555. package/dist/visualization.es373.js +16 -13
  556. package/dist/visualization.es373.js.map +1 -1
  557. package/dist/visualization.es374.js +25 -2
  558. package/dist/visualization.es374.js.map +1 -1
  559. package/dist/visualization.es375.js +2 -10
  560. package/dist/visualization.es375.js.map +1 -1
  561. package/dist/visualization.es376.js +62 -7
  562. package/dist/visualization.es376.js.map +1 -1
  563. package/dist/visualization.es377.js +2 -6
  564. package/dist/visualization.es377.js.map +1 -1
  565. package/dist/visualization.es378.js +2 -25
  566. package/dist/visualization.es378.js.map +1 -1
  567. package/dist/visualization.es379.js +6 -19
  568. package/dist/visualization.es379.js.map +1 -1
  569. package/dist/visualization.es38.js +18689 -45
  570. package/dist/visualization.es38.js.map +1 -1
  571. package/dist/visualization.es380.js +34 -38
  572. package/dist/visualization.es380.js.map +1 -1
  573. package/dist/visualization.es381.js +21 -3
  574. package/dist/visualization.es381.js.map +1 -1
  575. package/dist/visualization.es382.js +3 -8
  576. package/dist/visualization.es382.js.map +1 -1
  577. package/dist/visualization.es383.js +4 -8
  578. package/dist/visualization.es383.js.map +1 -1
  579. package/dist/visualization.es384.js +4 -35
  580. package/dist/visualization.es384.js.map +1 -1
  581. package/dist/visualization.es385.js +47 -8
  582. package/dist/visualization.es385.js.map +1 -1
  583. package/dist/visualization.es386.js +26 -31
  584. package/dist/visualization.es386.js.map +1 -1
  585. package/dist/visualization.es387.js +16 -4
  586. package/dist/visualization.es387.js.map +1 -1
  587. package/dist/visualization.es388.js +10 -2
  588. package/dist/visualization.es388.js.map +1 -1
  589. package/dist/visualization.es389.js +18 -14
  590. package/dist/visualization.es389.js.map +1 -1
  591. package/dist/visualization.es39.js +5 -55
  592. package/dist/visualization.es39.js.map +1 -1
  593. package/dist/visualization.es390.js +13 -24
  594. package/dist/visualization.es390.js.map +1 -1
  595. package/dist/visualization.es391.js +4 -2
  596. package/dist/visualization.es391.js.map +1 -1
  597. package/dist/visualization.es392.js +11 -61
  598. package/dist/visualization.es392.js.map +1 -1
  599. package/dist/visualization.es393.js +49 -2
  600. package/dist/visualization.es393.js.map +1 -1
  601. package/dist/visualization.es394.js +6 -2
  602. package/dist/visualization.es394.js.map +1 -1
  603. package/dist/visualization.es395.js +12 -5
  604. package/dist/visualization.es395.js.map +1 -1
  605. package/dist/visualization.es396.js +2 -37
  606. package/dist/visualization.es396.js.map +1 -1
  607. package/dist/visualization.es397.js +6 -20
  608. package/dist/visualization.es397.js.map +1 -1
  609. package/dist/visualization.es398.js +209 -3
  610. package/dist/visualization.es398.js.map +1 -1
  611. package/dist/visualization.es399.js +26 -4
  612. package/dist/visualization.es399.js.map +1 -1
  613. package/dist/visualization.es4.js +6 -6
  614. package/dist/visualization.es40.js +5 -111
  615. package/dist/visualization.es40.js.map +1 -1
  616. package/dist/visualization.es400.js +3 -4
  617. package/dist/visualization.es400.js.map +1 -1
  618. package/dist/visualization.es401.js +14 -47
  619. package/dist/visualization.es401.js.map +1 -1
  620. package/dist/visualization.es402.js +14 -26
  621. package/dist/visualization.es402.js.map +1 -1
  622. package/dist/visualization.es403.js +14 -16
  623. package/dist/visualization.es403.js.map +1 -1
  624. package/dist/visualization.es404.js +2 -10
  625. package/dist/visualization.es404.js.map +1 -1
  626. package/dist/visualization.es405.js +2 -20
  627. package/dist/visualization.es405.js.map +1 -1
  628. package/dist/visualization.es406.js +2 -14
  629. package/dist/visualization.es406.js.map +1 -1
  630. package/dist/visualization.es407.js +5 -4
  631. package/dist/visualization.es407.js.map +1 -1
  632. package/dist/visualization.es408.js +2 -13
  633. package/dist/visualization.es408.js.map +1 -1
  634. package/dist/visualization.es409.js +25 -49
  635. package/dist/visualization.es409.js.map +1 -1
  636. package/dist/visualization.es41.js +59 -7
  637. package/dist/visualization.es41.js.map +1 -1
  638. package/dist/visualization.es410.js +21 -5
  639. package/dist/visualization.es410.js.map +1 -1
  640. package/dist/visualization.es411.js +8 -12
  641. package/dist/visualization.es411.js.map +1 -1
  642. package/dist/visualization.es412.js +68 -2
  643. package/dist/visualization.es412.js.map +1 -1
  644. package/dist/visualization.es413.js +6 -7
  645. package/dist/visualization.es413.js.map +1 -1
  646. package/dist/visualization.es414.js +29 -210
  647. package/dist/visualization.es414.js.map +1 -1
  648. package/dist/visualization.es415.js +9 -26
  649. package/dist/visualization.es415.js.map +1 -1
  650. package/dist/visualization.es416.js +6 -4
  651. package/dist/visualization.es416.js.map +1 -1
  652. package/dist/visualization.es417.js +2 -16
  653. package/dist/visualization.es417.js.map +1 -1
  654. package/dist/visualization.es418.js +5 -15
  655. package/dist/visualization.es418.js.map +1 -1
  656. package/dist/visualization.es419.js +26 -15
  657. package/dist/visualization.es419.js.map +1 -1
  658. package/dist/visualization.es42.js +810 -7
  659. package/dist/visualization.es42.js.map +1 -1
  660. package/dist/visualization.es420.js +11 -2
  661. package/dist/visualization.es420.js.map +1 -1
  662. package/dist/visualization.es421.js +27 -2
  663. package/dist/visualization.es421.js.map +1 -1
  664. package/dist/visualization.es422.js +10 -2
  665. package/dist/visualization.es422.js.map +1 -1
  666. package/dist/visualization.es423.js +11 -5
  667. package/dist/visualization.es423.js.map +1 -1
  668. package/dist/visualization.es424.js +2 -2
  669. package/dist/visualization.es424.js.map +1 -1
  670. package/dist/visualization.es425.js +16 -25
  671. package/dist/visualization.es425.js.map +1 -1
  672. package/dist/visualization.es426.js +29 -21
  673. package/dist/visualization.es426.js.map +1 -1
  674. package/dist/visualization.es427.js +26 -9
  675. package/dist/visualization.es427.js.map +1 -1
  676. package/dist/visualization.es428.js +2 -68
  677. package/dist/visualization.es428.js.map +1 -1
  678. package/dist/visualization.es429.js +9 -6
  679. package/dist/visualization.es429.js.map +1 -1
  680. package/dist/visualization.es430.js +13 -29
  681. package/dist/visualization.es430.js.map +1 -1
  682. package/dist/visualization.es431.js +22 -9
  683. package/dist/visualization.es431.js.map +1 -1
  684. package/dist/visualization.es432.js +13 -6
  685. package/dist/visualization.es432.js.map +1 -1
  686. package/dist/visualization.es433.js +3 -2
  687. package/dist/visualization.es433.js.map +1 -1
  688. package/dist/visualization.es434.js +2 -5
  689. package/dist/visualization.es434.js.map +1 -1
  690. package/dist/visualization.es435.js +15 -23
  691. package/dist/visualization.es435.js.map +1 -1
  692. package/dist/visualization.es436.js +3 -10
  693. package/dist/visualization.es436.js.map +1 -1
  694. package/dist/visualization.es437.js +11 -26
  695. package/dist/visualization.es437.js.map +1 -1
  696. package/dist/visualization.es438.js +11 -10
  697. package/dist/visualization.es438.js.map +1 -1
  698. package/dist/visualization.es439.js +6 -10
  699. package/dist/visualization.es439.js.map +1 -1
  700. package/dist/visualization.es44.js +131 -36
  701. package/dist/visualization.es44.js.map +1 -1
  702. package/dist/visualization.es440.js +19 -2
  703. package/dist/visualization.es440.js.map +1 -1
  704. package/dist/visualization.es441.js +23 -16
  705. package/dist/visualization.es441.js.map +1 -1
  706. package/dist/visualization.es442.js +11 -29
  707. package/dist/visualization.es442.js.map +1 -1
  708. package/dist/visualization.es443.js +51 -26
  709. package/dist/visualization.es443.js.map +1 -1
  710. package/dist/visualization.es444.js +18 -2
  711. package/dist/visualization.es444.js.map +1 -1
  712. package/dist/visualization.es445.js +35 -8
  713. package/dist/visualization.es445.js.map +1 -1
  714. package/dist/visualization.es446.js +22 -12
  715. package/dist/visualization.es446.js.map +1 -1
  716. package/dist/visualization.es447.js +31 -22
  717. package/dist/visualization.es447.js.map +1 -1
  718. package/dist/visualization.es448.js +3 -12
  719. package/dist/visualization.es448.js.map +1 -1
  720. package/dist/visualization.es449.js +19 -3
  721. package/dist/visualization.es449.js.map +1 -1
  722. package/dist/visualization.es45.js +53 -192
  723. package/dist/visualization.es45.js.map +1 -1
  724. package/dist/visualization.es450.js +14 -2
  725. package/dist/visualization.es450.js.map +1 -1
  726. package/dist/visualization.es451.js +9 -16
  727. package/dist/visualization.es451.js.map +1 -1
  728. package/dist/visualization.es452.js +29 -3
  729. package/dist/visualization.es452.js.map +1 -1
  730. package/dist/visualization.es453.js +6 -12
  731. package/dist/visualization.es453.js.map +1 -1
  732. package/dist/visualization.es454.js +8 -11
  733. package/dist/visualization.es454.js.map +1 -1
  734. package/dist/visualization.es455.js +2 -7
  735. package/dist/visualization.es455.js.map +1 -1
  736. package/dist/visualization.es456.js +17 -19
  737. package/dist/visualization.es456.js.map +1 -1
  738. package/dist/visualization.es457.js +7 -21
  739. package/dist/visualization.es457.js.map +1 -1
  740. package/dist/visualization.es458.js +9 -11
  741. package/dist/visualization.es458.js.map +1 -1
  742. package/dist/visualization.es459.js +606 -41
  743. package/dist/visualization.es459.js.map +1 -1
  744. package/dist/visualization.es46.js +110 -144
  745. package/dist/visualization.es46.js.map +1 -1
  746. package/dist/visualization.es460.js +50 -17
  747. package/dist/visualization.es460.js.map +1 -1
  748. package/dist/visualization.es461.js +13 -36
  749. package/dist/visualization.es461.js.map +1 -1
  750. package/dist/visualization.es462.js +11 -23
  751. package/dist/visualization.es462.js.map +1 -1
  752. package/dist/visualization.es463.js +23 -32
  753. package/dist/visualization.es463.js.map +1 -1
  754. package/dist/visualization.es464.js +34 -3
  755. package/dist/visualization.es464.js.map +1 -1
  756. package/dist/visualization.es465.js +11 -17
  757. package/dist/visualization.es465.js.map +1 -1
  758. package/dist/visualization.es466.js +18 -13
  759. package/dist/visualization.es466.js.map +1 -1
  760. package/dist/visualization.es467.js +25 -10
  761. package/dist/visualization.es467.js.map +1 -1
  762. package/dist/visualization.es468.js +25 -28
  763. package/dist/visualization.es468.js.map +1 -1
  764. package/dist/visualization.es469.js +43 -6
  765. package/dist/visualization.es469.js.map +1 -1
  766. package/dist/visualization.es47.js +8 -188
  767. package/dist/visualization.es47.js.map +1 -1
  768. package/dist/visualization.es470.js +19 -7
  769. package/dist/visualization.es470.js.map +1 -1
  770. package/dist/visualization.es471.js +41 -2
  771. package/dist/visualization.es471.js.map +1 -1
  772. package/dist/visualization.es472.js +53 -12
  773. package/dist/visualization.es472.js.map +1 -1
  774. package/dist/visualization.es473.js +3 -8
  775. package/dist/visualization.es473.js.map +1 -1
  776. package/dist/visualization.es474.js +3 -10
  777. package/dist/visualization.es474.js.map +1 -1
  778. package/dist/visualization.es475.js +7 -616
  779. package/dist/visualization.es475.js.map +1 -1
  780. package/dist/visualization.es476.js +15 -50
  781. package/dist/visualization.es476.js.map +1 -1
  782. package/dist/visualization.es477.js +2 -13
  783. package/dist/visualization.es477.js.map +1 -1
  784. package/dist/visualization.es478.js +2 -11
  785. package/dist/visualization.es478.js.map +1 -1
  786. package/dist/visualization.es479.js +2 -23
  787. package/dist/visualization.es479.js.map +1 -1
  788. package/dist/visualization.es48.js +32 -118
  789. package/dist/visualization.es48.js.map +1 -1
  790. package/dist/visualization.es480.js +29 -35
  791. package/dist/visualization.es480.js.map +1 -1
  792. package/dist/visualization.es481.js +118 -11
  793. package/dist/visualization.es481.js.map +1 -1
  794. package/dist/visualization.es482.js +28 -17
  795. package/dist/visualization.es482.js.map +1 -1
  796. package/dist/visualization.es483.js +10 -25
  797. package/dist/visualization.es483.js.map +1 -1
  798. package/dist/visualization.es484.js +13 -26
  799. package/dist/visualization.es484.js.map +1 -1
  800. package/dist/visualization.es485.js +29 -39
  801. package/dist/visualization.es485.js.map +1 -1
  802. package/dist/visualization.es486.js +27 -18
  803. package/dist/visualization.es486.js.map +1 -1
  804. package/dist/visualization.es487.js +10 -40
  805. package/dist/visualization.es487.js.map +1 -1
  806. package/dist/visualization.es488.js +12 -57
  807. package/dist/visualization.es488.js.map +1 -1
  808. package/dist/visualization.es489.js +17 -3
  809. package/dist/visualization.es489.js.map +1 -1
  810. package/dist/visualization.es49.js +32 -41
  811. package/dist/visualization.es49.js.map +1 -1
  812. package/dist/visualization.es490.js +24 -3
  813. package/dist/visualization.es490.js.map +1 -1
  814. package/dist/visualization.es491.js +17 -7
  815. package/dist/visualization.es491.js.map +1 -1
  816. package/dist/visualization.es492.js +95 -14
  817. package/dist/visualization.es492.js.map +1 -1
  818. package/dist/visualization.es493.js +29 -2
  819. package/dist/visualization.es493.js.map +1 -1
  820. package/dist/visualization.es494.js +72 -2
  821. package/dist/visualization.es494.js.map +1 -1
  822. package/dist/visualization.es495.js +52 -2
  823. package/dist/visualization.es495.js.map +1 -1
  824. package/dist/visualization.es496.js +33 -28
  825. package/dist/visualization.es496.js.map +1 -1
  826. package/dist/visualization.es497.js +42 -29
  827. package/dist/visualization.es497.js.map +1 -1
  828. package/dist/visualization.es498.js +8 -118
  829. package/dist/visualization.es498.js.map +1 -1
  830. package/dist/visualization.es499.js +9 -29
  831. package/dist/visualization.es499.js.map +1 -1
  832. package/dist/visualization.es5.js +99 -106
  833. package/dist/visualization.es5.js.map +1 -1
  834. package/dist/visualization.es50.js +54 -35
  835. package/dist/visualization.es50.js.map +1 -1
  836. package/dist/visualization.es500.js +6 -10
  837. package/dist/visualization.es500.js.map +1 -1
  838. package/dist/visualization.es501.js +8 -13
  839. package/dist/visualization.es501.js.map +1 -1
  840. package/dist/visualization.es502.js +6 -32
  841. package/dist/visualization.es502.js.map +1 -1
  842. package/dist/visualization.es503.js +4 -27
  843. package/dist/visualization.es503.js.map +1 -1
  844. package/dist/visualization.es504.js +14 -10
  845. package/dist/visualization.es504.js.map +1 -1
  846. package/dist/visualization.es505.js +5 -12
  847. package/dist/visualization.es505.js.map +1 -1
  848. package/dist/visualization.es506.js +6 -17
  849. package/dist/visualization.es506.js.map +1 -1
  850. package/dist/visualization.es507.js +6 -23
  851. package/dist/visualization.es507.js.map +1 -1
  852. package/dist/visualization.es508.js +6 -16
  853. package/dist/visualization.es508.js.map +1 -1
  854. package/dist/visualization.es509.js +3 -96
  855. package/dist/visualization.es509.js.map +1 -1
  856. package/dist/visualization.es51.js +23 -70
  857. package/dist/visualization.es51.js.map +1 -1
  858. package/dist/visualization.es510.js +4 -28
  859. package/dist/visualization.es510.js.map +1 -1
  860. package/dist/visualization.es511.js +8 -70
  861. package/dist/visualization.es511.js.map +1 -1
  862. package/dist/visualization.es512.js +7 -52
  863. package/dist/visualization.es512.js.map +1 -1
  864. package/dist/visualization.es513.js +32 -32
  865. package/dist/visualization.es513.js.map +1 -1
  866. package/dist/visualization.es514.js +3 -41
  867. package/dist/visualization.es514.js.map +1 -1
  868. package/dist/visualization.es515.js +2 -8
  869. package/dist/visualization.es515.js.map +1 -1
  870. package/dist/visualization.es516.js +5 -8
  871. package/dist/visualization.es516.js.map +1 -1
  872. package/dist/visualization.es517.js +12 -6
  873. package/dist/visualization.es517.js.map +1 -1
  874. package/dist/visualization.es518.js +2 -9
  875. package/dist/visualization.es518.js.map +1 -1
  876. package/dist/visualization.es519.js +3 -6
  877. package/dist/visualization.es519.js.map +1 -1
  878. package/dist/visualization.es52.js +179 -11
  879. package/dist/visualization.es52.js.map +1 -1
  880. package/dist/visualization.es520.js +3 -5
  881. package/dist/visualization.es520.js.map +1 -1
  882. package/dist/visualization.es521.js +10 -14
  883. package/dist/visualization.es521.js.map +1 -1
  884. package/dist/visualization.es522.js +4 -5
  885. package/dist/visualization.es522.js.map +1 -1
  886. package/dist/visualization.es523.js +32 -6
  887. package/dist/visualization.es523.js.map +1 -1
  888. package/dist/visualization.es524.js +237 -6
  889. package/dist/visualization.es524.js.map +1 -1
  890. package/dist/visualization.es525.js +992 -6
  891. package/dist/visualization.es525.js.map +1 -1
  892. package/dist/visualization.es526.js +61 -3
  893. package/dist/visualization.es526.js.map +1 -1
  894. package/dist/visualization.es527.js +33 -4
  895. package/dist/visualization.es527.js.map +1 -1
  896. package/dist/visualization.es528.js +29 -9
  897. package/dist/visualization.es528.js.map +1 -1
  898. package/dist/visualization.es529.js +33 -237
  899. package/dist/visualization.es529.js.map +1 -1
  900. package/dist/visualization.es53.js +134 -18695
  901. package/dist/visualization.es53.js.map +1 -1
  902. package/dist/visualization.es530.js +23 -991
  903. package/dist/visualization.es530.js.map +1 -1
  904. package/dist/visualization.es531.js +44 -60
  905. package/dist/visualization.es531.js.map +1 -1
  906. package/dist/visualization.es532.js +9 -34
  907. package/dist/visualization.es532.js.map +1 -1
  908. package/dist/visualization.es533.js +15 -30
  909. package/dist/visualization.es533.js.map +1 -1
  910. package/dist/visualization.es534.js +16 -34
  911. package/dist/visualization.es534.js.map +1 -1
  912. package/dist/visualization.es535.js +15 -24
  913. package/dist/visualization.es535.js.map +1 -1
  914. package/dist/visualization.es536.js +24 -46
  915. package/dist/visualization.es536.js.map +1 -1
  916. package/dist/visualization.es537.js +6 -9
  917. package/dist/visualization.es537.js.map +1 -1
  918. package/dist/visualization.es538.js +28 -15
  919. package/dist/visualization.es538.js.map +1 -1
  920. package/dist/visualization.es539.js +11 -16
  921. package/dist/visualization.es539.js.map +1 -1
  922. package/dist/visualization.es54.js +180 -5
  923. package/dist/visualization.es54.js.map +1 -1
  924. package/dist/visualization.es540.js +14 -16
  925. package/dist/visualization.es540.js.map +1 -1
  926. package/dist/visualization.es541.js +8 -24
  927. package/dist/visualization.es541.js.map +1 -1
  928. package/dist/visualization.es542.js +8 -6
  929. package/dist/visualization.es542.js.map +1 -1
  930. package/dist/visualization.es543.js +19 -10
  931. package/dist/visualization.es543.js.map +1 -1
  932. package/dist/visualization.es544.js +61 -12
  933. package/dist/visualization.es544.js.map +1 -1
  934. package/dist/visualization.es545.js +5 -8
  935. package/dist/visualization.es545.js.map +1 -1
  936. package/dist/visualization.es546.js +4 -8
  937. package/dist/visualization.es546.js.map +1 -1
  938. package/dist/visualization.es547.js +2 -20
  939. package/dist/visualization.es547.js.map +1 -1
  940. package/dist/visualization.es548.js +17 -61
  941. package/dist/visualization.es548.js.map +1 -1
  942. package/dist/visualization.es549.js +282 -28
  943. package/dist/visualization.es549.js.map +1 -1
  944. package/dist/visualization.es55.js +52 -5
  945. package/dist/visualization.es55.js.map +1 -1
  946. package/dist/visualization.es550.js +2 -5
  947. package/dist/visualization.es550.js.map +1 -1
  948. package/dist/visualization.es551.js +127 -3
  949. package/dist/visualization.es551.js.map +1 -1
  950. package/dist/visualization.es552.js +4 -2
  951. package/dist/visualization.es552.js.map +1 -1
  952. package/dist/visualization.es553.js +3 -18
  953. package/dist/visualization.es553.js.map +1 -1
  954. package/dist/visualization.es554.js +15 -281
  955. package/dist/visualization.es554.js.map +1 -1
  956. package/dist/visualization.es555.js +4 -2
  957. package/dist/visualization.es555.js.map +1 -1
  958. package/dist/visualization.es556.js +8 -126
  959. package/dist/visualization.es556.js.map +1 -1
  960. package/dist/visualization.es557.js +4 -20
  961. package/dist/visualization.es557.js.map +1 -1
  962. package/dist/visualization.es558.js +5 -7
  963. package/dist/visualization.es558.js.map +1 -1
  964. package/dist/visualization.es559.js +9 -3
  965. package/dist/visualization.es559.js.map +1 -1
  966. package/dist/visualization.es56.js +48 -53
  967. package/dist/visualization.es56.js.map +1 -1
  968. package/dist/visualization.es560.js +7 -6
  969. package/dist/visualization.es560.js.map +1 -1
  970. package/dist/visualization.es561.js +4 -7
  971. package/dist/visualization.es561.js.map +1 -1
  972. package/dist/visualization.es562.js +2 -4
  973. package/dist/visualization.es562.js.map +1 -1
  974. package/dist/visualization.es564.js +11 -7
  975. package/dist/visualization.es564.js.map +1 -1
  976. package/dist/visualization.es565.js +9 -15
  977. package/dist/visualization.es565.js.map +1 -1
  978. package/dist/visualization.es566.js +29 -8
  979. package/dist/visualization.es566.js.map +1 -1
  980. package/dist/visualization.es567.js +24 -4
  981. package/dist/visualization.es567.js.map +1 -1
  982. package/dist/visualization.es568.js +51 -4
  983. package/dist/visualization.es568.js.map +1 -1
  984. package/dist/visualization.es569.js +3 -6
  985. package/dist/visualization.es569.js.map +1 -1
  986. package/dist/visualization.es57.js +41 -809
  987. package/dist/visualization.es57.js.map +1 -1
  988. package/dist/visualization.es570.js +8 -30
  989. package/dist/visualization.es570.js.map +1 -1
  990. package/dist/visualization.es571.js +20 -34
  991. package/dist/visualization.es571.js.map +1 -1
  992. package/dist/visualization.es572.js +7 -51
  993. package/dist/visualization.es572.js.map +1 -1
  994. package/dist/visualization.es573.js +6 -8
  995. package/dist/visualization.es573.js.map +1 -1
  996. package/dist/visualization.es574.js +5 -4
  997. package/dist/visualization.es574.js.map +1 -1
  998. package/dist/visualization.es575.js +7 -5
  999. package/dist/visualization.es575.js.map +1 -1
  1000. package/dist/visualization.es576.js +15 -3
  1001. package/dist/visualization.es576.js.map +1 -1
  1002. package/dist/visualization.es577.js +4 -3
  1003. package/dist/visualization.es577.js.map +1 -1
  1004. package/dist/visualization.es578.js +6 -11
  1005. package/dist/visualization.es578.js.map +1 -1
  1006. package/dist/visualization.es579.js +34 -9
  1007. package/dist/visualization.es579.js.map +1 -1
  1008. package/dist/visualization.es58.js +9 -0
  1009. package/dist/visualization.es58.js.map +1 -0
  1010. package/dist/visualization.es580.js +7 -23
  1011. package/dist/visualization.es580.js.map +1 -1
  1012. package/dist/visualization.es581.js +32 -3
  1013. package/dist/visualization.es581.js.map +1 -1
  1014. package/dist/visualization.es582.js +9 -3
  1015. package/dist/visualization.es582.js.map +1 -1
  1016. package/dist/visualization.es583.js +9 -9
  1017. package/dist/visualization.es583.js.map +1 -1
  1018. package/dist/visualization.es584.js +18 -8
  1019. package/dist/visualization.es584.js.map +1 -1
  1020. package/dist/visualization.es585.js +7 -15
  1021. package/dist/visualization.es585.js.map +1 -1
  1022. package/dist/visualization.es586.js +7 -32
  1023. package/dist/visualization.es586.js.map +1 -1
  1024. package/dist/visualization.es587.js +13 -9
  1025. package/dist/visualization.es587.js.map +1 -1
  1026. package/dist/visualization.es588.js +71 -8
  1027. package/dist/visualization.es588.js.map +1 -1
  1028. package/dist/visualization.es589.js +28 -17
  1029. package/dist/visualization.es589.js.map +1 -1
  1030. package/dist/visualization.es59.js +5 -131
  1031. package/dist/visualization.es59.js.map +1 -1
  1032. package/dist/visualization.es590.js +5 -7
  1033. package/dist/visualization.es590.js.map +1 -1
  1034. package/dist/visualization.es591.js +24 -6
  1035. package/dist/visualization.es591.js.map +1 -1
  1036. package/dist/visualization.es592.js +11 -13
  1037. package/dist/visualization.es592.js.map +1 -1
  1038. package/dist/visualization.es593.js +4 -72
  1039. package/dist/visualization.es593.js.map +1 -1
  1040. package/dist/visualization.es594.js +4 -29
  1041. package/dist/visualization.es594.js.map +1 -1
  1042. package/dist/visualization.es595.js +4 -5
  1043. package/dist/visualization.es595.js.map +1 -1
  1044. package/dist/visualization.es596.js +13 -26
  1045. package/dist/visualization.es596.js.map +1 -1
  1046. package/dist/visualization.es597.js +17 -11
  1047. package/dist/visualization.es597.js.map +1 -1
  1048. package/dist/visualization.es598.js +13 -4
  1049. package/dist/visualization.es598.js.map +1 -1
  1050. package/dist/visualization.es599.js +13 -4
  1051. package/dist/visualization.es599.js.map +1 -1
  1052. package/dist/visualization.es6.js +14 -14
  1053. package/dist/visualization.es60.js +18 -64
  1054. package/dist/visualization.es60.js.map +1 -1
  1055. package/dist/visualization.es600.js +8 -4
  1056. package/dist/visualization.es600.js.map +1 -1
  1057. package/dist/visualization.es601.js +11 -11
  1058. package/dist/visualization.es601.js.map +1 -1
  1059. package/dist/visualization.es602.js +24 -17
  1060. package/dist/visualization.es602.js.map +1 -1
  1061. package/dist/visualization.es603.js +18 -12
  1062. package/dist/visualization.es603.js.map +1 -1
  1063. package/dist/visualization.es604.js +7 -14
  1064. package/dist/visualization.es604.js.map +1 -1
  1065. package/dist/visualization.es605.js +6 -9
  1066. package/dist/visualization.es605.js.map +1 -1
  1067. package/dist/visualization.es606.js +3 -12
  1068. package/dist/visualization.es606.js.map +1 -1
  1069. package/dist/visualization.es607.js +64 -24
  1070. package/dist/visualization.es607.js.map +1 -1
  1071. package/dist/visualization.es608.js +4 -19
  1072. package/dist/visualization.es608.js.map +1 -1
  1073. package/dist/visualization.es609.js +9 -7
  1074. package/dist/visualization.es609.js.map +1 -1
  1075. package/dist/visualization.es61.js +4 -7
  1076. package/dist/visualization.es61.js.map +1 -1
  1077. package/dist/visualization.es610.js +7 -6
  1078. package/dist/visualization.es610.js.map +1 -1
  1079. package/dist/visualization.es611.js +18 -3
  1080. package/dist/visualization.es611.js.map +1 -1
  1081. package/dist/visualization.es612.js +13 -63
  1082. package/dist/visualization.es612.js.map +1 -1
  1083. package/dist/visualization.es613.js +290 -4
  1084. package/dist/visualization.es613.js.map +1 -1
  1085. package/dist/visualization.es614.js +32 -8
  1086. package/dist/visualization.es614.js.map +1 -1
  1087. package/dist/visualization.es615.js +3 -6
  1088. package/dist/visualization.es615.js.map +1 -1
  1089. package/dist/visualization.es616.js +10 -17
  1090. package/dist/visualization.es616.js.map +1 -1
  1091. package/dist/visualization.es617.js +3 -14
  1092. package/dist/visualization.es617.js.map +1 -1
  1093. package/dist/visualization.es618.js +5 -32
  1094. package/dist/visualization.es618.js.map +1 -1
  1095. package/dist/visualization.es619.js +4 -289
  1096. package/dist/visualization.es619.js.map +1 -1
  1097. package/dist/visualization.es62.js +26 -7
  1098. package/dist/visualization.es62.js.map +1 -1
  1099. package/dist/visualization.es620.js +13 -3
  1100. package/dist/visualization.es620.js.map +1 -1
  1101. package/dist/visualization.es621.js +117 -11
  1102. package/dist/visualization.es621.js.map +1 -1
  1103. package/dist/visualization.es622.js +65 -3
  1104. package/dist/visualization.es622.js.map +1 -1
  1105. package/dist/visualization.es623.js +4 -5
  1106. package/dist/visualization.es623.js.map +1 -1
  1107. package/dist/visualization.es624.js +6 -4
  1108. package/dist/visualization.es624.js.map +1 -1
  1109. package/dist/visualization.es625.js +7 -13
  1110. package/dist/visualization.es625.js.map +1 -1
  1111. package/dist/visualization.es626.js +15 -116
  1112. package/dist/visualization.es626.js.map +1 -1
  1113. package/dist/visualization.es627.js +19 -66
  1114. package/dist/visualization.es627.js.map +1 -1
  1115. package/dist/visualization.es628.js +9 -4
  1116. package/dist/visualization.es628.js.map +1 -1
  1117. package/dist/visualization.es629.js +3 -7
  1118. package/dist/visualization.es629.js.map +1 -1
  1119. package/dist/visualization.es63.js +29 -64
  1120. package/dist/visualization.es63.js.map +1 -1
  1121. package/dist/visualization.es630.js +28 -7
  1122. package/dist/visualization.es630.js.map +1 -1
  1123. package/dist/visualization.es631.js +6 -17
  1124. package/dist/visualization.es631.js.map +1 -1
  1125. package/dist/visualization.es632.js +11 -19
  1126. package/dist/visualization.es632.js.map +1 -1
  1127. package/dist/visualization.es633.js +6 -9
  1128. package/dist/visualization.es633.js.map +1 -1
  1129. package/dist/visualization.es634.js +11 -3
  1130. package/dist/visualization.es634.js.map +1 -1
  1131. package/dist/visualization.es635.js +21 -28
  1132. package/dist/visualization.es635.js.map +1 -1
  1133. package/dist/visualization.es636.js +2 -6
  1134. package/dist/visualization.es636.js.map +1 -1
  1135. package/dist/visualization.es637.js +10 -8
  1136. package/dist/visualization.es637.js.map +1 -1
  1137. package/dist/visualization.es638.js +302 -6
  1138. package/dist/visualization.es638.js.map +1 -1
  1139. package/dist/visualization.es639.js +25 -10
  1140. package/dist/visualization.es639.js.map +1 -1
  1141. package/dist/visualization.es64.js +64 -264
  1142. package/dist/visualization.es64.js.map +1 -1
  1143. package/dist/visualization.es640.js +77 -21
  1144. package/dist/visualization.es640.js.map +1 -1
  1145. package/dist/visualization.es641.js +35 -2
  1146. package/dist/visualization.es641.js.map +1 -1
  1147. package/dist/visualization.es642.js +11 -11
  1148. package/dist/visualization.es642.js.map +1 -1
  1149. package/dist/visualization.es643.js +7 -302
  1150. package/dist/visualization.es643.js.map +1 -1
  1151. package/dist/visualization.es644.js +8 -25
  1152. package/dist/visualization.es644.js.map +1 -1
  1153. package/dist/visualization.es645.js +3 -78
  1154. package/dist/visualization.es645.js.map +1 -1
  1155. package/dist/visualization.es65.js +261 -96
  1156. package/dist/visualization.es65.js.map +1 -1
  1157. package/dist/visualization.es66.js +140 -26
  1158. package/dist/visualization.es66.js.map +1 -1
  1159. package/dist/visualization.es67.js +26 -21
  1160. package/dist/visualization.es67.js.map +1 -1
  1161. package/dist/visualization.es68.js +21 -17
  1162. package/dist/visualization.es68.js.map +1 -1
  1163. package/dist/visualization.es69.js +16 -19
  1164. package/dist/visualization.es69.js.map +1 -1
  1165. package/dist/visualization.es7.js +11 -11
  1166. package/dist/visualization.es70.js +20 -69
  1167. package/dist/visualization.es70.js.map +1 -1
  1168. package/dist/visualization.es71.js +63 -74
  1169. package/dist/visualization.es71.js.map +1 -1
  1170. package/dist/visualization.es72.js +79 -50
  1171. package/dist/visualization.es72.js.map +1 -1
  1172. package/dist/visualization.es73.js +38 -53
  1173. package/dist/visualization.es73.js.map +1 -1
  1174. package/dist/visualization.es74.js +79 -41
  1175. package/dist/visualization.es74.js.map +1 -1
  1176. package/dist/visualization.es75.js +46 -6
  1177. package/dist/visualization.es75.js.map +1 -1
  1178. package/dist/visualization.es76.js +55 -4
  1179. package/dist/visualization.es76.js.map +1 -1
  1180. package/dist/visualization.es77.js +7 -18
  1181. package/dist/visualization.es77.js.map +1 -1
  1182. package/dist/visualization.es78.js +25 -4
  1183. package/dist/visualization.es78.js.map +1 -1
  1184. package/dist/visualization.es79.js +12 -26
  1185. package/dist/visualization.es79.js.map +1 -1
  1186. package/dist/visualization.es8.js +11 -11
  1187. package/dist/visualization.es80.js +54 -27
  1188. package/dist/visualization.es80.js.map +1 -1
  1189. package/dist/visualization.es81.js +8 -113
  1190. package/dist/visualization.es81.js.map +1 -1
  1191. package/dist/visualization.es82.js +8 -29
  1192. package/dist/visualization.es82.js.map +1 -1
  1193. package/dist/visualization.es83.js +28 -64
  1194. package/dist/visualization.es83.js.map +1 -1
  1195. package/dist/visualization.es84.js +64 -61
  1196. package/dist/visualization.es84.js.map +1 -1
  1197. package/dist/visualization.es85.js +61 -3
  1198. package/dist/visualization.es85.js.map +1 -1
  1199. package/dist/visualization.es86.js +3 -46
  1200. package/dist/visualization.es86.js.map +1 -1
  1201. package/dist/visualization.es87.js +46 -3
  1202. package/dist/visualization.es87.js.map +1 -1
  1203. package/dist/visualization.es88.js +3 -281
  1204. package/dist/visualization.es88.js.map +1 -1
  1205. package/dist/visualization.es89.js +279 -16
  1206. package/dist/visualization.es89.js.map +1 -1
  1207. package/dist/visualization.es9.js +1 -1
  1208. package/dist/visualization.es90.js +15 -31
  1209. package/dist/visualization.es90.js.map +1 -1
  1210. package/dist/visualization.es91.js +11 -53
  1211. package/dist/visualization.es91.js.map +1 -1
  1212. package/dist/visualization.es92.js +74 -5
  1213. package/dist/visualization.es92.js.map +1 -1
  1214. package/dist/visualization.es93.js +33 -5
  1215. package/dist/visualization.es93.js.map +1 -1
  1216. package/dist/visualization.es94.js +13 -5
  1217. package/dist/visualization.es94.js.map +1 -1
  1218. package/dist/visualization.es95.js +5 -13
  1219. package/dist/visualization.es95.js.map +1 -1
  1220. package/dist/visualization.es96.js +5 -15
  1221. package/dist/visualization.es96.js.map +1 -1
  1222. package/dist/visualization.es97.js +5 -55
  1223. package/dist/visualization.es97.js.map +1 -1
  1224. package/dist/visualization.es98.js +221 -23
  1225. package/dist/visualization.es98.js.map +1 -1
  1226. package/dist/visualization.es99.js +2 -84
  1227. package/dist/visualization.es99.js.map +1 -1
  1228. package/package.json +1 -1
  1229. package/dist/src/components/Heatmap/HeatmapCell.d.ts +0 -29
  1230. package/dist/src/components/Heatmap/HeatmapCell.d.ts.map +0 -1
  1231. package/dist/src/components/Heatmap/HeatmapCells.d.ts +0 -29
  1232. package/dist/src/components/Heatmap/HeatmapCells.d.ts.map +0 -1
  1233. package/dist/src/components/Heatmap/HeatmapStaticSvg.d.ts +0 -32
  1234. package/dist/src/components/Heatmap/HeatmapStaticSvg.d.ts.map +0 -1
  1235. package/dist/src/components/Heatmap/scrollable/HeatmapMiniMap.d.ts.map +0 -1
  1236. package/dist/src/components/Heatmap/scrollable/HeatmapMiniMapPopup.d.ts.map +0 -1
  1237. package/dist/src/components/Heatmap/scrollable/HeatmapScrollableGrid.d.ts +0 -29
  1238. package/dist/src/components/Heatmap/scrollable/HeatmapScrollableGrid.d.ts.map +0 -1
  1239. package/dist/src/components/Heatmap/scrollable/heatmapExport.d.ts +0 -25
  1240. package/dist/src/components/Heatmap/scrollable/heatmapExport.d.ts.map +0 -1
  1241. package/dist/visualization.es43.js +0 -37
  1242. package/dist/visualization.es43.js.map +0 -1
  1243. package/dist/visualization.es646.js +0 -38
  1244. package/dist/visualization.es646.js.map +0 -1
  1245. package/dist/visualization.es647.js +0 -16
  1246. package/dist/visualization.es647.js.map +0 -1
  1247. package/dist/visualization.es648.js +0 -11
  1248. package/dist/visualization.es648.js.map +0 -1
  1249. package/dist/visualization.es649.js +0 -13
  1250. package/dist/visualization.es649.js.map +0 -1
  1251. package/dist/visualization.es650.js +0 -6
  1252. package/dist/visualization.es650.js.map +0 -1
@@ -1,271 +1,71 @@
1
- import { jsx as s, jsxs as A, Fragment as tt } from "react/jsx-runtime";
2
- import { useRef as L, useState as te, useEffect as F, useMemo as C, useCallback as et } from "react";
3
- import ee from "@mui/material/CircularProgress";
4
- import { Stack as re, Box as kt } from "@mui/material";
5
- import { rescaleX as ne, rescaleY as oe, pointKey as At, isPointVisible as Et, DEFAULT_HOVER_STYLE as gt, prepareCanvas as se, partitionPointsByHover as ce, getTicks as Mt, drawCanvasPoint as le } from "./visualization.es18.js";
6
- import ae from "./visualization.es119.js";
7
- import ie from "./visualization.es120.js";
8
- import fe from "./visualization.es121.js";
9
- import ue from "./visualization.es122.js";
10
- import { useDragSelection as pe } from "./visualization.es123.js";
11
- import { useStableCallback as ve } from "./visualization.es20.js";
12
- import Lt from "./visualization.es36.js";
13
- import he from "./visualization.es124.js";
14
- import me from "./visualization.es38.js";
15
- import xe from "./visualization.es35.js";
16
- import ye from "./visualization.es34.js";
17
- import Se from "./visualization.es43.js";
18
- import we from "./visualization.es90.js";
19
- import Ct from "./visualization.es33.js";
20
- import ke from "./visualization.es52.js";
21
- const Tt = 120, Ae = (E) => 1 - Math.pow(1 - E, 3), Ee = (E, Y) => E === void 0 ? 0 : Ae(Math.min(1, Math.max(0, (Y - E) / Tt))), Ue = ({
22
- width: E,
23
- height: Y,
24
- margin: c,
25
- boundedWidth: a,
26
- boundedHeight: l,
27
- loading: Rt,
28
- pointData: u,
29
- animation: R,
30
- animationGroupSize: I,
31
- animationBuffer: K,
32
- xScale: U,
33
- yScale: $,
34
- zoom: f,
35
- selectMode: i,
36
- selectable: Pt,
37
- disableZoom: y,
38
- groupPointsAnchor: rt,
39
- hoveredPoint: g,
40
- hoveredPoints: nt,
41
- hoverGrowth: ot,
42
- hoverStroke: st,
43
- handleMouseMove: Vt,
44
- handleMouseLeave: ct,
45
- onDisplayedPointsChange: lt,
46
- onSelectionChange: dt,
47
- onPointClicked: at,
48
- leftAxisLabel: Dt,
49
- bottomAxisLabel: Ft,
50
- border: Yt,
51
- originLine: Xt,
52
- backgroundGradient: T,
53
- crosshair: J,
54
- divRef: jt
55
- }) => {
56
- const it = L(null), ft = L(null), ut = L(/* @__PURE__ */ new Map()), [N, Q] = te(!!R);
57
- F(() => {
58
- if (!R) return;
59
- if (u.length > 2500) {
60
- Q(!1);
61
- return;
62
- }
63
- const t = 450, e = (K ?? 0.03) * 1e3, r = Math.ceil(u.length / (I ?? 1)), n = t + r * e, o = window.setTimeout(() => Q(!1), n);
64
- return () => window.clearTimeout(o);
65
- }, [R, K, I, u.length]);
66
- const {
67
- lines: Ot,
68
- isDragging: S,
69
- x: P,
70
- y: V,
71
- dx: X,
72
- dy: j,
73
- dragStart: pt,
74
- dragMove: vt,
75
- dragEnd: _t,
76
- completeSelection: qt
77
- } = pe({
78
- pointData: u,
79
- margin: c,
80
- xScale: U,
81
- yScale: $,
82
- onSelectionChange: dt
83
- });
84
- F(() => {
85
- const t = it.current, e = (o) => {
86
- o.preventDefault();
87
- }, r = (o) => {
88
- o.preventDefault();
89
- }, n = (o) => {
90
- o.preventDefault();
91
- };
92
- return t && (t.addEventListener("wheel", e, {
93
- passive: !1
94
- }), t.addEventListener("touchstart", n, {
95
- passive: !1
96
- }), t.addEventListener("touchmove", r, {
97
- passive: !1
98
- })), () => {
99
- t && (t.removeEventListener("wheel", e), t.removeEventListener("touchstart", n), t.removeEventListener("touchmove", r));
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(), f = g ?? c.palette.primary.main, s = {
20
+ borderRadius: 0,
21
+ color: c.palette.text.primary,
22
+ padding: c.spacing(1)
23
+ };
24
+ let d, m;
25
+ t[0] !== l || t[1] !== o || t[2] !== n ? (d = () => {
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
+ }
100
36
  };
101
- }, []);
102
- const p = C(() => ne(U, f.transformMatrix.translateX, f.transformMatrix.scaleX), [U, f.transformMatrix]), v = C(() => oe($, f.transformMatrix.translateY, f.transformMatrix.scaleY), [$, f.transformMatrix]), G = C(() => g ? [g] : nt ?? [], [g, nt]), ht = C(() => {
103
- const t = rt;
104
- if (!t) return G;
105
- const e = (n) => t in n ? n[t] : n.metaData?.[t], r = new Set(G.map(e).filter((n) => n !== void 0));
106
- return r.size === 0 ? [] : u.filter((n) => {
107
- const o = e(n);
108
- return o !== void 0 && r.has(o);
109
- });
110
- }, [G, rt, u]), mt = L(/* @__PURE__ */ new Set()), d = C(() => {
111
- const t = new Set(ht.map(At)), e = mt.current;
112
- return t.size === e.size && [...t].every((r) => e.has(r)) ? e : (mt.current = t, t);
113
- }, [ht]), O = C(() => u.filter((t) => Et(p(t.x), v(t.y), a, l)), [u, p, v, a, l]), xt = C(() => ({
114
- growth: ot ?? gt.growth,
115
- stroke: st ?? gt.stroke
116
- }), [ot, st]), W = et((t, e, r, n) => {
117
- const o = r.getContext("2d");
118
- if (!o) return;
119
- if (se(o, a, l), T) {
120
- const [x, b, q] = T.colorScale ?? ["red", "white", "blue"], k = a, M = l, zt = t(0), Ht = e(0), bt = Math.max(1e-3, Math.min(0.999, (zt * k - Ht * M + M * M) / (k * k + M * M))), B = o.createLinearGradient(0, M, k, 0);
121
- B.addColorStop(0, x), B.addColorStop(bt, b), B.addColorStop(1, q), o.globalAlpha = T.opacity ?? 1, o.fillStyle = B, o.fillRect(0, 0, k, M), o.globalAlpha = 1;
122
- }
123
- const {
124
- nonHovered: h,
125
- hovered: m
126
- } = ce(u, d), _ = ut.current, wt = (x, b) => {
127
- const q = t(x.x), k = e(x.y);
128
- Et(q, k, a, l) && le(o, x, q, k, b, xt);
37
+ return window.addEventListener("keydown", r), () => {
38
+ window.removeEventListener("keydown", r);
129
39
  };
130
- h.forEach((x) => wt(x, 0)), m.forEach((x) => wt(x, Ee(_.get(At(x)), n)));
131
- }, [l, a, d, u, T, xt]);
132
- F(() => {
133
- const t = ft.current;
134
- if (!t || N) return;
135
- const e = performance.now(), r = ut.current;
136
- for (const m of r.keys())
137
- d.has(m) || r.delete(m);
138
- let n = -1 / 0;
139
- for (const m of d)
140
- r.has(m) || r.set(m, e), n = Math.max(n, r.get(m));
141
- const o = n + Tt;
142
- if (e >= o) {
143
- W(p, v, t, e);
144
- return;
145
- }
146
- let h = requestAnimationFrame(function m() {
147
- const _ = performance.now();
148
- W(p, v, t, _), _ < o && (h = requestAnimationFrame(m));
149
- });
150
- return () => cancelAnimationFrame(h);
151
- }, [W, p, v, N, d]);
152
- const Bt = et(() => {
153
- g && at?.(g);
154
- }, [g, at]), It = y ? Pt ? S ? "none" : "crosshair" : S ? "none" : "default" : g ? "default" : i === "select" ? S ? "none" : "crosshair" : f.isDragging ? "grabbing" : "grab", Z = (t) => {
155
- _t(t), qt(f);
156
- }, w = L(null), D = L(null), z = ve((t) => {
157
- f.dragMove(t);
158
- }), Kt = et(() => {
159
- w.current !== null && (cancelAnimationFrame(w.current), w.current = null);
160
- const t = D.current;
161
- D.current = null, t && z(t);
162
- }, [z]);
163
- F(() => () => {
164
- w.current !== null && cancelAnimationFrame(w.current);
165
- }, []);
166
- const yt = (t) => {
167
- D.current = t.nativeEvent, w.current === null && (w.current = requestAnimationFrame(() => {
168
- w.current = null;
169
- const e = D.current;
170
- D.current = null, e && z(e);
171
- }));
172
- }, H = () => {
173
- Kt(), f.dragEnd();
174
- }, Ut = i === "none" ? void 0 : i === "select" ? pt : y ? void 0 : f.dragStart, $t = i === "none" ? void 0 : i === "select" ? Z : y ? void 0 : H, Jt = i === "none" ? void 0 : i === "select" ? S ? vt : void 0 : y ? void 0 : yt, Nt = i === "none" ? void 0 : i === "select" ? Z : y ? void 0 : H, Qt = i === "none" ? void 0 : i === "select" ? pt : y ? void 0 : f.dragStart, Gt = i === "none" ? void 0 : i === "select" ? Z : y ? void 0 : H, Wt = i === "none" ? void 0 : i === "select" ? S ? vt : void 0 : y ? void 0 : yt, Zt = (t) => {
175
- if (Q(!1), !y) {
176
- const e = ke(t) || {
177
- x: 0,
178
- y: 0
179
- }, r = t.deltaY < 0 ? 1.1 : 0.9;
180
- f.scale({
181
- scaleX: r,
182
- scaleY: r,
183
- point: e
184
- });
40
+ }, m = [l, o, n], t[0] = l, t[1] = o, t[2] = n, t[3] = d, t[4] = m) : (d = t[3], m = t[4]), I(d, m);
41
+ const b = (r) => ({
42
+ ...s,
43
+ color: o === r ? g || "primary.main" : c.palette.text.primary,
44
+ backgroundColor: o === r ? `color-mix(in srgb, ${f} 15%, transparent)` : "transparent",
45
+ "&:hover": {
46
+ backgroundColor: o === r ? `color-mix(in srgb, ${f} 25%, transparent)` : c.palette.action.hover
185
47
  }
186
- }, St = L([]);
187
- return F(() => {
188
- ((e, r) => e.length !== r.length ? !0 : !e.every((n, o) => {
189
- const h = r[o];
190
- return n.x === h.x && n.y === h.y && n.r === h.r && n.shape === h.shape && n.color === h.color && n.opacity === h.opacity;
191
- }))(St.current, O) && (lt?.(O), St.current = O);
192
- }, [O, lt]), /* @__PURE__ */ s(re, { justifyContent: "center", alignItems: "center", direction: "row", sx: {
193
- position: "relative"
194
- }, children: /* @__PURE__ */ s(kt, { sx: {
195
- width: E,
196
- height: Y
197
- }, children: Rt ? /* @__PURE__ */ s(kt, { display: "flex", width: "100%", height: "100%", sx: {
198
- justifyContent: "center",
199
- alignItems: "center"
200
- }, children: /* @__PURE__ */ s(ee, {}) }) : /* @__PURE__ */ A("div", { style: {
201
- position: "relative"
202
- }, ref: jt, children: [
203
- /* @__PURE__ */ s("canvas", { ref: ft, width: a * 2, height: l * 2, style: {
204
- userSelect: "none",
205
- position: "absolute",
206
- top: c.top,
207
- left: c.left,
208
- width: a,
209
- height: l,
210
- backgroundColor: "transparent"
211
- } }),
212
- /* @__PURE__ */ A("svg", { width: E, height: Y, overflow: "visible", style: {
213
- position: "absolute",
214
- userSelect: "none"
215
- }, onMouseMove: (t) => {
216
- S ? ct() : Vt(t, f);
217
- }, onMouseLeave: ct, children: [
218
- /* @__PURE__ */ A(Lt, { top: c.top, left: c.left, children: [
219
- N && R && /* @__PURE__ */ s(ae, { pointData: u, animation: R, animationGroupSize: I, animationBuffer: K, xScaleTransformed: p, yScaleTransformed: v, boundedWidth: a, boundedHeight: l }),
220
- i === "select" && /* @__PURE__ */ A(tt, { children: [
221
- Ot.map((t, e) => /* @__PURE__ */ s(he, { fill: "transparent", stroke: "black", strokeWidth: 3, data: t, curve: me, x: (r) => r.x, y: (r) => r.y }, `line-${e}`)),
222
- S && /* @__PURE__ */ A("g", { children: [
223
- /* @__PURE__ */ s("line", { x1: P - c.left + X - 6, y1: V - c.top + j, x2: P - c.left + X + 6, y2: V - c.top + j, stroke: "black", strokeWidth: 1 }),
224
- /* @__PURE__ */ s("line", { x1: P - c.left + X, y1: V - c.top + j - 6, x2: P - c.left + X, y2: V - c.top + j + 6, stroke: "black", strokeWidth: 1 }),
225
- /* @__PURE__ */ s("circle", { cx: P - c.left, cy: V - c.top, r: 4, fill: "transparent", stroke: "black", pointerEvents: "none" })
226
- ] })
227
- ] }),
228
- Xt && (() => {
229
- const t = p(0), e = v(0);
230
- return /* @__PURE__ */ A(tt, { children: [
231
- e >= 0 && e <= l && /* @__PURE__ */ s("line", { x1: 0, x2: a, y1: e, y2: e, stroke: "#000", strokeWidth: 1, strokeDasharray: "4,4", pointerEvents: "none" }),
232
- t >= 0 && t <= a && /* @__PURE__ */ s("line", { x1: t, x2: t, y1: 0, y2: l, stroke: "#000", strokeWidth: 1, strokeDasharray: "4,4", pointerEvents: "none" })
233
- ] });
234
- })(),
235
- /* @__PURE__ */ s("rect", { ref: it, fill: "transparent", width: a, height: l, style: {
236
- cursor: It
237
- }, onMouseDown: Ut, onMouseUp: $t, onMouseMove: Jt, onMouseLeave: Nt, onTouchStart: Qt, onTouchEnd: Gt, onTouchMove: Wt, onWheel: Zt, onClick: Bt }),
238
- J && !S && /* @__PURE__ */ s(ue, { position: {
239
- x: p(J.x),
240
- y: v(J.y)
241
- }, boundedWidth: a, boundedHeight: l })
242
- ] }),
243
- /* @__PURE__ */ A(Lt, { top: c.top, left: c.left, children: [
244
- /* @__PURE__ */ s(xe, { scale: v, tickLabelProps: () => ({
245
- fill: "#1c1917",
246
- fontSize: 10,
247
- textAnchor: "end",
248
- verticalAnchor: "middle",
249
- x: -10
250
- }), tickValues: Mt(v, 5) }),
251
- /* @__PURE__ */ s(ye, { top: l, scale: p, tickLabelProps: () => ({
252
- fill: "#1c1917",
253
- fontSize: 11,
254
- textAnchor: "middle"
255
- }), tickValues: Mt(p, 5) }),
256
- Yt && /* @__PURE__ */ A(tt, { children: [
257
- /* @__PURE__ */ s(Se, { top: 0, scale: p, tickValues: [] }),
258
- /* @__PURE__ */ s(we, { scale: v, tickValues: [], left: a })
259
- ] }),
260
- /* @__PURE__ */ s(Ct, { textAnchor: "middle", verticalAnchor: "end", angle: -90, fontSize: 15, y: l / 2, x: 0, dx: -50, children: Dt }),
261
- /* @__PURE__ */ s(Ct, { textAnchor: "middle", verticalAnchor: "start", fontSize: 15, y: l, x: a / 2, dy: 50, children: Ft })
262
- ] }),
263
- /* @__PURE__ */ s(ie, { pointData: u, xScaleTransformed: p, yScaleTransformed: v, boundedWidth: a, boundedHeight: l, margin: c }),
264
- T?.legend && /* @__PURE__ */ s(fe, { backgroundGradient: T, boundedHeight: l, barLeft: c.left + a + 25, marginTop: c.top })
265
- ] })
266
- ] }) }) });
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: b("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: b("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: s, 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: s, children: /* @__PURE__ */ e(P, { fontSize: "small" }) }) }),
60
+ /* @__PURE__ */ e(i, { title: "Reset Zoom and Pan", placement: "right", children: /* @__PURE__ */ e("span", { style: {
61
+ display: "flex"
62
+ }, children: /* @__PURE__ */ e(a, { "aria-label": "resetZoom", onClick: y, disabled: !k, sx: s, children: /* @__PURE__ */ e(T, { fontSize: "small" }) }) }) }),
63
+ z && /* @__PURE__ */ e(i, { title: "Download Plot as SVG", placement: "right", children: /* @__PURE__ */ e(a, { "aria-label": "download", onClick: () => C(), sx: s, children: /* @__PURE__ */ e($, { fontSize: "small" }) }) })
64
+ ] });
65
+ let p;
66
+ return t[5] !== h ? (p = /* @__PURE__ */ e(D, { children: h }), t[5] = h, t[6] = p) : p = t[6], p;
267
67
  };
268
68
  export {
269
- Ue as default
69
+ V as default
270
70
  };
271
71
  //# sourceMappingURL=visualization.es64.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es64.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 { DEFAULT_HOVER_STYLE, drawCanvasPoint, getTicks, isPointVisible, partitionPointsByHover, pointKey, prepareCanvas, rescaleX, rescaleY } from \"./helpers\";\nimport { useStableCallback } from \"../../hooks\";\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 width: number;\n height: 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 hoveredPoints?: Point<T>[];\n hoverGrowth?: number;\n hoverStroke?: string;\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\n/**\n * Hover growth eases in over this long, and is dropped instantly on the way out.\n * Easing the exit too would drag a tail of still-shrinking points behind the cursor\n * whenever it sweeps across a dense plot.\n */\nconst HOVER_GROW_MS = 120;\n\nconst easeOutCubic = (t: number) => 1 - Math.pow(1 - t, 3);\n\n/** How far into its growth a point is at `now`, having started at `start`: 0 at rest, 1 fully grown. */\nconst hoverAmountAt = (start: number | undefined, now: number) =>\n start === undefined ? 0 : easeOutCubic(Math.min(1, Math.max(0, (now - start) / HOVER_GROW_MS)));\n\nconst ScatterPlotViewport = <T extends object>({\n width,\n height,\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 hoveredPoints,\n hoverGrowth,\n hoverStroke,\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 // When each hovered point began to grow, by pointKey. Timed per point so that when the hovered\n // set shifts - a window swept along a colorbar - points still in it keep their growth and only\n // new ones start from nothing. Painted straight onto the canvas rather than through state: a\n // redraw is ~0.3ms, a re-render per frame is not.\n const hoverStartsRef = useRef<Map<string, number>>(new Map());\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 // What is hovered: the point under the cursor if there is one, otherwise whatever the\n // consumer has asked to highlight. The cursor takes precedence so the plot's own hover is\n // never overridden mid-gesture.\n const highlightSeeds: Point<T>[] = useMemo(\n () => (hoveredPoint ? [hoveredPoint] : hoveredPoints ?? []),\n [hoveredPoint, hoveredPoints]\n );\n\n const groupedPoints: Point<T>[] = useMemo(() => {\n const anchor = groupPointsAnchor;\n if (!anchor) return highlightSeeds;\n\n const anchorValue = (point: Point<T>): unknown =>\n anchor in point\n ? point[anchor as keyof Point<T>]\n : point.metaData?.[anchor as keyof T];\n\n // Collect the seeds' anchor values first, so this stays O(points + seeds). Matching each\n // point against each seed would be 2.5m comparisons when a whole 750-point group is\n // handed in against 3.4k points.\n const seedValues = new Set(\n highlightSeeds.map(anchorValue).filter((value) => value !== undefined)\n );\n if (seedValues.size === 0) return [];\n\n return pointData.filter((point) => {\n const value = anchorValue(point);\n return value !== undefined && seedValues.has(value);\n });\n }, [highlightSeeds, groupPointsAnchor, pointData]);\n\n const previousHoveredKeysRef = useRef<Set<string>>(new Set());\n\n const hoveredPointKeys = useMemo(() => {\n const next = new Set(groupedPoints.map(pointKey));\n const previous = previousHoveredKeysRef.current;\n\n // An unchanged set keeps its identity, so moving within one hovered group doesn't re-run\n // the redraw effect for every point the cursor crosses.\n if (next.size === previous.size && [...next].every((key) => previous.has(key))) {\n return previous;\n }\n\n previousHoveredKeysRef.current = next;\n return next;\n }, [groupedPoints]);\n\n const currentDisplayedPoints = useMemo(\n () => pointData.filter((point) =>\n isPointVisible(xScaleTransformed(point.x), yScaleTransformed(point.y), boundedWidth, boundedHeight)\n ),\n [pointData, xScaleTransformed, yScaleTransformed, boundedWidth, boundedHeight]\n );\n\n // Held together as one object so the draw below depends on a single stable value rather than\n // on two props that would each have to be threaded into its dependencies.\n const hoverStyle = useMemo(\n () => ({\n growth: hoverGrowth ?? DEFAULT_HOVER_STYLE.growth,\n stroke: hoverStroke ?? DEFAULT_HOVER_STYLE.stroke,\n }),\n [hoverGrowth, hoverStroke]\n );\n\n const drawPoints = useCallback((\n xST: ScaleLinear<number, number, never>,\n yST: ScaleLinear<number, number, never>,\n canvas: HTMLCanvasElement,\n /** The frame's time, which every hovered point's growth is measured to. */\n now: number\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 const starts = hoverStartsRef.current;\n\n const drawRenderedPoint = (point: Point<T>, hoverAmount: number) => {\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, hoverAmount, hoverStyle);\n };\n\n nonHovered.forEach((point) => drawRenderedPoint(point, 0));\n hovered.forEach((point) => drawRenderedPoint(point, hoverAmountAt(starts.get(pointKey(point)), now)));\n }, [boundedHeight, boundedWidth, hoveredPointKeys, pointData, backgroundGradient, hoverStyle]);\n\n useEffect(() => {\n const canvas = canvasRef.current;\n if (!canvas || showPointAnimation) return;\n\n // Sync start times with the hovered set: kept points keep theirs, new ones start now, and\n // dropped ones are forgotten so leaving is instant. Idempotent, so a re-run for pan, zoom\n // or new pointData carries on from the sizes already reached.\n const now = performance.now();\n const starts = hoverStartsRef.current;\n for (const key of starts.keys()) {\n if (!hoveredPointKeys.has(key)) starts.delete(key);\n }\n let latestStart = -Infinity;\n for (const key of hoveredPointKeys) {\n if (!starts.has(key)) starts.set(key, now);\n latestStart = Math.max(latestStart, starts.get(key)!);\n }\n\n // Nothing still growing: repaint once, so panning over a hovered point doesn't queue frames.\n const grownAt = latestStart + HOVER_GROW_MS;\n if (now >= grownAt) {\n drawPoints(xScaleTransformed, yScaleTransformed, canvas, now);\n return;\n }\n\n // Until the newest point has grown; the last frame is drawn at or past grownAt, so every\n // point ends at full size.\n let frame = requestAnimationFrame(function step() {\n const time = performance.now();\n drawPoints(xScaleTransformed, yScaleTransformed, canvas, time);\n if (time < grownAt) frame = requestAnimationFrame(step);\n });\n\n return () => cancelAnimationFrame(frame);\n }, [drawPoints, xScaleTransformed, yScaleTransformed, showPointAnimation, hoveredPointKeys]);\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 /**\n * Panning is coalesced to one zoom update per frame. React flushes mousemove updates\n * synchronously, and a shared zoom re-renders every synced plot, so handling each move\n * outright never lets the browser paint and eventually exceeds React's update depth.\n *\n * The buffer holds nativeEvent, since React clears the synthetic event's currentTarget after\n * dispatch, and useStableCallback makes the frame use the current zoom.\n */\n const dragFrameRef = useRef<number | null>(null);\n const pendingDragRef = useRef<MouseEvent | TouchEvent | null>(null);\n const dragMoveLatest = useStableCallback((event: MouseEvent | TouchEvent) => {\n zoom.dragMove(event as unknown as React.MouseEvent | React.TouchEvent);\n });\n\n const flushPendingDrag = useCallback(() => {\n if (dragFrameRef.current !== null) {\n cancelAnimationFrame(dragFrameRef.current);\n dragFrameRef.current = null;\n }\n const pending = pendingDragRef.current;\n pendingDragRef.current = null;\n if (pending) dragMoveLatest(pending);\n }, [dragMoveLatest]);\n\n useEffect(() => () => {\n if (dragFrameRef.current !== null) cancelAnimationFrame(dragFrameRef.current);\n }, []);\n\n const onZoomDragMove = (event: React.MouseEvent<SVGRectElement> | React.TouchEvent<SVGRectElement>) => {\n pendingDragRef.current = event.nativeEvent;\n if (dragFrameRef.current !== null) return;\n dragFrameRef.current = requestAnimationFrame(() => {\n dragFrameRef.current = null;\n const pending = pendingDragRef.current;\n pendingDragRef.current = null;\n if (pending) dragMoveLatest(pending);\n });\n };\n\n // The queued frame is applied before the gesture closes, so the plot lands on the position\n // the pointer was actually released at rather than a frame behind it.\n const onZoomDragEnd = () => {\n flushPendingDrag();\n zoom.dragEnd();\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 : onZoomDragEnd;\n const onSurfaceMouseMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : onZoomDragMove;\n const onSurfaceMouseLeave = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : onZoomDragEnd;\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 : onZoomDragEnd;\n const onSurfaceTouchMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : onZoomDragMove;\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, height }}>\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={width}\n height={height}\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":["HOVER_GROW_MS","easeOutCubic","t","Math","pow","hoverAmountAt","start","now","undefined","min","max","ScatterPlotViewport","width","height","margin","boundedWidth","boundedHeight","loading","pointData","animation","animationGroupSize","animationBuffer","xScale","yScale","zoom","selectMode","selectable","disableZoom","groupPointsAnchor","hoveredPoint","hoveredPoints","hoverGrowth","hoverStroke","handleMouseMove","handleMouseLeave","onDisplayedPointsChange","onSelectionChange","onPointClicked","leftAxisLabel","bottomAxisLabel","border","originLine","backgroundGradient","crosshair","divRef","graphRef","useRef","canvasRef","hoverStartsRef","Map","showPointAnimation","setShowPointAnimation","useState","Boolean","useEffect","length","duration","buffer","groups","ceil","total","window","setTimeout","clearTimeout","lines","isDragging","x","y","dx","dy","dragStart","dragMove","dragEnd","completeSelection","useDragSelection","graphElement","current","handleWheel","event","preventDefault","handleTouchMove","handleTouchStart","addEventListener","passive","removeEventListener","xScaleTransformed","useMemo","rescaleX","transformMatrix","translateX","scaleX","yScaleTransformed","rescaleY","translateY","scaleY","highlightSeeds","groupedPoints","anchor","anchorValue","point","metaData","seedValues","Set","map","filter","value","size","has","previousHoveredKeysRef","hoveredPointKeys","next","pointKey","previous","every","key","currentDisplayedPoints","isPointVisible","hoverStyle","growth","DEFAULT_HOVER_STYLE","stroke","drawPoints","useCallback","xST","yST","canvas","context","getContext","prepareCanvas","colorLow","colorMid","colorHigh","colorScale","W","H","x0","y0","fraction","gradient","createLinearGradient","addColorStop","globalAlpha","opacity","fillStyle","fillRect","nonHovered","hovered","partitionPointsByHover","starts","drawRenderedPoint","hoverAmount","transformedX","transformedY","drawCanvasPoint","forEach","get","performance","keys","delete","latestStart","set","grownAt","frame","requestAnimationFrame","step","time","cancelAnimationFrame","handlePointClick","surfaceCursor","handleSelectionEnd","dragFrameRef","pendingDragRef","dragMoveLatest","useStableCallback","flushPendingDrag","pending","onZoomDragMove","nativeEvent","onZoomDragEnd","onSurfaceMouseDown","onSurfaceMouseUp","onSurfaceMouseMove","onSurfaceMouseLeave","onSurfaceTouchStart","onSurfaceTouchEnd","onSurfaceTouchMove","onSurfaceWheel","localPoint","zoomDirection","deltaY","scale","previousDisplayedPoints","haveDisplayedPointsChanged","prevPoints","nextPoints","index","nextPoint","r","shape","color","jsx","Stack","position","Box","justifyContent","alignItems","CircularProgress","jsxs","userSelect","top","left","backgroundColor","Group","AnimatedPoints","Fragment","line","LinePath","curveBasis","datum","cursor","Crosshair","AxisLeft","fill","fontSize","textAnchor","verticalAnchor","getTicks","AxisBottom","AxisTop","AxisRight","Text","PointLabels","legend","GradientLegend"],"mappings":"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"}
1
+ {"version":3,"file":"visualization.es64.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 {/* A disabled button fires no events, so the tooltip listens on a wrapper. Flex, so\n the wrapper adds no line height around the button. */}\n <span style={{ display: \"flex\" }}>\n <IconButton aria-label=\"resetZoom\" onClick={zoomReset} disabled={!resetable} sx={buttonSx}>\n <SettingsBackupRestore fontSize=\"small\" />\n </IconButton>\n </span>\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","display","SettingsBackupRestore","Download","t4"],"mappings":";;;;;;AAMA,MAAMA,IAAiBC,CAAAA,MAAA;AAAA,QAAAC,IAAAC,EAAA,CAAA,GAAC;AAAA,IAAAC,YAAAA;AAAAA,IAAAC,WAAAA;AAAAA,IAAAC,2BAAAA;AAAAA,IAAAC,YAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,WAAAA;AAAAA,IAAAC,WAAAA;AAAAA,IAAAC,gBAAAA;AAAAA,IAAAC,cAAAA;AAAAA,EAAAA,IAAAZ,GAYpBa,IAAcC,EAAAA,GACdC,IAAcL,KAAaG,EAAKG,QAAQC,QAAQC,MAGhDC,IAAiB;AAAA,IAAAC,cACC;AAAA,IAACL,OACRF,EAAKG,QAAQK,KAAKJ;AAAAA,IAAQK,SACxBT,EAAKU,QAAS,CAAC;AAAA,EAAA;AAC1B,MAAAC,GAAAC;AAAA,EAAAxB,EAAA,CAAA,MAAAI,KAAAJ,SAAAK,KAAAL,EAAA,CAAA,MAAAE,KAEQqB,IAAAA,MAAA;AAEN,UAAAE,IAAsBC,CAAAA,MAAA;AAClB,UAAIA,EAACC,QAAS,WAAVzB,KAAmCG,MAAe,UAAQ;AAC1DD,QAAAA,EAA0B,KAAK;AAG/B,cAAAwB,IAAoBC,CAAAA,MAAA;AAChB,UAAIH,EAACC,QAAS,WAAVzB,KACAE,EAA0B,QAAQ;AAAA,QACrC;AAGL0B,sBAAMC,iBAAkB,SAASH,CAAW,GACrC,MAAA;AACHE,iBAAME,oBAAqB,SAASJ,CAAW;AAAA,QAAC;AAAA,MACnD;AAAA,IACJ;AAILE,kBAAMC,iBAAkB,WAAWN,CAAa,GAGzC,MAAA;AACHK,aAAME,oBAAqB,WAAWP,CAAa;AAAA,IAAC;AAAA,EACvD,GACFD,KAACpB,GAA2BC,GAAYH,CAAU,GAACF,OAAAI,GAAAJ,OAAAK,GAAAL,OAAAE,GAAAF,OAAAuB,GAAAvB,OAAAwB,MAAAD,IAAAvB,EAAA,CAAA,GAAAwB,IAAAxB,EAAA,CAAA,IA3BtDiC,EAAUV,GA2BPC,CAAmD;AAEtD,QAAAU,IAA0BC,CAAAA,OAA6B;AAAA,IAAA,GAChDjB;AAAAA,IAAQJ,OACJT,MAAe8B,IAAO1B,KAAA,iBAA8BG,EAAKG,QAAQK,KAAKJ;AAAAA,IAAQoB,iBACpE/B,MAAe8B,IAAf,sBACWrB,CAAK,uBADhB;AAAA,IAEE,WACR;AAAA,MAAAsB,iBACU/B,MAAe8B,IAAf,sBACWrB,CAAK,uBAC3BF,EAAKG,QAAQsB,OAAOC;AAAAA,IAAAA;AAAAA,EAC9B,IAKKC,IAAAlC,MAAe,UACZ,gBAAAmC,EAACC,GAAA,EACa,WAAA,UACC,YAAA,cACK,gBAAA,UACZ,IAAA;AAAA,IAAAC,YACY;AAAA,IAA0BC,gBACtB;AAAA,IAAWC,sBACL;AAAA,IAAWC,QACzB;AAAA,IAAoCC,WACjC;AAAA,IAA8BC,UAC/B;AAAA,EAAA,GAIV7C,UAAAA;AAAAA,IAAAA,KACI,gBAAA8C,EAACC,GAAA,EAAc,OAAA,uCAAiDC,WApE/D,SAqEG,UAAA,gBAAAF,EAACG,GAAA,EACc,cAAA,OACF,SAAA,MAAM/C,EAA0B,KAAK,GAC1C,IAAA8B,EAAkB,KAAK,GAE3B,4BAACkB,GAAA,EAAkB,UAAA,QAAA,CAAO,EAAA,CAC9B,EAAA,CACJ;AAAA,IAIJlD,KACI,gBAAA8C,EAACC,GAAA,EAAc,OAAA,kBAA4BC,WAjF1C,SAkFG,UAAA,gBAAAF,EAACG,GAAA,EACc,cAAA,QACF,SAAA,MAAM/C,EAA0B,QAAQ,GAC7C,IAAA8B,EAAkB,QAAQ,GAE9B,UAAA,gBAAAc,EAACK,GAAA,EAAc,UAAA,QAAA,CAAO,EAAA,CAC1B,EAAA,CACJ;AAAA,sBAGPJ,GAAA,EAAc,OAAA,WAAqBC,WA5F3B,SA6FL,4BAACC,GAAA,EAAsB,cAAA,WAAmB7C,SAAAA,GAAYY,IAAAA,GAClD,UAAA,gBAAA8B,EAACM,KAAa,UAAA,YAClB,EAAA,CACJ;AAAA,sBACCL,GAAA,EAAc,OAAA,YAAsBC,WAjG5B,SAkGL,4BAACC,GAAA,EAAsB,cAAA,YAAoB5C,SAAAA,GAAaW,IAAAA,GACpD,UAAA,gBAAA8B,EAACO,KAAgB,UAAA,YACrB,EAAA,CACJ;AAAA,IACA,gBAAAP,EAACC,KAAc,OAAA,sBAAgCC,WAtGtC,SAyGL,UAAA,gBAAAF,EAAA,UAAa,OAAA;AAAA,MAAAQ,SAAW;AAAA,IAAA,GACpB,UAAA,gBAAAR,EAACG,GAAA,EAAsB,cAAA,aAAqB3C,SAAAA,GAAqB,WAACL,GAAee,IAAAA,GAC7E,UAAA,gBAAA8B,EAACS,GAAA,EAA+B,UAAA,SAAO,EAAA,CAC3C,GACJ,GACJ;AAAA,IACC/C,uBACIuC,GAAA,EAAc,OAAA,wBAAkCC,WAhH5C,SAiHD,UAAA,gBAAAF,EAACG,GAAA,EAAsB,cAAA,YAAoB,SAAA,MAAMxC,EAAAA,GAAoBO,OACjE,4BAACwC,GAAA,EAAkB,UAAA,QAAA,IACvB,EAAA,CACJ;AAAA,EAAA,GAER;AACH,MAAAC;AAAA,SAAA3D,SAAAuC,KApELoB,2BACKpB,UAAAA,EAAAA,CAmEA,GACFvC,OAAAuC,GAAAvC,OAAA2D,KAAAA,IAAA3D,EAAA,CAAA,GArEH2D;AAqEG;"}
@@ -1,25 +1,81 @@
1
- import g from "./visualization.es624.js";
2
- var x = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g, c = new RegExp(x.source, "g");
3
- function h(i) {
4
- return function() {
5
- return i;
6
- };
7
- }
8
- function m(i) {
9
- return function(n) {
10
- return i(n) + "";
11
- };
12
- }
13
- function v(i, n) {
14
- var u = x.lastIndex = c.lastIndex = 0, s, l, t, r = -1, e = [], f = [];
15
- for (i = i + "", n = n + ""; (s = x.exec(i)) && (l = c.exec(n)); )
16
- (t = l.index) > u && (t = n.slice(u, t), e[r] ? e[r] += t : e[++r] = t), (s = s[0]) === (l = l[0]) ? e[r] ? e[r] += l : e[++r] = l : (e[++r] = null, f.push({ i: r, x: g(s, l) })), u = c.lastIndex;
17
- return u < n.length && (t = n.slice(u), e[r] ? e[r] += t : e[++r] = t), e.length < 2 ? f[0] ? m(f[0].x) : h(n) : (n = f.length, function(a) {
18
- for (var o = 0, d; o < n; ++o) e[(d = f[o]).i] = d.x(a);
19
- return e.join("");
20
- });
1
+ import w, { extend as y } from "./visualization.es644.js";
2
+ import { Rgb as N, rgbConvert as q, Color as m } from "./visualization.es638.js";
3
+ import { radians as H, degrees as K } from "./visualization.es645.js";
4
+ const l = 18, d = 0.96422, v = 1, M = 0.82521, o = 4 / 29, h = 6 / 29, z = 3 * h * h, L = h * h * h;
5
+ function C(t) {
6
+ if (t instanceof e) return new e(t.l, t.a, t.b, t.opacity);
7
+ if (t instanceof a) return x(t);
8
+ t instanceof N || (t = q(t));
9
+ var n = g(t.r), i = g(t.g), r = g(t.b), s = b((0.2225045 * n + 0.7168786 * i + 0.0606169 * r) / v), c, u;
10
+ return n === i && i === r ? c = u = s : (c = b((0.4360747 * n + 0.3850649 * i + 0.1430804 * r) / d), u = b((0.0139322 * n + 0.0971045 * i + 0.7141733 * r) / M)), new e(116 * s - 16, 500 * (c - s), 200 * (s - u), t.opacity);
21
11
  }
12
+ function R(t, n, i, r) {
13
+ return arguments.length === 1 ? C(t) : new e(t, n, i, r ?? 1);
14
+ }
15
+ function e(t, n, i, r) {
16
+ this.l = +t, this.a = +n, this.b = +i, this.opacity = +r;
17
+ }
18
+ w(e, R, y(m, {
19
+ brighter(t) {
20
+ return new e(this.l + l * (t ?? 1), this.a, this.b, this.opacity);
21
+ },
22
+ darker(t) {
23
+ return new e(this.l - l * (t ?? 1), this.a, this.b, this.opacity);
24
+ },
25
+ rgb() {
26
+ var t = (this.l + 16) / 116, n = isNaN(this.a) ? t : t + this.a / 500, i = isNaN(this.b) ? t : t - this.b / 200;
27
+ return n = d * f(n), t = v * f(t), i = M * f(i), new N(
28
+ p(3.1338561 * n - 1.6168667 * t - 0.4906146 * i),
29
+ p(-0.9787684 * n + 1.9161415 * t + 0.033454 * i),
30
+ p(0.0719453 * n - 0.2289914 * t + 1.4052427 * i),
31
+ this.opacity
32
+ );
33
+ }
34
+ }));
35
+ function b(t) {
36
+ return t > L ? Math.pow(t, 1 / 3) : t / z + o;
37
+ }
38
+ function f(t) {
39
+ return t > h ? t * t * t : z * (t - o);
40
+ }
41
+ function p(t) {
42
+ return 255 * (t <= 31308e-7 ? 12.92 * t : 1.055 * Math.pow(t, 1 / 2.4) - 0.055);
43
+ }
44
+ function g(t) {
45
+ return (t /= 255) <= 0.04045 ? t / 12.92 : Math.pow((t + 0.055) / 1.055, 2.4);
46
+ }
47
+ function X(t) {
48
+ if (t instanceof a) return new a(t.h, t.c, t.l, t.opacity);
49
+ if (t instanceof e || (t = C(t)), t.a === 0 && t.b === 0) return new a(NaN, 0 < t.l && t.l < 100 ? 0 : NaN, t.l, t.opacity);
50
+ var n = Math.atan2(t.b, t.a) * K;
51
+ return new a(n < 0 ? n + 360 : n, Math.sqrt(t.a * t.a + t.b * t.b), t.l, t.opacity);
52
+ }
53
+ function Y(t, n, i, r) {
54
+ return arguments.length === 1 ? X(t) : new a(t, n, i, r ?? 1);
55
+ }
56
+ function a(t, n, i, r) {
57
+ this.h = +t, this.c = +n, this.l = +i, this.opacity = +r;
58
+ }
59
+ function x(t) {
60
+ if (isNaN(t.h)) return new e(t.l, 0, 0, t.opacity);
61
+ var n = t.h * H;
62
+ return new e(t.l, Math.cos(n) * t.c, Math.sin(n) * t.c, t.opacity);
63
+ }
64
+ w(a, Y, y(m, {
65
+ brighter(t) {
66
+ return new a(this.h, this.c, this.l + l * (t ?? 1), this.opacity);
67
+ },
68
+ darker(t) {
69
+ return new a(this.h, this.c, this.l - l * (t ?? 1), this.opacity);
70
+ },
71
+ rgb() {
72
+ return x(this).rgb();
73
+ }
74
+ }));
22
75
  export {
23
- v as default
76
+ a as Hcl,
77
+ e as Lab,
78
+ R as default,
79
+ Y as hcl
24
80
  };
25
81
  //# sourceMappingURL=visualization.es640.js.map