@sjcrh/proteinpaint-client 2.211.0 → 2.212.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 (883) hide show
  1. package/dist/2dmaf-R23YQDZC.js +1367 -0
  2. package/dist/AggMatrixInput-4DIGZZN4.js +406 -0
  3. package/dist/AggregateMatrix-TF6XXFUN.js +41 -0
  4. package/dist/AppHeader-JB5HPAOQ.js +830 -0
  5. package/dist/BoxPlot-47TUXQDP.js +1208 -0
  6. package/dist/CorrelationVolcano-G7K5JEPM.js +617 -0
  7. package/dist/Cuminc-LBXPOENU.js +1220 -0
  8. package/dist/Cuminc-LBXPOENU.js.map +7 -0
  9. package/dist/DE-JSWA6HXV.js +89 -0
  10. package/dist/DEinput-LEYRVYK6.js +501 -0
  11. package/dist/DM-332QECUP.js +90 -0
  12. package/dist/DifferentialAnalysis-JGH2OMTH.js +239 -0
  13. package/dist/Disco-36PJXFM6.js +3389 -0
  14. package/dist/Disco.UI-PY2KOGKY.js +243 -0
  15. package/dist/DmrPlot-5WMOBZOJ.js +362 -0
  16. package/dist/GB-6WWLTBIW.js +1392 -0
  17. package/dist/GSEA-GYUVO2XA.js +875 -0
  18. package/dist/GeneExpInput-UABEICGS.js +42 -0
  19. package/dist/Geomap-QB6FNV5R.js +84 -0
  20. package/dist/HicApp-TQKQKJTN.js +2245 -0
  21. package/dist/IDCViewer-L27ICGR5.js +10812 -0
  22. package/dist/NumBinaryEditor-FHSSXZV4.js +279 -0
  23. package/dist/NumBinaryEditor.unit.spec-AMR32JHJ.js +312 -0
  24. package/dist/NumContEditor-R5JB5XPB.js +105 -0
  25. package/dist/NumContEditor.unit.spec-3PQRIC4G.js +164 -0
  26. package/dist/NumCustomBinEditor-B3PKD54F.js +33 -0
  27. package/dist/NumCustomBinEditor.unit.spec-YZKCYZQM.js +397 -0
  28. package/dist/NumDiscreteEditor-7AO35XU7.js +170 -0
  29. package/dist/NumDiscreteEditor.unit.spec-SNDHS6VK.js +233 -0
  30. package/dist/NumRegularBinEditor-OREKM2DX.js +33 -0
  31. package/dist/NumRegularBinEditor.unit.spec-SIGD7PLE.js +278 -0
  32. package/dist/NumSplineEditor-RDFDVNJG.js +210 -0
  33. package/dist/NumSplineEditor.unit.spec-TXRQVLUE.js +224 -0
  34. package/dist/NumericDensity-QPDF6UU5.js +33 -0
  35. package/dist/NumericDensity.unit.spec-JYUYDHDG.js +418 -0
  36. package/dist/NumericHandler-JW6DLSMJ.js +34 -0
  37. package/dist/NumericHandler.unit.spec-Q2ZNM5NH.js +214 -0
  38. package/dist/ProteomeInput-OS5JWC2O.js +388 -0
  39. package/dist/Regression-53XPZCCQ.js +1416 -0
  40. package/dist/RunChart2-WEO42KPP.js +749 -0
  41. package/dist/SC-VAWRWOUI.js +1348 -0
  42. package/dist/SC-VAWRWOUI.js.map +7 -0
  43. package/dist/Violin-7VOFUOLE.js +1064 -0
  44. package/dist/Volcano-DI2RLILX.js +2456 -0
  45. package/dist/Wsi-6DNY4RUG.js +629 -0
  46. package/dist/adSandbox-B7GQZDYQ.js +33 -0
  47. package/dist/animatedBubbleChart-QGO3OY5E.js +547 -0
  48. package/dist/app-XBLP7YZQ.js +32 -0
  49. package/dist/app-ZARZ2HWS.js +42 -0
  50. package/dist/app.js +12 -12
  51. package/dist/bam-FGNF7RYM.js +876 -0
  52. package/dist/barchart-6YLJJSRO.js +42 -0
  53. package/dist/barchart2-7TTZPYWA.js +309 -0
  54. package/dist/block-7WZWBQVA.js +6250 -0
  55. package/dist/block.init-YN4KHHJ2.js +33 -0
  56. package/dist/block.mds.expressionrank-6PKN3KIE.js +354 -0
  57. package/dist/block.mds.geneboxplot-M6TXRPKO.js +823 -0
  58. package/dist/block.mds.junction-WKRLLJBT.js +1539 -0
  59. package/dist/block.mds.svcnv-I3DNNGYV.js +6796 -0
  60. package/dist/block.svg-D72WTLKP.js +159 -0
  61. package/dist/block.tk.aicheck-QT5WYKTQ.js +278 -0
  62. package/dist/block.tk.ase-3WGJONXX.js +360 -0
  63. package/dist/block.tk.bam-Q5X7D5IR.js +1901 -0
  64. package/dist/block.tk.bedgraphdot-VWE2D2HR.js +379 -0
  65. package/dist/block.tk.bigwig.ui-Q22KXFQT.js +206 -0
  66. package/dist/block.tk.hicstraw-3BMDZCQH.js +818 -0
  67. package/dist/block.tk.junction-BMKRAVUI.js +2358 -0
  68. package/dist/block.tk.junction.textmatrixui-ERLXPLGI.js +194 -0
  69. package/dist/block.tk.ld-KT5KQUXC.js +94 -0
  70. package/dist/block.tk.menu-RO7IJGFY.js +1024 -0
  71. package/dist/block.tk.pgv-PZ4AVD3V.js +938 -0
  72. package/dist/brainImaging-ZU3JSXFP.js +555 -0
  73. package/dist/brainRegions-DJELNKKN.js +217 -0
  74. package/dist/bubbleHeatmap-CPJ5KI6E.js +378 -0
  75. package/dist/cellTypeBubbleHeatmap-6NGBETXV.js +278 -0
  76. package/dist/chunk-232OR2PG.js +263 -0
  77. package/dist/chunk-26Y2MYFN.js +129 -0
  78. package/dist/chunk-33FULV5M.js +302 -0
  79. package/dist/chunk-3AXQF6GL.js +103 -0
  80. package/dist/chunk-3JHCCJ4I.js +54 -0
  81. package/dist/chunk-4S7TWVOY.js +397 -0
  82. package/dist/chunk-4ZVOO3NI.js +217 -0
  83. package/dist/chunk-5U7AYOEZ.js +1988 -0
  84. package/dist/chunk-5WIA4KFA.js +178 -0
  85. package/dist/chunk-5WMFEMII.js +550 -0
  86. package/dist/chunk-6OCWNYW3.js +49 -0
  87. package/dist/chunk-6UAY2HAB.js +5217 -0
  88. package/dist/chunk-6UAY2HAB.js.map +7 -0
  89. package/dist/chunk-753GDKSC.js +562 -0
  90. package/dist/chunk-7AOA5WZY.js +274 -0
  91. package/dist/chunk-A4D2Z2LV.js +141 -0
  92. package/dist/chunk-AUJHCGU2.js +14 -0
  93. package/dist/chunk-CWLHJ7AC.js +80 -0
  94. package/dist/chunk-DU52GAOJ.js +783 -0
  95. package/dist/chunk-DVWCDEN3.js +480 -0
  96. package/dist/chunk-E24IUWHH.js +294 -0
  97. package/dist/chunk-G4A3ZDDS.js +446 -0
  98. package/dist/chunk-HH5JKOE6.js +339 -0
  99. package/dist/chunk-HL5B4NME.js +379 -0
  100. package/dist/chunk-HYOCZPKO.js +281 -0
  101. package/dist/chunk-I6P4LZP3.js +194 -0
  102. package/dist/chunk-IBZVZZ5J.js +176 -0
  103. package/dist/chunk-JZQEDIGZ.js +518 -0
  104. package/dist/chunk-LK7XDEFW.js +1339 -0
  105. package/dist/chunk-MXJKO73I.js +272 -0
  106. package/dist/chunk-N6NL4XG2.js +2676 -0
  107. package/dist/chunk-NC4RKYVE.js +158 -0
  108. package/dist/chunk-NK235VQ6.js +4375 -0
  109. package/dist/chunk-NK235VQ6.js.map +7 -0
  110. package/dist/chunk-O3QKYUDH.js +1812 -0
  111. package/dist/chunk-O3QKYUDH.js.map +7 -0
  112. package/dist/chunk-OSYSJHAA.js +170 -0
  113. package/dist/chunk-PBWB5ZG2.js +240 -0
  114. package/dist/chunk-PCJF5MGF.js +203 -0
  115. package/dist/chunk-PF5UMQEJ.js +692 -0
  116. package/dist/chunk-PGRTCNOV.js +217 -0
  117. package/dist/chunk-Q6I2OH4P.js +182 -0
  118. package/dist/chunk-QOF27J24.js +6360 -0
  119. package/dist/chunk-QWCKIRW2.js +237 -0
  120. package/dist/chunk-R3LWGFGS.js +54 -0
  121. package/dist/chunk-REWUPST7.js +1233 -0
  122. package/dist/chunk-RMUK3TLD.js +2149 -0
  123. package/dist/chunk-RU2UHH7M.js +424 -0
  124. package/dist/chunk-RU2UHH7M.js.map +7 -0
  125. package/dist/chunk-RXQRCRHC.js +134 -0
  126. package/dist/chunk-SAMS5XBH.js +2902 -0
  127. package/dist/chunk-SXYZ274A.js +2327 -0
  128. package/dist/chunk-TAZQU2LC.js +339 -0
  129. package/dist/chunk-TFS2JZTH.js +34 -0
  130. package/dist/chunk-UFQDWGZU.js +102 -0
  131. package/dist/chunk-UJRURRJ2.js +55 -0
  132. package/dist/chunk-UWRWFS3K.js +1278 -0
  133. package/dist/chunk-UYSYZM45.js +468 -0
  134. package/dist/chunk-VHDYIOWU.js +25009 -0
  135. package/dist/chunk-VHDYIOWU.js.map +7 -0
  136. package/dist/chunk-VPOAFNVL.js +70 -0
  137. package/dist/chunk-WB57TMJN.js +56 -0
  138. package/dist/chunk-WILJJPWV.js +255 -0
  139. package/dist/chunk-X2HEDRFQ.js +102 -0
  140. package/dist/chunk-X3UNVPC5.js +626 -0
  141. package/dist/chunk-XL4N3H32.js +276 -0
  142. package/dist/chunk-XNKLJMGF.js +123 -0
  143. package/dist/chunk-XZCRYWVL.js +243 -0
  144. package/dist/chunk-Y4MV62JA.js +56 -0
  145. package/dist/chunk-YKI4GLMT.js +98 -0
  146. package/dist/chunk-ZKINKYOJ.js +2784 -0
  147. package/dist/chunk-ZMSTQP6O.js +299 -0
  148. package/dist/cohort-CWGZR37O.js +70 -0
  149. package/dist/condition-B6XBQML4.js +327 -0
  150. package/dist/controls-QPW5HUAY.js +34 -0
  151. package/dist/controls.config-IUYTWRHA.js +34 -0
  152. package/dist/correlation-M2NKGTK2.js +95 -0
  153. package/dist/customdata.inputui-RKYIMOWO.js +284 -0
  154. package/dist/dataDownload-LPBLB7QD.js +329 -0
  155. package/dist/databrowser.ui-VTWHELDY.js +425 -0
  156. package/dist/dictionary-NINKMF3F.js +113 -0
  157. package/dist/dnaMethylation-LSVNG7FK.js +33 -0
  158. package/dist/dnaMethylation.integration.spec-6IT3Y3FS.js +198 -0
  159. package/dist/dofetch-HLMSTOMY.js +48 -0
  160. package/dist/e2pca-6PKLCC7L.js +344 -0
  161. package/dist/ep-3RFB6K3B.js +1249 -0
  162. package/dist/expclust.gdc.spec-MEWKHFMD.js +302 -0
  163. package/dist/facet-A4JH7FCW.js +519 -0
  164. package/dist/gb-PTF7CLDG.js +81 -0
  165. package/dist/geneExpClustering-VKUIAYCK.js +244 -0
  166. package/dist/geneExpression-3GQFWVJL.js +310 -0
  167. package/dist/geneExpression-VC7QPM3T.js +33 -0
  168. package/dist/geneExpression.unit.spec-PQS7BOMF.js +128 -0
  169. package/dist/geneORA-FCMFWZTN.js +273 -0
  170. package/dist/geneRanking-RTPPGBD4.js +548 -0
  171. package/dist/geneVariant-2TQ2JD4K.js +36 -0
  172. package/dist/geneVariant-4S6FLJTN.js +289 -0
  173. package/dist/geneVariant.integration.spec-YTFFHWQP.js +503 -0
  174. package/dist/genefusion.ui-P7YH32A6.js +303 -0
  175. package/dist/geneset-4J43JA3C.js +203 -0
  176. package/dist/genomeBrowser.spec-T2VFNUAV.js +276 -0
  177. package/dist/grin2-5TH4EBVQ.js +949 -0
  178. package/dist/grin2-KXMSYYYM.js +70 -0
  179. package/dist/hierCluster-2HFMEHAD.js +59 -0
  180. package/dist/hierCluster-5RQV7B5I.js +55 -0
  181. package/dist/hierCluster.config-PNBGJE6F.js +36 -0
  182. package/dist/hierCluster.integration.spec-TZLVKUC5.js +483 -0
  183. package/dist/hierCluster.interactivity-OQD3IQ4X.js +49 -0
  184. package/dist/hierCluster.renderers-DUDSHKDT.js +19 -0
  185. package/dist/imagePlot-6YH7S2PV.js +156 -0
  186. package/dist/importPlot-Z2UKA456.js +8 -0
  187. package/dist/isoformExpression-SRJMGXHD.js +35 -0
  188. package/dist/isoformExpression.unit.spec-PBVKSWCS.js +237 -0
  189. package/dist/junction-D4UP2AGY.js +36 -0
  190. package/dist/junction.unit.spec-M5CEGNUE.js +182 -0
  191. package/dist/launch.adhoc-SWJOT47S.js +37 -0
  192. package/dist/leftlabel.sample-4ZAM2JSS.js +258 -0
  193. package/dist/lollipop-GMGJPMJN.js +166 -0
  194. package/dist/maf-2TFOOAIF.js +455 -0
  195. package/dist/maftimeline-DRBM4ZYD.js +587 -0
  196. package/dist/matrix-22R4BC3F.js +54 -0
  197. package/dist/matrix-W4IRSBO5.js +59 -0
  198. package/dist/matrix.cells-QKWO5EP4.js +26 -0
  199. package/dist/matrix.config-ZZ7NFCIT.js +37 -0
  200. package/dist/matrix.data-3W6P6NBU.js +23 -0
  201. package/dist/matrix.groups-XW2G5BJH.js +26 -0
  202. package/dist/matrix.integration.spec-X4UPLQRI.js +3160 -0
  203. package/dist/matrix.interactivity-NGS3LJPV.js +37 -0
  204. package/dist/matrix.layout-SAGZVQPG.js +39 -0
  205. package/dist/matrix.legend-C3MQRAZJ.js +20 -0
  206. package/dist/matrix.renderers-IG7Q2F6Y.js +34 -0
  207. package/dist/matrix.serieses-SNMIQFKB.js +19 -0
  208. package/dist/matrix.sort-WHVUSUJZ.js +26 -0
  209. package/dist/matrix.sort.unit.spec-DCWR5PZJ.js +468 -0
  210. package/dist/matrix.sorterUi.unit.spec-EBLSCLDL.js +338 -0
  211. package/dist/matrix.unit.spec-I6JGZHQZ.js +150 -0
  212. package/dist/mavb-MLVNZJSF.js +727 -0
  213. package/dist/mds.fimo-MOGZPFCK.js +513 -0
  214. package/dist/mds.samplescatterplot-YLGNYKTH.js +1545 -0
  215. package/dist/mds.survivalplot-R273N2GB.js +477 -0
  216. package/dist/multivalue-5GFBYENI.js +83 -0
  217. package/dist/numericDictTermCluster-MJK6SIWE.js +63 -0
  218. package/dist/oncomatrix-OAQT2CUN.js +290 -0
  219. package/dist/oncomatrix.spec-6C62LLJI.js +443 -0
  220. package/dist/plot.2dvaf-WDXWSC7L.js +372 -0
  221. package/dist/plot.app-YTHD3ZJQ.js +36 -0
  222. package/dist/plot.barplot-SRZM3GU3.js +97 -0
  223. package/dist/plot.boxplot-VWOMZPZE.js +146 -0
  224. package/dist/plot.brainImaging-6XL7YF5G.js +51 -0
  225. package/dist/plot.disco-VRKSTV5Z.js +99 -0
  226. package/dist/plot.ssgq-AXASDOZZ.js +134 -0
  227. package/dist/plot.vaf2cov-IF4DEEM5.js +253 -0
  228. package/dist/polar2-QQ3KHFME.js +232 -0
  229. package/dist/profileForms-2US7IYYM.js +941 -0
  230. package/dist/profilePlot-DZQCBKPA.js +49 -0
  231. package/dist/proteinView-TTLVQ43H.js +1357 -0
  232. package/dist/proteomeCohortCompare-BUZYOOIA.js +912 -0
  233. package/dist/pseudbulk.unit.spec-YNXQWDSU.js +86 -0
  234. package/dist/pseudobulk-VSXK2PTM.js +35 -0
  235. package/dist/qualitative-AKIZRNFO.js +38 -0
  236. package/dist/radar2-7GXYLICJ.js +327 -0
  237. package/dist/radarFacility2-WFKOWGH2.js +335 -0
  238. package/dist/render-F3CBMRD5.js +33 -0
  239. package/dist/report-6LHMHUDY.js +217 -0
  240. package/dist/sampleView-GWKPMVJH.js +43 -0
  241. package/dist/samplelst-TH6IBDVG.js +106 -0
  242. package/dist/samplematrix-RPCWT33H.js +2193 -0
  243. package/dist/sc-BFBHBAXF.js +81 -0
  244. package/dist/scatter-3IC6HOT7.js +925 -0
  245. package/dist/scatter-L6R6J2LC.js +88 -0
  246. package/dist/selectGenomeWithTklst-3ZK7FIOP.js +129 -0
  247. package/dist/singleCellCellType-CLJFCBV6.js +33 -0
  248. package/dist/singleCellCellType.unit.spec-W32PSTRO.js +154 -0
  249. package/dist/singleCellGeneExpression-L6MG37XE.js +33 -0
  250. package/dist/singleCellGeneExpression.unit.spec-SF46JHCU.js +148 -0
  251. package/dist/singleCellNumericValue-7QXK6KVZ.js +33 -0
  252. package/dist/singleCellNumericValue.unit.spec-VC7NQYM2.js +416 -0
  253. package/dist/singleCellPlot-5TRNRKPN.js +48 -0
  254. package/dist/singlecell-2YV3UAIQ.js +1566 -0
  255. package/dist/singlecell-I4PHM2LZ.js +81 -0
  256. package/dist/snp-ZIA4YWCZ.js +33 -0
  257. package/dist/snp.unit.spec-MVQHY4WJ.js +171 -0
  258. package/dist/snplocus-GM6IEDPR.js +203 -0
  259. package/dist/spliceevent.a53ss.diagram-ZFQDHHPY.js +146 -0
  260. package/dist/spliceevent.exonskip.diagram-ZK6JOUMU.js +278 -0
  261. package/dist/spliceevent.noeventdiagram-YKTF2VZE.js +455 -0
  262. package/dist/ssGSEA-FDN4CH2Y.js +33 -0
  263. package/dist/ssGSEA.unit.spec-YEUJBT6Z.js +83 -0
  264. package/dist/stattable-WIZRSKPH.js +117 -0
  265. package/dist/studyCatalog-X2IGVJ26.js +414 -0
  266. package/dist/summarizeCnvGeneexp-H7A5SI3R.js +158 -0
  267. package/dist/summarizeGeneexpSurvival-GJF6VD2S.js +105 -0
  268. package/dist/summarizeMutationCnv-WQLMD2TR.js +159 -0
  269. package/dist/summarizeMutationDiagnosis-3S52IDWF.js +35 -0
  270. package/dist/summarizeMutationSurvival-NTQIUNW7.js +99 -0
  271. package/dist/summary-LMRFRKKI.js +44 -0
  272. package/dist/summary.integration.spec-KQMZKSEQ.js +409 -0
  273. package/dist/summaryInput-NNHZVHQA.js +242 -0
  274. package/dist/sunburst-ICUSGIWV.js +278 -0
  275. package/dist/survival-K44Q2HAC.js +1249 -0
  276. package/dist/survival-K44Q2HAC.js.map +7 -0
  277. package/dist/survival-K5YBNNVE.js +53 -0
  278. package/dist/survival.integration.spec-4LRJW2V2.js +613 -0
  279. package/dist/svgraph-U7MS7YEM.js +1382 -0
  280. package/dist/svmr-2JGDBPAI.js +3837 -0
  281. package/dist/table-CBWOHYW6.js +197 -0
  282. package/dist/termCollection-JFGGXVFI.js +252 -0
  283. package/dist/termCollection-VE3FFL6V.js +33 -0
  284. package/dist/termCollection.unit.spec-XQQTDV4A.js +299 -0
  285. package/dist/termCollectionFractionSelection-TFGF27GR.js +42 -0
  286. package/dist/termCollectionFractionSelection.unit.spec-MKGG4JBC.js +188 -0
  287. package/dist/tk-74SGUUZY.js +41 -0
  288. package/dist/tk-K4JFYIZY.js +1121 -0
  289. package/dist/tp.ui-727EXXMT.js +1454 -0
  290. package/dist/tvs.dt-YB2C3T33.js +34 -0
  291. package/dist/tvs.dtcnv.categorical-NOWMZOE5.js +35 -0
  292. package/dist/tvs.dtcnv.continuous-3KWUNU76.js +67 -0
  293. package/dist/tvs.dtfusion-NOJSTABU.js +35 -0
  294. package/dist/tvs.dtitd-OD5B377P.js +35 -0
  295. package/dist/tvs.dtsnvindel-WIQMZTRH.js +35 -0
  296. package/dist/tvs.dtsv-HPERDN3R.js +35 -0
  297. package/dist/tvs.samplelst-TC2Z7Z35.js +98 -0
  298. package/dist/tvs.termCollection-F64BHWAL.js +122 -0
  299. package/dist/vocabulary-ZOYF2VHS.js +36 -0
  300. package/dist/wsi.direct-Z5YUZEXG.js +8343 -0
  301. package/package.json +3 -3
  302. package/dist/2dmaf-FEZRNHDF.js +0 -1367
  303. package/dist/AggMatrixInput-6FJIELYO.js +0 -406
  304. package/dist/AggregateMatrix-MUPBUGIZ.js +0 -41
  305. package/dist/AppHeader-ZTNZ62UL.js +0 -830
  306. package/dist/BoxPlot-P5SVFYSB.js +0 -1208
  307. package/dist/CorrelationVolcano-42NYXAXG.js +0 -617
  308. package/dist/Cuminc-6AKLT6HF.js +0 -1219
  309. package/dist/Cuminc-6AKLT6HF.js.map +0 -7
  310. package/dist/DE-KJHFZWND.js +0 -89
  311. package/dist/DEinput-HXB3LYZW.js +0 -501
  312. package/dist/DM-AAHX4PLH.js +0 -90
  313. package/dist/DifferentialAnalysis-JX4EDEOY.js +0 -239
  314. package/dist/Disco-GXKO4QQH.js +0 -3389
  315. package/dist/Disco.UI-DGD4RXJP.js +0 -243
  316. package/dist/DmrPlot-DQ3XTMTN.js +0 -362
  317. package/dist/GB-OUWNNBBK.js +0 -1392
  318. package/dist/GSEA-DSKGFAPG.js +0 -875
  319. package/dist/GeneExpInput-FZLOBE2Q.js +0 -42
  320. package/dist/Geomap-GP5KD3OX.js +0 -84
  321. package/dist/HicApp-2N6WYWZX.js +0 -2245
  322. package/dist/IDCViewer-MSUC7IXX.js +0 -10812
  323. package/dist/NumBinaryEditor-C4G2IH36.js +0 -279
  324. package/dist/NumBinaryEditor.unit.spec-ZAVAUGXA.js +0 -312
  325. package/dist/NumContEditor-VEEMMWHX.js +0 -105
  326. package/dist/NumContEditor.unit.spec-65ORC42O.js +0 -164
  327. package/dist/NumCustomBinEditor-YIUHJAXP.js +0 -33
  328. package/dist/NumCustomBinEditor.unit.spec-NT5VK2LO.js +0 -397
  329. package/dist/NumDiscreteEditor-A4WELAJH.js +0 -170
  330. package/dist/NumDiscreteEditor.unit.spec-7QABM6KK.js +0 -233
  331. package/dist/NumRegularBinEditor-IPVPLSQY.js +0 -33
  332. package/dist/NumRegularBinEditor.unit.spec-Q4DMWATB.js +0 -278
  333. package/dist/NumSplineEditor-5E6CIWLP.js +0 -210
  334. package/dist/NumSplineEditor.unit.spec-DHJF5F6H.js +0 -224
  335. package/dist/NumericDensity-GXMWWK2A.js +0 -33
  336. package/dist/NumericDensity.unit.spec-OAPOMSEW.js +0 -418
  337. package/dist/NumericHandler-H5WHGFXD.js +0 -34
  338. package/dist/NumericHandler.unit.spec-PBNOJEMS.js +0 -214
  339. package/dist/ProteomeInput-ZA7R5S43.js +0 -388
  340. package/dist/Regression-WSWTSXFX.js +0 -1416
  341. package/dist/RunChart2-J5CTJI5C.js +0 -749
  342. package/dist/SC-POCQDMWZ.js +0 -1181
  343. package/dist/SC-POCQDMWZ.js.map +0 -7
  344. package/dist/Violin-VA6FBRUQ.js +0 -1064
  345. package/dist/Volcano-4IEQIEDS.js +0 -2456
  346. package/dist/Wsi-LJ6AY5RI.js +0 -629
  347. package/dist/adSandbox-EIN4KEML.js +0 -33
  348. package/dist/animatedBubbleChart-LINYUKMD.js +0 -547
  349. package/dist/app-SE7UQ5DB.js +0 -42
  350. package/dist/app-VGMZNGWP.js +0 -32
  351. package/dist/bam-ZXEZWRSZ.js +0 -876
  352. package/dist/barchart-N4B4C2FO.js +0 -42
  353. package/dist/barchart2-EDVEWTVX.js +0 -309
  354. package/dist/block-E7YUGCHL.js +0 -6250
  355. package/dist/block.init-FSOCF2IM.js +0 -33
  356. package/dist/block.mds.expressionrank-EDBTITXU.js +0 -354
  357. package/dist/block.mds.geneboxplot-GG5672SY.js +0 -823
  358. package/dist/block.mds.junction-HUC4S24K.js +0 -1539
  359. package/dist/block.mds.svcnv-EQHYCIBU.js +0 -6796
  360. package/dist/block.svg-HBVPUQJ2.js +0 -159
  361. package/dist/block.tk.aicheck-TRJ5IIWZ.js +0 -278
  362. package/dist/block.tk.ase-COV7YYYO.js +0 -360
  363. package/dist/block.tk.bam-MDSLY6NH.js +0 -1901
  364. package/dist/block.tk.bedgraphdot-MKWEL53X.js +0 -379
  365. package/dist/block.tk.bigwig.ui-UKKJX7TA.js +0 -206
  366. package/dist/block.tk.hicstraw-6LNXEIOF.js +0 -818
  367. package/dist/block.tk.junction-F3SERFFD.js +0 -2358
  368. package/dist/block.tk.junction.textmatrixui-2XUMSKLS.js +0 -194
  369. package/dist/block.tk.ld-COP5RUJJ.js +0 -94
  370. package/dist/block.tk.menu-SRDPD44N.js +0 -1024
  371. package/dist/block.tk.pgv-3SVINTXN.js +0 -938
  372. package/dist/brainImaging-UNBA4KA3.js +0 -555
  373. package/dist/brainRegions-DC6TQB53.js +0 -217
  374. package/dist/bubbleHeatmap-X3W3AZJY.js +0 -378
  375. package/dist/cellTypeBubbleHeatmap-LFI6TGOO.js +0 -278
  376. package/dist/chunk-2ANFUNS3.js +0 -102
  377. package/dist/chunk-2G4SFRWC.js +0 -1278
  378. package/dist/chunk-3CGMCYZB.js +0 -237
  379. package/dist/chunk-3I4DBVLM.js +0 -55
  380. package/dist/chunk-42VFF74T.js +0 -397
  381. package/dist/chunk-4HTRCXLS.js +0 -98
  382. package/dist/chunk-55T2AMJ3.js +0 -281
  383. package/dist/chunk-5JDG5NNA.js +0 -203
  384. package/dist/chunk-6AFMWQXZ.js +0 -339
  385. package/dist/chunk-6ECKCC4X.js +0 -294
  386. package/dist/chunk-6QMC7LFA.js +0 -299
  387. package/dist/chunk-72L6NTNT.js +0 -14
  388. package/dist/chunk-7ISAV37C.js +0 -194
  389. package/dist/chunk-7MFY22IZ.js +0 -2902
  390. package/dist/chunk-A32XQLMP.js +0 -49
  391. package/dist/chunk-A3MYBXG3.js +0 -274
  392. package/dist/chunk-AU3Y6IQF.js +0 -1339
  393. package/dist/chunk-AXL3CC4U.js +0 -468
  394. package/dist/chunk-CME6DYDH.js +0 -424
  395. package/dist/chunk-CME6DYDH.js.map +0 -7
  396. package/dist/chunk-DKED35KW.js +0 -2327
  397. package/dist/chunk-DPGALT5N.js +0 -255
  398. package/dist/chunk-DPTGY4BW.js +0 -129
  399. package/dist/chunk-DQD4MTK4.js +0 -379
  400. package/dist/chunk-EFLRT7JY.js +0 -243
  401. package/dist/chunk-EMSO3BNW.js +0 -34
  402. package/dist/chunk-F2LWFF7V.js +0 -158
  403. package/dist/chunk-F5QB5YEE.js +0 -276
  404. package/dist/chunk-FKSR53VK.js +0 -182
  405. package/dist/chunk-FSWBNSQD.js +0 -178
  406. package/dist/chunk-GP4VLNMZ.js +0 -2149
  407. package/dist/chunk-HTZJQNHP.js +0 -562
  408. package/dist/chunk-ITYNHDDD.js +0 -56
  409. package/dist/chunk-IWVCFZHQ.js +0 -170
  410. package/dist/chunk-J4WRX5G6.js +0 -263
  411. package/dist/chunk-JZLIHI6A.js +0 -339
  412. package/dist/chunk-K7HFOAR7.js +0 -25008
  413. package/dist/chunk-K7HFOAR7.js.map +0 -7
  414. package/dist/chunk-KJGYGPJZ.js +0 -103
  415. package/dist/chunk-L3UFI52T.js +0 -217
  416. package/dist/chunk-L4ZPMF7E.js +0 -692
  417. package/dist/chunk-L62JI5UL.js +0 -302
  418. package/dist/chunk-MRPYHLFW.js +0 -518
  419. package/dist/chunk-MVWJHZ5G.js +0 -783
  420. package/dist/chunk-NGWU4QLU.js +0 -134
  421. package/dist/chunk-OC2FSBFB.js +0 -176
  422. package/dist/chunk-OYBYKZUR.js +0 -6360
  423. package/dist/chunk-PLHOCPJD.js +0 -272
  424. package/dist/chunk-PQDZLOY7.js +0 -102
  425. package/dist/chunk-QDNUIS2Y.js +0 -70
  426. package/dist/chunk-RHOMR2GY.js +0 -2676
  427. package/dist/chunk-SLPZ6SBN.js +0 -626
  428. package/dist/chunk-SPFK5XZH.js +0 -446
  429. package/dist/chunk-SQGAWR2L.js +0 -141
  430. package/dist/chunk-UKOOGNUF.js +0 -1233
  431. package/dist/chunk-UL5PEVZW.js +0 -123
  432. package/dist/chunk-UTMIX2H2.js +0 -2784
  433. package/dist/chunk-UZNFOCE7.js +0 -56
  434. package/dist/chunk-V7UVHM57.js +0 -550
  435. package/dist/chunk-VP2JWT5W.js +0 -1988
  436. package/dist/chunk-VSTHBKQW.js +0 -480
  437. package/dist/chunk-X7TJBXJJ.js +0 -54
  438. package/dist/chunk-XEEMCYP6.js +0 -4375
  439. package/dist/chunk-XEEMCYP6.js.map +0 -7
  440. package/dist/chunk-XTQWAVWJ.js +0 -54
  441. package/dist/chunk-YAN2MOON.js +0 -5071
  442. package/dist/chunk-YAN2MOON.js.map +0 -7
  443. package/dist/chunk-YCBENC6R.js +0 -1769
  444. package/dist/chunk-YCBENC6R.js.map +0 -7
  445. package/dist/chunk-YCORHJ64.js +0 -240
  446. package/dist/chunk-YOBTHZVU.js +0 -80
  447. package/dist/chunk-ZTT6ZHU5.js +0 -217
  448. package/dist/cohort-RF4FT2NT.js +0 -70
  449. package/dist/condition-WXE2CFYT.js +0 -327
  450. package/dist/controls-AYF4H7UG.js +0 -34
  451. package/dist/controls.config-TXZKQNYC.js +0 -34
  452. package/dist/correlation-UAYMVVUS.js +0 -95
  453. package/dist/customdata.inputui-I7RFOGYM.js +0 -284
  454. package/dist/dataDownload-4AGSDSEO.js +0 -329
  455. package/dist/databrowser.ui-RGJEA2BI.js +0 -425
  456. package/dist/dictionary-AWWQXIRP.js +0 -113
  457. package/dist/dnaMethylation-PICKZS2M.js +0 -33
  458. package/dist/dnaMethylation.integration.spec-JUSB3CFZ.js +0 -198
  459. package/dist/dofetch-ZJMKEYN2.js +0 -48
  460. package/dist/e2pca-K4W7ZJZG.js +0 -344
  461. package/dist/ep-OY5YQMEF.js +0 -1249
  462. package/dist/expclust.gdc.spec-LYDBM3TZ.js +0 -302
  463. package/dist/facet-7NJHLLCZ.js +0 -519
  464. package/dist/gb-COV44BMA.js +0 -81
  465. package/dist/geneExpClustering-EQR5XX4J.js +0 -244
  466. package/dist/geneExpression-2BNDQ6S6.js +0 -310
  467. package/dist/geneExpression-PGB6WF5H.js +0 -33
  468. package/dist/geneExpression.unit.spec-OUNGGOJP.js +0 -128
  469. package/dist/geneORA-EKNEVQOS.js +0 -273
  470. package/dist/geneRanking-XUXLRERA.js +0 -548
  471. package/dist/geneVariant-JZDYV6LS.js +0 -36
  472. package/dist/geneVariant-KPZ2FYLK.js +0 -289
  473. package/dist/geneVariant.integration.spec-ISMLGTKC.js +0 -503
  474. package/dist/genefusion.ui-GRUXFC4U.js +0 -303
  475. package/dist/geneset-RM4XIX23.js +0 -203
  476. package/dist/genomeBrowser.spec-X7EOK2LS.js +0 -276
  477. package/dist/grin2-5XRUMYQO.js +0 -949
  478. package/dist/grin2-SWZLKD52.js +0 -70
  479. package/dist/hierCluster-I6T4XD3P.js +0 -55
  480. package/dist/hierCluster-XVDGUOW7.js +0 -59
  481. package/dist/hierCluster.config-66CKAAPG.js +0 -36
  482. package/dist/hierCluster.integration.spec-OEHHO2RT.js +0 -483
  483. package/dist/hierCluster.interactivity-B5ZNFF4R.js +0 -49
  484. package/dist/hierCluster.renderers-R2DTKTLI.js +0 -19
  485. package/dist/imagePlot-ZM4IVDJT.js +0 -156
  486. package/dist/importPlot-FQ65CZRI.js +0 -8
  487. package/dist/isoformExpression-BFCLGD2U.js +0 -35
  488. package/dist/isoformExpression.unit.spec-KYI4HI7U.js +0 -237
  489. package/dist/junction-BKH6RWOP.js +0 -36
  490. package/dist/junction.unit.spec-MQIHKSNE.js +0 -182
  491. package/dist/launch.adhoc-AHTCA2BP.js +0 -37
  492. package/dist/leftlabel.sample-LIBMKP22.js +0 -258
  493. package/dist/lollipop-26ZQH3EL.js +0 -166
  494. package/dist/maf-W3W2XJ5B.js +0 -455
  495. package/dist/maftimeline-LCJD5O2M.js +0 -587
  496. package/dist/matrix-H634EZWK.js +0 -59
  497. package/dist/matrix-O2AINT5M.js +0 -54
  498. package/dist/matrix.cells-3U3CUU5I.js +0 -26
  499. package/dist/matrix.config-F6IPB5B5.js +0 -37
  500. package/dist/matrix.data-KQNBNYC6.js +0 -23
  501. package/dist/matrix.groups-QFL2ZDHD.js +0 -26
  502. package/dist/matrix.integration.spec-OVGSXJWO.js +0 -3160
  503. package/dist/matrix.interactivity-Q5ODZPDL.js +0 -37
  504. package/dist/matrix.layout-YPYM7FRY.js +0 -39
  505. package/dist/matrix.legend-ZO57ENXP.js +0 -20
  506. package/dist/matrix.renderers-NIGONKWO.js +0 -34
  507. package/dist/matrix.serieses-ZQD2U6RF.js +0 -19
  508. package/dist/matrix.sort-RZU65LR2.js +0 -26
  509. package/dist/matrix.sort.unit.spec-NDFK2A5C.js +0 -468
  510. package/dist/matrix.sorterUi.unit.spec-4ZKNOV2L.js +0 -338
  511. package/dist/matrix.unit.spec-V5XNLECG.js +0 -150
  512. package/dist/mavb-LF7A7BDK.js +0 -727
  513. package/dist/mds.fimo-KJ4HPMZP.js +0 -513
  514. package/dist/mds.samplescatterplot-ZHNWWWYI.js +0 -1545
  515. package/dist/mds.survivalplot-DNG7I22N.js +0 -477
  516. package/dist/multivalue-SJQF7PHU.js +0 -83
  517. package/dist/numericDictTermCluster-O6PKT2FJ.js +0 -63
  518. package/dist/oncomatrix-YJCPKS72.js +0 -290
  519. package/dist/oncomatrix.spec-MWGBQCIQ.js +0 -443
  520. package/dist/plot.2dvaf-KIPQYNEH.js +0 -372
  521. package/dist/plot.app-WHG3SEOG.js +0 -36
  522. package/dist/plot.barplot-DTSYFUPC.js +0 -97
  523. package/dist/plot.boxplot-MQDULP3P.js +0 -146
  524. package/dist/plot.brainImaging-DGVJQSCH.js +0 -51
  525. package/dist/plot.disco-HYPRBLMQ.js +0 -99
  526. package/dist/plot.ssgq-J5MMN7OD.js +0 -134
  527. package/dist/plot.vaf2cov-CID7GQB5.js +0 -253
  528. package/dist/polar2-QTSO2HCB.js +0 -232
  529. package/dist/profileForms-SRR2M5OS.js +0 -941
  530. package/dist/profilePlot-NDC4S2SC.js +0 -49
  531. package/dist/proteinView-EFNQL3LD.js +0 -1357
  532. package/dist/proteomeCohortCompare-WMR53HEL.js +0 -912
  533. package/dist/pseudbulk.unit.spec-6MRZNXFI.js +0 -86
  534. package/dist/pseudobulk-O5EC44RY.js +0 -35
  535. package/dist/qualitative-W6MFYG7Z.js +0 -38
  536. package/dist/radar2-GIQILMWK.js +0 -327
  537. package/dist/radarFacility2-5YJZ5JCK.js +0 -335
  538. package/dist/render-2J4LR3UI.js +0 -33
  539. package/dist/report-MUMQK6XY.js +0 -217
  540. package/dist/sampleView-NKZMNBMH.js +0 -43
  541. package/dist/samplelst-X74JZMTR.js +0 -106
  542. package/dist/samplematrix-QDQXB5ZG.js +0 -2193
  543. package/dist/sc-FGHV5CBJ.js +0 -81
  544. package/dist/scatter-QFVRBA7F.js +0 -925
  545. package/dist/scatter-YXF5VQGZ.js +0 -88
  546. package/dist/selectGenomeWithTklst-DP4RPV7U.js +0 -129
  547. package/dist/singleCellCellType-XCHCMRR6.js +0 -33
  548. package/dist/singleCellCellType.unit.spec-S3JTP235.js +0 -154
  549. package/dist/singleCellGeneExpression-FD6REV7Y.js +0 -33
  550. package/dist/singleCellGeneExpression.unit.spec-PVMZYD4G.js +0 -148
  551. package/dist/singleCellNumericValue-SIITQPMD.js +0 -33
  552. package/dist/singleCellNumericValue.unit.spec-7PJEHLF7.js +0 -416
  553. package/dist/singleCellPlot-YJCFAYJW.js +0 -48
  554. package/dist/singlecell-6R7YK5P3.js +0 -1566
  555. package/dist/singlecell-KHMH732Y.js +0 -81
  556. package/dist/snp-HXCVSW2F.js +0 -33
  557. package/dist/snp.unit.spec-HXMFR4QS.js +0 -171
  558. package/dist/snplocus-YQVHAKBC.js +0 -203
  559. package/dist/spliceevent.a53ss.diagram-4IBTR3JD.js +0 -146
  560. package/dist/spliceevent.exonskip.diagram-5ZTG65CE.js +0 -278
  561. package/dist/spliceevent.noeventdiagram-WO5KSC45.js +0 -455
  562. package/dist/ssGSEA-VJ3LVYJV.js +0 -33
  563. package/dist/ssGSEA.unit.spec-JQIJ4NZP.js +0 -83
  564. package/dist/stattable-COVQSHRZ.js +0 -117
  565. package/dist/studyCatalog-EXVRH4FI.js +0 -414
  566. package/dist/summarizeCnvGeneexp-UJBTMXXH.js +0 -158
  567. package/dist/summarizeGeneexpSurvival-XLQJGDRY.js +0 -105
  568. package/dist/summarizeMutationCnv-7RWSXB6F.js +0 -159
  569. package/dist/summarizeMutationDiagnosis-42MG737O.js +0 -35
  570. package/dist/summarizeMutationSurvival-FWVKVEHK.js +0 -99
  571. package/dist/summary-NR26ZPQB.js +0 -44
  572. package/dist/summary.integration.spec-Z7JSUTGK.js +0 -409
  573. package/dist/summaryInput-DGKUOJVC.js +0 -242
  574. package/dist/sunburst-C5JNGFT7.js +0 -278
  575. package/dist/survival-GCEX3EAZ.js +0 -53
  576. package/dist/survival-OAQA5JQN.js +0 -1248
  577. package/dist/survival-OAQA5JQN.js.map +0 -7
  578. package/dist/survival.integration.spec-ZX5RD6VQ.js +0 -613
  579. package/dist/svgraph-XCFZ2WAG.js +0 -1382
  580. package/dist/svmr-4XTTURHA.js +0 -3837
  581. package/dist/table-FQZ4UAH6.js +0 -197
  582. package/dist/termCollection-5QCR6LED.js +0 -33
  583. package/dist/termCollection-DN6A6HJU.js +0 -252
  584. package/dist/termCollection.unit.spec-RSSSXDHU.js +0 -299
  585. package/dist/termCollectionFractionSelection-OSN7FITY.js +0 -42
  586. package/dist/termCollectionFractionSelection.unit.spec-UW6D3DVK.js +0 -188
  587. package/dist/tk-4CZCVYBP.js +0 -41
  588. package/dist/tk-BIPJNXBZ.js +0 -1121
  589. package/dist/tp.ui-NI4U7567.js +0 -1454
  590. package/dist/tvs.dt-YRDNDXUU.js +0 -34
  591. package/dist/tvs.dtcnv.categorical-REP4T33P.js +0 -35
  592. package/dist/tvs.dtcnv.continuous-K7OREEP5.js +0 -67
  593. package/dist/tvs.dtfusion-AB5MPH3Q.js +0 -35
  594. package/dist/tvs.dtitd-AFWU7ACY.js +0 -35
  595. package/dist/tvs.dtsnvindel-G7XQEKEO.js +0 -35
  596. package/dist/tvs.dtsv-Y6BEY4J2.js +0 -35
  597. package/dist/tvs.samplelst-XRRWPC2E.js +0 -98
  598. package/dist/tvs.termCollection-PL4AN3GA.js +0 -122
  599. package/dist/vocabulary-DJZWOO6Q.js +0 -36
  600. package/dist/wsi.direct-XUWANMKV.js +0 -8343
  601. /package/dist/{2dmaf-FEZRNHDF.js.map → 2dmaf-R23YQDZC.js.map} +0 -0
  602. /package/dist/{AggMatrixInput-6FJIELYO.js.map → AggMatrixInput-4DIGZZN4.js.map} +0 -0
  603. /package/dist/{AggregateMatrix-MUPBUGIZ.js.map → AggregateMatrix-TF6XXFUN.js.map} +0 -0
  604. /package/dist/{AppHeader-ZTNZ62UL.js.map → AppHeader-JB5HPAOQ.js.map} +0 -0
  605. /package/dist/{BoxPlot-P5SVFYSB.js.map → BoxPlot-47TUXQDP.js.map} +0 -0
  606. /package/dist/{CorrelationVolcano-42NYXAXG.js.map → CorrelationVolcano-G7K5JEPM.js.map} +0 -0
  607. /package/dist/{DE-KJHFZWND.js.map → DE-JSWA6HXV.js.map} +0 -0
  608. /package/dist/{DEinput-HXB3LYZW.js.map → DEinput-LEYRVYK6.js.map} +0 -0
  609. /package/dist/{DM-AAHX4PLH.js.map → DM-332QECUP.js.map} +0 -0
  610. /package/dist/{DifferentialAnalysis-JX4EDEOY.js.map → DifferentialAnalysis-JGH2OMTH.js.map} +0 -0
  611. /package/dist/{Disco-GXKO4QQH.js.map → Disco-36PJXFM6.js.map} +0 -0
  612. /package/dist/{Disco.UI-DGD4RXJP.js.map → Disco.UI-PY2KOGKY.js.map} +0 -0
  613. /package/dist/{DmrPlot-DQ3XTMTN.js.map → DmrPlot-5WMOBZOJ.js.map} +0 -0
  614. /package/dist/{GB-OUWNNBBK.js.map → GB-6WWLTBIW.js.map} +0 -0
  615. /package/dist/{GSEA-DSKGFAPG.js.map → GSEA-GYUVO2XA.js.map} +0 -0
  616. /package/dist/{GeneExpInput-FZLOBE2Q.js.map → GeneExpInput-UABEICGS.js.map} +0 -0
  617. /package/dist/{Geomap-GP5KD3OX.js.map → Geomap-QB6FNV5R.js.map} +0 -0
  618. /package/dist/{HicApp-2N6WYWZX.js.map → HicApp-TQKQKJTN.js.map} +0 -0
  619. /package/dist/{IDCViewer-MSUC7IXX.js.map → IDCViewer-L27ICGR5.js.map} +0 -0
  620. /package/dist/{NumBinaryEditor-C4G2IH36.js.map → NumBinaryEditor-FHSSXZV4.js.map} +0 -0
  621. /package/dist/{NumBinaryEditor.unit.spec-ZAVAUGXA.js.map → NumBinaryEditor.unit.spec-AMR32JHJ.js.map} +0 -0
  622. /package/dist/{NumContEditor-VEEMMWHX.js.map → NumContEditor-R5JB5XPB.js.map} +0 -0
  623. /package/dist/{NumContEditor.unit.spec-65ORC42O.js.map → NumContEditor.unit.spec-3PQRIC4G.js.map} +0 -0
  624. /package/dist/{NumCustomBinEditor-YIUHJAXP.js.map → NumCustomBinEditor-B3PKD54F.js.map} +0 -0
  625. /package/dist/{NumCustomBinEditor.unit.spec-NT5VK2LO.js.map → NumCustomBinEditor.unit.spec-YZKCYZQM.js.map} +0 -0
  626. /package/dist/{NumDiscreteEditor-A4WELAJH.js.map → NumDiscreteEditor-7AO35XU7.js.map} +0 -0
  627. /package/dist/{NumDiscreteEditor.unit.spec-7QABM6KK.js.map → NumDiscreteEditor.unit.spec-SNDHS6VK.js.map} +0 -0
  628. /package/dist/{NumRegularBinEditor-IPVPLSQY.js.map → NumRegularBinEditor-OREKM2DX.js.map} +0 -0
  629. /package/dist/{NumRegularBinEditor.unit.spec-Q4DMWATB.js.map → NumRegularBinEditor.unit.spec-SIGD7PLE.js.map} +0 -0
  630. /package/dist/{NumSplineEditor-5E6CIWLP.js.map → NumSplineEditor-RDFDVNJG.js.map} +0 -0
  631. /package/dist/{NumSplineEditor.unit.spec-DHJF5F6H.js.map → NumSplineEditor.unit.spec-TXRQVLUE.js.map} +0 -0
  632. /package/dist/{NumericDensity-GXMWWK2A.js.map → NumericDensity-QPDF6UU5.js.map} +0 -0
  633. /package/dist/{NumericDensity.unit.spec-OAPOMSEW.js.map → NumericDensity.unit.spec-JYUYDHDG.js.map} +0 -0
  634. /package/dist/{NumericHandler-H5WHGFXD.js.map → NumericHandler-JW6DLSMJ.js.map} +0 -0
  635. /package/dist/{NumericHandler.unit.spec-PBNOJEMS.js.map → NumericHandler.unit.spec-Q2ZNM5NH.js.map} +0 -0
  636. /package/dist/{ProteomeInput-ZA7R5S43.js.map → ProteomeInput-OS5JWC2O.js.map} +0 -0
  637. /package/dist/{Regression-WSWTSXFX.js.map → Regression-53XPZCCQ.js.map} +0 -0
  638. /package/dist/{RunChart2-J5CTJI5C.js.map → RunChart2-WEO42KPP.js.map} +0 -0
  639. /package/dist/{Violin-VA6FBRUQ.js.map → Violin-7VOFUOLE.js.map} +0 -0
  640. /package/dist/{Volcano-4IEQIEDS.js.map → Volcano-DI2RLILX.js.map} +0 -0
  641. /package/dist/{Wsi-LJ6AY5RI.js.map → Wsi-6DNY4RUG.js.map} +0 -0
  642. /package/dist/{adSandbox-EIN4KEML.js.map → adSandbox-B7GQZDYQ.js.map} +0 -0
  643. /package/dist/{animatedBubbleChart-LINYUKMD.js.map → animatedBubbleChart-QGO3OY5E.js.map} +0 -0
  644. /package/dist/{app-SE7UQ5DB.js.map → app-XBLP7YZQ.js.map} +0 -0
  645. /package/dist/{app-VGMZNGWP.js.map → app-ZARZ2HWS.js.map} +0 -0
  646. /package/dist/{bam-ZXEZWRSZ.js.map → bam-FGNF7RYM.js.map} +0 -0
  647. /package/dist/{barchart-N4B4C2FO.js.map → barchart-6YLJJSRO.js.map} +0 -0
  648. /package/dist/{barchart2-EDVEWTVX.js.map → barchart2-7TTZPYWA.js.map} +0 -0
  649. /package/dist/{block-E7YUGCHL.js.map → block-7WZWBQVA.js.map} +0 -0
  650. /package/dist/{block.init-FSOCF2IM.js.map → block.init-YN4KHHJ2.js.map} +0 -0
  651. /package/dist/{block.mds.expressionrank-EDBTITXU.js.map → block.mds.expressionrank-6PKN3KIE.js.map} +0 -0
  652. /package/dist/{block.mds.geneboxplot-GG5672SY.js.map → block.mds.geneboxplot-M6TXRPKO.js.map} +0 -0
  653. /package/dist/{block.mds.junction-HUC4S24K.js.map → block.mds.junction-WKRLLJBT.js.map} +0 -0
  654. /package/dist/{block.mds.svcnv-EQHYCIBU.js.map → block.mds.svcnv-I3DNNGYV.js.map} +0 -0
  655. /package/dist/{block.svg-HBVPUQJ2.js.map → block.svg-D72WTLKP.js.map} +0 -0
  656. /package/dist/{block.tk.aicheck-TRJ5IIWZ.js.map → block.tk.aicheck-QT5WYKTQ.js.map} +0 -0
  657. /package/dist/{block.tk.ase-COV7YYYO.js.map → block.tk.ase-3WGJONXX.js.map} +0 -0
  658. /package/dist/{block.tk.bam-MDSLY6NH.js.map → block.tk.bam-Q5X7D5IR.js.map} +0 -0
  659. /package/dist/{block.tk.bedgraphdot-MKWEL53X.js.map → block.tk.bedgraphdot-VWE2D2HR.js.map} +0 -0
  660. /package/dist/{block.tk.bigwig.ui-UKKJX7TA.js.map → block.tk.bigwig.ui-Q22KXFQT.js.map} +0 -0
  661. /package/dist/{block.tk.hicstraw-6LNXEIOF.js.map → block.tk.hicstraw-3BMDZCQH.js.map} +0 -0
  662. /package/dist/{block.tk.junction-F3SERFFD.js.map → block.tk.junction-BMKRAVUI.js.map} +0 -0
  663. /package/dist/{block.tk.junction.textmatrixui-2XUMSKLS.js.map → block.tk.junction.textmatrixui-ERLXPLGI.js.map} +0 -0
  664. /package/dist/{block.tk.ld-COP5RUJJ.js.map → block.tk.ld-KT5KQUXC.js.map} +0 -0
  665. /package/dist/{block.tk.menu-SRDPD44N.js.map → block.tk.menu-RO7IJGFY.js.map} +0 -0
  666. /package/dist/{block.tk.pgv-3SVINTXN.js.map → block.tk.pgv-PZ4AVD3V.js.map} +0 -0
  667. /package/dist/{brainImaging-UNBA4KA3.js.map → brainImaging-ZU3JSXFP.js.map} +0 -0
  668. /package/dist/{brainRegions-DC6TQB53.js.map → brainRegions-DJELNKKN.js.map} +0 -0
  669. /package/dist/{bubbleHeatmap-X3W3AZJY.js.map → bubbleHeatmap-CPJ5KI6E.js.map} +0 -0
  670. /package/dist/{cellTypeBubbleHeatmap-LFI6TGOO.js.map → cellTypeBubbleHeatmap-6NGBETXV.js.map} +0 -0
  671. /package/dist/{chunk-J4WRX5G6.js.map → chunk-232OR2PG.js.map} +0 -0
  672. /package/dist/{chunk-DPTGY4BW.js.map → chunk-26Y2MYFN.js.map} +0 -0
  673. /package/dist/{chunk-L62JI5UL.js.map → chunk-33FULV5M.js.map} +0 -0
  674. /package/dist/{chunk-KJGYGPJZ.js.map → chunk-3AXQF6GL.js.map} +0 -0
  675. /package/dist/{chunk-X7TJBXJJ.js.map → chunk-3JHCCJ4I.js.map} +0 -0
  676. /package/dist/{chunk-42VFF74T.js.map → chunk-4S7TWVOY.js.map} +0 -0
  677. /package/dist/{chunk-L3UFI52T.js.map → chunk-4ZVOO3NI.js.map} +0 -0
  678. /package/dist/{chunk-VP2JWT5W.js.map → chunk-5U7AYOEZ.js.map} +0 -0
  679. /package/dist/{chunk-FSWBNSQD.js.map → chunk-5WIA4KFA.js.map} +0 -0
  680. /package/dist/{chunk-V7UVHM57.js.map → chunk-5WMFEMII.js.map} +0 -0
  681. /package/dist/{chunk-A32XQLMP.js.map → chunk-6OCWNYW3.js.map} +0 -0
  682. /package/dist/{chunk-HTZJQNHP.js.map → chunk-753GDKSC.js.map} +0 -0
  683. /package/dist/{chunk-A3MYBXG3.js.map → chunk-7AOA5WZY.js.map} +0 -0
  684. /package/dist/{chunk-SQGAWR2L.js.map → chunk-A4D2Z2LV.js.map} +0 -0
  685. /package/dist/{chunk-72L6NTNT.js.map → chunk-AUJHCGU2.js.map} +0 -0
  686. /package/dist/{chunk-YOBTHZVU.js.map → chunk-CWLHJ7AC.js.map} +0 -0
  687. /package/dist/{chunk-MVWJHZ5G.js.map → chunk-DU52GAOJ.js.map} +0 -0
  688. /package/dist/{chunk-VSTHBKQW.js.map → chunk-DVWCDEN3.js.map} +0 -0
  689. /package/dist/{chunk-6ECKCC4X.js.map → chunk-E24IUWHH.js.map} +0 -0
  690. /package/dist/{chunk-SPFK5XZH.js.map → chunk-G4A3ZDDS.js.map} +0 -0
  691. /package/dist/{chunk-6AFMWQXZ.js.map → chunk-HH5JKOE6.js.map} +0 -0
  692. /package/dist/{chunk-DQD4MTK4.js.map → chunk-HL5B4NME.js.map} +0 -0
  693. /package/dist/{chunk-55T2AMJ3.js.map → chunk-HYOCZPKO.js.map} +0 -0
  694. /package/dist/{chunk-7ISAV37C.js.map → chunk-I6P4LZP3.js.map} +0 -0
  695. /package/dist/{chunk-OC2FSBFB.js.map → chunk-IBZVZZ5J.js.map} +0 -0
  696. /package/dist/{chunk-MRPYHLFW.js.map → chunk-JZQEDIGZ.js.map} +0 -0
  697. /package/dist/{chunk-AU3Y6IQF.js.map → chunk-LK7XDEFW.js.map} +0 -0
  698. /package/dist/{chunk-PLHOCPJD.js.map → chunk-MXJKO73I.js.map} +0 -0
  699. /package/dist/{chunk-RHOMR2GY.js.map → chunk-N6NL4XG2.js.map} +0 -0
  700. /package/dist/{chunk-F2LWFF7V.js.map → chunk-NC4RKYVE.js.map} +0 -0
  701. /package/dist/{chunk-IWVCFZHQ.js.map → chunk-OSYSJHAA.js.map} +0 -0
  702. /package/dist/{chunk-YCORHJ64.js.map → chunk-PBWB5ZG2.js.map} +0 -0
  703. /package/dist/{chunk-5JDG5NNA.js.map → chunk-PCJF5MGF.js.map} +0 -0
  704. /package/dist/{chunk-L4ZPMF7E.js.map → chunk-PF5UMQEJ.js.map} +0 -0
  705. /package/dist/{chunk-ZTT6ZHU5.js.map → chunk-PGRTCNOV.js.map} +0 -0
  706. /package/dist/{chunk-FKSR53VK.js.map → chunk-Q6I2OH4P.js.map} +0 -0
  707. /package/dist/{chunk-OYBYKZUR.js.map → chunk-QOF27J24.js.map} +0 -0
  708. /package/dist/{chunk-3CGMCYZB.js.map → chunk-QWCKIRW2.js.map} +0 -0
  709. /package/dist/{chunk-XTQWAVWJ.js.map → chunk-R3LWGFGS.js.map} +0 -0
  710. /package/dist/{chunk-UKOOGNUF.js.map → chunk-REWUPST7.js.map} +0 -0
  711. /package/dist/{chunk-GP4VLNMZ.js.map → chunk-RMUK3TLD.js.map} +0 -0
  712. /package/dist/{chunk-NGWU4QLU.js.map → chunk-RXQRCRHC.js.map} +0 -0
  713. /package/dist/{chunk-7MFY22IZ.js.map → chunk-SAMS5XBH.js.map} +0 -0
  714. /package/dist/{chunk-DKED35KW.js.map → chunk-SXYZ274A.js.map} +0 -0
  715. /package/dist/{chunk-JZLIHI6A.js.map → chunk-TAZQU2LC.js.map} +0 -0
  716. /package/dist/{chunk-EMSO3BNW.js.map → chunk-TFS2JZTH.js.map} +0 -0
  717. /package/dist/{chunk-2ANFUNS3.js.map → chunk-UFQDWGZU.js.map} +0 -0
  718. /package/dist/{chunk-3I4DBVLM.js.map → chunk-UJRURRJ2.js.map} +0 -0
  719. /package/dist/{chunk-2G4SFRWC.js.map → chunk-UWRWFS3K.js.map} +0 -0
  720. /package/dist/{chunk-AXL3CC4U.js.map → chunk-UYSYZM45.js.map} +0 -0
  721. /package/dist/{chunk-QDNUIS2Y.js.map → chunk-VPOAFNVL.js.map} +0 -0
  722. /package/dist/{chunk-UZNFOCE7.js.map → chunk-WB57TMJN.js.map} +0 -0
  723. /package/dist/{chunk-DPGALT5N.js.map → chunk-WILJJPWV.js.map} +0 -0
  724. /package/dist/{chunk-PQDZLOY7.js.map → chunk-X2HEDRFQ.js.map} +0 -0
  725. /package/dist/{chunk-SLPZ6SBN.js.map → chunk-X3UNVPC5.js.map} +0 -0
  726. /package/dist/{chunk-F5QB5YEE.js.map → chunk-XL4N3H32.js.map} +0 -0
  727. /package/dist/{chunk-UL5PEVZW.js.map → chunk-XNKLJMGF.js.map} +0 -0
  728. /package/dist/{chunk-EFLRT7JY.js.map → chunk-XZCRYWVL.js.map} +0 -0
  729. /package/dist/{chunk-ITYNHDDD.js.map → chunk-Y4MV62JA.js.map} +0 -0
  730. /package/dist/{chunk-4HTRCXLS.js.map → chunk-YKI4GLMT.js.map} +0 -0
  731. /package/dist/{chunk-UTMIX2H2.js.map → chunk-ZKINKYOJ.js.map} +0 -0
  732. /package/dist/{chunk-6QMC7LFA.js.map → chunk-ZMSTQP6O.js.map} +0 -0
  733. /package/dist/{cohort-RF4FT2NT.js.map → cohort-CWGZR37O.js.map} +0 -0
  734. /package/dist/{condition-WXE2CFYT.js.map → condition-B6XBQML4.js.map} +0 -0
  735. /package/dist/{controls-AYF4H7UG.js.map → controls-QPW5HUAY.js.map} +0 -0
  736. /package/dist/{controls.config-TXZKQNYC.js.map → controls.config-IUYTWRHA.js.map} +0 -0
  737. /package/dist/{correlation-UAYMVVUS.js.map → correlation-M2NKGTK2.js.map} +0 -0
  738. /package/dist/{customdata.inputui-I7RFOGYM.js.map → customdata.inputui-RKYIMOWO.js.map} +0 -0
  739. /package/dist/{dataDownload-4AGSDSEO.js.map → dataDownload-LPBLB7QD.js.map} +0 -0
  740. /package/dist/{databrowser.ui-RGJEA2BI.js.map → databrowser.ui-VTWHELDY.js.map} +0 -0
  741. /package/dist/{dictionary-AWWQXIRP.js.map → dictionary-NINKMF3F.js.map} +0 -0
  742. /package/dist/{dnaMethylation-PICKZS2M.js.map → dnaMethylation-LSVNG7FK.js.map} +0 -0
  743. /package/dist/{dnaMethylation.integration.spec-JUSB3CFZ.js.map → dnaMethylation.integration.spec-6IT3Y3FS.js.map} +0 -0
  744. /package/dist/{dofetch-ZJMKEYN2.js.map → dofetch-HLMSTOMY.js.map} +0 -0
  745. /package/dist/{e2pca-K4W7ZJZG.js.map → e2pca-6PKLCC7L.js.map} +0 -0
  746. /package/dist/{ep-OY5YQMEF.js.map → ep-3RFB6K3B.js.map} +0 -0
  747. /package/dist/{expclust.gdc.spec-LYDBM3TZ.js.map → expclust.gdc.spec-MEWKHFMD.js.map} +0 -0
  748. /package/dist/{facet-7NJHLLCZ.js.map → facet-A4JH7FCW.js.map} +0 -0
  749. /package/dist/{gb-COV44BMA.js.map → gb-PTF7CLDG.js.map} +0 -0
  750. /package/dist/{geneExpClustering-EQR5XX4J.js.map → geneExpClustering-VKUIAYCK.js.map} +0 -0
  751. /package/dist/{geneExpression-2BNDQ6S6.js.map → geneExpression-3GQFWVJL.js.map} +0 -0
  752. /package/dist/{geneExpression-PGB6WF5H.js.map → geneExpression-VC7QPM3T.js.map} +0 -0
  753. /package/dist/{geneExpression.unit.spec-OUNGGOJP.js.map → geneExpression.unit.spec-PQS7BOMF.js.map} +0 -0
  754. /package/dist/{geneORA-EKNEVQOS.js.map → geneORA-FCMFWZTN.js.map} +0 -0
  755. /package/dist/{geneRanking-XUXLRERA.js.map → geneRanking-RTPPGBD4.js.map} +0 -0
  756. /package/dist/{geneVariant-JZDYV6LS.js.map → geneVariant-2TQ2JD4K.js.map} +0 -0
  757. /package/dist/{geneVariant-KPZ2FYLK.js.map → geneVariant-4S6FLJTN.js.map} +0 -0
  758. /package/dist/{geneVariant.integration.spec-ISMLGTKC.js.map → geneVariant.integration.spec-YTFFHWQP.js.map} +0 -0
  759. /package/dist/{genefusion.ui-GRUXFC4U.js.map → genefusion.ui-P7YH32A6.js.map} +0 -0
  760. /package/dist/{geneset-RM4XIX23.js.map → geneset-4J43JA3C.js.map} +0 -0
  761. /package/dist/{genomeBrowser.spec-X7EOK2LS.js.map → genomeBrowser.spec-T2VFNUAV.js.map} +0 -0
  762. /package/dist/{grin2-5XRUMYQO.js.map → grin2-5TH4EBVQ.js.map} +0 -0
  763. /package/dist/{grin2-SWZLKD52.js.map → grin2-KXMSYYYM.js.map} +0 -0
  764. /package/dist/{hierCluster-I6T4XD3P.js.map → hierCluster-2HFMEHAD.js.map} +0 -0
  765. /package/dist/{hierCluster-XVDGUOW7.js.map → hierCluster-5RQV7B5I.js.map} +0 -0
  766. /package/dist/{hierCluster.config-66CKAAPG.js.map → hierCluster.config-PNBGJE6F.js.map} +0 -0
  767. /package/dist/{hierCluster.integration.spec-OEHHO2RT.js.map → hierCluster.integration.spec-TZLVKUC5.js.map} +0 -0
  768. /package/dist/{hierCluster.interactivity-B5ZNFF4R.js.map → hierCluster.interactivity-OQD3IQ4X.js.map} +0 -0
  769. /package/dist/{hierCluster.renderers-R2DTKTLI.js.map → hierCluster.renderers-DUDSHKDT.js.map} +0 -0
  770. /package/dist/{imagePlot-ZM4IVDJT.js.map → imagePlot-6YH7S2PV.js.map} +0 -0
  771. /package/dist/{importPlot-FQ65CZRI.js.map → importPlot-Z2UKA456.js.map} +0 -0
  772. /package/dist/{isoformExpression-BFCLGD2U.js.map → isoformExpression-SRJMGXHD.js.map} +0 -0
  773. /package/dist/{isoformExpression.unit.spec-KYI4HI7U.js.map → isoformExpression.unit.spec-PBVKSWCS.js.map} +0 -0
  774. /package/dist/{junction-BKH6RWOP.js.map → junction-D4UP2AGY.js.map} +0 -0
  775. /package/dist/{junction.unit.spec-MQIHKSNE.js.map → junction.unit.spec-M5CEGNUE.js.map} +0 -0
  776. /package/dist/{launch.adhoc-AHTCA2BP.js.map → launch.adhoc-SWJOT47S.js.map} +0 -0
  777. /package/dist/{leftlabel.sample-LIBMKP22.js.map → leftlabel.sample-4ZAM2JSS.js.map} +0 -0
  778. /package/dist/{lollipop-26ZQH3EL.js.map → lollipop-GMGJPMJN.js.map} +0 -0
  779. /package/dist/{maf-W3W2XJ5B.js.map → maf-2TFOOAIF.js.map} +0 -0
  780. /package/dist/{maftimeline-LCJD5O2M.js.map → maftimeline-DRBM4ZYD.js.map} +0 -0
  781. /package/dist/{matrix-H634EZWK.js.map → matrix-22R4BC3F.js.map} +0 -0
  782. /package/dist/{matrix-O2AINT5M.js.map → matrix-W4IRSBO5.js.map} +0 -0
  783. /package/dist/{matrix.cells-3U3CUU5I.js.map → matrix.cells-QKWO5EP4.js.map} +0 -0
  784. /package/dist/{matrix.config-F6IPB5B5.js.map → matrix.config-ZZ7NFCIT.js.map} +0 -0
  785. /package/dist/{matrix.data-KQNBNYC6.js.map → matrix.data-3W6P6NBU.js.map} +0 -0
  786. /package/dist/{matrix.groups-QFL2ZDHD.js.map → matrix.groups-XW2G5BJH.js.map} +0 -0
  787. /package/dist/{matrix.integration.spec-OVGSXJWO.js.map → matrix.integration.spec-X4UPLQRI.js.map} +0 -0
  788. /package/dist/{matrix.interactivity-Q5ODZPDL.js.map → matrix.interactivity-NGS3LJPV.js.map} +0 -0
  789. /package/dist/{matrix.layout-YPYM7FRY.js.map → matrix.layout-SAGZVQPG.js.map} +0 -0
  790. /package/dist/{matrix.legend-ZO57ENXP.js.map → matrix.legend-C3MQRAZJ.js.map} +0 -0
  791. /package/dist/{matrix.renderers-NIGONKWO.js.map → matrix.renderers-IG7Q2F6Y.js.map} +0 -0
  792. /package/dist/{matrix.serieses-ZQD2U6RF.js.map → matrix.serieses-SNMIQFKB.js.map} +0 -0
  793. /package/dist/{matrix.sort-RZU65LR2.js.map → matrix.sort-WHVUSUJZ.js.map} +0 -0
  794. /package/dist/{matrix.sort.unit.spec-NDFK2A5C.js.map → matrix.sort.unit.spec-DCWR5PZJ.js.map} +0 -0
  795. /package/dist/{matrix.sorterUi.unit.spec-4ZKNOV2L.js.map → matrix.sorterUi.unit.spec-EBLSCLDL.js.map} +0 -0
  796. /package/dist/{matrix.unit.spec-V5XNLECG.js.map → matrix.unit.spec-I6JGZHQZ.js.map} +0 -0
  797. /package/dist/{mavb-LF7A7BDK.js.map → mavb-MLVNZJSF.js.map} +0 -0
  798. /package/dist/{mds.fimo-KJ4HPMZP.js.map → mds.fimo-MOGZPFCK.js.map} +0 -0
  799. /package/dist/{mds.samplescatterplot-ZHNWWWYI.js.map → mds.samplescatterplot-YLGNYKTH.js.map} +0 -0
  800. /package/dist/{mds.survivalplot-DNG7I22N.js.map → mds.survivalplot-R273N2GB.js.map} +0 -0
  801. /package/dist/{multivalue-SJQF7PHU.js.map → multivalue-5GFBYENI.js.map} +0 -0
  802. /package/dist/{numericDictTermCluster-O6PKT2FJ.js.map → numericDictTermCluster-MJK6SIWE.js.map} +0 -0
  803. /package/dist/{oncomatrix-YJCPKS72.js.map → oncomatrix-OAQT2CUN.js.map} +0 -0
  804. /package/dist/{oncomatrix.spec-MWGBQCIQ.js.map → oncomatrix.spec-6C62LLJI.js.map} +0 -0
  805. /package/dist/{plot.2dvaf-KIPQYNEH.js.map → plot.2dvaf-WDXWSC7L.js.map} +0 -0
  806. /package/dist/{plot.app-WHG3SEOG.js.map → plot.app-YTHD3ZJQ.js.map} +0 -0
  807. /package/dist/{plot.barplot-DTSYFUPC.js.map → plot.barplot-SRZM3GU3.js.map} +0 -0
  808. /package/dist/{plot.boxplot-MQDULP3P.js.map → plot.boxplot-VWOMZPZE.js.map} +0 -0
  809. /package/dist/{plot.brainImaging-DGVJQSCH.js.map → plot.brainImaging-6XL7YF5G.js.map} +0 -0
  810. /package/dist/{plot.disco-HYPRBLMQ.js.map → plot.disco-VRKSTV5Z.js.map} +0 -0
  811. /package/dist/{plot.ssgq-J5MMN7OD.js.map → plot.ssgq-AXASDOZZ.js.map} +0 -0
  812. /package/dist/{plot.vaf2cov-CID7GQB5.js.map → plot.vaf2cov-IF4DEEM5.js.map} +0 -0
  813. /package/dist/{polar2-QTSO2HCB.js.map → polar2-QQ3KHFME.js.map} +0 -0
  814. /package/dist/{profileForms-SRR2M5OS.js.map → profileForms-2US7IYYM.js.map} +0 -0
  815. /package/dist/{profilePlot-NDC4S2SC.js.map → profilePlot-DZQCBKPA.js.map} +0 -0
  816. /package/dist/{proteinView-EFNQL3LD.js.map → proteinView-TTLVQ43H.js.map} +0 -0
  817. /package/dist/{proteomeCohortCompare-WMR53HEL.js.map → proteomeCohortCompare-BUZYOOIA.js.map} +0 -0
  818. /package/dist/{pseudbulk.unit.spec-6MRZNXFI.js.map → pseudbulk.unit.spec-YNXQWDSU.js.map} +0 -0
  819. /package/dist/{pseudobulk-O5EC44RY.js.map → pseudobulk-VSXK2PTM.js.map} +0 -0
  820. /package/dist/{qualitative-W6MFYG7Z.js.map → qualitative-AKIZRNFO.js.map} +0 -0
  821. /package/dist/{radar2-GIQILMWK.js.map → radar2-7GXYLICJ.js.map} +0 -0
  822. /package/dist/{radarFacility2-5YJZ5JCK.js.map → radarFacility2-WFKOWGH2.js.map} +0 -0
  823. /package/dist/{render-2J4LR3UI.js.map → render-F3CBMRD5.js.map} +0 -0
  824. /package/dist/{report-MUMQK6XY.js.map → report-6LHMHUDY.js.map} +0 -0
  825. /package/dist/{sampleView-NKZMNBMH.js.map → sampleView-GWKPMVJH.js.map} +0 -0
  826. /package/dist/{samplelst-X74JZMTR.js.map → samplelst-TH6IBDVG.js.map} +0 -0
  827. /package/dist/{samplematrix-QDQXB5ZG.js.map → samplematrix-RPCWT33H.js.map} +0 -0
  828. /package/dist/{sc-FGHV5CBJ.js.map → sc-BFBHBAXF.js.map} +0 -0
  829. /package/dist/{scatter-QFVRBA7F.js.map → scatter-3IC6HOT7.js.map} +0 -0
  830. /package/dist/{scatter-YXF5VQGZ.js.map → scatter-L6R6J2LC.js.map} +0 -0
  831. /package/dist/{selectGenomeWithTklst-DP4RPV7U.js.map → selectGenomeWithTklst-3ZK7FIOP.js.map} +0 -0
  832. /package/dist/{singleCellCellType-XCHCMRR6.js.map → singleCellCellType-CLJFCBV6.js.map} +0 -0
  833. /package/dist/{singleCellCellType.unit.spec-S3JTP235.js.map → singleCellCellType.unit.spec-W32PSTRO.js.map} +0 -0
  834. /package/dist/{singleCellGeneExpression-FD6REV7Y.js.map → singleCellGeneExpression-L6MG37XE.js.map} +0 -0
  835. /package/dist/{singleCellGeneExpression.unit.spec-PVMZYD4G.js.map → singleCellGeneExpression.unit.spec-SF46JHCU.js.map} +0 -0
  836. /package/dist/{singleCellNumericValue-SIITQPMD.js.map → singleCellNumericValue-7QXK6KVZ.js.map} +0 -0
  837. /package/dist/{singleCellNumericValue.unit.spec-7PJEHLF7.js.map → singleCellNumericValue.unit.spec-VC7NQYM2.js.map} +0 -0
  838. /package/dist/{singleCellPlot-YJCFAYJW.js.map → singleCellPlot-5TRNRKPN.js.map} +0 -0
  839. /package/dist/{singlecell-6R7YK5P3.js.map → singlecell-2YV3UAIQ.js.map} +0 -0
  840. /package/dist/{singlecell-KHMH732Y.js.map → singlecell-I4PHM2LZ.js.map} +0 -0
  841. /package/dist/{snp-HXCVSW2F.js.map → snp-ZIA4YWCZ.js.map} +0 -0
  842. /package/dist/{snp.unit.spec-HXMFR4QS.js.map → snp.unit.spec-MVQHY4WJ.js.map} +0 -0
  843. /package/dist/{snplocus-YQVHAKBC.js.map → snplocus-GM6IEDPR.js.map} +0 -0
  844. /package/dist/{spliceevent.a53ss.diagram-4IBTR3JD.js.map → spliceevent.a53ss.diagram-ZFQDHHPY.js.map} +0 -0
  845. /package/dist/{spliceevent.exonskip.diagram-5ZTG65CE.js.map → spliceevent.exonskip.diagram-ZK6JOUMU.js.map} +0 -0
  846. /package/dist/{spliceevent.noeventdiagram-WO5KSC45.js.map → spliceevent.noeventdiagram-YKTF2VZE.js.map} +0 -0
  847. /package/dist/{ssGSEA-VJ3LVYJV.js.map → ssGSEA-FDN4CH2Y.js.map} +0 -0
  848. /package/dist/{ssGSEA.unit.spec-JQIJ4NZP.js.map → ssGSEA.unit.spec-YEUJBT6Z.js.map} +0 -0
  849. /package/dist/{stattable-COVQSHRZ.js.map → stattable-WIZRSKPH.js.map} +0 -0
  850. /package/dist/{studyCatalog-EXVRH4FI.js.map → studyCatalog-X2IGVJ26.js.map} +0 -0
  851. /package/dist/{summarizeCnvGeneexp-UJBTMXXH.js.map → summarizeCnvGeneexp-H7A5SI3R.js.map} +0 -0
  852. /package/dist/{summarizeGeneexpSurvival-XLQJGDRY.js.map → summarizeGeneexpSurvival-GJF6VD2S.js.map} +0 -0
  853. /package/dist/{summarizeMutationCnv-7RWSXB6F.js.map → summarizeMutationCnv-WQLMD2TR.js.map} +0 -0
  854. /package/dist/{summarizeMutationDiagnosis-42MG737O.js.map → summarizeMutationDiagnosis-3S52IDWF.js.map} +0 -0
  855. /package/dist/{summarizeMutationSurvival-FWVKVEHK.js.map → summarizeMutationSurvival-NTQIUNW7.js.map} +0 -0
  856. /package/dist/{summary-NR26ZPQB.js.map → summary-LMRFRKKI.js.map} +0 -0
  857. /package/dist/{summary.integration.spec-Z7JSUTGK.js.map → summary.integration.spec-KQMZKSEQ.js.map} +0 -0
  858. /package/dist/{summaryInput-DGKUOJVC.js.map → summaryInput-NNHZVHQA.js.map} +0 -0
  859. /package/dist/{sunburst-C5JNGFT7.js.map → sunburst-ICUSGIWV.js.map} +0 -0
  860. /package/dist/{survival-GCEX3EAZ.js.map → survival-K5YBNNVE.js.map} +0 -0
  861. /package/dist/{survival.integration.spec-ZX5RD6VQ.js.map → survival.integration.spec-4LRJW2V2.js.map} +0 -0
  862. /package/dist/{svgraph-XCFZ2WAG.js.map → svgraph-U7MS7YEM.js.map} +0 -0
  863. /package/dist/{svmr-4XTTURHA.js.map → svmr-2JGDBPAI.js.map} +0 -0
  864. /package/dist/{table-FQZ4UAH6.js.map → table-CBWOHYW6.js.map} +0 -0
  865. /package/dist/{termCollection-DN6A6HJU.js.map → termCollection-JFGGXVFI.js.map} +0 -0
  866. /package/dist/{termCollection-5QCR6LED.js.map → termCollection-VE3FFL6V.js.map} +0 -0
  867. /package/dist/{termCollection.unit.spec-RSSSXDHU.js.map → termCollection.unit.spec-XQQTDV4A.js.map} +0 -0
  868. /package/dist/{termCollectionFractionSelection-OSN7FITY.js.map → termCollectionFractionSelection-TFGF27GR.js.map} +0 -0
  869. /package/dist/{termCollectionFractionSelection.unit.spec-UW6D3DVK.js.map → termCollectionFractionSelection.unit.spec-MKGG4JBC.js.map} +0 -0
  870. /package/dist/{tk-4CZCVYBP.js.map → tk-74SGUUZY.js.map} +0 -0
  871. /package/dist/{tk-BIPJNXBZ.js.map → tk-K4JFYIZY.js.map} +0 -0
  872. /package/dist/{tp.ui-NI4U7567.js.map → tp.ui-727EXXMT.js.map} +0 -0
  873. /package/dist/{tvs.dt-YRDNDXUU.js.map → tvs.dt-YB2C3T33.js.map} +0 -0
  874. /package/dist/{tvs.dtcnv.categorical-REP4T33P.js.map → tvs.dtcnv.categorical-NOWMZOE5.js.map} +0 -0
  875. /package/dist/{tvs.dtcnv.continuous-K7OREEP5.js.map → tvs.dtcnv.continuous-3KWUNU76.js.map} +0 -0
  876. /package/dist/{tvs.dtfusion-AB5MPH3Q.js.map → tvs.dtfusion-NOJSTABU.js.map} +0 -0
  877. /package/dist/{tvs.dtitd-AFWU7ACY.js.map → tvs.dtitd-OD5B377P.js.map} +0 -0
  878. /package/dist/{tvs.dtsnvindel-G7XQEKEO.js.map → tvs.dtsnvindel-WIQMZTRH.js.map} +0 -0
  879. /package/dist/{tvs.dtsv-Y6BEY4J2.js.map → tvs.dtsv-HPERDN3R.js.map} +0 -0
  880. /package/dist/{tvs.samplelst-XRRWPC2E.js.map → tvs.samplelst-TC2Z7Z35.js.map} +0 -0
  881. /package/dist/{tvs.termCollection-PL4AN3GA.js.map → tvs.termCollection-F64BHWAL.js.map} +0 -0
  882. /package/dist/{vocabulary-DJZWOO6Q.js.map → vocabulary-ZOYF2VHS.js.map} +0 -0
  883. /package/dist/{wsi.direct-XUWANMKV.js.map → wsi.direct-Z5YUZEXG.js.map} +0 -0
@@ -0,0 +1,424 @@
1
+ import {
2
+ CATEGORICAL,
3
+ COHORT,
4
+ CONDITION,
5
+ DATE,
6
+ DNA_METHYLATION,
7
+ FLOAT,
8
+ GENE_EXPRESSION,
9
+ GENE_VARIANT,
10
+ INTEGER,
11
+ ISOFORM_EXPRESSION,
12
+ JUNCTION,
13
+ METABOLITE_INTENSITY,
14
+ MULTIVALUE,
15
+ PROTEOME_ABUNDANCE,
16
+ PSEUDOBULK,
17
+ SAMPLELST,
18
+ SINGLECELL_CELLTYPE,
19
+ SINGLECELL_GENE_EXPRESSION,
20
+ SINGLECELL_NUMERIC_VALUE,
21
+ SNP,
22
+ SNP_LIST,
23
+ SNP_LOCUS,
24
+ SSGSEA,
25
+ SURVIVAL,
26
+ TERM_COLLECTION,
27
+ TermTypeGroups,
28
+ dtTerms,
29
+ dtdnamethylation,
30
+ dtgeneexpression,
31
+ dtmetaboliteintensity,
32
+ dtproteomeabundance,
33
+ dtssgsea
34
+ } from "./chunk-57Z4VYLM.js";
35
+
36
+ // ../shared/utils/dist/src/terms.js
37
+ var ROOT_SAMPLE_TYPE = 1;
38
+ var DEFAULT_SAMPLE_TYPE = 2;
39
+ var NumericModes = {
40
+ continuous: "continuous",
41
+ discrete: "discrete"
42
+ };
43
+ var dtTermTypes = new Set(dtTerms.map((t) => t.type));
44
+ var TermTypes2Dt = {
45
+ [GENE_EXPRESSION]: dtgeneexpression,
46
+ [SSGSEA]: dtssgsea,
47
+ [DNA_METHYLATION]: dtdnamethylation,
48
+ [METABOLITE_INTENSITY]: dtmetaboliteintensity,
49
+ [PROTEOME_ABUNDANCE]: dtproteomeabundance
50
+ };
51
+ var typeGroup = {
52
+ [CATEGORICAL]: TermTypeGroups.DICTIONARY_VARIABLES,
53
+ [CONDITION]: TermTypeGroups.DICTIONARY_VARIABLES,
54
+ [FLOAT]: TermTypeGroups.DICTIONARY_VARIABLES,
55
+ [INTEGER]: TermTypeGroups.DICTIONARY_VARIABLES,
56
+ [SAMPLELST]: TermTypeGroups.DICTIONARY_VARIABLES,
57
+ [SURVIVAL]: TermTypeGroups.DICTIONARY_VARIABLES,
58
+ [DATE]: TermTypeGroups.DICTIONARY_VARIABLES,
59
+ [MULTIVALUE]: TermTypeGroups.DICTIONARY_VARIABLES,
60
+ [GENE_VARIANT]: TermTypeGroups.MUTATION_CNV_FUSION,
61
+ [SNP]: TermTypeGroups.SNP,
62
+ [SNP_LIST]: TermTypeGroups.SNP_LIST,
63
+ [SNP_LOCUS]: TermTypeGroups.SNP_LOCUS,
64
+ [GENE_EXPRESSION]: TermTypeGroups.GENE_EXPRESSION,
65
+ [ISOFORM_EXPRESSION]: TermTypeGroups.ISOFORM_EXPRESSION,
66
+ [JUNCTION]: TermTypeGroups.SPLICE_JUNCTION,
67
+ [SSGSEA]: TermTypeGroups.SSGSEA,
68
+ [DNA_METHYLATION]: TermTypeGroups.DNA_METHYLATION,
69
+ [METABOLITE_INTENSITY]: TermTypeGroups.METABOLITE_INTENSITY,
70
+ [PROTEOME_ABUNDANCE]: TermTypeGroups.PROTEOME_ABUNDANCE,
71
+ [PSEUDOBULK]: TermTypeGroups.PSEUDOBULK,
72
+ [TERM_COLLECTION]: TermTypeGroups.TERM_COLLECTION,
73
+ [SINGLECELL_CELLTYPE]: TermTypeGroups.SINGLECELL_CELLTYPE,
74
+ [SINGLECELL_GENE_EXPRESSION]: TermTypeGroups.SINGLECELL_GENE_EXPRESSION,
75
+ [SINGLECELL_NUMERIC_VALUE]: TermTypeGroups.SINGLECELL_NUMERIC_VALUE,
76
+ [COHORT]: TermTypeGroups.COHORT
77
+ };
78
+ var nonDictTypes = /* @__PURE__ */ new Set([
79
+ SNP,
80
+ SNP_LIST,
81
+ SNP_LOCUS,
82
+ GENE_EXPRESSION,
83
+ ISOFORM_EXPRESSION,
84
+ JUNCTION,
85
+ SSGSEA,
86
+ DNA_METHYLATION,
87
+ GENE_VARIANT,
88
+ METABOLITE_INTENSITY,
89
+ PROTEOME_ABUNDANCE,
90
+ PSEUDOBULK,
91
+ SINGLECELL_CELLTYPE,
92
+ SINGLECELL_GENE_EXPRESSION,
93
+ SINGLECELL_NUMERIC_VALUE,
94
+ COHORT
95
+ ]);
96
+ for (const dtTermType of dtTermTypes) {
97
+ nonDictTypes.add(dtTermType);
98
+ }
99
+ var numericTypes = /* @__PURE__ */ new Set([
100
+ INTEGER,
101
+ FLOAT,
102
+ GENE_EXPRESSION,
103
+ ISOFORM_EXPRESSION,
104
+ JUNCTION,
105
+ SSGSEA,
106
+ DNA_METHYLATION,
107
+ METABOLITE_INTENSITY,
108
+ PROTEOME_ABUNDANCE,
109
+ SINGLECELL_GENE_EXPRESSION,
110
+ SINGLECELL_NUMERIC_VALUE,
111
+ DATE,
112
+ PSEUDOBULK
113
+ ]);
114
+ var dictionaryNumericTypes = /* @__PURE__ */ new Set([INTEGER, FLOAT, DATE]);
115
+ var categoricalTypes = /* @__PURE__ */ new Set([CATEGORICAL, SNP]);
116
+ var singleCellTerms = /* @__PURE__ */ new Set([
117
+ SINGLECELL_CELLTYPE,
118
+ SINGLECELL_GENE_EXPRESSION,
119
+ SINGLECELL_NUMERIC_VALUE
120
+ /*PSEUDOBULK*/
121
+ ]);
122
+ function isSingleCellTerm(term) {
123
+ if (!term) return false;
124
+ if (typeof term !== "object") throw new Error("Term is not an object. Did you provide the type instead?");
125
+ return singleCellTerms.has(term.type);
126
+ }
127
+ function isNumericTerm(term) {
128
+ if (!term) return false;
129
+ return numericTypes.has(term.type);
130
+ }
131
+ function isNumericTw(tw) {
132
+ if (!tw?.term) return false;
133
+ return isNumericTerm(tw.term) || tw.term.type === TERM_COLLECTION && tw.term.memberType === "numeric" && tw.type === "TermCollectionTWFraction";
134
+ }
135
+ function isCategoricalTerm(term) {
136
+ if (!term) return false;
137
+ return categoricalTypes.has(term.type);
138
+ }
139
+ function isDictionaryType(type) {
140
+ return !isNonDictionaryType(type);
141
+ }
142
+ function isNonDictionaryType(type) {
143
+ if (!type) throw new Error("Type is not defined");
144
+ return nonDictTypes.has(type);
145
+ }
146
+ function isNumTermCollection(term) {
147
+ if (!term || !term.type) throw new Error("Term or term type is not defined");
148
+ return term.type === TERM_COLLECTION;
149
+ }
150
+ function equals(t1, t2) {
151
+ if (!t1) throw new Error("First term is not defined ");
152
+ if (!t2) throw new Error("Second term is not defined ");
153
+ if (t1.type !== t2.type) return false;
154
+ if (isDictionaryType(t1.type) && isDictionaryType(t2.type) && t1.type != SAMPLELST) return t1.id === t2.id;
155
+ switch (t1.type) {
156
+ case GENE_EXPRESSION:
157
+ return t1.gene == t2.gene;
158
+ case ISOFORM_EXPRESSION:
159
+ return t1.isoform == t2.isoform;
160
+ case JUNCTION:
161
+ return t1.chr == t2.chr && t1.start == t2.start && t1.stop == t2.stop && t1.strand == t2.strand;
162
+ case SSGSEA:
163
+ return t1.id == t2.id;
164
+ case DNA_METHYLATION:
165
+ return t1.chr == t2.chr && t1.start == t2.start && t1.stop == t2.stop;
166
+ case METABOLITE_INTENSITY:
167
+ case PROTEOME_ABUNDANCE:
168
+ return t1.name == t2.name;
169
+ case GENE_VARIANT:
170
+ return t1.gene == t2.gene || t1.chr == t2.chr && t1.start == t2.start && t1.stop == t2.stop;
171
+ // TO DO: Add more cases
172
+ // case SNP_LIST:
173
+ // case SNP_LOCUS:
174
+ // case SAMPLELST:
175
+ default:
176
+ return false;
177
+ }
178
+ }
179
+ function trimGvTermCopy(term, q) {
180
+ if (term?.type != GENE_VARIANT) return term;
181
+ delete term.childTerms;
182
+ if (q?.customset) clearGroupsetParentTerms(q.customset);
183
+ const lst = term.groupsetting?.lst;
184
+ if (!lst?.length) return term;
185
+ if (q?.type == "predefined-groupset") {
186
+ const idx = q.predefined_groupset_idx;
187
+ term.groupsetting.lst = lst.map((groupset, i) => i === idx ? groupset : null);
188
+ clearDtTermMnames(term.groupsetting.lst[idx]);
189
+ clearGroupsetParentTerms(term.groupsetting.lst[idx]);
190
+ } else {
191
+ delete term.groupsetting.lst;
192
+ }
193
+ return term;
194
+ }
195
+ function forEachGvTw(obj, callback) {
196
+ if (!obj || typeof obj != "object") return;
197
+ if (obj.q && obj.term?.type == GENE_VARIANT) callback(obj);
198
+ for (const value of Object.values(obj)) forEachGvTw(value, callback);
199
+ }
200
+ function trimGvTermsForSave(obj) {
201
+ forEachGvTw(obj, (tw) => {
202
+ delete tw.term.childTerms;
203
+ delete tw.term.groupsetting;
204
+ if (tw.q.customset) clearGroupsetParentTerms(tw.q.customset);
205
+ });
206
+ return obj;
207
+ }
208
+ function getGvGeneKey(term) {
209
+ const genes = term?.genes?.length ? term.genes : term ? [term] : [];
210
+ const keys = genes.map((gene) => {
211
+ if (getGvGeneKind(gene) == "coord") {
212
+ const region = getGvQueryRegion(gene);
213
+ return region ? `${region.chr}:${region.start + 1}-${region.stop}` : void 0;
214
+ }
215
+ return gene.gene || gene.name;
216
+ }).filter((key) => typeof key == "string" && key);
217
+ if (!keys.length || keys.length != genes.length) return "";
218
+ return keys.sort().join(",");
219
+ }
220
+ var gvQCacheKeyPrefix = "gv:";
221
+ function getGvQCacheKey(term) {
222
+ const key = getGvGeneKey(term);
223
+ return key ? gvQCacheKeyPrefix + key : "";
224
+ }
225
+ function getGvGeneKind(gene) {
226
+ if (gene?.kind) return gene.kind;
227
+ if (gene?.gene || gene?.name && !gene.chr) return "gene";
228
+ if (gene?.chr) return "coord";
229
+ return void 0;
230
+ }
231
+ function trimGvQForCache(q) {
232
+ const copy = structuredClone(q);
233
+ delete copy.isAtomic;
234
+ delete copy.hiddenValues;
235
+ delete copy.dtLst;
236
+ if (copy.customset) {
237
+ clearDtTermMnames(copy.customset);
238
+ clearGroupsetParentTerms(copy.customset);
239
+ }
240
+ return copy;
241
+ }
242
+ function getGvQueryRegion(gene) {
243
+ if (!gene?.chr || !Number.isInteger(gene.start) || !Number.isInteger(gene.stop)) return;
244
+ return { chr: gene.chr, start: gene.start, stop: gene.stop };
245
+ }
246
+ function restoreGvQueryEntry(v, queries) {
247
+ if (!queries || v?.$q === void 0) return false;
248
+ Object.assign(v, queries[v.$q]);
249
+ delete v.$q;
250
+ return true;
251
+ }
252
+ function matchesGvQueryEntry(entry, v) {
253
+ if (entry.gene) return entry.gene == v.gene;
254
+ const r = entry.region;
255
+ if (r) return !!v.region && r.chr == v.region.chr && r.start == v.region.start && r.stop == v.region.stop;
256
+ return true;
257
+ }
258
+ function setGroupsetParentTerms(groupset, term) {
259
+ if (term?.type != GENE_VARIANT) throw "parent of a groupset tvs must be a geneVariant term";
260
+ const parentTerm = structuredClone(term);
261
+ delete parentTerm.childTerms;
262
+ delete parentTerm.groupsetting;
263
+ walkTvs(groupset, (tvs) => {
264
+ if (!dtTermTypes.has(tvs.term?.type)) throw `groupset tvs term is not a dt term`;
265
+ tvs.term.parentTerm = parentTerm;
266
+ });
267
+ return groupset;
268
+ }
269
+ function clearGroupsetParentTerms(groupset) {
270
+ walkTvs(groupset, (tvs) => {
271
+ if (tvs.term) delete tvs.term.parentTerm;
272
+ });
273
+ return groupset;
274
+ }
275
+ function walkTvs(obj, fn) {
276
+ if (!obj || typeof obj != "object") return;
277
+ if (obj.type == "tvs" && obj.tvs) {
278
+ fn(obj.tvs);
279
+ return;
280
+ }
281
+ for (const k in obj) walkTvs(obj[k], fn);
282
+ }
283
+ function getDtsFromGroups(groups) {
284
+ const dts = /* @__PURE__ */ new Set();
285
+ for (const group of groups) {
286
+ for (const dt of getDtsFromFilter(group.filter)) dts.add(dt);
287
+ }
288
+ return [...dts];
289
+ }
290
+ function getDtsFromFilter(filter) {
291
+ const dts = /* @__PURE__ */ new Set();
292
+ for (const item of filter.lst) {
293
+ if (item.type == "tvslst") {
294
+ for (const dt of getDtsFromFilter(item)) dts.add(dt);
295
+ } else {
296
+ dts.add(item.tvs.term.dt);
297
+ }
298
+ }
299
+ return dts;
300
+ }
301
+ function clearDtTermMnames(obj) {
302
+ walkTvs(obj, (tvs) => {
303
+ if (tvs.term) delete tvs.term.mnames;
304
+ });
305
+ return obj;
306
+ }
307
+ function getQuerySampleTypesByTerms(sampleTypesByTerms, querySampleTypes) {
308
+ if (!sampleTypesByTerms) return;
309
+ const querySampleTypesByTerms = {};
310
+ for (const [term, values] of Object.entries(sampleTypesByTerms)) {
311
+ const queryValues = {};
312
+ for (const [value, sampleTypes] of Object.entries(values)) {
313
+ const filteredSampleTypes = sampleTypes.filter((sampleType) => querySampleTypes.includes(sampleType));
314
+ if (filteredSampleTypes.length) queryValues[value] = filteredSampleTypes;
315
+ }
316
+ if (Object.keys(queryValues).length) querySampleTypesByTerms[term] = queryValues;
317
+ }
318
+ if (!Object.keys(querySampleTypesByTerms).length) return;
319
+ return querySampleTypesByTerms;
320
+ }
321
+ var typeMap = {
322
+ categorical: "Categorical",
323
+ condition: "Condition",
324
+ float: "Numerical",
325
+ integer: "Numerical",
326
+ date: "Date",
327
+ geneExpression: "Gene Expression",
328
+ isoformExpression: "Isoform Expression",
329
+ [JUNCTION]: "Splice junction",
330
+ ssGSEA: "Geneset Expression",
331
+ dnaMethylation: "DNA Methylation",
332
+ geneVariant: "Gene Variant",
333
+ metaboliteIntensity: "Metabolite Intensity",
334
+ proteomeAbundance: "Proteome Abundance",
335
+ proteomeDAP: "Proteome DAP",
336
+ multivalue: "Multi Value",
337
+ singleCellGeneExpression: "Single Cell, Gene Expression",
338
+ singleCellCellType: "Single Cell, Cell Type",
339
+ singleCellNumericValue: "Single Cell, Numeric Value",
340
+ snplocus: "SNP Locus",
341
+ snp: "SNP",
342
+ snplst: "SNP List",
343
+ termCollection: "Term Collection"
344
+ };
345
+ function termItemType(t) {
346
+ switch (t.type) {
347
+ case JUNCTION:
348
+ return "Splice junction";
349
+ case GENE_EXPRESSION:
350
+ case SINGLECELL_GENE_EXPRESSION:
351
+ return "Gene";
352
+ case ISOFORM_EXPRESSION:
353
+ return "Isoform";
354
+ case SSGSEA:
355
+ return "Gene set";
356
+ case METABOLITE_INTENSITY:
357
+ return "Metabolite";
358
+ // keep adding here
359
+ default:
360
+ return "Variable";
361
+ }
362
+ }
363
+ function termType2label(type) {
364
+ const s = typeMap[type];
365
+ if (s) return s;
366
+ throw new Error("termType2label(): unknown value");
367
+ }
368
+ function getDateFromNumber(value) {
369
+ const year = Math.floor(value);
370
+ const january1st = new Date(year, 0, 1);
371
+ const totalDays = getDaysInYear(year);
372
+ const time = Math.round((value - year) * totalDays) * oneDayTime;
373
+ const date = new Date(january1st.getTime() + time);
374
+ return date;
375
+ }
376
+ var oneDayTime = 24 * 60 * 60 * 1e3;
377
+ function getDateStrFromNumber(value) {
378
+ const date = getDateFromNumber(value);
379
+ return date.toLocaleDateString("en-US", {
380
+ year: "numeric",
381
+ month: "long"
382
+ });
383
+ }
384
+ function getDaysInYear(year) {
385
+ const isLeap = new Date(year, 1, 29).getMonth() === 1;
386
+ const days = isLeap ? 366 : 365;
387
+ return days;
388
+ }
389
+
390
+ export {
391
+ ROOT_SAMPLE_TYPE,
392
+ DEFAULT_SAMPLE_TYPE,
393
+ NumericModes,
394
+ dtTermTypes,
395
+ TermTypes2Dt,
396
+ typeGroup,
397
+ numericTypes,
398
+ dictionaryNumericTypes,
399
+ isSingleCellTerm,
400
+ isNumericTerm,
401
+ isNumericTw,
402
+ isCategoricalTerm,
403
+ isDictionaryType,
404
+ isNonDictionaryType,
405
+ isNumTermCollection,
406
+ equals,
407
+ trimGvTermCopy,
408
+ forEachGvTw,
409
+ trimGvTermsForSave,
410
+ gvQCacheKeyPrefix,
411
+ getGvQCacheKey,
412
+ trimGvQForCache,
413
+ restoreGvQueryEntry,
414
+ matchesGvQueryEntry,
415
+ setGroupsetParentTerms,
416
+ getDtsFromGroups,
417
+ clearDtTermMnames,
418
+ getQuerySampleTypesByTerms,
419
+ termItemType,
420
+ termType2label,
421
+ getDateFromNumber,
422
+ getDateStrFromNumber
423
+ };
424
+ //# sourceMappingURL=chunk-RU2UHH7M.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../shared/utils/src/terms.ts"],
4
+ "sourcesContent": ["import type { Term, SampleTypesByTerms } from '#types'\nimport {\n\tdtgeneexpression,\n\tdtssgsea,\n\tdtdnamethylation,\n\tdtmetaboliteintensity,\n\tdtproteomeabundance,\n\tTermTypeGroups,\n\tdtTerms\n} from './common.js'\nimport {\n\tGENE_VARIANT,\n\tGENE_EXPRESSION,\n\tISOFORM_EXPRESSION,\n\tSSGSEA,\n\tDNA_METHYLATION,\n\tCATEGORICAL,\n\tINTEGER,\n\tJUNCTION,\n\tFLOAT,\n\tSNP,\n\tSNP_LIST,\n\tSNP_LOCUS,\n\tCONDITION,\n\tSURVIVAL,\n\tSAMPLELST,\n\tMETABOLITE_INTENSITY,\n\tPROTEOME_ABUNDANCE,\n\tPSEUDOBULK,\n\tSINGLECELL_CELLTYPE,\n\tSINGLECELL_GENE_EXPRESSION,\n\tSINGLECELL_NUMERIC_VALUE,\n\tMULTIVALUE,\n\tDATE,\n\tTERM_COLLECTION,\n\tCOHORT\n} from '#types'\n\n// moved TermTypeGroups to `server/src/common.js`, so now has to re-export\nexport { TermTypeGroups } from './common.js'\n\n/*\nFor datasets with multiple types of samples the ROOT_SAMPLE_TYPE is used to represent the root sample type, for example, \nthe type patient, that has one or more samples associated to it. This should be the id used as sample_type, when generating the db to identify the root samples\nin sampleidmap or the terms annotating root samples in the terms table.\nThe samples associated to a patient have annotations that are specific to a timepoint, for example, the age of the patient,\nthe doses of the drugs the patient was taking at the time of the data collection, etc. These annotations are associated to a sample.\n*/\nexport const ROOT_SAMPLE_TYPE = 1\n\n//For datasets with one sample type the DEFAULT_SAMPLE_TYPE is used to represent the sample type\nexport const DEFAULT_SAMPLE_TYPE = 2\n\nexport const NumericModes = {\n\tcontinuous: 'continuous',\n\tdiscrete: 'discrete'\n}\n\n// the dt term types are also declared in TermTypes, see the assertion in terms.unit.spec.ts\nexport const dtTermTypes: Set<string> = new Set(dtTerms.map((t: any) => t.type))\n\nexport const TermTypes2Dt = {\n\t[GENE_EXPRESSION]: dtgeneexpression,\n\t[SSGSEA]: dtssgsea,\n\t[DNA_METHYLATION]: dtdnamethylation,\n\t[METABOLITE_INTENSITY]: dtmetaboliteintensity,\n\t[PROTEOME_ABUNDANCE]: dtproteomeabundance\n}\n\n// maps term type to group (as is shown as toggles in search ui)\nexport const typeGroup = {\n\t[CATEGORICAL]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[CONDITION]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[FLOAT]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[INTEGER]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[SAMPLELST]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[SURVIVAL]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[DATE]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[MULTIVALUE]: TermTypeGroups.DICTIONARY_VARIABLES,\n\t[GENE_VARIANT]: TermTypeGroups.MUTATION_CNV_FUSION,\n\t[SNP]: TermTypeGroups.SNP,\n\t[SNP_LIST]: TermTypeGroups.SNP_LIST,\n\t[SNP_LOCUS]: TermTypeGroups.SNP_LOCUS,\n\t[GENE_EXPRESSION]: TermTypeGroups.GENE_EXPRESSION,\n\t[ISOFORM_EXPRESSION]: TermTypeGroups.ISOFORM_EXPRESSION,\n\t[JUNCTION]: TermTypeGroups.SPLICE_JUNCTION,\n\t[SSGSEA]: TermTypeGroups.SSGSEA,\n\t[DNA_METHYLATION]: TermTypeGroups.DNA_METHYLATION,\n\t[METABOLITE_INTENSITY]: TermTypeGroups.METABOLITE_INTENSITY,\n\t[PROTEOME_ABUNDANCE]: TermTypeGroups.PROTEOME_ABUNDANCE,\n\t[PSEUDOBULK]: TermTypeGroups.PSEUDOBULK,\n\t[TERM_COLLECTION]: TermTypeGroups.TERM_COLLECTION,\n\t[SINGLECELL_CELLTYPE]: TermTypeGroups.SINGLECELL_CELLTYPE,\n\t[SINGLECELL_GENE_EXPRESSION]: TermTypeGroups.SINGLECELL_GENE_EXPRESSION,\n\t[SINGLECELL_NUMERIC_VALUE]: TermTypeGroups.SINGLECELL_NUMERIC_VALUE,\n\t[COHORT]: TermTypeGroups.COHORT\n}\n\nconst nonDictTypes = new Set([\n\tSNP,\n\tSNP_LIST,\n\tSNP_LOCUS,\n\tGENE_EXPRESSION,\n\tISOFORM_EXPRESSION,\n\tJUNCTION,\n\tSSGSEA,\n\tDNA_METHYLATION,\n\tGENE_VARIANT,\n\tMETABOLITE_INTENSITY,\n\tPROTEOME_ABUNDANCE,\n\tPSEUDOBULK,\n\tSINGLECELL_CELLTYPE,\n\tSINGLECELL_GENE_EXPRESSION,\n\tSINGLECELL_NUMERIC_VALUE,\n\tCOHORT\n])\n\nfor (const dtTermType of dtTermTypes) {\n\tnonDictTypes.add(dtTermType)\n}\n\nexport const numericTypes = new Set([\n\tINTEGER,\n\tFLOAT,\n\tGENE_EXPRESSION,\n\tISOFORM_EXPRESSION,\n\tJUNCTION,\n\tSSGSEA,\n\tDNA_METHYLATION,\n\tMETABOLITE_INTENSITY,\n\tPROTEOME_ABUNDANCE,\n\tSINGLECELL_GENE_EXPRESSION,\n\tSINGLECELL_NUMERIC_VALUE,\n\tDATE,\n\tPSEUDOBULK\n])\n\n// dictionary numeric term types, exists in db tables, exclude non-dictionary term types\nexport const dictionaryNumericTypes = new Set([INTEGER, FLOAT, DATE])\n\nconst categoricalTypes = new Set([CATEGORICAL, SNP])\n\n/** Note: Do not add pseudobulk here. These capture cell level terms.\n * Pseudobulk terms are sample level terms. May in the future update\n * to isSCCellLevelTerms() and isSingleCellTerm() if the need arises */\nconst singleCellTerms = new Set([\n\tSINGLECELL_CELLTYPE,\n\tSINGLECELL_GENE_EXPRESSION,\n\tSINGLECELL_NUMERIC_VALUE /*PSEUDOBULK*/\n])\n\nexport type TwSampleTypes = {\n\tsampleTypes?: number[] // sample types of termwrapper\n\tchildSampleTypes?: number[] // child sample types to map to\n}\n\nexport function isSingleCellTerm(term: any) {\n\tif (!term) return false\n\tif (typeof term !== 'object') throw new Error('Term is not an object. Did you provide the type instead?')\n\treturn singleCellTerms.has(term.type)\n}\nexport function isNumericTerm(term: Term) {\n\tif (!term) return false\n\treturn numericTypes.has(term.type)\n}\n\n/** True when a term wrapper resolves to one numeric value per sample.\n * A termCollection in values mode is intentionally excluded because it retains\n * one value per member term rather than resolving to a scalar. */\nexport function isNumericTw(tw: any) {\n\tif (!tw?.term) return false\n\treturn (\n\t\tisNumericTerm(tw.term) ||\n\t\t(tw.term.type === TERM_COLLECTION && tw.term.memberType === 'numeric' && tw.type === 'TermCollectionTWFraction')\n\t)\n}\nexport function isCategoricalTerm(term: Term) {\n\tif (!term) return false\n\treturn categoricalTypes.has(term.type)\n}\n\nexport function isDictionaryType(type: string) {\n\treturn !isNonDictionaryType(type)\n}\n\nexport function isNonDictionaryType(type: string) {\n\tif (!type) throw new Error('Type is not defined')\n\treturn nonDictTypes.has(type)\n}\n\nexport function isNumTermCollection(term: Term) {\n\tif (!term || !term.type) throw new Error('Term or term type is not defined')\n\t//Enable this check when memberType is added to term collection\n\t// return term.type === TERM_COLLECTION && term.memberType == 'numeric'\n\treturn term.type === TERM_COLLECTION\n}\n\nexport function equals(t1: any, t2: any) {\n\tif (!t1) throw new Error('First term is not defined ')\n\tif (!t2) throw new Error('Second term is not defined ')\n\tif (t1.type !== t2.type) return false //term types are different\n\tif (isDictionaryType(t1.type) && isDictionaryType(t2.type) && t1.type != SAMPLELST) return t1.id === t2.id\n\tswitch (t1.type) {\n\t\tcase GENE_EXPRESSION:\n\t\t\treturn t1.gene == t2.gene\n\t\tcase ISOFORM_EXPRESSION:\n\t\t\treturn t1.isoform == t2.isoform\n\t\tcase JUNCTION:\n\t\t\treturn t1.chr == t2.chr && t1.start == t2.start && t1.stop == t2.stop && t1.strand == t2.strand\n\t\tcase SSGSEA:\n\t\t\treturn t1.id == t2.id\n\t\tcase DNA_METHYLATION:\n\t\t\treturn t1.chr == t2.chr && t1.start == t2.start && t1.stop == t2.stop\n\t\tcase METABOLITE_INTENSITY:\n\t\tcase PROTEOME_ABUNDANCE:\n\t\t\treturn t1.name == t2.name\n\t\tcase GENE_VARIANT:\n\t\t\treturn t1.gene == t2.gene || (t1.chr == t2.chr && t1.start == t2.start && t1.stop == t2.stop)\n\n\t\t// TO DO: Add more cases\n\t\t// case SNP_LIST:\n\t\t// case SNP_LOCUS:\n\t\t// case SAMPLELST:\n\n\t\tdefault:\n\t\t\treturn false\n\t}\n}\n\n/*\nA filled-in geneVariant term carries derived properties that dominate its serialized\nsize: term.childTerms[], and for a predefined groupset, term.groupsetting.lst[] with\nan embedded copy of a dt term (values, mnames, parentTerm) per tvs of every groupset.\nNone of it is needed to answer a data request:\n- no server code reads term.childTerms[]; it is a client-side convenience that\n GvBase.fill() rebuilds from termdbConfig\n- only the groupset at q.predefined_groupset_idx is read server-side, by\n get_active_groupset() in server/src/termdb.sql.js\n- dtTerm.mnames[] (the amino acid change tally) is only read by the tvs edit UI,\n which re-queries it in fillMenu() before rendering\n\nTrimming these shrinks a single-gene request payload by ~80%.\n\nterm{} and q{} are mutated in place, so only call this on a copy that is about to\nbe serialized into a request payload, never on a tw held in state.\n*/\nexport function trimGvTermCopy(term: any, q: any) {\n\tif (term?.type != GENE_VARIANT) return term\n\tdelete term.childTerms\n\t/* the parent of a groupset tvs is this very term, and the server reads it off the\n\ttw rather than off the tvs, see setGroupsetParentTerms() */\n\tif (q?.customset) clearGroupsetParentTerms(q.customset)\n\tconst lst = term.groupsetting?.lst\n\tif (!lst?.length) return term\n\tif (q?.type == 'predefined-groupset') {\n\t\t// keep only the active groupset, but preserve the array indexes,\n\t\t// since the server reads groupsetting.lst[q.predefined_groupset_idx]\n\t\tconst idx = q.predefined_groupset_idx\n\t\tterm.groupsetting.lst = lst.map((groupset: any, i: number) => (i === idx ? groupset : null))\n\t\tclearDtTermMnames(term.groupsetting.lst[idx])\n\t\tclearGroupsetParentTerms(term.groupsetting.lst[idx])\n\t} else {\n\t\t// no predefined groupset is in use, so no entry of lst[] is read server-side\n\t\tdelete term.groupsetting.lst\n\t}\n\treturn term\n}\n\n/*\nCall back on every geneVariant tw of an object, at any depth, so that a caller can accept a\nwhole state, a state.plots[], or one plot config without knowing where a plot keeps its tws\n(term/term0/term2 of a chart, termgroups[].lst[] of a matrix, and so on).\n\nA tw is identified by a term{} paired with a q{}, so that the dt term of a tvs of a mass\nfilter, which is a bare term, is never mistaken for one.\n\nDescends into a matched tw as well, since a tw can nest one: the tvs of a custom groupset\ncarry a parentTerm, which is a copy and not a reference back to the term walked here, so no\ncycle reaches this walk (see setGroupsetParentTerms()).\n*/\nexport function forEachGvTw(obj: any, callback: (tw: any) => void) {\n\tif (!obj || typeof obj != 'object') return\n\tif (obj.q && obj.term?.type == GENE_VARIANT) callback(obj)\n\t// own values only, to not descend into inherited props/methods, as in StoreBase.deepFreeze()\n\tfor (const value of Object.values(obj)) forEachGvTw(value, callback)\n}\n\n/*\nStrip every derived property of a geneVariant term from a state that is about to be\nserialized into a saved session, in place. Walks any object and trims the term of each\ngeneVariant tw it finds, so it accepts a whole state, a state.plots[], or one plot config.\n\nThis goes further than trimGvTermCopy() above, which shapes a request payload and so has\nto keep whatever the server reads. Nothing here has to survive, because a saved session is\nalways re-filled before it is rendered:\n- a session opened by url is filled by getPlotConfig() in init(), see client/mass/store.ts\n- a session opened in a running app is filled by preprocessState(), see client/mass/sessionBtn.js\nand GvBase.fill() rebuilds term.childTerms[] from termdbConfig, term.groupsetting from the\nchild terms, and each childTerm.parentTerm from the term itself.\n\nBetween them these are ~91% of a serialized single-gene tw, and the ratio climbs with the\ngene count: term.genes[] is serialized once per childTerm.parentTerm and once per tvs of the\nselected groupset, so a 200-gene tw carries ~9 copies of it.\n\nOnly the parentTerm of a customset tvs is trimmed out of q{}, which GvCustomGS.fill()\nre-attaches; the rest of q.customset is user-authored and no fill() rebuilds it. The dt term\nof a tvs of a mass filter does need its own parentTerm, and keeps it, since forEachGvTw()\nonly reaches a term paired with a q.\n*/\nexport function trimGvTermsForSave(obj: any) {\n\tforEachGvTw(obj, tw => {\n\t\tdelete tw.term.childTerms\n\t\t// deleting rather than emptying, since GvBase.fill() recreates it from scratch\n\t\tdelete tw.term.groupsetting\n\t\tif (tw.q.customset) clearGroupsetParentTerms(tw.q.customset)\n\t})\n\treturn obj\n}\n\n/*\nThe identity of the gene(s) a geneVariant term queries, which keys the settings remembered\nfor that term, see remember_gvq() in client/mass/store.ts.\n\nBuilt from the gene entries rather than from term.id or term.name, which for a gene set are\na name the user typed: two gene sets over the same genes would key apart, while a gene set\nsomeone named \"BCR\" would collide with the gene. Sorted, so that the same genes picked in a\ndifferent order are one key.\n\nEach entry is keyed by what identifies it and not by its label:\n- a gene entry by its symbol, never by its coordinates, which are annotated onto it only by\n a query that needs them (see mayMapGeneName2coord()), so keying by them would give one\n gene two keys depending on what had been queried\n- a coord entry by its region, never by its name: GvBase.fill() only auto-names one that\n has no name, so a supplied label would key the same region twice, and two regions sharing\n a label would collide into one key -- which is worse, since a setting built for one region\n would be offered for the other\n\nReturns '' for a term whose entries cannot all be identified, rather than a partial key that\ntwo different terms could share.\n*/\nexport function getGvGeneKey(term: any): string {\n\t// a term saved before term.genes[] existed describes its single gene at the top level,\n\t// and may reach here before GvBase.fill() normalizes it\n\tconst genes = term?.genes?.length ? term.genes : term ? [term] : []\n\tconst keys = genes\n\t\t.map((gene: any) => {\n\t\t\tif (getGvGeneKind(gene) == 'coord') {\n\t\t\t\tconst region = getGvQueryRegion(gene)\n\t\t\t\t// the same string fill() would auto-name the entry, so an auto-named coord\n\t\t\t\t// entry keys identically whether or not it has been filled\n\t\t\t\treturn region ? `${region.chr}:${region.start + 1}-${region.stop}` : undefined\n\t\t\t}\n\t\t\treturn gene.gene || gene.name\n\t\t})\n\t\t.filter((key: any) => typeof key == 'string' && key)\n\tif (!keys.length || keys.length != genes.length) return ''\n\treturn keys.sort().join(',')\n}\n\n/*\nThe key a remembered geneVariant setting is cached under, see remember_gvq() in\nclient/mass/store.ts. Returns '' for a term that getGvGeneKey() cannot key.\n\nPrefixed because the cache is a plain object keyed by gene names a url or an embedder can\nsupply, and is serialized into every session saved from the state:\n\n- an unprefixed gene named '__proto__' or 'constructor' would name an inherited property of\n the cache, so a read would resolve to Object.prototype or to a function instead of missing\n- worse, such a key survives JSON.parse() as an own key that copyMerge() then walks when a\n session is reopened, resolving target['__proto__'] to Object.prototype through the getter\n and writing the cached list onto it, see copyMerge() in client/rx/src/StoreBase.ts\n\n- an unprefixed integer-like gene name would also sort ahead of the rest in Object.keys(),\n which the least-recently-used eviction in remember_gvq() reads as insertion order\n\nThe prefix cannot itself be produced by getGvGeneKey(), since a gene symbol or a coord\nregion never starts with it, so prefixed keys stay one-to-one with the terms they key.\n*/\nexport const gvQCacheKeyPrefix = 'gv:'\nexport function getGvQCacheKey(term: any): string {\n\tconst key = getGvGeneKey(term)\n\treturn key ? gvQCacheKeyPrefix + key : ''\n}\n\n/** the kind of a geneVariant gene entry, inferred exactly as GvBase.fill() infers it for an\n * entry that predates term.kind, so that a term keys the same before and after it is filled */\nfunction getGvGeneKind(gene: any): string | undefined {\n\tif (gene?.kind) return gene.kind\n\tif (gene?.gene || (gene?.name && !gene.chr)) return 'gene'\n\tif (gene?.chr) return 'coord'\n\treturn undefined\n}\n\n/*\nA copy of a geneVariant q, reduced to what is worth remembering as a reusable setting, see\nremember_gvq() in client/mass/store.ts.\n\nEverything dropped is re-derived when a tw is filled with this q, so keeping it would only\nbloat the app state and every session saved from it, and would make two equivalent settings\ncompare as different when de-duplicating:\n- hiddenValues is refilled by set_hiddenvalues()\n- dtLst is always re-derived from the groups rather than trusted, see GvCustomGS.fill()\n- the mname tally and parent term of every customset tvs are re-attached on fill\n*/\nexport function trimGvQForCache(q: any) {\n\tconst copy = structuredClone(q)\n\tdelete copy.isAtomic\n\tdelete copy.hiddenValues\n\tdelete copy.dtLst\n\tif (copy.customset) {\n\t\tclearDtTermMnames(copy.customset)\n\t\tclearGroupsetParentTerms(copy.customset)\n\t}\n\treturn copy\n}\n\n/*\nA geneVariant term is queried per entry of term.genes[], and every value it yields records\nwhich entry it came from. That record used to be a single .gene holding the entry's NAME,\nwhich for a kind='coord' entry is a coordinate string -- so consumers reading .gene as a\ngene symbol got a region, e.g. a matrix export labelling a variant \"chr1:47213991-47318918\".\n\nThe two things are now separate: .gene is a gene symbol and is simply absent for a region,\nwhile .region below is what was queried and is present either way. The helpers here are the\none place that knows the shape.\n*/\n\n/* the region a query entry covers, which every value found through it carries. Distinct\nfrom the value's own .start/.stop, which are the event's -- a cnv segment is not the region\nthat found it.\n\nCoordinates are annotated onto a gene entry by mayMapGeneName2coord() when a query needing\nthem runs, so this is undefined for a gene only queried by dts that never map coords. A\ncoord entry always carries them, since fill() requires them. */\nexport function getGvQueryRegion(gene: any) {\n\tif (!gene?.chr || !Number.isInteger(gene.start) || !Number.isInteger(gene.stop)) return\n\treturn { chr: gene.chr, start: gene.start, stop: gene.stop }\n}\n\n/* identity of the query entry a value came from, for grouping and de-duplicating the values\nof a term over several genes or regions. The gene symbol when there is one, else the region. */\nexport function getGvQueryKey(v: any) {\n\tif (v?.gene) return v.gene\n\tconst r = v?.region\n\treturn r ? `${r.chr}:${r.start}-${r.stop}` : ''\n}\n\n/*\nThe wire format for the query entry of a value, as the two halves that must stay inverse of\neach other: get_matrix.js interns on the way out, TermdbVocab.js restores on the way in.\n\nA term's values repeat their query entry endlessly -- one .region object per value, tens of\nthousands of them in a matrix request -- so the distinct entries are collected once into\nrefs.byTermId[$id].queries[] and each value keeps only its index in .$q.\n\nBoth live here so the format has one definition and can be round-tripped in a test.\n*/\n\n/** replace a value's query entry with its index into queries[], interning it if new.\n * returns false for a value that records no query entry, which is left untouched */\nexport function internGvQueryEntry(v: any, queries: any[], idxByKey: Map<string, number>) {\n\tconst key = getGvQueryKey(v)\n\tif (!key) return false\n\tlet i = idxByKey.get(key)\n\tif (i === undefined) {\n\t\ti = queries.length\n\t\tconst entry: any = {}\n\t\tif (v.gene) entry.gene = v.gene\n\t\tif (v.region) entry.region = v.region\n\t\tqueries.push(entry)\n\t\tidxByKey.set(key, i)\n\t}\n\tv.$q = i\n\tdelete v.gene\n\tdelete v.region\n\treturn true\n}\n\n/** the inverse: put the query entry back on a value. returns false when there is nothing\n * to restore, e.g. a term whose values carry no query entry */\nexport function restoreGvQueryEntry(v: any, queries: any[] | undefined) {\n\tif (!queries || v?.$q === undefined) return false\n\tObject.assign(v, queries[v.$q])\n\tdelete v.$q\n\treturn true\n}\n\n/*\nWhether a values[] entry of a tvs, naming an amino acid change, is scoped to the query entry\na variant came from.\n\nAn entry may name a .gene, so that KRAS G12D of a gene-set term does not match NRAS G12D, or\na .region for the same reason over a term of several queried regions. Naming neither leaves\nit unscoped, matching that change wherever it was found -- which is what a single-entry term\nwants, and what the variant config emits for one.\n\nBoth matchers call this so a tvs means the same thing on either side: filterByItem() in\nserver/src/mds3.init.js and matchTvs() in geneVariantFilter.ts.\n*/\nexport function matchesGvQueryEntry(entry: any, v: any) {\n\tif (entry.gene) return entry.gene == v.gene\n\tconst r = entry.region\n\tif (r) return !!v.region && r.chr == v.region.chr && r.start == v.region.start && r.stop == v.region.stop\n\treturn true\n}\n\n/*\nThe dt term of a tvs carries a parentTerm, but for two unrelated reasons:\n\n- a tvs of a mass filter stands alone, so its parentTerm is the only record of which gene\n it is about. get_dtTerm() in server/src/termdb.filter.js reads it to run the query, and\n the tvs edit UI reads it to label the pill. it must be kept.\n- a tvs of a groupset (q.customset, or term.groupsetting.lst[]) has no such need: its\n parent is by definition the term of the tw that holds the groupset. storing one there is\n a copy of term.genes[] per tvs that nothing keeps in sync with the term it was copied\n from, and a termsetting instance is reused across terms, so it does go stale (see\n makeGroupUI() in client/termsetting/handlers/geneVariant.ts).\n\nSo a groupset gets its parentTerms rebuilt on every fill() instead of storing them, which\nlets both trims above drop them: a groupset tvs is evaluated against the tw that holds it,\nand get_dtTerm() in server/src/termdb.filter.js is the only server-side reader of a\nparentTerm, so nothing there misses the one a groupset does not store.\n\nOne snapshot is shared by reference across the tvs, as the child dt terms of a predefined\ngroupset already are. That is only safe because the trims drop it before it is ever\nserialized, which would turn the one shared copy back into one copy per tvs.\n\nThrows on a tvs whose term is not a dt term: the groups of a geneVariant groupset can only\nfilter by dt, and the server would otherwise fail deep in filterByItem().\n*/\nexport function setGroupsetParentTerms(groupset: any, term: any) {\n\tif (term?.type != GENE_VARIANT) throw 'parent of a groupset tvs must be a geneVariant term'\n\tconst parentTerm = structuredClone(term)\n\t// the parent of a dt term is the gene(s), not the derived properties of the term\n\tdelete parentTerm.childTerms\n\tdelete parentTerm.groupsetting\n\twalkTvs(groupset, (tvs: any) => {\n\t\tif (!dtTermTypes.has(tvs.term?.type)) throw `groupset tvs term is not a dt term`\n\t\ttvs.term.parentTerm = parentTerm\n\t})\n\treturn groupset\n}\n\n/* drop what setGroupsetParentTerms() re-attaches. tolerates a malformed tvs, since a trim\nmust never be the thing that throws on the way into a request or a saved session */\nfunction clearGroupsetParentTerms(groupset: any) {\n\twalkTvs(groupset, (tvs: any) => {\n\t\tif (tvs.term) delete tvs.term.parentTerm\n\t})\n\treturn groupset\n}\n\n/* run fn on every tvs of a groupset, a group, or a filter.\n\nA tvs is a leaf: a nested tvslst is a sibling of it in filter.lst[], never inside it. Not\ndescending matters, because a tvs can hold a filter of its own that is not part of the\ngroupset structure -- tvs.mafFilter wraps a maf term, which is a dictionary term rather\nthan a dt term (see getMafFilter() in client/tw/geneVariant.ts). getDtsFromFilter() above\nreads a filter the same way. */\nfunction walkTvs(obj: any, fn: (tvs: any) => void) {\n\tif (!obj || typeof obj != 'object') return\n\tif (obj.type == 'tvs' && obj.tvs) {\n\t\tfn(obj.tvs)\n\t\treturn\n\t}\n\tfor (const k in obj) walkTvs(obj[k], fn)\n}\n\n/* the dts queried by a set of groups, read off the dt term of each tvs of their filters */\nexport function getDtsFromGroups(groups: any[]): any[] {\n\tconst dts = new Set<any>()\n\tfor (const group of groups) {\n\t\tfor (const dt of getDtsFromFilter(group.filter)) dts.add(dt)\n\t}\n\treturn [...dts]\n}\n\nfunction getDtsFromFilter(filter: any): Set<any> {\n\tconst dts = new Set<any>()\n\tfor (const item of filter.lst) {\n\t\tif (item.type == 'tvslst') {\n\t\t\tfor (const dt of getDtsFromFilter(item)) dts.add(dt)\n\t\t} else {\n\t\t\tdts.add(item.tvs.term.dt)\n\t\t}\n\t}\n\treturn dts\n}\n\n/*\ndelete the amino acid change tally from every dt term nested in a groupset or filter.\n\nOnly the variant config UI reads mnames, and it re-queries them before rendering (see\ngetDtTermValues() in client/filter/tvs.dt.js), so a tally stored on a tvs is dead weight\nthat is re-serialized once per tvs. Walks any object, so it accepts a groupset, a group,\nor a filter.\n*/\nexport function clearDtTermMnames(obj: any) {\n\twalkTvs(obj, (tvs: any) => {\n\t\tif (tvs.term) delete tvs.term.mnames\n\t})\n\treturn obj\n}\n\nexport function getBin(lst: any[], value: number) {\n\tlet bin = lst.findIndex(\n\t\tb => (b.startunbounded && value < b.stop) || (b.startunbounded && b.stopinclusive && value == b.stop)\n\t)\n\tif (bin == -1)\n\t\tbin = lst.findIndex(\n\t\t\tb => (b.stopunbounded && value > b.start) || (b.stopunbounded && b.startinclusive && value == b.start)\n\t\t)\n\tif (bin == -1)\n\t\tbin = lst.findIndex(\n\t\t\tb =>\n\t\t\t\t(value > b.start && value < b.stop) ||\n\t\t\t\t(b.startinclusive && value == b.start) ||\n\t\t\t\t(b.stopinclusive && value == b.stop)\n\t\t)\n\treturn bin\n}\n\n// get sample types of termwrapper\nexport function getTwSampleTypes(tw: any, ds: any): TwSampleTypes {\n\tconst term = tw?.term\n\tif (!term) return {}\n\t// prioritize user-defined sample types\n\tif (term.sampleTypes) {\n\t\treturn { sampleTypes: term.sampleTypes }\n\t}\n\tif (dtTermTypes.has(term.type)) {\n\t\tif (term.parentTerm.sampleTypes) {\n\t\t\treturn { sampleTypes: term.parentTerm.sampleTypes }\n\t\t}\n\t}\n\tconst defaultSampleTypes = getDefaultSampleTypes(ds)\n\tif (ds.cohort.termdb.term2SampleType.has(term.id)) {\n\t\tconst sampleType = ds.cohort.termdb.term2SampleType.get(term.id)\n\t\tif (Number.isInteger(sampleType)) {\n\t\t\treturn { sampleTypes: [sampleType] }\n\t\t} else if (sampleType && typeof sampleType == 'object') {\n\t\t\tif (!Number.isInteger(sampleType.sampleType)) throw new Error('sampleType.sampleType is non-numeric')\n\t\t\tif (!Array.isArray(sampleType.childSampleTypes)) throw new Error('sampleType.childSampleTypes is not array')\n\t\t\treturn { sampleTypes: [sampleType.sampleType], childSampleTypes: sampleType.childSampleTypes }\n\t\t} else {\n\t\t\treturn {}\n\t\t}\n\t}\n\tif (term.type == 'samplelst') {\n\t\tconst key = Object.keys(term.values)[0]\n\t\tconst sampleId = term.values[key].list[0]?.sampleId\n\t\tif (sampleId) {\n\t\t\tconst sampleType = ds.sampleId2Type.get(Number(sampleId) || sampleId)\n\t\t\treturn Number.isInteger(sampleType) ? { sampleTypes: [sampleType] } : {}\n\t\t}\n\t}\n\treturn { sampleTypes: defaultSampleTypes }\n}\n\n// default sample types will be all non-root sample types\nexport function getDefaultSampleTypes(ds: any) {\n\tconst sampleTypes = Object.keys(ds.cohort.termdb.sampleTypes)\n\t\t.filter(key => Number.isInteger(ds.cohort.termdb.sampleTypes[key].parent_id))\n\t\t.map(Number)\n\treturn sampleTypes\n}\n\n// filter sampleTypesByTerms for those entries with query sample types\nexport function getQuerySampleTypesByTerms(sampleTypesByTerms: SampleTypesByTerms, querySampleTypes: number[]) {\n\tif (!sampleTypesByTerms) return\n\tconst querySampleTypesByTerms: any = {}\n\tfor (const [term, values] of Object.entries(sampleTypesByTerms)) {\n\t\tconst queryValues: any = {}\n\t\tfor (const [value, sampleTypes] of Object.entries(values)) {\n\t\t\tconst filteredSampleTypes = sampleTypes.filter(sampleType => querySampleTypes.includes(sampleType))\n\t\t\tif (filteredSampleTypes.length) queryValues[value] = filteredSampleTypes\n\t\t}\n\t\tif (Object.keys(queryValues).length) querySampleTypesByTerms[term] = queryValues\n\t}\n\tif (!Object.keys(querySampleTypesByTerms).length) return\n\treturn querySampleTypesByTerms\n}\n\n//Returns human readable label for each term type; label is just for printing and not computing\nconst typeMap: { [key: string]: string } = {\n\tcategorical: 'Categorical',\n\tcondition: 'Condition',\n\tfloat: 'Numerical',\n\tinteger: 'Numerical',\n\tdate: 'Date',\n\tgeneExpression: 'Gene Expression',\n\tisoformExpression: 'Isoform Expression',\n\t[JUNCTION]: 'Splice junction',\n\tssGSEA: 'Geneset Expression',\n\tdnaMethylation: 'DNA Methylation',\n\tgeneVariant: 'Gene Variant',\n\tmetaboliteIntensity: 'Metabolite Intensity',\n\tproteomeAbundance: 'Proteome Abundance',\n\tproteomeDAP: 'Proteome DAP',\n\tmultivalue: 'Multi Value',\n\tsingleCellGeneExpression: 'Single Cell, Gene Expression',\n\tsingleCellCellType: 'Single Cell, Cell Type',\n\tsingleCellNumericValue: 'Single Cell, Numeric Value',\n\tsnplocus: 'SNP Locus',\n\tsnp: 'SNP',\n\tsnplst: 'SNP List',\n\ttermCollection: 'Term Collection'\n}\n\n// with a term obj, returns human readable item type name for a term.\n// using a term obj rather than just term type gives more control (e.g. gene vs coord for genevariant term)\nexport function termItemType(t: Term): string {\n\tswitch (t.type) {\n\t\tcase JUNCTION:\n\t\t\treturn 'Splice junction'\n\t\tcase GENE_EXPRESSION:\n\t\tcase SINGLECELL_GENE_EXPRESSION:\n\t\t\treturn 'Gene'\n\t\tcase ISOFORM_EXPRESSION:\n\t\t\treturn 'Isoform'\n\t\tcase SSGSEA:\n\t\t\treturn 'Gene set'\n\t\tcase METABOLITE_INTENSITY:\n\t\t\treturn 'Metabolite'\n\t\t// keep adding here\n\t\tdefault:\n\t\t\treturn 'Variable'\n\t}\n}\n\nexport function termType2label(type: string) {\n\tconst s = typeMap[type]\n\tif (s) return s\n\tthrow new Error('termType2label(): unknown value')\n}\n\nexport function getDateFromNumber(value: number) {\n\tconst year = Math.floor(value)\n\tconst january1st = new Date(year, 0, 1)\n\tconst totalDays = getDaysInYear(year)\n\tconst time = Math.round((value - year) * totalDays) * oneDayTime\n\tconst date = new Date(january1st.getTime() + time)\n\treturn date\n}\n/*\nValue is a decimal year.\nA decimal year is a way of expressing a date or time period as a year with a decimal part, where the decimal portion \nrepresents the fraction of the year that has elapsed. \nExample:\n2025.0 represents the beginning of the year 2025. \n2025.5 represents the middle of the year 2025. \n */\nconst oneDayTime = 24 * 60 * 60 * 1000\n\nexport function getDateStrFromNumber(value: number) {\n\tconst date = getDateFromNumber(value)\n\n\t//Omit day to deidentify the patients\n\treturn date.toLocaleDateString('en-US', {\n\t\tyear: 'numeric',\n\t\tmonth: 'long'\n\t})\n}\n\n//The value returned is a decimal year\n//A decimal year is a way of expressing a date or time period as a year with a decimal part, where the decimal portion\n//represents the fraction of the year that has elapsed.\nexport function getNumberFromDateStr(str: string) {\n\tconst date = new Date(str)\n\treturn getNumberFromDate(date)\n}\n\nexport function getNumberFromDate(date: Date) {\n\tconst year = date.getFullYear()\n\tconst january1st: Date = new Date(year, 0, 1)\n\tconst diffDays = (date.getTime() - january1st.getTime()) / oneDayTime\n\tconst daysTotal = getDaysInYear(year)\n\tconst decimal = diffDays / daysTotal\n\treturn year + decimal\n}\n\nexport function getDaysInYear(year: number) {\n\tconst isLeap = new Date(year, 1, 29).getMonth() === 1\n\tconst days = isLeap ? 366 : 365\n\treturn days\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,134 @@
1
+ import {
2
+ addGeneSearchbox,
3
+ isoformSelect,
4
+ pickCollectionFraction,
5
+ sayerror
6
+ } from "./chunk-VHDYIOWU.js";
7
+ import {
8
+ Menu
9
+ } from "./chunk-7XZA2XR2.js";
10
+ import {
11
+ dofetch3
12
+ } from "./chunk-RMUK3TLD.js";
13
+ import {
14
+ ISOFORM_EXPRESSION,
15
+ getColors
16
+ } from "./chunk-57Z4VYLM.js";
17
+
18
+ // termdb/handlers/isoformExpression.ts
19
+ var SearchHandler = class {
20
+ constructor() {
21
+ this.currentGene = null;
22
+ }
23
+ init(opts) {
24
+ this.callback = opts.callback;
25
+ this.app = opts.app;
26
+ this.termCollectionSelectionMode = opts.termCollectionSelectionMode;
27
+ const holder = opts.holder.append("div").style("padding", "10px 0px");
28
+ this.dom = {
29
+ errDiv: holder.append("div").style("margin", "5px 0px").style("display", "none")
30
+ };
31
+ const geneSearch = addGeneSearchbox({
32
+ tip: new Menu({ padding: "0px" }),
33
+ genome: opts.genomeObj,
34
+ row: holder,
35
+ searchOnly: "gene",
36
+ callback: async () => {
37
+ try {
38
+ this.dom.errDiv.style("display", "none");
39
+ if (!geneSearch.geneSymbol) throw new Error("No gene selected");
40
+ if (geneSearch.geneSymbol === this.currentGene) return;
41
+ this.currentGene = geneSearch.geneSymbol;
42
+ if (this.dom.isoformDiv) this.dom.isoformDiv.remove();
43
+ this.dom.isoformDiv = holder.append("div");
44
+ await this.showIsoforms(geneSearch.geneSymbol, opts.genomeObj);
45
+ } catch (e) {
46
+ this.dom.errDiv.style("display", "block");
47
+ sayerror(this.dom.errDiv, "Error: " + (e instanceof Error ? e.message : String(e)));
48
+ }
49
+ }
50
+ });
51
+ }
52
+ async showIsoforms(gene, genomeObj) {
53
+ if (!gene) throw new Error("No gene selected");
54
+ const data = await dofetch3("genelookup", { body: { genome: genomeObj.name, input: gene, deep: 1 } });
55
+ if (!data.gmlst?.length) throw new Error(`No isoforms found for ${gene}`);
56
+ const enstCandidates = data.gmlst.filter((gm) => gm.isoform?.startsWith("ENST"));
57
+ if (enstCandidates.length === 0) throw new Error(`No Ensembl transcript isoforms found for ${gene}`);
58
+ const { available } = await dofetch3("termdb/isoformAvailability", {
59
+ body: {
60
+ genome: genomeObj.name,
61
+ dslabel: this.app.vocabApi.vocab.dslabel,
62
+ isoforms: enstCandidates.map((gm) => gm.isoform)
63
+ }
64
+ });
65
+ const availableSet = new Set(available || []);
66
+ const enstModels = enstCandidates.filter((gm) => availableSet.has(gm.isoform));
67
+ if (enstModels.length === 0) throw new Error(`No isoforms with data found for ${gene}`);
68
+ if (gene !== this.currentGene) return;
69
+ const div = this.dom.isoformDiv;
70
+ div.append("div").style("margin-bottom", "8px").style("opacity", 0.65).text(`${gene} \u2014 select isoform(s):`);
71
+ isoformSelect({
72
+ holder: div,
73
+ allgm: enstModels,
74
+ multiSelect: true,
75
+ // a single checked isoform yields an individual term, 2+ yield a collection
76
+ getSubmitLabel: (selectedCount) => selectedCount === 1 ? "Select One Isoform" : `Create Collection (${selectedCount})`,
77
+ onMultiSelect: (selected) => {
78
+ if (selected.length === 1) {
79
+ this.selectIsoform(selected[0].isoform, gene);
80
+ } else {
81
+ this.selectCollection(selected, gene);
82
+ }
83
+ }
84
+ });
85
+ }
86
+ getUnit() {
87
+ return this.app.vocabApi.termdbConfig.queries.isoformExpression?.unit || "TPM";
88
+ }
89
+ selectIsoform(isoform, gene) {
90
+ const name = `${isoform} ${this.getUnit()}`;
91
+ this.callback({ isoform, gene, name, type: ISOFORM_EXPRESSION });
92
+ }
93
+ selectCollection(gms, gene) {
94
+ const unit = this.getUnit();
95
+ const termlst = gms.map((gm) => ({
96
+ id: gm.isoform,
97
+ name: gm.isoform,
98
+ type: ISOFORM_EXPRESSION,
99
+ isoform: gm.isoform
100
+ }));
101
+ const colorScale = getColors(termlst.length);
102
+ const term = {
103
+ type: "termCollection",
104
+ isCustom: true,
105
+ memberType: "numeric",
106
+ name: `${gene} Isoforms (${unit})`,
107
+ termlst,
108
+ propsByTermId: Object.fromEntries(termlst.map((term2) => [term2.id, { color: colorScale(term2.id) }])),
109
+ isleaf: true
110
+ };
111
+ if (this.termCollectionSelectionMode === "fraction") {
112
+ if (!this.dom?.isoformDiv) throw new Error("isoform result holder is missing");
113
+ this.dom.fractionDiv?.remove();
114
+ this.dom.fractionDiv = this.dom.isoformDiv.append("div").style("margin-top", "10px");
115
+ pickCollectionFraction({
116
+ holder: this.dom.fractionDiv,
117
+ term,
118
+ callback: (tw) => this.callback(tw)
119
+ });
120
+ return;
121
+ }
122
+ this.callback(term);
123
+ }
124
+ };
125
+ function filterIsoforms(gmlst, availableItems) {
126
+ const itemSet = new Set(availableItems);
127
+ return gmlst.filter((gm) => gm.isoform?.startsWith("ENST") && (itemSet.size === 0 || itemSet.has(gm.isoform)));
128
+ }
129
+
130
+ export {
131
+ SearchHandler,
132
+ filterIsoforms
133
+ };
134
+ //# sourceMappingURL=chunk-RXQRCRHC.js.map