@weng-lab/visualization 2.4.1 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1156) hide show
  1. package/dist/src/components/Heatmap/Heatmap.d.ts.map +1 -1
  2. package/dist/src/components/Heatmap/scrollable/heatmapExport.d.ts +1 -9
  3. package/dist/src/components/Heatmap/scrollable/heatmapExport.d.ts.map +1 -1
  4. package/dist/src/utility.d.ts +4 -2
  5. package/dist/src/utility.d.ts.map +1 -1
  6. package/dist/visualization.es10.js +11 -11
  7. package/dist/visualization.es100.js +13 -156
  8. package/dist/visualization.es100.js.map +1 -1
  9. package/dist/visualization.es101.js +74 -83
  10. package/dist/visualization.es101.js.map +1 -1
  11. package/dist/visualization.es102.js +31 -36
  12. package/dist/visualization.es102.js.map +1 -1
  13. package/dist/visualization.es103.js +13 -47
  14. package/dist/visualization.es103.js.map +1 -1
  15. package/dist/visualization.es104.js +25 -73
  16. package/dist/visualization.es104.js.map +1 -1
  17. package/dist/visualization.es105.js +68 -31
  18. package/dist/visualization.es105.js.map +1 -1
  19. package/dist/visualization.es106.js +45 -13
  20. package/dist/visualization.es106.js.map +1 -1
  21. package/dist/visualization.es107.js +22 -26
  22. package/dist/visualization.es107.js.map +1 -1
  23. package/dist/visualization.es108.js +120 -66
  24. package/dist/visualization.es108.js.map +1 -1
  25. package/dist/visualization.es109.js +79 -221
  26. package/dist/visualization.es109.js.map +1 -1
  27. package/dist/visualization.es11.js +10 -10
  28. package/dist/visualization.es110.js +156 -2
  29. package/dist/visualization.es110.js.map +1 -1
  30. package/dist/visualization.es111.js +81 -555
  31. package/dist/visualization.es111.js.map +1 -1
  32. package/dist/visualization.es112.js +36 -212
  33. package/dist/visualization.es112.js.map +1 -1
  34. package/dist/visualization.es113.js +60 -2
  35. package/dist/visualization.es113.js.map +1 -1
  36. package/dist/visualization.es114.js +47 -4800
  37. package/dist/visualization.es114.js.map +1 -1
  38. package/dist/visualization.es115.js +222 -25
  39. package/dist/visualization.es115.js.map +1 -1
  40. package/dist/visualization.es116.js +2 -45
  41. package/dist/visualization.es116.js.map +1 -1
  42. package/dist/visualization.es117.js +557 -144
  43. package/dist/visualization.es117.js.map +1 -1
  44. package/dist/visualization.es118.js +213 -146
  45. package/dist/visualization.es118.js.map +1 -1
  46. package/dist/visualization.es119.js +2 -58
  47. package/dist/visualization.es119.js.map +1 -1
  48. package/dist/visualization.es12.js +2 -2
  49. package/dist/visualization.es120.js +4799 -31
  50. package/dist/visualization.es120.js.map +1 -1
  51. package/dist/visualization.es121.js +24 -17
  52. package/dist/visualization.es121.js.map +1 -1
  53. package/dist/visualization.es122.js +45 -14
  54. package/dist/visualization.es122.js.map +1 -1
  55. package/dist/visualization.es123.js +144 -26
  56. package/dist/visualization.es123.js.map +1 -1
  57. package/dist/visualization.es124.js +145 -30
  58. package/dist/visualization.es124.js.map +1 -1
  59. package/dist/visualization.es125.js +29 -42
  60. package/dist/visualization.es125.js.map +1 -1
  61. package/dist/visualization.es126.js +42 -73
  62. package/dist/visualization.es126.js.map +1 -1
  63. package/dist/visualization.es127.js +73 -22
  64. package/dist/visualization.es127.js.map +1 -1
  65. package/dist/visualization.es128.js +23 -83
  66. package/dist/visualization.es128.js.map +1 -1
  67. package/dist/visualization.es129.js +85 -36
  68. package/dist/visualization.es129.js.map +1 -1
  69. package/dist/visualization.es13.js +7 -7
  70. package/dist/visualization.es130.js +31 -80
  71. package/dist/visualization.es130.js.map +1 -1
  72. package/dist/visualization.es131.js +85 -5
  73. package/dist/visualization.es131.js.map +1 -1
  74. package/dist/visualization.es132.js +5 -90
  75. package/dist/visualization.es132.js.map +1 -1
  76. package/dist/visualization.es133.js +89 -12
  77. package/dist/visualization.es133.js.map +1 -1
  78. package/dist/visualization.es134.js +11 -4
  79. package/dist/visualization.es134.js.map +1 -1
  80. package/dist/visualization.es135.js +5 -14
  81. package/dist/visualization.es135.js.map +1 -1
  82. package/dist/visualization.es136.js +15 -7
  83. package/dist/visualization.es136.js.map +1 -1
  84. package/dist/visualization.es137.js +7 -14
  85. package/dist/visualization.es137.js.map +1 -1
  86. package/dist/visualization.es138.js +13 -4
  87. package/dist/visualization.es138.js.map +1 -1
  88. package/dist/visualization.es139.js +4 -7
  89. package/dist/visualization.es139.js.map +1 -1
  90. package/dist/visualization.es140.js +7 -60
  91. package/dist/visualization.es140.js.map +1 -1
  92. package/dist/visualization.es141.js +60 -38
  93. package/dist/visualization.es141.js.map +1 -1
  94. package/dist/visualization.es142.js +37 -35
  95. package/dist/visualization.es142.js.map +1 -1
  96. package/dist/visualization.es143.js +36 -83
  97. package/dist/visualization.es143.js.map +1 -1
  98. package/dist/visualization.es144.js +82 -27
  99. package/dist/visualization.es144.js.map +1 -1
  100. package/dist/visualization.es145.js +28 -3
  101. package/dist/visualization.es145.js.map +1 -1
  102. package/dist/visualization.es146.js +3 -71
  103. package/dist/visualization.es146.js.map +1 -1
  104. package/dist/visualization.es147.js +8 -15
  105. package/dist/visualization.es147.js.map +1 -1
  106. package/dist/visualization.es148.js +5 -10
  107. package/dist/visualization.es148.js.map +1 -1
  108. package/dist/visualization.es149.js +8 -5
  109. package/dist/visualization.es149.js.map +1 -1
  110. package/dist/visualization.es15.js +8 -8
  111. package/dist/visualization.es150.js +9 -30
  112. package/dist/visualization.es150.js.map +1 -1
  113. package/dist/visualization.es151.js +6 -7
  114. package/dist/visualization.es151.js.map +1 -1
  115. package/dist/visualization.es152.js +6 -6
  116. package/dist/visualization.es152.js.map +1 -1
  117. package/dist/visualization.es153.js +5 -3
  118. package/dist/visualization.es153.js.map +1 -1
  119. package/dist/visualization.es154.js +14 -16
  120. package/dist/visualization.es154.js.map +1 -1
  121. package/dist/visualization.es155.js +5 -16
  122. package/dist/visualization.es155.js.map +1 -1
  123. package/dist/visualization.es156.js +3 -32
  124. package/dist/visualization.es156.js.map +1 -1
  125. package/dist/visualization.es157.js +6 -16
  126. package/dist/visualization.es157.js.map +1 -1
  127. package/dist/visualization.es158.js +6 -10
  128. package/dist/visualization.es158.js.map +1 -1
  129. package/dist/visualization.es159.js +9 -6
  130. package/dist/visualization.es159.js.map +1 -1
  131. package/dist/visualization.es160.js +63 -6
  132. package/dist/visualization.es160.js.map +1 -1
  133. package/dist/visualization.es161.js +7 -11
  134. package/dist/visualization.es161.js.map +1 -1
  135. package/dist/visualization.es162.js +42 -4
  136. package/dist/visualization.es162.js.map +1 -1
  137. package/dist/visualization.es163.js +30 -4
  138. package/dist/visualization.es163.js.map +1 -1
  139. package/dist/visualization.es164.js +7 -8
  140. package/dist/visualization.es164.js.map +1 -1
  141. package/dist/visualization.es165.js +6 -4
  142. package/dist/visualization.es165.js.map +1 -1
  143. package/dist/visualization.es166.js +3 -12
  144. package/dist/visualization.es166.js.map +1 -1
  145. package/dist/visualization.es167.js +16 -26
  146. package/dist/visualization.es167.js.map +1 -1
  147. package/dist/visualization.es168.js +17 -2
  148. package/dist/visualization.es168.js.map +1 -1
  149. package/dist/visualization.es169.js +32 -1605
  150. package/dist/visualization.es169.js.map +1 -1
  151. package/dist/visualization.es170.js +15 -73
  152. package/dist/visualization.es170.js.map +1 -1
  153. package/dist/visualization.es171.js +11 -2
  154. package/dist/visualization.es171.js.map +1 -1
  155. package/dist/visualization.es172.js +6 -482
  156. package/dist/visualization.es172.js.map +1 -1
  157. package/dist/visualization.es173.js +7 -2
  158. package/dist/visualization.es173.js.map +1 -1
  159. package/dist/visualization.es174.js +10 -63
  160. package/dist/visualization.es174.js.map +1 -1
  161. package/dist/visualization.es175.js +4 -60
  162. package/dist/visualization.es175.js.map +1 -1
  163. package/dist/visualization.es176.js +4 -123
  164. package/dist/visualization.es176.js.map +1 -1
  165. package/dist/visualization.es177.js +9 -8
  166. package/dist/visualization.es177.js.map +1 -1
  167. package/dist/visualization.es178.js +4 -15
  168. package/dist/visualization.es178.js.map +1 -1
  169. package/dist/visualization.es179.js +13 -11
  170. package/dist/visualization.es179.js.map +1 -1
  171. package/dist/visualization.es180.js +26 -5
  172. package/dist/visualization.es180.js.map +1 -1
  173. package/dist/visualization.es181.js +31 -10
  174. package/dist/visualization.es181.js.map +1 -1
  175. package/dist/visualization.es182.js +114 -3
  176. package/dist/visualization.es182.js.map +1 -1
  177. package/dist/visualization.es183.js +2 -2
  178. package/dist/visualization.es183.js.map +1 -1
  179. package/dist/visualization.es184.js +1606 -11
  180. package/dist/visualization.es184.js.map +1 -1
  181. package/dist/visualization.es185.js +3 -30
  182. package/dist/visualization.es185.js.map +1 -1
  183. package/dist/visualization.es186.js +5 -42
  184. package/dist/visualization.es186.js.map +1 -1
  185. package/dist/visualization.es187.js +30 -46
  186. package/dist/visualization.es187.js.map +1 -1
  187. package/dist/visualization.es188.js +16 -3
  188. package/dist/visualization.es188.js.map +1 -1
  189. package/dist/visualization.es189.js +8 -3
  190. package/dist/visualization.es189.js.map +1 -1
  191. package/dist/visualization.es190.js +11 -5
  192. package/dist/visualization.es190.js.map +1 -1
  193. package/dist/visualization.es191.js +71 -4
  194. package/dist/visualization.es191.js.map +1 -1
  195. package/dist/visualization.es192.js +16 -10
  196. package/dist/visualization.es192.js.map +1 -1
  197. package/dist/visualization.es193.js +11 -3
  198. package/dist/visualization.es193.js.map +1 -1
  199. package/dist/visualization.es194.js +5 -18
  200. package/dist/visualization.es194.js.map +1 -1
  201. package/dist/visualization.es195.js +8 -19
  202. package/dist/visualization.es195.js.map +1 -1
  203. package/dist/visualization.es196.js +15 -36
  204. package/dist/visualization.es196.js.map +1 -1
  205. package/dist/visualization.es197.js +11 -2
  206. package/dist/visualization.es197.js.map +1 -1
  207. package/dist/visualization.es198.js +6 -2
  208. package/dist/visualization.es198.js.map +1 -1
  209. package/dist/visualization.es199.js +12 -4
  210. package/dist/visualization.es199.js.map +1 -1
  211. package/dist/visualization.es2.js +8 -8
  212. package/dist/visualization.es20.js +29 -148
  213. package/dist/visualization.es20.js.map +1 -1
  214. package/dist/visualization.es200.js +3 -14
  215. package/dist/visualization.es200.js.map +1 -1
  216. package/dist/visualization.es201.js +2 -3
  217. package/dist/visualization.es201.js.map +1 -1
  218. package/dist/visualization.es202.js +11 -7
  219. package/dist/visualization.es202.js.map +1 -1
  220. package/dist/visualization.es203.js +31 -3
  221. package/dist/visualization.es203.js.map +1 -1
  222. package/dist/visualization.es204.js +42 -6
  223. package/dist/visualization.es204.js.map +1 -1
  224. package/dist/visualization.es205.js +48 -17
  225. package/dist/visualization.es205.js.map +1 -1
  226. package/dist/visualization.es206.js +3 -4
  227. package/dist/visualization.es206.js.map +1 -1
  228. package/dist/visualization.es207.js +3 -36
  229. package/dist/visualization.es207.js.map +1 -1
  230. package/dist/visualization.es208.js +5 -63
  231. package/dist/visualization.es208.js.map +1 -1
  232. package/dist/visualization.es209.js +5 -7
  233. package/dist/visualization.es209.js.map +1 -1
  234. package/dist/visualization.es21.js +64 -66
  235. package/dist/visualization.es21.js.map +1 -1
  236. package/dist/visualization.es210.js +10 -42
  237. package/dist/visualization.es210.js.map +1 -1
  238. package/dist/visualization.es211.js +3 -19
  239. package/dist/visualization.es211.js.map +1 -1
  240. package/dist/visualization.es212.js +16 -26
  241. package/dist/visualization.es212.js.map +1 -1
  242. package/dist/visualization.es213.js +18 -3
  243. package/dist/visualization.es213.js.map +1 -1
  244. package/dist/visualization.es214.js +36 -9
  245. package/dist/visualization.es214.js.map +1 -1
  246. package/dist/visualization.es215.js +2 -7
  247. package/dist/visualization.es215.js.map +1 -1
  248. package/dist/visualization.es216.js +2 -8
  249. package/dist/visualization.es216.js.map +1 -1
  250. package/dist/visualization.es217.js +4 -10
  251. package/dist/visualization.es217.js.map +1 -1
  252. package/dist/visualization.es218.js +14 -6
  253. package/dist/visualization.es218.js.map +1 -1
  254. package/dist/visualization.es219.js +3 -7
  255. package/dist/visualization.es219.js.map +1 -1
  256. package/dist/visualization.es22.js +33 -37
  257. package/dist/visualization.es22.js.map +1 -1
  258. package/dist/visualization.es220.js +7 -6
  259. package/dist/visualization.es220.js.map +1 -1
  260. package/dist/visualization.es221.js +3 -15
  261. package/dist/visualization.es221.js.map +1 -1
  262. package/dist/visualization.es222.js +6 -5
  263. package/dist/visualization.es222.js.map +1 -1
  264. package/dist/visualization.es223.js +18 -3
  265. package/dist/visualization.es223.js.map +1 -1
  266. package/dist/visualization.es224.js +3 -6
  267. package/dist/visualization.es224.js.map +1 -1
  268. package/dist/visualization.es225.js +35 -6
  269. package/dist/visualization.es225.js.map +1 -1
  270. package/dist/visualization.es226.js +3 -9
  271. package/dist/visualization.es226.js.map +1 -1
  272. package/dist/visualization.es227.js +19 -32
  273. package/dist/visualization.es227.js.map +1 -1
  274. package/dist/visualization.es228.js +21 -108
  275. package/dist/visualization.es228.js.map +1 -1
  276. package/dist/visualization.es229.js +17 -3
  277. package/dist/visualization.es229.js.map +1 -1
  278. package/dist/visualization.es23.js +41 -78
  279. package/dist/visualization.es23.js.map +1 -1
  280. package/dist/visualization.es230.js +72 -5
  281. package/dist/visualization.es230.js.map +1 -1
  282. package/dist/visualization.es231.js +22 -33
  283. package/dist/visualization.es231.js.map +1 -1
  284. package/dist/visualization.es232.js +22 -15
  285. package/dist/visualization.es232.js.map +1 -1
  286. package/dist/visualization.es233.js +40 -7
  287. package/dist/visualization.es233.js.map +1 -1
  288. package/dist/visualization.es234.js +6 -10
  289. package/dist/visualization.es234.js.map +1 -1
  290. package/dist/visualization.es235.js +12 -17
  291. package/dist/visualization.es235.js.map +1 -1
  292. package/dist/visualization.es236.js +14 -69
  293. package/dist/visualization.es236.js.map +1 -1
  294. package/dist/visualization.es237.js +35 -21
  295. package/dist/visualization.es237.js.map +1 -1
  296. package/dist/visualization.es238.js +22 -20
  297. package/dist/visualization.es238.js.map +1 -1
  298. package/dist/visualization.es239.js +24 -37
  299. package/dist/visualization.es239.js.map +1 -1
  300. package/dist/visualization.es24.js +62 -46
  301. package/dist/visualization.es24.js.map +1 -1
  302. package/dist/visualization.es240.js +74 -7
  303. package/dist/visualization.es240.js.map +1 -1
  304. package/dist/visualization.es241.js +2 -13
  305. package/dist/visualization.es241.js.map +1 -1
  306. package/dist/visualization.es242.js +482 -17
  307. package/dist/visualization.es242.js.map +1 -1
  308. package/dist/visualization.es243.js +2 -37
  309. package/dist/visualization.es243.js.map +1 -1
  310. package/dist/visualization.es244.js +61 -22
  311. package/dist/visualization.es244.js.map +1 -1
  312. package/dist/visualization.es245.js +58 -25
  313. package/dist/visualization.es245.js.map +1 -1
  314. package/dist/visualization.es248.js +20 -120
  315. package/dist/visualization.es248.js.map +1 -1
  316. package/dist/visualization.es249.js +52 -22
  317. package/dist/visualization.es249.js.map +1 -1
  318. package/dist/visualization.es25.js +3 -55
  319. package/dist/visualization.es25.js.map +1 -1
  320. package/dist/visualization.es250.js +19 -52
  321. package/dist/visualization.es250.js.map +1 -1
  322. package/dist/visualization.es251.js +2 -21
  323. package/dist/visualization.es251.js.map +1 -1
  324. package/dist/visualization.es259.js +1 -1
  325. package/dist/visualization.es26.js +46 -7
  326. package/dist/visualization.es26.js.map +1 -1
  327. package/dist/visualization.es260.js +7 -7
  328. package/dist/visualization.es263.js +1 -1
  329. package/dist/visualization.es267.js +7 -2
  330. package/dist/visualization.es267.js.map +1 -1
  331. package/dist/visualization.es268.js +30 -49
  332. package/dist/visualization.es268.js.map +1 -1
  333. package/dist/visualization.es269.js +3 -31
  334. package/dist/visualization.es269.js.map +1 -1
  335. package/dist/visualization.es27.js +4 -5
  336. package/dist/visualization.es27.js.map +1 -1
  337. package/dist/visualization.es270.js +3 -33
  338. package/dist/visualization.es270.js.map +1 -1
  339. package/dist/visualization.es271.js +6 -12
  340. package/dist/visualization.es271.js.map +1 -1
  341. package/dist/visualization.es272.js +13 -7
  342. package/dist/visualization.es272.js.map +1 -1
  343. package/dist/visualization.es273.js +2 -35
  344. package/dist/visualization.es273.js.map +1 -1
  345. package/dist/visualization.es274.js +3 -3
  346. package/dist/visualization.es274.js.map +1 -1
  347. package/dist/visualization.es275.js +3 -3
  348. package/dist/visualization.es275.js.map +1 -1
  349. package/dist/visualization.es276.js +10 -6
  350. package/dist/visualization.es276.js.map +1 -1
  351. package/dist/visualization.es277.js +24 -11
  352. package/dist/visualization.es277.js.map +1 -1
  353. package/dist/visualization.es278.js +5 -2
  354. package/dist/visualization.es278.js.map +1 -1
  355. package/dist/visualization.es279.js +32 -3
  356. package/dist/visualization.es279.js.map +1 -1
  357. package/dist/visualization.es28.js +20 -6
  358. package/dist/visualization.es28.js.map +1 -1
  359. package/dist/visualization.es280.js +237 -3
  360. package/dist/visualization.es280.js.map +1 -1
  361. package/dist/visualization.es281.js +991 -9
  362. package/dist/visualization.es281.js.map +1 -1
  363. package/dist/visualization.es282.js +59 -23
  364. package/dist/visualization.es282.js.map +1 -1
  365. package/dist/visualization.es283.js +53 -4
  366. package/dist/visualization.es283.js.map +1 -1
  367. package/dist/visualization.es284.js +28 -29
  368. package/dist/visualization.es284.js.map +1 -1
  369. package/dist/visualization.es285.js +34 -3
  370. package/dist/visualization.es285.js.map +1 -1
  371. package/dist/visualization.es286.js +12 -11
  372. package/dist/visualization.es286.js.map +1 -1
  373. package/dist/visualization.es287.js +3 -37
  374. package/dist/visualization.es287.js.map +1 -1
  375. package/dist/visualization.es288.js +10 -259
  376. package/dist/visualization.es288.js.map +1 -1
  377. package/dist/visualization.es289.js +35 -58
  378. package/dist/visualization.es289.js.map +1 -1
  379. package/dist/visualization.es29.js +279 -45
  380. package/dist/visualization.es29.js.map +1 -1
  381. package/dist/visualization.es290.js +260 -5
  382. package/dist/visualization.es290.js.map +1 -1
  383. package/dist/visualization.es292.js +10 -10
  384. package/dist/visualization.es293.js +8 -8
  385. package/dist/visualization.es294.js +59 -14
  386. package/dist/visualization.es294.js.map +1 -1
  387. package/dist/visualization.es295.js +6 -19
  388. package/dist/visualization.es295.js.map +1 -1
  389. package/dist/visualization.es296.js +12 -6
  390. package/dist/visualization.es296.js.map +1 -1
  391. package/dist/visualization.es297.js +18 -7
  392. package/dist/visualization.es297.js.map +1 -1
  393. package/dist/visualization.es298.js +8 -140
  394. package/dist/visualization.es298.js.map +1 -1
  395. package/dist/visualization.es299.js +7 -5
  396. package/dist/visualization.es299.js.map +1 -1
  397. package/dist/visualization.es3.js +12 -12
  398. package/dist/visualization.es30.js +16 -31
  399. package/dist/visualization.es30.js.map +1 -1
  400. package/dist/visualization.es300.js +138 -107
  401. package/dist/visualization.es300.js.map +1 -1
  402. package/dist/visualization.es301.js +5 -12
  403. package/dist/visualization.es301.js.map +1 -1
  404. package/dist/visualization.es302.js +16 -139
  405. package/dist/visualization.es302.js.map +1 -1
  406. package/dist/visualization.es303.js +25 -5
  407. package/dist/visualization.es303.js.map +1 -1
  408. package/dist/visualization.es304.js +23 -68
  409. package/dist/visualization.es304.js.map +1 -1
  410. package/dist/visualization.es305.js +39 -32
  411. package/dist/visualization.es305.js.map +1 -1
  412. package/dist/visualization.es306.js +19 -20
  413. package/dist/visualization.es306.js.map +1 -1
  414. package/dist/visualization.es307.js +40 -3
  415. package/dist/visualization.es307.js.map +1 -1
  416. package/dist/visualization.es308.js +52 -19
  417. package/dist/visualization.es308.js.map +1 -1
  418. package/dist/visualization.es309.js +23 -31
  419. package/dist/visualization.es309.js.map +1 -1
  420. package/dist/visualization.es31.js +65 -33
  421. package/dist/visualization.es31.js.map +1 -1
  422. package/dist/visualization.es310.js +110 -2
  423. package/dist/visualization.es310.js.map +1 -1
  424. package/dist/visualization.es311.js +13 -2
  425. package/dist/visualization.es311.js.map +1 -1
  426. package/dist/visualization.es312.js +141 -5
  427. package/dist/visualization.es312.js.map +1 -1
  428. package/dist/visualization.es313.js +6 -15
  429. package/dist/visualization.es313.js.map +1 -1
  430. package/dist/visualization.es314.js +70 -33
  431. package/dist/visualization.es314.js.map +1 -1
  432. package/dist/visualization.es315.js +35 -27
  433. package/dist/visualization.es315.js.map +1 -1
  434. package/dist/visualization.es316.js +20 -10
  435. package/dist/visualization.es316.js.map +1 -1
  436. package/dist/visualization.es317.js +3 -6
  437. package/dist/visualization.es317.js.map +1 -1
  438. package/dist/visualization.es318.js +24 -13
  439. package/dist/visualization.es318.js.map +1 -1
  440. package/dist/visualization.es319.js +31 -12
  441. package/dist/visualization.es319.js.map +1 -1
  442. package/dist/visualization.es32.js +113 -21
  443. package/dist/visualization.es32.js.map +1 -1
  444. package/dist/visualization.es320.js +2 -2
  445. package/dist/visualization.es320.js.map +1 -1
  446. package/dist/visualization.es321.js +2 -3
  447. package/dist/visualization.es321.js.map +1 -1
  448. package/dist/visualization.es322.js +6 -2
  449. package/dist/visualization.es322.js.map +1 -1
  450. package/dist/visualization.es323.js +15 -104
  451. package/dist/visualization.es323.js.map +1 -1
  452. package/dist/visualization.es324.js +34 -4
  453. package/dist/visualization.es324.js.map +1 -1
  454. package/dist/visualization.es325.js +28 -3
  455. package/dist/visualization.es325.js.map +1 -1
  456. package/dist/visualization.es326.js +10 -18
  457. package/dist/visualization.es326.js.map +1 -1
  458. package/dist/visualization.es327.js +6 -5
  459. package/dist/visualization.es327.js.map +1 -1
  460. package/dist/visualization.es328.js +12 -13
  461. package/dist/visualization.es328.js.map +1 -1
  462. package/dist/visualization.es329.js +12 -5
  463. package/dist/visualization.es329.js.map +1 -1
  464. package/dist/visualization.es33.js +150 -12
  465. package/dist/visualization.es33.js.map +1 -1
  466. package/dist/visualization.es330.js +2 -29
  467. package/dist/visualization.es330.js.map +1 -1
  468. package/dist/visualization.es331.js +3 -7
  469. package/dist/visualization.es331.js.map +1 -1
  470. package/dist/visualization.es332.js +2 -2
  471. package/dist/visualization.es332.js.map +1 -1
  472. package/dist/visualization.es333.js +104 -20
  473. package/dist/visualization.es333.js.map +1 -1
  474. package/dist/visualization.es334.js +5 -21
  475. package/dist/visualization.es334.js.map +1 -1
  476. package/dist/visualization.es335.js +3 -6
  477. package/dist/visualization.es335.js.map +1 -1
  478. package/dist/visualization.es336.js +18 -7
  479. package/dist/visualization.es336.js.map +1 -1
  480. package/dist/visualization.es337.js +5 -18
  481. package/dist/visualization.es337.js.map +1 -1
  482. package/dist/visualization.es338.js +14 -43
  483. package/dist/visualization.es338.js.map +1 -1
  484. package/dist/visualization.es339.js +5 -7
  485. package/dist/visualization.es339.js.map +1 -1
  486. package/dist/visualization.es34.js +7 -57
  487. package/dist/visualization.es34.js.map +1 -1
  488. package/dist/visualization.es340.js +27 -18
  489. package/dist/visualization.es340.js.map +1 -1
  490. package/dist/visualization.es341.js +6 -53
  491. package/dist/visualization.es341.js.map +1 -1
  492. package/dist/visualization.es342.js +2 -27
  493. package/dist/visualization.es342.js.map +1 -1
  494. package/dist/visualization.es343.js +20 -11
  495. package/dist/visualization.es343.js.map +1 -1
  496. package/dist/visualization.es344.js +21 -19
  497. package/dist/visualization.es344.js.map +1 -1
  498. package/dist/visualization.es345.js +5 -11
  499. package/dist/visualization.es345.js.map +1 -1
  500. package/dist/visualization.es346.js +7 -4
  501. package/dist/visualization.es346.js.map +1 -1
  502. package/dist/visualization.es347.js +19 -4
  503. package/dist/visualization.es347.js.map +1 -1
  504. package/dist/visualization.es348.js +44 -4
  505. package/dist/visualization.es348.js.map +1 -1
  506. package/dist/visualization.es349.js +7 -176
  507. package/dist/visualization.es349.js.map +1 -1
  508. package/dist/visualization.es35.js +7 -54
  509. package/dist/visualization.es35.js.map +1 -1
  510. package/dist/visualization.es350.js +18 -38
  511. package/dist/visualization.es350.js.map +1 -1
  512. package/dist/visualization.es351.js +53 -5
  513. package/dist/visualization.es351.js.map +1 -1
  514. package/dist/visualization.es352.js +26 -3
  515. package/dist/visualization.es352.js.map +1 -1
  516. package/dist/visualization.es353.js +11 -2
  517. package/dist/visualization.es353.js.map +1 -1
  518. package/dist/visualization.es354.js +19 -30
  519. package/dist/visualization.es354.js.map +1 -1
  520. package/dist/visualization.es355.js +12 -8
  521. package/dist/visualization.es355.js.map +1 -1
  522. package/dist/visualization.es356.js +4 -10
  523. package/dist/visualization.es356.js.map +1 -1
  524. package/dist/visualization.es357.js +4 -4
  525. package/dist/visualization.es357.js.map +1 -1
  526. package/dist/visualization.es358.js +3 -65
  527. package/dist/visualization.es358.js.map +1 -1
  528. package/dist/visualization.es359.js +176 -7
  529. package/dist/visualization.es359.js.map +1 -1
  530. package/dist/visualization.es36.js +47 -110
  531. package/dist/visualization.es36.js.map +1 -1
  532. package/dist/visualization.es360.js +39 -4
  533. package/dist/visualization.es360.js.map +1 -1
  534. package/dist/visualization.es361.js +5 -13
  535. package/dist/visualization.es361.js.map +1 -1
  536. package/dist/visualization.es362.js +3 -34
  537. package/dist/visualization.es362.js.map +1 -1
  538. package/dist/visualization.es363.js +2 -5
  539. package/dist/visualization.es363.js.map +1 -1
  540. package/dist/visualization.es364.js +30 -10
  541. package/dist/visualization.es364.js.map +1 -1
  542. package/dist/visualization.es365.js +8 -2
  543. package/dist/visualization.es365.js.map +1 -1
  544. package/dist/visualization.es366.js +11 -5
  545. package/dist/visualization.es366.js.map +1 -1
  546. package/dist/visualization.es367.js +4 -2
  547. package/dist/visualization.es367.js.map +1 -1
  548. package/dist/visualization.es368.js +65 -9
  549. package/dist/visualization.es368.js.map +1 -1
  550. package/dist/visualization.es369.js +7 -10
  551. package/dist/visualization.es369.js.map +1 -1
  552. package/dist/visualization.es37.js +5 -8
  553. package/dist/visualization.es37.js.map +1 -1
  554. package/dist/visualization.es370.js +5 -13
  555. package/dist/visualization.es370.js.map +1 -1
  556. package/dist/visualization.es371.js +14 -2
  557. package/dist/visualization.es371.js.map +1 -1
  558. package/dist/visualization.es372.js +35 -10
  559. package/dist/visualization.es372.js.map +1 -1
  560. package/dist/visualization.es373.js +4 -7
  561. package/dist/visualization.es373.js.map +1 -1
  562. package/dist/visualization.es374.js +9 -5
  563. package/dist/visualization.es374.js.map +1 -1
  564. package/dist/visualization.es375.js +2 -25
  565. package/dist/visualization.es375.js.map +1 -1
  566. package/dist/visualization.es376.js +5 -19
  567. package/dist/visualization.es376.js.map +1 -1
  568. package/dist/visualization.es377.js +2 -41
  569. package/dist/visualization.es377.js.map +1 -1
  570. package/dist/visualization.es378.js +10 -3
  571. package/dist/visualization.es378.js.map +1 -1
  572. package/dist/visualization.es379.js +10 -9
  573. package/dist/visualization.es379.js.map +1 -1
  574. package/dist/visualization.es38.js +33 -7
  575. package/dist/visualization.es38.js.map +1 -1
  576. package/dist/visualization.es380.js +13 -9
  577. package/dist/visualization.es380.js.map +1 -1
  578. package/dist/visualization.es381.js +2 -36
  579. package/dist/visualization.es381.js.map +1 -1
  580. package/dist/visualization.es382.js +10 -10
  581. package/dist/visualization.es382.js.map +1 -1
  582. package/dist/visualization.es383.js +7 -31
  583. package/dist/visualization.es383.js.map +1 -1
  584. package/dist/visualization.es384.js +5 -4
  585. package/dist/visualization.es384.js.map +1 -1
  586. package/dist/visualization.es385.js +25 -2
  587. package/dist/visualization.es385.js.map +1 -1
  588. package/dist/visualization.es386.js +19 -16
  589. package/dist/visualization.es386.js.map +1 -1
  590. package/dist/visualization.es387.js +39 -23
  591. package/dist/visualization.es387.js.map +1 -1
  592. package/dist/visualization.es388.js +3 -2
  593. package/dist/visualization.es388.js.map +1 -1
  594. package/dist/visualization.es389.js +7 -61
  595. package/dist/visualization.es389.js.map +1 -1
  596. package/dist/visualization.es39.js +18 -17
  597. package/dist/visualization.es39.js.map +1 -1
  598. package/dist/visualization.es390.js +9 -2
  599. package/dist/visualization.es390.js.map +1 -1
  600. package/dist/visualization.es391.js +36 -2
  601. package/dist/visualization.es391.js.map +1 -1
  602. package/dist/visualization.es392.js +9 -5
  603. package/dist/visualization.es392.js.map +1 -1
  604. package/dist/visualization.es393.js +29 -34
  605. package/dist/visualization.es393.js.map +1 -1
  606. package/dist/visualization.es394.js +4 -20
  607. package/dist/visualization.es394.js.map +1 -1
  608. package/dist/visualization.es395.js +2 -4
  609. package/dist/visualization.es395.js.map +1 -1
  610. package/dist/visualization.es396.js +15 -4
  611. package/dist/visualization.es396.js.map +1 -1
  612. package/dist/visualization.es397.js +24 -4
  613. package/dist/visualization.es397.js.map +1 -1
  614. package/dist/visualization.es398.js +2 -49
  615. package/dist/visualization.es398.js.map +1 -1
  616. package/dist/visualization.es399.js +61 -25
  617. package/dist/visualization.es399.js.map +1 -1
  618. package/dist/visualization.es4.js +6 -6
  619. package/dist/visualization.es40.js +54 -31
  620. package/dist/visualization.es40.js.map +1 -1
  621. package/dist/visualization.es400.js +2 -17
  622. package/dist/visualization.es400.js.map +1 -1
  623. package/dist/visualization.es401.js +2 -10
  624. package/dist/visualization.es401.js.map +1 -1
  625. package/dist/visualization.es402.js +5 -19
  626. package/dist/visualization.es402.js.map +1 -1
  627. package/dist/visualization.es403.js +37 -14
  628. package/dist/visualization.es403.js.map +1 -1
  629. package/dist/visualization.es404.js +20 -3
  630. package/dist/visualization.es404.js.map +1 -1
  631. package/dist/visualization.es405.js +4 -13
  632. package/dist/visualization.es405.js.map +1 -1
  633. package/dist/visualization.es406.js +4 -48
  634. package/dist/visualization.es406.js.map +1 -1
  635. package/dist/visualization.es407.js +4 -5
  636. package/dist/visualization.es407.js.map +1 -1
  637. package/dist/visualization.es408.js +47 -11
  638. package/dist/visualization.es408.js.map +1 -1
  639. package/dist/visualization.es409.js +27 -2
  640. package/dist/visualization.es409.js.map +1 -1
  641. package/dist/visualization.es41.js +110 -168
  642. package/dist/visualization.es41.js.map +1 -1
  643. package/dist/visualization.es410.js +16 -6
  644. package/dist/visualization.es410.js.map +1 -1
  645. package/dist/visualization.es411.js +10 -210
  646. package/dist/visualization.es411.js.map +1 -1
  647. package/dist/visualization.es412.js +18 -25
  648. package/dist/visualization.es412.js.map +1 -1
  649. package/dist/visualization.es413.js +14 -4
  650. package/dist/visualization.es413.js.map +1 -1
  651. package/dist/visualization.es414.js +4 -16
  652. package/dist/visualization.es414.js.map +1 -1
  653. package/dist/visualization.es415.js +12 -14
  654. package/dist/visualization.es415.js.map +1 -1
  655. package/dist/visualization.es416.js +48 -14
  656. package/dist/visualization.es416.js.map +1 -1
  657. package/dist/visualization.es417.js +6 -2
  658. package/dist/visualization.es417.js.map +1 -1
  659. package/dist/visualization.es418.js +13 -2
  660. package/dist/visualization.es418.js.map +1 -1
  661. package/dist/visualization.es419.js +2 -2
  662. package/dist/visualization.es419.js.map +1 -1
  663. package/dist/visualization.es42.js +7 -64
  664. package/dist/visualization.es42.js.map +1 -1
  665. package/dist/visualization.es420.js +7 -5
  666. package/dist/visualization.es420.js.map +1 -1
  667. package/dist/visualization.es421.js +210 -2
  668. package/dist/visualization.es421.js.map +1 -1
  669. package/dist/visualization.es422.js +27 -25
  670. package/dist/visualization.es422.js.map +1 -1
  671. package/dist/visualization.es423.js +3 -21
  672. package/dist/visualization.es423.js.map +1 -1
  673. package/dist/visualization.es424.js +15 -8
  674. package/dist/visualization.es424.js.map +1 -1
  675. package/dist/visualization.es425.js +14 -67
  676. package/dist/visualization.es425.js.map +1 -1
  677. package/dist/visualization.es426.js +13 -4
  678. package/dist/visualization.es426.js.map +1 -1
  679. package/dist/visualization.es427.js +2 -29
  680. package/dist/visualization.es427.js.map +1 -1
  681. package/dist/visualization.es428.js +2 -10
  682. package/dist/visualization.es428.js.map +1 -1
  683. package/dist/visualization.es429.js +2 -6
  684. package/dist/visualization.es429.js.map +1 -1
  685. package/dist/visualization.es43.js +33 -174
  686. package/dist/visualization.es43.js.map +1 -1
  687. package/dist/visualization.es430.js +5 -2
  688. package/dist/visualization.es430.js.map +1 -1
  689. package/dist/visualization.es431.js +2 -5
  690. package/dist/visualization.es431.js.map +1 -1
  691. package/dist/visualization.es432.js +25 -26
  692. package/dist/visualization.es432.js.map +1 -1
  693. package/dist/visualization.es433.js +21 -10
  694. package/dist/visualization.es433.js.map +1 -1
  695. package/dist/visualization.es434.js +8 -26
  696. package/dist/visualization.es434.js.map +1 -1
  697. package/dist/visualization.es435.js +68 -10
  698. package/dist/visualization.es435.js.map +1 -1
  699. package/dist/visualization.es436.js +6 -11
  700. package/dist/visualization.es436.js.map +1 -1
  701. package/dist/visualization.es437.js +29 -2
  702. package/dist/visualization.es437.js.map +1 -1
  703. package/dist/visualization.es438.js +10 -16
  704. package/dist/visualization.es438.js.map +1 -1
  705. package/dist/visualization.es439.js +6 -30
  706. package/dist/visualization.es439.js.map +1 -1
  707. package/dist/visualization.es44.js +34 -73
  708. package/dist/visualization.es44.js.map +1 -1
  709. package/dist/visualization.es440.js +2 -26
  710. package/dist/visualization.es440.js.map +1 -1
  711. package/dist/visualization.es441.js +5 -2
  712. package/dist/visualization.es441.js.map +1 -1
  713. package/dist/visualization.es442.js +25 -8
  714. package/dist/visualization.es442.js.map +1 -1
  715. package/dist/visualization.es443.js +10 -12
  716. package/dist/visualization.es443.js.map +1 -1
  717. package/dist/visualization.es444.js +25 -21
  718. package/dist/visualization.es444.js.map +1 -1
  719. package/dist/visualization.es445.js +9 -12
  720. package/dist/visualization.es445.js.map +1 -1
  721. package/dist/visualization.es446.js +11 -3
  722. package/dist/visualization.es446.js.map +1 -1
  723. package/dist/visualization.es447.js +2 -2
  724. package/dist/visualization.es447.js.map +1 -1
  725. package/dist/visualization.es448.js +16 -18
  726. package/dist/visualization.es448.js.map +1 -1
  727. package/dist/visualization.es449.js +29 -3
  728. package/dist/visualization.es449.js.map +1 -1
  729. package/dist/visualization.es45.js +10 -112
  730. package/dist/visualization.es45.js.map +1 -1
  731. package/dist/visualization.es450.js +26 -12
  732. package/dist/visualization.es450.js.map +1 -1
  733. package/dist/visualization.es451.js +2 -11
  734. package/dist/visualization.es451.js.map +1 -1
  735. package/dist/visualization.es452.js +8 -6
  736. package/dist/visualization.es452.js.map +1 -1
  737. package/dist/visualization.es453.js +13 -19
  738. package/dist/visualization.es453.js.map +1 -1
  739. package/dist/visualization.es454.js +22 -22
  740. package/dist/visualization.es454.js.map +1 -1
  741. package/dist/visualization.es455.js +12 -11
  742. package/dist/visualization.es455.js.map +1 -1
  743. package/dist/visualization.es456.js +3 -51
  744. package/dist/visualization.es456.js.map +1 -1
  745. package/dist/visualization.es457.js +2 -18
  746. package/dist/visualization.es457.js.map +1 -1
  747. package/dist/visualization.es458.js +17 -35
  748. package/dist/visualization.es458.js.map +1 -1
  749. package/dist/visualization.es459.js +3 -22
  750. package/dist/visualization.es459.js.map +1 -1
  751. package/dist/visualization.es46.js +55 -18702
  752. package/dist/visualization.es46.js.map +1 -1
  753. package/dist/visualization.es460.js +11 -31
  754. package/dist/visualization.es460.js.map +1 -1
  755. package/dist/visualization.es461.js +11 -4
  756. package/dist/visualization.es461.js.map +1 -1
  757. package/dist/visualization.es462.js +6 -18
  758. package/dist/visualization.es462.js.map +1 -1
  759. package/dist/visualization.es463.js +18 -13
  760. package/dist/visualization.es463.js.map +1 -1
  761. package/dist/visualization.es464.js +22 -10
  762. package/dist/visualization.es464.js.map +1 -1
  763. package/dist/visualization.es465.js +9 -27
  764. package/dist/visualization.es465.js.map +1 -1
  765. package/dist/visualization.es466.js +51 -6
  766. package/dist/visualization.es466.js.map +1 -1
  767. package/dist/visualization.es467.js +17 -7
  768. package/dist/visualization.es467.js.map +1 -1
  769. package/dist/visualization.es468.js +36 -2
  770. package/dist/visualization.es468.js.map +1 -1
  771. package/dist/visualization.es469.js +22 -16
  772. package/dist/visualization.es469.js.map +1 -1
  773. package/dist/visualization.es47.js +44 -5
  774. package/dist/visualization.es47.js.map +1 -1
  775. package/dist/visualization.es470.js +30 -7
  776. package/dist/visualization.es470.js.map +1 -1
  777. package/dist/visualization.es471.js +3 -9
  778. package/dist/visualization.es471.js.map +1 -1
  779. package/dist/visualization.es472.js +18 -615
  780. package/dist/visualization.es472.js.map +1 -1
  781. package/dist/visualization.es473.js +13 -50
  782. package/dist/visualization.es473.js.map +1 -1
  783. package/dist/visualization.es474.js +11 -13
  784. package/dist/visualization.es474.js.map +1 -1
  785. package/dist/visualization.es475.js +30 -11
  786. package/dist/visualization.es475.js.map +1 -1
  787. package/dist/visualization.es476.js +6 -23
  788. package/dist/visualization.es476.js.map +1 -1
  789. package/dist/visualization.es477.js +7 -34
  790. package/dist/visualization.es477.js.map +1 -1
  791. package/dist/visualization.es478.js +2 -13
  792. package/dist/visualization.es478.js.map +1 -1
  793. package/dist/visualization.es479.js +12 -15
  794. package/dist/visualization.es479.js.map +1 -1
  795. package/dist/visualization.es48.js +40 -5
  796. package/dist/visualization.es48.js.map +1 -1
  797. package/dist/visualization.es480.js +8 -40
  798. package/dist/visualization.es480.js.map +1 -1
  799. package/dist/visualization.es481.js +9 -57
  800. package/dist/visualization.es481.js.map +1 -1
  801. package/dist/visualization.es482.js +613 -16
  802. package/dist/visualization.es482.js.map +1 -1
  803. package/dist/visualization.es483.js +44 -19
  804. package/dist/visualization.es483.js.map +1 -1
  805. package/dist/visualization.es484.js +13 -27
  806. package/dist/visualization.es484.js.map +1 -1
  807. package/dist/visualization.es485.js +11 -43
  808. package/dist/visualization.es485.js.map +1 -1
  809. package/dist/visualization.es486.js +34 -3
  810. package/dist/visualization.es486.js.map +1 -1
  811. package/dist/visualization.es487.js +13 -3
  812. package/dist/visualization.es487.js.map +1 -1
  813. package/dist/visualization.es488.js +4 -7
  814. package/dist/visualization.es488.js.map +1 -1
  815. package/dist/visualization.es489.js +3 -16
  816. package/dist/visualization.es489.js.map +1 -1
  817. package/dist/visualization.es49.js +79 -58
  818. package/dist/visualization.es49.js.map +1 -1
  819. package/dist/visualization.es490.js +7 -2
  820. package/dist/visualization.es490.js.map +1 -1
  821. package/dist/visualization.es491.js +16 -2
  822. package/dist/visualization.es491.js.map +1 -1
  823. package/dist/visualization.es492.js +2 -2
  824. package/dist/visualization.es492.js.map +1 -1
  825. package/dist/visualization.es493.js +2 -10
  826. package/dist/visualization.es493.js.map +1 -1
  827. package/dist/visualization.es494.js +2 -10
  828. package/dist/visualization.es494.js.map +1 -1
  829. package/dist/visualization.es495.js +9 -6
  830. package/dist/visualization.es495.js.map +1 -1
  831. package/dist/visualization.es496.js +8 -7
  832. package/dist/visualization.es496.js.map +1 -1
  833. package/dist/visualization.es497.js +6 -6
  834. package/dist/visualization.es497.js.map +1 -1
  835. package/dist/visualization.es498.js +8 -5
  836. package/dist/visualization.es498.js.map +1 -1
  837. package/dist/visualization.es499.js +6 -14
  838. package/dist/visualization.es499.js.map +1 -1
  839. package/dist/visualization.es5.js +95 -95
  840. package/dist/visualization.es5.js.map +1 -1
  841. package/dist/visualization.es50.js +44 -809
  842. package/dist/visualization.es50.js.map +1 -1
  843. package/dist/visualization.es500.js +4 -4
  844. package/dist/visualization.es500.js.map +1 -1
  845. package/dist/visualization.es501.js +14 -6
  846. package/dist/visualization.es501.js.map +1 -1
  847. package/dist/visualization.es502.js +5 -6
  848. package/dist/visualization.es502.js.map +1 -1
  849. package/dist/visualization.es503.js +5 -5
  850. package/dist/visualization.es503.js.map +1 -1
  851. package/dist/visualization.es504.js +6 -3
  852. package/dist/visualization.es504.js.map +1 -1
  853. package/dist/visualization.es505.js +6 -4
  854. package/dist/visualization.es505.js.map +1 -1
  855. package/dist/visualization.es506.js +3 -9
  856. package/dist/visualization.es506.js.map +1 -1
  857. package/dist/visualization.es507.js +4 -29
  858. package/dist/visualization.es507.js.map +1 -1
  859. package/dist/visualization.es508.js +7 -59
  860. package/dist/visualization.es508.js.map +1 -1
  861. package/dist/visualization.es509.js +26 -234
  862. package/dist/visualization.es509.js.map +1 -1
  863. package/dist/visualization.es51.js +59 -0
  864. package/dist/visualization.es51.js.map +1 -0
  865. package/dist/visualization.es510.js +117 -986
  866. package/dist/visualization.es510.js.map +1 -1
  867. package/dist/visualization.es513.js +3 -3
  868. package/dist/visualization.es515.js +1 -1
  869. package/dist/visualization.es516.js +3 -3
  870. package/dist/visualization.es52.js +7 -131
  871. package/dist/visualization.es52.js.map +1 -1
  872. package/dist/visualization.es520.js +1 -1
  873. package/dist/visualization.es521.js +1 -1
  874. package/dist/visualization.es522.js +1 -1
  875. package/dist/visualization.es523.js +6 -6
  876. package/dist/visualization.es524.js +1 -1
  877. package/dist/visualization.es525.js +6 -6
  878. package/dist/visualization.es526.js +8 -8
  879. package/dist/visualization.es527.js +6 -6
  880. package/dist/visualization.es528.js +1 -1
  881. package/dist/visualization.es529.js +32 -32
  882. package/dist/visualization.es529.js.map +1 -1
  883. package/dist/visualization.es53.js +10 -41
  884. package/dist/visualization.es53.js.map +1 -1
  885. package/dist/visualization.es530.js +25 -30
  886. package/dist/visualization.es530.js.map +1 -1
  887. package/dist/visualization.es531.js +45 -33
  888. package/dist/visualization.es531.js.map +1 -1
  889. package/dist/visualization.es532.js +8 -24
  890. package/dist/visualization.es532.js.map +1 -1
  891. package/dist/visualization.es533.js +15 -46
  892. package/dist/visualization.es533.js.map +1 -1
  893. package/dist/visualization.es534.js +16 -9
  894. package/dist/visualization.es534.js.map +1 -1
  895. package/dist/visualization.es535.js +16 -15
  896. package/dist/visualization.es535.js.map +1 -1
  897. package/dist/visualization.es536.js +23 -15
  898. package/dist/visualization.es536.js.map +1 -1
  899. package/dist/visualization.es537.js +6 -16
  900. package/dist/visualization.es537.js.map +1 -1
  901. package/dist/visualization.es538.js +34 -24
  902. package/dist/visualization.es538.js.map +1 -1
  903. package/dist/visualization.es539.js +29 -5
  904. package/dist/visualization.es539.js.map +1 -1
  905. package/dist/visualization.es54.js +57 -35
  906. package/dist/visualization.es54.js.map +1 -1
  907. package/dist/visualization.es541.js +2 -2
  908. package/dist/visualization.es542.js +4 -4
  909. package/dist/visualization.es543.js +3 -3
  910. package/dist/visualization.es544.js +3 -3
  911. package/dist/visualization.es546.js +8 -8
  912. package/dist/visualization.es547.js +282 -5
  913. package/dist/visualization.es547.js.map +1 -1
  914. package/dist/visualization.es548.js +2 -4
  915. package/dist/visualization.es548.js.map +1 -1
  916. package/dist/visualization.es549.js +128 -2
  917. package/dist/visualization.es549.js.map +1 -1
  918. package/dist/visualization.es55.js +18699 -67
  919. package/dist/visualization.es55.js.map +1 -1
  920. package/dist/visualization.es551.js +5 -282
  921. package/dist/visualization.es551.js.map +1 -1
  922. package/dist/visualization.es552.js +4 -2
  923. package/dist/visualization.es552.js.map +1 -1
  924. package/dist/visualization.es553.js +2 -128
  925. package/dist/visualization.es553.js.map +1 -1
  926. package/dist/visualization.es554.js +3 -9
  927. package/dist/visualization.es554.js.map +1 -1
  928. package/dist/visualization.es555.js +3 -51
  929. package/dist/visualization.es555.js.map +1 -1
  930. package/dist/visualization.es556.js +15 -7
  931. package/dist/visualization.es556.js.map +1 -1
  932. package/dist/visualization.es557.js +3 -4
  933. package/dist/visualization.es557.js.map +1 -1
  934. package/dist/visualization.es558.js +9 -3
  935. package/dist/visualization.es558.js.map +1 -1
  936. package/dist/visualization.es559.js +4 -3
  937. package/dist/visualization.es559.js.map +1 -1
  938. package/dist/visualization.es56.js +5 -44
  939. package/dist/visualization.es56.js.map +1 -1
  940. package/dist/visualization.es560.js +6 -4
  941. package/dist/visualization.es560.js.map +1 -1
  942. package/dist/visualization.es561.js +9 -3
  943. package/dist/visualization.es561.js.map +1 -1
  944. package/dist/visualization.es562.js +7 -11
  945. package/dist/visualization.es562.js.map +1 -1
  946. package/dist/visualization.es563.js +4 -9
  947. package/dist/visualization.es563.js.map +1 -1
  948. package/dist/visualization.es564.js +3 -30
  949. package/dist/visualization.es564.js.map +1 -1
  950. package/dist/visualization.es565.js +4 -25
  951. package/dist/visualization.es565.js.map +1 -1
  952. package/dist/visualization.es566.js +11 -3
  953. package/dist/visualization.es566.js.map +1 -1
  954. package/dist/visualization.es567.js +9 -3
  955. package/dist/visualization.es567.js.map +1 -1
  956. package/dist/visualization.es568.js +30 -9
  957. package/dist/visualization.es568.js.map +1 -1
  958. package/dist/visualization.es569.js +24 -8
  959. package/dist/visualization.es569.js.map +1 -1
  960. package/dist/visualization.es57.js +5 -12
  961. package/dist/visualization.es57.js.map +1 -1
  962. package/dist/visualization.es570.js +50 -14
  963. package/dist/visualization.es570.js.map +1 -1
  964. package/dist/visualization.es571.js +3 -4
  965. package/dist/visualization.es571.js.map +1 -1
  966. package/dist/visualization.es572.js +8 -5
  967. package/dist/visualization.es572.js.map +1 -1
  968. package/dist/visualization.es573.js +3 -3
  969. package/dist/visualization.es574.js +3 -3
  970. package/dist/visualization.es575.js +2 -2
  971. package/dist/visualization.es576.js +1 -1
  972. package/dist/visualization.es577.js +1 -1
  973. package/dist/visualization.es578.js +2 -2
  974. package/dist/visualization.es579.js +1 -1
  975. package/dist/visualization.es58.js +59 -34
  976. package/dist/visualization.es58.js.map +1 -1
  977. package/dist/visualization.es581.js +5 -5
  978. package/dist/visualization.es583.js +1 -1
  979. package/dist/visualization.es584.js +1 -1
  980. package/dist/visualization.es585.js +1 -1
  981. package/dist/visualization.es587.js +6 -6
  982. package/dist/visualization.es588.js +1 -1
  983. package/dist/visualization.es59.js +808 -8
  984. package/dist/visualization.es59.js.map +1 -1
  985. package/dist/visualization.es591.js +1 -1
  986. package/dist/visualization.es592.js +1 -1
  987. package/dist/visualization.es593.js +1 -1
  988. package/dist/visualization.es594.js +1 -1
  989. package/dist/visualization.es595.js +2 -2
  990. package/dist/visualization.es596.js +2 -2
  991. package/dist/visualization.es597.js +2 -2
  992. package/dist/visualization.es598.js +2 -2
  993. package/dist/visualization.es599.js +2 -2
  994. package/dist/visualization.es6.js +15 -15
  995. package/dist/visualization.es600.js +31 -11
  996. package/dist/visualization.es600.js.map +1 -1
  997. package/dist/visualization.es601.js +12 -24
  998. package/dist/visualization.es601.js.map +1 -1
  999. package/dist/visualization.es602.js +24 -19
  1000. package/dist/visualization.es602.js.map +1 -1
  1001. package/dist/visualization.es603.js +20 -7
  1002. package/dist/visualization.es603.js.map +1 -1
  1003. package/dist/visualization.es604.js +5 -4
  1004. package/dist/visualization.es604.js.map +1 -1
  1005. package/dist/visualization.es605.js +6 -4
  1006. package/dist/visualization.es605.js.map +1 -1
  1007. package/dist/visualization.es606.js +3 -64
  1008. package/dist/visualization.es606.js.map +1 -1
  1009. package/dist/visualization.es607.js +62 -30
  1010. package/dist/visualization.es607.js.map +1 -1
  1011. package/dist/visualization.es608.js +290 -4
  1012. package/dist/visualization.es608.js.map +1 -1
  1013. package/dist/visualization.es609.js +4 -8
  1014. package/dist/visualization.es609.js.map +1 -1
  1015. package/dist/visualization.es61.js +130 -51
  1016. package/dist/visualization.es61.js.map +1 -1
  1017. package/dist/visualization.es610.js +6 -4
  1018. package/dist/visualization.es610.js.map +1 -1
  1019. package/dist/visualization.es611.js +5 -289
  1020. package/dist/visualization.es611.js.map +1 -1
  1021. package/dist/visualization.es612.js +3 -3
  1022. package/dist/visualization.es613.js +4 -4
  1023. package/dist/visualization.es614.js +3 -9
  1024. package/dist/visualization.es614.js.map +1 -1
  1025. package/dist/visualization.es615.js +4 -8
  1026. package/dist/visualization.es615.js.map +1 -1
  1027. package/dist/visualization.es616.js +5 -18
  1028. package/dist/visualization.es616.js.map +1 -1
  1029. package/dist/visualization.es617.js +13 -3
  1030. package/dist/visualization.es617.js.map +1 -1
  1031. package/dist/visualization.es618.js +9 -5
  1032. package/dist/visualization.es618.js.map +1 -1
  1033. package/dist/visualization.es619.js +8 -4
  1034. package/dist/visualization.es619.js.map +1 -1
  1035. package/dist/visualization.es62.js +65 -54
  1036. package/dist/visualization.es62.js.map +1 -1
  1037. package/dist/visualization.es620.js +18 -13
  1038. package/dist/visualization.es620.js.map +1 -1
  1039. package/dist/visualization.es622.js +65 -3
  1040. package/dist/visualization.es622.js.map +1 -1
  1041. package/dist/visualization.es623.js +4 -11
  1042. package/dist/visualization.es623.js.map +1 -1
  1043. package/dist/visualization.es624.js +6 -64
  1044. package/dist/visualization.es624.js.map +1 -1
  1045. package/dist/visualization.es625.js +6 -3
  1046. package/dist/visualization.es625.js.map +1 -1
  1047. package/dist/visualization.es626.js +16 -7
  1048. package/dist/visualization.es626.js.map +1 -1
  1049. package/dist/visualization.es627.js +19 -8
  1050. package/dist/visualization.es627.js.map +1 -1
  1051. package/dist/visualization.es628.js +9 -16
  1052. package/dist/visualization.es628.js.map +1 -1
  1053. package/dist/visualization.es629.js +4 -19
  1054. package/dist/visualization.es629.js.map +1 -1
  1055. package/dist/visualization.es63.js +265 -42
  1056. package/dist/visualization.es63.js.map +1 -1
  1057. package/dist/visualization.es630.js +28 -9
  1058. package/dist/visualization.es630.js.map +1 -1
  1059. package/dist/visualization.es631.js +6 -4
  1060. package/dist/visualization.es631.js.map +1 -1
  1061. package/dist/visualization.es632.js +10 -28
  1062. package/dist/visualization.es632.js.map +1 -1
  1063. package/dist/visualization.es633.js +7 -6
  1064. package/dist/visualization.es633.js.map +1 -1
  1065. package/dist/visualization.es634.js +10 -9
  1066. package/dist/visualization.es634.js.map +1 -1
  1067. package/dist/visualization.es635.js +20 -5
  1068. package/dist/visualization.es635.js.map +1 -1
  1069. package/dist/visualization.es636.js +2 -12
  1070. package/dist/visualization.es636.js.map +1 -1
  1071. package/dist/visualization.es637.js +9 -18
  1072. package/dist/visualization.es637.js.map +1 -1
  1073. package/dist/visualization.es638.js +303 -2
  1074. package/dist/visualization.es638.js.map +1 -1
  1075. package/dist/visualization.es639.js +23 -9
  1076. package/dist/visualization.es639.js.map +1 -1
  1077. package/dist/visualization.es64.js +103 -6
  1078. package/dist/visualization.es64.js.map +1 -1
  1079. package/dist/visualization.es640.js +61 -286
  1080. package/dist/visualization.es640.js.map +1 -1
  1081. package/dist/visualization.es641.js +32 -24
  1082. package/dist/visualization.es641.js.map +1 -1
  1083. package/dist/visualization.es642.js +3 -77
  1084. package/dist/visualization.es642.js.map +1 -1
  1085. package/dist/visualization.es643.js +11 -34
  1086. package/dist/visualization.es643.js.map +1 -1
  1087. package/dist/visualization.es65.js +27 -5
  1088. package/dist/visualization.es65.js.map +1 -1
  1089. package/dist/visualization.es66.js +23 -18
  1090. package/dist/visualization.es66.js.map +1 -1
  1091. package/dist/visualization.es67.js +18 -5
  1092. package/dist/visualization.es67.js.map +1 -1
  1093. package/dist/visualization.es68.js +20 -26
  1094. package/dist/visualization.es68.js.map +1 -1
  1095. package/dist/visualization.es69.js +73 -30
  1096. package/dist/visualization.es69.js.map +1 -1
  1097. package/dist/visualization.es7.js +11 -11
  1098. package/dist/visualization.es70.js +81 -8
  1099. package/dist/visualization.es70.js.map +1 -1
  1100. package/dist/visualization.es71.js +32 -8
  1101. package/dist/visualization.es71.js.map +1 -1
  1102. package/dist/visualization.es72.js +169 -29
  1103. package/dist/visualization.es72.js.map +1 -1
  1104. package/dist/visualization.es73.js +83 -64
  1105. package/dist/visualization.es73.js.map +1 -1
  1106. package/dist/visualization.es74.js +174 -61
  1107. package/dist/visualization.es74.js.map +1 -1
  1108. package/dist/visualization.es75.js +74 -4
  1109. package/dist/visualization.es75.js.map +1 -1
  1110. package/dist/visualization.es76.js +51 -46
  1111. package/dist/visualization.es76.js.map +1 -1
  1112. package/dist/visualization.es77.js +54 -3
  1113. package/dist/visualization.es77.js.map +1 -1
  1114. package/dist/visualization.es78.js +40 -279
  1115. package/dist/visualization.es78.js.map +1 -1
  1116. package/dist/visualization.es79.js +5 -18
  1117. package/dist/visualization.es79.js.map +1 -1
  1118. package/dist/visualization.es8.js +13 -13
  1119. package/dist/visualization.es80.js +5 -66
  1120. package/dist/visualization.es80.js.map +1 -1
  1121. package/dist/visualization.es81.js +18 -266
  1122. package/dist/visualization.es81.js.map +1 -1
  1123. package/dist/visualization.es82.js +5 -103
  1124. package/dist/visualization.es82.js.map +1 -1
  1125. package/dist/visualization.es83.js +27 -27
  1126. package/dist/visualization.es83.js.map +1 -1
  1127. package/dist/visualization.es84.js +30 -22
  1128. package/dist/visualization.es84.js.map +1 -1
  1129. package/dist/visualization.es85.js +8 -18
  1130. package/dist/visualization.es85.js.map +1 -1
  1131. package/dist/visualization.es86.js +7 -20
  1132. package/dist/visualization.es86.js.map +1 -1
  1133. package/dist/visualization.es87.js +70 -74
  1134. package/dist/visualization.es87.js.map +1 -1
  1135. package/dist/visualization.es88.js +12 -81
  1136. package/dist/visualization.es88.js.map +1 -1
  1137. package/dist/visualization.es89.js +1 -1
  1138. package/dist/visualization.es9.js +1 -1
  1139. package/dist/visualization.es90.js +2 -2
  1140. package/dist/visualization.es91.js +2 -2
  1141. package/dist/visualization.es92.js +1 -1
  1142. package/dist/visualization.es93.js +1 -1
  1143. package/dist/visualization.es94.js +1 -1
  1144. package/dist/visualization.es95.js +58 -13
  1145. package/dist/visualization.es95.js.map +1 -1
  1146. package/dist/visualization.es96.js +31 -44
  1147. package/dist/visualization.es96.js.map +1 -1
  1148. package/dist/visualization.es97.js +18 -22
  1149. package/dist/visualization.es97.js.map +1 -1
  1150. package/dist/visualization.es98.js +13 -59
  1151. package/dist/visualization.es98.js.map +1 -1
  1152. package/dist/visualization.es99.js +26 -80
  1153. package/dist/visualization.es99.js.map +1 -1
  1154. package/package.json +1 -1
  1155. package/dist/visualization.es60.js +0 -58
  1156. package/dist/visualization.es60.js.map +0 -1
@@ -1,68 +1,87 @@
1
- import { jsx as b, jsxs as p, Fragment as W } from "react/jsx-runtime";
2
- import { c as S } from "react/compiler-runtime";
3
- import { TreeLink as g } from "./visualization.es121.js";
4
- import { memo as E } from "react";
5
- import { LeafLinkExtension as M } from "./visualization.es122.js";
6
- import { LeafNodeLabel as v } from "./visualization.es123.js";
7
- const F = E((x) => {
8
- const e = S(39), {
9
- node: o,
10
- dimmed: m,
11
- useBranchLengths: n,
12
- leafFontFamily: d,
13
- leafFontSize: c,
14
- onNodeMouseMove: k,
15
- onNodeMouseLeave: h,
16
- onBranchClick: L
17
- } = x;
18
- let a;
19
- e[0] !== o || e[1] !== k ? (a = (N) => k(N, o), e[0] = o, e[1] = k, e[2] = a) : a = e[2];
20
- let t;
21
- e[3] !== o || e[4] !== h ? (t = (N) => h(N, o), e[3] = o, e[4] = h, e[5] = t) : t = e[5];
22
- let i;
23
- e[6] !== o || e[7] !== L ? (i = () => L(o.leaves().map(P)), e[6] = o, e[7] = L, e[8] = i) : i = e[8];
24
- const s = m ? 0.2 : 1;
25
- let f;
26
- e[9] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (f = {
27
- transition: "opacity 0.2s ease-in"
28
- }, e[9] = f) : f = e[9];
29
- let r;
30
- e[10] !== o.baseLinkPath || e[11] !== o.color || e[12] !== o.linkStrokeWidth || e[13] !== o.scaledLinkPath || e[14] !== n ? (r = /* @__PURE__ */ b(g, { scaledLinkPath: o.scaledLinkPath, baseLinkPath: o.baseLinkPath, color: o.color, strokeWidth: o.linkStrokeWidth, useBranchLengths: n }), e[10] = o.baseLinkPath, e[11] = o.color, e[12] = o.linkStrokeWidth, e[13] = o.scaledLinkPath, e[14] = n, e[15] = r) : r = e[15];
31
- let l;
32
- e[16] !== d || e[17] !== c || e[18] !== o.baseLeafLinkExtension || e[19] !== o.baseNodeX || e[20] !== o.baseNodeY || e[21] !== o.children || e[22] !== o.color || e[23] !== o.label || e[24] !== o.labelStrokeWidth || e[25] !== o.lightenedLinkExtColor || e[26] !== o.linkStrokeWidth || e[27] !== o.scaledLeafLinkExtension || e[28] !== o.x || e[29] !== n ? (l = !o.children && /* @__PURE__ */ p(W, { children: [
33
- /* @__PURE__ */ b(M, { useBranchLengths: n, color: o.lightenedLinkExtColor, baseLeafLinkExtension: o.baseLeafLinkExtension, scaledLeafLinkExtension: o.scaledLeafLinkExtension, strokeWidth: o.linkStrokeWidth }),
34
- /* @__PURE__ */ b(v, { nodeX: o.x, strokeWidth: o.labelStrokeWidth, baseNodeX: o.baseNodeX, baseNodeY: o.baseNodeY, label: o.label, color: o.color, fontSize: c, fontFamily: d })
35
- ] }), e[16] = d, e[17] = c, e[18] = o.baseLeafLinkExtension, e[19] = o.baseNodeX, e[20] = o.baseNodeY, e[21] = o.children, e[22] = o.color, e[23] = o.label, e[24] = o.labelStrokeWidth, e[25] = o.lightenedLinkExtColor, e[26] = o.linkStrokeWidth, e[27] = o.scaledLeafLinkExtension, e[28] = o.x, e[29] = n, e[30] = l) : l = e[30];
36
- let u;
37
- return e[31] !== o.data.id || e[32] !== a || e[33] !== t || e[34] !== i || e[35] !== s || e[36] !== r || e[37] !== l ? (u = /* @__PURE__ */ p("g", { onMouseMove: a, onMouseLeave: t, onClick: i, id: o.data.id, opacity: s, style: f, children: [
38
- r,
39
- l
40
- ] }), e[31] = o.data.id, e[32] = a, e[33] = t, e[34] = i, e[35] = s, e[36] = r, e[37] = l, e[38] = u) : u = e[38], u;
41
- }), T = E(function(e) {
42
- const o = S(11), {
43
- node: m,
44
- hovered: n,
45
- useBranchLengths: d,
46
- onNodeMouseMove: c,
47
- onNodeMouseLeave: k,
48
- onBranchClick: h,
49
- leafFontSize: L,
50
- leafFontFamily: a
51
- } = e;
52
- let t;
53
- o[0] !== n || o[1] !== a || o[2] !== L || o[3] !== m || o[4] !== h || o[5] !== k || o[6] !== c || o[7] !== d ? (t = m.descendants()?.map((s, f) => {
54
- if (!s.parent)
55
- return;
56
- const r = !!n.length && !n.some((l) => s.descendantIds?.has(l) || s.ancestorIds?.has(l));
57
- return /* @__PURE__ */ b(F, { node: s, dimmed: r, useBranchLengths: d, leafFontSize: L, leafFontFamily: a, onBranchClick: h, onNodeMouseMove: c, onNodeMouseLeave: k }, f);
58
- }), o[0] = n, o[1] = a, o[2] = L, o[3] = m, o[4] = h, o[5] = k, o[6] = c, o[7] = d, o[8] = t) : t = o[8];
59
- let i;
60
- return o[9] !== t ? (i = /* @__PURE__ */ b("g", { id: "tree-root", children: t }), o[9] = t, o[10] = i) : i = o[10], i;
61
- });
62
- function P(x) {
63
- return x.data.id;
1
+ import { jsxs as L, Fragment as N, jsx as m } from "react/jsx-runtime";
2
+ import { createRoot as k } from "react-dom/client";
3
+ import { flushSync as v } from "react-dom";
4
+ import { MAX_CANVAS_EXPORT_DIMENSION as T, MAX_CANVAS_EXPORT_PIXELS as M } from "./visualization.es33.js";
5
+ import { LEGEND_GAP as _ } from "./visualization.es72.js";
6
+ import { yAxisTickLabelProps as R, AXIS_TITLE_FONT_SIZE as I, TICK_FONT_FAMILY as P } from "./visualization.es71.js";
7
+ import { drawHeatmapCells as V } from "./visualization.es108.js";
8
+ import F from "./visualization.es39.js";
9
+ import X from "./visualization.es38.js";
10
+ const d = "http://www.w3.org/2000/svg", O = "http://www.w3.org/1999/xlink", E = (e, o, t, r, n) => {
11
+ const i = document.createElementNS(d, "text");
12
+ i.setAttribute("x", String(t)), i.setAttribute("y", String(r)), n && i.setAttribute("transform", `rotate(-90, ${t}, ${r})`), i.setAttribute("text-anchor", "middle"), i.setAttribute("dominant-baseline", "middle"), i.setAttribute("font-size", String(I)), i.setAttribute("font-family", P), i.textContent = o, e.appendChild(i);
13
+ }, g = (e, o, t, r) => {
14
+ const n = document.createElementNS(d, "g");
15
+ n.setAttribute("transform", `translate(${t},${r})`), o.childNodes.forEach((i) => n.appendChild(i.cloneNode(!0))), e.appendChild(n);
16
+ };
17
+ function D(e) {
18
+ const {
19
+ xMax: o,
20
+ yMax: t,
21
+ canvasCellParams: r,
22
+ numRows: n
23
+ } = e.layout;
24
+ if (o <= 0 || t <= 0) return null;
25
+ const i = window.devicePixelRatio || 2, a = Math.min(i, T / o, T / t, Math.sqrt(M / (o * t))), s = document.createElement("canvas");
26
+ s.width = Math.max(1, Math.round(o * a)), s.height = Math.max(1, Math.round(t * a));
27
+ const c = s.getContext("2d");
28
+ if (!c) return null;
29
+ c.setTransform(a, 0, 0, a, 0, 0);
30
+ const u = {
31
+ colStart: 0,
32
+ colEnd: Math.max(0, e.data.length - 1),
33
+ rowStart: 0,
34
+ rowEnd: Math.max(0, n - 1)
35
+ };
36
+ return V(c, r, u, null), s.toDataURL("image/png");
37
+ }
38
+ const G = (e, o, t, r, n, i) => {
39
+ const a = document.createElementNS(d, "image");
40
+ a.setAttribute("x", String(t)), a.setAttribute("y", String(r)), a.setAttribute("width", String(n)), a.setAttribute("height", String(i)), a.setAttribute("preserveAspectRatio", "none"), a.setAttributeNS(O, "href", o), a.setAttribute("href", o), e.appendChild(a);
41
+ };
42
+ function $(e) {
43
+ const {
44
+ layout: o
45
+ } = e, {
46
+ marg: t,
47
+ xMax: r,
48
+ yMax: n,
49
+ xScale: i,
50
+ yScale: a,
51
+ numRows: s,
52
+ xTickValues: c,
53
+ yTickValues: u,
54
+ yTickLabelWidth: x,
55
+ xTickLabelHeight: A,
56
+ yTitleWidth: S,
57
+ xTitleHeight: y
58
+ } = o, l = document.createElementNS(d, "svg");
59
+ l.setAttribute("width", String(t.left + r + t.right)), l.setAttribute("height", String(t.top + n + t.bottom));
60
+ const b = D(e);
61
+ b && G(l, b, t.left, t.top, r, n);
62
+ let p = null, h = null;
63
+ const C = document.createElement("div"), w = k(C);
64
+ return v(() => {
65
+ w.render(/* @__PURE__ */ L(N, { children: [
66
+ /* @__PURE__ */ m("svg", { width: x, height: n, ref: (f) => {
67
+ p = f;
68
+ }, children: /* @__PURE__ */ m("g", { transform: `translate(${x},0)`, children: /* @__PURE__ */ m(F, { scale: a, numTicks: s, tickValues: u, tickFormat: e.yAxisTickFormat, tickLabelProps: R }) }) }),
69
+ /* @__PURE__ */ m("svg", { width: r, height: A, ref: (f) => {
70
+ h = f;
71
+ }, children: /* @__PURE__ */ m(X, { top: 0, scale: i, numTicks: e.data.length, tickFormat: e.xAxisTickFormat, tickValues: c, tickLabelProps: e.xAxisTickLabelProps }) })
72
+ ] }));
73
+ }), p && g(l, p, S, t.top), h && g(l, h, t.left, t.top + n), w.unmount(), e.showLegend && e.legendSvg && g(l, e.legendSvg, t.left + r + _, t.top), e.yLabel && E(l, e.yLabel, S / 2, t.top + n / 2, !0), e.xLabel && E(l, e.xLabel, t.left + r / 2, t.top + n + A + y / 2, !1), l;
74
+ }
75
+ function Z(e, o) {
76
+ const t = $(e);
77
+ if (!t) return;
78
+ const r = document.createElement("div");
79
+ r.style.position = "absolute", r.style.top = "0", r.style.left = "-99999px", r.appendChild(t), document.body.appendChild(r), o(t, () => {
80
+ r.parentNode && document.body.removeChild(r);
81
+ });
64
82
  }
65
83
  export {
66
- T as RenderTree
84
+ $ as buildScrollableExportSVG,
85
+ Z as withOffscreenExportSVG
67
86
  };
68
87
  //# sourceMappingURL=visualization.es73.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es73.js","sources":["../src/components/PhyloTree/RenderTree.tsx"],"sourcesContent":["import { PhyloTreeProps, TreeNode } from \"./types\";\nimport { TreeLink } from \"./TreeLink\";\nimport { memo } from \"react\";\nimport { LeafLinkExtension } from \"./LeafLinkExtension\";\nimport { LeafNodeLabel } from \"./LeafNodeLabel\";\n\ntype Shared = {\n node: TreeNode;\n useBranchLengths: boolean;\n leafFontSize: PhyloTreeProps[\"leafFontSize\"];\n leafFontFamily: PhyloTreeProps[\"leafFontFamily\"];\n onNodeMouseMove: (event: React.MouseEvent, node: TreeNode) => void;\n onNodeMouseLeave: (event: React.MouseEvent, node: TreeNode) => void;\n onBranchClick: (leafIds: string[]) => void;\n};\n\nexport type RenderTreeProps = Shared & {\n hovered: string[];\n};\n\nexport type RenderChildProps = Shared & {\n dimmed: boolean;\n};\n\nconst ChildNode = memo(\n ({ node, dimmed, useBranchLengths, leafFontFamily, leafFontSize, onNodeMouseMove, onNodeMouseLeave, onBranchClick }: RenderChildProps) => {\n return (\n <g\n onMouseMove={(e: React.MouseEvent) => onNodeMouseMove(e, node)}\n onMouseLeave={(e: React.MouseEvent) => onNodeMouseLeave(e, node)}\n onClick={() => onBranchClick(node.leaves().map(x => x.data.id))}\n id={node.data.id}\n opacity={dimmed ? 0.2 : 1}\n style={{ transition: \"opacity 0.2s ease-in\" }}\n >\n <TreeLink\n scaledLinkPath={node.scaledLinkPath}\n baseLinkPath={node.baseLinkPath}\n color={node.color}\n strokeWidth={node.linkStrokeWidth}\n useBranchLengths={useBranchLengths}\n />\n {!node.children && (\n <>\n <LeafLinkExtension\n useBranchLengths={useBranchLengths}\n color={node.lightenedLinkExtColor}\n baseLeafLinkExtension={node.baseLeafLinkExtension}\n scaledLeafLinkExtension={node.scaledLeafLinkExtension}\n strokeWidth={node.linkStrokeWidth}\n />\n <LeafNodeLabel\n nodeX={node.x}\n strokeWidth={node.labelStrokeWidth}\n baseNodeX={node.baseNodeX}\n baseNodeY={node.baseNodeY}\n label={node.label}\n color={node.color}\n fontSize={leafFontSize}\n fontFamily={leafFontFamily}\n />\n </>\n )}\n </g>\n );\n }\n);\n\nexport const RenderTree = memo(function RenderTree({\n node,\n hovered,\n useBranchLengths,\n onNodeMouseMove,\n onNodeMouseLeave,\n onBranchClick,\n leafFontSize,\n leafFontFamily,\n}: RenderTreeProps) {\n return (\n <g id={\"tree-root\"}>\n {/* no root node rendered (since root does not need to display link to parent) */}\n {node.descendants()?.map((child, i) => {\n if (!child.parent) return;\n //This is done to elimate a .ancestors() and .descendants() traversal on every rerender\n const dimmed = !!hovered.length && !(hovered.some(id => child.descendantIds?.has(id) || child.ancestorIds?.has(id)));\n\n return (\n <ChildNode\n key={i}\n node={child}\n dimmed={dimmed}\n useBranchLengths={useBranchLengths}\n leafFontSize={leafFontSize}\n leafFontFamily={leafFontFamily}\n onBranchClick={onBranchClick}\n onNodeMouseMove={onNodeMouseMove}\n onNodeMouseLeave={onNodeMouseLeave}\n />\n );\n })}\n </g>\n );\n}, );\n"],"names":["ChildNode","memo","t0","$","_c","node","dimmed","useBranchLengths","leafFontFamily","leafFontSize","onNodeMouseMove","onNodeMouseLeave","onBranchClick","t1","e","t2","e_0","t3","leaves","map","_temp","t4","t5","Symbol","for","transition","t6","baseLinkPath","color","linkStrokeWidth","scaledLinkPath","TreeLink","t7","baseLeafLinkExtension","baseNodeX","baseNodeY","children","label","labelStrokeWidth","lightenedLinkExtColor","scaledLeafLinkExtension","x","jsxs","Fragment","jsx","LeafLinkExtension","LeafNodeLabel","t8","data","id","RenderTree","hovered","descendants","child","i","parent","length","some","descendantIds","has","ancestorIds"],"mappings":"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"}
1
+ {"version":3,"file":"visualization.es73.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 } 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// Rasterizes the full (unwindowed) cell grid onto an off-DOM canvas using the same paint\n// routine the live scrollable grid and minimap use for their own canvases (drawHeatmapCells),\n// and returns it as a PNG data URL sized to embed directly into the export SVG. This is the key\n// difference from every other layer here: a large grid (e.g. 1000x1000 = 1M cells) rendered as\n// 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 plus one\n// small PNG blob, which is exactly how the minimap already handles full-dataset draws.\n// Resolution is capped (never upscaled) so the canvas itself can't exceed what browsers will\n// reliably allocate - past that, some browsers just hand back a blank canvas instead of erroring.\nfunction renderCellsToDataURL(o: ScrollableExportOptions): string | null {\n const { xMax, yMax, canvasCellParams, numRows } = o.layout;\n if (xMax <= 0 || yMax <= 0) return null;\n\n const desiredScale = window.devicePixelRatio || 2;\n const scale = Math.min(\n desiredScale,\n MAX_CANVAS_EXPORT_DIMENSION / xMax,\n MAX_CANVAS_EXPORT_DIMENSION / yMax,\n Math.sqrt(MAX_CANVAS_EXPORT_PIXELS / (xMax * yMax))\n );\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.toDataURL(\"image/png\");\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): 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 const cellsDataUrl = renderCellsToDataURL(o);\n if (cellsDataUrl) appendCellsImage(exportSvg, cellsDataUrl, marg.left, marg.top, xMax, yMax);\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// 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","renderCellsToDataURL","o","xMax","yMax","canvasCellParams","numRows","layout","desiredScale","window","devicePixelRatio","scale","Math","min","MAX_CANVAS_EXPORT_DIMENSION","sqrt","MAX_CANVAS_EXPORT_PIXELS","canvas","createElement","width","max","round","height","ctx","getContext","setTransform","range","colStart","colEnd","data","length","rowStart","rowEnd","drawHeatmapCells","toDataURL","appendCellsImage","dataUrl","image","setAttributeNS","buildScrollableExportSVG","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","withOffscreenExportSVG","run","svg","wrapper","style","position","body","parentNode","removeChild"],"mappings":"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"}
@@ -1,65 +1,178 @@
1
- import m from "./visualization.es214.js";
2
- import c from "./visualization.es215.js";
3
- import s from "./visualization.es216.js";
4
- import u from "./visualization.es217.js";
5
- import l from "./visualization.es218.js";
6
- import _ from "./visualization.es219.js";
7
- import y from "./visualization.es220.js";
8
- import v from "./visualization.es221.js";
9
- import g from "./visualization.es222.js";
10
- import A from "./visualization.es223.js";
11
- import w from "./visualization.es224.js";
12
- import B from "./visualization.es225.js";
13
- import b from "./visualization.es226.js";
14
- function d(e, o) {
15
- e instanceof Map ? (e = [void 0, e], o === void 0 && (o = j)) : o === void 0 && (o = C);
16
- for (var f = new i(e), r, h = [f], a, t, n, p; r = h.pop(); )
17
- if ((t = o(r.data)) && (p = (t = Array.from(t)).length))
18
- for (r.children = t, n = p - 1; n >= 0; --n)
19
- h.push(a = t[n] = new i(t[n])), a.parent = r, a.depth = r.depth + 1;
20
- return f.eachBefore(D);
21
- }
22
- function k() {
23
- return d(this).eachBefore(x);
24
- }
25
- function C(e) {
26
- return e.children;
27
- }
28
- function j(e) {
29
- return Array.isArray(e) ? e[1] : null;
30
- }
31
- function x(e) {
32
- e.data.value !== void 0 && (e.value = e.data.value), e.data = e.data.data;
33
- }
34
- function D(e) {
35
- var o = 0;
36
- do
37
- e.height = o;
38
- while ((e = e.parent) && e.height < ++o);
39
- }
40
- function i(e) {
41
- this.data = e, this.depth = this.height = 0, this.parent = null;
42
- }
43
- i.prototype = d.prototype = {
44
- constructor: i,
45
- count: m,
46
- each: c,
47
- eachAfter: u,
48
- eachBefore: s,
49
- find: l,
50
- sum: _,
51
- sort: y,
52
- path: v,
53
- ancestors: g,
54
- descendants: A,
55
- leaves: w,
56
- links: B,
57
- copy: k,
58
- [Symbol.iterator]: b
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.es106.js";
4
+ import ci from "./visualization.es109.js";
5
+ import hi from "./visualization.es110.js";
6
+ import { TICK_FONT_FAMILY as C, AXIS_TITLE_FONT_SIZE as M, yAxisTickLabelProps as mi } from "./visualization.es71.js";
7
+ import { MINI_MAP_HEIGHT as pi, LEGEND_GAP as b } from "./visualization.es72.js";
8
+ import { useHeatmapCanvasGrid as fi } from "./visualization.es111.js";
9
+ import { useScrollToSelection as gi } from "./visualization.es112.js";
10
+ import xi from "./visualization.es39.js";
11
+ import vi from "./visualization.es12.js";
12
+ import ui from "./visualization.es38.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
28
+ }) => {
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
69
+ });
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
+ ] });
59
174
  };
60
175
  export {
61
- i as Node,
62
- D as computeHeight,
63
- d as default
176
+ Si as default
64
177
  };
65
178
  //# sourceMappingURL=visualization.es74.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es74.js","sources":["../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/index.js"],"sourcesContent":["import node_count from \"./count.js\";\nimport node_each from \"./each.js\";\nimport node_eachBefore from \"./eachBefore.js\";\nimport node_eachAfter from \"./eachAfter.js\";\nimport node_find from \"./find.js\";\nimport node_sum from \"./sum.js\";\nimport node_sort from \"./sort.js\";\nimport node_path from \"./path.js\";\nimport node_ancestors from \"./ancestors.js\";\nimport node_descendants from \"./descendants.js\";\nimport node_leaves from \"./leaves.js\";\nimport node_links from \"./links.js\";\nimport node_iterator from \"./iterator.js\";\n\nexport default function hierarchy(data, children) {\n if (data instanceof Map) {\n data = [undefined, data];\n if (children === undefined) children = mapChildren;\n } else if (children === undefined) {\n children = objectChildren;\n }\n\n var root = new Node(data),\n node,\n nodes = [root],\n child,\n childs,\n i,\n n;\n\n while (node = nodes.pop()) {\n if ((childs = children(node.data)) && (n = (childs = Array.from(childs)).length)) {\n node.children = childs;\n for (i = n - 1; i >= 0; --i) {\n nodes.push(child = childs[i] = new Node(childs[i]));\n child.parent = node;\n child.depth = node.depth + 1;\n }\n }\n }\n\n return root.eachBefore(computeHeight);\n}\n\nfunction node_copy() {\n return hierarchy(this).eachBefore(copyData);\n}\n\nfunction objectChildren(d) {\n return d.children;\n}\n\nfunction mapChildren(d) {\n return Array.isArray(d) ? d[1] : null;\n}\n\nfunction copyData(node) {\n if (node.data.value !== undefined) node.value = node.data.value;\n node.data = node.data.data;\n}\n\nexport function computeHeight(node) {\n var height = 0;\n do node.height = height;\n while ((node = node.parent) && (node.height < ++height));\n}\n\nexport function Node(data) {\n this.data = data;\n this.depth =\n this.height = 0;\n this.parent = null;\n}\n\nNode.prototype = hierarchy.prototype = {\n constructor: Node,\n count: node_count,\n each: node_each,\n eachAfter: node_eachAfter,\n eachBefore: node_eachBefore,\n find: node_find,\n sum: node_sum,\n sort: node_sort,\n path: node_path,\n ancestors: node_ancestors,\n descendants: node_descendants,\n leaves: node_leaves,\n links: node_links,\n copy: node_copy,\n [Symbol.iterator]: node_iterator\n};\n"],"names":["hierarchy","data","children","mapChildren","objectChildren","root","Node","node","nodes","child","childs","i","n","computeHeight","node_copy","copyData","d","height","node_count","node_each","node_eachAfter","node_eachBefore","node_find","node_sum","node_sort","node_path","node_ancestors","node_descendants","node_leaves","node_links","node_iterator"],"mappings":";;;;;;;;;;;;;AAce,SAASA,EAAUC,GAAMC,GAAU;AAChD,EAAID,aAAgB,OAClBA,IAAO,CAAC,QAAWA,CAAI,GACnBC,MAAa,WAAWA,IAAWC,MAC9BD,MAAa,WACtBA,IAAWE;AAWb,WARIC,IAAO,IAAIC,EAAKL,CAAI,GACpBM,GACAC,IAAQ,CAACH,CAAI,GACbI,GACAC,GACAC,GACAC,GAEGL,IAAOC,EAAM;AAClB,SAAKE,IAASR,EAASK,EAAK,IAAI,OAAOK,KAAKF,IAAS,MAAM,KAAKA,CAAM,GAAG;AAEvE,WADAH,EAAK,WAAWG,GACXC,IAAIC,IAAI,GAAGD,KAAK,GAAG,EAAEA;AACxB,QAAAH,EAAM,KAAKC,IAAQC,EAAOC,CAAC,IAAI,IAAIL,EAAKI,EAAOC,CAAC,CAAC,CAAC,GAClDF,EAAM,SAASF,GACfE,EAAM,QAAQF,EAAK,QAAQ;AAKjC,SAAOF,EAAK,WAAWQ,CAAa;AACtC;AAEA,SAASC,IAAY;AACnB,SAAOd,EAAU,IAAI,EAAE,WAAWe,CAAQ;AAC5C;AAEA,SAASX,EAAeY,GAAG;AACzB,SAAOA,EAAE;AACX;AAEA,SAASb,EAAYa,GAAG;AACtB,SAAO,MAAM,QAAQA,CAAC,IAAIA,EAAE,CAAC,IAAI;AACnC;AAEA,SAASD,EAASR,GAAM;AACtB,EAAIA,EAAK,KAAK,UAAU,WAAWA,EAAK,QAAQA,EAAK,KAAK,QAC1DA,EAAK,OAAOA,EAAK,KAAK;AACxB;AAEO,SAASM,EAAcN,GAAM;AAClC,MAAIU,IAAS;AACb;AAAG,IAAAV,EAAK,SAASU;AAAA,UACTV,IAAOA,EAAK,WAAYA,EAAK,SAAS,EAAEU;AAClD;AAEO,SAASX,EAAKL,GAAM;AACzB,OAAK,OAAOA,GACZ,KAAK,QACL,KAAK,SAAS,GACd,KAAK,SAAS;AAChB;AAEAK,EAAK,YAAYN,EAAU,YAAY;AAAA,EACrC,aAAaM;AAAA,EACb,OAAOY;AAAA,EACP,MAAMC;AAAA,EACN,WAAWC;AAAA,EACX,YAAYC;AAAA,EACZ,MAAMC;AAAA,EACN,KAAKC;AAAA,EACL,MAAMC;AAAA,EACN,MAAMC;AAAA,EACN,WAAWC;AAAA,EACX,aAAaC;AAAA,EACb,QAAQC;AAAA,EACR,OAAOC;AAAA,EACP,MAAMf;AAAA,EACN,CAAC,OAAO,QAAQ,GAAGgB;AACrB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es74.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,7 +1,77 @@
1
- function u(n, l) {
2
- return n == null || l == null ? NaN : n < l ? -1 : n > l ? 1 : n >= l ? 0 : NaN;
3
- }
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.es113.js";
4
+ import { heatmapCellStyles as Z } from "./visualization.es114.js";
5
+ import ee from "./visualization.es106.js";
6
+ import { xAxisLabelProps as te, yAxisLabelProps as le, yAxisTickLabelProps as oe } from "./visualization.es71.js";
7
+ import { AXIS_LABEL_GAP as I, LEGEND_GAP as se } from "./visualization.es72.js";
8
+ import ae from "./visualization.es38.js";
9
+ import ie from "./visualization.es39.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
+ };
4
74
  export {
5
- u as default
75
+ ge as default
6
76
  };
7
77
  //# sourceMappingURL=visualization.es75.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es75.js","sources":["../../../node_modules/.pnpm/d3-array@3.2.1/node_modules/d3-array/src/ascending.js"],"sourcesContent":["export default function ascending(a, b) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n"],"names":["ascending","a","b"],"mappings":"AAAe,SAASA,EAAUC,GAAGC,GAAG;AACtC,SAAOD,KAAK,QAAQC,KAAK,OAAO,MAAMD,IAAIC,IAAI,KAAKD,IAAIC,IAAI,IAAID,KAAKC,IAAI,IAAI;AAC9E;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es75.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":";;;;;;;;;AAgCA,MAAMA,KAAmBC,CAAAA,MAAA;AAAA,QAAAC,IAAAC,EAAA,EAAA,GAAC;AAAA,IAAAC,QAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAAC,KAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,eAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,eAAAA;AAAAA,IAAAC,iBAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,YAAAA;AAAAA,IAAAC,iBAAAA;AAAAA,IAAAC,iBAAAA;AAAAA,IAAAC,qBAAAA;AAAAA,EAAAA,IAAApB,GAKxB;AAAA,IAAAqB,MAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,YAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAC,UAAAA;AAAAA,IAAAC,UAAAA;AAAAA,IAAAC,UAAAA;AAAAA,IAAAC,WAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,gBAAAA;AAAAA,IAAAC,iBAAAA;AAAAA,EAAAA,IAGIhC;AAAO,MAAAiC;AAAA,EAAApC,EAAA,CAAA,MAAAqC,uBAAAC,IAAA,2BAAA,KAKPF,IAAA,gBAAAG,EAAA,WAAQC,UAAAA,EAAAA,CAAkB,GAAQxC,OAAAoC,KAAAA,IAAApC,EAAA,CAAA;AACpB,QAAAyC,iBAAarB,EAAIsB,IAAK,IAAItB,EAAIuB,GAAI;AAAG,MAAAC;AAAA,EAAA5C,EAAA,CAAA,MAAAS,KAAAT,EAAA,CAAA,MAAA8B,KAAA9B,EAAA,CAAA,MAAA6B,KAAA7B,EAAA,CAAA,MAAAyB,KAAAzB,EAAA,CAAA,MAAAM,KAAAN,EAAA,CAAA,MAAAa,KAAAb,EAAA,CAAA,MAAAO,KAAAP,SAAAQ,KAAAR,EAAA,CAAA,MAAA4B,KAAA5B,EAAA,EAAA,MAAA2B,KAAA3B,EAAA,EAAA,MAAAW,KAAAX,EAAA,EAAA,MAAAY,KAAAZ,EAAA,EAAA,MAAA0B,KAAA1B,EAAA,EAAA,MAAAU,KAAAV,EAAA,EAAA,MAAAuB,KACjDqB,sBAACC,GAAA,EACOvC,MAAAA,GACEiB,QAAAA,GACAE,WACAC,WACEC,UAAAA,GACAC,UAAAA,GACLrB,KAAAA,GACGC,QAAAA,GACEqB,UAAAA,GACCC,WAAAA,GACIrB,eAAAA,GACFC,aAAAA,GACJC,SAAAA,GACMC,eAAAA,GACEC,iBAAAA,GAAe,GAChCb,OAAAS,GAAAT,OAAA8B,GAAA9B,OAAA6B,GAAA7B,OAAAyB,GAAAzB,OAAAM,GAAAN,OAAAa,GAAAb,OAAAO,GAAAP,OAAAQ,GAAAR,OAAA4B,GAAA5B,QAAA2B,GAAA3B,QAAAW,GAAAX,QAAAY,GAAAZ,QAAA0B,GAAA1B,QAAAU,GAAAV,QAAAuB,GAAAvB,QAAA4C,KAAAA,IAAA5C,EAAA,EAAA;AAQO,QAAA8C,IAAAhC,KAAA,IACMiC,IAAAb,IAAiBc;AAAc,MAAAC;AAAA,EAAAjD,EAAA,EAAA,MAAAM,EAAA4C,UAAAlD,EAAA,EAAA,MAAA8C,KAAA9C,EAAA,EAAA,MAAA+C,KAAA/C,EAAA,EAAA,MAAAiB,KAAAjB,EAAA,EAAA,MAAAmB,KAAAnB,EAAA,EAAA,MAAAuB,KAAAvB,EAAA,EAAA,MAAAgC,KAAAhC,UAAAsB,KAR9C2B,IAAA,gBAAAV,EAACY,MACM7B,QACEC,OAAAA,GACG,UAAAjB,EAAI4C,QACFjC,YAAAA,GACAe,YAAAA,GACIb,mBACT,OAAA2B,GACM,aAAAC,GACDK,YAAAA,GAAAA,CAAe,GAC3BpD,EAAA,EAAA,IAAAM,EAAA4C,QAAAlD,QAAA8C,GAAA9C,QAAA+C,GAAA/C,QAAAiB,GAAAjB,QAAAmB,GAAAnB,QAAAuB,GAAAvB,QAAAgC,GAAAhC,QAAAsB,GAAAtB,QAAAiD,KAAAA,IAAAjD,EAAA,EAAA;AAOO,QAAAqD,IAAAtC,KAAA,IACMuC,IAAAnB,IAAkBa;AAAc,MAAAO;AAAA,EAAAvD,UAAA+B,KAAA/B,EAAA,EAAA,MAAAqD,KAAArD,EAAA,EAAA,MAAAsD,KAAAtD,EAAA,EAAA,MAAAkB,KAAAlB,UAAAwB,KAAAxB,EAAA,EAAA,MAAAiC,KAP/CsB,sBAACC,IAAA,EACQhC,OAAAA,GACGO,aACEE,YAAAA,GACAf,YAAAA,GACIuC,oBACT,OAAAJ,GACM,aAAAC,GACDI,YAAAA,IAAe,GAC3B1D,QAAA+B,GAAA/B,QAAAqD,GAAArD,QAAAsD,GAAAtD,QAAAkB,GAAAlB,QAAAwB,GAAAxB,QAAAiC,GAAAjC,QAAAuD,KAAAA,IAAAvD,EAAA,EAAA;AAAA,MAAA2D;AAAA,EAAA3D,UAAA4B,KAAA5B,EAAA,EAAA,MAAA2B,KAAA3B,EAAA,EAAA,MAAAgB,KAAAhB,EAAA,EAAA,MAAA0B,KAAA1B,UAAAqB,KAAArB,EAAA,EAAA,MAAAsB,KACDqC,IAAA3C,KACC,gBAAAuB,EAAA,KAAA,EAAc,WAAA,aAAalB,IAAOuC,EAAU,QAC1C,UAAA,gBAAArB,EAACsB,IAAA,EACSnC,QAAAA,GACEC,UAAAA,GACAC,UAAAA,GACFN,QAAAA,GAAI,GAEhB,GACDtB,QAAA4B,GAAA5B,QAAA2B,GAAA3B,QAAAgB,GAAAhB,QAAA0B,GAAA1B,QAAAqB,GAAArB,QAAAsB,GAAAtB,QAAA2D,KAAAA,IAAA3D,EAAA,EAAA;AAAA,MAAA8D;AAAA,EAAA9D,EAAA,EAAA,MAAA2D,KAAA3D,EAAA,EAAA,MAAAyC,KAAAzC,EAAA,EAAA,MAAA4C,KAAA5C,EAAA,EAAA,MAAAiD,KAAAjD,UAAAuD,KAhDHO,IAAA,gBAAAC,EAAA,KAAA,EAAc,WAAAtB,GACZG,UAAAA;AAAAA,IAAAA;AAAAA,IAiBAK;AAAAA,IAWAM;AAAAA,IAUCI;AAAAA,EAAAA,GAUH,GAAI3D,QAAA2D,GAAA3D,QAAAyC,GAAAzC,QAAA4C,GAAA5C,QAAAiD,GAAAjD,QAAAuD,GAAAvD,QAAA8D,KAAAA,IAAA9D,EAAA,EAAA;AAAA,MAAAgE;AAAA,SAAAhE,EAAA,EAAA,MAAAK,KAAAL,EAAA,EAAA,MAAAI,KAAAJ,EAAA,EAAA,MAAAE,KAAAF,UAAA8D,KApDNE,sBAAA,OAAA,EAAY5D,OAAAA,GAAqBC,QAAAA,GAAmBH,KAAAA,GAElDkC,UAAAA;AAAAA,IAAAA;AAAAA,IACA0B;AAAAA,EAAAA,GAkDF,GAAM9D,QAAAK,GAAAL,QAAAI,GAAAJ,QAAAE,GAAAF,QAAA8D,GAAA9D,QAAAgE,KAAAA,IAAAhE,EAAA,EAAA,GArDNgE;AAqDM;"}