@weng-lab/visualization 2.5.0 → 2.5.1-beta.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 (1125) hide show
  1. package/dist/src/components/ScatterPlot/ScatterPlotViewport.d.ts.map +1 -1
  2. package/dist/visualization.es10.js +11 -11
  3. package/dist/visualization.es100.js +69 -35
  4. package/dist/visualization.es100.js.map +1 -1
  5. package/dist/visualization.es101.js +15 -58
  6. package/dist/visualization.es101.js.map +1 -1
  7. package/dist/visualization.es102.js +15 -32
  8. package/dist/visualization.es102.js.map +1 -1
  9. package/dist/visualization.es103.js +222 -18
  10. package/dist/visualization.es103.js.map +1 -1
  11. package/dist/visualization.es104.js +2 -14
  12. package/dist/visualization.es104.js.map +1 -1
  13. package/dist/visualization.es105.js +557 -26
  14. package/dist/visualization.es105.js.map +1 -1
  15. package/dist/visualization.es106.js +213 -12
  16. package/dist/visualization.es106.js.map +1 -1
  17. package/dist/visualization.es107.js +2 -74
  18. package/dist/visualization.es107.js.map +1 -1
  19. package/dist/visualization.es108.js +4797 -30
  20. package/dist/visualization.es108.js.map +1 -1
  21. package/dist/visualization.es109.js +25 -13
  22. package/dist/visualization.es109.js.map +1 -1
  23. package/dist/visualization.es11.js +10 -10
  24. package/dist/visualization.es110.js +43 -220
  25. package/dist/visualization.es110.js.map +1 -1
  26. package/dist/visualization.es111.js +144 -2
  27. package/dist/visualization.es111.js.map +1 -1
  28. package/dist/visualization.es112.js +146 -556
  29. package/dist/visualization.es112.js.map +1 -1
  30. package/dist/visualization.es113.js +32 -214
  31. package/dist/visualization.es113.js.map +1 -1
  32. package/dist/visualization.es114.js +45 -2
  33. package/dist/visualization.es114.js.map +1 -1
  34. package/dist/visualization.es115.js +75 -4799
  35. package/dist/visualization.es115.js.map +1 -1
  36. package/dist/visualization.es116.js +25 -25
  37. package/dist/visualization.es116.js.map +1 -1
  38. package/dist/visualization.es117.js +83 -43
  39. package/dist/visualization.es117.js.map +1 -1
  40. package/dist/visualization.es118.js +35 -143
  41. package/dist/visualization.es118.js.map +1 -1
  42. package/dist/visualization.es119.js +43 -145
  43. package/dist/visualization.es119.js.map +1 -1
  44. package/dist/visualization.es120.js +22 -45
  45. package/dist/visualization.es120.js.map +1 -1
  46. package/dist/visualization.es121.js +120 -18
  47. package/dist/visualization.es121.js.map +1 -1
  48. package/dist/visualization.es122.js +80 -124
  49. package/dist/visualization.es122.js.map +1 -1
  50. package/dist/visualization.es123.js +152 -76
  51. package/dist/visualization.es123.js.map +1 -1
  52. package/dist/visualization.es124.js +82 -155
  53. package/dist/visualization.es124.js.map +1 -1
  54. package/dist/visualization.es125.js +36 -81
  55. package/dist/visualization.es125.js.map +1 -1
  56. package/dist/visualization.es126.js +60 -38
  57. package/dist/visualization.es126.js.map +1 -1
  58. package/dist/visualization.es127.js +44 -57
  59. package/dist/visualization.es127.js.map +1 -1
  60. package/dist/visualization.es128.js +55 -44
  61. package/dist/visualization.es128.js.map +1 -1
  62. package/dist/visualization.es129.js +32 -15
  63. package/dist/visualization.es129.js.map +1 -1
  64. package/dist/visualization.es13.js +2 -2
  65. package/dist/visualization.es130.js +18 -15
  66. package/dist/visualization.es130.js.map +1 -1
  67. package/dist/visualization.es131.js +14 -26
  68. package/dist/visualization.es131.js.map +1 -1
  69. package/dist/visualization.es132.js +26 -70
  70. package/dist/visualization.es132.js.map +1 -1
  71. package/dist/visualization.es135.js +70 -59
  72. package/dist/visualization.es135.js.map +1 -1
  73. package/dist/visualization.es136.js +15 -37
  74. package/dist/visualization.es136.js.map +1 -1
  75. package/dist/visualization.es137.js +11 -36
  76. package/dist/visualization.es137.js.map +1 -1
  77. package/dist/visualization.es138.js +5 -84
  78. package/dist/visualization.es138.js.map +1 -1
  79. package/dist/visualization.es139.js +5 -29
  80. package/dist/visualization.es139.js.map +1 -1
  81. package/dist/visualization.es14.js +7 -7
  82. package/dist/visualization.es140.js +60 -7
  83. package/dist/visualization.es140.js.map +1 -1
  84. package/dist/visualization.es141.js +38 -4
  85. package/dist/visualization.es141.js.map +1 -1
  86. package/dist/visualization.es142.js +36 -3
  87. package/dist/visualization.es142.js.map +1 -1
  88. package/dist/visualization.es143.js +82 -83
  89. package/dist/visualization.es143.js.map +1 -1
  90. package/dist/visualization.es144.js +29 -5
  91. package/dist/visualization.es144.js.map +1 -1
  92. package/dist/visualization.es145.js +7 -89
  93. package/dist/visualization.es145.js.map +1 -1
  94. package/dist/visualization.es146.js +4 -12
  95. package/dist/visualization.es146.js.map +1 -1
  96. package/dist/visualization.es147.js +2 -4
  97. package/dist/visualization.es147.js.map +1 -1
  98. package/dist/visualization.es148.js +82 -12
  99. package/dist/visualization.es148.js.map +1 -1
  100. package/dist/visualization.es149.js +89 -6
  101. package/dist/visualization.es149.js.map +1 -1
  102. package/dist/visualization.es150.js +12 -13
  103. package/dist/visualization.es150.js.map +1 -1
  104. package/dist/visualization.es151.js +5 -63
  105. package/dist/visualization.es151.js.map +1 -1
  106. package/dist/visualization.es152.js +15 -7
  107. package/dist/visualization.es152.js.map +1 -1
  108. package/dist/visualization.es153.js +6 -42
  109. package/dist/visualization.es153.js.map +1 -1
  110. package/dist/visualization.es154.js +12 -70
  111. package/dist/visualization.es154.js.map +1 -1
  112. package/dist/visualization.es155.js +17 -15
  113. package/dist/visualization.es155.js.map +1 -1
  114. package/dist/visualization.es156.js +3 -11
  115. package/dist/visualization.es156.js.map +1 -1
  116. package/dist/visualization.es157.js +36 -5
  117. package/dist/visualization.es157.js.map +1 -1
  118. package/dist/visualization.es158.js +3 -30
  119. package/dist/visualization.es158.js.map +1 -1
  120. package/dist/visualization.es159.js +8 -8
  121. package/dist/visualization.es159.js.map +1 -1
  122. package/dist/visualization.es16.js +8 -8
  123. package/dist/visualization.es160.js +15 -6
  124. package/dist/visualization.es160.js.map +1 -1
  125. package/dist/visualization.es161.js +11 -4
  126. package/dist/visualization.es161.js.map +1 -1
  127. package/dist/visualization.es162.js +5 -16
  128. package/dist/visualization.es162.js.map +1 -1
  129. package/dist/visualization.es163.js +11 -16
  130. package/dist/visualization.es163.js.map +1 -1
  131. package/dist/visualization.es164.js +3 -32
  132. package/dist/visualization.es164.js.map +1 -1
  133. package/dist/visualization.es165.js +2 -17
  134. package/dist/visualization.es165.js.map +1 -1
  135. package/dist/visualization.es166.js +10 -10
  136. package/dist/visualization.es166.js.map +1 -1
  137. package/dist/visualization.es167.js +30 -6
  138. package/dist/visualization.es167.js.map +1 -1
  139. package/dist/visualization.es168.js +42 -6
  140. package/dist/visualization.es168.js.map +1 -1
  141. package/dist/visualization.es169.js +47 -8
  142. package/dist/visualization.es169.js.map +1 -1
  143. package/dist/visualization.es170.js +3 -5
  144. package/dist/visualization.es170.js.map +1 -1
  145. package/dist/visualization.es171.js +3 -5
  146. package/dist/visualization.es171.js.map +1 -1
  147. package/dist/visualization.es172.js +5 -8
  148. package/dist/visualization.es172.js.map +1 -1
  149. package/dist/visualization.es173.js +4 -4
  150. package/dist/visualization.es173.js.map +1 -1
  151. package/dist/visualization.es174.js +9 -11
  152. package/dist/visualization.es174.js.map +1 -1
  153. package/dist/visualization.es175.js +3 -26
  154. package/dist/visualization.es175.js.map +1 -1
  155. package/dist/visualization.es176.js +16 -8
  156. package/dist/visualization.es176.js.map +1 -1
  157. package/dist/visualization.es177.js +18 -6
  158. package/dist/visualization.es177.js.map +1 -1
  159. package/dist/visualization.es178.js +36 -7
  160. package/dist/visualization.es178.js.map +1 -1
  161. package/dist/visualization.es179.js +2 -10
  162. package/dist/visualization.es179.js.map +1 -1
  163. package/dist/visualization.es180.js +2 -7
  164. package/dist/visualization.es180.js.map +1 -1
  165. package/dist/visualization.es181.js +4 -7
  166. package/dist/visualization.es181.js.map +1 -1
  167. package/dist/visualization.es182.js +14 -5
  168. package/dist/visualization.es182.js.map +1 -1
  169. package/dist/visualization.es183.js +3 -15
  170. package/dist/visualization.es183.js.map +1 -1
  171. package/dist/visualization.es184.js +7 -6
  172. package/dist/visualization.es184.js.map +1 -1
  173. package/dist/visualization.es185.js +3 -4
  174. package/dist/visualization.es185.js.map +1 -1
  175. package/dist/visualization.es186.js +6 -6
  176. package/dist/visualization.es186.js.map +1 -1
  177. package/dist/visualization.es187.js +72 -6
  178. package/dist/visualization.es187.js.map +1 -1
  179. package/dist/visualization.es188.js +22 -9
  180. package/dist/visualization.es188.js.map +1 -1
  181. package/dist/visualization.es189.js +22 -32
  182. package/dist/visualization.es189.js.map +1 -1
  183. package/dist/visualization.es190.js +38 -112
  184. package/dist/visualization.es190.js.map +1 -1
  185. package/dist/visualization.es191.js +7 -3
  186. package/dist/visualization.es191.js.map +1 -1
  187. package/dist/visualization.es192.js +12 -5
  188. package/dist/visualization.es192.js.map +1 -1
  189. package/dist/visualization.es193.js +16 -32
  190. package/dist/visualization.es193.js.map +1 -1
  191. package/dist/visualization.es194.js +36 -15
  192. package/dist/visualization.es194.js.map +1 -1
  193. package/dist/visualization.es195.js +24 -7
  194. package/dist/visualization.es195.js.map +1 -1
  195. package/dist/visualization.es196.js +26 -10
  196. package/dist/visualization.es196.js.map +1 -1
  197. package/dist/visualization.es197.js +64 -8
  198. package/dist/visualization.es197.js.map +1 -1
  199. package/dist/visualization.es198.js +7 -16
  200. package/dist/visualization.es198.js.map +1 -1
  201. package/dist/visualization.es199.js +42 -10
  202. package/dist/visualization.es199.js.map +1 -1
  203. package/dist/visualization.es2.js +8 -8
  204. package/dist/visualization.es200.js +30 -5
  205. package/dist/visualization.es200.js.map +1 -1
  206. package/dist/visualization.es201.js +7 -11
  207. package/dist/visualization.es201.js.map +1 -1
  208. package/dist/visualization.es202.js +6 -3
  209. package/dist/visualization.es202.js.map +1 -1
  210. package/dist/visualization.es203.js +4 -2
  211. package/dist/visualization.es203.js.map +1 -1
  212. package/dist/visualization.es204.js +16 -10
  213. package/dist/visualization.es204.js.map +1 -1
  214. package/dist/visualization.es205.js +16 -30
  215. package/dist/visualization.es205.js.map +1 -1
  216. package/dist/visualization.es206.js +31 -41
  217. package/dist/visualization.es206.js.map +1 -1
  218. package/dist/visualization.es207.js +12 -45
  219. package/dist/visualization.es207.js.map +1 -1
  220. package/dist/visualization.es208.js +11 -3
  221. package/dist/visualization.es208.js.map +1 -1
  222. package/dist/visualization.es209.js +7 -3
  223. package/dist/visualization.es209.js.map +1 -1
  224. package/dist/visualization.es21.js +62 -143
  225. package/dist/visualization.es21.js.map +1 -1
  226. package/dist/visualization.es210.js +6 -5
  227. package/dist/visualization.es210.js.map +1 -1
  228. package/dist/visualization.es211.js +10 -4
  229. package/dist/visualization.es211.js.map +1 -1
  230. package/dist/visualization.es212.js +4 -10
  231. package/dist/visualization.es212.js.map +1 -1
  232. package/dist/visualization.es213.js +4 -3
  233. package/dist/visualization.es213.js.map +1 -1
  234. package/dist/visualization.es214.js +8 -17
  235. package/dist/visualization.es214.js.map +1 -1
  236. package/dist/visualization.es215.js +4 -18
  237. package/dist/visualization.es215.js.map +1 -1
  238. package/dist/visualization.es216.js +12 -36
  239. package/dist/visualization.es216.js.map +1 -1
  240. package/dist/visualization.es217.js +27 -2
  241. package/dist/visualization.es217.js.map +1 -1
  242. package/dist/visualization.es218.js +20 -2
  243. package/dist/visualization.es218.js.map +1 -1
  244. package/dist/visualization.es219.js +28 -4
  245. package/dist/visualization.es219.js.map +1 -1
  246. package/dist/visualization.es22.js +113 -8
  247. package/dist/visualization.es22.js.map +1 -1
  248. package/dist/visualization.es220.js +74 -14
  249. package/dist/visualization.es220.js.map +1 -1
  250. package/dist/visualization.es221.js +2 -3
  251. package/dist/visualization.es221.js.map +1 -1
  252. package/dist/visualization.es222.js +483 -7
  253. package/dist/visualization.es222.js.map +1 -1
  254. package/dist/visualization.es223.js +2 -3
  255. package/dist/visualization.es223.js.map +1 -1
  256. package/dist/visualization.es224.js +123 -6
  257. package/dist/visualization.es224.js.map +1 -1
  258. package/dist/visualization.es225.js +61 -17
  259. package/dist/visualization.es225.js.map +1 -1
  260. package/dist/visualization.es226.js +60 -27
  261. package/dist/visualization.es226.js.map +1 -1
  262. package/dist/visualization.es227.js +3 -3
  263. package/dist/visualization.es227.js.map +1 -1
  264. package/dist/visualization.es228.js +5 -72
  265. package/dist/visualization.es228.js.map +1 -1
  266. package/dist/visualization.es229.js +33 -22
  267. package/dist/visualization.es229.js.map +1 -1
  268. package/dist/visualization.es23.js +147 -7
  269. package/dist/visualization.es23.js.map +1 -1
  270. package/dist/visualization.es230.js +15 -22
  271. package/dist/visualization.es230.js.map +1 -1
  272. package/dist/visualization.es231.js +7 -40
  273. package/dist/visualization.es231.js.map +1 -1
  274. package/dist/visualization.es232.js +10 -6
  275. package/dist/visualization.es232.js.map +1 -1
  276. package/dist/visualization.es233.js +9 -12
  277. package/dist/visualization.es233.js.map +1 -1
  278. package/dist/visualization.es234.js +6 -17
  279. package/dist/visualization.es234.js.map +1 -1
  280. package/dist/visualization.es235.js +7 -36
  281. package/dist/visualization.es235.js.map +1 -1
  282. package/dist/visualization.es236.js +8 -23
  283. package/dist/visualization.es236.js.map +1 -1
  284. package/dist/visualization.es237.js +6 -27
  285. package/dist/visualization.es237.js.map +1 -1
  286. package/dist/visualization.es238.js +6 -74
  287. package/dist/visualization.es238.js.map +1 -1
  288. package/dist/visualization.es239.js +6 -2
  289. package/dist/visualization.es239.js.map +1 -1
  290. package/dist/visualization.es24.js +7 -35
  291. package/dist/visualization.es24.js.map +1 -1
  292. package/dist/visualization.es240.js +14 -482
  293. package/dist/visualization.es240.js.map +1 -1
  294. package/dist/visualization.es241.js +6 -2
  295. package/dist/visualization.es241.js.map +1 -1
  296. package/dist/visualization.es242.js +3 -123
  297. package/dist/visualization.es242.js.map +1 -1
  298. package/dist/visualization.es243.js +6 -63
  299. package/dist/visualization.es243.js.map +1 -1
  300. package/dist/visualization.es244.js +6 -60
  301. package/dist/visualization.es244.js.map +1 -1
  302. package/dist/visualization.es245.js +9 -18
  303. package/dist/visualization.es245.js.map +1 -1
  304. package/dist/visualization.es246.js +32 -3
  305. package/dist/visualization.es246.js.map +1 -1
  306. package/dist/visualization.es247.js +113 -34
  307. package/dist/visualization.es247.js.map +1 -1
  308. package/dist/visualization.es25.js +7 -47
  309. package/dist/visualization.es25.js.map +1 -1
  310. package/dist/visualization.es258.js +1 -1
  311. package/dist/visualization.es26.js +45 -32
  312. package/dist/visualization.es26.js.map +1 -1
  313. package/dist/visualization.es264.js +34 -4
  314. package/dist/visualization.es264.js.map +1 -1
  315. package/dist/visualization.es265.js +2 -35
  316. package/dist/visualization.es265.js.map +1 -1
  317. package/dist/visualization.es266.js +54 -2
  318. package/dist/visualization.es266.js.map +1 -1
  319. package/dist/visualization.es267.js +31 -23
  320. package/dist/visualization.es267.js.map +1 -1
  321. package/dist/visualization.es268.js +33 -53
  322. package/dist/visualization.es268.js.map +1 -1
  323. package/dist/visualization.es269.js +12 -20
  324. package/dist/visualization.es269.js.map +1 -1
  325. package/dist/visualization.es27.js +17 -31
  326. package/dist/visualization.es27.js.map +1 -1
  327. package/dist/visualization.es270.js +4 -53
  328. package/dist/visualization.es270.js.map +1 -1
  329. package/dist/visualization.es271.js +23 -31
  330. package/dist/visualization.es271.js.map +1 -1
  331. package/dist/visualization.es272.js +53 -33
  332. package/dist/visualization.es272.js.map +1 -1
  333. package/dist/visualization.es273.js +20 -12
  334. package/dist/visualization.es273.js.map +1 -1
  335. package/dist/visualization.es274.js +10 -7
  336. package/dist/visualization.es274.js.map +1 -1
  337. package/dist/visualization.es275.js +9 -34
  338. package/dist/visualization.es275.js.map +1 -1
  339. package/dist/visualization.es276.js +6 -3
  340. package/dist/visualization.es276.js.map +1 -1
  341. package/dist/visualization.es277.js +8 -3
  342. package/dist/visualization.es277.js.map +1 -1
  343. package/dist/visualization.es278.js +6 -6
  344. package/dist/visualization.es278.js.map +1 -1
  345. package/dist/visualization.es279.js +5 -12
  346. package/dist/visualization.es279.js.map +1 -1
  347. package/dist/visualization.es28.js +5 -21
  348. package/dist/visualization.es28.js.map +1 -1
  349. package/dist/visualization.es280.js +15 -2
  350. package/dist/visualization.es280.js.map +1 -1
  351. package/dist/visualization.es281.js +5 -3
  352. package/dist/visualization.es281.js.map +1 -1
  353. package/dist/visualization.es282.js +6 -3
  354. package/dist/visualization.es282.js.map +1 -1
  355. package/dist/visualization.es283.js +6 -10
  356. package/dist/visualization.es283.js.map +1 -1
  357. package/dist/visualization.es284.js +6 -4
  358. package/dist/visualization.es284.js.map +1 -1
  359. package/dist/visualization.es285.js +3 -32
  360. package/dist/visualization.es285.js.map +1 -1
  361. package/dist/visualization.es286.js +4 -61
  362. package/dist/visualization.es286.js.map +1 -1
  363. package/dist/visualization.es287.js +7 -235
  364. package/dist/visualization.es287.js.map +1 -1
  365. package/dist/visualization.es288.js +29 -993
  366. package/dist/visualization.es288.js.map +1 -1
  367. package/dist/visualization.es289.js +120 -3
  368. package/dist/visualization.es289.js.map +1 -1
  369. package/dist/visualization.es29.js +33 -10
  370. package/dist/visualization.es29.js.map +1 -1
  371. package/dist/visualization.es290.js +29 -11
  372. package/dist/visualization.es290.js.map +1 -1
  373. package/dist/visualization.es291.js +10 -36
  374. package/dist/visualization.es291.js.map +1 -1
  375. package/dist/visualization.es292.js +13 -260
  376. package/dist/visualization.es292.js.map +1 -1
  377. package/dist/visualization.es293.js +29 -56
  378. package/dist/visualization.es293.js.map +1 -1
  379. package/dist/visualization.es294.js +28 -5
  380. package/dist/visualization.es294.js.map +1 -1
  381. package/dist/visualization.es295.js +10 -21
  382. package/dist/visualization.es295.js.map +1 -1
  383. package/dist/visualization.es296.js +12 -37
  384. package/dist/visualization.es296.js.map +1 -1
  385. package/dist/visualization.es297.js +16 -33
  386. package/dist/visualization.es297.js.map +1 -1
  387. package/dist/visualization.es298.js +22 -13
  388. package/dist/visualization.es298.js.map +1 -1
  389. package/dist/visualization.es299.js +16 -18
  390. package/dist/visualization.es299.js.map +1 -1
  391. package/dist/visualization.es3.js +12 -12
  392. package/dist/visualization.es30.js +32 -52
  393. package/dist/visualization.es30.js.map +1 -1
  394. package/dist/visualization.es300.js +95 -7
  395. package/dist/visualization.es300.js.map +1 -1
  396. package/dist/visualization.es301.js +28 -7
  397. package/dist/visualization.es301.js.map +1 -1
  398. package/dist/visualization.es302.js +66 -135
  399. package/dist/visualization.es302.js.map +1 -1
  400. package/dist/visualization.es303.js +51 -5
  401. package/dist/visualization.es303.js.map +1 -1
  402. package/dist/visualization.es304.js +33 -108
  403. package/dist/visualization.es304.js.map +1 -1
  404. package/dist/visualization.es305.js +40 -11
  405. package/dist/visualization.es305.js.map +1 -1
  406. package/dist/visualization.es306.js +3 -142
  407. package/dist/visualization.es306.js.map +1 -1
  408. package/dist/visualization.es307.js +11 -5
  409. package/dist/visualization.es307.js.map +1 -1
  410. package/dist/visualization.es308.js +35 -70
  411. package/dist/visualization.es308.js.map +1 -1
  412. package/dist/visualization.es309.js +256 -31
  413. package/dist/visualization.es309.js.map +1 -1
  414. package/dist/visualization.es31.js +55 -44
  415. package/dist/visualization.es31.js.map +1 -1
  416. package/dist/visualization.es310.js +58 -19
  417. package/dist/visualization.es310.js.map +1 -1
  418. package/dist/visualization.es311.js +5 -3
  419. package/dist/visualization.es311.js.map +1 -1
  420. package/dist/visualization.es312.js +21 -24
  421. package/dist/visualization.es312.js.map +1 -1
  422. package/dist/visualization.es313.js +37 -30
  423. package/dist/visualization.es313.js.map +1 -1
  424. package/dist/visualization.es314.js +35 -2
  425. package/dist/visualization.es314.js.map +1 -1
  426. package/dist/visualization.es315.js +15 -2
  427. package/dist/visualization.es315.js.map +1 -1
  428. package/dist/visualization.es316.js +19 -6
  429. package/dist/visualization.es316.js.map +1 -1
  430. package/dist/visualization.es317.js +8 -14
  431. package/dist/visualization.es317.js.map +1 -1
  432. package/dist/visualization.es318.js +7 -34
  433. package/dist/visualization.es318.js.map +1 -1
  434. package/dist/visualization.es319.js +137 -24
  435. package/dist/visualization.es319.js.map +1 -1
  436. package/dist/visualization.es32.js +111 -34
  437. package/dist/visualization.es32.js.map +1 -1
  438. package/dist/visualization.es320.js +5 -10
  439. package/dist/visualization.es320.js.map +1 -1
  440. package/dist/visualization.es321.js +109 -6
  441. package/dist/visualization.es321.js.map +1 -1
  442. package/dist/visualization.es322.js +12 -13
  443. package/dist/visualization.es322.js.map +1 -1
  444. package/dist/visualization.es323.js +142 -12
  445. package/dist/visualization.es323.js.map +1 -1
  446. package/dist/visualization.es324.js +6 -2
  447. package/dist/visualization.es324.js.map +1 -1
  448. package/dist/visualization.es325.js +72 -3
  449. package/dist/visualization.es325.js.map +1 -1
  450. package/dist/visualization.es326.js +36 -2
  451. package/dist/visualization.es326.js.map +1 -1
  452. package/dist/visualization.es327.js +20 -103
  453. package/dist/visualization.es327.js.map +1 -1
  454. package/dist/visualization.es328.js +3 -4
  455. package/dist/visualization.es328.js.map +1 -1
  456. package/dist/visualization.es329.js +25 -3
  457. package/dist/visualization.es329.js.map +1 -1
  458. package/dist/visualization.es33.js +8 -29
  459. package/dist/visualization.es33.js.map +1 -1
  460. package/dist/visualization.es330.js +30 -18
  461. package/dist/visualization.es330.js.map +1 -1
  462. package/dist/visualization.es331.js +2 -6
  463. package/dist/visualization.es331.js.map +1 -1
  464. package/dist/visualization.es332.js +2 -15
  465. package/dist/visualization.es332.js.map +1 -1
  466. package/dist/visualization.es333.js +5 -4
  467. package/dist/visualization.es333.js.map +1 -1
  468. package/dist/visualization.es334.js +15 -29
  469. package/dist/visualization.es334.js.map +1 -1
  470. package/dist/visualization.es335.js +34 -6
  471. package/dist/visualization.es335.js.map +1 -1
  472. package/dist/visualization.es336.js +28 -2
  473. package/dist/visualization.es336.js.map +1 -1
  474. package/dist/visualization.es337.js +11 -20
  475. package/dist/visualization.es337.js.map +1 -1
  476. package/dist/visualization.es338.js +7 -21
  477. package/dist/visualization.es338.js.map +1 -1
  478. package/dist/visualization.es339.js +13 -5
  479. package/dist/visualization.es339.js.map +1 -1
  480. package/dist/visualization.es34.js +33 -64
  481. package/dist/visualization.es34.js.map +1 -1
  482. package/dist/visualization.es340.js +12 -8
  483. package/dist/visualization.es340.js.map +1 -1
  484. package/dist/visualization.es341.js +2 -19
  485. package/dist/visualization.es341.js.map +1 -1
  486. package/dist/visualization.es342.js +3 -44
  487. package/dist/visualization.es342.js.map +1 -1
  488. package/dist/visualization.es343.js +2 -7
  489. package/dist/visualization.es343.js.map +1 -1
  490. package/dist/visualization.es344.js +103 -19
  491. package/dist/visualization.es344.js.map +1 -1
  492. package/dist/visualization.es345.js +4 -53
  493. package/dist/visualization.es345.js.map +1 -1
  494. package/dist/visualization.es346.js +3 -27
  495. package/dist/visualization.es346.js.map +1 -1
  496. package/dist/visualization.es347.js +19 -11
  497. package/dist/visualization.es347.js.map +1 -1
  498. package/dist/visualization.es348.js +5 -18
  499. package/dist/visualization.es348.js.map +1 -1
  500. package/dist/visualization.es349.js +14 -11
  501. package/dist/visualization.es349.js.map +1 -1
  502. package/dist/visualization.es35.js +50 -42
  503. package/dist/visualization.es35.js.map +1 -1
  504. package/dist/visualization.es350.js +4 -4
  505. package/dist/visualization.es350.js.map +1 -1
  506. package/dist/visualization.es351.js +29 -4
  507. package/dist/visualization.es351.js.map +1 -1
  508. package/dist/visualization.es352.js +6 -3
  509. package/dist/visualization.es352.js.map +1 -1
  510. package/dist/visualization.es353.js +2 -176
  511. package/dist/visualization.es353.js.map +1 -1
  512. package/dist/visualization.es354.js +20 -40
  513. package/dist/visualization.es354.js.map +1 -1
  514. package/dist/visualization.es355.js +21 -6
  515. package/dist/visualization.es355.js.map +1 -1
  516. package/dist/visualization.es356.js +5 -3
  517. package/dist/visualization.es356.js.map +1 -1
  518. package/dist/visualization.es357.js +8 -2
  519. package/dist/visualization.es357.js.map +1 -1
  520. package/dist/visualization.es358.js +19 -30
  521. package/dist/visualization.es358.js.map +1 -1
  522. package/dist/visualization.es359.js +43 -7
  523. package/dist/visualization.es359.js.map +1 -1
  524. package/dist/visualization.es36.js +39 -46
  525. package/dist/visualization.es36.js.map +1 -1
  526. package/dist/visualization.es360.js +7 -11
  527. package/dist/visualization.es360.js.map +1 -1
  528. package/dist/visualization.es361.js +19 -3
  529. package/dist/visualization.es361.js.map +1 -1
  530. package/dist/visualization.es362.js +49 -61
  531. package/dist/visualization.es362.js.map +1 -1
  532. package/dist/visualization.es363.js +27 -7
  533. package/dist/visualization.es363.js.map +1 -1
  534. package/dist/visualization.es364.js +11 -5
  535. package/dist/visualization.es364.js.map +1 -1
  536. package/dist/visualization.es365.js +17 -12
  537. package/dist/visualization.es365.js.map +1 -1
  538. package/dist/visualization.es366.js +11 -34
  539. package/dist/visualization.es366.js.map +1 -1
  540. package/dist/visualization.es367.js +4 -4
  541. package/dist/visualization.es367.js.map +1 -1
  542. package/dist/visualization.es368.js +4 -10
  543. package/dist/visualization.es368.js.map +1 -1
  544. package/dist/visualization.es369.js +4 -2
  545. package/dist/visualization.es369.js.map +1 -1
  546. package/dist/visualization.es37.js +42 -3
  547. package/dist/visualization.es37.js.map +1 -1
  548. package/dist/visualization.es370.js +175 -4
  549. package/dist/visualization.es370.js.map +1 -1
  550. package/dist/visualization.es371.js +40 -2
  551. package/dist/visualization.es371.js.map +1 -1
  552. package/dist/visualization.es372.js +5 -9
  553. package/dist/visualization.es372.js.map +1 -1
  554. package/dist/visualization.es373.js +4 -10
  555. package/dist/visualization.es373.js.map +1 -1
  556. package/dist/visualization.es374.js +2 -13
  557. package/dist/visualization.es374.js.map +1 -1
  558. package/dist/visualization.es375.js +30 -2
  559. package/dist/visualization.es375.js.map +1 -1
  560. package/dist/visualization.es376.js +8 -10
  561. package/dist/visualization.es376.js.map +1 -1
  562. package/dist/visualization.es377.js +10 -7
  563. package/dist/visualization.es377.js.map +1 -1
  564. package/dist/visualization.es378.js +3 -5
  565. package/dist/visualization.es378.js.map +1 -1
  566. package/dist/visualization.es379.js +65 -24
  567. package/dist/visualization.es379.js.map +1 -1
  568. package/dist/visualization.es38.js +5 -46
  569. package/dist/visualization.es38.js.map +1 -1
  570. package/dist/visualization.es380.js +7 -19
  571. package/dist/visualization.es380.js.map +1 -1
  572. package/dist/visualization.es381.js +4 -40
  573. package/dist/visualization.es381.js.map +1 -1
  574. package/dist/visualization.es382.js +14 -3
  575. package/dist/visualization.es382.js.map +1 -1
  576. package/dist/visualization.es383.js +34 -8
  577. package/dist/visualization.es383.js.map +1 -1
  578. package/dist/visualization.es384.js +4 -8
  579. package/dist/visualization.es384.js.map +1 -1
  580. package/dist/visualization.es385.js +9 -35
  581. package/dist/visualization.es385.js.map +1 -1
  582. package/dist/visualization.es386.js +2 -10
  583. package/dist/visualization.es386.js.map +1 -1
  584. package/dist/visualization.es387.js +5 -32
  585. package/dist/visualization.es387.js.map +1 -1
  586. package/dist/visualization.es388.js +2 -5
  587. package/dist/visualization.es388.js.map +1 -1
  588. package/dist/visualization.es389.js +10 -2
  589. package/dist/visualization.es389.js.map +1 -1
  590. package/dist/visualization.es39.js +4 -3
  591. package/dist/visualization.es39.js.map +1 -1
  592. package/dist/visualization.es390.js +10 -16
  593. package/dist/visualization.es390.js.map +1 -1
  594. package/dist/visualization.es391.js +12 -24
  595. package/dist/visualization.es391.js.map +1 -1
  596. package/dist/visualization.es392.js +2 -2
  597. package/dist/visualization.es392.js.map +1 -1
  598. package/dist/visualization.es393.js +10 -63
  599. package/dist/visualization.es393.js.map +1 -1
  600. package/dist/visualization.es394.js +8 -2
  601. package/dist/visualization.es394.js.map +1 -1
  602. package/dist/visualization.es395.js +6 -2
  603. package/dist/visualization.es395.js.map +1 -1
  604. package/dist/visualization.es396.js +24 -5
  605. package/dist/visualization.es396.js.map +1 -1
  606. package/dist/visualization.es397.js +19 -37
  607. package/dist/visualization.es397.js.map +1 -1
  608. package/dist/visualization.es398.js +38 -18
  609. package/dist/visualization.es398.js.map +1 -1
  610. package/dist/visualization.es399.js +3 -4
  611. package/dist/visualization.es399.js.map +1 -1
  612. package/dist/visualization.es4.js +6 -6
  613. package/dist/visualization.es40.js +18 -282
  614. package/dist/visualization.es40.js.map +1 -1
  615. package/dist/visualization.es400.js +8 -4
  616. package/dist/visualization.es400.js.map +1 -1
  617. package/dist/visualization.es401.js +8 -4
  618. package/dist/visualization.es401.js.map +1 -1
  619. package/dist/visualization.es402.js +34 -47
  620. package/dist/visualization.es402.js.map +1 -1
  621. package/dist/visualization.es403.js +9 -26
  622. package/dist/visualization.es403.js.map +1 -1
  623. package/dist/visualization.es404.js +30 -15
  624. package/dist/visualization.es404.js.map +1 -1
  625. package/dist/visualization.es405.js +5 -10
  626. package/dist/visualization.es405.js.map +1 -1
  627. package/dist/visualization.es406.js +2 -20
  628. package/dist/visualization.es406.js.map +1 -1
  629. package/dist/visualization.es407.js +16 -14
  630. package/dist/visualization.es407.js.map +1 -1
  631. package/dist/visualization.es408.js +24 -3
  632. package/dist/visualization.es408.js.map +1 -1
  633. package/dist/visualization.es409.js +2 -13
  634. package/dist/visualization.es409.js.map +1 -1
  635. package/dist/visualization.es41.js +4 -18
  636. package/dist/visualization.es41.js.map +1 -1
  637. package/dist/visualization.es410.js +60 -46
  638. package/dist/visualization.es410.js.map +1 -1
  639. package/dist/visualization.es411.js +2 -6
  640. package/dist/visualization.es411.js.map +1 -1
  641. package/dist/visualization.es412.js +2 -13
  642. package/dist/visualization.es412.js.map +1 -1
  643. package/dist/visualization.es413.js +6 -2
  644. package/dist/visualization.es413.js.map +1 -1
  645. package/dist/visualization.es414.js +36 -6
  646. package/dist/visualization.es414.js.map +1 -1
  647. package/dist/visualization.es415.js +19 -208
  648. package/dist/visualization.es415.js.map +1 -1
  649. package/dist/visualization.es416.js +3 -26
  650. package/dist/visualization.es416.js.map +1 -1
  651. package/dist/visualization.es417.js +4 -3
  652. package/dist/visualization.es417.js.map +1 -1
  653. package/dist/visualization.es418.js +5 -16
  654. package/dist/visualization.es418.js.map +1 -1
  655. package/dist/visualization.es419.js +48 -14
  656. package/dist/visualization.es419.js.map +1 -1
  657. package/dist/visualization.es42.js +26 -65
  658. package/dist/visualization.es42.js.map +1 -1
  659. package/dist/visualization.es420.js +26 -14
  660. package/dist/visualization.es420.js.map +1 -1
  661. package/dist/visualization.es421.js +17 -2
  662. package/dist/visualization.es421.js.map +1 -1
  663. package/dist/visualization.es422.js +10 -2
  664. package/dist/visualization.es422.js.map +1 -1
  665. package/dist/visualization.es423.js +20 -2
  666. package/dist/visualization.es423.js.map +1 -1
  667. package/dist/visualization.es424.js +13 -4
  668. package/dist/visualization.es424.js.map +1 -1
  669. package/dist/visualization.es425.js +4 -2
  670. package/dist/visualization.es425.js.map +1 -1
  671. package/dist/visualization.es426.js +13 -25
  672. package/dist/visualization.es426.js.map +1 -1
  673. package/dist/visualization.es427.js +47 -20
  674. package/dist/visualization.es427.js.map +1 -1
  675. package/dist/visualization.es428.js +6 -9
  676. package/dist/visualization.es428.js.map +1 -1
  677. package/dist/visualization.es429.js +13 -68
  678. package/dist/visualization.es429.js.map +1 -1
  679. package/dist/visualization.es43.js +30 -270
  680. package/dist/visualization.es43.js.map +1 -1
  681. package/dist/visualization.es430.js +2 -6
  682. package/dist/visualization.es430.js.map +1 -1
  683. package/dist/visualization.es431.js +7 -29
  684. package/dist/visualization.es431.js.map +1 -1
  685. package/dist/visualization.es432.js +209 -9
  686. package/dist/visualization.es432.js.map +1 -1
  687. package/dist/visualization.es433.js +27 -6
  688. package/dist/visualization.es433.js.map +1 -1
  689. package/dist/visualization.es434.js +4 -2
  690. package/dist/visualization.es434.js.map +1 -1
  691. package/dist/visualization.es435.js +16 -5
  692. package/dist/visualization.es435.js.map +1 -1
  693. package/dist/visualization.es436.js +15 -26
  694. package/dist/visualization.es436.js.map +1 -1
  695. package/dist/visualization.es437.js +15 -11
  696. package/dist/visualization.es437.js.map +1 -1
  697. package/dist/visualization.es438.js +2 -27
  698. package/dist/visualization.es438.js.map +1 -1
  699. package/dist/visualization.es439.js +2 -10
  700. package/dist/visualization.es439.js.map +1 -1
  701. package/dist/visualization.es44.js +18698 -99
  702. package/dist/visualization.es44.js.map +1 -1
  703. package/dist/visualization.es440.js +2 -11
  704. package/dist/visualization.es440.js.map +1 -1
  705. package/dist/visualization.es441.js +5 -2
  706. package/dist/visualization.es441.js.map +1 -1
  707. package/dist/visualization.es442.js +2 -16
  708. package/dist/visualization.es442.js.map +1 -1
  709. package/dist/visualization.es443.js +25 -30
  710. package/dist/visualization.es443.js.map +1 -1
  711. package/dist/visualization.es444.js +22 -26
  712. package/dist/visualization.es444.js.map +1 -1
  713. package/dist/visualization.es445.js +9 -2
  714. package/dist/visualization.es445.js.map +1 -1
  715. package/dist/visualization.es446.js +68 -9
  716. package/dist/visualization.es446.js.map +1 -1
  717. package/dist/visualization.es447.js +6 -13
  718. package/dist/visualization.es447.js.map +1 -1
  719. package/dist/visualization.es448.js +29 -23
  720. package/dist/visualization.es448.js.map +1 -1
  721. package/dist/visualization.es449.js +9 -12
  722. package/dist/visualization.es449.js.map +1 -1
  723. package/dist/visualization.es45.js +5 -27
  724. package/dist/visualization.es45.js.map +1 -1
  725. package/dist/visualization.es450.js +6 -3
  726. package/dist/visualization.es450.js.map +1 -1
  727. package/dist/visualization.es451.js +2 -2
  728. package/dist/visualization.es451.js.map +1 -1
  729. package/dist/visualization.es452.js +4 -17
  730. package/dist/visualization.es452.js.map +1 -1
  731. package/dist/visualization.es453.js +25 -3
  732. package/dist/visualization.es453.js.map +1 -1
  733. package/dist/visualization.es454.js +10 -11
  734. package/dist/visualization.es454.js.map +1 -1
  735. package/dist/visualization.es455.js +27 -11
  736. package/dist/visualization.es455.js.map +1 -1
  737. package/dist/visualization.es456.js +9 -6
  738. package/dist/visualization.es456.js.map +1 -1
  739. package/dist/visualization.es457.js +11 -19
  740. package/dist/visualization.es457.js.map +1 -1
  741. package/dist/visualization.es458.js +2 -23
  742. package/dist/visualization.es458.js.map +1 -1
  743. package/dist/visualization.es459.js +16 -12
  744. package/dist/visualization.es459.js.map +1 -1
  745. package/dist/visualization.es46.js +5 -22
  746. package/dist/visualization.es46.js.map +1 -1
  747. package/dist/visualization.es460.js +27 -48
  748. package/dist/visualization.es460.js.map +1 -1
  749. package/dist/visualization.es461.js +26 -18
  750. package/dist/visualization.es461.js.map +1 -1
  751. package/dist/visualization.es462.js +2 -36
  752. package/dist/visualization.es462.js.map +1 -1
  753. package/dist/visualization.es463.js +8 -22
  754. package/dist/visualization.es463.js.map +1 -1
  755. package/dist/visualization.es464.js +12 -31
  756. package/dist/visualization.es464.js.map +1 -1
  757. package/dist/visualization.es465.js +22 -3
  758. package/dist/visualization.es465.js.map +1 -1
  759. package/dist/visualization.es466.js +12 -18
  760. package/dist/visualization.es466.js.map +1 -1
  761. package/dist/visualization.es467.js +3 -14
  762. package/dist/visualization.es467.js.map +1 -1
  763. package/dist/visualization.es468.js +2 -11
  764. package/dist/visualization.es468.js.map +1 -1
  765. package/dist/visualization.es469.js +16 -28
  766. package/dist/visualization.es469.js.map +1 -1
  767. package/dist/visualization.es47.js +59 -17
  768. package/dist/visualization.es47.js.map +1 -1
  769. package/dist/visualization.es470.js +4 -6
  770. package/dist/visualization.es470.js.map +1 -1
  771. package/dist/visualization.es471.js +11 -7
  772. package/dist/visualization.es471.js.map +1 -1
  773. package/dist/visualization.es472.js +11 -2
  774. package/dist/visualization.es472.js.map +1 -1
  775. package/dist/visualization.es473.js +6 -16
  776. package/dist/visualization.es473.js.map +1 -1
  777. package/dist/visualization.es474.js +19 -9
  778. package/dist/visualization.es474.js.map +1 -1
  779. package/dist/visualization.es475.js +21 -8
  780. package/dist/visualization.es475.js.map +1 -1
  781. package/dist/visualization.es476.js +9 -613
  782. package/dist/visualization.es476.js.map +1 -1
  783. package/dist/visualization.es477.js +50 -50
  784. package/dist/visualization.es477.js.map +1 -1
  785. package/dist/visualization.es478.js +18 -13
  786. package/dist/visualization.es478.js.map +1 -1
  787. package/dist/visualization.es479.js +36 -11
  788. package/dist/visualization.es479.js.map +1 -1
  789. package/dist/visualization.es48.js +809 -19
  790. package/dist/visualization.es48.js.map +1 -1
  791. package/dist/visualization.es480.js +23 -23
  792. package/dist/visualization.es480.js.map +1 -1
  793. package/dist/visualization.es481.js +31 -34
  794. package/dist/visualization.es481.js.map +1 -1
  795. package/dist/visualization.es482.js +3 -12
  796. package/dist/visualization.es482.js.map +1 -1
  797. package/dist/visualization.es483.js +18 -19
  798. package/dist/visualization.es483.js.map +1 -1
  799. package/dist/visualization.es484.js +13 -40
  800. package/dist/visualization.es484.js.map +1 -1
  801. package/dist/visualization.es485.js +10 -57
  802. package/dist/visualization.es485.js.map +1 -1
  803. package/dist/visualization.es486.js +28 -17
  804. package/dist/visualization.es486.js.map +1 -1
  805. package/dist/visualization.es487.js +6 -26
  806. package/dist/visualization.es487.js.map +1 -1
  807. package/dist/visualization.es488.js +7 -26
  808. package/dist/visualization.es488.js.map +1 -1
  809. package/dist/visualization.es489.js +2 -43
  810. package/dist/visualization.es489.js.map +1 -1
  811. package/dist/visualization.es490.js +16 -3
  812. package/dist/visualization.es490.js.map +1 -1
  813. package/dist/visualization.es491.js +9 -3
  814. package/dist/visualization.es491.js.map +1 -1
  815. package/dist/visualization.es492.js +10 -7
  816. package/dist/visualization.es492.js.map +1 -1
  817. package/dist/visualization.es493.js +615 -15
  818. package/dist/visualization.es493.js.map +1 -1
  819. package/dist/visualization.es494.js +51 -2
  820. package/dist/visualization.es494.js.map +1 -1
  821. package/dist/visualization.es495.js +13 -2
  822. package/dist/visualization.es495.js.map +1 -1
  823. package/dist/visualization.es496.js +11 -2
  824. package/dist/visualization.es496.js.map +1 -1
  825. package/dist/visualization.es497.js +23 -30
  826. package/dist/visualization.es497.js.map +1 -1
  827. package/dist/visualization.es498.js +35 -29
  828. package/dist/visualization.es498.js.map +1 -1
  829. package/dist/visualization.es499.js +11 -118
  830. package/dist/visualization.es499.js.map +1 -1
  831. package/dist/visualization.es5.js +6 -6
  832. package/dist/visualization.es50.js +128 -78
  833. package/dist/visualization.es50.js.map +1 -1
  834. package/dist/visualization.es500.js +17 -28
  835. package/dist/visualization.es500.js.map +1 -1
  836. package/dist/visualization.es501.js +25 -10
  837. package/dist/visualization.es501.js.map +1 -1
  838. package/dist/visualization.es502.js +26 -13
  839. package/dist/visualization.es502.js.map +1 -1
  840. package/dist/visualization.es503.js +39 -29
  841. package/dist/visualization.es503.js.map +1 -1
  842. package/dist/visualization.es504.js +18 -27
  843. package/dist/visualization.es504.js.map +1 -1
  844. package/dist/visualization.es505.js +40 -10
  845. package/dist/visualization.es505.js.map +1 -1
  846. package/dist/visualization.es506.js +57 -12
  847. package/dist/visualization.es506.js.map +1 -1
  848. package/dist/visualization.es507.js +3 -17
  849. package/dist/visualization.es507.js.map +1 -1
  850. package/dist/visualization.es508.js +3 -24
  851. package/dist/visualization.es508.js.map +1 -1
  852. package/dist/visualization.es509.js +7 -17
  853. package/dist/visualization.es509.js.map +1 -1
  854. package/dist/visualization.es51.js +35 -7
  855. package/dist/visualization.es51.js.map +1 -1
  856. package/dist/visualization.es510.js +14 -95
  857. package/dist/visualization.es510.js.map +1 -1
  858. package/dist/visualization.es511.js +2 -29
  859. package/dist/visualization.es511.js.map +1 -1
  860. package/dist/visualization.es512.js +2 -72
  861. package/dist/visualization.es512.js.map +1 -1
  862. package/dist/visualization.es513.js +2 -52
  863. package/dist/visualization.es513.js.map +1 -1
  864. package/dist/visualization.es514.js +28 -33
  865. package/dist/visualization.es514.js.map +1 -1
  866. package/dist/visualization.es515.js +7 -42
  867. package/dist/visualization.es515.js.map +1 -1
  868. package/dist/visualization.es516.js +32 -7
  869. package/dist/visualization.es516.js.map +1 -1
  870. package/dist/visualization.es517.js +3 -9
  871. package/dist/visualization.es517.js.map +1 -1
  872. package/dist/visualization.es518.js +3 -6
  873. package/dist/visualization.es518.js.map +1 -1
  874. package/dist/visualization.es519.js +6 -8
  875. package/dist/visualization.es519.js.map +1 -1
  876. package/dist/visualization.es52.js +43 -7
  877. package/dist/visualization.es52.js.map +1 -1
  878. package/dist/visualization.es520.js +12 -6
  879. package/dist/visualization.es520.js.map +1 -1
  880. package/dist/visualization.es521.js +2 -6
  881. package/dist/visualization.es521.js.map +1 -1
  882. package/dist/visualization.es522.js +3 -14
  883. package/dist/visualization.es522.js.map +1 -1
  884. package/dist/visualization.es523.js +3 -5
  885. package/dist/visualization.es523.js.map +1 -1
  886. package/dist/visualization.es524.js +10 -6
  887. package/dist/visualization.es524.js.map +1 -1
  888. package/dist/visualization.es525.js +4 -6
  889. package/dist/visualization.es525.js.map +1 -1
  890. package/dist/visualization.es526.js +32 -6
  891. package/dist/visualization.es526.js.map +1 -1
  892. package/dist/visualization.es527.js +61 -3
  893. package/dist/visualization.es527.js.map +1 -1
  894. package/dist/visualization.es528.js +237 -4
  895. package/dist/visualization.es528.js.map +1 -1
  896. package/dist/visualization.es529.js +990 -7
  897. package/dist/visualization.es529.js.map +1 -1
  898. package/dist/visualization.es53.js +7 -66
  899. package/dist/visualization.es53.js.map +1 -1
  900. package/dist/visualization.es531.js +1 -1
  901. package/dist/visualization.es54.js +44 -113
  902. package/dist/visualization.es54.js.map +1 -1
  903. package/dist/visualization.es541.js +3 -10
  904. package/dist/visualization.es541.js.map +1 -1
  905. package/dist/visualization.es542.js +3 -13
  906. package/dist/visualization.es542.js.map +1 -1
  907. package/dist/visualization.es543.js +16 -8
  908. package/dist/visualization.es543.js.map +1 -1
  909. package/dist/visualization.es544.js +4 -8
  910. package/dist/visualization.es544.js.map +1 -1
  911. package/dist/visualization.es545.js +9 -19
  912. package/dist/visualization.es545.js.map +1 -1
  913. package/dist/visualization.es546.js +4 -62
  914. package/dist/visualization.es546.js.map +1 -1
  915. package/dist/visualization.es547.js +6 -28
  916. package/dist/visualization.es547.js.map +1 -1
  917. package/dist/visualization.es548.js +10 -5
  918. package/dist/visualization.es548.js.map +1 -1
  919. package/dist/visualization.es549.js +7 -3
  920. package/dist/visualization.es549.js.map +1 -1
  921. package/dist/visualization.es55.js +8 -5
  922. package/dist/visualization.es55.js.map +1 -1
  923. package/dist/visualization.es550.js +5 -2
  924. package/dist/visualization.es550.js.map +1 -1
  925. package/dist/visualization.es551.js +3 -281
  926. package/dist/visualization.es551.js.map +1 -1
  927. package/dist/visualization.es552.js +4 -2
  928. package/dist/visualization.es552.js.map +1 -1
  929. package/dist/visualization.es553.js +11 -127
  930. package/dist/visualization.es553.js.map +1 -1
  931. package/dist/visualization.es554.js +8 -17
  932. package/dist/visualization.es554.js.map +1 -1
  933. package/dist/visualization.es555.js +30 -3
  934. package/dist/visualization.es555.js.map +1 -1
  935. package/dist/visualization.es556.js +24 -3
  936. package/dist/visualization.es556.js.map +1 -1
  937. package/dist/visualization.es557.js +50 -14
  938. package/dist/visualization.es557.js.map +1 -1
  939. package/dist/visualization.es558.js +1 -1
  940. package/dist/visualization.es558.js.map +1 -1
  941. package/dist/visualization.es559.js +8 -9
  942. package/dist/visualization.es559.js.map +1 -1
  943. package/dist/visualization.es56.js +64 -68
  944. package/dist/visualization.es56.js.map +1 -1
  945. package/dist/visualization.es560.js +20 -4
  946. package/dist/visualization.es560.js.map +1 -1
  947. package/dist/visualization.es561.js +7 -5
  948. package/dist/visualization.es561.js.map +1 -1
  949. package/dist/visualization.es562.js +6 -9
  950. package/dist/visualization.es562.js.map +1 -1
  951. package/dist/visualization.es563.js +5 -7
  952. package/dist/visualization.es563.js.map +1 -1
  953. package/dist/visualization.es564.js +7 -4
  954. package/dist/visualization.es564.js.map +1 -1
  955. package/dist/visualization.es565.js +15 -3
  956. package/dist/visualization.es565.js.map +1 -1
  957. package/dist/visualization.es566.js +5 -4
  958. package/dist/visualization.es566.js.map +1 -1
  959. package/dist/visualization.es567.js +6 -11
  960. package/dist/visualization.es567.js.map +1 -1
  961. package/dist/visualization.es568.js +34 -9
  962. package/dist/visualization.es568.js.map +1 -1
  963. package/dist/visualization.es569.js +8 -30
  964. package/dist/visualization.es569.js.map +1 -1
  965. package/dist/visualization.es57.js +271 -12
  966. package/dist/visualization.es57.js.map +1 -1
  967. package/dist/visualization.es570.js +10 -24
  968. package/dist/visualization.es570.js.map +1 -1
  969. package/dist/visualization.es571.js +13 -51
  970. package/dist/visualization.es571.js.map +1 -1
  971. package/dist/visualization.es572.js +8 -4
  972. package/dist/visualization.es572.js.map +1 -1
  973. package/dist/visualization.es573.js +8 -9
  974. package/dist/visualization.es573.js.map +1 -1
  975. package/dist/visualization.es574.js +19 -20
  976. package/dist/visualization.es574.js.map +1 -1
  977. package/dist/visualization.es575.js +62 -7
  978. package/dist/visualization.es575.js.map +1 -1
  979. package/dist/visualization.es576.js +28 -7
  980. package/dist/visualization.es576.js.map +1 -1
  981. package/dist/visualization.es577.js +5 -6
  982. package/dist/visualization.es577.js.map +1 -1
  983. package/dist/visualization.es578.js +3 -7
  984. package/dist/visualization.es578.js.map +1 -1
  985. package/dist/visualization.es579.js +2 -16
  986. package/dist/visualization.es579.js.map +1 -1
  987. package/dist/visualization.es58.js +100 -18699
  988. package/dist/visualization.es58.js.map +1 -1
  989. package/dist/visualization.es580.js +18 -4
  990. package/dist/visualization.es580.js.map +1 -1
  991. package/dist/visualization.es581.js +281 -6
  992. package/dist/visualization.es581.js.map +1 -1
  993. package/dist/visualization.es582.js +2 -35
  994. package/dist/visualization.es582.js.map +1 -1
  995. package/dist/visualization.es583.js +127 -8
  996. package/dist/visualization.es583.js.map +1 -1
  997. package/dist/visualization.es584.js +9 -32
  998. package/dist/visualization.es584.js.map +1 -1
  999. package/dist/visualization.es585.js +9 -9
  1000. package/dist/visualization.es585.js.map +1 -1
  1001. package/dist/visualization.es586.js +18 -9
  1002. package/dist/visualization.es586.js.map +1 -1
  1003. package/dist/visualization.es587.js +7 -18
  1004. package/dist/visualization.es587.js.map +1 -1
  1005. package/dist/visualization.es588.js +4 -4
  1006. package/dist/visualization.es588.js.map +1 -1
  1007. package/dist/visualization.es589.js +32 -7
  1008. package/dist/visualization.es589.js.map +1 -1
  1009. package/dist/visualization.es59.js +27 -5
  1010. package/dist/visualization.es59.js.map +1 -1
  1011. package/dist/visualization.es591.js +3 -3
  1012. package/dist/visualization.es592.js +1 -1
  1013. package/dist/visualization.es6.js +16 -16
  1014. package/dist/visualization.es60.js +22 -5
  1015. package/dist/visualization.es60.js.map +1 -1
  1016. package/dist/visualization.es604.js +4 -32
  1017. package/dist/visualization.es604.js.map +1 -1
  1018. package/dist/visualization.es605.js +8 -12
  1019. package/dist/visualization.es605.js.map +1 -1
  1020. package/dist/visualization.es606.js +6 -24
  1021. package/dist/visualization.es606.js.map +1 -1
  1022. package/dist/visualization.es607.js +17 -18
  1023. package/dist/visualization.es607.js.map +1 -1
  1024. package/dist/visualization.es608.js +15 -7
  1025. package/dist/visualization.es608.js.map +1 -1
  1026. package/dist/visualization.es609.js +13 -6
  1027. package/dist/visualization.es609.js.map +1 -1
  1028. package/dist/visualization.es61.js +17 -59
  1029. package/dist/visualization.es61.js.map +1 -1
  1030. package/dist/visualization.es610.js +24 -3
  1031. package/dist/visualization.es610.js.map +1 -1
  1032. package/dist/visualization.es611.js +19 -64
  1033. package/dist/visualization.es611.js.map +1 -1
  1034. package/dist/visualization.es612.js +7 -5
  1035. package/dist/visualization.es612.js.map +1 -1
  1036. package/dist/visualization.es613.js +6 -9
  1037. package/dist/visualization.es613.js.map +1 -1
  1038. package/dist/visualization.es614.js +3 -6
  1039. package/dist/visualization.es614.js.map +1 -1
  1040. package/dist/visualization.es615.js +62 -16
  1041. package/dist/visualization.es615.js.map +1 -1
  1042. package/dist/visualization.es616.js +32 -14
  1043. package/dist/visualization.es616.js.map +1 -1
  1044. package/dist/visualization.es62.js +19 -809
  1045. package/dist/visualization.es62.js.map +1 -1
  1046. package/dist/visualization.es620.js +3 -5
  1047. package/dist/visualization.es620.js.map +1 -1
  1048. package/dist/visualization.es621.js +5 -3
  1049. package/dist/visualization.es621.js.map +1 -1
  1050. package/dist/{visualization.es49.js → visualization.es63.js} +2 -2
  1051. package/dist/{visualization.es49.js.map → visualization.es63.js.map} +1 -1
  1052. package/dist/visualization.es64.js +78 -128
  1053. package/dist/visualization.es64.js.map +1 -1
  1054. package/dist/visualization.es65.js +11 -32
  1055. package/dist/visualization.es65.js.map +1 -1
  1056. package/dist/visualization.es66.js +39 -168
  1057. package/dist/visualization.es66.js.map +1 -1
  1058. package/dist/visualization.es67.js +77 -126
  1059. package/dist/visualization.es67.js.map +1 -1
  1060. package/dist/visualization.es68.js +44 -173
  1061. package/dist/visualization.es68.js.map +1 -1
  1062. package/dist/visualization.es69.js +56 -74
  1063. package/dist/visualization.es69.js.map +1 -1
  1064. package/dist/visualization.es7.js +11 -11
  1065. package/dist/visualization.es70.js +6 -54
  1066. package/dist/visualization.es70.js.map +1 -1
  1067. package/dist/visualization.es71.js +26 -111
  1068. package/dist/visualization.es71.js.map +1 -1
  1069. package/dist/visualization.es72.js +12 -7
  1070. package/dist/visualization.es72.js.map +1 -1
  1071. package/dist/visualization.es73.js +56 -32
  1072. package/dist/visualization.es73.js.map +1 -1
  1073. package/dist/visualization.es74.js +69 -39
  1074. package/dist/visualization.es74.js.map +1 -1
  1075. package/dist/visualization.es75.js +11 -80
  1076. package/dist/visualization.es75.js.map +1 -1
  1077. package/dist/visualization.es76.js +32 -46
  1078. package/dist/visualization.es76.js.map +1 -1
  1079. package/dist/visualization.es77.js +168 -55
  1080. package/dist/visualization.es77.js.map +1 -1
  1081. package/dist/visualization.es78.js +129 -6
  1082. package/dist/visualization.es78.js.map +1 -1
  1083. package/dist/visualization.es79.js +175 -26
  1084. package/dist/visualization.es79.js.map +1 -1
  1085. package/dist/visualization.es8.js +11 -11
  1086. package/dist/visualization.es80.js +74 -13
  1087. package/dist/visualization.es80.js.map +1 -1
  1088. package/dist/visualization.es81.js +29 -58
  1089. package/dist/visualization.es81.js.map +1 -1
  1090. package/dist/visualization.es82.js +65 -52
  1091. package/dist/visualization.es82.js.map +1 -1
  1092. package/dist/visualization.es83.js +46 -39
  1093. package/dist/visualization.es83.js.map +1 -1
  1094. package/dist/visualization.es84.js +3 -42
  1095. package/dist/visualization.es84.js.map +1 -1
  1096. package/dist/visualization.es85.js +46 -5
  1097. package/dist/visualization.es85.js.map +1 -1
  1098. package/dist/visualization.es86.js +3 -4
  1099. package/dist/visualization.es86.js.map +1 -1
  1100. package/dist/visualization.es87.js +282 -18
  1101. package/dist/visualization.es87.js.map +1 -1
  1102. package/dist/visualization.es88.js +18 -4
  1103. package/dist/visualization.es88.js.map +1 -1
  1104. package/dist/visualization.es89.js +34 -26
  1105. package/dist/visualization.es89.js.map +1 -1
  1106. package/dist/visualization.es9.js +1 -1
  1107. package/dist/visualization.es90.js +52 -28
  1108. package/dist/visualization.es90.js.map +1 -1
  1109. package/dist/visualization.es92.js +13 -5
  1110. package/dist/visualization.es92.js.map +1 -1
  1111. package/dist/visualization.es93.js +74 -5
  1112. package/dist/visualization.es93.js.map +1 -1
  1113. package/dist/visualization.es94.js +33 -5
  1114. package/dist/visualization.es94.js.map +1 -1
  1115. package/dist/visualization.es95.js +13 -32
  1116. package/dist/visualization.es95.js.map +1 -1
  1117. package/dist/visualization.es96.js +5 -45
  1118. package/dist/visualization.es96.js.map +1 -1
  1119. package/dist/visualization.es97.js +5 -76
  1120. package/dist/visualization.es97.js.map +1 -1
  1121. package/dist/visualization.es98.js +5 -25
  1122. package/dist/visualization.es98.js.map +1 -1
  1123. package/dist/visualization.es99.js +25 -84
  1124. package/dist/visualization.es99.js.map +1 -1
  1125. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es67.js","sources":["../src/components/Heatmap/scrollable/heatmapExport.tsx"],"sourcesContent":["import { createRoot } from \"react-dom/client\";\nimport { flushSync } from \"react-dom\";\nimport { AxisLeft, AxisBottom } from \"@visx/axis\";\nimport type { ColumnDatum } from \"../types\";\nimport { MAX_CANVAS_EXPORT_DIMENSION, MAX_CANVAS_EXPORT_PIXELS, downloadBlob } from \"../../../utility\";\nimport type { HeatmapLayout } from \"../heatmapLayout\";\nimport { LEGEND_GAP } from \"../heatmapLayout\";\nimport { AXIS_TITLE_FONT_SIZE, TICK_FONT_FAMILY, getXAxisTickLabelProps, yAxisTickLabelProps } from \"../heatmapAxisProps\";\nimport { drawHeatmapCells } from \"../HeatmapCanvasCells\";\n\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\nconst XLINK_NS = \"http://www.w3.org/1999/xlink\";\n\ninterface ScrollableExportOptions {\n layout: HeatmapLayout;\n data: ColumnDatum[];\n xLabel?: string;\n yLabel?: string;\n showLegend: boolean;\n legendSvg: SVGSVGElement | null;\n xAxisTickFormat: (d: number | { valueOf(): number }) => string;\n yAxisTickFormat: (d: number | { valueOf(): number }) => string;\n xAxisTickLabelProps: ReturnType<typeof getXAxisTickLabelProps>;\n}\n\nconst appendTitle = (exportSvg: SVGSVGElement, text: string, x: number, y: number, rotate: boolean) => {\n const titleEl = document.createElementNS(SVG_NS, \"text\");\n titleEl.setAttribute(\"x\", String(x));\n titleEl.setAttribute(\"y\", String(y));\n if (rotate) titleEl.setAttribute(\"transform\", `rotate(-90, ${x}, ${y})`);\n titleEl.setAttribute(\"text-anchor\", \"middle\");\n titleEl.setAttribute(\"dominant-baseline\", \"middle\");\n titleEl.setAttribute(\"font-size\", String(AXIS_TITLE_FONT_SIZE));\n titleEl.setAttribute(\"font-family\", TICK_FONT_FAMILY);\n titleEl.textContent = text;\n exportSvg.appendChild(titleEl);\n};\n\nconst appendClone = (exportSvg: SVGSVGElement, source: SVGSVGElement, x: number, y: number) => {\n const group = document.createElementNS(SVG_NS, \"g\");\n group.setAttribute(\"transform\", `translate(${x},${y})`);\n source.childNodes.forEach((node) => group.appendChild(node.cloneNode(true)));\n exportSvg.appendChild(group);\n};\n\n// Resolution is capped (never upscaled) so a canvas can't exceed what browsers will reliably\n// allocate - past that, some browsers just hand back a blank canvas instead of erroring.\nfunction computeExportScale(width: number, height: number): number {\n const desiredScale = window.devicePixelRatio || 2;\n return Math.min(\n desiredScale,\n MAX_CANVAS_EXPORT_DIMENSION / width,\n MAX_CANVAS_EXPORT_DIMENSION / height,\n Math.sqrt(MAX_CANVAS_EXPORT_PIXELS / (width * height))\n );\n}\n\n// Rasterizes the full (unwindowed) cell grid onto a canvas using the same paint routine the\n// live scrollable grid and minimap use for their own canvases (drawHeatmapCells). This is the\n// key difference from every other layer here: a large grid (e.g. 1000x1000 = 1M cells) rendered\n// as individual SVG shapes via React would mean 1M DOM nodes built synchronously and then\n// serialized into a multi-hundred-MB XML string - that's what used to hang/crash the tab.\n// Painting into a canvas instead collapses that to a bounded number of fillRect calls, which is\n// exactly how the minimap already handles full-dataset draws.\nfunction rasterizeCells(o: ScrollableExportOptions, scale: number): HTMLCanvasElement | null {\n const { xMax, yMax, canvasCellParams, numRows } = o.layout;\n if (xMax <= 0 || yMax <= 0) return null;\n\n const canvas = document.createElement(\"canvas\");\n canvas.width = Math.max(1, Math.round(xMax * scale));\n canvas.height = Math.max(1, Math.round(yMax * scale));\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return null;\n\n ctx.setTransform(scale, 0, 0, scale, 0, 0);\n const range = { colStart: 0, colEnd: Math.max(0, o.data.length - 1), rowStart: 0, rowEnd: Math.max(0, numRows - 1) };\n drawHeatmapCells(ctx, canvasCellParams, range, null);\n return canvas;\n}\n\n// Only used to embed the cell layer in an actual downloadable .svg file (see\n// buildScrollableExportSVG) - the PNG path (downloadScrollableHeatmapPNG below) draws the\n// rasterized canvas directly onto the output canvas instead, so it never needs this as a string.\nfunction renderCellsToDataURL(o: ScrollableExportOptions): string | null {\n const { xMax, yMax } = o.layout;\n if (xMax <= 0 || yMax <= 0) return null;\n const canvas = rasterizeCells(o, computeExportScale(xMax, yMax));\n return canvas ? canvas.toDataURL(\"image/png\") : null;\n}\n\nconst appendCellsImage = (exportSvg: SVGSVGElement, dataUrl: string, x: number, y: number, width: number, height: number) => {\n const image = document.createElementNS(SVG_NS, \"image\");\n image.setAttribute(\"x\", String(x));\n image.setAttribute(\"y\", String(y));\n image.setAttribute(\"width\", String(width));\n image.setAttribute(\"height\", String(height));\n image.setAttribute(\"preserveAspectRatio\", \"none\");\n // Both attributes are set for compatibility: xlink:href is what older SVG renderers (and some\n // image editors) still expect, href is the modern SVG2/browser-native attribute.\n image.setAttributeNS(XLINK_NS, \"href\", dataUrl);\n image.setAttribute(\"href\", dataUrl);\n exportSvg.appendChild(image);\n};\n\n// Builds a standalone, off-DOM <svg> at full content size for export. The on-screen row/column\n// axis panes (SVGs windowed to the visible tick range) only ever hold a slice of the full grid -\n// they can't just be cloned for export without capturing an incomplete/mispositioned snapshot -\n// so both are rendered fresh here in one detached tree, synchronously, full grid, no windowing,\n// purely to snapshot into the export SVG below. The cell layer is handled separately (see\n// renderCellsToDataURL above) since it doesn't have this problem's flip side: rendering it fresh\n// as SVG shapes is exactly what's too expensive at full-grid scale.\nexport function buildScrollableExportSVG(o: ScrollableExportOptions, { includeCells = true }: { includeCells?: boolean } = {}): SVGSVGElement | null {\n const { layout } = o;\n const {\n marg, xMax, yMax, xScale, yScale, numRows, xTickValues, yTickValues, yTickLabelWidth, xTickLabelHeight,\n yTitleWidth, xTitleHeight,\n } = layout;\n\n const exportSvg = document.createElementNS(SVG_NS, \"svg\") as SVGSVGElement;\n exportSvg.setAttribute(\"width\", String(marg.left + xMax + marg.right));\n exportSvg.setAttribute(\"height\", String(marg.top + yMax + marg.bottom));\n\n if (includeCells) {\n const cellsDataUrl = renderCellsToDataURL(o);\n if (cellsDataUrl) appendCellsImage(exportSvg, cellsDataUrl, marg.left, marg.top, xMax, yMax);\n }\n\n let fullRowAxis: SVGSVGElement | null = null;\n let fullColAxis: SVGSVGElement | null = null;\n const exportContainer = document.createElement(\"div\");\n const exportRoot = createRoot(exportContainer);\n flushSync(() => {\n exportRoot.render(\n <>\n <svg width={yTickLabelWidth} height={yMax} ref={(el) => { fullRowAxis = el; }}>\n <g transform={`translate(${yTickLabelWidth},0)`}>\n <AxisLeft\n scale={yScale}\n numTicks={numRows}\n tickValues={yTickValues}\n tickFormat={o.yAxisTickFormat}\n tickLabelProps={yAxisTickLabelProps}\n />\n </g>\n </svg>\n <svg width={xMax} height={xTickLabelHeight} ref={(el) => { fullColAxis = el; }}>\n <AxisBottom\n top={0}\n scale={xScale}\n numTicks={o.data.length}\n tickFormat={o.xAxisTickFormat}\n tickValues={xTickValues}\n tickLabelProps={o.xAxisTickLabelProps}\n />\n </svg>\n </>\n );\n });\n if (fullRowAxis) appendClone(exportSvg, fullRowAxis, yTitleWidth, marg.top);\n if (fullColAxis) appendClone(exportSvg, fullColAxis, marg.left, marg.top + yMax);\n exportRoot.unmount();\n\n if (o.showLegend && o.legendSvg) {\n appendClone(exportSvg, o.legendSvg, marg.left + xMax + LEGEND_GAP, marg.top);\n }\n\n // The axis titles live in their own always-visible panes on screen (so scrolling can't\n // carry them out of view) rather than as visx's built-in centered-on-the-full-axis label,\n // so they're added here directly instead of being cloned from a live pane.\n if (o.yLabel) appendTitle(exportSvg, o.yLabel, yTitleWidth / 2, marg.top + yMax / 2, true);\n if (o.xLabel) appendTitle(exportSvg, o.xLabel, marg.left + xMax / 2, marg.top + yMax + xTickLabelHeight + xTitleHeight / 2, false);\n\n return exportSvg;\n}\n\n// Renders a scrollable heatmap straight to a downloadable PNG in a single raster pass: the cell\n// grid is drawn once (rasterizeCells) directly onto the output canvas, and only the much smaller\n// axes/legend/titles are round-tripped through SVG-to-image to rasterize on top of it. This\n// deliberately avoids buildScrollableExportSVG's normal cells-as-embedded-image path (used for\n// the actual .svg download, where a raster layer has to be embedded as a data URL to produce a\n// valid standalone file) - base64-encoding a full-resolution cell canvas into an XML string,\n// then decoding that string back into an image to redraw onto a second full-size canvas, doubles\n// both the memory footprint and the encode/decode work for no benefit here, and was enough to\n// crash the tab on a large export. No DOM attachment is needed either: unlike downloadSVGAsPNG,\n// nothing here reads clientWidth/clientHeight - the output size comes straight from the layout.\nexport function downloadScrollableHeatmapPNG(o: ScrollableExportOptions, fileName: string): void {\n const { marg, xMax, yMax } = o.layout;\n if (xMax <= 0 || yMax <= 0) return;\n\n const fullWidth = marg.left + xMax + marg.right;\n const fullHeight = marg.top + yMax + marg.bottom;\n const scale = computeExportScale(fullWidth, fullHeight);\n\n const canvas = document.createElement(\"canvas\");\n canvas.width = Math.max(1, Math.round(fullWidth * scale));\n canvas.height = Math.max(1, Math.round(fullHeight * scale));\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return;\n\n const cellsCanvas = rasterizeCells(o, scale);\n if (cellsCanvas) ctx.drawImage(cellsCanvas, marg.left * scale, marg.top * scale);\n\n const finish = (blob: Blob | null) => {\n if (blob) downloadBlob(blob, fileName);\n };\n\n const axesSvg = buildScrollableExportSVG(o, { includeCells: false });\n if (!axesSvg) {\n canvas.toBlob(finish, \"image/png\", 1);\n return;\n }\n\n const svgString = new XMLSerializer().serializeToString(axesSvg);\n const svgBlob = new Blob([svgString], { type: \"image/svg+xml;charset=utf-8\" });\n const url = URL.createObjectURL(svgBlob);\n const img = new Image();\n img.onload = () => {\n ctx.drawImage(img, 0, 0, canvas.width, canvas.height);\n URL.revokeObjectURL(url);\n canvas.toBlob(finish, \"image/png\", 1);\n };\n img.onerror = () => URL.revokeObjectURL(url);\n img.src = url;\n}\n\n// downloadSVGAsPNG reads the element's layout box asynchronously (after its image loads), so\n// an off-DOM export node has to stay attached (off-screen) until onComplete fires. The\n// off-screen positioning goes on a wrapper div, never on the <svg> itself - that svg is what\n// gets serialized and downloaded, so any inline style set directly on it (e.g. `left:\n// -99999px`) would be baked into the exported file, rendering everything pushed off-canvas\n// and out of view - the exact \"blank image\" bug this replaced.\nexport function withOffscreenExportSVG(o: ScrollableExportOptions, run: (svg: SVGSVGElement, onDone: () => void) => void): void {\n const svg = buildScrollableExportSVG(o);\n if (!svg) return;\n const wrapper = document.createElement(\"div\");\n wrapper.style.position = \"absolute\";\n wrapper.style.top = \"0\";\n wrapper.style.left = \"-99999px\";\n wrapper.appendChild(svg);\n document.body.appendChild(wrapper);\n run(svg, () => {\n if (wrapper.parentNode) document.body.removeChild(wrapper);\n });\n}\n"],"names":["SVG_NS","XLINK_NS","appendTitle","exportSvg","text","x","y","rotate","titleEl","document","createElementNS","setAttribute","String","AXIS_TITLE_FONT_SIZE","TICK_FONT_FAMILY","textContent","appendChild","appendClone","source","group","childNodes","forEach","node","cloneNode","computeExportScale","width","height","desiredScale","window","devicePixelRatio","Math","min","MAX_CANVAS_EXPORT_DIMENSION","sqrt","MAX_CANVAS_EXPORT_PIXELS","rasterizeCells","o","scale","xMax","yMax","canvasCellParams","numRows","layout","canvas","createElement","max","round","ctx","getContext","setTransform","range","colStart","colEnd","data","length","rowStart","rowEnd","drawHeatmapCells","renderCellsToDataURL","toDataURL","appendCellsImage","dataUrl","image","setAttributeNS","buildScrollableExportSVG","includeCells","marg","xScale","yScale","xTickValues","yTickValues","yTickLabelWidth","xTickLabelHeight","yTitleWidth","xTitleHeight","left","right","top","bottom","cellsDataUrl","fullRowAxis","fullColAxis","exportContainer","exportRoot","createRoot","flushSync","render","jsxs","Fragment","jsx","el","AxisLeft","yAxisTickFormat","yAxisTickLabelProps","AxisBottom","xAxisTickFormat","xAxisTickLabelProps","unmount","showLegend","legendSvg","LEGEND_GAP","yLabel","xLabel","downloadScrollableHeatmapPNG","fileName","fullWidth","fullHeight","cellsCanvas","drawImage","finish","blob","downloadBlob","axesSvg","toBlob","svgString","XMLSerializer","serializeToString","svgBlob","Blob","type","url","URL","createObjectURL","img","Image","onload","revokeObjectURL","onerror","src","withOffscreenExportSVG","run","svg","wrapper","style","position","body","parentNode","removeChild"],"mappings":"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"}
1
+ {"version":3,"file":"visualization.es67.js","sources":["../src/components/Histogram/HistogramTooltip.tsx"],"sourcesContent":["import React, { useImperativeHandle, useState } from 'react';\nimport { TooltipWithBounds } from '@visx/tooltip';\nimport { HistogramBin } from './types';\n\nexport interface HistogramTooltipHandle {\n show: (bin: HistogramBin, left: number, top: number) => void;\n hide: () => void;\n}\n\ninterface HistogramTooltipProps {\n multiSeries: boolean;\n tooltipBody?: (bin: HistogramBin) => React.ReactElement;\n ref: React.Ref<HistogramTooltipHandle>;\n}\n\nconst HistogramTooltip = ({ multiSeries, tooltipBody, ref }: HistogramTooltipProps) => {\n const [state, setState] = useState<{ open: boolean; data?: HistogramBin; left?: number; top?: number }>({ open: false });\n\n useImperativeHandle(ref, () => ({\n show: (bin, left, top) => setState({ open: true, data: bin, left, top }),\n hide: () => setState((s) => ({ ...s, open: false })),\n }));\n\n if (!state.open || !state.data) return null;\n\n const { data, left, top } = state;\n\n return (\n <TooltipWithBounds left={left} top={top}>\n {tooltipBody ? (\n tooltipBody(data)\n ) : (\n <div style={{ fontSize: 12 }}>\n <div>\n <strong>Range:</strong> {data.x0.toFixed(2)}, {data.x1.toFixed(2)}\n </div>\n {multiSeries ? (\n data.series.map((s) => (\n <div key={s.label} style={{ display: 'flex', alignItems: 'center', gap: 4 }}>\n <span style={{ width: 8, height: 8, borderRadius: 2, backgroundColor: s.color, display: 'inline-block' }} />\n <span><strong>{s.label}:</strong> {s.count}</span>\n </div>\n ))\n ) : (\n <div><strong>Count:</strong> {data.count}</div>\n )}\n </div>\n )}\n </TooltipWithBounds>\n );\n};\n\nexport default HistogramTooltip;\n"],"names":["HistogramTooltip","t0","$","_c","multiSeries","tooltipBody","ref","t1","Symbol","for","open","state","setState","useState","t2","show","bin","left","top","data","hide","_temp","useImperativeHandle","left_0","top_0","t3","jsxs","fontSize","jsx","x0","toFixed","x1","series","map","_temp2","count","t4","TooltipWithBounds","s","s_0","display","alignItems","gap","width","height","borderRadius","backgroundColor","color","label"],"mappings":"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"}
@@ -1,178 +1,49 @@
1
- import { jsxs as n, Fragment as ri, jsx as i } from "react/jsx-runtime";
2
- import { useId as oi, useCallback as ai, useState as ni, useRef as si } from "react";
3
- import di from "./visualization.es120.js";
4
- import ci from "./visualization.es123.js";
5
- import hi from "./visualization.es124.js";
6
- import { TICK_FONT_FAMILY as C, AXIS_TITLE_FONT_SIZE as M, yAxisTickLabelProps as mi } from "./visualization.es65.js";
7
- import { MINI_MAP_HEIGHT as pi, LEGEND_GAP as b } from "./visualization.es66.js";
8
- import { useHeatmapCanvasGrid as fi } from "./visualization.es125.js";
9
- import { useScrollToSelection as gi } from "./visualization.es126.js";
10
- import xi from "./visualization.es27.js";
11
- import vi from "./visualization.es13.js";
12
- import ui from "./visualization.es32.js";
13
- const R = 10, Si = ({
14
- legendSvgRef: $,
15
- layout: I,
16
- data: L,
17
- showMiniMap: p,
18
- showLegend: f,
19
- xLabel: P,
20
- yLabel: S,
21
- tooltipBody: g,
22
- onClick: H,
23
- selectedCells: _,
24
- scrollToSelection: A,
25
- xAxisTickFormat: E,
26
- yAxisTickFormat: N,
27
- xAxisTickLabelProps: V
1
+ import { jsx as g } from "react/jsx-runtime";
2
+ import { memo as X, useState as v } from "react";
3
+ import { getAnimationProps as w } from "./visualization.es23.js";
4
+ import { motion as x } from "./visualization.es28.js";
5
+ import B from "./visualization.es102.js";
6
+ const E = X(({
7
+ bin: r,
8
+ x: p,
9
+ barWidth: l,
10
+ yScale: n,
11
+ animationType: c,
12
+ binIndex: f,
13
+ svgRef: i,
14
+ tooltipRef: s,
15
+ onBarClicked: u
28
16
  }) => {
29
- const {
30
- numRows: F,
31
- marg: G,
32
- xMax: d,
33
- yMax: c,
34
- viewportWidth: e,
35
- viewportHeight: t,
36
- yTitleWidth: l,
37
- yTickLabelWidth: o,
38
- xTitleHeight: s,
39
- xTickLabelHeight: a,
40
- binWidth: O,
41
- xTickLeftOverhangMax: x,
42
- legendWidth: h,
43
- xScale: W,
44
- yScale: j,
45
- xTickValues: X,
46
- yTickValues: B,
47
- stableColors: z,
48
- minValue: D,
49
- maxValue: Y,
50
- canvasCellParams: m
51
- } = I, {
52
- canvasRef: K,
53
- mainPaneRef: v,
54
- canvasTooltipRef: Z,
55
- setMainPaneNode: q,
56
- handleGridScroll: J,
57
- axisScrollPos: r,
58
- visibleXTickValues: Q,
59
- visibleYTickValues: U,
60
- canvasHandlers: ii
61
- } = fi({
62
- canvasCellParams: m,
63
- viewportWidth: e,
64
- viewportHeight: t,
65
- xTickValues: X,
66
- yTickValues: B,
67
- isScrollable: !0,
68
- onClick: H
17
+ const [h, m] = v(!1), d = c ? x.g : "g", M = w(c, f);
18
+ let a = 0;
19
+ const Y = r.series.map((t, e) => {
20
+ const o = a;
21
+ return a += t.count, {
22
+ s: t,
23
+ si: e,
24
+ segY: n(o + t.count),
25
+ segHeight: Math.max(n(o) - n(o + t.count), 0)
26
+ };
69
27
  });
70
- gi({
71
- mainPaneRef: v,
72
- selectedCells: _,
73
- scrollToSelection: A,
74
- isScrollable: !0,
75
- binWidth: O,
76
- viewportWidth: e
77
- });
78
- const u = oi(), w = Math.max(0, x - r.left), y = ai((ti, li) => {
79
- v.current?.scrollTo({
80
- left: ti,
81
- top: li
82
- });
83
- }, []), [ei, T] = ni(!1), k = si(null);
84
- return /* @__PURE__ */ n(ri, { children: [
85
- /* @__PURE__ */ n("div", { style: {
86
- display: "flex",
87
- flexDirection: "column"
88
- }, children: [
89
- p && /* @__PURE__ */ i("div", { ref: k, style: {
90
- marginLeft: l + o,
91
- position: "relative",
92
- width: e
93
- }, children: /* @__PURE__ */ i(ci, { canvasCellParams: m, xMax: d, yMax: c, viewportWidth: e, viewportHeight: t, scrollLeft: r.left, scrollTop: r.top, width: e, height: pi, onNavigate: y, onCanvasClick: () => T(!0) }) }),
94
- /* @__PURE__ */ n("div", { style: {
95
- display: "grid",
96
- gridTemplateColumns: f ? `${l}px ${o}px ${e}px ${b + h}px` : `${l}px ${o}px ${e}px`,
97
- gridTemplateRows: `${G.top}px ${t}px ${a}px ${s}px`
98
- }, children: [
99
- /* @__PURE__ */ i("div", { style: {
100
- gridColumn: 1,
101
- gridRow: 2,
102
- width: l,
103
- height: t,
104
- display: "flex",
105
- alignItems: "center",
106
- justifyContent: "center"
107
- }, children: /* @__PURE__ */ i("svg", { width: l, height: t, children: /* @__PURE__ */ i("text", { x: l / 2, y: t / 2, transform: `rotate(-90, ${l / 2}, ${t / 2})`, textAnchor: "middle", dominantBaseline: "middle", fontSize: M, fontFamily: C, children: S ?? "" }) }) }),
108
- /* @__PURE__ */ i("div", { style: {
109
- gridColumn: 2,
110
- gridRow: 2,
111
- width: o,
112
- height: t,
113
- overflow: "hidden"
114
- }, children: /* @__PURE__ */ i("svg", { width: o, height: t, children: /* @__PURE__ */ i("g", { transform: `translate(${o},${-r.top})`, children: /* @__PURE__ */ i(xi, { scale: j, numTicks: F, tickValues: U, tickFormat: N, tickLabelProps: mi }) }) }) }),
115
- /* @__PURE__ */ i("div", { ref: q, onScroll: J, style: {
116
- gridColumn: 3,
117
- gridRow: 2,
118
- width: e,
119
- height: t,
120
- overflow: "auto",
121
- overscrollBehavior: "contain",
122
- position: "relative"
123
- }, children: /* @__PURE__ */ i("div", { style: {
124
- width: d,
125
- height: c,
126
- position: "relative"
127
- }, children: /* @__PURE__ */ i("canvas", { ref: K, width: e * (window.devicePixelRatio || 1), height: t * (window.devicePixelRatio || 1), style: {
128
- width: e,
129
- height: t,
130
- position: "sticky",
131
- top: 0,
132
- left: 0,
133
- display: "block",
134
- cursor: "default"
135
- }, ...ii }) }) }),
136
- g && /* @__PURE__ */ i(vi, { ref: Z, children: g }),
137
- /* @__PURE__ */ i("div", { style: {
138
- gridColumn: 3,
139
- gridRow: 3,
140
- width: e,
141
- height: a,
142
- overflow: "visible"
143
- }, children: /* @__PURE__ */ n("svg", { width: e, height: a, style: {
144
- overflow: "visible"
145
- }, children: [
146
- /* @__PURE__ */ i("defs", { children: /* @__PURE__ */ n("clipPath", { id: u, children: [
147
- /* @__PURE__ */ i("rect", { x: 0, y: 0, width: e, height: a }),
148
- x > 0 && /* @__PURE__ */ i("rect", { x: -w, y: R, width: w, height: Math.max(0, a - R) })
149
- ] }) }),
150
- /* @__PURE__ */ i("g", { clipPath: `url(#${u})`, children: /* @__PURE__ */ i("g", { transform: `translate(${-r.left},0)`, children: /* @__PURE__ */ i(ui, { top: 0, scale: W, numTicks: L.length, tickFormat: E, tickValues: Q, tickLabelProps: V }) }) })
151
- ] }) }),
152
- /* @__PURE__ */ i("div", { style: {
153
- gridColumn: 3,
154
- gridRow: 4,
155
- width: e,
156
- height: s,
157
- display: "flex",
158
- alignItems: "center",
159
- justifyContent: "center"
160
- }, children: /* @__PURE__ */ i("svg", { width: e, height: s, children: /* @__PURE__ */ i("text", { x: e / 2, y: s / 2, textAnchor: "middle", dominantBaseline: "middle", fontSize: M, fontFamily: C, children: P ?? "" }) }) }),
161
- f && /* @__PURE__ */ i("div", { style: {
162
- gridColumn: 4,
163
- gridRow: 2,
164
- width: h,
165
- marginLeft: b,
166
- height: t
167
- }, children: /* @__PURE__ */ i("svg", { width: h, height: t, ref: $, style: {
168
- overflow: "visible"
169
- }, children: /* @__PURE__ */ i(di, { colors: z, minValue: D, maxValue: Y, height: t }) }) })
170
- ] })
171
- ] }),
172
- p && ei && /* @__PURE__ */ i(hi, { onClose: () => T(!1), containerRef: k, canvasCellParams: m, xMax: d, yMax: c, viewportWidth: e, viewportHeight: t, scrollLeft: r.left, scrollTop: r.top, onNavigate: y })
173
- ] });
174
- };
28
+ return /* @__PURE__ */ g(d, { ...M, onMouseEnter: (t) => {
29
+ m(!0);
30
+ const e = i.current?.getBoundingClientRect();
31
+ s.current?.show(r, e ? t.clientX - e.left + 10 : t.pageX, e ? t.clientY - e.top : t.pageY);
32
+ }, onMouseMove: (t) => {
33
+ const e = i.current?.getBoundingClientRect();
34
+ s.current?.show(r, e ? t.clientX - e.left + 10 : t.pageX, e ? t.clientY - e.top : t.pageY);
35
+ }, onMouseLeave: () => {
36
+ m(!1), s.current?.hide();
37
+ }, children: Y.map(({
38
+ s: t,
39
+ si: e,
40
+ segY: o,
41
+ segHeight: H
42
+ }) => /* @__PURE__ */ g(B, { x: p, y: o, width: l, height: H, fill: t.color, opacity: 0.85, stroke: h ? "#000000" : "none", style: {
43
+ cursor: u ? "pointer" : "default"
44
+ }, onClick: () => u?.(r) }, `seg-${e}`)) });
45
+ });
175
46
  export {
176
- Si as default
47
+ E as default
177
48
  };
178
49
  //# sourceMappingURL=visualization.es68.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es68.js","sources":["../src/components/Heatmap/scrollable/HeatmapScrollableGrid.tsx"],"sourcesContent":["import { useCallback, useId, useRef, useState, type ReactElement, type RefObject } from \"react\";\nimport { AxisLeft, AxisBottom } from \"@visx/axis\";\nimport type { ColumnDatum, HeatmapCellId } from \"../types\";\nimport type { AnyBin } from \"../HeatmapCells\";\nimport HeatmapLegend from \"../HeatmapLegend\";\nimport HeatmapMiniMap from \"./HeatmapMiniMap\";\nimport HeatmapMiniMapPopup from \"./HeatmapMiniMapPopup\";\nimport { PlotTooltip } from \"../../../tooltip\";\nimport { TICK_FONT_FAMILY, AXIS_TITLE_FONT_SIZE, yAxisTickLabelProps, type getXAxisTickLabelProps } from \"../heatmapAxisProps\";\nimport { LEGEND_GAP, MINI_MAP_HEIGHT, type HeatmapLayout } from \"../heatmapLayout\";\nimport { useHeatmapCanvasGrid } from \"../hooks/useHeatmapCanvasGrid\";\nimport { useScrollToSelection } from \"../hooks/useScrollToSelection\";\n\nconst X_AXIS_OVERHANG_CLIP_HEIGHT = 10;\n\nexport interface HeatmapScrollableGridProps {\n legendSvgRef: RefObject<SVGSVGElement | null>;\n layout: HeatmapLayout;\n data: ColumnDatum[];\n showMiniMap: boolean;\n showLegend: boolean;\n xLabel?: string;\n yLabel?: string;\n tooltipBody?: (bin: AnyBin) => ReactElement;\n onClick?: (bin: AnyBin) => void;\n selectedCells?: HeatmapCellId[];\n scrollToSelection?: boolean;\n xAxisTickFormat: (d: number | { valueOf(): number }) => string;\n yAxisTickFormat: (d: number | { valueOf(): number }) => string;\n xAxisTickLabelProps: ReturnType<typeof getXAxisTickLabelProps>;\n}\n\nconst HeatmapScrollableGrid = ({\n legendSvgRef, layout, data, showMiniMap, showLegend, xLabel, yLabel, tooltipBody, onClick,\n selectedCells, scrollToSelection, xAxisTickFormat, yAxisTickFormat, xAxisTickLabelProps,\n}: HeatmapScrollableGridProps) => {\n const {\n numRows, marg, xMax, yMax, viewportWidth, viewportHeight, yTitleWidth, yTickLabelWidth,\n xTitleHeight, xTickLabelHeight, binWidth, xTickLeftOverhangMax, legendWidth,\n xScale, yScale, xTickValues, yTickValues, stableColors, minValue, maxValue, canvasCellParams,\n } = layout;\n\n const {\n canvasRef, mainPaneRef, canvasTooltipRef, setMainPaneNode, handleGridScroll, axisScrollPos,\n visibleXTickValues, visibleYTickValues, canvasHandlers,\n } = useHeatmapCanvasGrid({\n canvasCellParams, viewportWidth, viewportHeight, xTickValues, yTickValues, isScrollable: true, onClick,\n });\n useScrollToSelection({ mainPaneRef, selectedCells, scrollToSelection, isScrollable: true, binWidth, viewportWidth });\n\n const xTickClipId = useId();\n // Shrinks to 0 as soon as scrolling moves away from the start, so the reveal only ever applies\n // to column 0's genuine edge case (nothing real to its left) and doesn't linger over the y-axis\n // pane at other scroll positions, where a real, adjacent column - not empty space - would\n // otherwise show through.\n const xTickLeftOverhang = Math.max(0, xTickLeftOverhangMax - axisScrollPos.left);\n\n // Drives the minimap: scrollTo dispatches a native scroll event on mainPaneRef, which\n // handleGridScroll picks up the same way it would a manual scroll (repainting the canvas and\n // updating axisScrollPos, which also moves the minimap's own viewport rectangle).\n const handleMiniMapNavigate = useCallback((left: number, top: number) => {\n mainPaneRef.current?.scrollTo({ left, top });\n }, []);\n\n const [isMiniMapExpanded, setIsMiniMapExpanded] = useState(false);\n const miniMapContainerRef = useRef<HTMLDivElement | null>(null);\n\n return (\n <>\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {showMiniMap && (\n <div ref={miniMapContainerRef} style={{ marginLeft: yTitleWidth + yTickLabelWidth, position: \"relative\", width: viewportWidth }}>\n <HeatmapMiniMap\n canvasCellParams={canvasCellParams}\n xMax={xMax}\n yMax={yMax}\n viewportWidth={viewportWidth}\n viewportHeight={viewportHeight}\n scrollLeft={axisScrollPos.left}\n scrollTop={axisScrollPos.top}\n width={viewportWidth}\n height={MINI_MAP_HEIGHT}\n onNavigate={handleMiniMapNavigate}\n onCanvasClick={() => setIsMiniMapExpanded(true)}\n />\n </div>\n )}\n <div\n style={{\n display: \"grid\",\n gridTemplateColumns: showLegend\n ? `${yTitleWidth}px ${yTickLabelWidth}px ${viewportWidth}px ${LEGEND_GAP + legendWidth}px`\n : `${yTitleWidth}px ${yTickLabelWidth}px ${viewportWidth}px`,\n gridTemplateRows: `${marg.top}px ${viewportHeight}px ${xTickLabelHeight}px ${xTitleHeight}px`,\n }}\n >\n <div style={{ gridColumn: 1, gridRow: 2, width: yTitleWidth, height: viewportHeight, display: \"flex\", alignItems: \"center\", justifyContent: \"center\" }}>\n <svg width={yTitleWidth} height={viewportHeight}>\n <text\n x={yTitleWidth / 2}\n y={viewportHeight / 2}\n transform={`rotate(-90, ${yTitleWidth / 2}, ${viewportHeight / 2})`}\n textAnchor=\"middle\"\n dominantBaseline=\"middle\"\n fontSize={AXIS_TITLE_FONT_SIZE}\n fontFamily={TICK_FONT_FAMILY}\n >\n {yLabel ?? \"\"}\n </text>\n </svg>\n </div>\n <div style={{ gridColumn: 2, gridRow: 2, width: yTickLabelWidth, height: viewportHeight, overflow: \"hidden\" }}>\n <svg width={yTickLabelWidth} height={viewportHeight}>\n <g transform={`translate(${yTickLabelWidth},${-axisScrollPos.top})`}>\n <AxisLeft\n scale={yScale}\n numTicks={numRows}\n tickValues={visibleYTickValues}\n tickFormat={yAxisTickFormat}\n tickLabelProps={yAxisTickLabelProps}\n />\n </g>\n </svg>\n </div>\n <div\n ref={setMainPaneNode}\n onScroll={handleGridScroll}\n style={{ gridColumn: 3, gridRow: 2, width: viewportWidth, height: viewportHeight, overflow: \"auto\", overscrollBehavior: \"contain\", position: \"relative\" }}\n >\n <div style={{ width: xMax, height: yMax, position: \"relative\" }}>\n <canvas\n ref={canvasRef}\n width={viewportWidth * (window.devicePixelRatio || 1)}\n height={viewportHeight * (window.devicePixelRatio || 1)}\n style={{\n width: viewportWidth,\n height: viewportHeight,\n position: \"sticky\",\n top: 0,\n left: 0,\n display: \"block\",\n cursor: \"default\",\n }}\n {...canvasHandlers}\n />\n </div>\n </div>\n {tooltipBody && <PlotTooltip ref={canvasTooltipRef}>{tooltipBody}</PlotTooltip>}\n <div style={{ gridColumn: 3, gridRow: 3, width: viewportWidth, height: xTickLabelHeight, overflow: \"visible\" }}>\n <svg width={viewportWidth} height={xTickLabelHeight} style={{ overflow: \"visible\" }}>\n <defs>\n <clipPath id={xTickClipId}>\n <rect x={0} y={0} width={viewportWidth} height={xTickLabelHeight} />\n {xTickLeftOverhangMax > 0 && (\n <rect\n x={-xTickLeftOverhang}\n y={X_AXIS_OVERHANG_CLIP_HEIGHT}\n width={xTickLeftOverhang}\n height={Math.max(0, xTickLabelHeight - X_AXIS_OVERHANG_CLIP_HEIGHT)}\n />\n )}\n </clipPath>\n </defs>\n <g clipPath={`url(#${xTickClipId})`}>\n <g transform={`translate(${-axisScrollPos.left},0)`}>\n <AxisBottom\n top={0}\n scale={xScale}\n numTicks={data.length}\n tickFormat={xAxisTickFormat}\n tickValues={visibleXTickValues}\n tickLabelProps={xAxisTickLabelProps}\n />\n </g>\n </g>\n </svg>\n </div>\n {/* X-axis title: fixed in place (not scroll-synced) so it's always visible, centered on\n the visible viewport rather than the full data range */}\n <div style={{ gridColumn: 3, gridRow: 4, width: viewportWidth, height: xTitleHeight, display: \"flex\", alignItems: \"center\", justifyContent: \"center\" }}>\n <svg width={viewportWidth} height={xTitleHeight}>\n <text\n x={viewportWidth / 2}\n y={xTitleHeight / 2}\n textAnchor=\"middle\"\n dominantBaseline=\"middle\"\n fontSize={AXIS_TITLE_FONT_SIZE}\n fontFamily={TICK_FONT_FAMILY}\n >\n {xLabel ?? \"\"}\n </text>\n </svg>\n </div>\n {showLegend && (\n <div style={{ gridColumn: 4, gridRow: 2, width: legendWidth, marginLeft: LEGEND_GAP, height: viewportHeight }}>\n <svg width={legendWidth} height={viewportHeight} ref={legendSvgRef} style={{ overflow: \"visible\" }}>\n <HeatmapLegend\n colors={stableColors}\n minValue={minValue}\n maxValue={maxValue}\n height={viewportHeight}\n />\n </svg>\n </div>\n )}\n </div>\n </div>\n {showMiniMap && isMiniMapExpanded && (\n <HeatmapMiniMapPopup\n onClose={() => setIsMiniMapExpanded(false)}\n containerRef={miniMapContainerRef}\n canvasCellParams={canvasCellParams}\n xMax={xMax}\n yMax={yMax}\n viewportWidth={viewportWidth}\n viewportHeight={viewportHeight}\n scrollLeft={axisScrollPos.left}\n scrollTop={axisScrollPos.top}\n onNavigate={handleMiniMapNavigate}\n />\n )}\n </>\n );\n};\n\nexport default HeatmapScrollableGrid;\n"],"names":["X_AXIS_OVERHANG_CLIP_HEIGHT","HeatmapScrollableGrid","legendSvgRef","layout","data","showMiniMap","showLegend","xLabel","yLabel","tooltipBody","onClick","selectedCells","scrollToSelection","xAxisTickFormat","yAxisTickFormat","xAxisTickLabelProps","numRows","marg","xMax","yMax","viewportWidth","viewportHeight","yTitleWidth","yTickLabelWidth","xTitleHeight","xTickLabelHeight","binWidth","xTickLeftOverhangMax","legendWidth","xScale","yScale","xTickValues","yTickValues","stableColors","minValue","maxValue","canvasCellParams","canvasRef","mainPaneRef","canvasTooltipRef","setMainPaneNode","handleGridScroll","axisScrollPos","visibleXTickValues","visibleYTickValues","canvasHandlers","useHeatmapCanvasGrid","isScrollable","useScrollToSelection","xTickClipId","useId","xTickLeftOverhang","Math","max","left","handleMiniMapNavigate","useCallback","top","current","scrollTo","isMiniMapExpanded","setIsMiniMapExpanded","useState","miniMapContainerRef","useRef","jsxs","Fragment","display","flexDirection","jsx","marginLeft","position","width","HeatmapMiniMap","MINI_MAP_HEIGHT","gridTemplateColumns","LEGEND_GAP","gridTemplateRows","gridColumn","gridRow","height","alignItems","justifyContent","AXIS_TITLE_FONT_SIZE","TICK_FONT_FAMILY","overflow","AxisLeft","yAxisTickLabelProps","overscrollBehavior","window","devicePixelRatio","cursor","PlotTooltip","AxisBottom","length","HeatmapLegend","HeatmapMiniMapPopup"],"mappings":"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"}
1
+ {"version":3,"file":"visualization.es68.js","sources":["../src/components/Histogram/HistogramBar.tsx"],"sourcesContent":["import React, { memo, useState } from 'react';\nimport { Bar } from '@visx/shape';\nimport { motion } from 'framer-motion';\nimport { getAnimationProps, AnimationType } from '../../utility';\nimport { HistogramBin } from './types';\nimport { HistogramTooltipHandle } from './HistogramTooltip';\n\nexport interface HistogramBarProps {\n bin: HistogramBin;\n x: number;\n barWidth: number;\n yScale: (v: number) => number;\n animationType?: AnimationType;\n binIndex: number;\n svgRef: React.RefObject<SVGSVGElement | null>;\n tooltipRef: React.RefObject<HistogramTooltipHandle | null>;\n onBarClicked?: (bin: HistogramBin) => void;\n}\n\n//memoize so that entire chart doesnt re-render on hover, just the hovered bar\nconst HistogramBar = memo(({ bin, x, barWidth, yScale, animationType, binIndex, svgRef, tooltipRef, onBarClicked }: HistogramBarProps) => {\n const [isHovered, setIsHovered] = useState(false);\n\n const Wrapper = animationType ? motion.g : 'g';\n const animProps = getAnimationProps(animationType, binIndex);\n\n let totCount = 0;\n const segments = bin.series.map((s, si) => {\n const start = totCount;\n totCount += s.count;\n return { s, si, segY: yScale(start + s.count), segHeight: Math.max(yScale(start) - yScale(start + s.count), 0) };\n });\n\n return (\n <Wrapper\n {...animProps}\n onMouseEnter={(e: React.MouseEvent) => {\n setIsHovered(true);\n const rect = svgRef.current?.getBoundingClientRect();\n tooltipRef.current?.show(bin, rect ? e.clientX - rect.left + 10 : e.pageX, rect ? e.clientY - rect.top : e.pageY);\n }}\n onMouseMove={(e: React.MouseEvent) => {\n const rect = svgRef.current?.getBoundingClientRect();\n tooltipRef.current?.show(bin, rect ? e.clientX - rect.left + 10 : e.pageX, rect ? e.clientY - rect.top : e.pageY);\n }}\n onMouseLeave={() => {\n setIsHovered(false);\n tooltipRef.current?.hide();\n }}\n >\n {segments.map(({ s, si, segY, segHeight }) => (\n <Bar\n key={`seg-${si}`}\n x={x}\n y={segY}\n width={barWidth}\n height={segHeight}\n fill={s.color}\n opacity={0.85}\n stroke={isHovered ? '#000000' : 'none'}\n style={{ cursor: onBarClicked ? 'pointer' : 'default' }}\n onClick={() => onBarClicked?.(bin)}\n />\n ))}\n </Wrapper>\n );\n});\n\nexport default HistogramBar;\n"],"names":["HistogramBar","memo","bin","x","barWidth","yScale","animationType","binIndex","svgRef","tooltipRef","onBarClicked","isHovered","setIsHovered","useState","Wrapper","motion","g","animProps","getAnimationProps","totCount","segments","series","map","s","si","start","count","segY","segHeight","Math","max","e","rect","current","getBoundingClientRect","show","clientX","left","pageX","clientY","top","pageY","hide","jsx","Bar","color","cursor"],"mappings":";;;;;AAoBA,MAAMA,IAAeC,EAAK,CAAC;AAAA,EAAEC,KAAAA;AAAAA,EAAKC,GAAAA;AAAAA,EAAGC,UAAAA;AAAAA,EAAUC,QAAAA;AAAAA,EAAQC,eAAAA;AAAAA,EAAeC,UAAAA;AAAAA,EAAUC,QAAAA;AAAAA,EAAQC,YAAAA;AAAAA,EAAYC,cAAAA;AAAgC,MAAM;AACtI,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAE1CC,IAAUR,IAAgBS,EAAOC,IAAI,KACrCC,IAAYC,EAAkBZ,GAAeC,CAAQ;AAE3D,MAAIY,IAAW;AACf,QAAMC,IAAWlB,EAAImB,OAAOC,IAAI,CAACC,GAAGC,MAAO;AACvC,UAAMC,IAAQN;AACdA,WAAAA,KAAYI,EAAEG,OACP;AAAA,MAAEH,GAAAA;AAAAA,MAAGC,IAAAA;AAAAA,MAAIG,MAAMtB,EAAOoB,IAAQF,EAAEG,KAAK;AAAA,MAAGE,WAAWC,KAAKC,IAAIzB,EAAOoB,CAAK,IAAIpB,EAAOoB,IAAQF,EAAEG,KAAK,GAAG,CAAC;AAAA,IAAA;AAAA,EACjH,CAAC;AAED,2BACKZ,GAAA,EACG,GAAIG,GACJ,cAAc,CAACc,MAAwB;AACnCnB,IAAAA,EAAa,EAAI;AACjB,UAAMoB,IAAOxB,EAAOyB,SAASC,sBAAAA;AAC7BzB,IAAAA,EAAWwB,SAASE,KAAKjC,GAAK8B,IAAOD,EAAEK,UAAUJ,EAAKK,OAAO,KAAKN,EAAEO,OAAON,IAAOD,EAAEQ,UAAUP,EAAKQ,MAAMT,EAAEU,KAAK;AAAA,EACpH,GACA,aAAa,CAACV,MAAwB;AAClC,UAAMC,IAAOxB,EAAOyB,SAASC,sBAAAA;AAC7BzB,IAAAA,EAAWwB,SAASE,KAAKjC,GAAK8B,IAAOD,EAAEK,UAAUJ,EAAKK,OAAO,KAAKN,EAAEO,OAAON,IAAOD,EAAEQ,UAAUP,EAAKQ,MAAMT,EAAEU,KAAK;AAAA,EACpH,GACA,cAAc,MAAM;AAChB7B,IAAAA,EAAa,EAAK,GAClBH,EAAWwB,SAASS,KAAAA;AAAAA,EACxB,GAECtB,UAAAA,EAASE,IAAI,CAAC;AAAA,IAAEC,GAAAA;AAAAA,IAAGC,IAAAA;AAAAA,IAAIG,MAAAA;AAAAA,IAAMC,WAAAA;AAAAA,EAAAA,MAC1B,gBAAAe,EAACC,GAAA,EAEG,GAAAzC,GACA,GAAGwB,GACH,OAAOvB,GACP,QAAQwB,GACR,MAAML,EAAEsB,OACR,SAAS,MACT,QAAQlC,IAAY,YAAY,QAChC,OAAO;AAAA,IAAEmC,QAAQpC,IAAe,YAAY;AAAA,EAAA,GAC5C,SAAS,MAAMA,IAAeR,CAAG,KAT5B,OAAOsB,CAAE,EASqB,CAE1C,GACL;AAER,CAAC;"}
@@ -1,77 +1,59 @@
1
- import { jsx as f, jsxs as D } from "react/jsx-runtime";
2
- import { c as Q } from "react/compiler-runtime";
3
- import U from "./visualization.es127.js";
4
- import { heatmapCellStyles as Z } from "./visualization.es128.js";
5
- import ee from "./visualization.es120.js";
6
- import { xAxisLabelProps as te, yAxisLabelProps as le, yAxisTickLabelProps as oe } from "./visualization.es65.js";
7
- import { AXIS_LABEL_GAP as I, LEGEND_GAP as se } from "./visualization.es66.js";
8
- import ae from "./visualization.es32.js";
9
- import ie from "./visualization.es27.js";
10
- const ge = (X) => {
11
- const e = Q(51), {
12
- svgRef: b,
13
- layout: Y,
14
- parentWidth: g,
15
- parentHeight: d,
16
- data: t,
17
- gap: k,
18
- isRect: L,
19
- animationType: y,
20
- tooltipBody: u,
21
- onClick: A,
22
- selectedCells: P,
23
- deselectedColor: S,
24
- xLabel: q,
25
- yLabel: z,
26
- showLegend: T,
27
- xAxisTickFormat: C,
28
- yAxisTickFormat: H,
29
- xAxisTickLabelProps: V
30
- } = X, {
31
- marg: O,
32
- xMax: _,
33
- yMax: l,
34
- xScale: o,
35
- yScale: w,
36
- cellYScale: F,
37
- stableColors: s,
38
- minValue: a,
39
- maxValue: i,
40
- binWidth: R,
41
- binHeight: $,
42
- numRows: v,
43
- xTickValues: B,
44
- yTickValues: E,
45
- colLabelHeight: J,
46
- maxRowNameWidth: K
47
- } = Y;
48
- let x;
49
- e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (x = /* @__PURE__ */ f("style", { children: Z }), e[0] = x) : x = e[0];
50
- const G = `translate(${O.left},${O.top})`;
51
- let r;
52
- e[1] !== y || e[2] !== $ || e[3] !== R || e[4] !== F || e[5] !== t || e[6] !== S || e[7] !== k || e[8] !== L || e[9] !== i || e[10] !== a || e[11] !== A || e[12] !== P || e[13] !== s || e[14] !== u || e[15] !== o ? (r = /* @__PURE__ */ f(U, { data: t, xScale: o, yScale: F, colors: s, minValue: a, maxValue: i, gap: k, isRect: L, binWidth: R, binHeight: $, animationType: y, tooltipBody: u, onClick: A, selectedCells: P, deselectedColor: S }), e[1] = y, e[2] = $, e[3] = R, e[4] = F, e[5] = t, e[6] = S, e[7] = k, e[8] = L, e[9] = i, e[10] = a, e[11] = A, e[12] = P, e[13] = s, e[14] = u, e[15] = o, e[16] = r) : r = e[16];
53
- const W = q ?? "", j = J + I;
54
- let c;
55
- e[17] !== t.length || e[18] !== W || e[19] !== j || e[20] !== C || e[21] !== V || e[22] !== o || e[23] !== B || e[24] !== l ? (c = /* @__PURE__ */ f(ae, { top: l, scale: o, numTicks: t.length, tickFormat: C, tickValues: B, tickLabelProps: V, label: W, labelOffset: j, labelProps: te }), e[17] = t.length, e[18] = W, e[19] = j, e[20] = C, e[21] = V, e[22] = o, e[23] = B, e[24] = l, e[25] = c) : c = e[25];
56
- const M = z ?? "", N = K + I;
57
- let m;
58
- e[26] !== v || e[27] !== M || e[28] !== N || e[29] !== H || e[30] !== w || e[31] !== E ? (m = /* @__PURE__ */ f(ie, { scale: w, numTicks: v, tickValues: E, tickFormat: H, tickLabelProps: oe, label: M, labelOffset: N, labelProps: le }), e[26] = v, e[27] = M, e[28] = N, e[29] = H, e[30] = w, e[31] = E, e[32] = m) : m = e[32];
59
- let n;
60
- e[33] !== i || e[34] !== a || e[35] !== T || e[36] !== s || e[37] !== _ || e[38] !== l ? (n = T && /* @__PURE__ */ f("g", { transform: `translate(${_ + se}, 0)`, children: /* @__PURE__ */ f(ee, { colors: s, minValue: a, maxValue: i, height: l }) }), e[33] = i, e[34] = a, e[35] = T, e[36] = s, e[37] = _, e[38] = l, e[39] = n) : n = e[39];
61
- let p;
62
- e[40] !== n || e[41] !== G || e[42] !== r || e[43] !== c || e[44] !== m ? (p = /* @__PURE__ */ D("g", { transform: G, children: [
63
- r,
64
- c,
65
- m,
66
- n
67
- ] }), e[40] = n, e[41] = G, e[42] = r, e[43] = c, e[44] = m, e[45] = p) : p = e[45];
68
- let h;
69
- return e[46] !== d || e[47] !== g || e[48] !== b || e[49] !== p ? (h = /* @__PURE__ */ D("svg", { width: g, height: d, ref: b, children: [
70
- x,
71
- p
72
- ] }), e[46] = d, e[47] = g, e[48] = b, e[49] = p, e[50] = h) : h = e[50], h;
73
- };
1
+ import { slice as F } from "./visualization.es521.js";
2
+ import { bisectRight as j } from "./visualization.es515.js";
3
+ import b from "./visualization.es522.js";
4
+ import w from "./visualization.es520.js";
5
+ import I from "./visualization.es523.js";
6
+ import R from "./visualization.es524.js";
7
+ import S, { tickIncrement as z } from "./visualization.es71.js";
8
+ import q from "./visualization.es525.js";
9
+ function L() {
10
+ var A = I, h = w, v = q;
11
+ function s(i) {
12
+ Array.isArray(i) || (i = Array.from(i));
13
+ var r, c = i.length, o, m, u = new Array(c);
14
+ for (r = 0; r < c; ++r)
15
+ u[r] = A(i[r], r, i);
16
+ var k = h(u), e = k[0], t = k[1], n = v(u, e, t);
17
+ if (!Array.isArray(n)) {
18
+ const g = t, x = +n;
19
+ if (h === w && ([e, t] = R(e, t, x)), n = S(e, t, x), n[0] <= e && (m = z(e, t, x)), n[n.length - 1] >= t)
20
+ if (g >= t && h === w) {
21
+ const l = z(e, t, x);
22
+ isFinite(l) && (l > 0 ? t = (Math.floor(t / l) + 1) * l : l < 0 && (t = (Math.ceil(t * -l) + 1) / -l));
23
+ } else
24
+ n.pop();
25
+ }
26
+ for (var f = n.length, a = 0, p = f; n[a] <= e; ) ++a;
27
+ for (; n[p - 1] > t; ) --p;
28
+ (a || p < f) && (n = n.slice(a, p), f = p - a);
29
+ var y = new Array(f + 1), M;
30
+ for (r = 0; r <= f; ++r)
31
+ M = y[r] = [], M.x0 = r > 0 ? n[r - 1] : e, M.x1 = r < f ? n[r] : t;
32
+ if (isFinite(m)) {
33
+ if (m > 0)
34
+ for (r = 0; r < c; ++r)
35
+ (o = u[r]) != null && e <= o && o <= t && y[Math.min(f, Math.floor((o - e) / m))].push(i[r]);
36
+ else if (m < 0) {
37
+ for (r = 0; r < c; ++r)
38
+ if ((o = u[r]) != null && e <= o && o <= t) {
39
+ const g = Math.floor((e - o) * m);
40
+ y[Math.min(f, g + (n[g] <= o))].push(i[r]);
41
+ }
42
+ }
43
+ } else
44
+ for (r = 0; r < c; ++r)
45
+ (o = u[r]) != null && e <= o && o <= t && y[j(n, o, 0, f)].push(i[r]);
46
+ return y;
47
+ }
48
+ return s.value = function(i) {
49
+ return arguments.length ? (A = typeof i == "function" ? i : b(i), s) : A;
50
+ }, s.domain = function(i) {
51
+ return arguments.length ? (h = typeof i == "function" ? i : b([i[0], i[1]]), s) : h;
52
+ }, s.thresholds = function(i) {
53
+ return arguments.length ? (v = typeof i == "function" ? i : b(Array.isArray(i) ? F.call(i) : i), s) : v;
54
+ }, s;
55
+ }
74
56
  export {
75
- ge as default
57
+ L as default
76
58
  };
77
59
  //# sourceMappingURL=visualization.es69.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es69.js","sources":["../src/components/Heatmap/HeatmapStaticSvg.tsx"],"sourcesContent":["import { type ReactElement, type RefObject } from \"react\";\nimport { AxisLeft, AxisBottom } from \"@visx/axis\";\nimport type { ColumnDatum, HeatmapCellId } from \"./types\";\nimport type { AnimationType } from \"../../utility\";\nimport type { AnyBin } from \"./HeatmapCells\";\nimport HeatmapCells from \"./HeatmapCells\";\nimport { heatmapCellStyles } from \"./HeatmapCell\";\nimport HeatmapLegend from \"./HeatmapLegend\";\nimport { xAxisLabelProps, yAxisTickLabelProps, yAxisLabelProps, type getXAxisTickLabelProps } from \"./heatmapAxisProps\";\nimport { LEGEND_GAP, AXIS_LABEL_GAP, type HeatmapLayout } from \"./heatmapLayout\";\n\nexport interface HeatmapStaticSvgProps {\n svgRef: RefObject<SVGSVGElement | null>;\n layout: HeatmapLayout;\n parentWidth: number;\n parentHeight: number;\n data: ColumnDatum[];\n gap: number;\n isRect: boolean;\n animationType?: AnimationType;\n tooltipBody?: (bin: AnyBin) => ReactElement;\n onClick?: (bin: AnyBin) => void;\n selectedCells?: HeatmapCellId[];\n deselectedColor?: string;\n xLabel?: string;\n yLabel?: string;\n showLegend: boolean;\n xAxisTickFormat: (d: number | { valueOf(): number }) => string;\n yAxisTickFormat: (d: number | { valueOf(): number }) => string;\n xAxisTickLabelProps: ReturnType<typeof getXAxisTickLabelProps>;\n}\n\nconst HeatmapStaticSvg = ({\n svgRef, layout, parentWidth, parentHeight, data, gap, isRect, animationType, tooltipBody,\n onClick, selectedCells, deselectedColor, xLabel, yLabel, showLegend,\n xAxisTickFormat, yAxisTickFormat, xAxisTickLabelProps,\n}: HeatmapStaticSvgProps) => {\n const {\n marg, xMax, yMax, xScale, yScale, cellYScale, stableColors, minValue, maxValue,\n binWidth, binHeight, numRows, xTickValues, yTickValues, colLabelHeight, maxRowNameWidth, legendWidth,\n } = layout;\n\n return (\n <svg width={parentWidth} height={parentHeight} ref={svgRef}>\n {/* Inside the <svg> so cell hover styling survives the SVG/PNG download serialization */}\n <style>{heatmapCellStyles}</style>\n <g transform={`translate(${marg.left},${marg.top})`}>\n <HeatmapCells\n data={data}\n xScale={xScale}\n yScale={cellYScale}\n colors={stableColors}\n minValue={minValue}\n maxValue={maxValue}\n gap={gap}\n isRect={isRect}\n binWidth={binWidth}\n binHeight={binHeight}\n animationType={animationType}\n tooltipBody={tooltipBody}\n onClick={onClick}\n selectedCells={selectedCells}\n deselectedColor={deselectedColor}\n />\n <AxisBottom\n top={yMax}\n scale={xScale}\n numTicks={data.length}\n tickFormat={xAxisTickFormat}\n tickValues={xTickValues}\n tickLabelProps={xAxisTickLabelProps}\n label={xLabel ?? \"\"}\n labelOffset={colLabelHeight + AXIS_LABEL_GAP}\n labelProps={xAxisLabelProps}\n />\n <AxisLeft\n scale={yScale}\n numTicks={numRows}\n tickValues={yTickValues}\n tickFormat={yAxisTickFormat}\n tickLabelProps={yAxisTickLabelProps}\n label={yLabel ?? \"\"}\n labelOffset={maxRowNameWidth + AXIS_LABEL_GAP}\n labelProps={yAxisLabelProps}\n />\n {showLegend && (\n <g transform={`translate(${xMax + LEGEND_GAP}, 0)`}>\n <HeatmapLegend\n colors={stableColors}\n minValue={minValue}\n maxValue={maxValue}\n height={yMax}\n />\n </g>\n )}\n </g>\n </svg>\n );\n};\n\nexport default HeatmapStaticSvg;\n"],"names":["HeatmapStaticSvg","t0","$","_c","svgRef","layout","parentWidth","parentHeight","data","gap","isRect","animationType","tooltipBody","onClick","selectedCells","deselectedColor","xLabel","yLabel","showLegend","xAxisTickFormat","yAxisTickFormat","xAxisTickLabelProps","marg","xMax","yMax","xScale","yScale","cellYScale","stableColors","minValue","maxValue","binWidth","binHeight","numRows","xTickValues","yTickValues","colLabelHeight","maxRowNameWidth","t1","Symbol","for","jsx","heatmapCellStyles","t2","left","top","t3","HeatmapCells","t4","t5","AXIS_LABEL_GAP","t6","length","AxisBottom","xAxisLabelProps","t7","t8","t9","AxisLeft","yAxisTickLabelProps","yAxisLabelProps","t10","LEGEND_GAP","HeatmapLegend","t11","jsxs","t12"],"mappings":"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"}
1
+ {"version":3,"file":"visualization.es69.js","sources":["../../../node_modules/.pnpm/d3-array@3.2.1/node_modules/d3-array/src/bin.js"],"sourcesContent":["import {slice} from \"./array.js\";\nimport bisect from \"./bisect.js\";\nimport constant from \"./constant.js\";\nimport extent from \"./extent.js\";\nimport identity from \"./identity.js\";\nimport nice from \"./nice.js\";\nimport ticks, {tickIncrement} from \"./ticks.js\";\nimport sturges from \"./threshold/sturges.js\";\n\nexport default function bin() {\n var value = identity,\n domain = extent,\n threshold = sturges;\n\n function histogram(data) {\n if (!Array.isArray(data)) data = Array.from(data);\n\n var i,\n n = data.length,\n x,\n step,\n values = new Array(n);\n\n for (i = 0; i < n; ++i) {\n values[i] = value(data[i], i, data);\n }\n\n var xz = domain(values),\n x0 = xz[0],\n x1 = xz[1],\n tz = threshold(values, x0, x1);\n\n // Convert number of thresholds into uniform thresholds, and nice the\n // default domain accordingly.\n if (!Array.isArray(tz)) {\n const max = x1, tn = +tz;\n if (domain === extent) [x0, x1] = nice(x0, x1, tn);\n tz = ticks(x0, x1, tn);\n\n // If the domain is aligned with the first tick (which it will by\n // default), then we can use quantization rather than bisection to bin\n // values, which is substantially faster.\n if (tz[0] <= x0) step = tickIncrement(x0, x1, tn);\n\n // If the last threshold is coincident with the domain’s upper bound, the\n // last bin will be zero-width. If the default domain is used, and this\n // last threshold is coincident with the maximum input value, we can\n // extend the niced upper bound by one tick to ensure uniform bin widths;\n // otherwise, we simply remove the last threshold. Note that we don’t\n // coerce values or the domain to numbers, and thus must be careful to\n // compare order (>=) rather than strict equality (===)!\n if (tz[tz.length - 1] >= x1) {\n if (max >= x1 && domain === extent) {\n const step = tickIncrement(x0, x1, tn);\n if (isFinite(step)) {\n if (step > 0) {\n x1 = (Math.floor(x1 / step) + 1) * step;\n } else if (step < 0) {\n x1 = (Math.ceil(x1 * -step) + 1) / -step;\n }\n }\n } else {\n tz.pop();\n }\n }\n }\n\n // Remove any thresholds outside the domain.\n // Be careful not to mutate an array owned by the user!\n var m = tz.length, a = 0, b = m;\n while (tz[a] <= x0) ++a;\n while (tz[b - 1] > x1) --b;\n if (a || b < m) tz = tz.slice(a, b), m = b - a;\n\n var bins = new Array(m + 1),\n bin;\n\n // Initialize bins.\n for (i = 0; i <= m; ++i) {\n bin = bins[i] = [];\n bin.x0 = i > 0 ? tz[i - 1] : x0;\n bin.x1 = i < m ? tz[i] : x1;\n }\n\n // Assign data to bins by value, ignoring any outside the domain.\n if (isFinite(step)) {\n if (step > 0) {\n for (i = 0; i < n; ++i) {\n if ((x = values[i]) != null && x0 <= x && x <= x1) {\n bins[Math.min(m, Math.floor((x - x0) / step))].push(data[i]);\n }\n }\n } else if (step < 0) {\n for (i = 0; i < n; ++i) {\n if ((x = values[i]) != null && x0 <= x && x <= x1) {\n const j = Math.floor((x0 - x) * step);\n bins[Math.min(m, j + (tz[j] <= x))].push(data[i]); // handle off-by-one due to rounding\n }\n }\n }\n } else {\n for (i = 0; i < n; ++i) {\n if ((x = values[i]) != null && x0 <= x && x <= x1) {\n bins[bisect(tz, x, 0, m)].push(data[i]);\n }\n }\n }\n\n return bins;\n }\n\n histogram.value = function(_) {\n return arguments.length ? (value = typeof _ === \"function\" ? _ : constant(_), histogram) : value;\n };\n\n histogram.domain = function(_) {\n return arguments.length ? (domain = typeof _ === \"function\" ? _ : constant([_[0], _[1]]), histogram) : domain;\n };\n\n histogram.thresholds = function(_) {\n return arguments.length ? (threshold = typeof _ === \"function\" ? _ : constant(Array.isArray(_) ? slice.call(_) : _), histogram) : threshold;\n };\n\n return histogram;\n}\n"],"names":["bin","value","identity","domain","extent","threshold","sturges","histogram","data","i","n","x","step","values","xz","x0","x1","tz","max","tn","nice","ticks","tickIncrement","m","b","bins","j","bisect","_","constant","slice"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,16 +1,16 @@
1
1
  import { jsx as N, jsxs as oe } from "react/jsx-runtime";
2
2
  import { useState as G, useMemo as f, useRef as U, useCallback as R } from "react";
3
- import { ZoomFrame as ce } from "./visualization.es33.js";
4
- import { RenderTree as re } from "./visualization.es34.js";
5
- import ie from "./visualization.es24.js";
6
- import le from "./visualization.es35.js";
7
- import de from "./visualization.es36.js";
8
- import ue from "./visualization.es37.js";
9
- import he from "./visualization.es38.js";
10
- import S from "./visualization.es39.js";
11
- import pe from "./visualization.es28.js";
12
- import me from "./visualization.es40.js";
13
- import { pathRadialStep as J } from "./visualization.es41.js";
3
+ import { ZoomFrame as ce } from "./visualization.es81.js";
4
+ import { RenderTree as re } from "./visualization.es82.js";
5
+ import ie from "./visualization.es51.js";
6
+ import le from "./visualization.es52.js";
7
+ import de from "./visualization.es83.js";
8
+ import ue from "./visualization.es84.js";
9
+ import he from "./visualization.es85.js";
10
+ import S from "./visualization.es86.js";
11
+ import pe from "./visualization.es27.js";
12
+ import me from "./visualization.es87.js";
13
+ import { pathRadialStep as J } from "./visualization.es88.js";
14
14
  const we = {
15
15
  duration: 0.3,
16
16
  ease: "easeInOut"