@weng-lab/visualization 2.4.0-beta.8 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1024) hide show
  1. package/dist/visualization.es10.js +11 -11
  2. package/dist/visualization.es100.js +14 -102
  3. package/dist/visualization.es100.js.map +1 -1
  4. package/dist/visualization.es101.js +13 -129
  5. package/dist/visualization.es101.js.map +1 -1
  6. package/dist/visualization.es102.js +74 -83
  7. package/dist/visualization.es102.js.map +1 -1
  8. package/dist/visualization.es103.js +31 -36
  9. package/dist/visualization.es103.js.map +1 -1
  10. package/dist/visualization.es104.js +13 -47
  11. package/dist/visualization.es104.js.map +1 -1
  12. package/dist/visualization.es106.js +1 -1
  13. package/dist/visualization.es107.js +1 -1
  14. package/dist/visualization.es108.js +1 -1
  15. package/dist/visualization.es109.js +1 -1
  16. package/dist/visualization.es11.js +10 -10
  17. package/dist/visualization.es112.js +2 -2
  18. package/dist/visualization.es116.js +9 -9
  19. package/dist/visualization.es117.js +1 -1
  20. package/dist/visualization.es12.js +2 -2
  21. package/dist/visualization.es120.js +25 -31
  22. package/dist/visualization.es120.js.map +1 -1
  23. package/dist/visualization.es121.js +69 -44
  24. package/dist/visualization.es121.js.map +1 -1
  25. package/dist/visualization.es122.js +43 -74
  26. package/dist/visualization.es122.js.map +1 -1
  27. package/dist/visualization.es123.js +22 -25
  28. package/dist/visualization.es123.js.map +1 -1
  29. package/dist/visualization.es124.js +59 -84
  30. package/dist/visualization.es124.js.map +1 -1
  31. package/dist/visualization.es125.js +102 -35
  32. package/dist/visualization.es125.js.map +1 -1
  33. package/dist/visualization.es126.js +129 -13
  34. package/dist/visualization.es126.js.map +1 -1
  35. package/dist/visualization.es127.js +83 -74
  36. package/dist/visualization.es127.js.map +1 -1
  37. package/dist/visualization.es128.js +36 -31
  38. package/dist/visualization.es128.js.map +1 -1
  39. package/dist/visualization.es129.js +47 -13
  40. package/dist/visualization.es129.js.map +1 -1
  41. package/dist/visualization.es13.js +7 -7
  42. package/dist/visualization.es130.js +2 -18
  43. package/dist/visualization.es130.js.map +1 -1
  44. package/dist/visualization.es131.js +1605 -63
  45. package/dist/visualization.es131.js.map +1 -1
  46. package/dist/visualization.es132.js +64 -7
  47. package/dist/visualization.es132.js.map +1 -1
  48. package/dist/visualization.es133.js +7 -5
  49. package/dist/visualization.es133.js.map +1 -1
  50. package/dist/visualization.es134.js +5 -43
  51. package/dist/visualization.es134.js.map +1 -1
  52. package/dist/visualization.es135.js +42 -30
  53. package/dist/visualization.es135.js.map +1 -1
  54. package/dist/visualization.es136.js +60 -7
  55. package/dist/visualization.es136.js.map +1 -1
  56. package/dist/visualization.es137.js +38 -6
  57. package/dist/visualization.es137.js.map +1 -1
  58. package/dist/visualization.es138.js +36 -3
  59. package/dist/visualization.es138.js.map +1 -1
  60. package/dist/visualization.es139.js +83 -16
  61. package/dist/visualization.es139.js.map +1 -1
  62. package/dist/visualization.es140.js +28 -16
  63. package/dist/visualization.es140.js.map +1 -1
  64. package/dist/visualization.es141.js +6 -31
  65. package/dist/visualization.es141.js.map +1 -1
  66. package/dist/visualization.es142.js +4 -16
  67. package/dist/visualization.es142.js.map +1 -1
  68. package/dist/visualization.es143.js +3 -10
  69. package/dist/visualization.es143.js.map +1 -1
  70. package/dist/visualization.es144.js +84 -6
  71. package/dist/visualization.es144.js.map +1 -1
  72. package/dist/visualization.es145.js +89 -6
  73. package/dist/visualization.es145.js.map +1 -1
  74. package/dist/visualization.es146.js +11 -9
  75. package/dist/visualization.es146.js.map +1 -1
  76. package/dist/visualization.es147.js +5 -4
  77. package/dist/visualization.es147.js.map +1 -1
  78. package/dist/visualization.es148.js +14 -4
  79. package/dist/visualization.es148.js.map +1 -1
  80. package/dist/visualization.es149.js +7 -9
  81. package/dist/visualization.es149.js.map +1 -1
  82. package/dist/visualization.es15.js +8 -8
  83. package/dist/visualization.es150.js +13 -4
  84. package/dist/visualization.es150.js.map +1 -1
  85. package/dist/visualization.es151.js +70 -11
  86. package/dist/visualization.es151.js.map +1 -1
  87. package/dist/visualization.es152.js +15 -25
  88. package/dist/visualization.es152.js.map +1 -1
  89. package/dist/visualization.es153.js +10 -59
  90. package/dist/visualization.es153.js.map +1 -1
  91. package/dist/visualization.es154.js +5 -39
  92. package/dist/visualization.es154.js.map +1 -1
  93. package/dist/visualization.es155.js +30 -36
  94. package/dist/visualization.es155.js.map +1 -1
  95. package/dist/visualization.es156.js +6 -82
  96. package/dist/visualization.es156.js.map +1 -1
  97. package/dist/visualization.es157.js +6 -28
  98. package/dist/visualization.es157.js.map +1 -1
  99. package/dist/visualization.es158.js +3 -7
  100. package/dist/visualization.es158.js.map +1 -1
  101. package/dist/visualization.es159.js +16 -4
  102. package/dist/visualization.es159.js.map +1 -1
  103. package/dist/visualization.es160.js +16 -3
  104. package/dist/visualization.es160.js.map +1 -1
  105. package/dist/visualization.es161.js +31 -18
  106. package/dist/visualization.es161.js.map +1 -1
  107. package/dist/visualization.es162.js +16 -27
  108. package/dist/visualization.es162.js.map +1 -1
  109. package/dist/visualization.es163.js +11 -2
  110. package/dist/visualization.es163.js.map +1 -1
  111. package/dist/visualization.es164.js +6 -1605
  112. package/dist/visualization.es164.js.map +1 -1
  113. package/dist/visualization.es165.js +6 -84
  114. package/dist/visualization.es165.js.map +1 -1
  115. package/dist/visualization.es166.js +10 -89
  116. package/dist/visualization.es166.js.map +1 -1
  117. package/dist/visualization.es167.js +4 -12
  118. package/dist/visualization.es167.js.map +1 -1
  119. package/dist/visualization.es168.js +4 -5
  120. package/dist/visualization.es168.js.map +1 -1
  121. package/dist/visualization.es169.js +8 -14
  122. package/dist/visualization.es169.js.map +1 -1
  123. package/dist/visualization.es170.js +4 -6
  124. package/dist/visualization.es170.js.map +1 -1
  125. package/dist/visualization.es171.js +12 -13
  126. package/dist/visualization.es171.js.map +1 -1
  127. package/dist/visualization.es172.js +26 -18
  128. package/dist/visualization.es172.js.map +1 -1
  129. package/dist/visualization.es173.js +8 -4
  130. package/dist/visualization.es173.js.map +1 -1
  131. package/dist/visualization.es174.js +15 -35
  132. package/dist/visualization.es174.js.map +1 -1
  133. package/dist/visualization.es175.js +11 -8
  134. package/dist/visualization.es175.js.map +1 -1
  135. package/dist/visualization.es176.js +5 -15
  136. package/dist/visualization.es176.js.map +1 -1
  137. package/dist/visualization.es177.js +12 -11
  138. package/dist/visualization.es177.js.map +1 -1
  139. package/dist/visualization.es178.js +3 -5
  140. package/dist/visualization.es178.js.map +1 -1
  141. package/dist/visualization.es179.js +2 -12
  142. package/dist/visualization.es179.js.map +1 -1
  143. package/dist/visualization.es18.js +1 -1
  144. package/dist/visualization.es180.js +11 -4
  145. package/dist/visualization.es180.js.map +1 -1
  146. package/dist/visualization.es181.js +31 -2
  147. package/dist/visualization.es181.js.map +1 -1
  148. package/dist/visualization.es182.js +42 -10
  149. package/dist/visualization.es182.js.map +1 -1
  150. package/dist/visualization.es183.js +48 -29
  151. package/dist/visualization.es183.js.map +1 -1
  152. package/dist/visualization.es184.js +3 -43
  153. package/dist/visualization.es184.js.map +1 -1
  154. package/dist/visualization.es185.js +3 -50
  155. package/dist/visualization.es185.js.map +1 -1
  156. package/dist/visualization.es186.js +6 -3
  157. package/dist/visualization.es186.js.map +1 -1
  158. package/dist/visualization.es187.js +5 -3
  159. package/dist/visualization.es187.js.map +1 -1
  160. package/dist/visualization.es188.js +10 -5
  161. package/dist/visualization.es188.js.map +1 -1
  162. package/dist/visualization.es189.js +3 -4
  163. package/dist/visualization.es189.js.map +1 -1
  164. package/dist/visualization.es190.js +16 -9
  165. package/dist/visualization.es190.js.map +1 -1
  166. package/dist/visualization.es191.js +18 -3
  167. package/dist/visualization.es191.js.map +1 -1
  168. package/dist/visualization.es192.js +36 -17
  169. package/dist/visualization.es192.js.map +1 -1
  170. package/dist/visualization.es193.js +2 -19
  171. package/dist/visualization.es193.js.map +1 -1
  172. package/dist/visualization.es194.js +2 -37
  173. package/dist/visualization.es194.js.map +1 -1
  174. package/dist/visualization.es195.js +4 -2
  175. package/dist/visualization.es195.js.map +1 -1
  176. package/dist/visualization.es196.js +15 -2
  177. package/dist/visualization.es196.js.map +1 -1
  178. package/dist/visualization.es197.js +3 -4
  179. package/dist/visualization.es197.js.map +1 -1
  180. package/dist/visualization.es198.js +7 -15
  181. package/dist/visualization.es198.js.map +1 -1
  182. package/dist/visualization.es199.js +1 -1
  183. package/dist/visualization.es199.js.map +1 -1
  184. package/dist/visualization.es2.js +7 -7
  185. package/dist/visualization.es20.js +64 -61
  186. package/dist/visualization.es20.js.map +1 -1
  187. package/dist/visualization.es200.js +7 -7
  188. package/dist/visualization.es200.js.map +1 -1
  189. package/dist/visualization.es201.js +10 -3
  190. package/dist/visualization.es201.js.map +1 -1
  191. package/dist/visualization.es202.js +6 -6
  192. package/dist/visualization.es202.js.map +1 -1
  193. package/dist/visualization.es203.js +7 -72
  194. package/dist/visualization.es203.js.map +1 -1
  195. package/dist/visualization.es204.js +9 -22
  196. package/dist/visualization.es204.js.map +1 -1
  197. package/dist/visualization.es205.js +5 -21
  198. package/dist/visualization.es205.js.map +1 -1
  199. package/dist/visualization.es206.js +5 -39
  200. package/dist/visualization.es206.js.map +1 -1
  201. package/dist/visualization.es207.js +5 -7
  202. package/dist/visualization.es207.js.map +1 -1
  203. package/dist/visualization.es208.js +14 -12
  204. package/dist/visualization.es208.js.map +1 -1
  205. package/dist/visualization.es209.js +5 -17
  206. package/dist/visualization.es209.js.map +1 -1
  207. package/dist/visualization.es21.js +112 -10
  208. package/dist/visualization.es21.js.map +1 -1
  209. package/dist/visualization.es210.js +3 -36
  210. package/dist/visualization.es210.js.map +1 -1
  211. package/dist/visualization.es211.js +6 -24
  212. package/dist/visualization.es211.js.map +1 -1
  213. package/dist/visualization.es212.js +6 -27
  214. package/dist/visualization.es212.js.map +1 -1
  215. package/dist/visualization.es213.js +9 -71
  216. package/dist/visualization.es213.js.map +1 -1
  217. package/dist/visualization.es214.js +32 -16
  218. package/dist/visualization.es214.js.map +1 -1
  219. package/dist/visualization.es215.js +113 -10
  220. package/dist/visualization.es215.js.map +1 -1
  221. package/dist/visualization.es216.js +20 -5
  222. package/dist/visualization.es216.js.map +1 -1
  223. package/dist/visualization.es217.js +26 -8
  224. package/dist/visualization.es217.js.map +1 -1
  225. package/dist/visualization.es218.js +3 -6
  226. package/dist/visualization.es218.js.map +1 -1
  227. package/dist/visualization.es219.js +5 -7
  228. package/dist/visualization.es219.js.map +1 -1
  229. package/dist/visualization.es22.js +145 -52
  230. package/dist/visualization.es22.js.map +1 -1
  231. package/dist/visualization.es220.js +33 -9
  232. package/dist/visualization.es220.js.map +1 -1
  233. package/dist/visualization.es221.js +15 -6
  234. package/dist/visualization.es221.js.map +1 -1
  235. package/dist/visualization.es222.js +7 -6
  236. package/dist/visualization.es222.js.map +1 -1
  237. package/dist/visualization.es223.js +10 -4
  238. package/dist/visualization.es223.js.map +1 -1
  239. package/dist/visualization.es224.js +17 -14
  240. package/dist/visualization.es224.js.map +1 -1
  241. package/dist/visualization.es225.js +3 -5
  242. package/dist/visualization.es225.js.map +1 -1
  243. package/dist/visualization.es226.js +74 -3
  244. package/dist/visualization.es226.js.map +1 -1
  245. package/dist/visualization.es227.js +2 -7
  246. package/dist/visualization.es227.js.map +1 -1
  247. package/dist/visualization.es228.js +482 -6
  248. package/dist/visualization.es228.js.map +1 -1
  249. package/dist/visualization.es229.js +2 -10
  250. package/dist/visualization.es229.js.map +1 -1
  251. package/dist/visualization.es23.js +7 -43
  252. package/dist/visualization.es23.js.map +1 -1
  253. package/dist/visualization.es230.js +122 -31
  254. package/dist/visualization.es230.js.map +1 -1
  255. package/dist/visualization.es231.js +59 -110
  256. package/dist/visualization.es231.js.map +1 -1
  257. package/dist/visualization.es232.js +60 -3
  258. package/dist/visualization.es232.js.map +1 -1
  259. package/dist/visualization.es233.js +114 -4
  260. package/dist/visualization.es233.js.map +1 -1
  261. package/dist/visualization.es234.js +17 -32
  262. package/dist/visualization.es234.js.map +1 -1
  263. package/dist/visualization.es235.js +3 -15
  264. package/dist/visualization.es235.js.map +1 -1
  265. package/dist/visualization.es236.js +35 -7
  266. package/dist/visualization.es236.js.map +1 -1
  267. package/dist/visualization.es237.js +71 -10
  268. package/dist/visualization.es237.js.map +1 -1
  269. package/dist/visualization.es238.js +22 -3
  270. package/dist/visualization.es238.js.map +1 -1
  271. package/dist/visualization.es239.js +22 -74
  272. package/dist/visualization.es239.js.map +1 -1
  273. package/dist/visualization.es24.js +7 -35
  274. package/dist/visualization.es24.js.map +1 -1
  275. package/dist/visualization.es240.js +41 -2
  276. package/dist/visualization.es240.js.map +1 -1
  277. package/dist/visualization.es241.js +7 -482
  278. package/dist/visualization.es241.js.map +1 -1
  279. package/dist/visualization.es242.js +13 -2
  280. package/dist/visualization.es242.js.map +1 -1
  281. package/dist/visualization.es243.js +15 -61
  282. package/dist/visualization.es243.js.map +1 -1
  283. package/dist/visualization.es244.js +35 -59
  284. package/dist/visualization.es244.js.map +1 -1
  285. package/dist/visualization.es245.js +23 -122
  286. package/dist/visualization.es245.js.map +1 -1
  287. package/dist/visualization.es246.js +27 -115
  288. package/dist/visualization.es246.js.map +1 -1
  289. package/dist/visualization.es247.js +2 -35
  290. package/dist/visualization.es247.js.map +1 -1
  291. package/dist/visualization.es248.js +35 -2
  292. package/dist/visualization.es248.js.map +1 -1
  293. package/dist/visualization.es249.js +2 -2
  294. package/dist/visualization.es25.js +47 -7
  295. package/dist/visualization.es25.js.map +1 -1
  296. package/dist/visualization.es257.js +1 -1
  297. package/dist/visualization.es258.js +7 -7
  298. package/dist/visualization.es26.js +20 -7
  299. package/dist/visualization.es26.js.map +1 -1
  300. package/dist/visualization.es261.js +1 -1
  301. package/dist/visualization.es265.js +22 -28
  302. package/dist/visualization.es265.js.map +1 -1
  303. package/dist/visualization.es266.js +52 -19
  304. package/dist/visualization.es266.js.map +1 -1
  305. package/dist/visualization.es267.js +20 -23
  306. package/dist/visualization.es267.js.map +1 -1
  307. package/dist/visualization.es268.js +53 -53
  308. package/dist/visualization.es268.js.map +1 -1
  309. package/dist/visualization.es269.js +31 -9
  310. package/dist/visualization.es269.js.map +1 -1
  311. package/dist/visualization.es27.js +5 -70
  312. package/dist/visualization.es27.js.map +1 -1
  313. package/dist/visualization.es270.js +33 -9
  314. package/dist/visualization.es270.js.map +1 -1
  315. package/dist/visualization.es271.js +12 -6
  316. package/dist/visualization.es271.js.map +1 -1
  317. package/dist/visualization.es272.js +3 -9
  318. package/dist/visualization.es272.js.map +1 -1
  319. package/dist/visualization.es273.js +11 -6
  320. package/dist/visualization.es273.js.map +1 -1
  321. package/dist/visualization.es274.js +36 -5
  322. package/dist/visualization.es274.js.map +1 -1
  323. package/dist/visualization.es275.js +259 -13
  324. package/dist/visualization.es275.js.map +1 -1
  325. package/dist/visualization.es276.js +59 -5
  326. package/dist/visualization.es276.js.map +1 -1
  327. package/dist/visualization.es277.js +5 -6
  328. package/dist/visualization.es277.js.map +1 -1
  329. package/dist/visualization.es278.js +7 -6
  330. package/dist/visualization.es278.js.map +1 -1
  331. package/dist/visualization.es279.js +140 -6
  332. package/dist/visualization.es279.js.map +1 -1
  333. package/dist/visualization.es28.js +32 -42
  334. package/dist/visualization.es28.js.map +1 -1
  335. package/dist/visualization.es280.js +5 -3
  336. package/dist/visualization.es280.js.map +1 -1
  337. package/dist/visualization.es281.js +21 -4
  338. package/dist/visualization.es281.js.map +1 -1
  339. package/dist/visualization.es282.js +37 -9
  340. package/dist/visualization.es282.js.map +1 -1
  341. package/dist/visualization.es283.js +35 -3
  342. package/dist/visualization.es283.js.map +1 -1
  343. package/dist/visualization.es284.js +15 -12
  344. package/dist/visualization.es284.js.map +1 -1
  345. package/dist/visualization.es285.js +18 -36
  346. package/dist/visualization.es285.js.map +1 -1
  347. package/dist/visualization.es286.js +8 -260
  348. package/dist/visualization.es286.js.map +1 -1
  349. package/dist/visualization.es287.js +108 -58
  350. package/dist/visualization.es287.js.map +1 -1
  351. package/dist/visualization.es288.js +12 -5
  352. package/dist/visualization.es288.js.map +1 -1
  353. package/dist/visualization.es289.js +138 -4
  354. package/dist/visualization.es289.js.map +1 -1
  355. package/dist/visualization.es29.js +34 -11
  356. package/dist/visualization.es29.js.map +1 -1
  357. package/dist/visualization.es290.js +5 -140
  358. package/dist/visualization.es290.js.map +1 -1
  359. package/dist/visualization.es291.js +71 -5
  360. package/dist/visualization.es291.js.map +1 -1
  361. package/dist/visualization.es292.js +35 -21
  362. package/dist/visualization.es292.js.map +1 -1
  363. package/dist/visualization.es293.js +20 -37
  364. package/dist/visualization.es293.js.map +1 -1
  365. package/dist/visualization.es294.js +3 -34
  366. package/dist/visualization.es294.js.map +1 -1
  367. package/dist/visualization.es295.js +24 -14
  368. package/dist/visualization.es295.js.map +1 -1
  369. package/dist/visualization.es296.js +31 -19
  370. package/dist/visualization.es296.js.map +1 -1
  371. package/dist/visualization.es297.js +2 -9
  372. package/dist/visualization.es297.js.map +1 -1
  373. package/dist/visualization.es298.js +2 -110
  374. package/dist/visualization.es298.js.map +1 -1
  375. package/dist/visualization.es299.js +5 -12
  376. package/dist/visualization.es299.js.map +1 -1
  377. package/dist/visualization.es3.js +12 -12
  378. package/dist/visualization.es300.js +15 -142
  379. package/dist/visualization.es300.js.map +1 -1
  380. package/dist/visualization.es301.js +34 -5
  381. package/dist/visualization.es301.js.map +1 -1
  382. package/dist/visualization.es302.js +25 -69
  383. package/dist/visualization.es302.js.map +1 -1
  384. package/dist/visualization.es303.js +10 -35
  385. package/dist/visualization.es303.js.map +1 -1
  386. package/dist/visualization.es304.js +6 -20
  387. package/dist/visualization.es304.js.map +1 -1
  388. package/dist/visualization.es305.js +13 -3
  389. package/dist/visualization.es305.js.map +1 -1
  390. package/dist/visualization.es306.js +12 -25
  391. package/dist/visualization.es306.js.map +1 -1
  392. package/dist/visualization.es307.js +2 -31
  393. package/dist/visualization.es307.js.map +1 -1
  394. package/dist/visualization.es308.js +3 -2
  395. package/dist/visualization.es308.js.map +1 -1
  396. package/dist/visualization.es309.js +2 -2
  397. package/dist/visualization.es309.js.map +1 -1
  398. package/dist/visualization.es31.js +111 -148
  399. package/dist/visualization.es31.js.map +1 -1
  400. package/dist/visualization.es310.js +103 -5
  401. package/dist/visualization.es310.js.map +1 -1
  402. package/dist/visualization.es311.js +5 -15
  403. package/dist/visualization.es311.js.map +1 -1
  404. package/dist/visualization.es312.js +3 -35
  405. package/dist/visualization.es312.js.map +1 -1
  406. package/dist/visualization.es313.js +17 -26
  407. package/dist/visualization.es313.js.map +1 -1
  408. package/dist/visualization.es314.js +5 -10
  409. package/dist/visualization.es314.js.map +1 -1
  410. package/dist/visualization.es315.js +14 -6
  411. package/dist/visualization.es315.js.map +1 -1
  412. package/dist/visualization.es316.js +4 -13
  413. package/dist/visualization.es316.js.map +1 -1
  414. package/dist/visualization.es317.js +28 -11
  415. package/dist/visualization.es317.js.map +1 -1
  416. package/dist/visualization.es318.js +7 -2
  417. package/dist/visualization.es318.js.map +1 -1
  418. package/dist/visualization.es319.js +2 -3
  419. package/dist/visualization.es319.js.map +1 -1
  420. package/dist/visualization.es32.js +8 -111
  421. package/dist/visualization.es32.js.map +1 -1
  422. package/dist/visualization.es320.js +20 -2
  423. package/dist/visualization.es320.js.map +1 -1
  424. package/dist/visualization.es321.js +21 -104
  425. package/dist/visualization.es321.js.map +1 -1
  426. package/dist/visualization.es322.js +5 -4
  427. package/dist/visualization.es322.js.map +1 -1
  428. package/dist/visualization.es323.js +8 -3
  429. package/dist/visualization.es323.js.map +1 -1
  430. package/dist/visualization.es324.js +18 -18
  431. package/dist/visualization.es324.js.map +1 -1
  432. package/dist/visualization.es325.js +44 -6
  433. package/dist/visualization.es325.js.map +1 -1
  434. package/dist/visualization.es326.js +7 -15
  435. package/dist/visualization.es326.js.map +1 -1
  436. package/dist/visualization.es327.js +19 -4
  437. package/dist/visualization.es327.js.map +1 -1
  438. package/dist/visualization.es328.js +51 -26
  439. package/dist/visualization.es328.js.map +1 -1
  440. package/dist/visualization.es329.js +26 -6
  441. package/dist/visualization.es329.js.map +1 -1
  442. package/dist/visualization.es33.js +33 -7
  443. package/dist/visualization.es33.js.map +1 -1
  444. package/dist/visualization.es330.js +11 -2
  445. package/dist/visualization.es330.js.map +1 -1
  446. package/dist/visualization.es331.js +19 -20
  447. package/dist/visualization.es331.js.map +1 -1
  448. package/dist/visualization.es332.js +12 -21
  449. package/dist/visualization.es332.js.map +1 -1
  450. package/dist/visualization.es333.js +4 -5
  451. package/dist/visualization.es333.js.map +1 -1
  452. package/dist/visualization.es334.js +4 -8
  453. package/dist/visualization.es334.js.map +1 -1
  454. package/dist/visualization.es335.js +3 -18
  455. package/dist/visualization.es335.js.map +1 -1
  456. package/dist/visualization.es336.js +172 -40
  457. package/dist/visualization.es336.js.map +1 -1
  458. package/dist/visualization.es337.js +40 -7
  459. package/dist/visualization.es337.js.map +1 -1
  460. package/dist/visualization.es338.js +5 -19
  461. package/dist/visualization.es338.js.map +1 -1
  462. package/dist/visualization.es339.js +3 -53
  463. package/dist/visualization.es339.js.map +1 -1
  464. package/dist/visualization.es34.js +29 -21
  465. package/dist/visualization.es34.js.map +1 -1
  466. package/dist/visualization.es340.js +2 -27
  467. package/dist/visualization.es340.js.map +1 -1
  468. package/dist/visualization.es341.js +30 -11
  469. package/dist/visualization.es341.js.map +1 -1
  470. package/dist/visualization.es342.js +8 -19
  471. package/dist/visualization.es342.js.map +1 -1
  472. package/dist/visualization.es343.js +10 -11
  473. package/dist/visualization.es343.js.map +1 -1
  474. package/dist/visualization.es344.js +3 -4
  475. package/dist/visualization.es344.js.map +1 -1
  476. package/dist/visualization.es345.js +66 -4
  477. package/dist/visualization.es345.js.map +1 -1
  478. package/dist/visualization.es346.js +7 -4
  479. package/dist/visualization.es346.js.map +1 -1
  480. package/dist/visualization.es347.js +4 -175
  481. package/dist/visualization.es347.js.map +1 -1
  482. package/dist/visualization.es348.js +12 -38
  483. package/dist/visualization.es348.js.map +1 -1
  484. package/dist/visualization.es349.js +34 -5
  485. package/dist/visualization.es349.js.map +1 -1
  486. package/dist/visualization.es35.js +64 -33
  487. package/dist/visualization.es35.js.map +1 -1
  488. package/dist/visualization.es350.js +4 -3
  489. package/dist/visualization.es350.js.map +1 -1
  490. package/dist/visualization.es351.js +10 -2
  491. package/dist/visualization.es351.js.map +1 -1
  492. package/dist/visualization.es352.js +2 -30
  493. package/dist/visualization.es352.js.map +1 -1
  494. package/dist/visualization.es353.js +4 -7
  495. package/dist/visualization.es353.js.map +1 -1
  496. package/dist/visualization.es354.js +2 -11
  497. package/dist/visualization.es354.js.map +1 -1
  498. package/dist/visualization.es355.js +9 -3
  499. package/dist/visualization.es355.js.map +1 -1
  500. package/dist/visualization.es356.js +10 -66
  501. package/dist/visualization.es356.js.map +1 -1
  502. package/dist/visualization.es357.js +13 -7
  503. package/dist/visualization.es357.js.map +1 -1
  504. package/dist/visualization.es358.js +2 -5
  505. package/dist/visualization.es358.js.map +1 -1
  506. package/dist/visualization.es359.js +10 -14
  507. package/dist/visualization.es359.js.map +1 -1
  508. package/dist/visualization.es36.js +35 -51
  509. package/dist/visualization.es36.js.map +1 -1
  510. package/dist/visualization.es360.js +7 -34
  511. package/dist/visualization.es360.js.map +1 -1
  512. package/dist/visualization.es361.js +5 -4
  513. package/dist/visualization.es361.js.map +1 -1
  514. package/dist/visualization.es362.js +24 -9
  515. package/dist/visualization.es362.js.map +1 -1
  516. package/dist/visualization.es363.js +19 -2
  517. package/dist/visualization.es363.js.map +1 -1
  518. package/dist/visualization.es364.js +41 -5
  519. package/dist/visualization.es364.js.map +1 -1
  520. package/dist/visualization.es365.js +3 -2
  521. package/dist/visualization.es365.js.map +1 -1
  522. package/dist/visualization.es366.js +8 -9
  523. package/dist/visualization.es366.js.map +1 -1
  524. package/dist/visualization.es367.js +9 -10
  525. package/dist/visualization.es367.js.map +1 -1
  526. package/dist/visualization.es368.js +36 -13
  527. package/dist/visualization.es368.js.map +1 -1
  528. package/dist/visualization.es369.js +10 -2
  529. package/dist/visualization.es369.js.map +1 -1
  530. package/dist/visualization.es37.js +42 -53
  531. package/dist/visualization.es37.js.map +1 -1
  532. package/dist/visualization.es370.js +32 -10
  533. package/dist/visualization.es370.js.map +1 -1
  534. package/dist/visualization.es371.js +4 -7
  535. package/dist/visualization.es371.js.map +1 -1
  536. package/dist/visualization.es372.js +2 -6
  537. package/dist/visualization.es372.js.map +1 -1
  538. package/dist/visualization.es373.js +15 -24
  539. package/dist/visualization.es373.js.map +1 -1
  540. package/dist/visualization.es374.js +25 -19
  541. package/dist/visualization.es374.js.map +1 -1
  542. package/dist/visualization.es375.js +2 -41
  543. package/dist/visualization.es375.js.map +1 -1
  544. package/dist/visualization.es376.js +63 -3
  545. package/dist/visualization.es376.js.map +1 -1
  546. package/dist/visualization.es377.js +2 -9
  547. package/dist/visualization.es377.js.map +1 -1
  548. package/dist/visualization.es378.js +2 -9
  549. package/dist/visualization.es378.js.map +1 -1
  550. package/dist/visualization.es379.js +5 -35
  551. package/dist/visualization.es379.js.map +1 -1
  552. package/dist/visualization.es38.js +61 -42
  553. package/dist/visualization.es38.js.map +1 -1
  554. package/dist/visualization.es380.js +35 -8
  555. package/dist/visualization.es380.js.map +1 -1
  556. package/dist/visualization.es381.js +18 -29
  557. package/dist/visualization.es381.js.map +1 -1
  558. package/dist/visualization.es382.js +3 -4
  559. package/dist/visualization.es382.js.map +1 -1
  560. package/dist/visualization.es383.js +5 -2
  561. package/dist/visualization.es383.js.map +1 -1
  562. package/dist/visualization.es384.js +4 -15
  563. package/dist/visualization.es384.js.map +1 -1
  564. package/dist/visualization.es385.js +44 -20
  565. package/dist/visualization.es385.js.map +1 -1
  566. package/dist/visualization.es386.js +27 -2
  567. package/dist/visualization.es386.js.map +1 -1
  568. package/dist/visualization.es387.js +15 -61
  569. package/dist/visualization.es387.js.map +1 -1
  570. package/dist/visualization.es388.js +10 -2
  571. package/dist/visualization.es388.js.map +1 -1
  572. package/dist/visualization.es389.js +20 -2
  573. package/dist/visualization.es389.js.map +1 -1
  574. package/dist/visualization.es39.js +3 -5
  575. package/dist/visualization.es39.js.map +1 -1
  576. package/dist/visualization.es390.js +14 -6
  577. package/dist/visualization.es390.js.map +1 -1
  578. package/dist/visualization.es391.js +3 -36
  579. package/dist/visualization.es391.js.map +1 -1
  580. package/dist/visualization.es392.js +13 -21
  581. package/dist/visualization.es392.js.map +1 -1
  582. package/dist/visualization.es393.js +48 -3
  583. package/dist/visualization.es393.js.map +1 -1
  584. package/dist/visualization.es394.js +5 -4
  585. package/dist/visualization.es394.js.map +1 -1
  586. package/dist/visualization.es395.js +12 -4
  587. package/dist/visualization.es395.js.map +1 -1
  588. package/dist/visualization.es396.js +2 -49
  589. package/dist/visualization.es396.js.map +1 -1
  590. package/dist/visualization.es397.js +6 -26
  591. package/dist/visualization.es397.js.map +1 -1
  592. package/dist/visualization.es398.js +209 -16
  593. package/dist/visualization.es398.js.map +1 -1
  594. package/dist/visualization.es399.js +27 -10
  595. package/dist/visualization.es399.js.map +1 -1
  596. package/dist/visualization.es4.js +6 -6
  597. package/dist/visualization.es40.js +46 -4
  598. package/dist/visualization.es40.js.map +1 -1
  599. package/dist/visualization.es400.js +3 -19
  600. package/dist/visualization.es400.js.map +1 -1
  601. package/dist/visualization.es401.js +15 -13
  602. package/dist/visualization.es401.js.map +1 -1
  603. package/dist/visualization.es402.js +15 -4
  604. package/dist/visualization.es402.js.map +1 -1
  605. package/dist/visualization.es403.js +14 -12
  606. package/dist/visualization.es403.js.map +1 -1
  607. package/dist/visualization.es404.js +2 -49
  608. package/dist/visualization.es404.js.map +1 -1
  609. package/dist/visualization.es405.js +2 -6
  610. package/dist/visualization.es405.js.map +1 -1
  611. package/dist/visualization.es406.js +2 -13
  612. package/dist/visualization.es406.js.map +1 -1
  613. package/dist/visualization.es407.js +5 -2
  614. package/dist/visualization.es407.js.map +1 -1
  615. package/dist/visualization.es408.js +2 -7
  616. package/dist/visualization.es408.js.map +1 -1
  617. package/dist/visualization.es409.js +25 -210
  618. package/dist/visualization.es409.js.map +1 -1
  619. package/dist/visualization.es41.js +4 -18
  620. package/dist/visualization.es41.js.map +1 -1
  621. package/dist/visualization.es410.js +21 -26
  622. package/dist/visualization.es410.js.map +1 -1
  623. package/dist/visualization.es411.js +9 -4
  624. package/dist/visualization.es411.js.map +1 -1
  625. package/dist/visualization.es412.js +67 -15
  626. package/dist/visualization.es412.js.map +1 -1
  627. package/dist/visualization.es413.js +4 -13
  628. package/dist/visualization.es413.js.map +1 -1
  629. package/dist/visualization.es414.js +28 -14
  630. package/dist/visualization.es414.js.map +1 -1
  631. package/dist/visualization.es415.js +10 -2
  632. package/dist/visualization.es415.js.map +1 -1
  633. package/dist/visualization.es416.js +6 -2
  634. package/dist/visualization.es416.js.map +1 -1
  635. package/dist/visualization.es417.js +2 -2
  636. package/dist/visualization.es417.js.map +1 -1
  637. package/dist/visualization.es418.js +5 -5
  638. package/dist/visualization.es418.js.map +1 -1
  639. package/dist/visualization.es419.js +26 -2
  640. package/dist/visualization.es419.js.map +1 -1
  641. package/dist/visualization.es42.js +281 -4
  642. package/dist/visualization.es42.js.map +1 -1
  643. package/dist/visualization.es420.js +11 -25
  644. package/dist/visualization.es420.js.map +1 -1
  645. package/dist/visualization.es421.js +26 -21
  646. package/dist/visualization.es421.js.map +1 -1
  647. package/dist/visualization.es422.js +10 -9
  648. package/dist/visualization.es422.js.map +1 -1
  649. package/dist/visualization.es423.js +11 -68
  650. package/dist/visualization.es423.js.map +1 -1
  651. package/dist/visualization.es424.js +2 -6
  652. package/dist/visualization.es424.js.map +1 -1
  653. package/dist/visualization.es425.js +16 -29
  654. package/dist/visualization.es425.js.map +1 -1
  655. package/dist/visualization.es426.js +29 -9
  656. package/dist/visualization.es426.js.map +1 -1
  657. package/dist/visualization.es427.js +26 -6
  658. package/dist/visualization.es427.js.map +1 -1
  659. package/dist/visualization.es428.js +2 -2
  660. package/dist/visualization.es428.js.map +1 -1
  661. package/dist/visualization.es429.js +8 -4
  662. package/dist/visualization.es429.js.map +1 -1
  663. package/dist/visualization.es43.js +18 -26
  664. package/dist/visualization.es43.js.map +1 -1
  665. package/dist/visualization.es430.js +12 -25
  666. package/dist/visualization.es430.js.map +1 -1
  667. package/dist/visualization.es431.js +22 -10
  668. package/dist/visualization.es431.js.map +1 -1
  669. package/dist/visualization.es432.js +12 -26
  670. package/dist/visualization.es432.js.map +1 -1
  671. package/dist/visualization.es433.js +3 -10
  672. package/dist/visualization.es433.js.map +1 -1
  673. package/dist/visualization.es434.js +2 -11
  674. package/dist/visualization.es434.js.map +1 -1
  675. package/dist/visualization.es435.js +18 -2
  676. package/dist/visualization.es435.js.map +1 -1
  677. package/dist/visualization.es436.js +4 -16
  678. package/dist/visualization.es436.js.map +1 -1
  679. package/dist/visualization.es437.js +11 -29
  680. package/dist/visualization.es437.js.map +1 -1
  681. package/dist/visualization.es438.js +11 -26
  682. package/dist/visualization.es438.js.map +1 -1
  683. package/dist/visualization.es439.js +7 -2
  684. package/dist/visualization.es439.js.map +1 -1
  685. package/dist/visualization.es44.js +64 -29
  686. package/dist/visualization.es44.js.map +1 -1
  687. package/dist/visualization.es440.js +19 -9
  688. package/dist/visualization.es440.js.map +1 -1
  689. package/dist/visualization.es441.js +22 -12
  690. package/dist/visualization.es441.js.map +1 -1
  691. package/dist/visualization.es442.js +11 -22
  692. package/dist/visualization.es442.js.map +1 -1
  693. package/dist/visualization.es443.js +50 -12
  694. package/dist/visualization.es443.js.map +1 -1
  695. package/dist/visualization.es444.js +18 -3
  696. package/dist/visualization.es444.js.map +1 -1
  697. package/dist/visualization.es445.js +36 -2
  698. package/dist/visualization.es445.js.map +1 -1
  699. package/dist/visualization.es446.js +21 -16
  700. package/dist/visualization.es446.js.map +1 -1
  701. package/dist/visualization.es447.js +31 -3
  702. package/dist/visualization.es447.js.map +1 -1
  703. package/dist/visualization.es448.js +3 -11
  704. package/dist/visualization.es448.js.map +1 -1
  705. package/dist/visualization.es449.js +19 -11
  706. package/dist/visualization.es449.js.map +1 -1
  707. package/dist/visualization.es45.js +266 -5
  708. package/dist/visualization.es45.js.map +1 -1
  709. package/dist/visualization.es450.js +14 -7
  710. package/dist/visualization.es450.js.map +1 -1
  711. package/dist/visualization.es451.js +11 -19
  712. package/dist/visualization.es451.js.map +1 -1
  713. package/dist/visualization.es452.js +27 -20
  714. package/dist/visualization.es452.js.map +1 -1
  715. package/dist/visualization.es453.js +6 -12
  716. package/dist/visualization.es453.js.map +1 -1
  717. package/dist/visualization.es454.js +7 -50
  718. package/dist/visualization.es454.js.map +1 -1
  719. package/dist/visualization.es455.js +2 -18
  720. package/dist/visualization.es455.js.map +1 -1
  721. package/dist/visualization.es456.js +16 -35
  722. package/dist/visualization.es456.js.map +1 -1
  723. package/dist/visualization.es457.js +7 -21
  724. package/dist/visualization.es457.js.map +1 -1
  725. package/dist/visualization.es458.js +9 -31
  726. package/dist/visualization.es458.js.map +1 -1
  727. package/dist/visualization.es459.js +615 -3
  728. package/dist/visualization.es459.js.map +1 -1
  729. package/dist/visualization.es46.js +102 -31
  730. package/dist/visualization.es46.js.map +1 -1
  731. package/dist/visualization.es460.js +50 -18
  732. package/dist/visualization.es460.js.map +1 -1
  733. package/dist/visualization.es461.js +12 -13
  734. package/dist/visualization.es461.js.map +1 -1
  735. package/dist/visualization.es462.js +11 -11
  736. package/dist/visualization.es462.js.map +1 -1
  737. package/dist/visualization.es463.js +23 -30
  738. package/dist/visualization.es463.js.map +1 -1
  739. package/dist/visualization.es464.js +35 -6
  740. package/dist/visualization.es464.js.map +1 -1
  741. package/dist/visualization.es465.js +12 -7
  742. package/dist/visualization.es465.js.map +1 -1
  743. package/dist/visualization.es466.js +19 -2
  744. package/dist/visualization.es466.js.map +1 -1
  745. package/dist/visualization.es467.js +20 -11
  746. package/dist/visualization.es467.js.map +1 -1
  747. package/dist/visualization.es468.js +25 -7
  748. package/dist/visualization.es468.js.map +1 -1
  749. package/dist/visualization.es469.js +42 -9
  750. package/dist/visualization.es469.js.map +1 -1
  751. package/dist/visualization.es47.js +27 -169
  752. package/dist/visualization.es47.js.map +1 -1
  753. package/dist/visualization.es470.js +17 -613
  754. package/dist/visualization.es470.js.map +1 -1
  755. package/dist/visualization.es471.js +33 -43
  756. package/dist/visualization.es471.js.map +1 -1
  757. package/dist/visualization.es472.js +56 -11
  758. package/dist/visualization.es472.js.map +1 -1
  759. package/dist/visualization.es473.js +4 -11
  760. package/dist/visualization.es473.js.map +1 -1
  761. package/dist/visualization.es474.js +3 -23
  762. package/dist/visualization.es474.js.map +1 -1
  763. package/dist/visualization.es475.js +7 -35
  764. package/dist/visualization.es475.js.map +1 -1
  765. package/dist/visualization.es476.js +15 -12
  766. package/dist/visualization.es476.js.map +1 -1
  767. package/dist/visualization.es477.js +2 -19
  768. package/dist/visualization.es477.js.map +1 -1
  769. package/dist/visualization.es478.js +2 -26
  770. package/dist/visualization.es478.js.map +1 -1
  771. package/dist/visualization.es479.js +2 -27
  772. package/dist/visualization.es479.js.map +1 -1
  773. package/dist/visualization.es48.js +21 -63
  774. package/dist/visualization.es48.js.map +1 -1
  775. package/dist/visualization.es480.js +7 -43
  776. package/dist/visualization.es480.js.map +1 -1
  777. package/dist/visualization.es481.js +31 -16
  778. package/dist/visualization.es481.js.map +1 -1
  779. package/dist/visualization.es482.js +3 -40
  780. package/dist/visualization.es482.js.map +1 -1
  781. package/dist/visualization.es483.js +3 -57
  782. package/dist/visualization.es483.js.map +1 -1
  783. package/dist/visualization.es484.js +6 -3
  784. package/dist/visualization.es484.js.map +1 -1
  785. package/dist/visualization.es485.js +13 -3
  786. package/dist/visualization.es485.js.map +1 -1
  787. package/dist/visualization.es486.js +2 -7
  788. package/dist/visualization.es486.js.map +1 -1
  789. package/dist/visualization.es487.js +3 -15
  790. package/dist/visualization.es487.js.map +1 -1
  791. package/dist/visualization.es488.js +4 -2
  792. package/dist/visualization.es488.js.map +1 -1
  793. package/dist/visualization.es489.js +11 -2
  794. package/dist/visualization.es489.js.map +1 -1
  795. package/dist/visualization.es49.js +17 -174
  796. package/dist/visualization.es49.js.map +1 -1
  797. package/dist/visualization.es490.js +26 -2
  798. package/dist/visualization.es490.js.map +1 -1
  799. package/dist/visualization.es491.js +4 -53
  800. package/dist/visualization.es491.js.map +1 -1
  801. package/dist/visualization.es492.js +29 -28
  802. package/dist/visualization.es492.js.map +1 -1
  803. package/dist/visualization.es493.js +237 -33
  804. package/dist/visualization.es493.js.map +1 -1
  805. package/dist/visualization.es494.js +992 -12
  806. package/dist/visualization.es494.js.map +1 -1
  807. package/dist/visualization.es495.js +30 -7
  808. package/dist/visualization.es495.js.map +1 -1
  809. package/dist/visualization.es496.js +58 -31
  810. package/dist/visualization.es496.js.map +1 -1
  811. package/dist/visualization.es497.js +29 -4
  812. package/dist/visualization.es497.js.map +1 -1
  813. package/dist/visualization.es498.js +119 -3
  814. package/dist/visualization.es498.js.map +1 -1
  815. package/dist/visualization.es499.js +29 -6
  816. package/dist/visualization.es499.js.map +1 -1
  817. package/dist/visualization.es5.js +6 -6
  818. package/dist/visualization.es50.js +20 -73
  819. package/dist/visualization.es50.js.map +1 -1
  820. package/dist/visualization.es500.js +10 -12
  821. package/dist/visualization.es500.js.map +1 -1
  822. package/dist/visualization.es501.js +14 -2
  823. package/dist/visualization.es501.js.map +1 -1
  824. package/dist/visualization.es502.js +32 -3
  825. package/dist/visualization.es502.js.map +1 -1
  826. package/dist/visualization.es503.js +28 -3
  827. package/dist/visualization.es503.js.map +1 -1
  828. package/dist/visualization.es504.js +10 -10
  829. package/dist/visualization.es504.js.map +1 -1
  830. package/dist/visualization.es505.js +12 -25
  831. package/dist/visualization.es505.js.map +1 -1
  832. package/dist/visualization.es506.js +17 -4
  833. package/dist/visualization.es506.js.map +1 -1
  834. package/dist/visualization.es507.js +23 -32
  835. package/dist/visualization.es507.js.map +1 -1
  836. package/dist/visualization.es508.js +17 -238
  837. package/dist/visualization.es508.js.map +1 -1
  838. package/dist/visualization.es509.js +88 -984
  839. package/dist/visualization.es509.js.map +1 -1
  840. package/dist/visualization.es51.js +73 -47
  841. package/dist/visualization.es51.js.map +1 -1
  842. package/dist/visualization.es510.js +26 -59
  843. package/dist/visualization.es510.js.map +1 -1
  844. package/dist/visualization.es511.js +72 -29
  845. package/dist/visualization.es511.js.map +1 -1
  846. package/dist/visualization.es512.js +49 -117
  847. package/dist/visualization.es512.js.map +1 -1
  848. package/dist/visualization.es513.js +33 -28
  849. package/dist/visualization.es513.js.map +1 -1
  850. package/dist/visualization.es514.js +40 -9
  851. package/dist/visualization.es514.js.map +1 -1
  852. package/dist/visualization.es515.js +9 -13
  853. package/dist/visualization.es515.js.map +1 -1
  854. package/dist/visualization.es516.js +9 -32
  855. package/dist/visualization.es516.js.map +1 -1
  856. package/dist/visualization.es517.js +6 -28
  857. package/dist/visualization.es517.js.map +1 -1
  858. package/dist/visualization.es518.js +8 -10
  859. package/dist/visualization.es518.js.map +1 -1
  860. package/dist/visualization.es519.js +5 -11
  861. package/dist/visualization.es519.js.map +1 -1
  862. package/dist/visualization.es52.js +80 -33
  863. package/dist/visualization.es52.js.map +1 -1
  864. package/dist/visualization.es520.js +5 -17
  865. package/dist/visualization.es520.js.map +1 -1
  866. package/dist/visualization.es521.js +14 -23
  867. package/dist/visualization.es521.js.map +1 -1
  868. package/dist/visualization.es522.js +5 -16
  869. package/dist/visualization.es522.js.map +1 -1
  870. package/dist/visualization.es523.js +6 -96
  871. package/dist/visualization.es523.js.map +1 -1
  872. package/dist/visualization.es524.js +6 -28
  873. package/dist/visualization.es524.js.map +1 -1
  874. package/dist/visualization.es525.js +6 -71
  875. package/dist/visualization.es525.js.map +1 -1
  876. package/dist/visualization.es526.js +3 -51
  877. package/dist/visualization.es526.js.map +1 -1
  878. package/dist/visualization.es527.js +4 -34
  879. package/dist/visualization.es527.js.map +1 -1
  880. package/dist/visualization.es528.js +8 -40
  881. package/dist/visualization.es528.js.map +1 -1
  882. package/dist/visualization.es529.js +32 -32
  883. package/dist/visualization.es529.js.map +1 -1
  884. package/dist/visualization.es53.js +43 -7
  885. package/dist/visualization.es53.js.map +1 -1
  886. package/dist/visualization.es530.js +30 -25
  887. package/dist/visualization.es530.js.map +1 -1
  888. package/dist/visualization.es531.js +33 -45
  889. package/dist/visualization.es531.js.map +1 -1
  890. package/dist/visualization.es532.js +24 -8
  891. package/dist/visualization.es532.js.map +1 -1
  892. package/dist/visualization.es533.js +46 -15
  893. package/dist/visualization.es533.js.map +1 -1
  894. package/dist/visualization.es534.js +9 -16
  895. package/dist/visualization.es534.js.map +1 -1
  896. package/dist/visualization.es535.js +14 -15
  897. package/dist/visualization.es535.js.map +1 -1
  898. package/dist/visualization.es536.js +15 -23
  899. package/dist/visualization.es536.js.map +1 -1
  900. package/dist/visualization.es537.js +16 -6
  901. package/dist/visualization.es537.js.map +1 -1
  902. package/dist/visualization.es538.js +24 -34
  903. package/dist/visualization.es538.js.map +1 -1
  904. package/dist/visualization.es539.js +5 -29
  905. package/dist/visualization.es539.js.map +1 -1
  906. package/dist/visualization.es54.js +10 -7
  907. package/dist/visualization.es54.js.map +1 -1
  908. package/dist/visualization.es540.js +1 -1
  909. package/dist/visualization.es541.js +3 -3
  910. package/dist/visualization.es542.js +2 -2
  911. package/dist/visualization.es543.js +2 -2
  912. package/dist/visualization.es545.js +7 -7
  913. package/dist/visualization.es547.js +1 -1
  914. package/dist/visualization.es55.js +38 -33
  915. package/dist/visualization.es55.js.map +1 -1
  916. package/dist/visualization.es551.js +17 -17
  917. package/dist/visualization.es553.js +7 -7
  918. package/dist/visualization.es556.js +1 -1
  919. package/dist/visualization.es56.js +78 -32
  920. package/dist/visualization.es56.js.map +1 -1
  921. package/dist/visualization.es562.js +1 -1
  922. package/dist/visualization.es568.js +2 -2
  923. package/dist/visualization.es569.js +1 -1
  924. package/dist/visualization.es57.js +45 -28
  925. package/dist/visualization.es57.js.map +1 -1
  926. package/dist/visualization.es570.js +1 -1
  927. package/dist/visualization.es573.js +1 -1
  928. package/dist/visualization.es574.js +1 -1
  929. package/dist/visualization.es577.js +1 -1
  930. package/dist/visualization.es578.js +1 -1
  931. package/dist/visualization.es58.js +55 -64
  932. package/dist/visualization.es58.js.map +1 -1
  933. package/dist/visualization.es581.js +4 -4
  934. package/dist/visualization.es586.js +1 -1
  935. package/dist/visualization.es587.js +1 -1
  936. package/dist/visualization.es59.js +6 -61
  937. package/dist/visualization.es59.js.map +1 -1
  938. package/dist/visualization.es590.js +2 -2
  939. package/dist/visualization.es591.js +1 -1
  940. package/dist/visualization.es6.js +15 -15
  941. package/dist/visualization.es60.js +12 -3
  942. package/dist/visualization.es60.js.map +1 -1
  943. package/dist/visualization.es603.js +2 -2
  944. package/dist/visualization.es604.js +3 -3
  945. package/dist/visualization.es605.js +2 -2
  946. package/dist/visualization.es609.js +4 -4
  947. package/dist/visualization.es61.js +56 -45
  948. package/dist/visualization.es61.js.map +1 -1
  949. package/dist/visualization.es62.js +34 -3
  950. package/dist/visualization.es62.js.map +1 -1
  951. package/dist/visualization.es63.js +49 -276
  952. package/dist/visualization.es63.js.map +1 -1
  953. package/dist/visualization.es64.js +18700 -17
  954. package/dist/visualization.es64.js.map +1 -1
  955. package/dist/visualization.es65.js +5 -18702
  956. package/dist/visualization.es65.js.map +1 -1
  957. package/dist/visualization.es66.js +4 -4
  958. package/dist/visualization.es67.js +60 -5
  959. package/dist/visualization.es67.js.map +1 -1
  960. package/dist/visualization.es68.js +809 -58
  961. package/dist/visualization.es68.js.map +1 -1
  962. package/dist/visualization.es7.js +11 -11
  963. package/dist/visualization.es70.js +134 -0
  964. package/dist/visualization.es70.js.map +1 -0
  965. package/dist/visualization.es71.js +70 -131
  966. package/dist/visualization.es71.js.map +1 -1
  967. package/dist/visualization.es72.js +12 -66
  968. package/dist/visualization.es72.js.map +1 -1
  969. package/dist/visualization.es73.js +60 -262
  970. package/dist/visualization.es73.js.map +1 -1
  971. package/dist/visualization.es74.js +49 -100
  972. package/dist/visualization.es74.js.map +1 -1
  973. package/dist/visualization.es75.js +53 -25
  974. package/dist/visualization.es75.js.map +1 -1
  975. package/dist/visualization.es76.js +42 -22
  976. package/dist/visualization.es76.js.map +1 -1
  977. package/dist/visualization.es77.js +6 -18
  978. package/dist/visualization.es77.js.map +1 -1
  979. package/dist/visualization.es78.js +4 -20
  980. package/dist/visualization.es78.js.map +1 -1
  981. package/dist/visualization.es79.js +18 -74
  982. package/dist/visualization.es79.js.map +1 -1
  983. package/dist/visualization.es8.js +13 -13
  984. package/dist/visualization.es80.js +5 -81
  985. package/dist/visualization.es80.js.map +1 -1
  986. package/dist/visualization.es81.js +26 -66
  987. package/dist/visualization.es81.js.map +1 -1
  988. package/dist/visualization.es82.js +30 -39
  989. package/dist/visualization.es82.js.map +1 -1
  990. package/dist/visualization.es83.js +31 -80
  991. package/dist/visualization.es83.js.map +1 -1
  992. package/dist/visualization.es84.js +169 -46
  993. package/dist/visualization.es84.js.map +1 -1
  994. package/dist/visualization.es85.js +64 -55
  995. package/dist/visualization.es85.js.map +1 -1
  996. package/dist/visualization.es86.js +175 -7
  997. package/dist/visualization.es86.js.map +1 -1
  998. package/dist/visualization.es87.js +74 -13
  999. package/dist/visualization.es87.js.map +1 -1
  1000. package/dist/visualization.es88.js +7 -57
  1001. package/dist/visualization.es88.js.map +1 -1
  1002. package/dist/visualization.es89.js +8 -113
  1003. package/dist/visualization.es89.js.map +1 -1
  1004. package/dist/visualization.es9.js +1 -1
  1005. package/dist/visualization.es90.js +2 -2
  1006. package/dist/visualization.es91.js +2 -2
  1007. package/dist/visualization.es92.js +1 -1
  1008. package/dist/visualization.es93.js +32 -15
  1009. package/dist/visualization.es93.js.map +1 -1
  1010. package/dist/visualization.es94.js +44 -14
  1011. package/dist/visualization.es94.js.map +1 -1
  1012. package/dist/visualization.es95.js +73 -23
  1013. package/dist/visualization.es95.js.map +1 -1
  1014. package/dist/visualization.es96.js +25 -70
  1015. package/dist/visualization.es96.js.map +1 -1
  1016. package/dist/visualization.es97.js +82 -42
  1017. package/dist/visualization.es97.js.map +1 -1
  1018. package/dist/visualization.es98.js +34 -20
  1019. package/dist/visualization.es98.js.map +1 -1
  1020. package/dist/visualization.es99.js +15 -60
  1021. package/dist/visualization.es99.js.map +1 -1
  1022. package/package.json +1 -1
  1023. package/dist/visualization.es69.js +0 -814
  1024. package/dist/visualization.es69.js.map +0 -1
@@ -1,8 +1,269 @@
1
- import { createDomVisualElement as o } from "./visualization.es175.js";
2
- import { createMotionProxy as r } from "./visualization.es176.js";
3
- import { featureBundle as t } from "./visualization.es177.js";
4
- const n = /* @__PURE__ */ r(t, o);
1
+ import { jsx as o, jsxs as k, Fragment as b } from "react/jsx-runtime";
2
+ import { useRef as A, useState as Qe, useEffect as V, useMemo as C, useCallback as ee } from "react";
3
+ import _e from "@mui/material/CircularProgress";
4
+ import { Stack as Ge, Box as me } from "@mui/material";
5
+ import { rescaleX as ze, rescaleY as We, prepareCanvas as Ze, partitionPointsByHover as He, getTicks as ye, isPointVisible as be, drawCanvasPoint as et } from "./visualization.es17.js";
6
+ import tt from "./visualization.es93.js";
7
+ import rt from "./visualization.es94.js";
8
+ import nt from "./visualization.es95.js";
9
+ import ot from "./visualization.es96.js";
10
+ import { useDragSelection as st } from "./visualization.es97.js";
11
+ import { useStableCallback as ct } from "./visualization.es19.js";
12
+ import Se from "./visualization.es26.js";
13
+ import lt from "./visualization.es98.js";
14
+ import at from "./visualization.es61.js";
15
+ import it from "./visualization.es29.js";
16
+ import ft from "./visualization.es28.js";
17
+ import ut from "./visualization.es33.js";
18
+ import vt from "./visualization.es62.js";
19
+ import we from "./visualization.es25.js";
20
+ import pt from "./visualization.es72.js";
21
+ const ht = 120, xt = (D) => 1 - Math.pow(1 - D, 3), jt = ({
22
+ width: D,
23
+ height: te,
24
+ margin: s,
25
+ boundedWidth: l,
26
+ boundedHeight: c,
27
+ loading: ke,
28
+ pointData: p,
29
+ animation: T,
30
+ animationGroupSize: O,
31
+ animationBuffer: $,
32
+ xScale: I,
33
+ yScale: U,
34
+ zoom: f,
35
+ selectMode: i,
36
+ selectable: Ae,
37
+ disableZoom: h,
38
+ groupPointsAnchor: re,
39
+ hoveredPoint: E,
40
+ hoveredPoints: ne,
41
+ handleMouseMove: Ee,
42
+ handleMouseLeave: oe,
43
+ onDisplayedPointsChange: se,
44
+ onSelectionChange: ge,
45
+ onPointClicked: ce,
46
+ leftAxisLabel: Le,
47
+ bottomAxisLabel: Me,
48
+ border: Ce,
49
+ originLine: Te,
50
+ backgroundGradient: L,
51
+ crosshair: J,
52
+ divRef: Re
53
+ }) => {
54
+ const le = A(null), ae = A(null), F = A(0), N = A(null), [Q, _] = Qe(!!T);
55
+ V(() => {
56
+ if (!T) return;
57
+ if (p.length > 2500) {
58
+ _(!1);
59
+ return;
60
+ }
61
+ const e = 450, t = ($ ?? 0.03) * 1e3, r = Math.ceil(p.length / (O ?? 1)), n = e + r * t, a = window.setTimeout(() => _(!1), n);
62
+ return () => window.clearTimeout(a);
63
+ }, [T, $, O, p.length]);
64
+ const {
65
+ lines: Pe,
66
+ isDragging: m,
67
+ x: R,
68
+ y: P,
69
+ dx: Y,
70
+ dy: X,
71
+ dragStart: ie,
72
+ dragMove: fe,
73
+ dragEnd: de,
74
+ completeSelection: Ve
75
+ } = st({
76
+ pointData: p,
77
+ margin: s,
78
+ xScale: I,
79
+ yScale: U,
80
+ onSelectionChange: ge
81
+ });
82
+ V(() => {
83
+ const e = le.current, t = (a) => {
84
+ a.preventDefault();
85
+ }, r = (a) => {
86
+ a.preventDefault();
87
+ }, n = (a) => {
88
+ a.preventDefault();
89
+ };
90
+ return e && (e.addEventListener("wheel", t, {
91
+ passive: !1
92
+ }), e.addEventListener("touchstart", n, {
93
+ passive: !1
94
+ }), e.addEventListener("touchmove", r, {
95
+ passive: !1
96
+ })), () => {
97
+ e && (e.removeEventListener("wheel", t), e.removeEventListener("touchstart", n), e.removeEventListener("touchmove", r));
98
+ };
99
+ }, []);
100
+ const u = C(() => ze(I, f.transformMatrix.translateX, f.transformMatrix.scaleX), [I, f.transformMatrix]), v = C(() => We(U, f.transformMatrix.translateY, f.transformMatrix.scaleY), [U, f.transformMatrix]), G = C(() => E ? [E] : ne ?? [], [E, ne]), ue = C(() => {
101
+ const e = re;
102
+ if (!e) return G;
103
+ const t = (n) => e in n ? n[e] : n.metaData?.[e], r = new Set(G.map(t).filter((n) => n !== void 0));
104
+ return r.size === 0 ? [] : p.filter((n) => {
105
+ const a = t(n);
106
+ return a !== void 0 && r.has(a);
107
+ });
108
+ }, [G, re, p]), ve = A(/* @__PURE__ */ new Set()), M = C(() => {
109
+ const e = new Set(ue.map((r) => `${r.x},${r.y}`)), t = ve.current;
110
+ return e.size === t.size && [...e].every((r) => t.has(r)) ? t : (ve.current = e, e);
111
+ }, [ue]), j = C(() => p.filter((e) => {
112
+ const t = u(e.x), r = v(e.y);
113
+ return t >= 0 && t <= l && r >= 0 && r <= c;
114
+ }), [p, u, v, l, c]), q = ee((e, t, r) => {
115
+ const n = r.getContext("2d");
116
+ if (!n) return;
117
+ if (Ze(n, l, c), L) {
118
+ const [x, H, B] = L.colorScale ?? ["red", "white", "blue"], w = l, g = c, Ue = e(0), Je = t(0), Ne = Math.max(1e-3, Math.min(0.999, (Ue * w - Je * g + g * g) / (w * w + g * g))), K = n.createLinearGradient(0, g, w, 0);
119
+ K.addColorStop(0, x), K.addColorStop(Ne, H), K.addColorStop(1, B), n.globalAlpha = L.opacity ?? 1, n.fillStyle = K, n.fillRect(0, 0, w, g), n.globalAlpha = 1;
120
+ }
121
+ const {
122
+ nonHovered: a,
123
+ hovered: S
124
+ } = He(p, M), xe = (x, H) => {
125
+ const B = e(x.x), w = t(x.y);
126
+ be(B, w, l, c) && et(n, x, B, w, H ? F.current : 0);
127
+ };
128
+ a.forEach((x) => xe(x, !1)), S.forEach((x) => xe(x, !0));
129
+ }, [c, l, M, p, L]);
130
+ V(() => {
131
+ const e = ae.current;
132
+ if (!e || Q) return;
133
+ if (M.size === 0) {
134
+ N.current = null, F.current = 0, q(u, v, e);
135
+ return;
136
+ }
137
+ if (N.current === M) {
138
+ q(u, v, e);
139
+ return;
140
+ }
141
+ N.current = M;
142
+ const t = performance.now();
143
+ F.current = 0;
144
+ let r = requestAnimationFrame(function n() {
145
+ const a = Math.min(1, (performance.now() - t) / ht);
146
+ F.current = xt(a), q(u, v, e), a < 1 && (r = requestAnimationFrame(n));
147
+ });
148
+ return () => cancelAnimationFrame(r);
149
+ }, [q, u, v, Q, M]);
150
+ const De = ee(() => {
151
+ E && ce?.(E);
152
+ }, [E, ce]), Fe = h ? Ae ? m ? "none" : "crosshair" : m ? "none" : "default" : E ? "default" : i === "select" ? m ? "none" : "crosshair" : f.isDragging ? "grabbing" : "grab", z = (e) => {
153
+ de(e), Ve(f);
154
+ }, y = A(null), d = A(null), W = ct((e) => {
155
+ f.dragMove(e);
156
+ }), Ye = ee(() => {
157
+ y.current !== null && (cancelAnimationFrame(y.current), y.current = null);
158
+ const e = d.current;
159
+ d.current = null, e && W(e);
160
+ }, [W]);
161
+ V(() => () => {
162
+ y.current !== null && cancelAnimationFrame(y.current);
163
+ }, []);
164
+ const pe = (e) => {
165
+ d.current = e.nativeEvent, y.current === null && (y.current = requestAnimationFrame(() => {
166
+ y.current = null;
167
+ const t = d.current;
168
+ d.current = null, t && W(t);
169
+ }));
170
+ }, Z = () => {
171
+ Ye(), f.dragEnd();
172
+ }, Xe = i === "none" ? void 0 : i === "select" ? ie : h ? void 0 : f.dragStart, je = i === "none" ? void 0 : i === "select" ? z : h ? void 0 : Z, qe = i === "none" ? void 0 : i === "select" ? m ? fe : void 0 : h ? void 0 : pe, Be = i === "none" ? void 0 : i === "select" ? z : h ? void 0 : Z, Ke = i === "none" ? void 0 : i === "select" ? ie : h ? void 0 : f.dragStart, Oe = i === "none" ? void 0 : i === "select" ? z : h ? void 0 : Z, $e = i === "none" ? void 0 : i === "select" ? m ? fe : void 0 : h ? void 0 : pe, Ie = (e) => {
173
+ if (_(!1), !h) {
174
+ const t = pt(e) || {
175
+ x: 0,
176
+ y: 0
177
+ }, r = e.deltaY < 0 ? 1.1 : 0.9;
178
+ f.scale({
179
+ scaleX: r,
180
+ scaleY: r,
181
+ point: t
182
+ });
183
+ }
184
+ }, he = A([]);
185
+ return V(() => {
186
+ ((t, r) => t.length !== r.length ? !0 : !t.every((n, a) => {
187
+ const S = r[a];
188
+ return n.x === S.x && n.y === S.y && n.r === S.r && n.shape === S.shape && n.color === S.color && n.opacity === S.opacity;
189
+ }))(he.current, j) && (se?.(j), he.current = j);
190
+ }, [j, se]), /* @__PURE__ */ o(Ge, { justifyContent: "center", alignItems: "center", direction: "row", sx: {
191
+ position: "relative"
192
+ }, children: /* @__PURE__ */ o(me, { sx: {
193
+ width: D,
194
+ height: te
195
+ }, children: ke ? /* @__PURE__ */ o(me, { display: "flex", width: "100%", height: "100%", sx: {
196
+ justifyContent: "center",
197
+ alignItems: "center"
198
+ }, children: /* @__PURE__ */ o(_e, {}) }) : /* @__PURE__ */ k("div", { style: {
199
+ position: "relative"
200
+ }, ref: Re, children: [
201
+ /* @__PURE__ */ o("canvas", { ref: ae, width: l * 2, height: c * 2, style: {
202
+ userSelect: "none",
203
+ position: "absolute",
204
+ top: s.top,
205
+ left: s.left,
206
+ width: l,
207
+ height: c,
208
+ backgroundColor: "transparent"
209
+ } }),
210
+ /* @__PURE__ */ k("svg", { width: D, height: te, overflow: "visible", style: {
211
+ position: "absolute",
212
+ userSelect: "none"
213
+ }, onMouseMove: (e) => {
214
+ m ? oe() : Ee(e, f);
215
+ }, onMouseLeave: oe, children: [
216
+ /* @__PURE__ */ k(Se, { top: s.top, left: s.left, children: [
217
+ Q && T && /* @__PURE__ */ o(tt, { pointData: p, animation: T, animationGroupSize: O, animationBuffer: $, xScaleTransformed: u, yScaleTransformed: v, boundedWidth: l, boundedHeight: c }),
218
+ i === "select" && /* @__PURE__ */ k(b, { children: [
219
+ Pe.map((e, t) => /* @__PURE__ */ o(lt, { fill: "transparent", stroke: "black", strokeWidth: 3, data: e, curve: at, x: (r) => r.x, y: (r) => r.y }, `line-${t}`)),
220
+ m && /* @__PURE__ */ k("g", { children: [
221
+ /* @__PURE__ */ o("line", { x1: R - s.left + Y - 6, y1: P - s.top + X, x2: R - s.left + Y + 6, y2: P - s.top + X, stroke: "black", strokeWidth: 1 }),
222
+ /* @__PURE__ */ o("line", { x1: R - s.left + Y, y1: P - s.top + X - 6, x2: R - s.left + Y, y2: P - s.top + X + 6, stroke: "black", strokeWidth: 1 }),
223
+ /* @__PURE__ */ o("circle", { cx: R - s.left, cy: P - s.top, r: 4, fill: "transparent", stroke: "black", pointerEvents: "none" })
224
+ ] })
225
+ ] }),
226
+ Te && (() => {
227
+ const e = u(0), t = v(0);
228
+ return /* @__PURE__ */ k(b, { children: [
229
+ t >= 0 && t <= c && /* @__PURE__ */ o("line", { x1: 0, x2: l, y1: t, y2: t, stroke: "#000", strokeWidth: 1, strokeDasharray: "4,4", pointerEvents: "none" }),
230
+ e >= 0 && e <= l && /* @__PURE__ */ o("line", { x1: e, x2: e, y1: 0, y2: c, stroke: "#000", strokeWidth: 1, strokeDasharray: "4,4", pointerEvents: "none" })
231
+ ] });
232
+ })(),
233
+ /* @__PURE__ */ o("rect", { ref: le, fill: "transparent", width: l, height: c, style: {
234
+ cursor: Fe
235
+ }, onMouseDown: Xe, onMouseUp: je, onMouseMove: qe, onMouseLeave: Be, onTouchStart: Ke, onTouchEnd: Oe, onTouchMove: $e, onWheel: Ie, onClick: De }),
236
+ J && !m && /* @__PURE__ */ o(ot, { position: {
237
+ x: u(J.x),
238
+ y: v(J.y)
239
+ }, boundedWidth: l, boundedHeight: c })
240
+ ] }),
241
+ /* @__PURE__ */ k(Se, { top: s.top, left: s.left, children: [
242
+ /* @__PURE__ */ o(it, { scale: v, tickLabelProps: () => ({
243
+ fill: "#1c1917",
244
+ fontSize: 10,
245
+ textAnchor: "end",
246
+ verticalAnchor: "middle",
247
+ x: -10
248
+ }), tickValues: ye(v, 5) }),
249
+ /* @__PURE__ */ o(ft, { top: c, scale: u, tickLabelProps: () => ({
250
+ fill: "#1c1917",
251
+ fontSize: 11,
252
+ textAnchor: "middle"
253
+ }), tickValues: ye(u, 5) }),
254
+ Ce && /* @__PURE__ */ k(b, { children: [
255
+ /* @__PURE__ */ o(ut, { top: 0, scale: u, tickValues: [] }),
256
+ /* @__PURE__ */ o(vt, { scale: v, tickValues: [], left: l })
257
+ ] }),
258
+ /* @__PURE__ */ o(we, { textAnchor: "middle", verticalAnchor: "end", angle: -90, fontSize: 15, y: c / 2, x: 0, dx: -50, children: Le }),
259
+ /* @__PURE__ */ o(we, { textAnchor: "middle", verticalAnchor: "start", fontSize: 15, y: c, x: l / 2, dy: 50, children: Me })
260
+ ] }),
261
+ /* @__PURE__ */ o(rt, { pointData: p, xScaleTransformed: u, yScaleTransformed: v, boundedWidth: l, boundedHeight: c, margin: s }),
262
+ L?.legend && /* @__PURE__ */ o(nt, { backgroundGradient: L, boundedHeight: c, barLeft: s.left + l + 25, marginTop: s.top })
263
+ ] })
264
+ ] }) }) });
265
+ };
5
266
  export {
6
- n as motion
267
+ jt as default
7
268
  };
8
269
  //# sourceMappingURL=visualization.es45.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es45.js","sources":["../../../node_modules/.pnpm/framer-motion@12.38.0_@emotion+is-prop-valid@1.4.0_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs"],"sourcesContent":["import { createDomVisualElement } from '../../dom/create-visual-element.mjs';\nimport { createMotionProxy } from '../create-proxy.mjs';\nimport { featureBundle } from './feature-bundle.mjs';\n\nconst motion = /*@__PURE__*/ createMotionProxy(featureBundle, createDomVisualElement);\n\nexport { motion };\n//# sourceMappingURL=proxy.mjs.map\n"],"names":["motion","createMotionProxy","featureBundle","createDomVisualElement"],"mappings":";;;AAIK,MAACA,IAAuB,gBAAAC,EAAkBC,GAAeC,CAAsB;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es45.js","sources":["../src/components/ScatterPlot/ScatterPlotViewport.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport CircularProgress from \"@mui/material/CircularProgress\";\nimport { Box, Stack } from \"@mui/material\";\nimport { Group } from \"@visx/group\";\nimport { AxisBottom, AxisLeft, AxisRight, AxisTop } from \"@visx/axis\";\nimport { LinePath } from \"@visx/shape\";\nimport { Text } from \"@visx/text\";\nimport { curveBasis } from \"@visx/curve\";\nimport { localPoint } from \"@visx/event\";\nimport { ScaleLinear } from \"@visx/vendor/d3-scale\";\nimport { BackgroundGradient, ChartProps, CrosshairPosition, Point, SelectionMode, ZoomType } from \"./types\";\nimport { drawCanvasPoint, getTicks, isPointVisible, partitionPointsByHover, prepareCanvas, rescaleX, rescaleY } from \"./helpers\";\nimport { useStableCallback } from \"../../hooks\";\nimport AnimatedPoints from \"./AnimatedPoints\";\nimport PointLabels from \"./PointLabels\";\nimport GradientLegend from \"./GradientLegend\";\nimport Crosshair from \"./Crosshair\";\nimport { useDragSelection } from \"./hooks/useDragSelection\";\n\ntype ScatterPlotViewportProps<T extends object> = {\n width: number;\n height: number;\n margin: { top: number; left: number };\n boundedWidth: number;\n boundedHeight: number;\n loading: boolean;\n pointData: Point<T>[];\n animation?: ChartProps<T, boolean | undefined, boolean | undefined>[\"animation\"];\n animationGroupSize?: number;\n animationBuffer?: number;\n xScale: ScaleLinear<number, number, never>;\n yScale: ScaleLinear<number, number, never>;\n zoom: ZoomType;\n selectMode: SelectionMode;\n selectable: boolean;\n disableZoom?: boolean;\n groupPointsAnchor?: keyof Point<T> | keyof T;\n hoveredPoint: Point<T> | null;\n hoveredPoints?: Point<T>[];\n handleMouseMove: (event: React.MouseEvent<SVGElement>, zoom: ZoomType) => void;\n handleMouseLeave: () => void;\n onDisplayedPointsChange?: (points: Point<T>[]) => void;\n onSelectionChange?: (selectedPoints: Point<T>[]) => void;\n onPointClicked?: (point: Point<T>) => void;\n leftAxisLabel?: string;\n bottomAxisLabel?: string;\n border: boolean;\n originLine?: boolean;\n backgroundGradient?: BackgroundGradient;\n /** Crosshair position in data coordinates, or null for no crosshair. */\n crosshair?: CrosshairPosition | null;\n divRef: React.RefObject<HTMLDivElement | null>;\n};\n\n/**\n * Hover growth eases in over this long, and is dropped instantly on the way out.\n * Easing the exit too would drag a tail of still-shrinking points behind the cursor\n * whenever it sweeps across a dense plot.\n */\nconst HOVER_GROW_MS = 120;\n\nconst easeOutCubic = (t: number) => 1 - Math.pow(1 - t, 3);\n\nconst ScatterPlotViewport = <T extends object>({\n width,\n height,\n margin,\n boundedWidth,\n boundedHeight,\n loading,\n pointData,\n animation,\n animationGroupSize,\n animationBuffer,\n xScale,\n yScale,\n zoom,\n selectMode,\n selectable,\n disableZoom,\n groupPointsAnchor,\n hoveredPoint,\n hoveredPoints,\n handleMouseMove,\n handleMouseLeave,\n onDisplayedPointsChange,\n onSelectionChange,\n onPointClicked,\n leftAxisLabel,\n bottomAxisLabel,\n border,\n originLine,\n backgroundGradient,\n crosshair,\n divRef,\n}: ScatterPlotViewportProps<T>) => {\n const graphRef = useRef<SVGRectElement | null>(null);\n const canvasRef = useRef<HTMLCanvasElement | null>(null);\n // Hover growth is driven straight onto the canvas through a ref. A redraw is ~0.3ms at\n // 3.4k points so the drawing is cheap, but a re-render per frame would not be.\n const hoverAmountRef = useRef(0);\n const animatedKeysRef = useRef<Set<string> | null>(null);\n\n // Animation state — viewport owns what it renders\n const [showPointAnimation, setShowPointAnimation] = useState(Boolean(animation));\n\n useEffect(() => {\n if (!animation) return;\n if (pointData.length > 2500) {\n setShowPointAnimation(false);\n return;\n }\n const duration = 450;\n const buffer = (animationBuffer ?? 0.03) * 1000;\n const groups = Math.ceil(pointData.length / (animationGroupSize ?? 1));\n const total = duration + groups * buffer;\n\n const t = window.setTimeout(() => setShowPointAnimation(false), total);\n return () => window.clearTimeout(t);\n }, [animation, animationBuffer, animationGroupSize, pointData.length]);\n\n const { lines, isDragging, x, y, dx, dy, dragStart, dragMove, dragEnd, completeSelection } =\n useDragSelection({ pointData, margin, xScale, yScale, onSelectionChange });\n\n // Passive event listeners to prevent default scroll/touch behavior on the chart surface\n useEffect(() => {\n const graphElement = graphRef.current;\n\n const handleWheel = (event: WheelEvent) => { event.preventDefault(); };\n const handleTouchMove = (event: TouchEvent) => { event.preventDefault(); };\n const handleTouchStart = (event: TouchEvent) => { event.preventDefault(); };\n\n if (graphElement) {\n graphElement.addEventListener('wheel', handleWheel, { passive: false });\n graphElement.addEventListener('touchstart', handleTouchStart, { passive: false });\n graphElement.addEventListener('touchmove', handleTouchMove, { passive: false });\n }\n\n return () => {\n if (graphElement) {\n graphElement.removeEventListener('wheel', handleWheel);\n graphElement.removeEventListener('touchstart', handleTouchStart);\n graphElement.removeEventListener('touchmove', handleTouchMove);\n }\n };\n }, []);\n\n const xScaleTransformed = useMemo(\n () => rescaleX(xScale, zoom.transformMatrix.translateX, zoom.transformMatrix.scaleX),\n [xScale, zoom.transformMatrix]\n );\n const yScaleTransformed = useMemo(\n () => rescaleY(yScale, zoom.transformMatrix.translateY, zoom.transformMatrix.scaleY),\n [yScale, zoom.transformMatrix]\n );\n\n // What is hovered: the point under the cursor if there is one, otherwise whatever the\n // consumer has asked to highlight. The cursor takes precedence so the plot's own hover is\n // never overridden mid-gesture.\n const highlightSeeds: Point<T>[] = useMemo(\n () => (hoveredPoint ? [hoveredPoint] : hoveredPoints ?? []),\n [hoveredPoint, hoveredPoints]\n );\n\n const groupedPoints: Point<T>[] = useMemo(() => {\n const anchor = groupPointsAnchor;\n if (!anchor) return highlightSeeds;\n\n const anchorValue = (point: Point<T>): unknown =>\n anchor in point\n ? point[anchor as keyof Point<T>]\n : point.metaData?.[anchor as keyof T];\n\n // Collect the seeds' anchor values first, so this stays O(points + seeds). Matching each\n // point against each seed would be 2.5m comparisons when a whole 750-point group is\n // handed in against 3.4k points.\n const seedValues = new Set(\n highlightSeeds.map(anchorValue).filter((value) => value !== undefined)\n );\n if (seedValues.size === 0) return [];\n\n return pointData.filter((point) => {\n const value = anchorValue(point);\n return value !== undefined && seedValues.has(value);\n });\n }, [highlightSeeds, groupPointsAnchor, pointData]);\n\n const previousHoveredKeysRef = useRef<Set<string>>(new Set());\n\n const hoveredPointKeys = useMemo(() => {\n const next = new Set(groupedPoints.map((point) => `${point.x},${point.y}`));\n const previous = previousHoveredKeysRef.current;\n\n // Moving between points inside one anchored group rebuilds this set, but its contents\n // are unchanged - the hovered group is the same group. Handing back the previous Set\n // keeps its identity stable, so the redraw effect and the hover growth it drives both\n // sit still instead of restarting on every point the cursor crosses. Purely a\n // memoisation hint: the contents are correct either way.\n if (next.size === previous.size && [...next].every((key) => previous.has(key))) {\n return previous;\n }\n\n previousHoveredKeysRef.current = next;\n return next;\n }, [groupedPoints]);\n\n const currentDisplayedPoints = useMemo(\n () => pointData.filter((point) => {\n const tx = xScaleTransformed(point.x);\n const ty = yScaleTransformed(point.y);\n return tx >= 0 && tx <= boundedWidth && ty >= 0 && ty <= boundedHeight;\n }),\n [pointData, xScaleTransformed, yScaleTransformed, boundedWidth, boundedHeight]\n );\n\n const drawPoints = useCallback((\n xST: ScaleLinear<number, number, never>,\n yST: ScaleLinear<number, number, never>,\n canvas: HTMLCanvasElement\n ) => {\n const context = canvas.getContext('2d');\n if (!context) return;\n\n prepareCanvas(context, boundedWidth, boundedHeight);\n\n if (backgroundGradient) {\n const [colorLow, colorMid, colorHigh] = backgroundGradient.colorScale ?? [\"red\", \"white\", \"blue\"];\n const W = boundedWidth;\n const H = boundedHeight;\n const x0 = xST(0);\n const y0 = yST(0);\n const fraction = Math.max(0.001, Math.min(0.999, (x0 * W - y0 * H + H * H) / (W * W + H * H)));\n const gradient = context.createLinearGradient(0, H, W, 0);\n gradient.addColorStop(0, colorLow);\n gradient.addColorStop(fraction, colorMid);\n gradient.addColorStop(1, colorHigh);\n context.globalAlpha = backgroundGradient.opacity ?? 1;\n context.fillStyle = gradient;\n context.fillRect(0, 0, W, H);\n context.globalAlpha = 1;\n }\n\n const { nonHovered, hovered } = partitionPointsByHover(pointData, hoveredPointKeys);\n\n const drawRenderedPoint = (point: Point<T>, isHovered: boolean) => {\n const transformedX = xST(point.x);\n const transformedY = yST(point.y);\n if (!isPointVisible(transformedX, transformedY, boundedWidth, boundedHeight)) return;\n drawCanvasPoint(context, point, transformedX, transformedY, isHovered ? hoverAmountRef.current : 0);\n };\n\n nonHovered.forEach((point) => drawRenderedPoint(point, false));\n hovered.forEach((point) => drawRenderedPoint(point, true));\n }, [boundedHeight, boundedWidth, hoveredPointKeys, pointData, backgroundGradient]);\n\n useEffect(() => {\n const canvas = canvasRef.current;\n if (!canvas || showPointAnimation) return;\n\n // Leaving is instant: drop the growth and repaint once.\n if (hoveredPointKeys.size === 0) {\n animatedKeysRef.current = null;\n hoverAmountRef.current = 0;\n drawPoints(xScaleTransformed, yScaleTransformed, canvas);\n return;\n }\n\n // Only a change of hovered set starts the growth. This effect also runs on pan, zoom\n // and data changes, which should repaint at the size the points have already reached\n // rather than snapping them back to zero.\n if (animatedKeysRef.current === hoveredPointKeys) {\n drawPoints(xScaleTransformed, yScaleTransformed, canvas);\n return;\n }\n animatedKeysRef.current = hoveredPointKeys;\n\n const startedAt = performance.now();\n hoverAmountRef.current = 0;\n let frame = requestAnimationFrame(function step() {\n const t = Math.min(1, (performance.now() - startedAt) / HOVER_GROW_MS);\n hoverAmountRef.current = easeOutCubic(t);\n drawPoints(xScaleTransformed, yScaleTransformed, canvas);\n if (t < 1) frame = requestAnimationFrame(step);\n });\n\n return () => cancelAnimationFrame(frame);\n }, [drawPoints, xScaleTransformed, yScaleTransformed, showPointAnimation, hoveredPointKeys]);\n\n const handlePointClick = useCallback(() => {\n if (hoveredPoint) onPointClicked?.(hoveredPoint);\n }, [hoveredPoint, onPointClicked]);\n\n const surfaceCursor = disableZoom\n ? selectable\n ? isDragging ? 'none' : 'crosshair'\n : isDragging ? 'none' : 'default'\n : hoveredPoint\n ? 'default'\n : selectMode === 'select'\n ? isDragging ? 'none' : 'crosshair'\n : zoom.isDragging\n ? 'grabbing'\n : 'grab';\n\n const handleSelectionEnd = (event: React.MouseEvent<SVGRectElement> | React.TouchEvent<SVGRectElement>) => {\n dragEnd(event);\n completeSelection(zoom);\n };\n\n /**\n * Panning is coalesced to one zoom update per animation frame.\n *\n * zoom.dragMove sets the transform matrix on every move it is handed, and a mouse reports\n * positions faster than the browser paints. Because mousemove is a continuous event that\n * React flushes synchronously - and because a shared zoom sits above every synced plot, so\n * one update re-renders all of them - handling each move outright never lets the browser\n * paint, and React eventually warns that the update depth was exceeded.\n *\n * The buffer holds nativeEvent rather than the synthetic event: React clears currentTarget\n * once dispatch returns, and this runs a frame later. Routing through useStableCallback\n * keeps the frame calling the current zoom rather than the one captured when it was queued.\n */\n const dragFrameRef = useRef<number | null>(null);\n const pendingDragRef = useRef<MouseEvent | TouchEvent | null>(null);\n const dragMoveLatest = useStableCallback((event: MouseEvent | TouchEvent) => {\n zoom.dragMove(event as unknown as React.MouseEvent | React.TouchEvent);\n });\n\n const flushPendingDrag = useCallback(() => {\n if (dragFrameRef.current !== null) {\n cancelAnimationFrame(dragFrameRef.current);\n dragFrameRef.current = null;\n }\n const pending = pendingDragRef.current;\n pendingDragRef.current = null;\n if (pending) dragMoveLatest(pending);\n }, [dragMoveLatest]);\n\n useEffect(() => () => {\n if (dragFrameRef.current !== null) cancelAnimationFrame(dragFrameRef.current);\n }, []);\n\n const onZoomDragMove = (event: React.MouseEvent<SVGRectElement> | React.TouchEvent<SVGRectElement>) => {\n pendingDragRef.current = event.nativeEvent;\n if (dragFrameRef.current !== null) return;\n dragFrameRef.current = requestAnimationFrame(() => {\n dragFrameRef.current = null;\n const pending = pendingDragRef.current;\n pendingDragRef.current = null;\n if (pending) dragMoveLatest(pending);\n });\n };\n\n // The queued frame is applied before the gesture closes, so the plot lands on the position\n // the pointer was actually released at rather than a frame behind it.\n const onZoomDragEnd = () => {\n flushPendingDrag();\n zoom.dragEnd();\n };\n\n const onSurfaceMouseDown = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? dragStart\n : disableZoom ? undefined : zoom.dragStart;\n const onSurfaceMouseUp = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : onZoomDragEnd;\n const onSurfaceMouseMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : onZoomDragMove;\n const onSurfaceMouseLeave = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : onZoomDragEnd;\n const onSurfaceTouchStart = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? dragStart\n : disableZoom ? undefined : zoom.dragStart;\n const onSurfaceTouchEnd = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? handleSelectionEnd\n : disableZoom ? undefined : onZoomDragEnd;\n const onSurfaceTouchMove = selectMode === \"none\"\n ? undefined\n : selectMode === \"select\"\n ? (isDragging ? dragMove : undefined)\n : disableZoom ? undefined : onZoomDragMove;\n const onSurfaceWheel: React.WheelEventHandler<SVGRectElement> = (event) => {\n setShowPointAnimation(false);\n if (!disableZoom) {\n const point = localPoint(event) || { x: 0, y: 0 };\n const zoomDirection = event.deltaY < 0 ? 1.1 : 0.9;\n zoom.scale({ scaleX: zoomDirection, scaleY: zoomDirection, point });\n }\n };\n\n const previousDisplayedPoints = useRef<Point<T>[]>([]);\n\n useEffect(() => {\n const haveDisplayedPointsChanged = (prevPoints: Point<T>[], nextPoints: Point<T>[]) => {\n if (prevPoints.length !== nextPoints.length) return true;\n return !prevPoints.every((point, index) => {\n const nextPoint = nextPoints[index];\n return (\n point.x === nextPoint.x &&\n point.y === nextPoint.y &&\n point.r === nextPoint.r &&\n point.shape === nextPoint.shape &&\n point.color === nextPoint.color &&\n point.opacity === nextPoint.opacity\n );\n });\n };\n\n if (haveDisplayedPointsChanged(previousDisplayedPoints.current, currentDisplayedPoints)) {\n onDisplayedPointsChange?.(currentDisplayedPoints);\n previousDisplayedPoints.current = currentDisplayedPoints;\n }\n }, [currentDisplayedPoints, onDisplayedPointsChange]);\n\n return (\n <Stack justifyContent=\"center\" alignItems=\"center\" direction=\"row\" sx={{ position: \"relative\" }}>\n <Box sx={{ width, height }}>\n {loading ? (\n <Box display=\"flex\" width=\"100%\" height=\"100%\" sx={{ justifyContent: \"center\", alignItems: \"center\" }}>\n <CircularProgress />\n </Box>\n ) : (\n <div style={{ position: \"relative\" }} ref={divRef}>\n <canvas\n ref={canvasRef}\n width={boundedWidth * 2}\n height={boundedHeight * 2}\n style={{\n userSelect: \"none\",\n position: \"absolute\",\n top: margin.top,\n left: margin.left,\n width: boundedWidth,\n height: boundedHeight,\n backgroundColor: \"transparent\",\n }}\n />\n <svg\n width={width}\n height={height}\n overflow=\"visible\"\n style={{ position: \"absolute\", userSelect: \"none\" }}\n onMouseMove={(event) => {\n if (isDragging) handleMouseLeave();\n else handleMouseMove(event, zoom);\n }}\n onMouseLeave={handleMouseLeave}\n >\n <Group top={margin.top} left={margin.left}>\n {showPointAnimation && animation && (\n <AnimatedPoints\n pointData={pointData}\n animation={animation}\n animationGroupSize={animationGroupSize}\n animationBuffer={animationBuffer}\n xScaleTransformed={xScaleTransformed}\n yScaleTransformed={yScaleTransformed}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n />\n )}\n {selectMode === \"select\" && (\n <>\n {lines.map((line, index) => (\n <LinePath\n key={`line-${index}`}\n fill=\"transparent\"\n stroke=\"black\"\n strokeWidth={3}\n data={line}\n curve={curveBasis}\n x={(datum) => datum.x}\n y={(datum) => datum.y}\n />\n ))}\n {isDragging && (\n <g>\n <line x1={x - margin.left + dx - 6} y1={y - margin.top + dy} x2={x - margin.left + dx + 6} y2={y - margin.top + dy} stroke=\"black\" strokeWidth={1} />\n <line x1={x - margin.left + dx} y1={y - margin.top + dy - 6} x2={x - margin.left + dx} y2={y - margin.top + dy + 6} stroke=\"black\" strokeWidth={1} />\n <circle cx={x - margin.left} cy={y - margin.top} r={4} fill=\"transparent\" stroke=\"black\" pointerEvents=\"none\" />\n </g>\n )}\n </>\n )}\n {originLine && (() => {\n const x0 = xScaleTransformed(0);\n const y0 = yScaleTransformed(0);\n return (\n <>\n {y0 >= 0 && y0 <= boundedHeight && (\n <line x1={0} x2={boundedWidth} y1={y0} y2={y0} stroke=\"#000\" strokeWidth={1} strokeDasharray=\"4,4\" pointerEvents=\"none\" />\n )}\n {x0 >= 0 && x0 <= boundedWidth && (\n <line x1={x0} x2={x0} y1={0} y2={boundedHeight} stroke=\"#000\" strokeWidth={1} strokeDasharray=\"4,4\" pointerEvents=\"none\" />\n )}\n </>\n );\n })()}\n <rect\n ref={graphRef}\n fill=\"transparent\"\n width={boundedWidth}\n height={boundedHeight}\n style={{ cursor: surfaceCursor }}\n onMouseDown={onSurfaceMouseDown}\n onMouseUp={onSurfaceMouseUp}\n onMouseMove={onSurfaceMouseMove}\n onMouseLeave={onSurfaceMouseLeave}\n onTouchStart={onSurfaceTouchStart}\n onTouchEnd={onSurfaceTouchEnd}\n onTouchMove={onSurfaceTouchMove}\n onWheel={onSurfaceWheel}\n onClick={handlePointClick}\n />\n {crosshair && !isDragging && (\n <Crosshair\n position={{\n x: xScaleTransformed(crosshair.x),\n y: yScaleTransformed(crosshair.y),\n }}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n />\n )}\n </Group>\n <Group top={margin.top} left={margin.left}>\n <AxisLeft\n scale={yScaleTransformed}\n tickLabelProps={() => ({\n fill: \"#1c1917\",\n fontSize: 10,\n textAnchor: \"end\",\n verticalAnchor: \"middle\",\n x: -10,\n })}\n tickValues={getTicks(yScaleTransformed, 5)}\n />\n <AxisBottom\n top={boundedHeight}\n scale={xScaleTransformed}\n tickLabelProps={() => ({\n fill: \"#1c1917\",\n fontSize: 11,\n textAnchor: \"middle\",\n })}\n tickValues={getTicks(xScaleTransformed, 5)}\n />\n {border && (\n <>\n <AxisTop top={0} scale={xScaleTransformed} tickValues={[]} />\n <AxisRight scale={yScaleTransformed} tickValues={[]} left={boundedWidth} />\n </>\n )}\n <Text textAnchor=\"middle\" verticalAnchor=\"end\" angle={-90} fontSize={15} y={boundedHeight / 2} x={0} dx={-50}>\n {leftAxisLabel}\n </Text>\n <Text textAnchor=\"middle\" verticalAnchor=\"start\" fontSize={15} y={boundedHeight} x={boundedWidth / 2} dy={50}>\n {bottomAxisLabel}\n </Text>\n </Group>\n <PointLabels\n pointData={pointData}\n xScaleTransformed={xScaleTransformed}\n yScaleTransformed={yScaleTransformed}\n boundedWidth={boundedWidth}\n boundedHeight={boundedHeight}\n margin={margin}\n />\n {backgroundGradient?.legend && (\n <GradientLegend\n backgroundGradient={backgroundGradient}\n boundedHeight={boundedHeight}\n barLeft={margin.left + boundedWidth + 25}\n marginTop={margin.top}\n />\n )}\n </svg>\n </div>\n )}\n </Box>\n </Stack>\n );\n};\n\nexport default ScatterPlotViewport;\n"],"names":["HOVER_GROW_MS","easeOutCubic","t","Math","pow","ScatterPlotViewport","width","height","margin","boundedWidth","boundedHeight","loading","pointData","animation","animationGroupSize","animationBuffer","xScale","yScale","zoom","selectMode","selectable","disableZoom","groupPointsAnchor","hoveredPoint","hoveredPoints","handleMouseMove","handleMouseLeave","onDisplayedPointsChange","onSelectionChange","onPointClicked","leftAxisLabel","bottomAxisLabel","border","originLine","backgroundGradient","crosshair","divRef","graphRef","useRef","canvasRef","hoverAmountRef","animatedKeysRef","showPointAnimation","setShowPointAnimation","useState","Boolean","useEffect","length","duration","buffer","groups","ceil","total","window","setTimeout","clearTimeout","lines","isDragging","x","y","dx","dy","dragStart","dragMove","dragEnd","completeSelection","useDragSelection","graphElement","current","handleWheel","event","preventDefault","handleTouchMove","handleTouchStart","addEventListener","passive","removeEventListener","xScaleTransformed","useMemo","rescaleX","transformMatrix","translateX","scaleX","yScaleTransformed","rescaleY","translateY","scaleY","highlightSeeds","groupedPoints","anchor","anchorValue","point","metaData","seedValues","Set","map","filter","value","undefined","size","has","previousHoveredKeysRef","hoveredPointKeys","next","previous","every","key","currentDisplayedPoints","tx","ty","drawPoints","useCallback","xST","yST","canvas","context","getContext","prepareCanvas","colorLow","colorMid","colorHigh","colorScale","W","H","x0","y0","fraction","max","min","gradient","createLinearGradient","addColorStop","globalAlpha","opacity","fillStyle","fillRect","nonHovered","hovered","partitionPointsByHover","drawRenderedPoint","isHovered","transformedX","transformedY","isPointVisible","drawCanvasPoint","forEach","startedAt","performance","now","frame","requestAnimationFrame","step","cancelAnimationFrame","handlePointClick","surfaceCursor","handleSelectionEnd","dragFrameRef","pendingDragRef","dragMoveLatest","useStableCallback","flushPendingDrag","pending","onZoomDragMove","nativeEvent","onZoomDragEnd","onSurfaceMouseDown","onSurfaceMouseUp","onSurfaceMouseMove","onSurfaceMouseLeave","onSurfaceTouchStart","onSurfaceTouchEnd","onSurfaceTouchMove","onSurfaceWheel","localPoint","zoomDirection","deltaY","scale","previousDisplayedPoints","haveDisplayedPointsChanged","prevPoints","nextPoints","index","nextPoint","r","shape","color","jsx","Stack","position","Box","justifyContent","alignItems","CircularProgress","jsxs","userSelect","top","left","backgroundColor","Group","AnimatedPoints","Fragment","line","LinePath","curveBasis","datum","cursor","Crosshair","AxisLeft","fill","fontSize","textAnchor","verticalAnchor","getTicks","AxisBottom","AxisTop","AxisRight","Text","PointLabels","legend","GradientLegend"],"mappings":"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"}
@@ -1,10 +1,17 @@
1
- import { transformProps as i } from "./visualization.es332.js";
2
- import { scaleCorrectors as n } from "./visualization.es451.js";
3
- function c(r, { layout: o, layoutId: t }) {
4
- return i.has(r) || r.startsWith("origin") || (o || t !== void 0) && (!!n[r] || r === "opacity");
5
- }
1
+ import { complex as f } from "./visualization.es393.js";
2
+ import { mixNumber as i } from "./visualization.es352.js";
3
+ const y = {
4
+ correct: (e, { treeScale: c, projectionDelta: t }) => {
5
+ const a = e, o = f.parse(e);
6
+ if (o.length > 5)
7
+ return a;
8
+ const p = f.createTransformer(e), r = typeof o[0] != "number" ? 1 : 0, n = t.x.scale * c.x, m = t.y.scale * c.y;
9
+ o[0 + r] /= n, o[1 + r] /= m;
10
+ const s = i(n, m, 0.5);
11
+ return typeof o[2 + r] == "number" && (o[2 + r] /= s), typeof o[3 + r] == "number" && (o[3 + r] /= s), p(o);
12
+ }
13
+ };
6
14
  export {
7
- c as isForcedMotionValue,
8
- n as scaleCorrectors
15
+ y as correctBoxShadow
9
16
  };
10
17
  //# sourceMappingURL=visualization.es450.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es450.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/render/utils/is-forced-motion-value.mjs"],"sourcesContent":["import { transformProps } from './keys-transform.mjs';\nimport { scaleCorrectors } from '../../projection/styles/scale-correction.mjs';\nexport { addScaleCorrector } from '../../projection/styles/scale-correction.mjs';\n\nfunction isForcedMotionValue(key, { layout, layoutId }) {\n return (transformProps.has(key) ||\n key.startsWith(\"origin\") ||\n ((layout || layoutId !== undefined) &&\n (!!scaleCorrectors[key] || key === \"opacity\")));\n}\n\nexport { isForcedMotionValue, scaleCorrectors };\n//# sourceMappingURL=is-forced-motion-value.mjs.map\n"],"names":["isForcedMotionValue","key","layout","layoutId","transformProps","scaleCorrectors"],"mappings":";;AAIA,SAASA,EAAoBC,GAAK,EAAE,QAAAC,GAAQ,UAAAC,EAAQ,GAAI;AACpD,SAAQC,EAAe,IAAIH,CAAG,KAC1BA,EAAI,WAAW,QAAQ,MACrBC,KAAUC,MAAa,YACpB,CAAC,CAACE,EAAgBJ,CAAG,KAAKA,MAAQ;AAC/C;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es450.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/projection/styles/scale-box-shadow.mjs"],"sourcesContent":["import { complex } from '../../value/types/complex/index.mjs';\nimport { mixNumber } from '../../utils/mix/number.mjs';\n\nconst correctBoxShadow = {\n correct: (latest, { treeScale, projectionDelta }) => {\n const original = latest;\n const shadow = complex.parse(latest);\n // TODO: Doesn't support multiple shadows\n if (shadow.length > 5)\n return original;\n const template = complex.createTransformer(latest);\n const offset = typeof shadow[0] !== \"number\" ? 1 : 0;\n // Calculate the overall context scale\n const xScale = projectionDelta.x.scale * treeScale.x;\n const yScale = projectionDelta.y.scale * treeScale.y;\n shadow[0 + offset] /= xScale;\n shadow[1 + offset] /= yScale;\n /**\n * Ideally we'd correct x and y scales individually, but because blur and\n * spread apply to both we have to take a scale average and apply that instead.\n * We could potentially improve the outcome of this by incorporating the ratio between\n * the two scales.\n */\n const averageScale = mixNumber(xScale, yScale, 0.5);\n // Blur\n if (typeof shadow[2 + offset] === \"number\")\n shadow[2 + offset] /= averageScale;\n // Spread\n if (typeof shadow[3 + offset] === \"number\")\n shadow[3 + offset] /= averageScale;\n return template(shadow);\n },\n};\n\nexport { correctBoxShadow };\n//# sourceMappingURL=scale-box-shadow.mjs.map\n"],"names":["correctBoxShadow","latest","treeScale","projectionDelta","original","shadow","complex","template","offset","xScale","yScale","averageScale","mixNumber"],"mappings":";;AAGK,MAACA,IAAmB;AAAA,EACrB,SAAS,CAACC,GAAQ,EAAE,WAAAC,GAAW,iBAAAC,EAAe,MAAO;AACjD,UAAMC,IAAWH,GACXI,IAASC,EAAQ,MAAML,CAAM;AAEnC,QAAII,EAAO,SAAS;AAChB,aAAOD;AACX,UAAMG,IAAWD,EAAQ,kBAAkBL,CAAM,GAC3CO,IAAS,OAAOH,EAAO,CAAC,KAAM,WAAW,IAAI,GAE7CI,IAASN,EAAgB,EAAE,QAAQD,EAAU,GAC7CQ,IAASP,EAAgB,EAAE,QAAQD,EAAU;AACnD,IAAAG,EAAO,IAAIG,CAAM,KAAKC,GACtBJ,EAAO,IAAIG,CAAM,KAAKE;AAOtB,UAAMC,IAAeC,EAAUH,GAAQC,GAAQ,GAAG;AAElD,WAAI,OAAOL,EAAO,IAAIG,CAAM,KAAM,aAC9BH,EAAO,IAAIG,CAAM,KAAKG,IAEtB,OAAON,EAAO,IAAIG,CAAM,KAAM,aAC9BH,EAAO,IAAIG,CAAM,KAAKG,IACnBJ,EAASF,CAAM;AAAA,EAC1B;AACJ;","x_google_ignoreList":[0]}
@@ -1,22 +1,14 @@
1
- import { correctBorderRadius as o } from "./visualization.es460.js";
2
- import { correctBoxShadow as r } from "./visualization.es461.js";
3
- const e = {
4
- borderRadius: {
5
- ...o,
6
- applyTo: [
7
- "borderTopLeftRadius",
8
- "borderTopRightRadius",
9
- "borderBottomLeftRadius",
10
- "borderBottomRightRadius"
11
- ]
12
- },
13
- borderTopLeftRadius: o,
14
- borderTopRightRadius: o,
15
- borderBottomLeftRadius: o,
16
- borderBottomRightRadius: o,
17
- boxShadow: r
18
- };
1
+ function X(s, n, e) {
2
+ let t = "";
3
+ const o = s.x.translate / n.x, i = s.y.translate / n.y, $ = e?.z || 0;
4
+ if ((o || i || $) && (t = `translate3d(${o}px, ${i}px, ${$}px) `), (n.x !== 1 || n.y !== 1) && (t += `scale(${1 / n.x}, ${1 / n.y}) `), e) {
5
+ const { transformPerspective: f, rotate: x, rotateX: c, rotateY: p, skewX: y, skewY: g } = e;
6
+ f && (t = `perspective(${f}px) ${t}`), x && (t += `rotate(${x}deg) `), c && (t += `rotateX(${c}deg) `), p && (t += `rotateY(${p}deg) `), y && (t += `skewX(${y}deg) `), g && (t += `skewY(${g}deg) `);
7
+ }
8
+ const a = s.x.scale * n.x, r = s.y.scale * n.y;
9
+ return (a !== 1 || r !== 1) && (t += `scale(${a}, ${r})`), t || "none";
10
+ }
19
11
  export {
20
- e as scaleCorrectors
12
+ X as buildProjectionTransform
21
13
  };
22
14
  //# sourceMappingURL=visualization.es451.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es451.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/projection/styles/scale-correction.mjs"],"sourcesContent":["import { isCSSVariableName } from '../../animation/utils/is-css-variable.mjs';\nimport { correctBorderRadius } from './scale-border-radius.mjs';\nimport { correctBoxShadow } from './scale-box-shadow.mjs';\n\nconst scaleCorrectors = {\n borderRadius: {\n ...correctBorderRadius,\n applyTo: [\n \"borderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"borderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n ],\n },\n borderTopLeftRadius: correctBorderRadius,\n borderTopRightRadius: correctBorderRadius,\n borderBottomLeftRadius: correctBorderRadius,\n borderBottomRightRadius: correctBorderRadius,\n boxShadow: correctBoxShadow,\n};\nfunction addScaleCorrector(correctors) {\n for (const key in correctors) {\n scaleCorrectors[key] = correctors[key];\n if (isCSSVariableName(key)) {\n scaleCorrectors[key].isCSSVariable = true;\n }\n }\n}\n\nexport { addScaleCorrector, scaleCorrectors };\n//# sourceMappingURL=scale-correction.mjs.map\n"],"names":["scaleCorrectors","correctBorderRadius","correctBoxShadow"],"mappings":";;AAIK,MAACA,IAAkB;AAAA,EACpB,cAAc;AAAA,IACV,GAAGC;AAAA,IACH,SAAS;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACZ;AAAA,EACA;AAAA,EACI,qBAAqBA;AAAA,EACrB,sBAAsBA;AAAA,EACtB,wBAAwBA;AAAA,EACxB,yBAAyBA;AAAA,EACzB,WAAWC;AACf;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es451.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/projection/styles/transform.mjs"],"sourcesContent":["function buildProjectionTransform(delta, treeScale, latestTransform) {\n let transform = \"\";\n /**\n * The translations we use to calculate are always relative to the viewport coordinate space.\n * But when we apply scales, we also scale the coordinate space of an element and its children.\n * For instance if we have a treeScale (the culmination of all parent scales) of 0.5 and we need\n * to move an element 100 pixels, we actually need to move it 200 in within that scaled space.\n */\n const xTranslate = delta.x.translate / treeScale.x;\n const yTranslate = delta.y.translate / treeScale.y;\n const zTranslate = latestTransform?.z || 0;\n if (xTranslate || yTranslate || zTranslate) {\n transform = `translate3d(${xTranslate}px, ${yTranslate}px, ${zTranslate}px) `;\n }\n /**\n * Apply scale correction for the tree transform.\n * This will apply scale to the screen-orientated axes.\n */\n if (treeScale.x !== 1 || treeScale.y !== 1) {\n transform += `scale(${1 / treeScale.x}, ${1 / treeScale.y}) `;\n }\n if (latestTransform) {\n const { transformPerspective, rotate, rotateX, rotateY, skewX, skewY } = latestTransform;\n if (transformPerspective)\n transform = `perspective(${transformPerspective}px) ${transform}`;\n if (rotate)\n transform += `rotate(${rotate}deg) `;\n if (rotateX)\n transform += `rotateX(${rotateX}deg) `;\n if (rotateY)\n transform += `rotateY(${rotateY}deg) `;\n if (skewX)\n transform += `skewX(${skewX}deg) `;\n if (skewY)\n transform += `skewY(${skewY}deg) `;\n }\n /**\n * Apply scale to match the size of the element to the size we want it.\n * This will apply scale to the element-orientated axes.\n */\n const elementScaleX = delta.x.scale * treeScale.x;\n const elementScaleY = delta.y.scale * treeScale.y;\n if (elementScaleX !== 1 || elementScaleY !== 1) {\n transform += `scale(${elementScaleX}, ${elementScaleY})`;\n }\n return transform || \"none\";\n}\n\nexport { buildProjectionTransform };\n//# sourceMappingURL=transform.mjs.map\n"],"names":["buildProjectionTransform","delta","treeScale","latestTransform","transform","xTranslate","yTranslate","zTranslate","transformPerspective","rotate","rotateX","rotateY","skewX","skewY","elementScaleX","elementScaleY"],"mappings":"AAAA,SAASA,EAAyBC,GAAOC,GAAWC,GAAiB;AACjE,MAAIC,IAAY;AAOhB,QAAMC,IAAaJ,EAAM,EAAE,YAAYC,EAAU,GAC3CI,IAAaL,EAAM,EAAE,YAAYC,EAAU,GAC3CK,IAAaJ,GAAiB,KAAK;AAWzC,OAVIE,KAAcC,KAAcC,OAC5BH,IAAY,eAAeC,CAAU,OAAOC,CAAU,OAAOC,CAAU,UAMvEL,EAAU,MAAM,KAAKA,EAAU,MAAM,OACrCE,KAAa,SAAS,IAAIF,EAAU,CAAC,KAAK,IAAIA,EAAU,CAAC,OAEzDC,GAAiB;AACjB,UAAM,EAAE,sBAAAK,GAAsB,QAAAC,GAAQ,SAAAC,GAAS,SAAAC,GAAS,OAAAC,GAAO,OAAAC,EAAK,IAAKV;AACzE,IAAIK,MACAJ,IAAY,eAAeI,CAAoB,OAAOJ,CAAS,KAC/DK,MACAL,KAAa,UAAUK,CAAM,UAC7BC,MACAN,KAAa,WAAWM,CAAO,UAC/BC,MACAP,KAAa,WAAWO,CAAO,UAC/BC,MACAR,KAAa,SAASQ,CAAK,UAC3BC,MACAT,KAAa,SAASS,CAAK;AAAA,EACnC;AAKA,QAAMC,IAAgBb,EAAM,EAAE,QAAQC,EAAU,GAC1Ca,IAAgBd,EAAM,EAAE,QAAQC,EAAU;AAChD,UAAIY,MAAkB,KAAKC,MAAkB,OACzCX,KAAa,SAASU,CAAa,KAAKC,CAAa,MAElDX,KAAa;AACxB;","x_google_ignoreList":[0]}
@@ -1,26 +1,33 @@
1
- function r({ top: t, left: o, right: n, bottom: x }) {
2
- return {
3
- x: { min: o, max: n },
4
- y: { min: t, max: x }
5
- };
6
- }
7
- function e({ x: t, y: o }) {
8
- return { top: o.min, right: t.max, bottom: o.max, left: t.min };
1
+ import { mixNumber as c } from "./visualization.es352.js";
2
+ import { percent as u, px as x } from "./visualization.es403.js";
3
+ import { progress as h } from "./visualization.es353.js";
4
+ import { circOut as L } from "./visualization.es453.js";
5
+ import { noop as B } from "./visualization.es298.js";
6
+ const p = [
7
+ "borderTopLeftRadius",
8
+ "borderTopRightRadius",
9
+ "borderBottomLeftRadius",
10
+ "borderBottomRightRadius"
11
+ ], M = p.length, d = (t) => typeof t == "string" ? parseFloat(t) : t, a = (t) => typeof t == "number" || x.test(t);
12
+ function V(t, o, r, i, R, y) {
13
+ R ? (t.opacity = c(0, r.opacity ?? 1, C(i)), t.opacityExit = c(o.opacity ?? 1, 0, O(i))) : y && (t.opacity = c(o.opacity ?? 1, r.opacity ?? 1, i));
14
+ for (let f = 0; f < M; f++) {
15
+ const s = p[f];
16
+ let n = m(o, s), e = m(r, s);
17
+ if (n === void 0 && e === void 0)
18
+ continue;
19
+ n || (n = 0), e || (e = 0), n === 0 || e === 0 || a(n) === a(e) ? (t[s] = Math.max(c(d(n), d(e), i), 0), (u.test(e) || u.test(n)) && (t[s] += "%")) : t[s] = e;
20
+ }
21
+ (o.rotate || r.rotate) && (t.rotate = c(o.rotate || 0, r.rotate || 0, i));
9
22
  }
10
23
  function m(t, o) {
11
- if (!o)
12
- return t;
13
- const n = o({ x: t.left, y: t.top }), x = o({ x: t.right, y: t.bottom });
14
- return {
15
- top: n.y,
16
- left: n.x,
17
- bottom: x.y,
18
- right: x.x
19
- };
24
+ return t[o] !== void 0 ? t[o] : t.borderRadius;
25
+ }
26
+ const C = /* @__PURE__ */ b(0, 0.5, L), O = /* @__PURE__ */ b(0.5, 0.95, B);
27
+ function b(t, o, r) {
28
+ return (i) => i < t ? 0 : i > o ? 1 : r(h(t, o, i));
20
29
  }
21
30
  export {
22
- r as convertBoundingBoxToBox,
23
- e as convertBoxToBoundingBox,
24
- m as transformBoxPoints
31
+ V as mixValues
25
32
  };
26
33
  //# sourceMappingURL=visualization.es452.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es452.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/projection/geometry/conversion.mjs"],"sourcesContent":["/**\n * Bounding boxes tend to be defined as top, left, right, bottom. For various operations\n * it's easier to consider each axis individually. This function returns a bounding box\n * as a map of single-axis min/max values.\n */\nfunction convertBoundingBoxToBox({ top, left, right, bottom, }) {\n return {\n x: { min: left, max: right },\n y: { min: top, max: bottom },\n };\n}\nfunction convertBoxToBoundingBox({ x, y }) {\n return { top: y.min, right: x.max, bottom: y.max, left: x.min };\n}\n/**\n * Applies a TransformPoint function to a bounding box. TransformPoint is usually a function\n * provided by Framer to allow measured points to be corrected for device scaling. This is used\n * when measuring DOM elements and DOM event points.\n */\nfunction transformBoxPoints(point, transformPoint) {\n if (!transformPoint)\n return point;\n const topLeft = transformPoint({ x: point.left, y: point.top });\n const bottomRight = transformPoint({ x: point.right, y: point.bottom });\n return {\n top: topLeft.y,\n left: topLeft.x,\n bottom: bottomRight.y,\n right: bottomRight.x,\n };\n}\n\nexport { convertBoundingBoxToBox, convertBoxToBoundingBox, transformBoxPoints };\n//# sourceMappingURL=conversion.mjs.map\n"],"names":["convertBoundingBoxToBox","top","left","right","bottom","convertBoxToBoundingBox","x","y","transformBoxPoints","point","transformPoint","topLeft","bottomRight"],"mappings":"AAKA,SAASA,EAAwB,EAAE,KAAAC,GAAK,MAAAC,GAAM,OAAAC,GAAO,QAAAC,EAAM,GAAK;AAC5D,SAAO;AAAA,IACH,GAAG,EAAE,KAAKF,GAAM,KAAKC,EAAK;AAAA,IAC1B,GAAG,EAAE,KAAKF,GAAK,KAAKG,EAAM;AAAA,EAClC;AACA;AACA,SAASC,EAAwB,EAAE,GAAAC,GAAG,GAAAC,KAAK;AACvC,SAAO,EAAE,KAAKA,EAAE,KAAK,OAAOD,EAAE,KAAK,QAAQC,EAAE,KAAK,MAAMD,EAAE,IAAG;AACjE;AAMA,SAASE,EAAmBC,GAAOC,GAAgB;AAC/C,MAAI,CAACA;AACD,WAAOD;AACX,QAAME,IAAUD,EAAe,EAAE,GAAGD,EAAM,MAAM,GAAGA,EAAM,KAAK,GACxDG,IAAcF,EAAe,EAAE,GAAGD,EAAM,OAAO,GAAGA,EAAM,QAAQ;AACtE,SAAO;AAAA,IACH,KAAKE,EAAQ;AAAA,IACb,MAAMA,EAAQ;AAAA,IACd,QAAQC,EAAY;AAAA,IACpB,OAAOA,EAAY;AAAA,EAC3B;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es452.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/projection/animation/mix-values.mjs"],"sourcesContent":["import { mixNumber } from '../../utils/mix/number.mjs';\nimport { percent, px } from '../../value/types/numbers/units.mjs';\nimport { progress, circOut, noop } from 'motion-utils';\n\nconst borderLabels = [\n \"borderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"borderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n];\nconst numBorders = borderLabels.length;\nconst asNumber = (value) => typeof value === \"string\" ? parseFloat(value) : value;\nconst isPx = (value) => typeof value === \"number\" || px.test(value);\nfunction mixValues(target, follow, lead, progress, shouldCrossfadeOpacity, isOnlyMember) {\n if (shouldCrossfadeOpacity) {\n target.opacity = mixNumber(0, lead.opacity ?? 1, easeCrossfadeIn(progress));\n target.opacityExit = mixNumber(follow.opacity ?? 1, 0, easeCrossfadeOut(progress));\n }\n else if (isOnlyMember) {\n target.opacity = mixNumber(follow.opacity ?? 1, lead.opacity ?? 1, progress);\n }\n /**\n * Mix border radius\n */\n for (let i = 0; i < numBorders; i++) {\n const borderLabel = borderLabels[i];\n let followRadius = getRadius(follow, borderLabel);\n let leadRadius = getRadius(lead, borderLabel);\n if (followRadius === undefined && leadRadius === undefined)\n continue;\n followRadius || (followRadius = 0);\n leadRadius || (leadRadius = 0);\n const canMix = followRadius === 0 ||\n leadRadius === 0 ||\n isPx(followRadius) === isPx(leadRadius);\n if (canMix) {\n target[borderLabel] = Math.max(mixNumber(asNumber(followRadius), asNumber(leadRadius), progress), 0);\n if (percent.test(leadRadius) || percent.test(followRadius)) {\n target[borderLabel] += \"%\";\n }\n }\n else {\n target[borderLabel] = leadRadius;\n }\n }\n /**\n * Mix rotation\n */\n if (follow.rotate || lead.rotate) {\n target.rotate = mixNumber(follow.rotate || 0, lead.rotate || 0, progress);\n }\n}\nfunction getRadius(values, radiusName) {\n return values[radiusName] !== undefined\n ? values[radiusName]\n : values.borderRadius;\n}\nconst easeCrossfadeIn = /*@__PURE__*/ compress(0, 0.5, circOut);\nconst easeCrossfadeOut = /*@__PURE__*/ compress(0.5, 0.95, noop);\nfunction compress(min, max, easing) {\n return (p) => {\n // Could replace ifs with clamp\n if (p < min)\n return 0;\n if (p > max)\n return 1;\n return easing(progress(min, max, p));\n };\n}\n\nexport { mixValues };\n//# sourceMappingURL=mix-values.mjs.map\n"],"names":["borderLabels","numBorders","asNumber","value","isPx","px","mixValues","target","follow","lead","progress","shouldCrossfadeOpacity","isOnlyMember","mixNumber","easeCrossfadeIn","easeCrossfadeOut","i","borderLabel","followRadius","getRadius","leadRadius","percent","values","radiusName","compress","circOut","noop","min","max","easing","p"],"mappings":";;;;;AAIA,MAAMA,IAAe;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,GACMC,IAAaD,EAAa,QAC1BE,IAAW,CAACC,MAAU,OAAOA,KAAU,WAAW,WAAWA,CAAK,IAAIA,GACtEC,IAAO,CAACD,MAAU,OAAOA,KAAU,YAAYE,EAAG,KAAKF,CAAK;AAClE,SAASG,EAAUC,GAAQC,GAAQC,GAAMC,GAAUC,GAAwBC,GAAc;AACrF,EAAID,KACAJ,EAAO,UAAUM,EAAU,GAAGJ,EAAK,WAAW,GAAGK,EAAgBJ,CAAQ,CAAC,GAC1EH,EAAO,cAAcM,EAAUL,EAAO,WAAW,GAAG,GAAGO,EAAiBL,CAAQ,CAAC,KAE5EE,MACLL,EAAO,UAAUM,EAAUL,EAAO,WAAW,GAAGC,EAAK,WAAW,GAAGC,CAAQ;AAK/E,WAASM,IAAI,GAAGA,IAAIf,GAAYe,KAAK;AACjC,UAAMC,IAAcjB,EAAagB,CAAC;AAClC,QAAIE,IAAeC,EAAUX,GAAQS,CAAW,GAC5CG,IAAaD,EAAUV,GAAMQ,CAAW;AAC5C,QAAIC,MAAiB,UAAaE,MAAe;AAC7C;AACJ,IAAAF,MAAiBA,IAAe,IAChCE,MAAeA,IAAa,IACbF,MAAiB,KAC5BE,MAAe,KACfhB,EAAKc,CAAY,MAAMd,EAAKgB,CAAU,KAEtCb,EAAOU,CAAW,IAAI,KAAK,IAAIJ,EAAUX,EAASgB,CAAY,GAAGhB,EAASkB,CAAU,GAAGV,CAAQ,GAAG,CAAC,IAC/FW,EAAQ,KAAKD,CAAU,KAAKC,EAAQ,KAAKH,CAAY,OACrDX,EAAOU,CAAW,KAAK,QAI3BV,EAAOU,CAAW,IAAIG;AAAA,EAE9B;AAIA,GAAIZ,EAAO,UAAUC,EAAK,YACtBF,EAAO,SAASM,EAAUL,EAAO,UAAU,GAAGC,EAAK,UAAU,GAAGC,CAAQ;AAEhF;AACA,SAASS,EAAUG,GAAQC,GAAY;AACnC,SAAOD,EAAOC,CAAU,MAAM,SACxBD,EAAOC,CAAU,IACjBD,EAAO;AACjB;AACA,MAAMR,IAAgC,gBAAAU,EAAS,GAAG,KAAKC,CAAO,GACxDV,IAAiC,gBAAAS,EAAS,KAAK,MAAME,CAAI;AAC/D,SAASF,EAASG,GAAKC,GAAKC,GAAQ;AAChC,SAAO,CAACC,MAEAA,IAAIH,IACG,IACPG,IAAIF,IACG,IACJC,EAAOnB,EAASiB,GAAKC,GAAKE,CAAC,CAAC;AAE3C;","x_google_ignoreList":[0]}
@@ -1,15 +1,9 @@
1
- function c(n, o) {
2
- n.min = o.min, n.max = o.max;
3
- }
4
- function t(n, o) {
5
- c(n.x, o.x), c(n.y, o.y);
6
- }
7
- function i(n, o) {
8
- n.translate = o.translate, n.scale = o.scale, n.originPoint = o.originPoint, n.origin = o.origin;
9
- }
1
+ import { mirrorEasing as o } from "./visualization.es477.js";
2
+ import { reverseEasing as t } from "./visualization.es478.js";
3
+ const r = (c) => 1 - Math.sin(Math.acos(c)), s = t(r), a = o(r);
10
4
  export {
11
- i as copyAxisDeltaInto,
12
- c as copyAxisInto,
13
- t as copyBoxInto
5
+ r as circIn,
6
+ a as circInOut,
7
+ s as circOut
14
8
  };
15
9
  //# sourceMappingURL=visualization.es453.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.es453.js","sources":["../../../node_modules/.pnpm/motion-dom@12.38.0/node_modules/motion-dom/dist/es/projection/geometry/copy.mjs"],"sourcesContent":["/**\n * Reset an axis to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyAxisInto(axis, originAxis) {\n axis.min = originAxis.min;\n axis.max = originAxis.max;\n}\n/**\n * Reset a box to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyBoxInto(box, originBox) {\n copyAxisInto(box.x, originBox.x);\n copyAxisInto(box.y, originBox.y);\n}\n/**\n * Reset a delta to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyAxisDeltaInto(delta, originDelta) {\n delta.translate = originDelta.translate;\n delta.scale = originDelta.scale;\n delta.originPoint = originDelta.originPoint;\n delta.origin = originDelta.origin;\n}\n\nexport { copyAxisDeltaInto, copyAxisInto, copyBoxInto };\n//# sourceMappingURL=copy.mjs.map\n"],"names":["copyAxisInto","axis","originAxis","copyBoxInto","box","originBox","copyAxisDeltaInto","delta","originDelta"],"mappings":"AAKA,SAASA,EAAaC,GAAMC,GAAY;AACpC,EAAAD,EAAK,MAAMC,EAAW,KACtBD,EAAK,MAAMC,EAAW;AAC1B;AAMA,SAASC,EAAYC,GAAKC,GAAW;AACjC,EAAAL,EAAaI,EAAI,GAAGC,EAAU,CAAC,GAC/BL,EAAaI,EAAI,GAAGC,EAAU,CAAC;AACnC;AAMA,SAASC,EAAkBC,GAAOC,GAAa;AAC3C,EAAAD,EAAM,YAAYC,EAAY,WAC9BD,EAAM,QAAQC,EAAY,OAC1BD,EAAM,cAAcC,EAAY,aAChCD,EAAM,SAASC,EAAY;AAC/B;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"visualization.es453.js","sources":["../../../node_modules/.pnpm/motion-utils@12.36.0/node_modules/motion-utils/dist/es/easing/circ.mjs"],"sourcesContent":["import { mirrorEasing } from './modifiers/mirror.mjs';\nimport { reverseEasing } from './modifiers/reverse.mjs';\n\nconst circIn = (p) => 1 - Math.sin(Math.acos(p));\nconst circOut = reverseEasing(circIn);\nconst circInOut = mirrorEasing(circIn);\n\nexport { circIn, circInOut, circOut };\n//# sourceMappingURL=circ.mjs.map\n"],"names":["circIn","p","circOut","reverseEasing","circInOut","mirrorEasing"],"mappings":";;AAGK,MAACA,IAAS,CAACC,MAAM,IAAI,KAAK,IAAI,KAAK,KAAKA,CAAC,CAAC,GACzCC,IAAUC,EAAcH,CAAM,GAC9BI,IAAYC,EAAaL,CAAM;","x_google_ignoreList":[0]}