@weng-lab/ui-components 2.2.4 → 3.0.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 (662) hide show
  1. package/dist/src/components/BiosampleTable/BiosampleTable.d.ts.map +1 -1
  2. package/dist/src/components/BiosampleTable/columns.d.ts.map +1 -1
  3. package/dist/src/components/BiosampleTable/types.d.ts +1 -0
  4. package/dist/src/components/BiosampleTable/types.d.ts.map +1 -1
  5. package/dist/src/components/BiosampleTable/useEncodeBiosampleData.d.ts.map +1 -1
  6. package/dist/src/components/GenomeSearch/GenomeSearch.d.ts +7 -4
  7. package/dist/src/components/GenomeSearch/GenomeSearch.d.ts.map +1 -1
  8. package/dist/src/components/GenomeSearch/queries.d.ts +10 -10
  9. package/dist/src/components/GenomeSearch/queries.d.ts.map +1 -1
  10. package/dist/src/components/GenomeSearch/types.d.ts +27 -12
  11. package/dist/src/components/GenomeSearch/types.d.ts.map +1 -1
  12. package/dist/src/components/GenomeSearch/useEntityAutocomplete.d.ts +3 -10
  13. package/dist/src/components/GenomeSearch/useEntityAutocomplete.d.ts.map +1 -1
  14. package/dist/src/components/GenomeSearch/utils.d.ts.map +1 -1
  15. package/dist/src/components/Table/CustomToolbar.d.ts +2 -10
  16. package/dist/src/components/Table/CustomToolbar.d.ts.map +1 -1
  17. package/dist/src/components/Table/Table.d.ts.map +1 -1
  18. package/dist/src/components/Table/types.d.ts +20 -30
  19. package/dist/src/components/Table/types.d.ts.map +1 -1
  20. package/dist/src/components/TwoPaneLayout/useSyncedTable.d.ts +5 -1
  21. package/dist/src/components/TwoPaneLayout/useSyncedTable.d.ts.map +1 -1
  22. package/dist/ui-components.es10.js +97 -90
  23. package/dist/ui-components.es10.js.map +1 -1
  24. package/dist/ui-components.es100.js +57 -7
  25. package/dist/ui-components.es100.js.map +1 -1
  26. package/dist/ui-components.es101.js +7 -6
  27. package/dist/ui-components.es101.js.map +1 -1
  28. package/dist/ui-components.es102.js +12 -6
  29. package/dist/ui-components.es102.js.map +1 -1
  30. package/dist/ui-components.es103.js +7 -5
  31. package/dist/ui-components.es103.js.map +1 -1
  32. package/dist/ui-components.es104.js +449 -6
  33. package/dist/ui-components.es104.js.map +1 -1
  34. package/dist/ui-components.es105.js +3 -6
  35. package/dist/ui-components.es105.js.map +1 -1
  36. package/dist/ui-components.es106.js +3 -29
  37. package/dist/ui-components.es106.js.map +1 -1
  38. package/dist/ui-components.es107.js +3 -8
  39. package/dist/ui-components.es107.js.map +1 -1
  40. package/dist/ui-components.es108.js +14 -47
  41. package/dist/ui-components.es108.js.map +1 -1
  42. package/dist/ui-components.es109.js +39 -194
  43. package/dist/ui-components.es109.js.map +1 -1
  44. package/dist/ui-components.es11.js +19 -15
  45. package/dist/ui-components.es11.js.map +1 -1
  46. package/dist/ui-components.es110.js +7 -18
  47. package/dist/ui-components.es110.js.map +1 -1
  48. package/dist/ui-components.es111.js +23 -279
  49. package/dist/ui-components.es111.js.map +1 -1
  50. package/dist/ui-components.es112.js +3 -6
  51. package/dist/ui-components.es112.js.map +1 -1
  52. package/dist/ui-components.es113.js +6 -6
  53. package/dist/ui-components.es113.js.map +1 -1
  54. package/dist/ui-components.es114.js +13 -7
  55. package/dist/ui-components.es114.js.map +1 -1
  56. package/dist/ui-components.es115.js +6 -4
  57. package/dist/ui-components.es115.js.map +1 -1
  58. package/dist/ui-components.es116.js +20 -5
  59. package/dist/ui-components.es116.js.map +1 -1
  60. package/dist/ui-components.es117.js +4 -20
  61. package/dist/ui-components.es117.js.map +1 -1
  62. package/dist/ui-components.es118.js +6 -11
  63. package/dist/ui-components.es118.js.map +1 -1
  64. package/dist/ui-components.es119.js +29 -7
  65. package/dist/ui-components.es119.js.map +1 -1
  66. package/dist/ui-components.es12.js +111 -79
  67. package/dist/ui-components.es12.js.map +1 -1
  68. package/dist/ui-components.es120.js +20 -24
  69. package/dist/ui-components.es120.js.map +1 -1
  70. package/dist/ui-components.es121.js +7 -3
  71. package/dist/ui-components.es121.js.map +1 -1
  72. package/dist/ui-components.es122.js +6 -160
  73. package/dist/ui-components.es122.js.map +1 -1
  74. package/dist/ui-components.es123.js +47 -3
  75. package/dist/ui-components.es123.js.map +1 -1
  76. package/dist/ui-components.es124.js +18 -4
  77. package/dist/ui-components.es124.js.map +1 -1
  78. package/dist/ui-components.es125.js +413 -3
  79. package/dist/ui-components.es125.js.map +1 -1
  80. package/dist/ui-components.es126.js +497 -21
  81. package/dist/ui-components.es126.js.map +1 -1
  82. package/dist/ui-components.es127.js +344 -3
  83. package/dist/ui-components.es127.js.map +1 -1
  84. package/dist/ui-components.es128.js +272 -15
  85. package/dist/ui-components.es128.js.map +1 -1
  86. package/dist/ui-components.es129.js +177 -8
  87. package/dist/ui-components.es129.js.map +1 -1
  88. package/dist/ui-components.es13.js +59 -38
  89. package/dist/ui-components.es13.js.map +1 -1
  90. package/dist/ui-components.es130.js +280 -4
  91. package/dist/ui-components.es130.js.map +1 -1
  92. package/dist/ui-components.es131.js +238 -4
  93. package/dist/ui-components.es131.js.map +1 -1
  94. package/dist/ui-components.es132.js +3 -37
  95. package/dist/ui-components.es132.js.map +1 -1
  96. package/dist/ui-components.es133.js +6 -344
  97. package/dist/ui-components.es133.js.map +1 -1
  98. package/dist/ui-components.es134.js +8 -275
  99. package/dist/ui-components.es134.js.map +1 -1
  100. package/dist/ui-components.es135.js +4 -6
  101. package/dist/ui-components.es135.js.map +1 -1
  102. package/dist/ui-components.es136.js +7 -7
  103. package/dist/ui-components.es136.js.map +1 -1
  104. package/dist/ui-components.es137.js +4 -8
  105. package/dist/ui-components.es137.js.map +1 -1
  106. package/dist/ui-components.es138.js +7 -6
  107. package/dist/ui-components.es138.js.map +1 -1
  108. package/dist/ui-components.es139.js +6 -6
  109. package/dist/ui-components.es139.js.map +1 -1
  110. package/dist/ui-components.es140.js +7 -311
  111. package/dist/ui-components.es140.js.map +1 -1
  112. package/dist/ui-components.es141.js +8 -6
  113. package/dist/ui-components.es141.js.map +1 -1
  114. package/dist/ui-components.es142.js +198 -6
  115. package/dist/ui-components.es142.js.map +1 -1
  116. package/dist/ui-components.es143.js +3 -6
  117. package/dist/ui-components.es143.js.map +1 -1
  118. package/dist/ui-components.es144.js +6 -6
  119. package/dist/ui-components.es144.js.map +1 -1
  120. package/dist/ui-components.es145.js +4 -60
  121. package/dist/ui-components.es145.js.map +1 -1
  122. package/dist/ui-components.es146.js +4 -8
  123. package/dist/ui-components.es146.js.map +1 -1
  124. package/dist/ui-components.es147.js +36 -6
  125. package/dist/ui-components.es147.js.map +1 -1
  126. package/dist/ui-components.es148.js +345 -2
  127. package/dist/ui-components.es148.js.map +1 -1
  128. package/dist/ui-components.es149.js +275 -3
  129. package/dist/ui-components.es149.js.map +1 -1
  130. package/dist/ui-components.es150.js +7 -31
  131. package/dist/ui-components.es150.js.map +1 -1
  132. package/dist/ui-components.es151.js +4 -15
  133. package/dist/ui-components.es151.js.map +1 -1
  134. package/dist/ui-components.es152.js +5 -57
  135. package/dist/ui-components.es152.js.map +1 -1
  136. package/dist/ui-components.es153.js +12 -7
  137. package/dist/ui-components.es153.js.map +1 -1
  138. package/dist/ui-components.es154.js +7 -7
  139. package/dist/ui-components.es154.js.map +1 -1
  140. package/dist/ui-components.es155.js +24 -25
  141. package/dist/ui-components.es155.js.map +1 -1
  142. package/dist/ui-components.es156.js +159 -27
  143. package/dist/ui-components.es156.js.map +1 -1
  144. package/dist/ui-components.es157.js +4 -11
  145. package/dist/ui-components.es157.js.map +1 -1
  146. package/dist/ui-components.es158.js +21 -4
  147. package/dist/ui-components.es158.js.map +1 -1
  148. package/dist/ui-components.es159.js +7 -196
  149. package/dist/ui-components.es159.js.map +1 -1
  150. package/dist/ui-components.es160.js +6 -189
  151. package/dist/ui-components.es160.js.map +1 -1
  152. package/dist/ui-components.es161.js +7 -9
  153. package/dist/ui-components.es161.js.map +1 -1
  154. package/dist/ui-components.es162.js +6 -22
  155. package/dist/ui-components.es162.js.map +1 -1
  156. package/dist/ui-components.es163.js +7 -125
  157. package/dist/ui-components.es163.js.map +1 -1
  158. package/dist/ui-components.es164.js +6 -4
  159. package/dist/ui-components.es164.js.map +1 -1
  160. package/dist/ui-components.es165.js +125 -4
  161. package/dist/ui-components.es165.js.map +1 -1
  162. package/dist/ui-components.es166.js +3 -2
  163. package/dist/ui-components.es166.js.map +1 -1
  164. package/dist/ui-components.es167.js +4 -101
  165. package/dist/ui-components.es167.js.map +1 -1
  166. package/dist/ui-components.es168.js +3 -6
  167. package/dist/ui-components.es168.js.map +1 -1
  168. package/dist/ui-components.es169.js +97 -59
  169. package/dist/ui-components.es169.js.map +1 -1
  170. package/dist/ui-components.es170.js +6 -177
  171. package/dist/ui-components.es170.js.map +1 -1
  172. package/dist/ui-components.es171.js +48 -176
  173. package/dist/ui-components.es171.js.map +1 -1
  174. package/dist/ui-components.es172.js +177 -6
  175. package/dist/ui-components.es172.js.map +1 -1
  176. package/dist/ui-components.es173.js +188 -266
  177. package/dist/ui-components.es173.js.map +1 -1
  178. package/dist/ui-components.es174.js +20 -172
  179. package/dist/ui-components.es174.js.map +1 -1
  180. package/dist/ui-components.es175.js +6 -109
  181. package/dist/ui-components.es175.js.map +1 -1
  182. package/dist/ui-components.es176.js +6 -7
  183. package/dist/ui-components.es176.js.map +1 -1
  184. package/dist/ui-components.es177.js +7 -63
  185. package/dist/ui-components.es177.js.map +1 -1
  186. package/dist/ui-components.es178.js +23 -43
  187. package/dist/ui-components.es178.js.map +1 -1
  188. package/dist/ui-components.es179.js +29 -3
  189. package/dist/ui-components.es179.js.map +1 -1
  190. package/dist/ui-components.es180.js +11 -7
  191. package/dist/ui-components.es180.js.map +1 -1
  192. package/dist/ui-components.es181.js +4 -155
  193. package/dist/ui-components.es181.js.map +1 -1
  194. package/dist/ui-components.es182.js +196 -4
  195. package/dist/ui-components.es182.js.map +1 -1
  196. package/dist/ui-components.es183.js +189 -39
  197. package/dist/ui-components.es183.js.map +1 -1
  198. package/dist/ui-components.es184.js +8 -25
  199. package/dist/ui-components.es184.js.map +1 -1
  200. package/dist/ui-components.es185.js +269 -7
  201. package/dist/ui-components.es185.js.map +1 -1
  202. package/dist/ui-components.es186.js +172 -26
  203. package/dist/ui-components.es186.js.map +1 -1
  204. package/dist/ui-components.es187.js +105 -119
  205. package/dist/ui-components.es187.js.map +1 -1
  206. package/dist/ui-components.es188.js +63 -12
  207. package/dist/ui-components.es188.js.map +1 -1
  208. package/dist/ui-components.es189.js +44 -4
  209. package/dist/ui-components.es189.js.map +1 -1
  210. package/dist/ui-components.es19.js +1 -1
  211. package/dist/ui-components.es190.js +3 -294
  212. package/dist/ui-components.es190.js.map +1 -1
  213. package/dist/ui-components.es191.js +7 -93
  214. package/dist/ui-components.es191.js.map +1 -1
  215. package/dist/ui-components.es192.js +154 -8
  216. package/dist/ui-components.es192.js.map +1 -1
  217. package/dist/ui-components.es193.js +4 -81
  218. package/dist/ui-components.es193.js.map +1 -1
  219. package/dist/ui-components.es194.js +38 -77
  220. package/dist/ui-components.es194.js.map +1 -1
  221. package/dist/ui-components.es195.js +24 -14
  222. package/dist/ui-components.es195.js.map +1 -1
  223. package/dist/ui-components.es196.js +8 -2
  224. package/dist/ui-components.es196.js.map +1 -1
  225. package/dist/ui-components.es197.js +27 -110
  226. package/dist/ui-components.es197.js.map +1 -1
  227. package/dist/ui-components.es198.js +121 -14
  228. package/dist/ui-components.es198.js.map +1 -1
  229. package/dist/ui-components.es199.js +12 -6
  230. package/dist/ui-components.es199.js.map +1 -1
  231. package/dist/ui-components.es2.js +29 -29
  232. package/dist/ui-components.es20.js +6 -41
  233. package/dist/ui-components.es20.js.map +1 -1
  234. package/dist/ui-components.es200.js +4 -9
  235. package/dist/ui-components.es200.js.map +1 -1
  236. package/dist/ui-components.es201.js +290 -446
  237. package/dist/ui-components.es201.js.map +1 -1
  238. package/dist/ui-components.es202.js +93 -3
  239. package/dist/ui-components.es202.js.map +1 -1
  240. package/dist/ui-components.es203.js +10 -3
  241. package/dist/ui-components.es203.js.map +1 -1
  242. package/dist/ui-components.es204.js +82 -43
  243. package/dist/ui-components.es204.js.map +1 -1
  244. package/dist/ui-components.es205.js +77 -7
  245. package/dist/ui-components.es205.js.map +1 -1
  246. package/dist/ui-components.es206.js +16 -23
  247. package/dist/ui-components.es206.js.map +1 -1
  248. package/dist/ui-components.es207.js +2 -7
  249. package/dist/ui-components.es207.js.map +1 -1
  250. package/dist/ui-components.es208.js +217 -319
  251. package/dist/ui-components.es208.js.map +1 -1
  252. package/dist/ui-components.es209.js +6 -498
  253. package/dist/ui-components.es209.js.map +1 -1
  254. package/dist/ui-components.es21.js +70 -6
  255. package/dist/ui-components.es21.js.map +1 -1
  256. package/dist/ui-components.es210.js +6 -344
  257. package/dist/ui-components.es210.js.map +1 -1
  258. package/dist/ui-components.es211.js +6 -272
  259. package/dist/ui-components.es211.js.map +1 -1
  260. package/dist/ui-components.es212.js +8 -177
  261. package/dist/ui-components.es212.js.map +1 -1
  262. package/dist/ui-components.es213.js +56 -234
  263. package/dist/ui-components.es213.js.map +1 -1
  264. package/dist/ui-components.es217.js +3 -3
  265. package/dist/ui-components.es218.js +4 -4
  266. package/dist/ui-components.es219.js +1 -1
  267. package/dist/ui-components.es22.js +30 -6
  268. package/dist/ui-components.es22.js.map +1 -1
  269. package/dist/ui-components.es220.js +2 -35
  270. package/dist/ui-components.es220.js.map +1 -1
  271. package/dist/ui-components.es221.js +34 -22
  272. package/dist/ui-components.es221.js.map +1 -1
  273. package/dist/ui-components.es222.js +22 -11
  274. package/dist/ui-components.es222.js.map +1 -1
  275. package/dist/ui-components.es223.js +12 -2
  276. package/dist/ui-components.es223.js.map +1 -1
  277. package/dist/ui-components.es224.js +4 -2
  278. package/dist/ui-components.es224.js.map +1 -1
  279. package/dist/ui-components.es225.js +3 -3
  280. package/dist/ui-components.es225.js.map +1 -1
  281. package/dist/ui-components.es226.js +8 -45
  282. package/dist/ui-components.es226.js.map +1 -1
  283. package/dist/ui-components.es227.js +12 -11
  284. package/dist/ui-components.es227.js.map +1 -1
  285. package/dist/ui-components.es228.js +2 -2
  286. package/dist/ui-components.es229.js +4 -2
  287. package/dist/ui-components.es229.js.map +1 -1
  288. package/dist/ui-components.es23.js +27 -6
  289. package/dist/ui-components.es23.js.map +1 -1
  290. package/dist/ui-components.es230.js +45 -6
  291. package/dist/ui-components.es230.js.map +1 -1
  292. package/dist/ui-components.es231.js +10 -6
  293. package/dist/ui-components.es231.js.map +1 -1
  294. package/dist/ui-components.es232.js +2 -9
  295. package/dist/ui-components.es232.js.map +1 -1
  296. package/dist/ui-components.es233.js +2 -2
  297. package/dist/ui-components.es234.js +2 -2
  298. package/dist/ui-components.es235.js +6 -59
  299. package/dist/ui-components.es235.js.map +1 -1
  300. package/dist/ui-components.es236.js +59 -23
  301. package/dist/ui-components.es236.js.map +1 -1
  302. package/dist/ui-components.es237.js +2 -118
  303. package/dist/ui-components.es237.js.map +1 -1
  304. package/dist/ui-components.es238.js +2 -4
  305. package/dist/ui-components.es238.js.map +1 -1
  306. package/dist/ui-components.es239.js +23 -14
  307. package/dist/ui-components.es239.js.map +1 -1
  308. package/dist/ui-components.es24.js +43 -6
  309. package/dist/ui-components.es24.js.map +1 -1
  310. package/dist/ui-components.es240.js +114 -35
  311. package/dist/ui-components.es240.js.map +1 -1
  312. package/dist/ui-components.es241.js +3 -4
  313. package/dist/ui-components.es241.js.map +1 -1
  314. package/dist/ui-components.es242.js +15 -17
  315. package/dist/ui-components.es242.js.map +1 -1
  316. package/dist/ui-components.es243.js +39 -9
  317. package/dist/ui-components.es243.js.map +1 -1
  318. package/dist/ui-components.es244.js +4 -7
  319. package/dist/ui-components.es244.js.map +1 -1
  320. package/dist/ui-components.es245.js +16 -7
  321. package/dist/ui-components.es245.js.map +1 -1
  322. package/dist/ui-components.es246.js +8 -7
  323. package/dist/ui-components.es246.js.map +1 -1
  324. package/dist/ui-components.es247.js +7 -7
  325. package/dist/ui-components.es247.js.map +1 -1
  326. package/dist/ui-components.es248.js +7 -8
  327. package/dist/ui-components.es248.js.map +1 -1
  328. package/dist/ui-components.es249.js +8 -5
  329. package/dist/ui-components.es249.js.map +1 -1
  330. package/dist/ui-components.es25.js +21 -6
  331. package/dist/ui-components.es25.js.map +1 -1
  332. package/dist/ui-components.es250.js +7 -10
  333. package/dist/ui-components.es250.js.map +1 -1
  334. package/dist/ui-components.es251.js +9 -42
  335. package/dist/ui-components.es251.js.map +1 -1
  336. package/dist/ui-components.es252.js +5 -2
  337. package/dist/ui-components.es252.js.map +1 -1
  338. package/dist/ui-components.es253.js +11 -25
  339. package/dist/ui-components.es253.js.map +1 -1
  340. package/dist/ui-components.es254.js +41 -34
  341. package/dist/ui-components.es254.js.map +1 -1
  342. package/dist/ui-components.es255.js +6 -7
  343. package/dist/ui-components.es255.js.map +1 -1
  344. package/dist/ui-components.es256.js +232 -3
  345. package/dist/ui-components.es256.js.map +1 -1
  346. package/dist/ui-components.es257.js +2 -7
  347. package/dist/ui-components.es257.js.map +1 -1
  348. package/dist/ui-components.es258.js +2 -477
  349. package/dist/ui-components.es258.js.map +1 -1
  350. package/dist/ui-components.es259.js +9 -167
  351. package/dist/ui-components.es259.js.map +1 -1
  352. package/dist/ui-components.es26.js +20 -6
  353. package/dist/ui-components.es26.js.map +1 -1
  354. package/dist/ui-components.es260.js +1 -3
  355. package/dist/ui-components.es260.js.map +1 -1
  356. package/dist/ui-components.es261.js +2 -8
  357. package/dist/ui-components.es261.js.map +1 -1
  358. package/dist/ui-components.es262.js +3 -3
  359. package/dist/ui-components.es262.js.map +1 -1
  360. package/dist/ui-components.es263.js +7 -3
  361. package/dist/ui-components.es263.js.map +1 -1
  362. package/dist/ui-components.es264.js +476 -7
  363. package/dist/ui-components.es264.js.map +1 -1
  364. package/dist/ui-components.es265.js +167 -7
  365. package/dist/ui-components.es265.js.map +1 -1
  366. package/dist/ui-components.es266.js +25 -2
  367. package/dist/ui-components.es266.js.map +1 -1
  368. package/dist/ui-components.es267.js +34 -67
  369. package/dist/ui-components.es267.js.map +1 -1
  370. package/dist/ui-components.es268.js +7 -84
  371. package/dist/ui-components.es268.js.map +1 -1
  372. package/dist/ui-components.es269.js +4 -47
  373. package/dist/ui-components.es269.js.map +1 -1
  374. package/dist/ui-components.es27.js +130 -6
  375. package/dist/ui-components.es27.js.map +1 -1
  376. package/dist/ui-components.es270.js +7 -7
  377. package/dist/ui-components.es270.js.map +1 -1
  378. package/dist/ui-components.es271.js +3 -5
  379. package/dist/ui-components.es271.js.map +1 -1
  380. package/dist/ui-components.es272.js +3 -52
  381. package/dist/ui-components.es272.js.map +1 -1
  382. package/dist/ui-components.es273.js +8 -232
  383. package/dist/ui-components.es273.js.map +1 -1
  384. package/dist/ui-components.es274.js +8 -2
  385. package/dist/ui-components.es274.js.map +1 -1
  386. package/dist/ui-components.es275.js +2 -2
  387. package/dist/ui-components.es276.js +67 -9
  388. package/dist/ui-components.es276.js.map +1 -1
  389. package/dist/ui-components.es277.js +85 -2
  390. package/dist/ui-components.es277.js.map +1 -1
  391. package/dist/ui-components.es278.js +47 -2
  392. package/dist/ui-components.es278.js.map +1 -1
  393. package/dist/ui-components.es279.js +7 -3
  394. package/dist/ui-components.es279.js.map +1 -1
  395. package/dist/ui-components.es28.js +36 -255
  396. package/dist/ui-components.es28.js.map +1 -1
  397. package/dist/ui-components.es280.js +4 -3
  398. package/dist/ui-components.es280.js.map +1 -1
  399. package/dist/ui-components.es281.js +52 -12
  400. package/dist/ui-components.es281.js.map +1 -1
  401. package/dist/ui-components.es282.js +145 -29
  402. package/dist/ui-components.es282.js.map +1 -1
  403. package/dist/ui-components.es283.js +9 -519
  404. package/dist/ui-components.es283.js.map +1 -1
  405. package/dist/ui-components.es284.js +3 -6
  406. package/dist/ui-components.es284.js.map +1 -1
  407. package/dist/ui-components.es285.js +15 -233
  408. package/dist/ui-components.es285.js.map +1 -1
  409. package/dist/ui-components.es286.js +19 -8
  410. package/dist/ui-components.es286.js.map +1 -1
  411. package/dist/ui-components.es287.js +31 -6
  412. package/dist/ui-components.es287.js.map +1 -1
  413. package/dist/ui-components.es288.js +12 -6
  414. package/dist/ui-components.es288.js.map +1 -1
  415. package/dist/ui-components.es289.js +149 -6
  416. package/dist/ui-components.es289.js.map +1 -1
  417. package/dist/ui-components.es29.js +21 -724
  418. package/dist/ui-components.es29.js.map +1 -1
  419. package/dist/ui-components.es290.js +12 -6
  420. package/dist/ui-components.es290.js.map +1 -1
  421. package/dist/ui-components.es291.js +6 -6
  422. package/dist/ui-components.es291.js.map +1 -1
  423. package/dist/ui-components.es292.js +7 -243
  424. package/dist/ui-components.es292.js.map +1 -1
  425. package/dist/ui-components.es293.js +171 -8
  426. package/dist/ui-components.es293.js.map +1 -1
  427. package/dist/ui-components.es294.js +7 -48
  428. package/dist/ui-components.es294.js.map +1 -1
  429. package/dist/ui-components.es295.js +12 -3
  430. package/dist/ui-components.es295.js.map +1 -1
  431. package/dist/ui-components.es296.js +7 -6
  432. package/dist/ui-components.es296.js.map +1 -1
  433. package/dist/ui-components.es297.js +520 -6
  434. package/dist/ui-components.es297.js.map +1 -1
  435. package/dist/ui-components.es298.js +6 -4
  436. package/dist/ui-components.es298.js.map +1 -1
  437. package/dist/ui-components.es299.js +234 -7
  438. package/dist/ui-components.es299.js.map +1 -1
  439. package/dist/ui-components.es3.js +161 -101
  440. package/dist/ui-components.es3.js.map +1 -1
  441. package/dist/ui-components.es30.js +162 -569
  442. package/dist/ui-components.es30.js.map +1 -1
  443. package/dist/ui-components.es300.js +7 -6
  444. package/dist/ui-components.es300.js.map +1 -1
  445. package/dist/ui-components.es301.js +242 -5
  446. package/dist/ui-components.es301.js.map +1 -1
  447. package/dist/ui-components.es302.js +6 -5
  448. package/dist/ui-components.es302.js.map +1 -1
  449. package/dist/ui-components.es303.js +46 -166
  450. package/dist/ui-components.es303.js.map +1 -1
  451. package/dist/ui-components.es304.js +3 -15
  452. package/dist/ui-components.es304.js.map +1 -1
  453. package/dist/ui-components.es305.js +6 -333
  454. package/dist/ui-components.es305.js.map +1 -1
  455. package/dist/ui-components.es306.js +6 -323
  456. package/dist/ui-components.es306.js.map +1 -1
  457. package/dist/ui-components.es307.js +6 -7
  458. package/dist/ui-components.es307.js.map +1 -1
  459. package/dist/ui-components.es308.js +6 -43
  460. package/dist/ui-components.es308.js.map +1 -1
  461. package/dist/ui-components.es309.js +6 -3
  462. package/dist/ui-components.es309.js.map +1 -1
  463. package/dist/ui-components.es31.js +26 -62
  464. package/dist/ui-components.es31.js.map +1 -1
  465. package/dist/ui-components.es310.js +6 -7
  466. package/dist/ui-components.es310.js.map +1 -1
  467. package/dist/ui-components.es311.js +3 -40
  468. package/dist/ui-components.es311.js.map +1 -1
  469. package/dist/ui-components.es312.js +6 -64
  470. package/dist/ui-components.es312.js.map +1 -1
  471. package/dist/ui-components.es313.js +155 -25
  472. package/dist/ui-components.es313.js.map +1 -1
  473. package/dist/ui-components.es314.js +6 -19
  474. package/dist/ui-components.es314.js.map +1 -1
  475. package/dist/ui-components.es315.js +6 -48
  476. package/dist/ui-components.es315.js.map +1 -1
  477. package/dist/ui-components.es316.js +5 -19
  478. package/dist/ui-components.es316.js.map +1 -1
  479. package/dist/ui-components.es317.js +323 -51
  480. package/dist/ui-components.es317.js.map +1 -1
  481. package/dist/ui-components.es318.js +6 -6
  482. package/dist/ui-components.es318.js.map +1 -1
  483. package/dist/ui-components.es319.js +14 -7
  484. package/dist/ui-components.es319.js.map +1 -1
  485. package/dist/ui-components.es32.js +40 -111
  486. package/dist/ui-components.es32.js.map +1 -1
  487. package/dist/ui-components.es320.js +330 -72
  488. package/dist/ui-components.es320.js.map +1 -1
  489. package/dist/ui-components.es321.js +37 -22
  490. package/dist/ui-components.es321.js.map +1 -1
  491. package/dist/ui-components.es322.js +19 -4
  492. package/dist/ui-components.es322.js.map +1 -1
  493. package/dist/ui-components.es323.js +39 -57
  494. package/dist/ui-components.es323.js.map +1 -1
  495. package/dist/ui-components.es324.js +3 -26
  496. package/dist/ui-components.es324.js.map +1 -1
  497. package/dist/ui-components.es325.js +8 -3
  498. package/dist/ui-components.es325.js.map +1 -1
  499. package/dist/ui-components.es326.js +39 -11
  500. package/dist/ui-components.es326.js.map +1 -1
  501. package/dist/ui-components.es327.js +63 -8
  502. package/dist/ui-components.es327.js.map +1 -1
  503. package/dist/ui-components.es328.js +47 -14
  504. package/dist/ui-components.es328.js.map +1 -1
  505. package/dist/ui-components.es329.js +7 -9
  506. package/dist/ui-components.es329.js.map +1 -1
  507. package/dist/ui-components.es33.js +6 -240
  508. package/dist/ui-components.es33.js.map +1 -1
  509. package/dist/ui-components.es330.js +72 -143
  510. package/dist/ui-components.es330.js.map +1 -1
  511. package/dist/ui-components.es331.js +60 -10
  512. package/dist/ui-components.es331.js.map +1 -1
  513. package/dist/ui-components.es332.js +20 -19
  514. package/dist/ui-components.es332.js.map +1 -1
  515. package/dist/ui-components.es333.js +51 -2
  516. package/dist/ui-components.es333.js.map +1 -1
  517. package/dist/ui-components.es334.js +7 -2
  518. package/dist/ui-components.es334.js.map +1 -1
  519. package/dist/ui-components.es335.js +22 -147
  520. package/dist/ui-components.es335.js.map +1 -1
  521. package/dist/ui-components.es336.js +4 -11
  522. package/dist/ui-components.es336.js.map +1 -1
  523. package/dist/ui-components.es337.js +25 -11
  524. package/dist/ui-components.es337.js.map +1 -1
  525. package/dist/ui-components.es338.js +12 -11
  526. package/dist/ui-components.es338.js.map +1 -1
  527. package/dist/ui-components.es339.js +9 -6
  528. package/dist/ui-components.es339.js.map +1 -1
  529. package/dist/ui-components.es34.js +6 -196
  530. package/dist/ui-components.es34.js.map +1 -1
  531. package/dist/ui-components.es340.js +10 -171
  532. package/dist/ui-components.es340.js.map +1 -1
  533. package/dist/ui-components.es341.js +7 -7
  534. package/dist/ui-components.es341.js.map +1 -1
  535. package/dist/ui-components.es342.js +2 -8
  536. package/dist/ui-components.es342.js.map +1 -1
  537. package/dist/ui-components.es343.js +65 -7
  538. package/dist/ui-components.es343.js.map +1 -1
  539. package/dist/ui-components.es344.js +66 -2
  540. package/dist/ui-components.es344.js.map +1 -1
  541. package/dist/ui-components.es345.js +2 -66
  542. package/dist/ui-components.es345.js.map +1 -1
  543. package/dist/ui-components.es346.js +2 -66
  544. package/dist/ui-components.es346.js.map +1 -1
  545. package/dist/ui-components.es347.js +8 -7
  546. package/dist/ui-components.es347.js.map +1 -1
  547. package/dist/ui-components.es348.js +7 -8
  548. package/dist/ui-components.es348.js.map +1 -1
  549. package/dist/ui-components.es349.js +1 -1
  550. package/dist/ui-components.es35.js +6 -75
  551. package/dist/ui-components.es35.js.map +1 -1
  552. package/dist/ui-components.es351.js +1 -1
  553. package/dist/ui-components.es356.js +7 -125
  554. package/dist/ui-components.es356.js.map +1 -1
  555. package/dist/ui-components.es357.js +125 -7
  556. package/dist/ui-components.es357.js.map +1 -1
  557. package/dist/ui-components.es358.js +6 -6
  558. package/dist/ui-components.es358.js.map +1 -1
  559. package/dist/ui-components.es36.js +6 -461
  560. package/dist/ui-components.es36.js.map +1 -1
  561. package/dist/ui-components.es368.js +1 -1
  562. package/dist/ui-components.es37.js +6 -11
  563. package/dist/ui-components.es37.js.map +1 -1
  564. package/dist/ui-components.es38.js +6 -642
  565. package/dist/ui-components.es38.js.map +1 -1
  566. package/dist/ui-components.es389.js +2 -2
  567. package/dist/ui-components.es39.js +180 -220
  568. package/dist/ui-components.es39.js.map +1 -1
  569. package/dist/ui-components.es4.js +5 -5
  570. package/dist/ui-components.es40.js +685 -80
  571. package/dist/ui-components.es40.js.map +1 -1
  572. package/dist/ui-components.es41.js +618 -84
  573. package/dist/ui-components.es41.js.map +1 -1
  574. package/dist/ui-components.es42.js +39 -33
  575. package/dist/ui-components.es42.js.map +1 -1
  576. package/dist/ui-components.es43.js +74 -221
  577. package/dist/ui-components.es43.js.map +1 -1
  578. package/dist/ui-components.es44.js +171 -194
  579. package/dist/ui-components.es44.js.map +1 -1
  580. package/dist/ui-components.es45.js +182 -18
  581. package/dist/ui-components.es45.js.map +1 -1
  582. package/dist/ui-components.es46.js +42 -316
  583. package/dist/ui-components.es46.js.map +1 -1
  584. package/dist/ui-components.es47.js +420 -114
  585. package/dist/ui-components.es47.js.map +1 -1
  586. package/dist/ui-components.es48.js +11 -143
  587. package/dist/ui-components.es48.js.map +1 -1
  588. package/dist/ui-components.es49.js +642 -20
  589. package/dist/ui-components.es49.js.map +1 -1
  590. package/dist/ui-components.es5.js +94 -108
  591. package/dist/ui-components.es5.js.map +1 -1
  592. package/dist/ui-components.es50.js +293 -123
  593. package/dist/ui-components.es50.js.map +1 -1
  594. package/dist/ui-components.es51.js +121 -36
  595. package/dist/ui-components.es51.js.map +1 -1
  596. package/dist/ui-components.es52.js +126 -23
  597. package/dist/ui-components.es52.js.map +1 -1
  598. package/dist/ui-components.es53.js +45 -229
  599. package/dist/ui-components.es53.js.map +1 -1
  600. package/dist/ui-components.es54.js +248 -28
  601. package/dist/ui-components.es54.js.map +1 -1
  602. package/dist/ui-components.es55.js +169 -932
  603. package/dist/ui-components.es55.js.map +1 -1
  604. package/dist/ui-components.es56.js +19 -111
  605. package/dist/ui-components.es56.js.map +1 -1
  606. package/dist/ui-components.es57.js +273 -310
  607. package/dist/ui-components.es57.js.map +1 -1
  608. package/dist/ui-components.es58.js +155 -70
  609. package/dist/ui-components.es58.js.map +1 -1
  610. package/dist/ui-components.es59.js +141 -28
  611. package/dist/ui-components.es59.js.map +1 -1
  612. package/dist/ui-components.es6.js +3 -3
  613. package/dist/ui-components.es60.js +1026 -27
  614. package/dist/ui-components.es60.js.map +1 -1
  615. package/dist/ui-components.es61.js +123 -42
  616. package/dist/ui-components.es61.js.map +1 -1
  617. package/dist/ui-components.es62.js +386 -21
  618. package/dist/ui-components.es62.js.map +1 -1
  619. package/dist/ui-components.es63.js +42 -45
  620. package/dist/ui-components.es63.js.map +1 -1
  621. package/dist/ui-components.es64.js +98 -95
  622. package/dist/ui-components.es64.js.map +1 -1
  623. package/dist/ui-components.es67.js +1 -1
  624. package/dist/ui-components.es68.js +1 -1
  625. package/dist/ui-components.es71.js +1 -1
  626. package/dist/ui-components.es72.js +1 -1
  627. package/dist/ui-components.es73.js +209 -2
  628. package/dist/ui-components.es73.js.map +1 -1
  629. package/dist/ui-components.es74.js +2 -2
  630. package/dist/ui-components.es75.js +2 -2
  631. package/dist/ui-components.es76.js +2 -2
  632. package/dist/ui-components.es77.js +2 -209
  633. package/dist/ui-components.es77.js.map +1 -1
  634. package/dist/ui-components.es78.js +1 -1
  635. package/dist/ui-components.es8.js +42 -44
  636. package/dist/ui-components.es8.js.map +1 -1
  637. package/dist/ui-components.es83.js +6 -6
  638. package/dist/ui-components.es84.js +11 -11
  639. package/dist/ui-components.es85.js +13 -13
  640. package/dist/ui-components.es86.js +14 -14
  641. package/dist/ui-components.es87.js +10 -10
  642. package/dist/ui-components.es90.js +6 -12
  643. package/dist/ui-components.es90.js.map +1 -1
  644. package/dist/ui-components.es91.js +112 -4
  645. package/dist/ui-components.es91.js.map +1 -1
  646. package/dist/ui-components.es92.js +9 -4
  647. package/dist/ui-components.es92.js.map +1 -1
  648. package/dist/ui-components.es93.js +17 -3
  649. package/dist/ui-components.es93.js.map +1 -1
  650. package/dist/ui-components.es94.js +10 -7
  651. package/dist/ui-components.es94.js.map +1 -1
  652. package/dist/ui-components.es95.js +3 -9
  653. package/dist/ui-components.es95.js.map +1 -1
  654. package/dist/ui-components.es96.js +2 -7
  655. package/dist/ui-components.es96.js.map +1 -1
  656. package/dist/ui-components.es97.js +3 -14
  657. package/dist/ui-components.es97.js.map +1 -1
  658. package/dist/ui-components.es98.js +31 -20
  659. package/dist/ui-components.es98.js.map +1 -1
  660. package/dist/ui-components.es99.js +15 -8
  661. package/dist/ui-components.es99.js.map +1 -1
  662. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ui-components.es63.js","sources":["../src/components/GenomeSearch/utils.ts"],"sourcesContent":["import { CCREResponse, GeneResponse, ICREResponse, LegacyCcreResponse, Result, ResultType, SnpResponse, StudyResponse } from \"./types\";\n\n/**\n * Get the coordinates from a string input.\n * @param input - The input string to search for coordinates\n * @param assembly - The assembly to search for coordinates\n * @returns An array of results with the coordinates\n */\nexport function getCoordinates(input: string, assembly: string): Result[] {\n const results: Result[] = [];\n input = input.replace(/,/g, \"\");\n\n let chromosome: string, start: number, end: number;\n\n if (input.includes(\":\") && input.includes(\"-\")) {\n chromosome = input.split(\":\")[0];\n start = parseInt(input.split(\":\")[1].split(\"-\")[0]) || 0;\n end = parseInt(input.split(\":\")[1].split(\"-\")[1]) || start + 1000;\n } else if (input.includes(\"\\t\")) {\n const [chr, startStr, endStr] = input.split(\"\\t\");\n chromosome = chr;\n start = parseInt(startStr);\n end = parseInt(endStr);\n } else {\n return results;\n }\n\n // Normalize chromosome name to use capital X and Y\n const normalizedChromosome = chromosome.replace(/chrx$/, \"chrX\").replace(/chry$/, \"chrY\");\n\n const chrLength = chromosomeLengths[assembly][chromosome];\n if (end > start && chrLength && end <= chrLength) {\n results.push({\n title: `${normalizedChromosome}:${start.toLocaleString()}-${end.toLocaleString()}`,\n domain: {\n chromosome: normalizedChromosome,\n start: start,\n end: end,\n },\n description: `${normalizedChromosome}:${start.toLocaleString()}-${end.toLocaleString()}`,\n type: \"Coordinate\",\n });\n }\n\n return results;\n}\n\n// Common interface for result formatting options\ninterface ResultFormatterOptions<T> {\n getTitle: (result: T) => string;\n getDescription: (result: T) => string;\n type: string;\n}\n\n// Generic formatter function\nfunction formatResults<T extends { coordinates: { chromosome: string; start: number; end: number } }>(\n results: T[] | null,\n limit: number,\n options: ResultFormatterOptions<T>\n): Result[] {\n if (!results) {\n return [];\n }\n return results.slice(0, limit).map((result) => ({\n title: options.getTitle(result),\n description: options.getDescription(result),\n domain: {\n chromosome: result.coordinates.chromosome,\n start: result.coordinates.start,\n end: result.coordinates.end,\n },\n type: options.type as ResultType,\n }));\n}\n\n// Specific formatters using the generic function\nexport function snpResultList(results: SnpResponse[], limit: number): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.id,\n getDescription: (result) =>\n `${result.coordinates.chromosome}:${result.coordinates.start}-${result.coordinates.end}`,\n type: \"SNP\",\n });\n}\n\nexport function geneResultList(results: GeneResponse[], limit: number, showVersions: boolean): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.name,\n getDescription: (result) => {\n let idStr = \"\";\n result.versions.forEach(\n (x, i) => (idStr += \"V\" + x.version + \" \" + x.id + (i === result.versions.length - 1 ? \"\" : \"\\n\"))\n );\n return `${result.description}\\n${idStr}\\n${result.coordinates.chromosome}:${result.coordinates.start}-${result.coordinates.end}`;\n },\n type: \"Gene\",\n });\n}\n\nexport function studyResultList(results: StudyResponse[], limit: number): Result[] {\n return results.slice(0, limit).map((result) => ({\n title: result.disease_trait,\n description: `${result.author.replace(\"_\", \" \")} (${result.studyid.split(\"-\")[1]})\\n${result.parent_terms.join(\",\")}\\n ${result.has_enrichment_info ? \"Biosample Enrichment\" : \"\"}`,\n domain: undefined,\n id: result.studyid,\n type: \"Study\",\n }));\n}\n\nexport function omeResultsList(results: OmeOption[]): Result[] {\n return results.map((ome) => ({\n title: ome.label,\n description: ome.description ?? \"\",\n domain: undefined,\n id: ome.value,\n type: \"Ome\",\n }));\n}\n\nexport function icreResultList(results: ICREResponse[], limit: number): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.accession,\n getDescription: (result) =>\n `${result.coordinates.chromosome}:${result.coordinates.start}-${result.coordinates.end}`,\n type: \"iCRE\",\n });\n}\n\nexport function ccreResultList(results: CCREResponse[], limit: number): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.accession,\n getDescription: (result) =>\n `${result.coordinates.chromosome}:${result.coordinates.start}-${\n result.coordinates.end\n }${result.isiCRE ? \", iCRE\" : \"\"}`,\n type: \"cCRE\",\n });\n}\n\nexport function legacyCcreResultList(results: LegacyCcreResponse[], limit: number): Result[] {\n return results\n .filter((result) => result.input !== result.v4_match_or_intersecting) //filter v4 cCREs\n .slice(0, limit)\n .map((result) => {\n const region = result.input_region;\n const overlapping = result.v4_match_or_intersecting\n return {\n title: result.input,\n // !!! Do not change this format without also modifying SCREEN's /search page. This specific formatting is relied upon\n description: `(Registry ${result.input_latest_previous_version})\\n${result.input_region}\\n${overlapping ? `Intersects v4 cCRE${overlapping.includes(\",\") ? \"s\" : \"\"}: ${overlapping.replace(\",\", \", \")}` : \"No intersecting v4 cCREs\"}`,\n domain: {\n chromosome: region.split(\":\")[0],\n start: parseInt(region.split(\":\")[1].split(\"-\")[0]),\n end: parseInt(region.split(\":\")[1].split(\"-\")[1]),\n },\n type: \"Legacy cCRE\",\n };\n });\n}\n\nexport interface OmeOption {\n label: string;\n value: string;\n keywords?: string[];\n description?: string;\n}\n//allows the user to search more freely and get the result they are looking for\n//will look at label as well as keywords\nexport const OmesList: OmeOption[] = [\n {\n label: \"Proteomics\",\n value: \"proteomics\",\n keywords: [\"protein\", \"mass spec\"],\n },\n {\n label: \"WGS\",\n value: \"WGS\",\n keywords: [\"whole genome sequencing\", \"genome sequencing\", \"genomics\"],\n description: \"Whole Genome Sequencing\"\n },\n {\n label: \"WGBS\",\n value: \"WGBS\",\n keywords: [\"whole genome bisulfite sequencing\", \"epigenomics\", \"methylation\"],\n description: \"Whole Genome Bisulfite Sequencing\"\n },\n {\n label: \"ATAC\",\n value: \"ATAC\",\n keywords: [\"chromatin accessibility\", \"atac-seq\"],\n description: \"ATAC-seq\"\n },\n {\n label: \"RNA\",\n value: \"RNA\",\n keywords: [\"rna-seq\", \"transcriptomics\", \"gene expression\"],\n description: \"RNA-seq\"\n },\n {\n label: \"Metabolomics\",\n value: \"metabolomics\",\n },\n {\n label: \"Lipidomics\",\n value: \"lipidomics\",\n },\n {\n label: \"Metallomics\",\n value: \"metallomics\",\n },\n {\n label: \"Exposomics\",\n value: \"exposomics\",\n },\n];\n\n// Object to store chromosome lengths for GRCh38 and mm10\nconst chromosomeLengths: { [key: string]: { [key: string]: number } } = {\n GRCh38: {\n chr1: 248956422,\n chr2: 242193529,\n chr3: 198295559,\n chr4: 190214555,\n chr5: 181538259,\n chr6: 170805979,\n chr7: 159345973,\n chr8: 145138636,\n chr9: 138394717,\n chr10: 133797422,\n chr11: 135086622,\n chr12: 133275309,\n chr13: 114364328,\n chr14: 107043718,\n chr15: 101991189,\n chr16: 90338345,\n chr17: 83257441,\n chr18: 80373285,\n chr19: 58617616,\n chr20: 64444167,\n chr21: 46709983,\n chr22: 50818468,\n chrX: 156040895,\n chrx: 156040895,\n chrY: 57227415,\n chry: 57227415,\n },\n mm10: {\n chr1: 195471971,\n chr2: 182113224,\n chr3: 160039680,\n chr4: 156508116,\n chr5: 151834684,\n chr6: 149736546,\n chr7: 145441459,\n chr8: 129401213,\n chr9: 124595110,\n chr10: 130694993,\n chr11: 122082543,\n chr12: 120129022,\n chr13: 120421639,\n chr14: 124902244,\n chr15: 104043685,\n chr16: 98207768,\n chr17: 94987271,\n chr18: 90702639,\n chr19: 61431566,\n chrX: 171031299,\n chrx: 171031299,\n chrY: 91744698,\n chry: 91744698,\n },\n};\n\nexport function isDomain(input: string) {\n const hasTabs = input.includes(\"\\t\");\n const hasHyphens = input.includes(\"-\");\n const hasChromosomeNumber = input.length >= 4 && /^[0-9xyXY]$/.test(input[3]);\n return (hasTabs || hasHyphens) && input.startsWith(\"chr\") && hasChromosomeNumber;\n}\n"],"names":["getCoordinates","input","assembly","results","replace","chromosome","start","end","includes","split","parseInt","chr","startStr","endStr","normalizedChromosome","chrLength","chromosomeLengths","push","title","toLocaleString","domain","description","type","formatResults","limit","options","slice","map","result","getTitle","getDescription","coordinates","snpResultList","id","geneResultList","showVersions","name","idStr","versions","forEach","x","i","version","length","studyResultList","disease_trait","author","studyid","parent_terms","join","has_enrichment_info","undefined","omeResultsList","ome","label","value","icreResultList","accession","ccreResultList","isiCRE","legacyCcreResultList","filter","v4_match_or_intersecting","region","input_region","overlapping","input_latest_previous_version","OmesList","keywords","GRCh38","chr1","chr2","chr3","chr4","chr5","chr6","chr7","chr8","chr9","chr10","chr11","chr12","chr13","chr14","chr15","chr16","chr17","chr18","chr19","chr20","chr21","chr22","chrX","chrx","chrY","chry","mm10","isDomain","hasTabs","hasHyphens","hasChromosomeNumber","test","startsWith"],"mappings":"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"}
1
+ {"version":3,"file":"ui-components.es63.js","sources":["../src/components/GenomeSearch/utils.ts"],"sourcesContent":["import { CCREResponse, GeneResponse, ICREResponse, LegacyCcreResponse, Result, ResultType, SnpResponse, StudyResponse } from \"./types\";\n\n/**\n * Get the coordinates from a string input.\n * @param input - The input string to search for coordinates\n * @param assembly - The assembly to search for coordinates\n * @returns An array of results with the coordinates\n */\nexport function getCoordinates(input: string, assembly: string): Result[] {\n const results: Result[] = [];\n input = input.replace(/,/g, \"\");\n\n let chromosome: string, start: number, end: number;\n\n if (input.includes(\":\") && input.includes(\"-\")) {\n chromosome = input.split(\":\")[0];\n start = parseInt(input.split(\":\")[1].split(\"-\")[0]) || 0;\n end = parseInt(input.split(\":\")[1].split(\"-\")[1]) || start + 1000;\n } else if (input.includes(\"\\t\")) {\n const [chr, startStr, endStr] = input.split(\"\\t\");\n chromosome = chr;\n start = parseInt(startStr);\n end = parseInt(endStr);\n } else {\n return results;\n }\n\n // Normalize chromosome name to use capital X and Y\n const normalizedChromosome = chromosome.replace(/chrx$/, \"chrX\").replace(/chry$/, \"chrY\");\n\n const chrLength = chromosomeLengths[assembly][normalizedChromosome];\n if (end > start && chrLength && end <= chrLength) {\n results.push({\n title: `${normalizedChromosome}:${start.toLocaleString()}-${end.toLocaleString()}`,\n domain: {\n chromosome: normalizedChromosome,\n start: start,\n end: end,\n },\n description: `${normalizedChromosome}:${start.toLocaleString()}-${end.toLocaleString()}`,\n type: \"Coordinate\",\n });\n }\n\n return results;\n}\n\n// Common interface for result formatting options\ninterface ResultFormatterOptions<T> {\n getTitle: (result: T) => string;\n getDescription: (result: T) => string;\n type: string;\n}\n\n// Generic formatter function\nfunction formatResults<T extends { coordinates: { chromosome: string; start: number; end: number } }>(\n results: T[] | null,\n limit: number,\n options: ResultFormatterOptions<T>\n): Result[] {\n if (!results) {\n return [];\n }\n return results.slice(0, limit).map((result) => ({\n title: options.getTitle(result),\n description: options.getDescription(result),\n domain: {\n chromosome: result.coordinates.chromosome,\n start: result.coordinates.start,\n end: result.coordinates.end,\n },\n type: options.type as ResultType,\n }));\n}\n\n// Specific formatters using the generic function\nexport function snpResultList(results: SnpResponse[], limit: number): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.id,\n getDescription: (result) =>\n `${result.coordinates.chromosome}:${result.coordinates.start}-${result.coordinates.end}`,\n type: \"SNP\",\n });\n}\n\nexport function geneResultList(results: GeneResponse[], limit: number, showVersions: boolean): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.name,\n getDescription: (result) => {\n let idStr = \"\";\n result.versions.forEach(\n (x, i) => (idStr += \"V\" + x.version + \" \" + x.id + (i === result.versions.length - 1 ? \"\" : \"\\n\"))\n );\n return `${result.description}\\n${idStr}\\n${result.coordinates.chromosome}:${result.coordinates.start}-${result.coordinates.end}`;\n },\n type: \"Gene\",\n });\n}\n\nexport function studyResultList(results: StudyResponse[], limit: number): Result[] {\n return results.slice(0, limit).map((result) => ({\n title: result.disease_trait,\n description: `${result.author.replace(\"_\", \" \")} (${result.studyid.split(\"-\")[1]})\\n${result.parent_terms.join(\",\")}\\n ${result.has_enrichment_info ? \"Biosample Enrichment\" : \"\"}`,\n domain: undefined,\n id: result.studyid,\n type: \"Study\",\n }));\n}\n\nexport function omeResultsList(results: OmeOption[]): Result[] {\n return results.map((ome) => ({\n title: ome.label,\n description: ome.description ?? \"\",\n domain: undefined,\n id: ome.value,\n type: \"Ome\",\n }));\n}\n\nexport function icreResultList(results: ICREResponse[], limit: number): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.accession,\n getDescription: (result) =>\n `${result.coordinates.chromosome}:${result.coordinates.start}-${result.coordinates.end}`,\n type: \"iCRE\",\n });\n}\n\nexport function ccreResultList(results: CCREResponse[], limit: number): Result[] {\n return formatResults(results, limit, {\n getTitle: (result) => result.accession,\n getDescription: (result) =>\n `${result.coordinates.chromosome}:${result.coordinates.start}-${\n result.coordinates.end\n }${result.isiCRE ? \", iCRE\" : \"\"}`,\n type: \"cCRE\",\n });\n}\n\nexport function legacyCcreResultList(results: LegacyCcreResponse[], limit: number): Result[] {\n return results\n .filter((result) => result.input !== result.v4_match_or_intersecting) //filter v4 cCREs\n .slice(0, limit)\n .map((result) => {\n const region = result.input_region;\n const overlapping = result.v4_match_or_intersecting\n return {\n title: result.input,\n // !!! Do not change this format without also modifying SCREEN's /search page. This specific formatting is relied upon\n // At most two overlapping v4 cCREs are ever returned, so a single (non-global) comma replace is sufficient for the \"a, b\" rendering.\n description: `(Registry ${result.input_latest_previous_version})\\n${result.input_region}\\n${overlapping ? `Intersects v4 cCRE${overlapping.includes(\",\") ? \"s\" : \"\"}: ${overlapping.replace(\",\", \", \")}` : \"No intersecting v4 cCREs\"}`,\n domain: {\n chromosome: region.split(\":\")[0],\n start: parseInt(region.split(\":\")[1].split(\"-\")[0]),\n end: parseInt(region.split(\":\")[1].split(\"-\")[1]),\n },\n type: \"Legacy cCRE\",\n };\n });\n}\n\nexport interface OmeOption {\n label: string;\n value: string;\n keywords?: string[];\n description?: string;\n}\n//allows the user to search more freely and get the result they are looking for\n//will look at label as well as keywords\nexport const OmesList: OmeOption[] = [\n {\n label: \"Proteomics\",\n value: \"proteomics\",\n keywords: [\"protein\", \"mass spec\"],\n },\n {\n label: \"WGS\",\n value: \"WGS\",\n keywords: [\"whole genome sequencing\", \"genome sequencing\", \"genomics\"],\n description: \"Whole Genome Sequencing\"\n },\n {\n label: \"WGBS\",\n value: \"WGBS\",\n keywords: [\"whole genome bisulfite sequencing\", \"epigenomics\", \"methylation\"],\n description: \"Whole Genome Bisulfite Sequencing\"\n },\n {\n label: \"ATAC\",\n value: \"ATAC\",\n keywords: [\"chromatin accessibility\", \"atac-seq\"],\n description: \"ATAC-seq\"\n },\n {\n label: \"RNA\",\n value: \"RNA\",\n keywords: [\"rna-seq\", \"transcriptomics\", \"gene expression\"],\n description: \"RNA-seq\"\n },\n {\n label: \"Metabolomics\",\n value: \"metabolomics\",\n },\n {\n label: \"Lipidomics\",\n value: \"lipidomics\",\n },\n {\n label: \"Metallomics\",\n value: \"metallomics\",\n },\n {\n label: \"Exposomics\",\n value: \"exposomics\",\n },\n];\n\n// Object to store chromosome lengths for GRCh38 and mm10\nconst chromosomeLengths: { [key: string]: { [key: string]: number } } = {\n GRCh38: {\n chr1: 248956422,\n chr2: 242193529,\n chr3: 198295559,\n chr4: 190214555,\n chr5: 181538259,\n chr6: 170805979,\n chr7: 159345973,\n chr8: 145138636,\n chr9: 138394717,\n chr10: 133797422,\n chr11: 135086622,\n chr12: 133275309,\n chr13: 114364328,\n chr14: 107043718,\n chr15: 101991189,\n chr16: 90338345,\n chr17: 83257441,\n chr18: 80373285,\n chr19: 58617616,\n chr20: 64444167,\n chr21: 46709983,\n chr22: 50818468,\n chrX: 156040895,\n chrY: 57227415,\n },\n mm10: {\n chr1: 195471971,\n chr2: 182113224,\n chr3: 160039680,\n chr4: 156508116,\n chr5: 151834684,\n chr6: 149736546,\n chr7: 145441459,\n chr8: 129401213,\n chr9: 124595110,\n chr10: 130694993,\n chr11: 122082543,\n chr12: 120129022,\n chr13: 120421639,\n chr14: 124902244,\n chr15: 104043685,\n chr16: 98207768,\n chr17: 94987271,\n chr18: 90702639,\n chr19: 61431566,\n chrX: 171031299,\n chrY: 91744698,\n },\n};\n\nexport function isDomain(input: string) {\n const hasTabs = input.includes(\"\\t\");\n const hasHyphens = input.includes(\"-\");\n const hasChromosomeNumber = input.length >= 4 && /^[0-9xyXY]$/.test(input[3]);\n return (hasTabs || hasHyphens) && input.startsWith(\"chr\") && hasChromosomeNumber;\n}"],"names":["getCoordinates","input","assembly","results","replace","chromosome","start","end","includes","split","parseInt","chr","startStr","endStr","normalizedChromosome","chrLength","chromosomeLengths","push","title","toLocaleString","domain","description","type","formatResults","limit","options","slice","map","result","getTitle","getDescription","coordinates","snpResultList","id","geneResultList","showVersions","name","idStr","versions","forEach","x","i","version","length","studyResultList","disease_trait","author","studyid","parent_terms","join","has_enrichment_info","undefined","omeResultsList","ome","label","value","icreResultList","accession","ccreResultList","isiCRE","legacyCcreResultList","filter","v4_match_or_intersecting","region","input_region","overlapping","input_latest_previous_version","OmesList","keywords","GRCh38","chr1","chr2","chr3","chr4","chr5","chr6","chr7","chr8","chr9","chr10","chr11","chr12","chr13","chr14","chr15","chr16","chr17","chr18","chr19","chr20","chr21","chr22","chrX","chrY","mm10","isDomain","hasTabs","hasHyphens","hasChromosomeNumber","test","startsWith"],"mappings":"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"}
@@ -1,39 +1,25 @@
1
1
  const d = `
2
- query suggestions($assembly: String!, $snpid: String!) {
3
- snpAutocompleteQuery(assembly: $assembly, snpid: $snpid) {
4
- id
5
- coordinates {
6
- chromosome
7
- start
8
- end
9
- }
2
+ query suggestions($assembly: String!, $snpid: String!, $limit: Int) {
3
+ snpAutocompleteQuery(assembly: $assembly, snpid: $snpid, limit: $limit) {
4
+ id
5
+ coordinates {
6
+ chromosome
7
+ start
8
+ end
10
9
  }
10
+ }
11
11
  }
12
- `, y = `
12
+ `, u = `
13
13
  query Genes(
14
- $id: [String]
15
- $name: [String]
16
- $strand: String
17
- $chromosome: String
18
- $start: Int
19
- $end: Int
20
- $gene_type: String
21
- $havana_id: String
22
14
  $name_prefix: [String!]
15
+ $idprefix: [String!]
23
16
  $limit: Int
24
17
  $assembly: String!
25
18
  $version: Int
26
19
  ) {
27
20
  gene(
28
- id: $id
29
- name: $name
30
- strand: $strand
31
- chromosome: $chromosome
32
- start: $start
33
- end: $end
34
- gene_type: $gene_type
35
- havana_id: $havana_id
36
21
  name_prefix: $name_prefix
22
+ idprefix: $idprefix
37
23
  limit: $limit
38
24
  assembly: $assembly
39
25
  orderby: "name"
@@ -48,7 +34,7 @@ const d = `
48
34
  }
49
35
  }
50
36
  }
51
- `, g = `
37
+ `, _ = `
52
38
  query iCREQuery($accession_prefix: [String!], $limit: Int) {
53
39
  iCREQuery(accession_prefix: $accession_prefix, limit: $limit) {
54
40
  rdhs
@@ -61,8 +47,9 @@ const d = `
61
47
  }
62
48
  }
63
49
  }
64
- `, _ = `
50
+ `, h = `
65
51
  query cCREAutocompleteQuery(
52
+ $accession: [String!]
66
53
  $accession_prefix: [String!]
67
54
  $assembly: String!
68
55
  $includeiCREs: Boolean
@@ -72,6 +59,7 @@ const d = `
72
59
  includeiCREs: $includeiCREs
73
60
  assembly: $assembly
74
61
  limit: $limit
62
+ accession: $accession
75
63
  accession_prefix: $accession_prefix
76
64
  ) {
77
65
  accession
@@ -83,7 +71,7 @@ const d = `
83
71
  }
84
72
  }
85
73
  }
86
- `, h = `
74
+ `, g = `
87
75
  query getv2v3CcreMapping($accessions: [String], $assembly: String!) {
88
76
  ccreMappings: getv2cCREMappings(
89
77
  v2_accession: $accessions
@@ -96,9 +84,9 @@ const d = `
96
84
  v4_region
97
85
  }
98
86
  }
99
- `, u = `
100
- query getGWASStudyMetadata($studyid: [String], $limit: Int, $studyname_prefix: [String], $parent_terms: [String]){
101
- getGWASStudiesMetadata(studyid: $studyid, limit: $limit, parent_terms: $parent_terms, studyname_prefix: $studyname_prefix )
87
+ `, C = `
88
+ query getGWASStudyMetadata($limit: Int, $studyname_prefix: [String]){
89
+ getGWASStudiesMetadata(limit: $limit, studyname_prefix: $studyname_prefix )
102
90
  {
103
91
  studyid
104
92
  author
@@ -111,134 +99,149 @@ query getGWASStudyMetadata($studyid: [String], $limit: Int, $studyname_prefix: [
111
99
  overlapping_ccres
112
100
  }
113
101
  }
114
- `, f = async (e, s, n) => (await fetch("https://screen.api.wenglab.org/graphql", {
115
- method: "POST",
116
- body: JSON.stringify({
117
- query: g,
118
- variables: {
119
- accession_prefix: [e],
120
- limit: s
121
- }
122
- }),
123
- headers: {
124
- "Content-Type": "application/json"
125
- },
126
- signal: n
127
- })).json(), v = async (e, s, n, t, r) => (await fetch("https://screen.api.wenglab.org/graphql", {
102
+ `, b = async (e, t, i, s) => (await fetch(i, {
128
103
  method: "POST",
129
104
  body: JSON.stringify({
130
105
  query: _,
131
106
  variables: {
132
107
  accession_prefix: [e],
133
- assembly: s.toLowerCase(),
134
- limit: n,
135
- includeiCREs: t
108
+ limit: t
136
109
  }
137
110
  }),
138
111
  headers: {
139
112
  "Content-Type": "application/json"
140
113
  },
141
- signal: r
142
- })).json(), E = async (e, s, n) => (await fetch("https://screen.api.wenglab.org/graphql", {
114
+ signal: s
115
+ })).json(), v = async (e, t, i, s, n, p) => {
116
+ const r = e.length === 12;
117
+ return (await fetch(n, {
118
+ method: "POST",
119
+ body: JSON.stringify({
120
+ query: h,
121
+ variables: {
122
+ ...r ? {
123
+ accession: [e.toUpperCase()]
124
+ } : {
125
+ accession_prefix: [e]
126
+ },
127
+ assembly: t,
128
+ limit: i,
129
+ includeiCREs: s
130
+ }
131
+ }),
132
+ headers: {
133
+ "Content-Type": "application/json"
134
+ },
135
+ signal: p
136
+ })).json();
137
+ }, R = async (e, t, i, s) => (await fetch(i, {
143
138
  method: "POST",
144
139
  body: JSON.stringify({
145
- query: h,
140
+ query: g,
146
141
  variables: {
147
142
  accessions: [e],
148
- assembly: s
143
+ assembly: t
149
144
  }
150
145
  }),
151
146
  headers: {
152
147
  "Content-Type": "application/json"
153
148
  },
154
- signal: n
155
- })).json(), R = async (e, s, n, t, r) => {
156
- let o = t ? typeof t == "number" ? [t] : t : [s === "GRCh38" ? 40 : 25];
157
- o = o.sort((i, a) => a - i);
158
- const m = await Promise.all(o.map((i) => fetch("https://screen.api.wenglab.org/graphql", {
149
+ signal: s
150
+ })).json(), x = async (e, t, i, s, n, p) => {
151
+ let r = s ? typeof s == "number" ? [s] : s : [t === "GRCh38" ? 40 : 25];
152
+ r = r.sort((o, a) => a - o);
153
+ const m = await Promise.all(r.map((o) => fetch(n, {
159
154
  method: "POST",
160
155
  body: JSON.stringify({
161
- query: y,
156
+ query: u,
162
157
  variables: {
163
- assembly: s.toLowerCase(),
164
- name_prefix: e,
165
- version: i,
166
- limit: n
158
+ assembly: t.toLowerCase(),
159
+ ...e.toUpperCase().startsWith("ENSG") ? {
160
+ idprefix: e.split(".")[0]
161
+ } : {
162
+ name_prefix: e
163
+ },
164
+ version: o,
165
+ limit: i
167
166
  }
168
167
  }),
169
168
  headers: {
170
169
  "Content-Type": "application/json"
171
170
  },
172
- signal: r
173
- }).then((a) => a.json()))), p = /* @__PURE__ */ new Map();
174
- return m.forEach((i, a) => {
175
- (i.data.gene || []).forEach((c) => {
176
- p.has(c.name) ? p.get(c.name).versions.push({
171
+ signal: p
172
+ }).then((a) => a.json()))), l = /* @__PURE__ */ new Map();
173
+ return m.forEach((o, a) => {
174
+ (o.data.gene || []).forEach((c) => {
175
+ l.has(c.name) ? l.get(c.name).versions.push({
177
176
  id: c.id,
178
- version: o[a]
179
- }) : p.set(c.name, {
177
+ version: r[a]
178
+ }) : l.set(c.name, {
180
179
  gene: c,
181
180
  versions: [{
182
181
  id: c.id,
183
- version: o[a]
182
+ version: r[a]
184
183
  }]
185
184
  });
186
185
  });
187
- }), await Promise.all(Array.from(p.values()).map(async ({
188
- gene: i,
186
+ }), await Promise.all(Array.from(l.values()).map(async ({
187
+ gene: o,
189
188
  versions: a
190
189
  }) => {
191
- const l = await C(i.name);
190
+ const y = await E(o.name);
192
191
  return {
193
- ...i,
194
- description: `${$(l || i.name)}`,
192
+ ...o,
193
+ description: `${f(y || o.name)}`,
195
194
  versions: a
196
195
  };
197
196
  }));
198
- }, $ = (e) => e.split(" ").map((s) => s.charAt(0).toUpperCase() + s.slice(1)).join(" ");
199
- async function C(e) {
200
- const n = await (await fetch("https://clinicaltables.nlm.nih.gov/api/ncbi_genes/v3/search?authenticity_token=&terms=" + e.toUpperCase())).json(), t = n[3] && n[3].filter((r) => r[3] === e.toUpperCase());
201
- return t && t.length >= 1 ? t[0][4] : null;
197
+ }, f = (e) => e.split(" ").map((t) => t.charAt(0).toUpperCase() + t.slice(1)).join(" ");
198
+ async function E(e) {
199
+ try {
200
+ const i = await (await fetch("https://clinicaltables.nlm.nih.gov/api/ncbi_genes/v3/search?authenticity_token=&terms=" + e.toUpperCase())).json(), s = i[3] && i[3].filter((n) => n[3] === e.toUpperCase());
201
+ return s && s.length >= 1 ? s[0][4] : null;
202
+ } catch {
203
+ return null;
204
+ }
202
205
  }
203
- const T = async (e, s, n, t) => (await fetch("https://screen.api.wenglab.org/graphql", {
206
+ const T = async (e, t, i, s, n) => (await fetch(s, {
204
207
  method: "POST",
205
208
  body: JSON.stringify({
206
209
  query: d,
207
210
  variables: {
208
- assembly: s.toLowerCase(),
211
+ assembly: t.toLowerCase(),
209
212
  snpid: e,
210
- limit: n
213
+ limit: i
211
214
  }
212
215
  }),
213
216
  headers: {
214
217
  "Content-Type": "application/json"
215
218
  },
216
- signal: t
217
- })).json(), O = async (e, s, n) => (await fetch("https://screen.api.wenglab.org/graphql", {
219
+ signal: n
220
+ })).json(), O = async (e, t, i, s) => (await fetch(i, {
218
221
  method: "POST",
219
222
  body: JSON.stringify({
220
- query: u,
223
+ query: C,
221
224
  variables: {
222
225
  studyname_prefix: [e],
223
- limit: s
226
+ limit: t
224
227
  }
225
228
  }),
226
229
  headers: {
227
230
  "Content-Type": "application/json"
228
231
  },
229
- signal: n
232
+ signal: s
230
233
  })).json();
231
234
  export {
232
- _ as CCRE_AUTOCOMPLETE_QUERY,
233
- y as GENE_AUTOCOMPLETE_QUERY,
234
- u as GWAS_AUTOCOMPLETE_QUERY,
235
- g as ICRE_AUTOCOMPLETE_QUERY,
236
- h as LEGACY_CCRE_QUERY,
235
+ h as CCRE_AUTOCOMPLETE_QUERY,
236
+ u as GENE_AUTOCOMPLETE_QUERY,
237
+ C as GWAS_AUTOCOMPLETE_QUERY,
238
+ _ as ICRE_AUTOCOMPLETE_QUERY,
239
+ g as LEGACY_CCRE_QUERY,
237
240
  d as SNP_AUTOCOMPLETE_QUERY,
238
241
  v as getCCREs,
239
- R as getGenes,
240
- f as getICREs,
241
- E as getLegacyCCREs,
242
+ x as getGenes,
243
+ b as getICREs,
244
+ R as getLegacyCCREs,
242
245
  T as getSNPs,
243
246
  O as getStudys
244
247
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ui-components.es64.js","sources":["../src/components/GenomeSearch/queries.ts"],"sourcesContent":["import { GeneResponse, GenomeSearchProps } from \"./types\";\n\nexport const SNP_AUTOCOMPLETE_QUERY = `\n query suggestions($assembly: String!, $snpid: String!) {\n snpAutocompleteQuery(assembly: $assembly, snpid: $snpid) {\n id\n coordinates {\n chromosome\n start\n end\n }\n }\n }\n`;\n\nexport const GENE_AUTOCOMPLETE_QUERY = `\n query Genes(\n $id: [String]\n $name: [String]\n $strand: String\n $chromosome: String\n $start: Int\n $end: Int\n $gene_type: String\n $havana_id: String\n $name_prefix: [String!]\n $limit: Int\n $assembly: String!\n $version: Int\n ) {\n gene(\n id: $id\n name: $name\n strand: $strand\n chromosome: $chromosome\n start: $start\n end: $end\n gene_type: $gene_type\n havana_id: $havana_id\n name_prefix: $name_prefix\n limit: $limit\n assembly: $assembly\n orderby: \"name\"\n version: $version\n ) {\n id\n name\n coordinates {\n chromosome\n start\n end\n }\n }\n }\n`;\n\nexport const ICRE_AUTOCOMPLETE_QUERY = `\n query iCREQuery($accession_prefix: [String!], $limit: Int) {\n iCREQuery(accession_prefix: $accession_prefix, limit: $limit) {\n rdhs\n accession\n celltypes\n coordinates {\n start\n end\n chromosome\n }\n }\n }\n`;\n\nexport const CCRE_AUTOCOMPLETE_QUERY = `\n query cCREAutocompleteQuery(\n $accession_prefix: [String!]\n $assembly: String!\n $includeiCREs: Boolean\n $limit: Int\n ) {\n cCREAutocompleteQuery(\n includeiCREs: $includeiCREs\n assembly: $assembly\n limit: $limit\n accession_prefix: $accession_prefix\n ) {\n accession\n isiCRE\n coordinates {\n chromosome\n start\n end\n }\n }\n }\n`;\n\nexport const LEGACY_CCRE_QUERY = `\n query getv2v3CcreMapping($accessions: [String], $assembly: String!) {\n ccreMappings: getv2cCREMappings(\n v2_accession: $accessions\n assembly: $assembly\n ) {\n input: v2_accession\n input_latest_previous_version: ccre_version\n input_region: v2_region\n v4_match_or_intersecting: v4_accession\n v4_region\n }\n }\n`\n\nexport const GWAS_AUTOCOMPLETE_QUERY = `\nquery getGWASStudyMetadata($studyid: [String], $limit: Int, $studyname_prefix: [String], $parent_terms: [String]){\n getGWASStudiesMetadata(studyid: $studyid, limit: $limit, parent_terms: $parent_terms, studyname_prefix: $studyname_prefix )\n {\n studyid\n author\n disease_trait\n has_enrichment_info\n population\n parent_terms\n total_ld_blocks\n ld_blocks_overlapping_ccres\n overlapping_ccres\n }\n}\n`;\n\nexport const getICREs = async (value: string, limit: number, signal?: AbortSignal) => {\n const response = await fetch(\"https://screen.api.wenglab.org/graphql\", {\n method: \"POST\",\n body: JSON.stringify({\n query: ICRE_AUTOCOMPLETE_QUERY,\n variables: {\n accession_prefix: [value],\n limit: limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getCCREs = async (value: string, assembly: GenomeSearchProps[\"assembly\"], limit: number, showiCREFlag: boolean, signal?: AbortSignal) => {\n const response = await fetch(\"https://screen.api.wenglab.org/graphql\", {\n method: \"POST\",\n body: JSON.stringify({\n query: CCRE_AUTOCOMPLETE_QUERY,\n variables: {\n accession_prefix: [value],\n assembly: assembly.toLowerCase(),\n limit: limit,\n includeiCREs: showiCREFlag,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getLegacyCCREs = async (value: string, assembly: GenomeSearchProps[\"assembly\"], signal?: AbortSignal) => {\n const response = await fetch(\"https://screen.api.wenglab.org/graphql\", {\n method: \"POST\",\n body: JSON.stringify({\n query: LEGACY_CCRE_QUERY,\n variables: {\n accessions: [value],\n assembly,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getGenes = async (\n value: string,\n assembly: GenomeSearchProps[\"assembly\"],\n limit: number,\n geneVersions: GenomeSearchProps[\"geneVersion\"],\n signal?: AbortSignal\n) => {\n let versions = geneVersions\n ? typeof geneVersions === \"number\"\n ? [geneVersions]\n : geneVersions\n : [assembly === \"GRCh38\" ? 40 : 25];\n\n // sort versions from high to low (prioritize newest versions in map)\n versions = versions.sort((a, b) => b - a);\n\n // Fetch genes for all versions\n const versionResults = await Promise.all(\n versions.map((version) =>\n fetch(\"https://screen.api.wenglab.org/graphql\", {\n method: \"POST\",\n body: JSON.stringify({\n query: GENE_AUTOCOMPLETE_QUERY,\n variables: {\n assembly: assembly.toLowerCase(),\n name_prefix: value,\n version: version,\n limit: limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n }).then((res) => res.json())\n )\n );\n\n // Combine and deduplicate results\n const geneMap = new Map<string, { gene: any; versions: { id: string; version: number }[] }>();\n\n versionResults.forEach((result, idx) => {\n const genes = result.data.gene || [];\n genes.forEach((gene: any) => {\n if (!geneMap.has(gene.name)) {\n geneMap.set(gene.name, { gene, versions: [{ id: gene.id, version: versions[idx] }] });\n } else {\n // if gene already exists, just add legacy versions to list.\n const existing = geneMap.get(gene.name)!;\n existing.versions.push({ id: gene.id, version: versions[idx] });\n }\n });\n });\n\n // Convert map to array and fetch descriptions\n const out = await Promise.all(\n Array.from(geneMap.values()).map(async ({ gene, versions }) => {\n const description = await getDescription(gene.name);\n return {\n ...gene,\n description: `${toTitleCase(description || gene.name)}`,\n versions,\n };\n })\n );\n\n return out;\n};\nconst toTitleCase = (str: string) =>\n str\n .split(\" \")\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n .join(\" \");\n\nasync function getDescription(name: string): Promise<string | null> {\n const response = await fetch(\n \"https://clinicaltables.nlm.nih.gov/api/ncbi_genes/v3/search?authenticity_token=&terms=\" + name.toUpperCase()\n );\n const data = await response.json();\n const matches = data[3] && data[3].filter((x: string[]) => x[3] === name.toUpperCase());\n return matches && matches.length >= 1 ? matches[0][4] : null;\n}\n\nexport const getSNPs = async (value: string, assembly: GenomeSearchProps[\"assembly\"], limit: number, signal?: AbortSignal) => {\n const response = await fetch(\"https://screen.api.wenglab.org/graphql\", {\n method: \"POST\",\n body: JSON.stringify({\n query: SNP_AUTOCOMPLETE_QUERY,\n variables: {\n assembly: assembly.toLowerCase(),\n snpid: value,\n limit: limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getStudys = async (value: string, limit: number, signal?: AbortSignal) => {\n const response = await fetch(\"https://screen.api.wenglab.org/graphql\", {\n method: \"POST\",\n body: JSON.stringify({\n query: GWAS_AUTOCOMPLETE_QUERY,\n variables: {\n studyname_prefix: [value],\n limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n\n return response.json();\n};\n"],"names":["SNP_AUTOCOMPLETE_QUERY","GENE_AUTOCOMPLETE_QUERY","ICRE_AUTOCOMPLETE_QUERY","CCRE_AUTOCOMPLETE_QUERY","LEGACY_CCRE_QUERY","GWAS_AUTOCOMPLETE_QUERY","getICREs","value","limit","signal","fetch","method","body","JSON","stringify","query","variables","accession_prefix","headers","json","getCCREs","assembly","showiCREFlag","toLowerCase","includeiCREs","getLegacyCCREs","accessions","getGenes","geneVersions","versions","sort","a","b","versionResults","Promise","all","map","version","name_prefix","then","res","geneMap","Map","forEach","result","idx","genes","data","gene","has","name","get","push","id","set","Array","from","values","description","getDescription","toTitleCase","str","split","word","charAt","toUpperCase","slice","join","matches","filter","x","length","getSNPs","snpid","getStudys","studyname_prefix"],"mappings":"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"}
1
+ {"version":3,"file":"ui-components.es64.js","sources":["../src/components/GenomeSearch/queries.ts"],"sourcesContent":["import { GenomeSearchProps } from \"./types\";\n\nexport const SNP_AUTOCOMPLETE_QUERY = `\n query suggestions($assembly: String!, $snpid: String!, $limit: Int) {\n snpAutocompleteQuery(assembly: $assembly, snpid: $snpid, limit: $limit) {\n id\n coordinates {\n chromosome\n start\n end\n }\n }\n }\n`;\n\nexport const GENE_AUTOCOMPLETE_QUERY = `\n query Genes(\n $name_prefix: [String!]\n $idprefix: [String!]\n $limit: Int\n $assembly: String!\n $version: Int\n ) {\n gene(\n name_prefix: $name_prefix\n idprefix: $idprefix\n limit: $limit\n assembly: $assembly\n orderby: \"name\"\n version: $version\n ) {\n id\n name\n coordinates {\n chromosome\n start\n end\n }\n }\n }\n`;\n\nexport const ICRE_AUTOCOMPLETE_QUERY = `\n query iCREQuery($accession_prefix: [String!], $limit: Int) {\n iCREQuery(accession_prefix: $accession_prefix, limit: $limit) {\n rdhs\n accession\n celltypes\n coordinates {\n start\n end\n chromosome\n }\n }\n }\n`;\n\nexport const CCRE_AUTOCOMPLETE_QUERY = `\n query cCREAutocompleteQuery(\n $accession: [String!]\n $accession_prefix: [String!]\n $assembly: String!\n $includeiCREs: Boolean\n $limit: Int\n ) {\n cCREAutocompleteQuery(\n includeiCREs: $includeiCREs\n assembly: $assembly\n limit: $limit\n accession: $accession\n accession_prefix: $accession_prefix\n ) {\n accession\n isiCRE\n coordinates {\n chromosome\n start\n end\n }\n }\n }\n`;\n\nexport const LEGACY_CCRE_QUERY = `\n query getv2v3CcreMapping($accessions: [String], $assembly: String!) {\n ccreMappings: getv2cCREMappings(\n v2_accession: $accessions\n assembly: $assembly\n ) {\n input: v2_accession\n input_latest_previous_version: ccre_version\n input_region: v2_region\n v4_match_or_intersecting: v4_accession\n v4_region\n }\n }\n`\n\nexport const GWAS_AUTOCOMPLETE_QUERY = `\nquery getGWASStudyMetadata($limit: Int, $studyname_prefix: [String]){\n getGWASStudiesMetadata(limit: $limit, studyname_prefix: $studyname_prefix )\n {\n studyid\n author\n disease_trait\n has_enrichment_info\n population\n parent_terms\n total_ld_blocks\n ld_blocks_overlapping_ccres\n overlapping_ccres\n }\n}\n`;\n\nexport const getICREs = async (value: string, limit: number, url: string, signal?: AbortSignal) => {\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({\n query: ICRE_AUTOCOMPLETE_QUERY,\n variables: {\n accession_prefix: [value],\n limit: limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getCCREs = async (value: string, assembly: GenomeSearchProps[\"assembly\"], limit: number, showiCREFlag: boolean, url: string, signal?: AbortSignal) => {\n const isExactAccession = value.length === 12;\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({\n query: CCRE_AUTOCOMPLETE_QUERY,\n variables: {\n ...(isExactAccession\n ? { accession: [value.toUpperCase()] }\n : { accession_prefix: [value] }),\n assembly,\n limit,\n includeiCREs: showiCREFlag,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getLegacyCCREs = async (value: string, assembly: GenomeSearchProps[\"assembly\"], url: string, signal?: AbortSignal) => {\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({\n query: LEGACY_CCRE_QUERY,\n variables: {\n accessions: [value],\n assembly,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getGenes = async (\n value: string,\n assembly: GenomeSearchProps[\"assembly\"],\n limit: number,\n geneVersions: GenomeSearchProps[\"geneVersion\"],\n url: string,\n signal?: AbortSignal\n) => {\n let versions = geneVersions\n ? typeof geneVersions === \"number\"\n ? [geneVersions]\n : geneVersions\n : [assembly === \"GRCh38\" ? 40 : 25];\n\n // sort versions from high to low (prioritize newest versions in map)\n versions = versions.sort((a, b) => b - a);\n\n // Fetch genes for all versions\n const versionResults = await Promise.all(\n versions.map((version) =>\n fetch(url, {\n method: \"POST\",\n body: JSON.stringify({\n query: GENE_AUTOCOMPLETE_QUERY,\n variables: {\n assembly: assembly.toLowerCase(),\n ...(value.toUpperCase().startsWith(\"ENSG\") ? { idprefix: value.split(\".\")[0] } : { name_prefix: value }),\n version: version,\n limit: limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n }).then((res) => res.json())\n )\n );\n\n // Combine and deduplicate results\n const geneMap = new Map<string, { gene: any; versions: { id: string; version: number }[] }>();\n\n versionResults.forEach((result, idx) => {\n const genes = result.data.gene || [];\n genes.forEach((gene: any) => {\n if (!geneMap.has(gene.name)) {\n geneMap.set(gene.name, { gene, versions: [{ id: gene.id, version: versions[idx] }] });\n } else {\n // if gene already exists, just add legacy versions to list.\n const existing = geneMap.get(gene.name)!;\n existing.versions.push({ id: gene.id, version: versions[idx] });\n }\n });\n });\n\n // Convert map to array and fetch descriptions\n const out = await Promise.all(\n Array.from(geneMap.values()).map(async ({ gene, versions }) => {\n const description = await getDescription(gene.name);\n return {\n ...gene,\n description: `${toTitleCase(description || gene.name)}`,\n versions,\n };\n })\n );\n\n return out;\n};\nconst toTitleCase = (str: string) =>\n str\n .split(\" \")\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n .join(\" \");\n\nasync function getDescription(name: string): Promise<string | null> {\n try {\n const response = await fetch(\n \"https://clinicaltables.nlm.nih.gov/api/ncbi_genes/v3/search?authenticity_token=&terms=\" + name.toUpperCase()\n );\n const data = await response.json();\n const matches = data[3] && data[3].filter((x: string[]) => x[3] === name.toUpperCase());\n return matches && matches.length >= 1 ? matches[0][4] : null;\n } catch {\n return null;\n }\n}\n\nexport const getSNPs = async (value: string, assembly: GenomeSearchProps[\"assembly\"], limit: number, url: string, signal?: AbortSignal) => {\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({\n query: SNP_AUTOCOMPLETE_QUERY,\n variables: {\n assembly: assembly.toLowerCase(),\n snpid: value,\n limit: limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n return response.json();\n};\n\nexport const getStudys = async (value: string, limit: number, url: string, signal?: AbortSignal) => {\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({\n query: GWAS_AUTOCOMPLETE_QUERY,\n variables: {\n studyname_prefix: [value],\n limit,\n },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n signal,\n });\n\n return response.json();\n};\n"],"names":["SNP_AUTOCOMPLETE_QUERY","GENE_AUTOCOMPLETE_QUERY","ICRE_AUTOCOMPLETE_QUERY","CCRE_AUTOCOMPLETE_QUERY","LEGACY_CCRE_QUERY","GWAS_AUTOCOMPLETE_QUERY","getICREs","value","limit","url","signal","fetch","method","body","JSON","stringify","query","variables","accession_prefix","headers","json","getCCREs","assembly","showiCREFlag","isExactAccession","length","accession","toUpperCase","includeiCREs","getLegacyCCREs","accessions","getGenes","geneVersions","versions","sort","a","b","versionResults","Promise","all","map","version","toLowerCase","startsWith","idprefix","split","name_prefix","then","res","geneMap","Map","forEach","result","idx","genes","data","gene","has","name","get","push","id","set","Array","from","values","description","getDescription","toTitleCase","str","word","charAt","slice","join","matches","filter","x","getSNPs","snpid","getStudys","studyname_prefix"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { __exports as e } from "./ui-components.es75.js";
1
+ import { __exports as e } from "./ui-components.es74.js";
2
2
  var s;
3
3
  function a() {
4
4
  if (s) return e;
@@ -1,4 +1,4 @@
1
- import { __exports as s } from "./ui-components.es76.js";
1
+ import { __exports as s } from "./ui-components.es75.js";
2
2
  import J from "react";
3
3
  var j;
4
4
  function Z() {
@@ -1,4 +1,4 @@
1
- import { __exports as e } from "./ui-components.es73.js";
1
+ import { __exports as e } from "./ui-components.es76.js";
2
2
  import o from "react";
3
3
  var r;
4
4
  function n() {
@@ -1,4 +1,4 @@
1
- import { __exports as e } from "./ui-components.es74.js";
1
+ import { __exports as e } from "./ui-components.es77.js";
2
2
  import a from "react";
3
3
  var n;
4
4
  function l() {