@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,73 +1,127 @@
1
- function x(t, c, a, r) {
2
- const n = (t.x0 + t.x1) / 2, e = (t.y0 + t.y1) / 2;
3
- switch (c) {
4
- case "topLeft":
5
- return {
6
- textX: t.x0 + 6,
7
- textY: t.y0 + 10,
8
- valueY: r ? t.y0 + 17 : t.y0 + 40,
9
- valueX: r ? t.x1 - 6 : t.x0 + 6,
10
- textAnchor: "start",
11
- valueAnchor: r ? "end" : "start",
12
- baseline: "hanging"
13
- };
14
- case "topRight":
15
- return {
16
- textX: t.x1 - 6,
17
- textY: t.y0 + 10,
18
- valueY: t.y0 + 40,
19
- valueX: t.x1 - 6,
20
- textAnchor: "end",
21
- valueAnchor: "end",
22
- baseline: "hanging"
23
- };
24
- case "bottomLeft":
25
- return {
26
- textX: t.x0 + 6,
27
- textY: a ? t.y1 - 35 : t.y1 - 15,
28
- valueY: t.y1 - 15,
29
- valueX: t.x0 + 6,
30
- textAnchor: "start",
31
- valueAnchor: "start",
32
- baseline: "alphabetic"
33
- };
34
- case "bottomRight":
35
- return {
36
- textX: t.x1 - 6,
37
- textY: a ? t.y1 - 35 : t.y1 - 15,
38
- valueY: t.y1 - 15,
39
- valueX: t.x1 - 6,
40
- textAnchor: "end",
41
- valueAnchor: "end",
42
- baseline: "alphabetic"
43
- };
44
- default:
45
- return {
46
- textX: n,
47
- textY: a ? e - 5 : e + 5,
48
- valueY: e + 15,
49
- valueX: n,
50
- textAnchor: "middle",
51
- valueAnchor: "middle",
52
- baseline: "middle"
53
- };
1
+ import { cellKey as D, resolveCellAppearance as H } from "./visualization.es107.js";
2
+ const w = (t, o, n) => Math.min(Math.max(t, o), n);
3
+ function x(t, o, n) {
4
+ const {
5
+ xScale: a,
6
+ cellYScale: r,
7
+ gap: i,
8
+ isRect: l,
9
+ binWidth: c,
10
+ binHeight: u
11
+ } = t;
12
+ if (l)
13
+ return {
14
+ isRect: !0,
15
+ x: a(o),
16
+ y: r(n) + i,
17
+ width: c - i,
18
+ height: u - i
19
+ };
20
+ const e = Math.min(c, u) / 2;
21
+ return {
22
+ isRect: !1,
23
+ cx: o * c + c / 2,
24
+ cy: r(n) + i + e,
25
+ r: e - i,
26
+ radius: e
27
+ };
28
+ }
29
+ function W(t, o, n, a, r, i) {
30
+ const {
31
+ data: l,
32
+ numRows: c,
33
+ binWidth: u,
34
+ binHeight: e,
35
+ yMax: s
36
+ } = t;
37
+ return {
38
+ colStart: w(Math.floor(o / u) - i, 0, Math.max(0, l.length - 1)),
39
+ colEnd: w(Math.ceil((o + a) / u) + i, 0, Math.max(0, l.length - 1)),
40
+ rowStart: w(Math.floor((s - (n + r)) / e) - i, 0, Math.max(0, c - 1)),
41
+ rowEnd: w(Math.floor((s - n) / e) + i, 0, Math.max(0, c - 1))
42
+ };
43
+ }
44
+ function C(t, o, n, a) {
45
+ const {
46
+ data: r,
47
+ colorScale: i,
48
+ selectedKeys: l,
49
+ deselectedColor: c
50
+ } = o;
51
+ let u = null, e = -1;
52
+ for (let s = n.colStart; s <= n.colEnd; s++) {
53
+ const y = r[s];
54
+ if (y)
55
+ for (let f = n.rowStart; f <= n.rowEnd; f++) {
56
+ const M = y.rows[f];
57
+ if (!M) continue;
58
+ const g = M.count, R = g == null ? void 0 : i(g), A = !!l && !l.has(D({
59
+ row: f,
60
+ column: s
61
+ })), {
62
+ fill: d,
63
+ fillOpacity: m
64
+ } = H(g, R, A, c);
65
+ if (m <= 0) continue;
66
+ const h = x(o, s, f);
67
+ m !== e && (t.globalAlpha = m, e = m), d !== u && (t.fillStyle = d, u = d);
68
+ const b = a !== null && a.row === f && a.column === s;
69
+ if (h.isRect) {
70
+ const p = Math.max(h.width, 0), S = Math.max(h.height, 0);
71
+ t.fillRect(h.x, h.y, p, S), b && (t.beginPath(), t.rect(h.x, h.y, p, S));
72
+ } else
73
+ t.beginPath(), t.arc(h.cx, h.cy, Math.max(h.r, 0), 0, Math.PI * 2), t.fill();
74
+ b && (t.globalAlpha = 1, e = 1, t.lineWidth = 2, t.strokeStyle = d, t.stroke());
75
+ }
54
76
  }
77
+ t.globalAlpha = 1;
55
78
  }
56
- function l(t, c, a) {
57
- const u = document.createElement("canvas").getContext("2d");
58
- return u ? (u.font = `${c}px ${a}`, u.measureText(t).width) : 0;
79
+ function P(t, o, n) {
80
+ const {
81
+ data: a,
82
+ numRows: r,
83
+ binWidth: i,
84
+ binHeight: l,
85
+ yMax: c
86
+ } = t;
87
+ if (o < 0 || n < 0) return null;
88
+ const u = Math.floor(o / i), e = Math.floor((c - n) / l);
89
+ return u < 0 || u >= a.length || e < 0 || e >= r || !a[u]?.rows[e] ? null : {
90
+ row: e,
91
+ column: u
92
+ };
59
93
  }
60
- function s(t, c, a, r) {
61
- const n = document.createElement("canvas").getContext("2d");
62
- if (!n || (n.font = `${a}px ${r}`, n.measureText(t).width <= c)) return t;
63
- let e = t;
64
- for (; e.length > 0 && n.measureText(e + "…").width > c; )
65
- e = e.slice(0, -1);
66
- return e === "" ? "" : e + "...";
94
+ function k(t, o) {
95
+ const n = t.data[o.column], a = n?.rows[o.row];
96
+ if (!n || !a) return null;
97
+ const r = a.count, i = r == null ? void 0 : t.colorScale(r), l = x(t, o.column, o.row), c = {
98
+ bin: a,
99
+ row: o.row,
100
+ column: o.column,
101
+ datum: n,
102
+ gap: t.gap,
103
+ count: r,
104
+ color: i,
105
+ opacity: r == null ? void 0 : 1
106
+ };
107
+ return l.isRect ? {
108
+ ...c,
109
+ x: l.x,
110
+ y: l.y,
111
+ width: l.width,
112
+ height: l.height
113
+ } : {
114
+ ...c,
115
+ cx: l.cx,
116
+ cy: l.cy,
117
+ r: l.r,
118
+ radius: l.radius
119
+ };
67
120
  }
68
121
  export {
69
- x as getLabelPlacement,
70
- l as measureTextWidth,
71
- s as truncateTextToWidth
122
+ k as buildBin,
123
+ C as drawHeatmapCells,
124
+ W as getVisibleRange,
125
+ P as hitTestCell
72
126
  };
73
127
  //# sourceMappingURL=visualization.es108.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es108.js","sources":["../src/components/TreeMap/helpers.ts"],"sourcesContent":["import { HierarchyRectangularNode } from \"@visx/hierarchy\";\nimport { TreemapNode, TreemapProps } from \"./types\";\n\n//get coords for label placement based on user input\nexport function getLabelPlacement(\n node: HierarchyRectangularNode<TreemapNode<any>>,\n placement: TreemapProps<any>[\"labelPlacement\"],\n showValue?: boolean,\n hasChildren?: boolean\n) {\n const padding = 6;\n const cx = (node.x0 + node.x1) / 2;\n const cy = (node.y0 + node.y1) / 2;\n\n switch (placement) {\n case \"topLeft\":\n return {\n textX: node.x0 + padding,\n textY: node.y0 + 10,\n valueY: hasChildren ? node.y0 + 17 : node.y0 + 40,\n valueX: hasChildren ? node.x1 - padding : node.x0 + padding,\n textAnchor: \"start\",\n valueAnchor: hasChildren ? \"end\" : \"start\",\n baseline: \"hanging\",\n } as const;\n case \"topRight\":\n return {\n textX: node.x1 - padding,\n textY: node.y0 + 10,\n valueY: node.y0 + 40,\n valueX: node.x1 - padding,\n textAnchor: \"end\",\n valueAnchor: \"end\",\n baseline: \"hanging\",\n } as const;\n case \"bottomLeft\":\n return {\n textX: node.x0 + padding,\n textY: showValue ? node.y1 - 35 : node.y1 - 15 ,\n valueY: node.y1 - 15,\n valueX: node.x0 + padding,\n textAnchor: \"start\",\n valueAnchor: \"start\",\n baseline: \"alphabetic\",\n } as const;\n case \"bottomRight\":\n return {\n textX: node.x1 - padding,\n textY: showValue ? node.y1 - 35 : node.y1 - 15,\n valueY: node.y1 - 15,\n valueX: node.x1 - padding,\n textAnchor: \"end\",\n valueAnchor: \"end\",\n baseline: \"alphabetic\",\n } as const;\n case \"middle\":\n default:\n return {\n textX: cx,\n textY: showValue ? cy - 5 : cy + 5,\n valueY: cy + 15,\n valueX: cx,\n textAnchor: \"middle\",\n valueAnchor: \"middle\",\n baseline: \"middle\",\n } as const;\n }\n}\n\n//Check if text exceeds box\nexport function measureTextWidth(text: string, fontSize: number, fontFamily: string) {\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return 0;\n ctx.font = `${fontSize}px ${fontFamily}`;\n return ctx.measureText(text).width;\n}\n\n//truncate text with ... to fit in box\nexport function truncateTextToWidth(\n text: string,\n maxWidth: number,\n fontSize: number,\n fontFamily: string\n): string {\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return text;\n\n ctx.font = `${fontSize}px ${fontFamily}`;\n if (ctx.measureText(text).width <= maxWidth) return text;\n\n let truncated = text;\n while (truncated.length > 0 && ctx.measureText(truncated + \"…\").width > maxWidth) {\n truncated = truncated.slice(0, -1);\n }\n\n const result = truncated === \"\" ? \"\" : truncated + \"...\"\n\n return result;\n}\n"],"names":["getLabelPlacement","node","placement","showValue","hasChildren","cx","x0","x1","cy","y0","y1","textX","padding","textY","valueY","valueX","textAnchor","valueAnchor","baseline","measureTextWidth","text","fontSize","fontFamily","ctx","document","createElement","getContext","font","measureText","width","truncateTextToWidth","maxWidth","truncated","length","slice"],"mappings":"AAIO,SAASA,EACZC,GACAC,GACAC,GACAC,GACF;AAEE,QAAMC,KAAMJ,EAAKK,KAAKL,EAAKM,MAAM,GAC3BC,KAAMP,EAAKQ,KAAKR,EAAKS,MAAM;AAEjC,UAAQR,GAAAA;AAAAA,IACJ,KAAK;AACD,aAAO;AAAA,QACHS,OAAOV,EAAKK,KAAKM;AAAAA,QACjBC,OAAOZ,EAAKQ,KAAK;AAAA,QACjBK,QAAQV,IAAcH,EAAKQ,KAAK,KAAKR,EAAKQ,KAAK;AAAA,QAC/CM,QAAQX,IAAcH,EAAKM,KAAKK,IAAUX,EAAKK,KAAKM;AAAAA,QACpDI,YAAY;AAAA,QACZC,aAAab,IAAc,QAAQ;AAAA,QACnCc,UAAU;AAAA,MAAA;AAAA,IAElB,KAAK;AACD,aAAO;AAAA,QACHP,OAAOV,EAAKM,KAAKK;AAAAA,QACjBC,OAAOZ,EAAKQ,KAAK;AAAA,QACjBK,QAAQb,EAAKQ,KAAK;AAAA,QAClBM,QAAQd,EAAKM,KAAKK;AAAAA,QAClBI,YAAY;AAAA,QACZC,aAAa;AAAA,QACbC,UAAU;AAAA,MAAA;AAAA,IAElB,KAAK;AACD,aAAO;AAAA,QACHP,OAAOV,EAAKK,KAAKM;AAAAA,QACjBC,OAAOV,IAAYF,EAAKS,KAAK,KAAKT,EAAKS,KAAK;AAAA,QAC5CI,QAAQb,EAAKS,KAAK;AAAA,QAClBK,QAAQd,EAAKK,KAAKM;AAAAA,QAClBI,YAAY;AAAA,QACZC,aAAa;AAAA,QACbC,UAAU;AAAA,MAAA;AAAA,IAElB,KAAK;AACD,aAAO;AAAA,QACHP,OAAOV,EAAKM,KAAKK;AAAAA,QACjBC,OAAOV,IAAYF,EAAKS,KAAK,KAAKT,EAAKS,KAAK;AAAA,QAC5CI,QAAQb,EAAKS,KAAK;AAAA,QAClBK,QAAQd,EAAKM,KAAKK;AAAAA,QAClBI,YAAY;AAAA,QACZC,aAAa;AAAA,QACbC,UAAU;AAAA,MAAA;AAAA,IAGlB;AACI,aAAO;AAAA,QACHP,OAAON;AAAAA,QACPQ,OAAOV,IAAYK,IAAK,IAAIA,IAAK;AAAA,QACjCM,QAAQN,IAAK;AAAA,QACbO,QAAQV;AAAAA,QACRW,YAAY;AAAA,QACZC,aAAa;AAAA,QACbC,UAAU;AAAA,MAAA;AAAA,EACd;AAEZ;AAGO,SAASC,EAAiBC,GAAcC,GAAkBC,GAAoB;AAEjF,QAAMC,IADSC,SAASC,cAAc,QAAQ,EAC3BC,WAAW,IAAI;AAClC,SAAKH,KACLA,EAAII,OAAO,GAAGN,CAAQ,MAAMC,CAAU,IAC/BC,EAAIK,YAAYR,CAAI,EAAES,SAFZ;AAGrB;AAGO,SAASC,EACdV,GACAW,GACAV,GACAC,GACQ;AAER,QAAMC,IADSC,SAASC,cAAc,QAAQ,EAC3BC,WAAW,IAAI;AAIlC,MAHI,CAACH,MAELA,EAAII,OAAO,GAAGN,CAAQ,MAAMC,CAAU,IAClCC,EAAIK,YAAYR,CAAI,EAAES,SAASE,GAAU,QAAOX;AAEpD,MAAIY,IAAYZ;AAChB,SAAOY,EAAUC,SAAS,KAAKV,EAAIK,YAAYI,IAAY,GAAG,EAAEH,QAAQE;AACtEC,IAAAA,IAAYA,EAAUE,MAAM,GAAG,EAAE;AAKnC,SAFeF,MAAc,KAAK,KAAKA,IAAY;AAGrD;"}
1
+ {"version":3,"file":"visualization.es108.js","sources":["../src/components/Heatmap/HeatmapCanvasCells.ts"],"sourcesContent":["import type { ColumnDatum, HeatmapCellId } from \"./types\";\nimport type { AnyBin } from \"./HeatmapCells\";\nimport { cellKey, resolveCellAppearance } from \"./heatmapCellAppearance\";\n\n/**\n * Everything the canvas draw loop and hit-testing need to place a cell exactly where the SVG\n * path (HeatmapCells.tsx, via @visx/heatmap's HeatmapRect/HeatmapCircle) would. xScale/cellYScale\n * are the same functions Heatmap.tsx already builds and passes to HeatmapCells.\n */\nexport interface CanvasCellParams {\n data: ColumnDatum[];\n numRows: number;\n xScale: (column: number) => number;\n cellYScale: (row: number) => number;\n colorScale: (count: number) => string | undefined;\n gap: number;\n isRect: boolean;\n binWidth: number;\n binHeight: number;\n yMax: number;\n selectedKeys: Set<string> | null;\n deselectedColor: string;\n}\n\nexport interface CanvasDrawRange {\n colStart: number;\n colEnd: number;\n rowStart: number;\n rowEnd: number;\n}\n\nconst clamp = (value: number, min: number, max: number) => Math.min(Math.max(value, min), max);\n\n// Mirrors @visx/heatmap's HeatmapRect/HeatmapCircle bin geometry exactly (see their source:\n// node_modules/@visx/heatmap/lib/heatmaps/{HeatmapRect,HeatmapCircle}.js) so canvas-drawn cells\n// land on the same pixels the SVG path (export, non-scrollable mode) would draw them at. The\n// circle center's x mirrors HeatmapCell.tsx's own recomputation (col*binWidth + binWidth/2)\n// rather than @visx/heatmap's raw cx, for the same reason that file does it: keeps circles\n// centered in their cell regardless of the configured radius.\ntype CellGeometry =\n | { isRect: true; x: number; y: number; width: number; height: number }\n | { isRect: false; cx: number; cy: number; r: number; radius: number };\n\nfunction getCellGeometry(params: CanvasCellParams, col: number, row: number): CellGeometry {\n const { xScale, cellYScale, gap, isRect, binWidth, binHeight } = params;\n if (isRect) {\n return { isRect: true, x: xScale(col), y: cellYScale(row) + gap, width: binWidth - gap, height: binHeight - gap };\n }\n const radius = Math.min(binWidth, binHeight) / 2;\n return { isRect: false, cx: col * binWidth + binWidth / 2, cy: cellYScale(row) + gap + radius, r: radius - gap, radius };\n}\n\n/**\n * Column/row index bounds (inclusive) that intersect the given scroll viewport, plus a small\n * overscan so a cell is already drawn just before it scrolls into view rather than popping in a\n * frame late. Row bounds are derived from cellYScale's own convention (row 0 at the bottom of\n * the grid, row numRows-1 at the top): a cell at row r occupies content-y band\n * [yMax-(r+1)*binHeight, yMax-r*binHeight), so the row under a given y is\n * floor((yMax-y)/binHeight).\n */\nexport function getVisibleRange(\n params: CanvasCellParams,\n scrollLeft: number,\n scrollTop: number,\n viewportWidth: number,\n viewportHeight: number,\n overscan: number\n): CanvasDrawRange {\n const { data, numRows, binWidth, binHeight, yMax } = params;\n return {\n colStart: clamp(Math.floor(scrollLeft / binWidth) - overscan, 0, Math.max(0, data.length - 1)),\n colEnd: clamp(Math.ceil((scrollLeft + viewportWidth) / binWidth) + overscan, 0, Math.max(0, data.length - 1)),\n rowStart: clamp(Math.floor((yMax - (scrollTop + viewportHeight)) / binHeight) - overscan, 0, Math.max(0, numRows - 1)),\n rowEnd: clamp(Math.floor((yMax - scrollTop) / binHeight) + overscan, 0, Math.max(0, numRows - 1)),\n };\n}\n\n/** Paints the cells in `range` onto `ctx`, whose origin is already at content-space (0,0). */\nexport function drawHeatmapCells(\n ctx: CanvasRenderingContext2D,\n params: CanvasCellParams,\n range: CanvasDrawRange,\n hoveredCell: HeatmapCellId | null\n) {\n const { data, colorScale, selectedKeys, deselectedColor } = params;\n // fillStyle/globalAlpha assignment forces the browser to re-parse the CSS color string even\n // when it's unchanged from the previous cell - skipping redundant writes matters at this scale\n // (this loop runs per-cell, up to hundreds of thousands of times for the minimap's full-dataset\n // draw). Rects also use fillRect directly (no beginPath/rect/fill trio) since it's a faster\n // native path for solid fills; a path is only built for a cell when it's the hovered one, so\n // its outline can still be stroked.\n let lastFill: string | null = null;\n let lastAlpha = -1;\n for (let col = range.colStart; col <= range.colEnd; col++) {\n const columnDatum = data[col];\n if (!columnDatum) continue;\n for (let row = range.rowStart; row <= range.rowEnd; row++) {\n const rowDatum = columnDatum.rows[row];\n if (!rowDatum) continue;\n const count = rowDatum.count;\n const color = count == null ? undefined : colorScale(count);\n const isDeselected = !!selectedKeys && !selectedKeys.has(cellKey({ row, column: col }));\n const { fill, fillOpacity } = resolveCellAppearance(count, color, isDeselected, deselectedColor);\n if (fillOpacity <= 0) continue;\n\n const geometry = getCellGeometry(params, col, row);\n if (fillOpacity !== lastAlpha) {\n ctx.globalAlpha = fillOpacity;\n lastAlpha = fillOpacity;\n }\n if (fill !== lastFill) {\n ctx.fillStyle = fill;\n lastFill = fill;\n }\n\n const isHovered = hoveredCell !== null && hoveredCell.row === row && hoveredCell.column === col;\n if (geometry.isRect) {\n const width = Math.max(geometry.width, 0);\n const height = Math.max(geometry.height, 0);\n ctx.fillRect(geometry.x, geometry.y, width, height);\n if (isHovered) {\n ctx.beginPath();\n ctx.rect(geometry.x, geometry.y, width, height);\n }\n } else {\n ctx.beginPath();\n ctx.arc(geometry.cx, geometry.cy, Math.max(geometry.r, 0), 0, Math.PI * 2);\n ctx.fill();\n }\n\n if (isHovered) {\n ctx.globalAlpha = 1;\n lastAlpha = 1;\n ctx.lineWidth = 2;\n ctx.strokeStyle = fill;\n ctx.stroke();\n }\n }\n }\n ctx.globalAlpha = 1;\n}\n\n/** Content-space (post-scroll-offset) coordinates -> the cell under them, or null if none. */\nexport function hitTestCell(params: CanvasCellParams, contentX: number, contentY: number): HeatmapCellId | null {\n const { data, numRows, binWidth, binHeight, yMax } = params;\n if (contentX < 0 || contentY < 0) return null;\n const column = Math.floor(contentX / binWidth);\n const row = Math.floor((yMax - contentY) / binHeight);\n if (column < 0 || column >= data.length || row < 0 || row >= numRows) return null;\n if (!data[column]?.rows[row]) return null;\n return { row, column };\n}\n\n/** Builds the same bin shape @visx/heatmap's RectCell/CircleCell provide, for onClick/tooltipBody. */\nexport function buildBin(params: CanvasCellParams, cell: HeatmapCellId): AnyBin | null {\n const columnDatum = params.data[cell.column];\n const rowDatum = columnDatum?.rows[cell.row];\n if (!columnDatum || !rowDatum) return null;\n\n const count = rowDatum.count;\n const color = count == null ? undefined : params.colorScale(count);\n const geometry = getCellGeometry(params, cell.column, cell.row);\n const shared = { bin: rowDatum, row: cell.row, column: cell.column, datum: columnDatum, gap: params.gap, count, color, opacity: count == null ? undefined : 1 };\n\n return geometry.isRect\n ? ({ ...shared, x: geometry.x, y: geometry.y, width: geometry.width, height: geometry.height } as AnyBin)\n : ({ ...shared, cx: geometry.cx, cy: geometry.cy, r: geometry.r, radius: geometry.radius } as AnyBin);\n}\n"],"names":["clamp","value","min","max","Math","getCellGeometry","params","col","row","xScale","cellYScale","gap","isRect","binWidth","binHeight","x","y","width","height","radius","cx","cy","r","getVisibleRange","scrollLeft","scrollTop","viewportWidth","viewportHeight","overscan","data","numRows","yMax","colStart","floor","length","colEnd","ceil","rowStart","rowEnd","drawHeatmapCells","ctx","range","hoveredCell","colorScale","selectedKeys","deselectedColor","lastFill","lastAlpha","columnDatum","rowDatum","rows","count","color","undefined","isDeselected","has","cellKey","column","fill","fillOpacity","resolveCellAppearance","geometry","globalAlpha","fillStyle","isHovered","fillRect","beginPath","rect","arc","PI","lineWidth","strokeStyle","stroke","hitTestCell","contentX","contentY","buildBin","cell","shared","bin","datum","opacity"],"mappings":"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"}
@@ -1,225 +1,83 @@
1
- import { __module as O } from "./visualization.es110.js";
2
- import { __require as q } from "./visualization.es111.js";
3
- var j = O.exports, x;
4
- function W() {
5
- return x ? O.exports : (x = 1, (function(b, Q) {
6
- (function(c, d) {
7
- b.exports = d(q());
8
- })(j, function(F) {
9
- return (
10
- /******/
11
- (function(c) {
12
- var d = {};
13
- function o(i) {
14
- if (d[i])
15
- return d[i].exports;
16
- var n = d[i] = {
17
- /******/
18
- i,
19
- /******/
20
- l: !1,
21
- /******/
22
- exports: {}
23
- /******/
24
- };
25
- return c[i].call(n.exports, n, n.exports, o), n.l = !0, n.exports;
26
- }
27
- return o.m = c, o.c = d, o.i = function(i) {
28
- return i;
29
- }, o.d = function(i, n, s) {
30
- o.o(i, n) || Object.defineProperty(i, n, {
31
- /******/
32
- configurable: !1,
33
- /******/
34
- enumerable: !0,
35
- /******/
36
- get: s
37
- /******/
38
- });
39
- }, o.n = function(i) {
40
- var n = i && i.__esModule ? (
41
- /******/
42
- function() {
43
- return i.default;
44
- }
45
- ) : (
46
- /******/
47
- function() {
48
- return i;
49
- }
50
- );
51
- return o.d(n, "a", n), n;
52
- }, o.o = function(i, n) {
53
- return Object.prototype.hasOwnProperty.call(i, n);
54
- }, o.p = "", o(o.s = 1);
55
- })([
56
- /* 0 */
57
- /***/
58
- (function(c, d) {
59
- c.exports = F;
60
- }),
61
- /* 1 */
62
- /***/
63
- (function(c, d, o) {
64
- var i = o(0).layoutBase.LayoutConstants, n = o(0).layoutBase.FDLayoutConstants, s = o(0).CoSEConstants, H = o(0).CoSELayout, G = o(0).CoSENode, B = o(0).layoutBase.PointD, V = o(0).layoutBase.DimensionD, Y = {
65
- // Called on `layoutready`
66
- ready: function() {
67
- },
68
- // Called on `layoutstop`
69
- stop: function() {
70
- },
71
- // 'draft', 'default' or 'proof"
72
- // - 'draft' fast cooling rate
73
- // - 'default' moderate cooling rate
74
- // - "proof" slow cooling rate
75
- quality: "default",
76
- // include labels in node dimensions
77
- nodeDimensionsIncludeLabels: !1,
78
- // number of ticks per frame; higher is faster but more jerky
79
- refresh: 30,
80
- // Whether to fit the network view after when done
81
- fit: !0,
82
- // Padding on fit
83
- padding: 10,
84
- // Whether to enable incremental mode
85
- randomize: !0,
86
- // Node repulsion (non overlapping) multiplier
87
- nodeRepulsion: 4500,
88
- // Ideal edge (non nested) length
89
- idealEdgeLength: 50,
90
- // Divisor to compute edge forces
91
- edgeElasticity: 0.45,
92
- // Nesting factor (multiplier) to compute ideal edge length for nested edges
93
- nestingFactor: 0.1,
94
- // Gravity force (constant)
95
- gravity: 0.25,
96
- // Maximum number of iterations to perform
97
- numIter: 2500,
98
- // For enabling tiling
99
- tile: !0,
100
- // Type of layout animation. The option set is {'during', 'end', false}
101
- animate: "end",
102
- // Duration for animate:end
103
- animationDuration: 500,
104
- // Represents the amount of the vertical space to put between the zero degree members during the tiling operation(can also be a function)
105
- tilingPaddingVertical: 10,
106
- // Represents the amount of the horizontal space to put between the zero degree members during the tiling operation(can also be a function)
107
- tilingPaddingHorizontal: 10,
108
- // Gravity range (constant) for compounds
109
- gravityRangeCompound: 1.5,
110
- // Gravity force (constant) for compounds
111
- gravityCompound: 1,
112
- // Gravity range (constant)
113
- gravityRange: 3.8,
114
- // Initial cooling factor for incremental layout
115
- initialEnergyOnIncremental: 0.5
116
- };
117
- function h(u, t) {
118
- var l = {};
119
- for (var r in u)
120
- l[r] = u[r];
121
- for (var r in t)
122
- l[r] = t[r];
123
- return l;
124
- }
125
- function p(u) {
126
- this.options = h(Y, u), w(this.options);
127
- }
128
- var w = function(t) {
129
- t.nodeRepulsion != null && (s.DEFAULT_REPULSION_STRENGTH = n.DEFAULT_REPULSION_STRENGTH = t.nodeRepulsion), t.idealEdgeLength != null && (s.DEFAULT_EDGE_LENGTH = n.DEFAULT_EDGE_LENGTH = t.idealEdgeLength), t.edgeElasticity != null && (s.DEFAULT_SPRING_STRENGTH = n.DEFAULT_SPRING_STRENGTH = t.edgeElasticity), t.nestingFactor != null && (s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR = n.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR = t.nestingFactor), t.gravity != null && (s.DEFAULT_GRAVITY_STRENGTH = n.DEFAULT_GRAVITY_STRENGTH = t.gravity), t.numIter != null && (s.MAX_ITERATIONS = n.MAX_ITERATIONS = t.numIter), t.gravityRange != null && (s.DEFAULT_GRAVITY_RANGE_FACTOR = n.DEFAULT_GRAVITY_RANGE_FACTOR = t.gravityRange), t.gravityCompound != null && (s.DEFAULT_COMPOUND_GRAVITY_STRENGTH = n.DEFAULT_COMPOUND_GRAVITY_STRENGTH = t.gravityCompound), t.gravityRangeCompound != null && (s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR = n.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR = t.gravityRangeCompound), t.initialEnergyOnIncremental != null && (s.DEFAULT_COOLING_FACTOR_INCREMENTAL = n.DEFAULT_COOLING_FACTOR_INCREMENTAL = t.initialEnergyOnIncremental), t.quality == "draft" ? i.QUALITY = 0 : t.quality == "proof" ? i.QUALITY = 2 : i.QUALITY = 1, s.NODE_DIMENSIONS_INCLUDE_LABELS = n.NODE_DIMENSIONS_INCLUDE_LABELS = i.NODE_DIMENSIONS_INCLUDE_LABELS = t.nodeDimensionsIncludeLabels, s.DEFAULT_INCREMENTAL = n.DEFAULT_INCREMENTAL = i.DEFAULT_INCREMENTAL = !t.randomize, s.ANIMATE = n.ANIMATE = i.ANIMATE = t.animate, s.TILE = t.tile, s.TILING_PADDING_VERTICAL = typeof t.tilingPaddingVertical == "function" ? t.tilingPaddingVertical.call() : t.tilingPaddingVertical, s.TILING_PADDING_HORIZONTAL = typeof t.tilingPaddingHorizontal == "function" ? t.tilingPaddingHorizontal.call() : t.tilingPaddingHorizontal;
130
- };
131
- p.prototype.run = function() {
132
- var u, t, l = this.options;
133
- this.idToLNode = {};
134
- var r = this.layout = new H(), a = this;
135
- a.stopped = !1, this.cy = this.options.cy, this.cy.trigger({ type: "layoutstart", layout: this });
136
- var e = r.newGraphManager();
137
- this.gm = e;
138
- var g = this.options.eles.nodes(), f = this.options.eles.edges();
139
- this.root = e.addRoot(), this.processChildrenList(this.root, this.getTopMostNodes(g), r);
140
- for (var E = 0; E < f.length; E++) {
141
- var A = f[E], v = this.idToLNode[A.data("source")], D = this.idToLNode[A.data("target")];
142
- if (v !== D && v.getEdgesBetween(D).length == 0) {
143
- var N = e.add(r.newEdge(), v, D);
144
- N.id = A.id();
145
- }
146
- }
147
- var U = function(L, m) {
148
- typeof L == "number" && (L = m);
149
- var I = L.data("id"), R = a.idToLNode[I];
150
- return {
151
- x: R.getRect().getCenterX(),
152
- y: R.getRect().getCenterY()
153
- };
154
- }, z = function S() {
155
- for (var L = function() {
156
- l.fit && l.cy.fit(l.eles, l.padding), u || (u = !0, a.cy.one("layoutready", l.ready), a.cy.trigger({ type: "layoutready", layout: a }));
157
- }, m = a.options.refresh, I, R = 0; R < m && !I; R++)
158
- I = a.stopped || a.layout.tick();
159
- if (I) {
160
- r.checkLayoutSuccess() && !r.isSubLayout && r.doPostLayout(), r.tilingPostLayout && r.tilingPostLayout(), r.isLayoutFinished = !0, a.options.eles.nodes().positions(U), L(), a.cy.one("layoutstop", a.options.stop), a.cy.trigger({ type: "layoutstop", layout: a }), t && cancelAnimationFrame(t), u = !1;
161
- return;
162
- }
163
- var C = a.layout.getPositionsData();
164
- l.eles.nodes().positions(function(y, k) {
165
- if (typeof y == "number" && (y = k), !y.isParent()) {
166
- for (var M = y.id(), T = C[M], _ = y; T == null && (T = C[_.data("parent")] || C["DummyCompound_" + _.data("parent")], C[M] = T, _ = _.parent()[0], _ != null); )
167
- ;
168
- return T != null ? {
169
- x: T.x,
170
- y: T.y
171
- } : {
172
- x: y.position("x"),
173
- y: y.position("y")
174
- };
175
- }
176
- }), L(), t = requestAnimationFrame(S);
177
- };
178
- return r.addListener("layoutstarted", function() {
179
- a.options.animate === "during" && (t = requestAnimationFrame(z));
180
- }), r.runLayout(), this.options.animate !== "during" && (a.options.eles.nodes().not(":parent").layoutPositions(a, a.options, U), u = !1), this;
181
- }, p.prototype.getTopMostNodes = function(u) {
182
- for (var t = {}, l = 0; l < u.length; l++)
183
- t[u[l].id()] = !0;
184
- var r = u.filter(function(a, e) {
185
- typeof a == "number" && (a = e);
186
- for (var g = a.parent()[0]; g != null; ) {
187
- if (t[g.id()])
188
- return !1;
189
- g = g.parent()[0];
190
- }
191
- return !0;
192
- });
193
- return r;
194
- }, p.prototype.processChildrenList = function(u, t, l) {
195
- for (var r = t.length, a = 0; a < r; a++) {
196
- var e = t[a], g = e.children(), f, E = e.layoutDimensions({
197
- nodeDimensionsIncludeLabels: this.options.nodeDimensionsIncludeLabels
198
- });
199
- if (e.outerWidth() != null && e.outerHeight() != null ? f = u.add(new G(l.graphManager, new B(e.position("x") - E.w / 2, e.position("y") - E.h / 2), new V(parseFloat(E.w), parseFloat(E.h)))) : f = u.add(new G(this.graphManager)), f.id = e.data("id"), f.paddingLeft = parseInt(e.css("padding")), f.paddingTop = parseInt(e.css("padding")), f.paddingRight = parseInt(e.css("padding")), f.paddingBottom = parseInt(e.css("padding")), this.options.nodeDimensionsIncludeLabels && e.isParent()) {
200
- var A = e.boundingBox({ includeLabels: !0, includeNodes: !1 }).w, v = e.boundingBox({ includeLabels: !0, includeNodes: !1 }).h, D = e.css("text-halign");
201
- f.labelWidth = A, f.labelHeight = v, f.labelPos = D;
202
- }
203
- if (this.idToLNode[e.data("id")] = f, isNaN(f.rect.x) && (f.rect.x = 0), isNaN(f.rect.y) && (f.rect.y = 0), g != null && g.length > 0) {
204
- var N;
205
- N = l.getGraphManager().add(l.newGraph(), f), this.processChildrenList(N, g, l);
206
- }
207
- }
208
- }, p.prototype.stop = function() {
209
- return this.stopped = !0, this;
210
- };
211
- var P = function(t) {
212
- t("layout", "cose-bilkent", p);
213
- };
214
- typeof cytoscape < "u" && P(cytoscape), c.exports = P;
215
- })
216
- /******/
217
- ])
218
- );
1
+ import { jsxs as U, jsx as X } from "react/jsx-runtime";
2
+ import { useRef as Y, useEffect as k, useCallback as l } from "react";
3
+ import { drawHeatmapCells as q } from "./visualization.es108.js";
4
+ const m = (c, o, e) => Math.min(Math.max(c, o), e), J = ({
5
+ canvasCellParams: c,
6
+ xMax: o,
7
+ yMax: e,
8
+ viewportWidth: a,
9
+ viewportHeight: s,
10
+ scrollLeft: b,
11
+ scrollTop: P,
12
+ width: i,
13
+ height: d,
14
+ onNavigate: f,
15
+ onCanvasClick: R,
16
+ onReady: g
17
+ }) => {
18
+ const D = Y(null), n = o > 0 ? i / o : 0, r = e > 0 ? d / e : 0, S = Y(g);
19
+ S.current = g, k(() => {
20
+ const t = D.current;
21
+ if (!t || n <= 0 || r <= 0) return;
22
+ const u = requestAnimationFrame(() => {
23
+ const p = t.getContext("2d");
24
+ if (!p) return;
25
+ const I = window.devicePixelRatio || 1;
26
+ p.setTransform(I * n, 0, 0, I * r, 0, 0), p.clearRect(0, 0, o, e);
27
+ const M = {
28
+ colStart: 0,
29
+ colEnd: Math.max(0, c.data.length - 1),
30
+ rowStart: 0,
31
+ rowEnd: Math.max(0, c.numRows - 1)
32
+ };
33
+ q(p, c, M, null), S.current?.();
219
34
  });
220
- })(O), O.exports);
221
- }
35
+ return () => cancelAnimationFrame(u);
36
+ }, [c, o, e, n, r]);
37
+ const T = l((t, u) => {
38
+ f(m(t - a / 2, 0, Math.max(0, o - a)), m(u - s / 2, 0, Math.max(0, e - s)));
39
+ }, [f, a, s, o, e]), h = l((t) => {
40
+ if (R) {
41
+ R();
42
+ return;
43
+ }
44
+ if (n <= 0 || r <= 0) return;
45
+ const u = t.currentTarget.getBoundingClientRect();
46
+ T((t.clientX - u.left) / n, (t.clientY - u.top) / r);
47
+ }, [R, T, n, r]), j = l((t) => {
48
+ t.stopPropagation(), t.currentTarget.setPointerCapture(t.pointerId);
49
+ }, []), x = l((t) => {
50
+ n <= 0 || r <= 0 || !t.currentTarget.hasPointerCapture(t.pointerId) || f(m(b + t.movementX / n, 0, Math.max(0, o - a)), m(P + t.movementY / r, 0, Math.max(0, e - s)));
51
+ }, [b, P, n, r, o, e, a, s, f]), z = l((t) => {
52
+ t.currentTarget.releasePointerCapture(t.pointerId);
53
+ }, []), C = m(b * n, 0, i), E = m(P * r, 0, d), A = Math.max(0, Math.min(a * n, i - C)), F = Math.max(0, Math.min(s * r, d - E));
54
+ return /* @__PURE__ */ U("div", { style: {
55
+ position: "relative",
56
+ width: i,
57
+ height: d
58
+ }, children: [
59
+ /* @__PURE__ */ X("canvas", { ref: D, width: i * (window.devicePixelRatio || 1), height: d * (window.devicePixelRatio || 1), style: {
60
+ width: i,
61
+ height: d,
62
+ display: "block",
63
+ cursor: "pointer",
64
+ border: "1px solid #d5d5d5",
65
+ boxSizing: "border-box"
66
+ }, onPointerDown: h }),
67
+ /* @__PURE__ */ X("div", { onPointerDown: j, onPointerMove: x, onPointerUp: z, style: {
68
+ position: "absolute",
69
+ left: C,
70
+ top: E,
71
+ width: A,
72
+ height: F,
73
+ border: "2px solid #0d0f98",
74
+ backgroundColor: "rgba(13, 15, 152, 0.15)",
75
+ cursor: "grab",
76
+ boxSizing: "border-box"
77
+ } })
78
+ ] });
79
+ };
222
80
  export {
223
- W as __require
81
+ J as default
224
82
  };
225
83
  //# sourceMappingURL=visualization.es109.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es109.js","sources":["../../../node_modules/.pnpm/cytoscape-cose-bilkent@4.1.0_cytoscape@3.33.1/node_modules/cytoscape-cose-bilkent/cytoscape-cose-bilkent.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"cose-base\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"cose-base\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"cytoscapeCoseBilkent\"] = factory(require(\"cose-base\"));\n\telse\n\t\troot[\"cytoscapeCoseBilkent\"] = factory(root[\"coseBase\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 1);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar LayoutConstants = __webpack_require__(0).layoutBase.LayoutConstants;\nvar FDLayoutConstants = __webpack_require__(0).layoutBase.FDLayoutConstants;\nvar CoSEConstants = __webpack_require__(0).CoSEConstants;\nvar CoSELayout = __webpack_require__(0).CoSELayout;\nvar CoSENode = __webpack_require__(0).CoSENode;\nvar PointD = __webpack_require__(0).layoutBase.PointD;\nvar DimensionD = __webpack_require__(0).layoutBase.DimensionD;\n\nvar defaults = {\n // Called on `layoutready`\n ready: function ready() {},\n // Called on `layoutstop`\n stop: function stop() {},\n // 'draft', 'default' or 'proof\" \n // - 'draft' fast cooling rate \n // - 'default' moderate cooling rate \n // - \"proof\" slow cooling rate\n quality: 'default',\n // include labels in node dimensions\n nodeDimensionsIncludeLabels: false,\n // number of ticks per frame; higher is faster but more jerky\n refresh: 30,\n // Whether to fit the network view after when done\n fit: true,\n // Padding on fit\n padding: 10,\n // Whether to enable incremental mode\n randomize: true,\n // Node repulsion (non overlapping) multiplier\n nodeRepulsion: 4500,\n // Ideal edge (non nested) length\n idealEdgeLength: 50,\n // Divisor to compute edge forces\n edgeElasticity: 0.45,\n // Nesting factor (multiplier) to compute ideal edge length for nested edges\n nestingFactor: 0.1,\n // Gravity force (constant)\n gravity: 0.25,\n // Maximum number of iterations to perform\n numIter: 2500,\n // For enabling tiling\n tile: true,\n // Type of layout animation. The option set is {'during', 'end', false}\n animate: 'end',\n // Duration for animate:end\n animationDuration: 500,\n // Represents the amount of the vertical space to put between the zero degree members during the tiling operation(can also be a function)\n tilingPaddingVertical: 10,\n // Represents the amount of the horizontal space to put between the zero degree members during the tiling operation(can also be a function)\n tilingPaddingHorizontal: 10,\n // Gravity range (constant) for compounds\n gravityRangeCompound: 1.5,\n // Gravity force (constant) for compounds\n gravityCompound: 1.0,\n // Gravity range (constant)\n gravityRange: 3.8,\n // Initial cooling factor for incremental layout\n initialEnergyOnIncremental: 0.5\n};\n\nfunction extend(defaults, options) {\n var obj = {};\n\n for (var i in defaults) {\n obj[i] = defaults[i];\n }\n\n for (var i in options) {\n obj[i] = options[i];\n }\n\n return obj;\n};\n\nfunction _CoSELayout(_options) {\n this.options = extend(defaults, _options);\n getUserOptions(this.options);\n}\n\nvar getUserOptions = function getUserOptions(options) {\n if (options.nodeRepulsion != null) CoSEConstants.DEFAULT_REPULSION_STRENGTH = FDLayoutConstants.DEFAULT_REPULSION_STRENGTH = options.nodeRepulsion;\n if (options.idealEdgeLength != null) CoSEConstants.DEFAULT_EDGE_LENGTH = FDLayoutConstants.DEFAULT_EDGE_LENGTH = options.idealEdgeLength;\n if (options.edgeElasticity != null) CoSEConstants.DEFAULT_SPRING_STRENGTH = FDLayoutConstants.DEFAULT_SPRING_STRENGTH = options.edgeElasticity;\n if (options.nestingFactor != null) CoSEConstants.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR = FDLayoutConstants.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR = options.nestingFactor;\n if (options.gravity != null) CoSEConstants.DEFAULT_GRAVITY_STRENGTH = FDLayoutConstants.DEFAULT_GRAVITY_STRENGTH = options.gravity;\n if (options.numIter != null) CoSEConstants.MAX_ITERATIONS = FDLayoutConstants.MAX_ITERATIONS = options.numIter;\n if (options.gravityRange != null) CoSEConstants.DEFAULT_GRAVITY_RANGE_FACTOR = FDLayoutConstants.DEFAULT_GRAVITY_RANGE_FACTOR = options.gravityRange;\n if (options.gravityCompound != null) CoSEConstants.DEFAULT_COMPOUND_GRAVITY_STRENGTH = FDLayoutConstants.DEFAULT_COMPOUND_GRAVITY_STRENGTH = options.gravityCompound;\n if (options.gravityRangeCompound != null) CoSEConstants.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR = FDLayoutConstants.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR = options.gravityRangeCompound;\n if (options.initialEnergyOnIncremental != null) CoSEConstants.DEFAULT_COOLING_FACTOR_INCREMENTAL = FDLayoutConstants.DEFAULT_COOLING_FACTOR_INCREMENTAL = options.initialEnergyOnIncremental;\n\n if (options.quality == 'draft') LayoutConstants.QUALITY = 0;else if (options.quality == 'proof') LayoutConstants.QUALITY = 2;else LayoutConstants.QUALITY = 1;\n\n CoSEConstants.NODE_DIMENSIONS_INCLUDE_LABELS = FDLayoutConstants.NODE_DIMENSIONS_INCLUDE_LABELS = LayoutConstants.NODE_DIMENSIONS_INCLUDE_LABELS = options.nodeDimensionsIncludeLabels;\n CoSEConstants.DEFAULT_INCREMENTAL = FDLayoutConstants.DEFAULT_INCREMENTAL = LayoutConstants.DEFAULT_INCREMENTAL = !options.randomize;\n CoSEConstants.ANIMATE = FDLayoutConstants.ANIMATE = LayoutConstants.ANIMATE = options.animate;\n CoSEConstants.TILE = options.tile;\n CoSEConstants.TILING_PADDING_VERTICAL = typeof options.tilingPaddingVertical === 'function' ? options.tilingPaddingVertical.call() : options.tilingPaddingVertical;\n CoSEConstants.TILING_PADDING_HORIZONTAL = typeof options.tilingPaddingHorizontal === 'function' ? options.tilingPaddingHorizontal.call() : options.tilingPaddingHorizontal;\n};\n\n_CoSELayout.prototype.run = function () {\n var ready;\n var frameId;\n var options = this.options;\n var idToLNode = this.idToLNode = {};\n var layout = this.layout = new CoSELayout();\n var self = this;\n\n self.stopped = false;\n\n this.cy = this.options.cy;\n\n this.cy.trigger({ type: 'layoutstart', layout: this });\n\n var gm = layout.newGraphManager();\n this.gm = gm;\n\n var nodes = this.options.eles.nodes();\n var edges = this.options.eles.edges();\n\n this.root = gm.addRoot();\n this.processChildrenList(this.root, this.getTopMostNodes(nodes), layout);\n\n for (var i = 0; i < edges.length; i++) {\n var edge = edges[i];\n var sourceNode = this.idToLNode[edge.data(\"source\")];\n var targetNode = this.idToLNode[edge.data(\"target\")];\n if (sourceNode !== targetNode && sourceNode.getEdgesBetween(targetNode).length == 0) {\n var e1 = gm.add(layout.newEdge(), sourceNode, targetNode);\n e1.id = edge.id();\n }\n }\n\n var getPositions = function getPositions(ele, i) {\n if (typeof ele === \"number\") {\n ele = i;\n }\n var theId = ele.data('id');\n var lNode = self.idToLNode[theId];\n\n return {\n x: lNode.getRect().getCenterX(),\n y: lNode.getRect().getCenterY()\n };\n };\n\n /*\n * Reposition nodes in iterations animatedly\n */\n var iterateAnimated = function iterateAnimated() {\n // Thigs to perform after nodes are repositioned on screen\n var afterReposition = function afterReposition() {\n if (options.fit) {\n options.cy.fit(options.eles, options.padding);\n }\n\n if (!ready) {\n ready = true;\n self.cy.one('layoutready', options.ready);\n self.cy.trigger({ type: 'layoutready', layout: self });\n }\n };\n\n var ticksPerFrame = self.options.refresh;\n var isDone;\n\n for (var i = 0; i < ticksPerFrame && !isDone; i++) {\n isDone = self.stopped || self.layout.tick();\n }\n\n // If layout is done\n if (isDone) {\n // If the layout is not a sublayout and it is successful perform post layout.\n if (layout.checkLayoutSuccess() && !layout.isSubLayout) {\n layout.doPostLayout();\n }\n\n // If layout has a tilingPostLayout function property call it.\n if (layout.tilingPostLayout) {\n layout.tilingPostLayout();\n }\n\n layout.isLayoutFinished = true;\n\n self.options.eles.nodes().positions(getPositions);\n\n afterReposition();\n\n // trigger layoutstop when the layout stops (e.g. finishes)\n self.cy.one('layoutstop', self.options.stop);\n self.cy.trigger({ type: 'layoutstop', layout: self });\n\n if (frameId) {\n cancelAnimationFrame(frameId);\n }\n\n ready = false;\n return;\n }\n\n var animationData = self.layout.getPositionsData(); // Get positions of layout nodes note that all nodes may not be layout nodes because of tiling\n\n // Position nodes, for the nodes whose id does not included in data (because they are removed from their parents and included in dummy compounds)\n // use position of their ancestors or dummy ancestors\n options.eles.nodes().positions(function (ele, i) {\n if (typeof ele === \"number\") {\n ele = i;\n }\n // If ele is a compound node, then its position will be defined by its children\n if (!ele.isParent()) {\n var theId = ele.id();\n var pNode = animationData[theId];\n var temp = ele;\n // If pNode is undefined search until finding position data of its first ancestor (It may be dummy as well)\n while (pNode == null) {\n pNode = animationData[temp.data('parent')] || animationData['DummyCompound_' + temp.data('parent')];\n animationData[theId] = pNode;\n temp = temp.parent()[0];\n if (temp == undefined) {\n break;\n }\n }\n if (pNode != null) {\n return {\n x: pNode.x,\n y: pNode.y\n };\n } else {\n return {\n x: ele.position('x'),\n y: ele.position('y')\n };\n }\n }\n });\n\n afterReposition();\n\n frameId = requestAnimationFrame(iterateAnimated);\n };\n\n /*\n * Listen 'layoutstarted' event and start animated iteration if animate option is 'during'\n */\n layout.addListener('layoutstarted', function () {\n if (self.options.animate === 'during') {\n frameId = requestAnimationFrame(iterateAnimated);\n }\n });\n\n layout.runLayout(); // Run cose layout\n\n /*\n * If animate option is not 'during' ('end' or false) perform these here (If it is 'during' similar things are already performed)\n */\n if (this.options.animate !== \"during\") {\n self.options.eles.nodes().not(\":parent\").layoutPositions(self, self.options, getPositions); // Use layout positions to reposition the nodes it considers the options parameter\n ready = false;\n }\n\n return this; // chaining\n};\n\n//Get the top most ones of a list of nodes\n_CoSELayout.prototype.getTopMostNodes = function (nodes) {\n var nodesMap = {};\n for (var i = 0; i < nodes.length; i++) {\n nodesMap[nodes[i].id()] = true;\n }\n var roots = nodes.filter(function (ele, i) {\n if (typeof ele === \"number\") {\n ele = i;\n }\n var parent = ele.parent()[0];\n while (parent != null) {\n if (nodesMap[parent.id()]) {\n return false;\n }\n parent = parent.parent()[0];\n }\n return true;\n });\n\n return roots;\n};\n\n_CoSELayout.prototype.processChildrenList = function (parent, children, layout) {\n var size = children.length;\n for (var i = 0; i < size; i++) {\n var theChild = children[i];\n var children_of_children = theChild.children();\n var theNode;\n\n var dimensions = theChild.layoutDimensions({\n nodeDimensionsIncludeLabels: this.options.nodeDimensionsIncludeLabels\n });\n\n if (theChild.outerWidth() != null && theChild.outerHeight() != null) {\n theNode = parent.add(new CoSENode(layout.graphManager, new PointD(theChild.position('x') - dimensions.w / 2, theChild.position('y') - dimensions.h / 2), new DimensionD(parseFloat(dimensions.w), parseFloat(dimensions.h))));\n } else {\n theNode = parent.add(new CoSENode(this.graphManager));\n }\n // Attach id to the layout node\n theNode.id = theChild.data(\"id\");\n // Attach the paddings of cy node to layout node\n theNode.paddingLeft = parseInt(theChild.css('padding'));\n theNode.paddingTop = parseInt(theChild.css('padding'));\n theNode.paddingRight = parseInt(theChild.css('padding'));\n theNode.paddingBottom = parseInt(theChild.css('padding'));\n\n //Attach the label properties to compound if labels will be included in node dimensions \n if (this.options.nodeDimensionsIncludeLabels) {\n if (theChild.isParent()) {\n var labelWidth = theChild.boundingBox({ includeLabels: true, includeNodes: false }).w;\n var labelHeight = theChild.boundingBox({ includeLabels: true, includeNodes: false }).h;\n var labelPos = theChild.css(\"text-halign\");\n theNode.labelWidth = labelWidth;\n theNode.labelHeight = labelHeight;\n theNode.labelPos = labelPos;\n }\n }\n\n // Map the layout node\n this.idToLNode[theChild.data(\"id\")] = theNode;\n\n if (isNaN(theNode.rect.x)) {\n theNode.rect.x = 0;\n }\n\n if (isNaN(theNode.rect.y)) {\n theNode.rect.y = 0;\n }\n\n if (children_of_children != null && children_of_children.length > 0) {\n var theNewGraph;\n theNewGraph = layout.getGraphManager().add(layout.newGraph(), theNode);\n this.processChildrenList(theNewGraph, children_of_children, layout);\n }\n }\n};\n\n/**\n * @brief : called on continuous layouts to stop them before they finish\n */\n_CoSELayout.prototype.stop = function () {\n this.stopped = true;\n\n return this; // chaining\n};\n\nvar register = function register(cytoscape) {\n // var Layout = getLayout( cytoscape );\n\n cytoscape('layout', 'cose-bilkent', _CoSELayout);\n};\n\n// auto reg for globals\nif (typeof cytoscape !== 'undefined') {\n register(cytoscape);\n}\n\nmodule.exports = register;\n\n/***/ })\n/******/ ]);\n});"],"names":["root","factory","module","require$$0","this","__WEBPACK_EXTERNAL_MODULE_0__","modules","installedModules","__webpack_require__","moduleId","value","exports","name","getter","object","property","LayoutConstants","FDLayoutConstants","CoSEConstants","CoSELayout","CoSENode","PointD","DimensionD","defaults","extend","options","obj","i","_CoSELayout","_options","getUserOptions","ready","frameId","layout","self","gm","nodes","edges","edge","sourceNode","targetNode","e1","getPositions","ele","theId","lNode","iterateAnimated","afterReposition","ticksPerFrame","isDone","animationData","pNode","temp","nodesMap","roots","parent","children","size","theChild","children_of_children","theNode","dimensions","labelWidth","labelHeight","labelPos","theNewGraph","register","cytoscape"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es109.js","sources":["../src/components/Heatmap/scrollable/HeatmapMiniMap.tsx"],"sourcesContent":["import { useCallback, useEffect, useRef } from \"react\";\nimport { drawHeatmapCells, type CanvasCellParams } from \"../HeatmapCanvasCells\";\n\nexport interface HeatmapMiniMapProps {\n canvasCellParams: CanvasCellParams;\n xMax: number;\n yMax: number;\n viewportWidth: number;\n viewportHeight: number;\n scrollLeft: number;\n scrollTop: number;\n width: number;\n height: number;\n onNavigate: (left: number, top: number) => void;\n onCanvasClick?: () => void;\n /** Fires after each draw completes, so a caller (e.g. the expanded popup) can show its own\n * loading state for the full-dataset draw without this component needing to know about it. */\n onReady?: () => void;\n}\n\nconst clamp = (value: number, min: number, max: number) => Math.min(Math.max(value, min), max);\n\nconst HeatmapMiniMap = ({\n canvasCellParams,\n xMax,\n yMax,\n viewportWidth,\n viewportHeight,\n scrollLeft,\n scrollTop,\n width,\n height,\n onNavigate,\n onCanvasClick,\n onReady,\n}: HeatmapMiniMapProps) => {\n const canvasRef = useRef<HTMLCanvasElement | null>(null);\n const scaleX = xMax > 0 ? width / xMax : 0;\n const scaleY = yMax > 0 ? height / yMax : 0;\n\n // Read via a ref rather than as an effect dependency below - onReady is commonly passed as an\n // inline arrow function, and putting it in the deps array would re-trigger (and re-run) the\n // draw effect on every parent render instead of only when the drawable content actually changes.\n const onReadyRef = useRef(onReady);\n onReadyRef.current = onReady;\n\n useEffect(() => {\n const canvas = canvasRef.current;\n if (!canvas || scaleX <= 0 || scaleY <= 0) return;\n // The full-dataset draw below is synchronous and can take a while for large grids (the\n // minimap has no windowing, unlike the main grid). Deferring it a frame lets the surrounding\n // UI - the expanded popup's backdrop, border, and title bar - paint first, so opening the\n // minimap feels immediate instead of the whole popup appearing to hang.\n const raf = requestAnimationFrame(() => {\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) return;\n const dpr = window.devicePixelRatio || 1;\n ctx.setTransform(dpr * scaleX, 0, 0, dpr * scaleY, 0, 0);\n ctx.clearRect(0, 0, xMax, yMax);\n const range = {\n colStart: 0,\n colEnd: Math.max(0, canvasCellParams.data.length - 1),\n rowStart: 0,\n rowEnd: Math.max(0, canvasCellParams.numRows - 1),\n };\n drawHeatmapCells(ctx, canvasCellParams, range, null);\n onReadyRef.current?.();\n });\n return () => cancelAnimationFrame(raf);\n }, [canvasCellParams, xMax, yMax, scaleX, scaleY]);\n\n const navigateCentered = useCallback(\n (contentX: number, contentY: number) => {\n onNavigate(\n clamp(contentX - viewportWidth / 2, 0, Math.max(0, xMax - viewportWidth)),\n clamp(contentY - viewportHeight / 2, 0, Math.max(0, yMax - viewportHeight))\n );\n },\n [onNavigate, viewportWidth, viewportHeight, xMax, yMax]\n );\n\n const handleCanvasPointerDown = useCallback(\n (event: React.PointerEvent<HTMLCanvasElement>) => {\n if (onCanvasClick) {\n onCanvasClick();\n return;\n }\n if (scaleX <= 0 || scaleY <= 0) return;\n const rect = event.currentTarget.getBoundingClientRect();\n navigateCentered((event.clientX - rect.left) / scaleX, (event.clientY - rect.top) / scaleY);\n },\n [onCanvasClick, navigateCentered, scaleX, scaleY]\n );\n\n const handleRectPointerDown = useCallback((event: React.PointerEvent<HTMLDivElement>) => {\n event.stopPropagation();\n event.currentTarget.setPointerCapture(event.pointerId);\n }, []);\n\n const handleRectPointerMove = useCallback(\n (event: React.PointerEvent<HTMLDivElement>) => {\n if (scaleX <= 0 || scaleY <= 0 || !event.currentTarget.hasPointerCapture(event.pointerId)) return;\n onNavigate(\n clamp(scrollLeft + event.movementX / scaleX, 0, Math.max(0, xMax - viewportWidth)),\n clamp(scrollTop + event.movementY / scaleY, 0, Math.max(0, yMax - viewportHeight))\n );\n },\n [scrollLeft, scrollTop, scaleX, scaleY, xMax, yMax, viewportWidth, viewportHeight, onNavigate]\n );\n\n const handleRectPointerUp = useCallback((event: React.PointerEvent<HTMLDivElement>) => {\n event.currentTarget.releasePointerCapture(event.pointerId);\n }, []);\n\n const rectLeft = clamp(scrollLeft * scaleX, 0, width);\n const rectTop = clamp(scrollTop * scaleY, 0, height);\n const rectWidth = Math.max(0, Math.min(viewportWidth * scaleX, width - rectLeft));\n const rectHeight = Math.max(0, Math.min(viewportHeight * scaleY, height - rectTop));\n\n return (\n <div style={{ position: \"relative\", width, height }}>\n <canvas\n ref={canvasRef}\n width={width * (window.devicePixelRatio || 1)}\n height={height * (window.devicePixelRatio || 1)}\n style={{ width, height, display: \"block\", cursor: \"pointer\", border: \"1px solid #d5d5d5\", boxSizing: \"border-box\" }}\n onPointerDown={handleCanvasPointerDown}\n />\n <div\n onPointerDown={handleRectPointerDown}\n onPointerMove={handleRectPointerMove}\n onPointerUp={handleRectPointerUp}\n style={{\n position: \"absolute\",\n left: rectLeft,\n top: rectTop,\n width: rectWidth,\n height: rectHeight,\n border: \"2px solid #0d0f98\",\n backgroundColor: \"rgba(13, 15, 152, 0.15)\",\n cursor: \"grab\",\n boxSizing: \"border-box\",\n }}\n />\n </div>\n );\n};\n\nexport default HeatmapMiniMap;\n"],"names":["clamp","value","min","max","Math","HeatmapMiniMap","canvasCellParams","xMax","yMax","viewportWidth","viewportHeight","scrollLeft","scrollTop","width","height","onNavigate","onCanvasClick","onReady","canvasRef","useRef","scaleX","scaleY","onReadyRef","current","useEffect","canvas","raf","requestAnimationFrame","ctx","getContext","dpr","window","devicePixelRatio","setTransform","clearRect","range","colStart","colEnd","data","length","rowStart","rowEnd","numRows","drawHeatmapCells","cancelAnimationFrame","navigateCentered","useCallback","contentX","contentY","handleCanvasPointerDown","event","rect","currentTarget","getBoundingClientRect","clientX","left","clientY","top","handleRectPointerDown","stopPropagation","setPointerCapture","pointerId","handleRectPointerMove","hasPointerCapture","movementX","movementY","handleRectPointerUp","releasePointerCapture","rectLeft","rectTop","rectWidth","rectHeight","jsxs","position","jsx","display","cursor","border","boxSizing","backgroundColor"],"mappings":"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"}