@sjcrh/proteinpaint-client 2.225.0 → 2.227.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 (951) hide show
  1. package/dist/2dmaf-B34EJADN.js +1362 -0
  2. package/dist/AggMatrixInput-USCXGZT2.js +402 -0
  3. package/dist/AggregateMatrix-VLCSBD65.js +37 -0
  4. package/dist/AppHeader-KE7QVEW5.js +826 -0
  5. package/dist/BoxPlot-3H5QKYRD.js +1247 -0
  6. package/dist/CorrelationVolcano-ACEJOJS6.js +613 -0
  7. package/dist/CorrelationVolcano-ACEJOJS6.js.map +7 -0
  8. package/dist/Cuminc-6LPS4LR7.js +1217 -0
  9. package/dist/DE-TTKEQYC7.js +85 -0
  10. package/dist/DEinput-W7WEO2NO.js +483 -0
  11. package/dist/DEinput-W7WEO2NO.js.map +7 -0
  12. package/dist/DM-2TUF6Q3C.js +86 -0
  13. package/dist/DifferentialAnalysis-3LP4RAWF.js +236 -0
  14. package/dist/Disco-UP5C7UWX.js +3445 -0
  15. package/dist/Disco.UI-V4I4LOMF.js +239 -0
  16. package/dist/DmrPlot-TZR2NGIH.js +366 -0
  17. package/dist/GB-4NRY4YMF.js +1388 -0
  18. package/dist/GB-4NRY4YMF.js.map +7 -0
  19. package/dist/GSEA-YGKBRJJO.js +870 -0
  20. package/dist/GeneExpInput-L3J2ECVQ.js +38 -0
  21. package/dist/Geomap-4MHU6F57.js +80 -0
  22. package/dist/HicApp-27VGP5F6.js +2240 -0
  23. package/dist/IDCViewer-37GJPPUY.js +10810 -0
  24. package/dist/NumBinaryEditor-SEC2NDGG.js +274 -0
  25. package/dist/NumBinaryEditor.unit.spec-UDYSUC4S.js +308 -0
  26. package/dist/NumContEditor-YPSYWU2A.js +100 -0
  27. package/dist/NumContEditor.unit.spec-NHFBMHQ5.js +160 -0
  28. package/dist/NumCustomBinEditor-N7US5Q64.js +29 -0
  29. package/dist/NumCustomBinEditor.unit.spec-2BMMUBYU.js +393 -0
  30. package/dist/NumDiscreteEditor-BLQ5DEB7.js +165 -0
  31. package/dist/NumDiscreteEditor.unit.spec-JOFPUFU5.js +229 -0
  32. package/dist/NumRegularBinEditor-7BFPBUW2.js +29 -0
  33. package/dist/NumRegularBinEditor.unit.spec-6GZMNRHA.js +274 -0
  34. package/dist/NumSplineEditor-LO3ZR3T3.js +205 -0
  35. package/dist/NumSplineEditor.unit.spec-MRA3DQSB.js +220 -0
  36. package/dist/NumericDensity-NUCVJZ74.js +29 -0
  37. package/dist/NumericDensity.unit.spec-TZLKWH4U.js +414 -0
  38. package/dist/NumericHandler-NH533VBN.js +30 -0
  39. package/dist/NumericHandler.unit.spec-V7MNEHML.js +225 -0
  40. package/dist/ProteomeInput-FEXWZOA2.js +610 -0
  41. package/dist/Regression-NJAPUGT7.js +1412 -0
  42. package/dist/RunChart2-QIJ6NUWY.js +744 -0
  43. package/dist/SC-5NWBVOEE.js +1290 -0
  44. package/dist/Violin-TMACI43Q.js +1105 -0
  45. package/dist/Volcano-BMLHQEXU.js +2745 -0
  46. package/dist/Volcano-BMLHQEXU.js.map +7 -0
  47. package/dist/Wsi-5TWAOBFG.js +650 -0
  48. package/dist/Wsi-5TWAOBFG.js.map +7 -0
  49. package/dist/aboutSunburst-53YAWTV5.js +93 -0
  50. package/dist/adSandbox-7VHXEI7W.js +29 -0
  51. package/dist/animatedBubbleChart-CTFGJIRR.js +542 -0
  52. package/dist/app-AQAQAPUN.js +38 -0
  53. package/dist/app-SZDIV5U4.js +28 -0
  54. package/dist/app.js +12 -12
  55. package/dist/bam-3U5R2KNC.js +872 -0
  56. package/dist/barchart-ZL5VSR7P.js +38 -0
  57. package/dist/barchart2-YELP2HI7.js +305 -0
  58. package/dist/block-AGX6Z4BR.js +6208 -0
  59. package/dist/block-AGX6Z4BR.js.map +7 -0
  60. package/dist/block.init-IBITFICI.js +29 -0
  61. package/dist/block.mds.expressionrank-4L76ILD4.js +350 -0
  62. package/dist/block.mds.geneboxplot-XA7DFHPV.js +819 -0
  63. package/dist/block.mds.junction-GTZD3HEN.js +1534 -0
  64. package/dist/block.mds.svcnv-HTXQ3LGR.js +6325 -0
  65. package/dist/block.svg-BM6OMVRF.js +155 -0
  66. package/dist/block.tk.aicheck-CV53ULEP.js +274 -0
  67. package/dist/block.tk.bam-KJYFNJCX.js +1906 -0
  68. package/dist/block.tk.bigwig.ui-A352D6PT.js +202 -0
  69. package/dist/block.tk.hicstraw-QAFTQESL.js +814 -0
  70. package/dist/block.tk.junction-XURB4RWZ.js +2353 -0
  71. package/dist/block.tk.junction.textmatrixui-RNRWWNGY.js +190 -0
  72. package/dist/block.tk.ld-GWJMVPX3.js +90 -0
  73. package/dist/block.tk.menu-BJZYFMQX.js +1050 -0
  74. package/dist/block.tk.pgv-7XNJTHEW.js +934 -0
  75. package/dist/brainImaging-37EDZLGN.js +550 -0
  76. package/dist/brainRegions-FEW52QUB.js +213 -0
  77. package/dist/bubbleHeatmap-YN34AA4H.js +374 -0
  78. package/dist/bubbleHeatmap-YN34AA4H.js.map +7 -0
  79. package/dist/cellTypeBubbleHeatmap-X4K63FOK.js +274 -0
  80. package/dist/cellTypeBubbleHeatmap-X4K63FOK.js.map +7 -0
  81. package/dist/chunk-24CVFDVW.js +1219 -0
  82. package/dist/chunk-24CVFDVW.js.map +7 -0
  83. package/dist/chunk-2B3CYHUF.js +30 -0
  84. package/dist/chunk-2IAELUCN.js +348 -0
  85. package/dist/chunk-2W6U53AG.js +195 -0
  86. package/dist/chunk-46GCGTHJ.js +1339 -0
  87. package/dist/chunk-4ZX5KHD7.js +96 -0
  88. package/dist/chunk-544DSOC3.js +466 -0
  89. package/dist/chunk-6CV3YVJD.js +194 -0
  90. package/dist/chunk-6UHSGC6G.js +276 -0
  91. package/dist/chunk-6ZZGFZV2.js +35 -0
  92. package/dist/chunk-72FUMSAN.js +6375 -0
  93. package/dist/chunk-7DC4PD5R.js +182 -0
  94. package/dist/chunk-7ISYXUJ7.js +243 -0
  95. package/dist/chunk-7NVFEGCE.js +30 -0
  96. package/dist/chunk-7PQ6MLKG.js +1253 -0
  97. package/dist/chunk-BGPRKPKH.js +56 -0
  98. package/dist/chunk-BILGOVOR.js +480 -0
  99. package/dist/chunk-BKJLRLQQ.js +2008 -0
  100. package/dist/chunk-BQYMKS7S.js +4521 -0
  101. package/dist/chunk-BQYMKS7S.js.map +7 -0
  102. package/dist/chunk-C4BKP67I.js +123 -0
  103. package/dist/chunk-CFYWQJ7F.js +472 -0
  104. package/dist/chunk-CFYWQJ7F.js.map +7 -0
  105. package/dist/chunk-CQNTAIM3.js +328 -0
  106. package/dist/chunk-CW3IVTRX.js +2685 -0
  107. package/dist/chunk-D7KZWYP5.js +516 -0
  108. package/dist/chunk-DFHERVYA.js +961 -0
  109. package/dist/chunk-DFHERVYA.js.map +7 -0
  110. package/dist/chunk-DNXOZATD.js +848 -0
  111. package/dist/chunk-DXF3YDRG.js +2334 -0
  112. package/dist/chunk-ECBVUPDE.js +626 -0
  113. package/dist/chunk-ES22B563.js +257 -0
  114. package/dist/chunk-FA2B6PKK.js +42 -0
  115. package/dist/chunk-FMHSDIVG.js +2932 -0
  116. package/dist/chunk-G5UFOMON.js +255 -0
  117. package/dist/chunk-GKA6USKV.js +550 -0
  118. package/dist/chunk-HGIPR72Y.js +299 -0
  119. package/dist/chunk-IBUDYN5E.js +468 -0
  120. package/dist/chunk-J37WYVIZ.js +418 -0
  121. package/dist/chunk-JG5CF5Q3.js +397 -0
  122. package/dist/chunk-JI632MAR.js +400 -0
  123. package/dist/chunk-JI632MAR.js.map +7 -0
  124. package/dist/chunk-JKPMBNRM.js +100 -0
  125. package/dist/chunk-JKPMBNRM.js.map +7 -0
  126. package/dist/chunk-JSQH233D.js +263 -0
  127. package/dist/chunk-JWWLSDVM.js +296 -0
  128. package/dist/chunk-KGK4JJ4L.js +830 -0
  129. package/dist/chunk-KGK4JJ4L.js.map +7 -0
  130. package/dist/chunk-KTJUDDVQ.js +340 -0
  131. package/dist/chunk-MY5MF4RI.js +55 -0
  132. package/dist/chunk-P4ZGUPGA.js +56 -0
  133. package/dist/chunk-PQDYA3ZQ.js +274 -0
  134. package/dist/chunk-PVJ6IIFA.js +176 -0
  135. package/dist/chunk-QGG5MTIL.js +161 -0
  136. package/dist/chunk-QGG5MTIL.js.map +7 -0
  137. package/dist/chunk-QKVKQD6S.js +184 -0
  138. package/dist/chunk-QNACCFOA.js +48 -0
  139. package/dist/chunk-QNACCFOA.js.map +7 -0
  140. package/dist/chunk-R6O3FLKW.js +141 -0
  141. package/dist/chunk-RFQQRF6Q.js +54 -0
  142. package/dist/chunk-RG27DDKN.js +267 -0
  143. package/dist/chunk-SB5DR4NL.js +562 -0
  144. package/dist/chunk-SF42FFDZ.js +2799 -0
  145. package/dist/chunk-SORR4JHU.js +14 -0
  146. package/dist/chunk-SZEBQMZW.js +50 -0
  147. package/dist/chunk-THDOHHDN.js +102 -0
  148. package/dist/chunk-TXDCZOPG.js +305 -0
  149. package/dist/chunk-U6GSEOBY.js +54 -0
  150. package/dist/chunk-UBTNM5RO.js +203 -0
  151. package/dist/chunk-UHZDDPUU.js +444 -0
  152. package/dist/chunk-UVES3USV.js +134 -0
  153. package/dist/chunk-UYA5LCAR.js +281 -0
  154. package/dist/chunk-VHEXNBCO.js +379 -0
  155. package/dist/chunk-VJJJFEOU.js +96 -0
  156. package/dist/chunk-VJJJFEOU.js.map +7 -0
  157. package/dist/chunk-VPRP24DY.js +2095 -0
  158. package/dist/chunk-VPRP24DY.js.map +7 -0
  159. package/dist/chunk-VVWZ4BOI.js +2349 -0
  160. package/dist/chunk-WENNRY5E.js +170 -0
  161. package/dist/chunk-WTLUZOBK.js +103 -0
  162. package/dist/chunk-YBXQBSFY.js +26888 -0
  163. package/dist/chunk-YBXQBSFY.js.map +7 -0
  164. package/dist/chunk-ZLEGHQOO.js +217 -0
  165. package/dist/chunk-ZO7KUAIF.js +5258 -0
  166. package/dist/chunk-ZO7KUAIF.js.map +7 -0
  167. package/dist/chunk-ZX7527EE.js +240 -0
  168. package/dist/cohort-NKRTCX5Z.js +66 -0
  169. package/dist/cohortSunburst-DFJW6WXU.js +402 -0
  170. package/dist/condition-PYFOEVX5.js +323 -0
  171. package/dist/controls-RVNIN66W.js +30 -0
  172. package/dist/controls.config-XVEYYBI4.js +30 -0
  173. package/dist/correlation-MNL4DGSW.js +91 -0
  174. package/dist/customdata.inputui-WFIIJATQ.js +280 -0
  175. package/dist/dataDownload-CMSP5FA4.js +326 -0
  176. package/dist/databrowser.ui-FYZPXXEJ.js +424 -0
  177. package/dist/dictionary-76BXY6WU.js +109 -0
  178. package/dist/dnaMethylation-WTIJVNIU.js +29 -0
  179. package/dist/dnaMethylation.integration.spec-YXQEFLC5.js +194 -0
  180. package/dist/dnaMethylation.unit.spec-22FLJWVB.js +95 -0
  181. package/dist/dnaMethylation.unit.spec-22FLJWVB.js.map +7 -0
  182. package/dist/dofetch-XID2XEJT.js +49 -0
  183. package/dist/e2pca-DD6DA7X3.js +340 -0
  184. package/dist/ep-S4PI4AUJ.js +1247 -0
  185. package/dist/expclust.gdc.spec-BDV4RJO6.js +298 -0
  186. package/dist/facet-EOXEW2LN.js +556 -0
  187. package/dist/gb-AKE7RDPB.js +77 -0
  188. package/dist/geneExpClustering-73ED7HIN.js +240 -0
  189. package/dist/geneExpression-AEJILDKJ.js +29 -0
  190. package/dist/geneExpression-NXDXXKEA.js +309 -0
  191. package/dist/geneExpression.unit.spec-VUJWR4TA.js +150 -0
  192. package/dist/geneExpression.unit.spec-VUJWR4TA.js.map +7 -0
  193. package/dist/geneORA-7KFQ4PW2.js +269 -0
  194. package/dist/geneRanking-RKJU4PM2.js +544 -0
  195. package/dist/geneVariant-2AGC3ECG.js +32 -0
  196. package/dist/geneVariant-PWMXP6H4.js +289 -0
  197. package/dist/geneVariant-PWMXP6H4.js.map +7 -0
  198. package/dist/geneVariant.integration.spec-UJXGQEZG.js +672 -0
  199. package/dist/genefusion.ui-KEBOA3TK.js +299 -0
  200. package/dist/geneset-BU6V3CB5.js +199 -0
  201. package/dist/genomeBrowser.spec-BGQHJZKH.js +272 -0
  202. package/dist/grin2-OUZN5LOU.js +66 -0
  203. package/dist/grin2-WRGQ7BDG.js +945 -0
  204. package/dist/hierCluster-3ERW47JJ.js +51 -0
  205. package/dist/hierCluster-JAFKBC6C.js +55 -0
  206. package/dist/hierCluster.config-QIJNY5OD.js +32 -0
  207. package/dist/hierCluster.integration.spec-XA4K3UU6.js +479 -0
  208. package/dist/hierCluster.interactivity-RDFPQOOP.js +45 -0
  209. package/dist/hierCluster.renderers-SU5IYI33.js +18 -0
  210. package/dist/imagePlot-J4PHG7V2.js +152 -0
  211. package/dist/importPlot-U67MZZXY.js +8 -0
  212. package/dist/isoformExpression-K5BCDJLL.js +31 -0
  213. package/dist/isoformExpression.unit.spec-35FHEO27.js +233 -0
  214. package/dist/junction-6GGWFF2J.js +32 -0
  215. package/dist/junction.unit.spec-7EJK4HML.js +224 -0
  216. package/dist/junction.unit.spec-7EJK4HML.js.map +7 -0
  217. package/dist/launch.adhoc-ONCSL65L.js +33 -0
  218. package/dist/leftlabel.sample-H5G3U7AA.js +260 -0
  219. package/dist/leftlabel.sample-H5G3U7AA.js.map +7 -0
  220. package/dist/lollipop-BWP4BG7Q.js +162 -0
  221. package/dist/maf-GV6JHWYK.js +451 -0
  222. package/dist/maftimeline-HE7XLJWG.js +583 -0
  223. package/dist/matrix-IAM6SA7K.js +50 -0
  224. package/dist/matrix-QF5MBV5Y.js +55 -0
  225. package/dist/matrix.cells-A5E63KDN.js +25 -0
  226. package/dist/matrix.config-VLRMO7J2.js +33 -0
  227. package/dist/matrix.data-R4FW2PQH.js +22 -0
  228. package/dist/matrix.groups-3UH2KOIY.js +25 -0
  229. package/dist/matrix.integration.spec-57YYARQU.js +3156 -0
  230. package/dist/matrix.interactivity-KNRJSSTQ.js +33 -0
  231. package/dist/matrix.layout-OMNDDITA.js +35 -0
  232. package/dist/matrix.legend-SE7SQTNN.js +19 -0
  233. package/dist/matrix.renderers-6MMW7XMU.js +30 -0
  234. package/dist/matrix.serieses-BEZCQDLJ.js +18 -0
  235. package/dist/matrix.sort-KRNS4VPF.js +25 -0
  236. package/dist/matrix.sort.unit.spec-UXTQPKVV.js +464 -0
  237. package/dist/matrix.sorterUi.unit.spec-LJJ7GCEB.js +334 -0
  238. package/dist/matrix.unit.spec-2OSFPN5T.js +146 -0
  239. package/dist/mavb-CZAZO6AO.js +726 -0
  240. package/dist/mds.samplescatterplot-ENSEO2VX.js +1545 -0
  241. package/dist/mds.survivalplot-QSKD6FSX.js +472 -0
  242. package/dist/multivalue-FZTFADA2.js +79 -0
  243. package/dist/numericDictTermCluster-IFIEM3E4.js +62 -0
  244. package/dist/oncomatrix-GZKCAMSR.js +286 -0
  245. package/dist/oncomatrix.spec-FTLMVGTH.js +439 -0
  246. package/dist/plot.2dvaf-PWO4XOFU.js +368 -0
  247. package/dist/plot.app-JYBZEBHK.js +32 -0
  248. package/dist/plot.barplot-PA2PDVOB.js +93 -0
  249. package/dist/plot.boxplot-IHIEWQWG.js +142 -0
  250. package/dist/plot.brainImaging-WQ2WWEW3.js +51 -0
  251. package/dist/plot.disco-QIURLAHA.js +100 -0
  252. package/dist/plot.ssgq-T27XDC4K.js +130 -0
  253. package/dist/plot.vaf2cov-Y2DJRQED.js +249 -0
  254. package/dist/polar2-3MFBRZ4G.js +228 -0
  255. package/dist/profileForms-J3O7XDHY.js +937 -0
  256. package/dist/profilePlot-C45ERAOZ.js +45 -0
  257. package/dist/proteinView-F2EVY7V5.js +1346 -0
  258. package/dist/proteinView-F2EVY7V5.js.map +7 -0
  259. package/dist/proteomeCohortCompare-2IS7GNJZ.js +866 -0
  260. package/dist/pseudbulk.unit.spec-SY3ATAPK.js +82 -0
  261. package/dist/pseudobulk-N6WNHKAC.js +31 -0
  262. package/dist/qualitative-SKUTWJLA.js +34 -0
  263. package/dist/qualitative-XWN5V3EE.js +241 -0
  264. package/dist/radar2-AHZME5CF.js +323 -0
  265. package/dist/radarFacility2-CVEVC4U5.js +331 -0
  266. package/dist/render-S47OJIIP.js +29 -0
  267. package/dist/report-IPX3PKSW.js +213 -0
  268. package/dist/sampleView-OZQUKPVV.js +39 -0
  269. package/dist/samplelst-7XXJTJ4J.js +114 -0
  270. package/dist/samplematrix-JN35HJBG.js +2188 -0
  271. package/dist/sc-6ZHDNPYP.js +77 -0
  272. package/dist/scatter-4MP6TG67.js +84 -0
  273. package/dist/scatter-TRMY47CC.js +919 -0
  274. package/dist/selectGenomeWithTklst-UDNTL544.js +125 -0
  275. package/dist/singleCellCellType-UXABRPQQ.js +29 -0
  276. package/dist/singleCellCellType.unit.spec-N22EQMZW.js +150 -0
  277. package/dist/singleCellGeneExpression-OBPVP6IU.js +29 -0
  278. package/dist/singleCellGeneExpression.unit.spec-NVCFU5B4.js +144 -0
  279. package/dist/singleCellNumericValue-Z2X3LLRB.js +29 -0
  280. package/dist/singleCellNumericValue.unit.spec-Q7DCQHEE.js +412 -0
  281. package/dist/singleCellPlot-S5N6ZEEA.js +44 -0
  282. package/dist/singlecell-OK2P4AS2.js +1562 -0
  283. package/dist/singlecell-RI6HA3NI.js +77 -0
  284. package/dist/snp-XRM2UAEJ.js +29 -0
  285. package/dist/snp.unit.spec-CDTYGH4K.js +167 -0
  286. package/dist/snplocus-CAUGDRZE.js +200 -0
  287. package/dist/snplst-DP533FL2.js +36 -0
  288. package/dist/spliceevent.a53ss.diagram-XWEN4UMO.js +142 -0
  289. package/dist/spliceevent.exonskip.diagram-HBXQOUT4.js +274 -0
  290. package/dist/spliceevent.noeventdiagram-ORQJ62ON.js +451 -0
  291. package/dist/ssGSEA-PLDZ2556.js +29 -0
  292. package/dist/ssGSEA.unit.spec-ORFJFZJY.js +79 -0
  293. package/dist/stattable-GVRVRO2Y.js +112 -0
  294. package/dist/studyCatalog-K46WJHC6.js +457 -0
  295. package/dist/summarizeCnvGeneexp-7WSJTWKH.js +154 -0
  296. package/dist/summarizeGeneexpSurvival-H3TW7I4I.js +101 -0
  297. package/dist/summarizeMutationCnv-JOYXEMFP.js +155 -0
  298. package/dist/summarizeMutationDiagnosis-GBIGXFY5.js +31 -0
  299. package/dist/summarizeMutationSurvival-3RULG3KW.js +95 -0
  300. package/dist/summary-VKLFTPC2.js +40 -0
  301. package/dist/summary.integration.spec-EK3MPFVD.js +405 -0
  302. package/dist/summaryInput-POI5KQSP.js +238 -0
  303. package/dist/sunburst-BIVYHF5R.js +274 -0
  304. package/dist/sunburst-SYHQOCGQ.js +34 -0
  305. package/dist/survival-CG2GQ4YY.js +1248 -0
  306. package/dist/survival-NEO3E2HS.js +49 -0
  307. package/dist/survival.integration.spec-PPK5KO4V.js +609 -0
  308. package/dist/svgraph-Q2U2HEMF.js +1377 -0
  309. package/dist/svmr-HKFHKGLI.js +3574 -0
  310. package/dist/svmr-HKFHKGLI.js.map +7 -0
  311. package/dist/swimmer-GA4C6YH7.js +993 -0
  312. package/dist/table-DJJIES6L.js +192 -0
  313. package/dist/termCollection-CHVUM5C6.js +247 -0
  314. package/dist/termCollection-R3LTBPJ4.js +29 -0
  315. package/dist/termCollection.unit.spec-B7KAAOFT.js +295 -0
  316. package/dist/termCollectionFractionSelection-A72QM36J.js +38 -0
  317. package/dist/termCollectionFractionSelection.unit.spec-JR77QEIG.js +184 -0
  318. package/dist/tk-GRGKFATN.js +38 -0
  319. package/dist/tk-WV2G2UPY.js +1224 -0
  320. package/dist/tk-WV2G2UPY.js.map +7 -0
  321. package/dist/tp.ui-NATRJ5EN.js +1453 -0
  322. package/dist/tvs.categorical-U2ZYLPSW.js +28 -0
  323. package/dist/tvs.condition-6EBZALR4.js +160 -0
  324. package/dist/tvs.dt-H626ESMQ.js +34 -0
  325. package/dist/tvs.dtcnv.categorical-6S7INDYC.js +31 -0
  326. package/dist/tvs.dtcnv.continuous-MLYNEMHI.js +72 -0
  327. package/dist/tvs.dtfusion-2OLY6X7G.js +31 -0
  328. package/dist/tvs.dtitd-Z6MEL5SH.js +31 -0
  329. package/dist/tvs.dtsnvindel-HPBQSCYV.js +31 -0
  330. package/dist/tvs.dtsv-BRRNX64J.js +31 -0
  331. package/dist/tvs.multivalue-H2G7WKAL.js +84 -0
  332. package/dist/tvs.numeric-OKYGMQSK.js +32 -0
  333. package/dist/tvs.samplelst-46FGACU7.js +95 -0
  334. package/dist/tvs.survival-QL4KC3SQ.js +110 -0
  335. package/dist/tvs.termCollection-22DFW3PF.js +118 -0
  336. package/dist/vocabulary-LJEERZJ6.js +32 -0
  337. package/dist/wsi.direct-3GGVEVQ4.js +11600 -0
  338. package/dist/wsi.direct-3GGVEVQ4.js.map +7 -0
  339. package/package.json +3 -3
  340. package/dist/2dmaf-4W2R2HXG.js +0 -1362
  341. package/dist/AggMatrixInput-3SQ7UW5L.js +0 -402
  342. package/dist/AggregateMatrix-QI55DXDU.js +0 -37
  343. package/dist/AppHeader-C26OHIUQ.js +0 -826
  344. package/dist/BoxPlot-27OYBGJ3.js +0 -1247
  345. package/dist/CorrelationVolcano-XIMXCSHG.js +0 -613
  346. package/dist/CorrelationVolcano-XIMXCSHG.js.map +0 -7
  347. package/dist/Cuminc-737O733E.js +0 -1217
  348. package/dist/DE-EDTGDY6L.js +0 -85
  349. package/dist/DEinput-ZN76I5M5.js +0 -479
  350. package/dist/DEinput-ZN76I5M5.js.map +0 -7
  351. package/dist/DM-25IRANGL.js +0 -86
  352. package/dist/DifferentialAnalysis-7HQYEA5T.js +0 -236
  353. package/dist/Disco-4YNXWGRX.js +0 -3445
  354. package/dist/Disco.UI-67HBGS4Y.js +0 -239
  355. package/dist/DmrPlot-KZVDVPUT.js +0 -366
  356. package/dist/GB-HT3B7Y7R.js +0 -1388
  357. package/dist/GB-HT3B7Y7R.js.map +0 -7
  358. package/dist/GSEA-CMFMNK5Y.js +0 -870
  359. package/dist/GeneExpInput-HMGV23E7.js +0 -38
  360. package/dist/Geomap-RB4SGVPC.js +0 -80
  361. package/dist/HicApp-YRP6YQFA.js +0 -2240
  362. package/dist/IDCViewer-OUSOZNSR.js +0 -10810
  363. package/dist/NumBinaryEditor-YFQDPBB6.js +0 -274
  364. package/dist/NumBinaryEditor.unit.spec-6YC5PCPK.js +0 -308
  365. package/dist/NumContEditor-EH6MA2RW.js +0 -100
  366. package/dist/NumContEditor.unit.spec-Q2JBVIRT.js +0 -160
  367. package/dist/NumCustomBinEditor-USQA3BC6.js +0 -29
  368. package/dist/NumCustomBinEditor.unit.spec-PE2HFRCK.js +0 -393
  369. package/dist/NumDiscreteEditor-VKE4WT24.js +0 -165
  370. package/dist/NumDiscreteEditor.unit.spec-JNG673LE.js +0 -229
  371. package/dist/NumRegularBinEditor-KCCPGJSX.js +0 -29
  372. package/dist/NumRegularBinEditor.unit.spec-4BLKQRZU.js +0 -274
  373. package/dist/NumSplineEditor-4YELHGUO.js +0 -205
  374. package/dist/NumSplineEditor.unit.spec-CKHHK6GH.js +0 -220
  375. package/dist/NumericDensity-LCFM7VSY.js +0 -29
  376. package/dist/NumericDensity.unit.spec-R4ARTJ5I.js +0 -414
  377. package/dist/NumericHandler-2OHRSY6Z.js +0 -30
  378. package/dist/NumericHandler.unit.spec-M3TRIFZW.js +0 -225
  379. package/dist/ProteomeInput-G2EP6QH2.js +0 -610
  380. package/dist/Regression-2HKE6C7F.js +0 -1412
  381. package/dist/RunChart2-WRVW63PB.js +0 -744
  382. package/dist/SC-37RDNFGH.js +0 -1290
  383. package/dist/Violin-KD6FPWC7.js +0 -1105
  384. package/dist/Volcano-U62TCDEL.js +0 -2748
  385. package/dist/Volcano-U62TCDEL.js.map +0 -7
  386. package/dist/Wsi-PB77PVAA.js +0 -637
  387. package/dist/Wsi-PB77PVAA.js.map +0 -7
  388. package/dist/aboutSunburst-5Z24ODIN.js +0 -93
  389. package/dist/adSandbox-AFORHU3V.js +0 -29
  390. package/dist/animatedBubbleChart-F75OBRZW.js +0 -542
  391. package/dist/app-4RZ76DZZ.js +0 -28
  392. package/dist/app-IHE3RNI5.js +0 -38
  393. package/dist/bam-IIRZX3IK.js +0 -872
  394. package/dist/barchart-UIHRIMOE.js +0 -38
  395. package/dist/barchart2-DG3S6FDJ.js +0 -305
  396. package/dist/block-COZKGPXY.js +0 -6203
  397. package/dist/block-COZKGPXY.js.map +0 -7
  398. package/dist/block.init-UBXYVTPQ.js +0 -29
  399. package/dist/block.mds.expressionrank-KSXPPPGR.js +0 -350
  400. package/dist/block.mds.geneboxplot-5RDFDVDE.js +0 -819
  401. package/dist/block.mds.junction-LMM24KXJ.js +0 -1534
  402. package/dist/block.mds.svcnv-4XRXZMPS.js +0 -6325
  403. package/dist/block.svg-VAKLMPMS.js +0 -155
  404. package/dist/block.tk.aicheck-6GHZK2YY.js +0 -274
  405. package/dist/block.tk.bam-7H3BSHR2.js +0 -1906
  406. package/dist/block.tk.bigwig.ui-KX2GACY5.js +0 -202
  407. package/dist/block.tk.hicstraw-OOWEWGMF.js +0 -814
  408. package/dist/block.tk.junction-U7W36OZA.js +0 -2353
  409. package/dist/block.tk.junction.textmatrixui-PAMSBYZT.js +0 -190
  410. package/dist/block.tk.ld-RFQPDG7Q.js +0 -90
  411. package/dist/block.tk.menu-JDJU2OGK.js +0 -1050
  412. package/dist/block.tk.pgv-G2UFCQUT.js +0 -934
  413. package/dist/brainImaging-ASAHWZJH.js +0 -550
  414. package/dist/brainRegions-XTJDLUU4.js +0 -213
  415. package/dist/bubbleHeatmap-UPUITTU6.js +0 -374
  416. package/dist/bubbleHeatmap-UPUITTU6.js.map +0 -7
  417. package/dist/cellTypeBubbleHeatmap-25SOXC2Q.js +0 -274
  418. package/dist/cellTypeBubbleHeatmap-25SOXC2Q.js.map +0 -7
  419. package/dist/chunk-2ZYAC3DC.js +0 -299
  420. package/dist/chunk-325X3T7G.js +0 -692
  421. package/dist/chunk-325X3T7G.js.map +0 -7
  422. package/dist/chunk-3UXHTSZJ.js +0 -159
  423. package/dist/chunk-3UXHTSZJ.js.map +0 -7
  424. package/dist/chunk-4DFKK46J.js +0 -96
  425. package/dist/chunk-54W2RWRB.js +0 -123
  426. package/dist/chunk-5QGC2624.js +0 -54
  427. package/dist/chunk-5YKXYWP3.js +0 -480
  428. package/dist/chunk-6B4AME6E.js +0 -4389
  429. package/dist/chunk-6B4AME6E.js.map +0 -7
  430. package/dist/chunk-6H4FFHFQ.js +0 -82
  431. package/dist/chunk-6H4FFHFQ.js.map +0 -7
  432. package/dist/chunk-72QBXULB.js +0 -102
  433. package/dist/chunk-7APH7QLC.js +0 -141
  434. package/dist/chunk-7HBAALWJ.js +0 -2685
  435. package/dist/chunk-7UK7CU4F.js +0 -398
  436. package/dist/chunk-7UK7CU4F.js.map +0 -7
  437. package/dist/chunk-7ZTUUKLX.js +0 -203
  438. package/dist/chunk-A7GCFL3R.js +0 -30
  439. package/dist/chunk-AGWIWLOP.js +0 -14
  440. package/dist/chunk-CHQ43UJQ.js +0 -397
  441. package/dist/chunk-CQWR4QZO.js +0 -70
  442. package/dist/chunk-CQWR4QZO.js.map +0 -7
  443. package/dist/chunk-D6TLBMIX.js +0 -1339
  444. package/dist/chunk-DDABG5BR.js +0 -328
  445. package/dist/chunk-DR5JLHTB.js +0 -35
  446. package/dist/chunk-E2Z4X6C2.js +0 -55
  447. package/dist/chunk-E4WAVMI5.js +0 -194
  448. package/dist/chunk-EM76Y3HQ.js +0 -1253
  449. package/dist/chunk-ES7XNERS.js +0 -468
  450. package/dist/chunk-F2RTD23W.js +0 -848
  451. package/dist/chunk-FEE2HAON.js +0 -418
  452. package/dist/chunk-G5BQJGRA.js +0 -2799
  453. package/dist/chunk-GAYYXHOG.js +0 -257
  454. package/dist/chunk-GDIKNIEA.js +0 -263
  455. package/dist/chunk-GIZTZCE5.js +0 -195
  456. package/dist/chunk-GONC3LVY.js +0 -626
  457. package/dist/chunk-HGC4EON3.js +0 -348
  458. package/dist/chunk-HM23KADV.js +0 -281
  459. package/dist/chunk-I7R6YROK.js +0 -267
  460. package/dist/chunk-JWX6GEWQ.js +0 -276
  461. package/dist/chunk-K4LZR3HU.js +0 -56
  462. package/dist/chunk-K55KOEI6.js +0 -6375
  463. package/dist/chunk-K7YJILBY.js +0 -5254
  464. package/dist/chunk-K7YJILBY.js.map +0 -7
  465. package/dist/chunk-KLJM7HE5.js +0 -2349
  466. package/dist/chunk-LFH5VSSF.js +0 -176
  467. package/dist/chunk-MBWG3QHI.js +0 -1219
  468. package/dist/chunk-MBWG3QHI.js.map +0 -7
  469. package/dist/chunk-MZTVOOR6.js +0 -56
  470. package/dist/chunk-N2JOZ3QD.js +0 -444
  471. package/dist/chunk-NG2U3VHX.js +0 -170
  472. package/dist/chunk-NUGYNLTL.js +0 -2334
  473. package/dist/chunk-OCOB7XJW.js +0 -2008
  474. package/dist/chunk-OGDBTL5C.js +0 -54
  475. package/dist/chunk-OOVVKQSD.js +0 -26747
  476. package/dist/chunk-OOVVKQSD.js.map +0 -7
  477. package/dist/chunk-PAF5KZCR.js +0 -2932
  478. package/dist/chunk-PPICALUF.js +0 -2102
  479. package/dist/chunk-PPICALUF.js.map +0 -7
  480. package/dist/chunk-QFOT5WAZ.js +0 -134
  481. package/dist/chunk-QFQJO7LD.js +0 -472
  482. package/dist/chunk-QFQJO7LD.js.map +0 -7
  483. package/dist/chunk-QGCB5AKN.js +0 -243
  484. package/dist/chunk-QRZRAMHA.js +0 -184
  485. package/dist/chunk-RGOZHZCN.js +0 -103
  486. package/dist/chunk-RJKY22D4.js +0 -240
  487. package/dist/chunk-RZ2HG7G3.js +0 -102
  488. package/dist/chunk-RZ2HG7G3.js.map +0 -7
  489. package/dist/chunk-SI2KSG6E.js +0 -379
  490. package/dist/chunk-U4PLKSSS.js +0 -50
  491. package/dist/chunk-U7G65D2G.js +0 -466
  492. package/dist/chunk-UU3FWU6D.js +0 -305
  493. package/dist/chunk-UXLT7W2N.js +0 -562
  494. package/dist/chunk-VHQDN3OA.js +0 -182
  495. package/dist/chunk-VTMNHAFC.js +0 -30
  496. package/dist/chunk-W3K7KLIR.js +0 -217
  497. package/dist/chunk-WSLS55SH.js +0 -296
  498. package/dist/chunk-XQIB27PB.js +0 -516
  499. package/dist/chunk-XSBGICK5.js +0 -652
  500. package/dist/chunk-XSBGICK5.js.map +0 -7
  501. package/dist/chunk-YHW2RAAG.js +0 -274
  502. package/dist/chunk-Z7CCL464.js +0 -550
  503. package/dist/chunk-ZBNPXXMK.js +0 -42
  504. package/dist/chunk-ZNHC46CT.js +0 -340
  505. package/dist/chunk-ZSTD6Y3K.js +0 -255
  506. package/dist/cohort-ZFGFEEBD.js +0 -66
  507. package/dist/cohortSunburst-EEPGV2RB.js +0 -402
  508. package/dist/condition-7EWFLQSO.js +0 -323
  509. package/dist/controls-QHDSDWKI.js +0 -30
  510. package/dist/controls.config-LBSCZ6GP.js +0 -30
  511. package/dist/correlation-IJQJPNNP.js +0 -91
  512. package/dist/customdata.inputui-TZGX2CUD.js +0 -280
  513. package/dist/dataDownload-33EWD3AD.js +0 -326
  514. package/dist/databrowser.ui-YNKDTAAN.js +0 -424
  515. package/dist/dictionary-OTR6Z5EZ.js +0 -109
  516. package/dist/dnaMethylation-LQTCTOOE.js +0 -29
  517. package/dist/dnaMethylation.integration.spec-U5VQYAK3.js +0 -194
  518. package/dist/dofetch-HLG7G7RX.js +0 -49
  519. package/dist/e2pca-AXDPYR7U.js +0 -340
  520. package/dist/ep-4WK46CH7.js +0 -1247
  521. package/dist/expclust.gdc.spec-CYGWGREQ.js +0 -298
  522. package/dist/facet-IZSSZDHK.js +0 -556
  523. package/dist/gb-AUZBUZFM.js +0 -77
  524. package/dist/geneExpClustering-AQBFLXLP.js +0 -240
  525. package/dist/geneExpression-HDJVPVPK.js +0 -309
  526. package/dist/geneExpression-V4JMTMLI.js +0 -29
  527. package/dist/geneExpression.unit.spec-KFMSDVMX.js +0 -151
  528. package/dist/geneExpression.unit.spec-KFMSDVMX.js.map +0 -7
  529. package/dist/geneORA-LDFFSEMQ.js +0 -269
  530. package/dist/geneRanking-IVKDSNDV.js +0 -544
  531. package/dist/geneVariant-7X7EEUDW.js +0 -289
  532. package/dist/geneVariant-7X7EEUDW.js.map +0 -7
  533. package/dist/geneVariant-TK3FJ22L.js +0 -32
  534. package/dist/geneVariant.integration.spec-ZHAFWQ2O.js +0 -672
  535. package/dist/genefusion.ui-U5YPVXAF.js +0 -299
  536. package/dist/geneset-NSHQ2NDR.js +0 -199
  537. package/dist/genomeBrowser.spec-HP4OQPCV.js +0 -272
  538. package/dist/grin2-5WKONQPG.js +0 -66
  539. package/dist/grin2-V2ZBOJBO.js +0 -945
  540. package/dist/hierCluster-7IOPNYFN.js +0 -55
  541. package/dist/hierCluster-IDBCUKHJ.js +0 -51
  542. package/dist/hierCluster.config-Z4NRL5P5.js +0 -32
  543. package/dist/hierCluster.integration.spec-PHEXOGPI.js +0 -479
  544. package/dist/hierCluster.interactivity-NHZ5EPBV.js +0 -45
  545. package/dist/hierCluster.renderers-WXJUMDFN.js +0 -18
  546. package/dist/imagePlot-NMNCAYS7.js +0 -152
  547. package/dist/importPlot-HZML5XMJ.js +0 -8
  548. package/dist/isoformExpression-4IU4AUQ2.js +0 -31
  549. package/dist/isoformExpression.unit.spec-KKMKU5Z2.js +0 -233
  550. package/dist/junction-EXA2WANI.js +0 -32
  551. package/dist/junction.unit.spec-H3FGTLEP.js +0 -178
  552. package/dist/junction.unit.spec-H3FGTLEP.js.map +0 -7
  553. package/dist/launch.adhoc-YA6FRHSC.js +0 -33
  554. package/dist/leftlabel.sample-N6M4OL2X.js +0 -254
  555. package/dist/leftlabel.sample-N6M4OL2X.js.map +0 -7
  556. package/dist/lollipop-EWLGYDIR.js +0 -162
  557. package/dist/maf-PXMHR3PY.js +0 -451
  558. package/dist/maftimeline-QFKT7PW2.js +0 -583
  559. package/dist/matrix-KASG3KIY.js +0 -55
  560. package/dist/matrix-VSX63V3L.js +0 -50
  561. package/dist/matrix.cells-7TTOQRWU.js +0 -25
  562. package/dist/matrix.config-U3I726EC.js +0 -33
  563. package/dist/matrix.data-Y4DXSR2P.js +0 -22
  564. package/dist/matrix.groups-C5CHYWQZ.js +0 -25
  565. package/dist/matrix.integration.spec-4KWLFXMY.js +0 -3156
  566. package/dist/matrix.interactivity-JK6URU6Z.js +0 -33
  567. package/dist/matrix.layout-KKOA7GGL.js +0 -35
  568. package/dist/matrix.legend-3FFHXTLX.js +0 -19
  569. package/dist/matrix.renderers-F7EWYQWL.js +0 -30
  570. package/dist/matrix.serieses-I4JWWONC.js +0 -18
  571. package/dist/matrix.sort-5JTCLBPB.js +0 -25
  572. package/dist/matrix.sort.unit.spec-EW53F5DT.js +0 -464
  573. package/dist/matrix.sorterUi.unit.spec-OGTYY6GC.js +0 -334
  574. package/dist/matrix.unit.spec-RXKKHRUN.js +0 -146
  575. package/dist/mavb-YI2WEGFI.js +0 -726
  576. package/dist/mds.samplescatterplot-GGJE67MF.js +0 -1545
  577. package/dist/mds.survivalplot-A6DS6FHO.js +0 -472
  578. package/dist/multivalue-3WCYDVL3.js +0 -79
  579. package/dist/numericDictTermCluster-AOTEPNEI.js +0 -62
  580. package/dist/oncomatrix-BB4SB5AJ.js +0 -286
  581. package/dist/oncomatrix.spec-M4ZC3KFC.js +0 -439
  582. package/dist/plot.2dvaf-QUD743E6.js +0 -368
  583. package/dist/plot.app-35I4DJXK.js +0 -32
  584. package/dist/plot.barplot-7OL4HWZB.js +0 -93
  585. package/dist/plot.boxplot-N2VSPDYA.js +0 -142
  586. package/dist/plot.brainImaging-4PIAFROV.js +0 -51
  587. package/dist/plot.disco-6CFYMWU3.js +0 -100
  588. package/dist/plot.ssgq-MGUBQNWE.js +0 -130
  589. package/dist/plot.vaf2cov-KVI2GMG4.js +0 -249
  590. package/dist/polar2-IGAOHGPE.js +0 -228
  591. package/dist/profileForms-MW7JQURG.js +0 -937
  592. package/dist/profilePlot-OVOSFR47.js +0 -45
  593. package/dist/proteinView-LFP5YYMK.js +0 -1346
  594. package/dist/proteinView-LFP5YYMK.js.map +0 -7
  595. package/dist/proteomeCohortCompare-ONYL2UN4.js +0 -866
  596. package/dist/pseudbulk.unit.spec-CGV4JTEK.js +0 -82
  597. package/dist/pseudobulk-WFCQX5KR.js +0 -31
  598. package/dist/qualitative-4SLUE6BW.js +0 -241
  599. package/dist/qualitative-6H674T7D.js +0 -34
  600. package/dist/radar2-QXHO2MQA.js +0 -323
  601. package/dist/radarFacility2-JCVOYMH4.js +0 -331
  602. package/dist/render-IIFS3Y2N.js +0 -29
  603. package/dist/report-NFBB3PUI.js +0 -213
  604. package/dist/sampleView-XQXKIPC7.js +0 -39
  605. package/dist/samplelst-RIC5E2W4.js +0 -114
  606. package/dist/samplematrix-WLCFCPBR.js +0 -2188
  607. package/dist/sc-TXRF7D6F.js +0 -77
  608. package/dist/scatter-JUGGPR4B.js +0 -919
  609. package/dist/scatter-YQ47446T.js +0 -84
  610. package/dist/selectGenomeWithTklst-2ELB6HQK.js +0 -125
  611. package/dist/singleCellCellType-DUTH4SZF.js +0 -29
  612. package/dist/singleCellCellType.unit.spec-PWP6I5PZ.js +0 -150
  613. package/dist/singleCellGeneExpression-3563T7GE.js +0 -29
  614. package/dist/singleCellGeneExpression.unit.spec-66IDCFJC.js +0 -144
  615. package/dist/singleCellNumericValue-XVQTKLTS.js +0 -29
  616. package/dist/singleCellNumericValue.unit.spec-LJSTGKNS.js +0 -412
  617. package/dist/singleCellPlot-MKYJJXSG.js +0 -44
  618. package/dist/singlecell-ANCWPAAO.js +0 -1562
  619. package/dist/singlecell-KMRVFOC5.js +0 -77
  620. package/dist/snp-B5UHGWVD.js +0 -29
  621. package/dist/snp.unit.spec-YAHITASM.js +0 -167
  622. package/dist/snplocus-MLGICRGT.js +0 -200
  623. package/dist/snplst-DZPIQEKI.js +0 -36
  624. package/dist/spliceevent.a53ss.diagram-4NYPSFC2.js +0 -142
  625. package/dist/spliceevent.exonskip.diagram-WLLTP7NP.js +0 -274
  626. package/dist/spliceevent.noeventdiagram-NOSO752Y.js +0 -451
  627. package/dist/ssGSEA-4DVY6Z5U.js +0 -29
  628. package/dist/ssGSEA.unit.spec-UDXV4Q7S.js +0 -79
  629. package/dist/stattable-T5X76Q32.js +0 -112
  630. package/dist/studyCatalog-O3EPBJPW.js +0 -457
  631. package/dist/summarizeCnvGeneexp-ST36TPEJ.js +0 -154
  632. package/dist/summarizeGeneexpSurvival-AZOFCBMT.js +0 -101
  633. package/dist/summarizeMutationCnv-HRCW6BYV.js +0 -155
  634. package/dist/summarizeMutationDiagnosis-RQQO2MOR.js +0 -31
  635. package/dist/summarizeMutationSurvival-UHSUJ7FU.js +0 -95
  636. package/dist/summary-ZMM5ET67.js +0 -40
  637. package/dist/summary.integration.spec-GW5UGDDU.js +0 -405
  638. package/dist/summaryInput-ZO5TPARQ.js +0 -238
  639. package/dist/sunburst-6VJS2SUY.js +0 -34
  640. package/dist/sunburst-LXRG2SFE.js +0 -274
  641. package/dist/survival-QXHY7JRR.js +0 -49
  642. package/dist/survival-U6J6KFN2.js +0 -1248
  643. package/dist/survival.integration.spec-HN3LL6IY.js +0 -609
  644. package/dist/svgraph-CVI27CTM.js +0 -1377
  645. package/dist/svmr-GZHAP5IV.js +0 -3834
  646. package/dist/svmr-GZHAP5IV.js.map +0 -7
  647. package/dist/swimmer-M4JGBO72.js +0 -993
  648. package/dist/table-QO22C2ER.js +0 -192
  649. package/dist/termCollection-EN73BZV5.js +0 -247
  650. package/dist/termCollection-KWNFLRWJ.js +0 -29
  651. package/dist/termCollection.unit.spec-Z27AZUE6.js +0 -295
  652. package/dist/termCollectionFractionSelection-Q7QFEPKA.js +0 -38
  653. package/dist/termCollectionFractionSelection.unit.spec-PYLIFZN5.js +0 -184
  654. package/dist/tk-BISILMKL.js +0 -1198
  655. package/dist/tk-BISILMKL.js.map +0 -7
  656. package/dist/tk-WVEDS5OU.js +0 -38
  657. package/dist/tp.ui-CG36YXBY.js +0 -1453
  658. package/dist/tvs.categorical-GCJISWBS.js +0 -28
  659. package/dist/tvs.condition-YTCVMB3I.js +0 -160
  660. package/dist/tvs.dt-UCSZ5S44.js +0 -34
  661. package/dist/tvs.dtcnv.categorical-KYB6XPL3.js +0 -31
  662. package/dist/tvs.dtcnv.continuous-MJWJNMKJ.js +0 -72
  663. package/dist/tvs.dtfusion-IZCEMTH5.js +0 -31
  664. package/dist/tvs.dtitd-DZ4WWGNO.js +0 -31
  665. package/dist/tvs.dtsnvindel-PMJCV4E7.js +0 -31
  666. package/dist/tvs.dtsv-5K2RNWDH.js +0 -31
  667. package/dist/tvs.multivalue-6NSC6JPR.js +0 -84
  668. package/dist/tvs.numeric-7U2NDY4A.js +0 -32
  669. package/dist/tvs.samplelst-3SIYTFWZ.js +0 -95
  670. package/dist/tvs.survival-Q3F5SLBW.js +0 -110
  671. package/dist/tvs.termCollection-OR73LBNX.js +0 -118
  672. package/dist/vocabulary-RWRAQ4VJ.js +0 -32
  673. package/dist/wsi.direct-HABLR3IF.js +0 -11515
  674. package/dist/wsi.direct-HABLR3IF.js.map +0 -7
  675. /package/dist/{2dmaf-4W2R2HXG.js.map → 2dmaf-B34EJADN.js.map} +0 -0
  676. /package/dist/{AggMatrixInput-3SQ7UW5L.js.map → AggMatrixInput-USCXGZT2.js.map} +0 -0
  677. /package/dist/{AggregateMatrix-QI55DXDU.js.map → AggregateMatrix-VLCSBD65.js.map} +0 -0
  678. /package/dist/{AppHeader-C26OHIUQ.js.map → AppHeader-KE7QVEW5.js.map} +0 -0
  679. /package/dist/{BoxPlot-27OYBGJ3.js.map → BoxPlot-3H5QKYRD.js.map} +0 -0
  680. /package/dist/{Cuminc-737O733E.js.map → Cuminc-6LPS4LR7.js.map} +0 -0
  681. /package/dist/{DE-EDTGDY6L.js.map → DE-TTKEQYC7.js.map} +0 -0
  682. /package/dist/{DM-25IRANGL.js.map → DM-2TUF6Q3C.js.map} +0 -0
  683. /package/dist/{DifferentialAnalysis-7HQYEA5T.js.map → DifferentialAnalysis-3LP4RAWF.js.map} +0 -0
  684. /package/dist/{Disco-4YNXWGRX.js.map → Disco-UP5C7UWX.js.map} +0 -0
  685. /package/dist/{Disco.UI-67HBGS4Y.js.map → Disco.UI-V4I4LOMF.js.map} +0 -0
  686. /package/dist/{DmrPlot-KZVDVPUT.js.map → DmrPlot-TZR2NGIH.js.map} +0 -0
  687. /package/dist/{GSEA-CMFMNK5Y.js.map → GSEA-YGKBRJJO.js.map} +0 -0
  688. /package/dist/{GeneExpInput-HMGV23E7.js.map → GeneExpInput-L3J2ECVQ.js.map} +0 -0
  689. /package/dist/{Geomap-RB4SGVPC.js.map → Geomap-4MHU6F57.js.map} +0 -0
  690. /package/dist/{HicApp-YRP6YQFA.js.map → HicApp-27VGP5F6.js.map} +0 -0
  691. /package/dist/{IDCViewer-OUSOZNSR.js.map → IDCViewer-37GJPPUY.js.map} +0 -0
  692. /package/dist/{NumBinaryEditor-YFQDPBB6.js.map → NumBinaryEditor-SEC2NDGG.js.map} +0 -0
  693. /package/dist/{NumBinaryEditor.unit.spec-6YC5PCPK.js.map → NumBinaryEditor.unit.spec-UDYSUC4S.js.map} +0 -0
  694. /package/dist/{NumContEditor-EH6MA2RW.js.map → NumContEditor-YPSYWU2A.js.map} +0 -0
  695. /package/dist/{NumContEditor.unit.spec-Q2JBVIRT.js.map → NumContEditor.unit.spec-NHFBMHQ5.js.map} +0 -0
  696. /package/dist/{NumCustomBinEditor-USQA3BC6.js.map → NumCustomBinEditor-N7US5Q64.js.map} +0 -0
  697. /package/dist/{NumCustomBinEditor.unit.spec-PE2HFRCK.js.map → NumCustomBinEditor.unit.spec-2BMMUBYU.js.map} +0 -0
  698. /package/dist/{NumDiscreteEditor-VKE4WT24.js.map → NumDiscreteEditor-BLQ5DEB7.js.map} +0 -0
  699. /package/dist/{NumDiscreteEditor.unit.spec-JNG673LE.js.map → NumDiscreteEditor.unit.spec-JOFPUFU5.js.map} +0 -0
  700. /package/dist/{NumRegularBinEditor-KCCPGJSX.js.map → NumRegularBinEditor-7BFPBUW2.js.map} +0 -0
  701. /package/dist/{NumRegularBinEditor.unit.spec-4BLKQRZU.js.map → NumRegularBinEditor.unit.spec-6GZMNRHA.js.map} +0 -0
  702. /package/dist/{NumSplineEditor-4YELHGUO.js.map → NumSplineEditor-LO3ZR3T3.js.map} +0 -0
  703. /package/dist/{NumSplineEditor.unit.spec-CKHHK6GH.js.map → NumSplineEditor.unit.spec-MRA3DQSB.js.map} +0 -0
  704. /package/dist/{NumericDensity-LCFM7VSY.js.map → NumericDensity-NUCVJZ74.js.map} +0 -0
  705. /package/dist/{NumericDensity.unit.spec-R4ARTJ5I.js.map → NumericDensity.unit.spec-TZLKWH4U.js.map} +0 -0
  706. /package/dist/{NumericHandler-2OHRSY6Z.js.map → NumericHandler-NH533VBN.js.map} +0 -0
  707. /package/dist/{NumericHandler.unit.spec-M3TRIFZW.js.map → NumericHandler.unit.spec-V7MNEHML.js.map} +0 -0
  708. /package/dist/{ProteomeInput-G2EP6QH2.js.map → ProteomeInput-FEXWZOA2.js.map} +0 -0
  709. /package/dist/{Regression-2HKE6C7F.js.map → Regression-NJAPUGT7.js.map} +0 -0
  710. /package/dist/{RunChart2-WRVW63PB.js.map → RunChart2-QIJ6NUWY.js.map} +0 -0
  711. /package/dist/{SC-37RDNFGH.js.map → SC-5NWBVOEE.js.map} +0 -0
  712. /package/dist/{Violin-KD6FPWC7.js.map → Violin-TMACI43Q.js.map} +0 -0
  713. /package/dist/{aboutSunburst-5Z24ODIN.js.map → aboutSunburst-53YAWTV5.js.map} +0 -0
  714. /package/dist/{adSandbox-AFORHU3V.js.map → adSandbox-7VHXEI7W.js.map} +0 -0
  715. /package/dist/{animatedBubbleChart-F75OBRZW.js.map → animatedBubbleChart-CTFGJIRR.js.map} +0 -0
  716. /package/dist/{app-4RZ76DZZ.js.map → app-AQAQAPUN.js.map} +0 -0
  717. /package/dist/{app-IHE3RNI5.js.map → app-SZDIV5U4.js.map} +0 -0
  718. /package/dist/{bam-IIRZX3IK.js.map → bam-3U5R2KNC.js.map} +0 -0
  719. /package/dist/{barchart-UIHRIMOE.js.map → barchart-ZL5VSR7P.js.map} +0 -0
  720. /package/dist/{barchart2-DG3S6FDJ.js.map → barchart2-YELP2HI7.js.map} +0 -0
  721. /package/dist/{block.init-UBXYVTPQ.js.map → block.init-IBITFICI.js.map} +0 -0
  722. /package/dist/{block.mds.expressionrank-KSXPPPGR.js.map → block.mds.expressionrank-4L76ILD4.js.map} +0 -0
  723. /package/dist/{block.mds.geneboxplot-5RDFDVDE.js.map → block.mds.geneboxplot-XA7DFHPV.js.map} +0 -0
  724. /package/dist/{block.mds.junction-LMM24KXJ.js.map → block.mds.junction-GTZD3HEN.js.map} +0 -0
  725. /package/dist/{block.mds.svcnv-4XRXZMPS.js.map → block.mds.svcnv-HTXQ3LGR.js.map} +0 -0
  726. /package/dist/{block.svg-VAKLMPMS.js.map → block.svg-BM6OMVRF.js.map} +0 -0
  727. /package/dist/{block.tk.aicheck-6GHZK2YY.js.map → block.tk.aicheck-CV53ULEP.js.map} +0 -0
  728. /package/dist/{block.tk.bam-7H3BSHR2.js.map → block.tk.bam-KJYFNJCX.js.map} +0 -0
  729. /package/dist/{block.tk.bigwig.ui-KX2GACY5.js.map → block.tk.bigwig.ui-A352D6PT.js.map} +0 -0
  730. /package/dist/{block.tk.hicstraw-OOWEWGMF.js.map → block.tk.hicstraw-QAFTQESL.js.map} +0 -0
  731. /package/dist/{block.tk.junction-U7W36OZA.js.map → block.tk.junction-XURB4RWZ.js.map} +0 -0
  732. /package/dist/{block.tk.junction.textmatrixui-PAMSBYZT.js.map → block.tk.junction.textmatrixui-RNRWWNGY.js.map} +0 -0
  733. /package/dist/{block.tk.ld-RFQPDG7Q.js.map → block.tk.ld-GWJMVPX3.js.map} +0 -0
  734. /package/dist/{block.tk.menu-JDJU2OGK.js.map → block.tk.menu-BJZYFMQX.js.map} +0 -0
  735. /package/dist/{block.tk.pgv-G2UFCQUT.js.map → block.tk.pgv-7XNJTHEW.js.map} +0 -0
  736. /package/dist/{brainImaging-ASAHWZJH.js.map → brainImaging-37EDZLGN.js.map} +0 -0
  737. /package/dist/{brainRegions-XTJDLUU4.js.map → brainRegions-FEW52QUB.js.map} +0 -0
  738. /package/dist/{chunk-A7GCFL3R.js.map → chunk-2B3CYHUF.js.map} +0 -0
  739. /package/dist/{chunk-HGC4EON3.js.map → chunk-2IAELUCN.js.map} +0 -0
  740. /package/dist/{chunk-GIZTZCE5.js.map → chunk-2W6U53AG.js.map} +0 -0
  741. /package/dist/{chunk-D6TLBMIX.js.map → chunk-46GCGTHJ.js.map} +0 -0
  742. /package/dist/{chunk-4DFKK46J.js.map → chunk-4ZX5KHD7.js.map} +0 -0
  743. /package/dist/{chunk-U7G65D2G.js.map → chunk-544DSOC3.js.map} +0 -0
  744. /package/dist/{chunk-E4WAVMI5.js.map → chunk-6CV3YVJD.js.map} +0 -0
  745. /package/dist/{chunk-JWX6GEWQ.js.map → chunk-6UHSGC6G.js.map} +0 -0
  746. /package/dist/{chunk-DR5JLHTB.js.map → chunk-6ZZGFZV2.js.map} +0 -0
  747. /package/dist/{chunk-K55KOEI6.js.map → chunk-72FUMSAN.js.map} +0 -0
  748. /package/dist/{chunk-VHQDN3OA.js.map → chunk-7DC4PD5R.js.map} +0 -0
  749. /package/dist/{chunk-QGCB5AKN.js.map → chunk-7ISYXUJ7.js.map} +0 -0
  750. /package/dist/{chunk-VTMNHAFC.js.map → chunk-7NVFEGCE.js.map} +0 -0
  751. /package/dist/{chunk-EM76Y3HQ.js.map → chunk-7PQ6MLKG.js.map} +0 -0
  752. /package/dist/{chunk-K4LZR3HU.js.map → chunk-BGPRKPKH.js.map} +0 -0
  753. /package/dist/{chunk-5YKXYWP3.js.map → chunk-BILGOVOR.js.map} +0 -0
  754. /package/dist/{chunk-OCOB7XJW.js.map → chunk-BKJLRLQQ.js.map} +0 -0
  755. /package/dist/{chunk-54W2RWRB.js.map → chunk-C4BKP67I.js.map} +0 -0
  756. /package/dist/{chunk-DDABG5BR.js.map → chunk-CQNTAIM3.js.map} +0 -0
  757. /package/dist/{chunk-7HBAALWJ.js.map → chunk-CW3IVTRX.js.map} +0 -0
  758. /package/dist/{chunk-XQIB27PB.js.map → chunk-D7KZWYP5.js.map} +0 -0
  759. /package/dist/{chunk-F2RTD23W.js.map → chunk-DNXOZATD.js.map} +0 -0
  760. /package/dist/{chunk-NUGYNLTL.js.map → chunk-DXF3YDRG.js.map} +0 -0
  761. /package/dist/{chunk-GONC3LVY.js.map → chunk-ECBVUPDE.js.map} +0 -0
  762. /package/dist/{chunk-GAYYXHOG.js.map → chunk-ES22B563.js.map} +0 -0
  763. /package/dist/{chunk-ZBNPXXMK.js.map → chunk-FA2B6PKK.js.map} +0 -0
  764. /package/dist/{chunk-PAF5KZCR.js.map → chunk-FMHSDIVG.js.map} +0 -0
  765. /package/dist/{chunk-ZSTD6Y3K.js.map → chunk-G5UFOMON.js.map} +0 -0
  766. /package/dist/{chunk-Z7CCL464.js.map → chunk-GKA6USKV.js.map} +0 -0
  767. /package/dist/{chunk-2ZYAC3DC.js.map → chunk-HGIPR72Y.js.map} +0 -0
  768. /package/dist/{chunk-ES7XNERS.js.map → chunk-IBUDYN5E.js.map} +0 -0
  769. /package/dist/{chunk-FEE2HAON.js.map → chunk-J37WYVIZ.js.map} +0 -0
  770. /package/dist/{chunk-CHQ43UJQ.js.map → chunk-JG5CF5Q3.js.map} +0 -0
  771. /package/dist/{chunk-GDIKNIEA.js.map → chunk-JSQH233D.js.map} +0 -0
  772. /package/dist/{chunk-WSLS55SH.js.map → chunk-JWWLSDVM.js.map} +0 -0
  773. /package/dist/{chunk-ZNHC46CT.js.map → chunk-KTJUDDVQ.js.map} +0 -0
  774. /package/dist/{chunk-E2Z4X6C2.js.map → chunk-MY5MF4RI.js.map} +0 -0
  775. /package/dist/{chunk-MZTVOOR6.js.map → chunk-P4ZGUPGA.js.map} +0 -0
  776. /package/dist/{chunk-YHW2RAAG.js.map → chunk-PQDYA3ZQ.js.map} +0 -0
  777. /package/dist/{chunk-LFH5VSSF.js.map → chunk-PVJ6IIFA.js.map} +0 -0
  778. /package/dist/{chunk-QRZRAMHA.js.map → chunk-QKVKQD6S.js.map} +0 -0
  779. /package/dist/{chunk-7APH7QLC.js.map → chunk-R6O3FLKW.js.map} +0 -0
  780. /package/dist/{chunk-OGDBTL5C.js.map → chunk-RFQQRF6Q.js.map} +0 -0
  781. /package/dist/{chunk-I7R6YROK.js.map → chunk-RG27DDKN.js.map} +0 -0
  782. /package/dist/{chunk-UXLT7W2N.js.map → chunk-SB5DR4NL.js.map} +0 -0
  783. /package/dist/{chunk-G5BQJGRA.js.map → chunk-SF42FFDZ.js.map} +0 -0
  784. /package/dist/{chunk-AGWIWLOP.js.map → chunk-SORR4JHU.js.map} +0 -0
  785. /package/dist/{chunk-U4PLKSSS.js.map → chunk-SZEBQMZW.js.map} +0 -0
  786. /package/dist/{chunk-72QBXULB.js.map → chunk-THDOHHDN.js.map} +0 -0
  787. /package/dist/{chunk-UU3FWU6D.js.map → chunk-TXDCZOPG.js.map} +0 -0
  788. /package/dist/{chunk-5QGC2624.js.map → chunk-U6GSEOBY.js.map} +0 -0
  789. /package/dist/{chunk-7ZTUUKLX.js.map → chunk-UBTNM5RO.js.map} +0 -0
  790. /package/dist/{chunk-N2JOZ3QD.js.map → chunk-UHZDDPUU.js.map} +0 -0
  791. /package/dist/{chunk-QFOT5WAZ.js.map → chunk-UVES3USV.js.map} +0 -0
  792. /package/dist/{chunk-HM23KADV.js.map → chunk-UYA5LCAR.js.map} +0 -0
  793. /package/dist/{chunk-SI2KSG6E.js.map → chunk-VHEXNBCO.js.map} +0 -0
  794. /package/dist/{chunk-KLJM7HE5.js.map → chunk-VVWZ4BOI.js.map} +0 -0
  795. /package/dist/{chunk-NG2U3VHX.js.map → chunk-WENNRY5E.js.map} +0 -0
  796. /package/dist/{chunk-RGOZHZCN.js.map → chunk-WTLUZOBK.js.map} +0 -0
  797. /package/dist/{chunk-W3K7KLIR.js.map → chunk-ZLEGHQOO.js.map} +0 -0
  798. /package/dist/{chunk-RJKY22D4.js.map → chunk-ZX7527EE.js.map} +0 -0
  799. /package/dist/{cohort-ZFGFEEBD.js.map → cohort-NKRTCX5Z.js.map} +0 -0
  800. /package/dist/{cohortSunburst-EEPGV2RB.js.map → cohortSunburst-DFJW6WXU.js.map} +0 -0
  801. /package/dist/{condition-7EWFLQSO.js.map → condition-PYFOEVX5.js.map} +0 -0
  802. /package/dist/{controls-QHDSDWKI.js.map → controls-RVNIN66W.js.map} +0 -0
  803. /package/dist/{controls.config-LBSCZ6GP.js.map → controls.config-XVEYYBI4.js.map} +0 -0
  804. /package/dist/{correlation-IJQJPNNP.js.map → correlation-MNL4DGSW.js.map} +0 -0
  805. /package/dist/{customdata.inputui-TZGX2CUD.js.map → customdata.inputui-WFIIJATQ.js.map} +0 -0
  806. /package/dist/{dataDownload-33EWD3AD.js.map → dataDownload-CMSP5FA4.js.map} +0 -0
  807. /package/dist/{databrowser.ui-YNKDTAAN.js.map → databrowser.ui-FYZPXXEJ.js.map} +0 -0
  808. /package/dist/{dictionary-OTR6Z5EZ.js.map → dictionary-76BXY6WU.js.map} +0 -0
  809. /package/dist/{dnaMethylation-LQTCTOOE.js.map → dnaMethylation-WTIJVNIU.js.map} +0 -0
  810. /package/dist/{dnaMethylation.integration.spec-U5VQYAK3.js.map → dnaMethylation.integration.spec-YXQEFLC5.js.map} +0 -0
  811. /package/dist/{dofetch-HLG7G7RX.js.map → dofetch-XID2XEJT.js.map} +0 -0
  812. /package/dist/{e2pca-AXDPYR7U.js.map → e2pca-DD6DA7X3.js.map} +0 -0
  813. /package/dist/{ep-4WK46CH7.js.map → ep-S4PI4AUJ.js.map} +0 -0
  814. /package/dist/{expclust.gdc.spec-CYGWGREQ.js.map → expclust.gdc.spec-BDV4RJO6.js.map} +0 -0
  815. /package/dist/{facet-IZSSZDHK.js.map → facet-EOXEW2LN.js.map} +0 -0
  816. /package/dist/{gb-AUZBUZFM.js.map → gb-AKE7RDPB.js.map} +0 -0
  817. /package/dist/{geneExpClustering-AQBFLXLP.js.map → geneExpClustering-73ED7HIN.js.map} +0 -0
  818. /package/dist/{geneExpression-V4JMTMLI.js.map → geneExpression-AEJILDKJ.js.map} +0 -0
  819. /package/dist/{geneExpression-HDJVPVPK.js.map → geneExpression-NXDXXKEA.js.map} +0 -0
  820. /package/dist/{geneORA-LDFFSEMQ.js.map → geneORA-7KFQ4PW2.js.map} +0 -0
  821. /package/dist/{geneRanking-IVKDSNDV.js.map → geneRanking-RKJU4PM2.js.map} +0 -0
  822. /package/dist/{geneVariant-TK3FJ22L.js.map → geneVariant-2AGC3ECG.js.map} +0 -0
  823. /package/dist/{geneVariant.integration.spec-ZHAFWQ2O.js.map → geneVariant.integration.spec-UJXGQEZG.js.map} +0 -0
  824. /package/dist/{genefusion.ui-U5YPVXAF.js.map → genefusion.ui-KEBOA3TK.js.map} +0 -0
  825. /package/dist/{geneset-NSHQ2NDR.js.map → geneset-BU6V3CB5.js.map} +0 -0
  826. /package/dist/{genomeBrowser.spec-HP4OQPCV.js.map → genomeBrowser.spec-BGQHJZKH.js.map} +0 -0
  827. /package/dist/{grin2-5WKONQPG.js.map → grin2-OUZN5LOU.js.map} +0 -0
  828. /package/dist/{grin2-V2ZBOJBO.js.map → grin2-WRGQ7BDG.js.map} +0 -0
  829. /package/dist/{hierCluster-7IOPNYFN.js.map → hierCluster-3ERW47JJ.js.map} +0 -0
  830. /package/dist/{hierCluster-IDBCUKHJ.js.map → hierCluster-JAFKBC6C.js.map} +0 -0
  831. /package/dist/{hierCluster.config-Z4NRL5P5.js.map → hierCluster.config-QIJNY5OD.js.map} +0 -0
  832. /package/dist/{hierCluster.integration.spec-PHEXOGPI.js.map → hierCluster.integration.spec-XA4K3UU6.js.map} +0 -0
  833. /package/dist/{hierCluster.interactivity-NHZ5EPBV.js.map → hierCluster.interactivity-RDFPQOOP.js.map} +0 -0
  834. /package/dist/{hierCluster.renderers-WXJUMDFN.js.map → hierCluster.renderers-SU5IYI33.js.map} +0 -0
  835. /package/dist/{imagePlot-NMNCAYS7.js.map → imagePlot-J4PHG7V2.js.map} +0 -0
  836. /package/dist/{importPlot-HZML5XMJ.js.map → importPlot-U67MZZXY.js.map} +0 -0
  837. /package/dist/{isoformExpression-4IU4AUQ2.js.map → isoformExpression-K5BCDJLL.js.map} +0 -0
  838. /package/dist/{isoformExpression.unit.spec-KKMKU5Z2.js.map → isoformExpression.unit.spec-35FHEO27.js.map} +0 -0
  839. /package/dist/{junction-EXA2WANI.js.map → junction-6GGWFF2J.js.map} +0 -0
  840. /package/dist/{launch.adhoc-YA6FRHSC.js.map → launch.adhoc-ONCSL65L.js.map} +0 -0
  841. /package/dist/{lollipop-EWLGYDIR.js.map → lollipop-BWP4BG7Q.js.map} +0 -0
  842. /package/dist/{maf-PXMHR3PY.js.map → maf-GV6JHWYK.js.map} +0 -0
  843. /package/dist/{maftimeline-QFKT7PW2.js.map → maftimeline-HE7XLJWG.js.map} +0 -0
  844. /package/dist/{matrix-KASG3KIY.js.map → matrix-IAM6SA7K.js.map} +0 -0
  845. /package/dist/{matrix-VSX63V3L.js.map → matrix-QF5MBV5Y.js.map} +0 -0
  846. /package/dist/{matrix.cells-7TTOQRWU.js.map → matrix.cells-A5E63KDN.js.map} +0 -0
  847. /package/dist/{matrix.config-U3I726EC.js.map → matrix.config-VLRMO7J2.js.map} +0 -0
  848. /package/dist/{matrix.data-Y4DXSR2P.js.map → matrix.data-R4FW2PQH.js.map} +0 -0
  849. /package/dist/{matrix.groups-C5CHYWQZ.js.map → matrix.groups-3UH2KOIY.js.map} +0 -0
  850. /package/dist/{matrix.integration.spec-4KWLFXMY.js.map → matrix.integration.spec-57YYARQU.js.map} +0 -0
  851. /package/dist/{matrix.interactivity-JK6URU6Z.js.map → matrix.interactivity-KNRJSSTQ.js.map} +0 -0
  852. /package/dist/{matrix.layout-KKOA7GGL.js.map → matrix.layout-OMNDDITA.js.map} +0 -0
  853. /package/dist/{matrix.legend-3FFHXTLX.js.map → matrix.legend-SE7SQTNN.js.map} +0 -0
  854. /package/dist/{matrix.renderers-F7EWYQWL.js.map → matrix.renderers-6MMW7XMU.js.map} +0 -0
  855. /package/dist/{matrix.serieses-I4JWWONC.js.map → matrix.serieses-BEZCQDLJ.js.map} +0 -0
  856. /package/dist/{matrix.sort-5JTCLBPB.js.map → matrix.sort-KRNS4VPF.js.map} +0 -0
  857. /package/dist/{matrix.sort.unit.spec-EW53F5DT.js.map → matrix.sort.unit.spec-UXTQPKVV.js.map} +0 -0
  858. /package/dist/{matrix.sorterUi.unit.spec-OGTYY6GC.js.map → matrix.sorterUi.unit.spec-LJJ7GCEB.js.map} +0 -0
  859. /package/dist/{matrix.unit.spec-RXKKHRUN.js.map → matrix.unit.spec-2OSFPN5T.js.map} +0 -0
  860. /package/dist/{mavb-YI2WEGFI.js.map → mavb-CZAZO6AO.js.map} +0 -0
  861. /package/dist/{mds.samplescatterplot-GGJE67MF.js.map → mds.samplescatterplot-ENSEO2VX.js.map} +0 -0
  862. /package/dist/{mds.survivalplot-A6DS6FHO.js.map → mds.survivalplot-QSKD6FSX.js.map} +0 -0
  863. /package/dist/{multivalue-3WCYDVL3.js.map → multivalue-FZTFADA2.js.map} +0 -0
  864. /package/dist/{numericDictTermCluster-AOTEPNEI.js.map → numericDictTermCluster-IFIEM3E4.js.map} +0 -0
  865. /package/dist/{oncomatrix-BB4SB5AJ.js.map → oncomatrix-GZKCAMSR.js.map} +0 -0
  866. /package/dist/{oncomatrix.spec-M4ZC3KFC.js.map → oncomatrix.spec-FTLMVGTH.js.map} +0 -0
  867. /package/dist/{plot.2dvaf-QUD743E6.js.map → plot.2dvaf-PWO4XOFU.js.map} +0 -0
  868. /package/dist/{plot.app-35I4DJXK.js.map → plot.app-JYBZEBHK.js.map} +0 -0
  869. /package/dist/{plot.barplot-7OL4HWZB.js.map → plot.barplot-PA2PDVOB.js.map} +0 -0
  870. /package/dist/{plot.boxplot-N2VSPDYA.js.map → plot.boxplot-IHIEWQWG.js.map} +0 -0
  871. /package/dist/{plot.brainImaging-4PIAFROV.js.map → plot.brainImaging-WQ2WWEW3.js.map} +0 -0
  872. /package/dist/{plot.disco-6CFYMWU3.js.map → plot.disco-QIURLAHA.js.map} +0 -0
  873. /package/dist/{plot.ssgq-MGUBQNWE.js.map → plot.ssgq-T27XDC4K.js.map} +0 -0
  874. /package/dist/{plot.vaf2cov-KVI2GMG4.js.map → plot.vaf2cov-Y2DJRQED.js.map} +0 -0
  875. /package/dist/{polar2-IGAOHGPE.js.map → polar2-3MFBRZ4G.js.map} +0 -0
  876. /package/dist/{profileForms-MW7JQURG.js.map → profileForms-J3O7XDHY.js.map} +0 -0
  877. /package/dist/{profilePlot-OVOSFR47.js.map → profilePlot-C45ERAOZ.js.map} +0 -0
  878. /package/dist/{proteomeCohortCompare-ONYL2UN4.js.map → proteomeCohortCompare-2IS7GNJZ.js.map} +0 -0
  879. /package/dist/{pseudbulk.unit.spec-CGV4JTEK.js.map → pseudbulk.unit.spec-SY3ATAPK.js.map} +0 -0
  880. /package/dist/{pseudobulk-WFCQX5KR.js.map → pseudobulk-N6WNHKAC.js.map} +0 -0
  881. /package/dist/{qualitative-6H674T7D.js.map → qualitative-SKUTWJLA.js.map} +0 -0
  882. /package/dist/{qualitative-4SLUE6BW.js.map → qualitative-XWN5V3EE.js.map} +0 -0
  883. /package/dist/{radar2-QXHO2MQA.js.map → radar2-AHZME5CF.js.map} +0 -0
  884. /package/dist/{radarFacility2-JCVOYMH4.js.map → radarFacility2-CVEVC4U5.js.map} +0 -0
  885. /package/dist/{render-IIFS3Y2N.js.map → render-S47OJIIP.js.map} +0 -0
  886. /package/dist/{report-NFBB3PUI.js.map → report-IPX3PKSW.js.map} +0 -0
  887. /package/dist/{sampleView-XQXKIPC7.js.map → sampleView-OZQUKPVV.js.map} +0 -0
  888. /package/dist/{samplelst-RIC5E2W4.js.map → samplelst-7XXJTJ4J.js.map} +0 -0
  889. /package/dist/{samplematrix-WLCFCPBR.js.map → samplematrix-JN35HJBG.js.map} +0 -0
  890. /package/dist/{sc-TXRF7D6F.js.map → sc-6ZHDNPYP.js.map} +0 -0
  891. /package/dist/{scatter-YQ47446T.js.map → scatter-4MP6TG67.js.map} +0 -0
  892. /package/dist/{scatter-JUGGPR4B.js.map → scatter-TRMY47CC.js.map} +0 -0
  893. /package/dist/{selectGenomeWithTklst-2ELB6HQK.js.map → selectGenomeWithTklst-UDNTL544.js.map} +0 -0
  894. /package/dist/{singleCellCellType-DUTH4SZF.js.map → singleCellCellType-UXABRPQQ.js.map} +0 -0
  895. /package/dist/{singleCellCellType.unit.spec-PWP6I5PZ.js.map → singleCellCellType.unit.spec-N22EQMZW.js.map} +0 -0
  896. /package/dist/{singleCellGeneExpression-3563T7GE.js.map → singleCellGeneExpression-OBPVP6IU.js.map} +0 -0
  897. /package/dist/{singleCellGeneExpression.unit.spec-66IDCFJC.js.map → singleCellGeneExpression.unit.spec-NVCFU5B4.js.map} +0 -0
  898. /package/dist/{singleCellNumericValue-XVQTKLTS.js.map → singleCellNumericValue-Z2X3LLRB.js.map} +0 -0
  899. /package/dist/{singleCellNumericValue.unit.spec-LJSTGKNS.js.map → singleCellNumericValue.unit.spec-Q7DCQHEE.js.map} +0 -0
  900. /package/dist/{singleCellPlot-MKYJJXSG.js.map → singleCellPlot-S5N6ZEEA.js.map} +0 -0
  901. /package/dist/{singlecell-ANCWPAAO.js.map → singlecell-OK2P4AS2.js.map} +0 -0
  902. /package/dist/{singlecell-KMRVFOC5.js.map → singlecell-RI6HA3NI.js.map} +0 -0
  903. /package/dist/{snp-B5UHGWVD.js.map → snp-XRM2UAEJ.js.map} +0 -0
  904. /package/dist/{snp.unit.spec-YAHITASM.js.map → snp.unit.spec-CDTYGH4K.js.map} +0 -0
  905. /package/dist/{snplocus-MLGICRGT.js.map → snplocus-CAUGDRZE.js.map} +0 -0
  906. /package/dist/{snplst-DZPIQEKI.js.map → snplst-DP533FL2.js.map} +0 -0
  907. /package/dist/{spliceevent.a53ss.diagram-4NYPSFC2.js.map → spliceevent.a53ss.diagram-XWEN4UMO.js.map} +0 -0
  908. /package/dist/{spliceevent.exonskip.diagram-WLLTP7NP.js.map → spliceevent.exonskip.diagram-HBXQOUT4.js.map} +0 -0
  909. /package/dist/{spliceevent.noeventdiagram-NOSO752Y.js.map → spliceevent.noeventdiagram-ORQJ62ON.js.map} +0 -0
  910. /package/dist/{ssGSEA-4DVY6Z5U.js.map → ssGSEA-PLDZ2556.js.map} +0 -0
  911. /package/dist/{ssGSEA.unit.spec-UDXV4Q7S.js.map → ssGSEA.unit.spec-ORFJFZJY.js.map} +0 -0
  912. /package/dist/{stattable-T5X76Q32.js.map → stattable-GVRVRO2Y.js.map} +0 -0
  913. /package/dist/{studyCatalog-O3EPBJPW.js.map → studyCatalog-K46WJHC6.js.map} +0 -0
  914. /package/dist/{summarizeCnvGeneexp-ST36TPEJ.js.map → summarizeCnvGeneexp-7WSJTWKH.js.map} +0 -0
  915. /package/dist/{summarizeGeneexpSurvival-AZOFCBMT.js.map → summarizeGeneexpSurvival-H3TW7I4I.js.map} +0 -0
  916. /package/dist/{summarizeMutationCnv-HRCW6BYV.js.map → summarizeMutationCnv-JOYXEMFP.js.map} +0 -0
  917. /package/dist/{summarizeMutationDiagnosis-RQQO2MOR.js.map → summarizeMutationDiagnosis-GBIGXFY5.js.map} +0 -0
  918. /package/dist/{summarizeMutationSurvival-UHSUJ7FU.js.map → summarizeMutationSurvival-3RULG3KW.js.map} +0 -0
  919. /package/dist/{summary-ZMM5ET67.js.map → summary-VKLFTPC2.js.map} +0 -0
  920. /package/dist/{summary.integration.spec-GW5UGDDU.js.map → summary.integration.spec-EK3MPFVD.js.map} +0 -0
  921. /package/dist/{summaryInput-ZO5TPARQ.js.map → summaryInput-POI5KQSP.js.map} +0 -0
  922. /package/dist/{sunburst-LXRG2SFE.js.map → sunburst-BIVYHF5R.js.map} +0 -0
  923. /package/dist/{sunburst-6VJS2SUY.js.map → sunburst-SYHQOCGQ.js.map} +0 -0
  924. /package/dist/{survival-U6J6KFN2.js.map → survival-CG2GQ4YY.js.map} +0 -0
  925. /package/dist/{survival-QXHY7JRR.js.map → survival-NEO3E2HS.js.map} +0 -0
  926. /package/dist/{survival.integration.spec-HN3LL6IY.js.map → survival.integration.spec-PPK5KO4V.js.map} +0 -0
  927. /package/dist/{svgraph-CVI27CTM.js.map → svgraph-Q2U2HEMF.js.map} +0 -0
  928. /package/dist/{swimmer-M4JGBO72.js.map → swimmer-GA4C6YH7.js.map} +0 -0
  929. /package/dist/{table-QO22C2ER.js.map → table-DJJIES6L.js.map} +0 -0
  930. /package/dist/{termCollection-EN73BZV5.js.map → termCollection-CHVUM5C6.js.map} +0 -0
  931. /package/dist/{termCollection-KWNFLRWJ.js.map → termCollection-R3LTBPJ4.js.map} +0 -0
  932. /package/dist/{termCollection.unit.spec-Z27AZUE6.js.map → termCollection.unit.spec-B7KAAOFT.js.map} +0 -0
  933. /package/dist/{termCollectionFractionSelection-Q7QFEPKA.js.map → termCollectionFractionSelection-A72QM36J.js.map} +0 -0
  934. /package/dist/{termCollectionFractionSelection.unit.spec-PYLIFZN5.js.map → termCollectionFractionSelection.unit.spec-JR77QEIG.js.map} +0 -0
  935. /package/dist/{tk-WVEDS5OU.js.map → tk-GRGKFATN.js.map} +0 -0
  936. /package/dist/{tp.ui-CG36YXBY.js.map → tp.ui-NATRJ5EN.js.map} +0 -0
  937. /package/dist/{tvs.categorical-GCJISWBS.js.map → tvs.categorical-U2ZYLPSW.js.map} +0 -0
  938. /package/dist/{tvs.condition-YTCVMB3I.js.map → tvs.condition-6EBZALR4.js.map} +0 -0
  939. /package/dist/{tvs.dt-UCSZ5S44.js.map → tvs.dt-H626ESMQ.js.map} +0 -0
  940. /package/dist/{tvs.dtcnv.categorical-KYB6XPL3.js.map → tvs.dtcnv.categorical-6S7INDYC.js.map} +0 -0
  941. /package/dist/{tvs.dtcnv.continuous-MJWJNMKJ.js.map → tvs.dtcnv.continuous-MLYNEMHI.js.map} +0 -0
  942. /package/dist/{tvs.dtfusion-IZCEMTH5.js.map → tvs.dtfusion-2OLY6X7G.js.map} +0 -0
  943. /package/dist/{tvs.dtitd-DZ4WWGNO.js.map → tvs.dtitd-Z6MEL5SH.js.map} +0 -0
  944. /package/dist/{tvs.dtsnvindel-PMJCV4E7.js.map → tvs.dtsnvindel-HPBQSCYV.js.map} +0 -0
  945. /package/dist/{tvs.dtsv-5K2RNWDH.js.map → tvs.dtsv-BRRNX64J.js.map} +0 -0
  946. /package/dist/{tvs.multivalue-6NSC6JPR.js.map → tvs.multivalue-H2G7WKAL.js.map} +0 -0
  947. /package/dist/{tvs.numeric-7U2NDY4A.js.map → tvs.numeric-OKYGMQSK.js.map} +0 -0
  948. /package/dist/{tvs.samplelst-3SIYTFWZ.js.map → tvs.samplelst-46FGACU7.js.map} +0 -0
  949. /package/dist/{tvs.survival-Q3F5SLBW.js.map → tvs.survival-QL4KC3SQ.js.map} +0 -0
  950. /package/dist/{tvs.termCollection-OR73LBNX.js.map → tvs.termCollection-22DFW3PF.js.map} +0 -0
  951. /package/dist/{vocabulary-RWRAQ4VJ.js.map → vocabulary-LJEERZJ6.js.map} +0 -0
@@ -1,7 +0,0 @@
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/* before origins became a tvs selection (tvs.origins[]), the dt term of a groupset tvs\ncarried a single origin of its own. whether any tvs of a groupset still does */\nexport function hasLegacyGroupsetOrigins(groupset: any): boolean {\n\tlet found = false\n\twalkTvs(groupset, (tvs: any) => {\n\t\tif (tvs.term?.origin) found = true\n\t})\n\treturn found\n}\n\n/*\nBring one tvs from the legacy origin shape to the current one, in place: the single origin\nits dt term carried becomes the tvs's own origins[].\n\nThe one place that knows the legacy shape, so that no reader has to check for it. A tvs is\nmigrated once on the way in and every reader then works off tvs.origins[] alone -- see\nsetHandler() in client/filter/tvs.js, which every tvs the filter UI shows or edits passes\nthrough before any handler method runs.\n\nIdempotent, and tolerates a tvs without a term, since it runs on every render of a pill.\n*/\nexport function migrateLegacyTvsOrigins(tvs: any) {\n\tif (!tvs?.term) return tvs\n\tif (tvs.term.origin && !tvs.origins?.length) tvs.origins = [tvs.term.origin]\n\tdelete tvs.term.origin\n\tdelete tvs.term.name_noOrigin\n\treturn tvs\n}\n\n/* migrate every tvs of a groupset, a group, or a filter, see migrateLegacyTvsOrigins().\n\nThe legacy shape was already per-tvs, so each tvs keeps exactly the origin it filtered by,\nrather than every tvs widening to the union across the groupset. That matters for a\ngroupset whose groups mix origins, e.g. a germline snvindel group beside a somatic cnv one:\ncollecting them into one list would make each group match both. */\nexport function migrateLegacyGroupsetOrigins(groupset: any) {\n\twalkTvs(groupset, migrateLegacyTvsOrigins)\n\treturn groupset\n}\n\n/*\nThe origins a selection is restricted to, as a display label.\n\nEmpty when there is nothing to tell apart: no origins to name, a data type that is not split\nby origin, or a selection covering every origin that data type has. Otherwise the dataset's\nown label for each origin, e.g. 'Inherited' for germline, falling back to the origin key.\n\nbyOrigin is assayAvailability.byDt[dt].byOrigin. The one definition of this label, so that a\nfilter pill and a plot title name the same selection the same way -- see getTvsOriginLabel()\nin client/filter/tvs.dt.js and getTitleText() in client/tw/geneVariant.ts.\n*/\nexport function getOriginLabel(origins: string[] | undefined, byOrigin: any): string {\n\tif (!origins?.length || !byOrigin) return ''\n\tif (origins.length == Object.keys(byOrigin).length) return ''\n\treturn origins.map(origin => byOrigin[origin]?.label || origin).join(', ')\n}\n\n/*\nThe qualifiers of a geneVariant selection as a parenthesized suffix, or '' when there is\nnothing to qualify: the origins of its groupset and the sample types of its term. Empty\nlabels are skipped, which is what both of them use for \"every option selected, so there is\nnothing to tell apart\" (see getOriginLabel()).\n\nOrigin first, then sample type, so the two read in the order the gene search UI selects them.\nOne definition, so that a pill and a plot title describe the same selection the same way --\nsee getPillStatus() in client/termsetting/handlers/geneVariant.ts and getTitleText() in\nclient/tw/geneVariant.ts.\n\nq.originLabel is only set for a predefined groupset; the tvs of a custom groupset carry their\nown origins and name them in their own filter pills instead.\n*/\nexport function getGvLabelSuffix(q: any, term: any): string {\n\tconst labels = [q?.originLabel, term?.sampleTypeLabel].filter(Boolean)\n\treturn labels.length ? ` (${labels.join(', ')})` : ''\n}\n\n/*\nSet origins[] on every tvs of a groupset whose dt is split by origin, in place.\n\nbyDt is ds/termdbConfig assayAvailability.byDt{}, which says which dts are origin-split.\n\nA predefined groupset is rebuilt from scratch on every fill, so its tvs cannot persist an\norigin selection of their own; seed is q.origins, the selection the gene search UI made,\nand is what they are stamped from (see OriginSeedQ in shared/types/src/terms/geneVariant.ts).\nA seed that does not cover a dt falls back to every origin of that dt, so that the invariant\nholds either way: an origin-split tvs always lists its origins, and a tvs without origins[]\nis one whose dt is not split -- never one that means \"match everything\".\n\nOnly the origins a dt actually declares are kept. A seed naming an origin of another dt\nwould otherwise match no value at all and silently empty the group.\n*/\nexport function setGroupsetOrigins(groupset: any, byDt: any, seed?: string[]) {\n\twalkTvs(groupset, (tvs: any) => {\n\t\tconst origins = resolveDtOrigins(byDt, tvs.term?.dt, seed)\n\t\t// a dt that is not origin-split must carry none; a leftover origins[] here would\n\t\t// filter out every value\n\t\tif (origins) tvs.origins = origins\n\t\telse delete tvs.origins\n\t})\n\treturn groupset\n}\n\n/*\nThe origins a tvs of one dt matches: the seed narrowed to the origins that dt declares, or\nevery origin of it when the seed names none. Undefined for a dt that is not split by origin.\n\nThe fallback is what upholds the invariant that an origin-split tvs always lists its origins,\nsee GeneVariantTvs in shared/types/src/filter.ts. The narrowing is belt-and-braces: a seed\nreaching a fill has already been checked against the dt by validateSeedOrigins() in\nclient/tw/geneVariant.ts.\n*/\nfunction resolveDtOrigins(byDt: any, dt: number | undefined, seed?: string[]): string[] | undefined {\n\tconst byOrigin = byDt?.[dt as number]?.byOrigin\n\tif (!byOrigin) return\n\tconst seeded = seed?.filter(origin => origin in byOrigin)\n\treturn seeded?.length ? seeded : Object.keys(byOrigin)\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. */\nexport function 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\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\t// use default sample types\n\t// define term.sampleTypeLabel here to prevent building label based\n\t// on the default sample types, which may be many sample types (see\n\t// getSampleData() in server/src/termdb.matrix.ts)\n\tterm.sampleTypeLabel = ''\n\treturn { sampleTypes: getDefaultSampleTypes(ds) }\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
- }
@@ -1,243 +0,0 @@
1
- import {
2
- keyupEnter
3
- } from "./chunk-OOVVKQSD.js";
4
- import {
5
- get_bin_label,
6
- get_bin_range_equation
7
- } from "./chunk-KLJM7HE5.js";
8
- import {
9
- toStoredUnit,
10
- toUserUnit
11
- } from "./chunk-W5J3LTYS.js";
12
-
13
- // termsetting/handlers/NumCustomBinEditor.ts
14
- var NumCustomBinEditor = class {
15
- constructor(editHandler) {
16
- this.dom = {};
17
- this.editHandler = editHandler;
18
- this.opts = editHandler.opts;
19
- this.tw = editHandler.tw;
20
- this.termsetting = editHandler.termsetting;
21
- }
22
- /* bin boundaries are stored in the term's own unit but entered and shown in its user-facing one.
23
- both are identity functions unless the term declares valueConversion{} */
24
- toDisplay(v) {
25
- return toUserUnit(v, this.tw.term);
26
- }
27
- toStored(v) {
28
- return toStoredUnit(v, this.tw.term);
29
- }
30
- async render(div) {
31
- this.tw = this.editHandler.tw;
32
- const isRemounting = !!this.dom.inputsDiv && this.editHandler.dom.binsDiv?.node().contains(this.dom.inputsDiv.node());
33
- if (!isRemounting) this.q = this.getDefaultQ();
34
- await this.editHandler.handler.density.setBinLines(this.getBoundaryOpts());
35
- if (isRemounting) return;
36
- if (this.dom.inputsDiv) {
37
- this.dom.inputsDiv.remove();
38
- delete this.dom.inputsDiv;
39
- }
40
- this.dom.inputsDiv = div.append("div").style("display", "flex").style("width", "100%");
41
- this.renderCustomBinInputs();
42
- }
43
- getBoundaryOpts() {
44
- return {
45
- values: this.q.lst.slice(1).map((bin) => ({ x: this.toDisplay(bin.startunbounded ? bin.stop : bin.start), isDraggable: true })),
46
- // the dragged value arrives in display units, matching what the textarea holds
47
- callback: (d, value) => {
48
- const boundaryValues = this.q.lst.slice(1).map((d2) => "start" in d2 ? this.toDisplay(d2.start) : "");
49
- boundaryValues[d.index] = value;
50
- this.dom.customBinBoundaryInput.property("value", boundaryValues.join("\n"));
51
- this.handleInputChange("drag");
52
- return 0;
53
- }
54
- };
55
- }
56
- getDefaultQ() {
57
- if (this.tw.q.mode == "discrete" && this.tw.q.type == "custom-bin") {
58
- const copy = JSON.parse(JSON.stringify(this.tw.q));
59
- copy.lst.forEach((bin) => {
60
- if (!bin.label) bin.label = get_bin_label(bin, this.tw.q, this.tw.term.valueConversion);
61
- bin.range = get_bin_range_equation(bin, this.tw.q, this.tw.term.valueConversion);
62
- });
63
- return copy;
64
- }
65
- const { min, max } = this.editHandler.handler.density_data;
66
- const defaultCustomBoundary = (
67
- /* when no sample is annotated by this term,
68
- minvalue and maxvalue are both null
69
- setting defaultCustomBoundary to arbitrary "0" will allow existing UI to work
70
- but remains to be evaluated if is really okay to use 0
71
- */
72
- !Number.isFinite(min) || !Number.isFinite(max) ? 0 : (
73
- // minvalue and maxvalue is valid number
74
- max != min ? min + (max - min) / 2 : max
75
- )
76
- );
77
- const firstBin = {
78
- startunbounded: true,
79
- startinclusive: false,
80
- stopinclusive: false,
81
- stop: +defaultCustomBoundary.toFixed(this.tw.term.type == "integer" ? 0 : 2)
82
- };
83
- const lastBin = {
84
- stopunbounded: true,
85
- startinclusive: true,
86
- stopinclusive: false,
87
- start: +defaultCustomBoundary.toFixed(this.tw.term.type == "integer" ? 0 : 2)
88
- };
89
- return {
90
- mode: "discrete",
91
- type: "custom-bin",
92
- lst: [
93
- // Type '{ label: any; range: any; startunbounded: boolean; startinclusive: boolean; stopinclusive: boolean; stop: number; }' is not assignable to type 'StartUnboundedBin | FullyBoundedBin'.
94
- // Property 'start' is missing in type '{ label: any; range: any; startunbounded: boolean; startinclusive: boolean; stopinclusive: boolean; stop: number; }' but required in type 'FullyBoundedBin'.
95
- {
96
- ...firstBin,
97
- label: get_bin_label(firstBin, this.tw.q, this.tw.term.valueConversion),
98
- range: get_bin_range_equation(firstBin, this.tw.q, this.tw.term.valueConversion)
99
- },
100
- {
101
- ...lastBin,
102
- label: get_bin_label(lastBin, this.tw.q, this.tw.term.valueConversion),
103
- range: get_bin_range_equation(lastBin, this.tw.q, this.tw.term.valueConversion)
104
- }
105
- //satisfies StopUnboundedBin
106
- ]
107
- };
108
- }
109
- /******************* Functions for Numerical Custom size bins *******************/
110
- renderCustomBinInputs() {
111
- const q = this.q;
112
- const boundaryDiv = this.dom.inputsDiv.append("div").style("margin-right", "20px");
113
- this.dom.rangeAndLabelDiv = this.dom.inputsDiv.append("div");
114
- boundaryDiv.append("div").style("margin-bottom", "5px").style("color", "rgb(136, 136, 136)").text("Bin boundaries");
115
- this.dom.customBinBoundaryInput = boundaryDiv.append("textarea").style("width", "100px").style("height", "70px").text(
116
- q.lst.slice(1).map((d) => "start" in d ? this.toDisplay(d.start) : "").join("\n")
117
- ).on("change", () => this.handleInputChange()).on("keyup", async (event) => {
118
- if (!keyupEnter(event) && event.key != 8 && event.key != "Enter") return;
119
- if (!this.dom.inputsDiv.selectAll("input").node().value) return;
120
- this.handleInputChange();
121
- });
122
- boundaryDiv.append("div").style("font-size", ".6em").style("margin-left", "1px").style("color", "#858585").html("Enter numeric values </br>seperated by ENTER");
123
- this.renderBoundaryInputDivs();
124
- }
125
- renderBoundaryInputDivs() {
126
- const data = this.q.lst;
127
- const holder = this.dom.rangeAndLabelDiv;
128
- holder.selectAll("*").remove();
129
- const grid = holder.append("div").style("display", "grid").style("grid-template-columns", "auto auto").style("column-gap", "20px").style("align-items", "center");
130
- grid.append("div").style("margin-bottom", "3px").style("color", "rgb(136, 136, 136)").text("Range");
131
- grid.append("div").style("margin-bottom", "3px").style("color", "rgb(136, 136, 136)").text("Bin label");
132
- for (const d of data) {
133
- grid.append("div").attr("name", "range").html(d.range);
134
- grid.append("div").append("input").attr("type", "text").style("margin", "2px 0px").property("value", d.label).on("change", function() {
135
- d.label = this.value;
136
- });
137
- }
138
- this.dom.customBinRanges = this.dom.inputsDiv.selectAll('div[name="range"]').data(data);
139
- this.dom.customBinLabelInput = this.dom.inputsDiv.selectAll("input").data(data);
140
- }
141
- handleInputChange(eventType = "") {
142
- const self = this.tw;
143
- const inputs = this.dom.inputsDiv.selectAll("input");
144
- inputs.property("value", "");
145
- const data = this.processCustomBinInputs();
146
- if (data == void 0) {
147
- return;
148
- }
149
- if (self.q.hiddenValues) this.tw.q.hiddenValues = self.q.hiddenValues;
150
- if (this.binsChanged(data, this.q.lst)) {
151
- this.q.lst = data;
152
- }
153
- this.renderBoundaryInputDivs();
154
- if (eventType != "drag") this.editHandler.handler.density.setBinLines(this.getBoundaryOpts());
155
- }
156
- binsChanged(data, qlst) {
157
- if (data.length != qlst.length) return true;
158
- if (Object.keys(data[0]).length !== Object.keys(qlst[0]).length) return true;
159
- for (const [i, bin] of qlst.entries()) {
160
- for (const k of Object.keys(bin)) {
161
- if (bin[k] && bin[k] !== data[i][k]) {
162
- return true;
163
- }
164
- }
165
- }
166
- return false;
167
- }
168
- processCustomBinInputs() {
169
- const self = this.termsetting;
170
- const startinclusive = this.editHandler.boundaryInclusion == "startinclusive";
171
- const stopinclusive = this.editHandler.boundaryInclusion == "stopinclusive";
172
- const inputs = this.dom.inputsDiv.node().querySelectorAll("input");
173
- const inputData = this.dom.customBinBoundaryInput.property("value").split("\n").filter((d) => d != "" && !isNaN(d));
174
- const trackBins = new Set(inputData);
175
- if (!trackBins.size) return this.tw.q.lst;
176
- const sortedBins = Array.from(trackBins).map((v) => this.toStored(Number(v))).sort((a, b) => a - b);
177
- const data = [
178
- // first bin: StartUnbounded type
179
- {
180
- startunbounded: true,
181
- stop: sortedBins[0],
182
- startinclusive: false,
183
- stopinclusive,
184
- label: inputs[0].value
185
- }
186
- ];
187
- if (!data[0].label) data[0].label = get_bin_label(data[0], self.q, self.term.valueConversion);
188
- if (!data[0].range) data[0].range = get_bin_range_equation(data[0], self.q, self.term.valueConversion);
189
- for (const [i, d] of sortedBins.entries()) {
190
- let bin;
191
- const label = inputs[i + 1]?.value || "";
192
- if (i !== trackBins.size - 1) {
193
- bin = {
194
- start: +d,
195
- startinclusive,
196
- stopinclusive,
197
- stop: sortedBins[i + 1],
198
- label
199
- //range: ''
200
- };
201
- } else {
202
- bin = {
203
- start: +d,
204
- startinclusive,
205
- stopinclusive: false,
206
- stopunbounded: true,
207
- label
208
- //range: ''
209
- };
210
- }
211
- if (bin.label === "" || bin.label === void 0) bin.label = get_bin_label(bin, self.q, self.term.valueConversion);
212
- if (bin.range === "" || bin.range === void 0)
213
- bin.range = get_bin_range_equation(bin, self.q, self.term.valueConversion);
214
- data.push(bin);
215
- }
216
- return data;
217
- }
218
- getEditedQ(destroyDom = true) {
219
- const lst = this.processCustomBinInputs();
220
- if (destroyDom) {
221
- for (const name of Object.keys(this.dom)) {
222
- this.dom[name].remove();
223
- delete this.dom[name];
224
- }
225
- }
226
- return {
227
- mode: "discrete",
228
- type: "custom-bin",
229
- lst
230
- };
231
- }
232
- undoEdits() {
233
- this.q = this.getDefaultQ();
234
- this.dom.inputsDiv.selectAll("*").remove();
235
- this.renderCustomBinInputs();
236
- this.editHandler.handler.density.setBinLines(this.getBoundaryOpts());
237
- }
238
- };
239
-
240
- export {
241
- NumCustomBinEditor
242
- };
243
- //# sourceMappingURL=chunk-QGCB5AKN.js.map
@@ -1,184 +0,0 @@
1
- import {
2
- __glob
3
- } from "./chunk-HS5PO5ZQ.js";
4
-
5
- // import("../plots/**/*.js") in plots/importPlot.js
6
- var globImport_plots_js = __glob({
7
- "../plots/controls.btns.js": () => import("./controls.btns-6AKLIWOG.js"),
8
- "../plots/controls.config.js": () => import("./controls.config-LBSCZ6GP.js"),
9
- "../plots/controls.js": () => import("./controls-QHDSDWKI.js"),
10
- "../plots/dictionary.js": () => import("./dictionary-OTR6Z5EZ.js"),
11
- "../plots/gb/test/genomeBrowser.spec.js": () => import("./genomeBrowser.spec-HP4OQPCV.js"),
12
- "../plots/geneExpression.js": () => import("./geneExpression-HDJVPVPK.js"),
13
- "../plots/geneORA.js": () => import("./geneORA-LDFFSEMQ.js"),
14
- "../plots/geneset.js": () => import("./geneset-NSHQ2NDR.js"),
15
- "../plots/hierCluster.js": () => import("./hierCluster-7IOPNYFN.js"),
16
- "../plots/importPlot.js": () => import("./importPlot-HZML5XMJ.js"),
17
- "../plots/matrix.js": () => import("./matrix-KASG3KIY.js"),
18
- "../plots/matrix/hierCluster.config.js": () => import("./hierCluster.config-Z4NRL5P5.js"),
19
- "../plots/matrix/hierCluster.interactivity.js": () => import("./hierCluster.interactivity-NHZ5EPBV.js"),
20
- "../plots/matrix/hierCluster.js": () => import("./hierCluster-IDBCUKHJ.js"),
21
- "../plots/matrix/hierCluster.renderers.js": () => import("./hierCluster.renderers-WXJUMDFN.js"),
22
- "../plots/matrix/matrix.cells.js": () => import("./matrix.cells-7TTOQRWU.js"),
23
- "../plots/matrix/matrix.cluster.js": () => import("./matrix.cluster-RH4BOM5F.js"),
24
- "../plots/matrix/matrix.config.js": () => import("./matrix.config-U3I726EC.js"),
25
- "../plots/matrix/matrix.data.js": () => import("./matrix.data-Y4DXSR2P.js"),
26
- "../plots/matrix/matrix.dom.js": () => import("./matrix.dom-Q5XSAUUH.js"),
27
- "../plots/matrix/matrix.groups.js": () => import("./matrix.groups-C5CHYWQZ.js"),
28
- "../plots/matrix/matrix.interactivity.js": () => import("./matrix.interactivity-JK6URU6Z.js"),
29
- "../plots/matrix/matrix.js": () => import("./matrix-VSX63V3L.js"),
30
- "../plots/matrix/matrix.layout.js": () => import("./matrix.layout-KKOA7GGL.js"),
31
- "../plots/matrix/matrix.legend.js": () => import("./matrix.legend-3FFHXTLX.js"),
32
- "../plots/matrix/matrix.renderers.js": () => import("./matrix.renderers-F7EWYQWL.js"),
33
- "../plots/matrix/matrix.serieses.js": () => import("./matrix.serieses-I4JWWONC.js"),
34
- "../plots/matrix/matrix.sort.js": () => import("./matrix.sort-5JTCLBPB.js"),
35
- "../plots/matrix/matrix.sorterUi.js": () => import("./matrix.sorterUi-Z4JDY7VW.js"),
36
- "../plots/matrix/test/hierCluster.integration.spec.js": () => import("./hierCluster.integration.spec-PHEXOGPI.js"),
37
- "../plots/matrix/test/matrix.integration.spec.js": () => import("./matrix.integration.spec-4KWLFXMY.js"),
38
- "../plots/matrix/test/matrix.sort.unit.spec.js": () => import("./matrix.sort.unit.spec-EW53F5DT.js"),
39
- "../plots/matrix/test/matrix.sorterUi.unit.spec.js": () => import("./matrix.sorterUi.unit.spec-OGTYY6GC.js"),
40
- "../plots/matrix/test/matrix.unit.spec.js": () => import("./matrix.unit.spec-RXKKHRUN.js"),
41
- "../plots/matrix/test/oncomatrix.spec.js": () => import("./oncomatrix.spec-M4ZC3KFC.js"),
42
- "../plots/plot.brainImaging.js": () => import("./plot.brainImaging-4PIAFROV.js"),
43
- "../plots/plot.disco.js": () => import("./plot.disco-6CFYMWU3.js"),
44
- "../plots/plot.ssgq.js": () => import("./plot.ssgq-MGUBQNWE.js"),
45
- "../plots/singleCellPlot.js": () => import("./singleCellPlot-MKYJJXSG.js"),
46
- "../plots/stattable.js": () => import("./stattable-T5X76Q32.js"),
47
- "../plots/survival/test/survival.integration.spec.js": () => import("./survival.integration.spec-HN3LL6IY.js"),
48
- "../plots/table.js": () => import("./table-QO22C2ER.js"),
49
- "../plots/test/expclust.gdc.spec.js": () => import("./expclust.gdc.spec-CYGWGREQ.js"),
50
- "../plots/test/summary.integration.spec.js": () => import("./summary.integration.spec-GW5UGDDU.js"),
51
- "../plots/volcano/test/testData.js": () => import("./testData-DRM5HWQB.js")
52
- });
53
-
54
- // plots/importPlot.js
55
- async function importPlot(chartType, notFoundMessage = "") {
56
- switch (chartType) {
57
- case "aggMatrixInput":
58
- return await import("./AggMatrixInput-3SQ7UW5L.js");
59
- case "aggregateMatrix":
60
- return await import("./AggregateMatrix-QI55DXDU.js");
61
- case "animatedBubbleChart":
62
- return await import("./animatedBubbleChart-F75OBRZW.js");
63
- case "brainImaging":
64
- return await import("./brainImaging-ASAHWZJH.js");
65
- case "brainRegions":
66
- return await import("./brainRegions-XTJDLUU4.js");
67
- case "barchart":
68
- return await import("./barchart-UIHRIMOE.js");
69
- case "boxplot":
70
- return await import("./BoxPlot-27OYBGJ3.js");
71
- case "bubbleHeatmap":
72
- return await import("./bubbleHeatmap-UPUITTU6.js");
73
- case "cellTypeBubbleHeatmap":
74
- return await import("./cellTypeBubbleHeatmap-25SOXC2Q.js");
75
- case "correlationVolcano":
76
- return await import("./CorrelationVolcano-XIMXCSHG.js");
77
- case "cuminc":
78
- return await import("./Cuminc-737O733E.js");
79
- case "dataDownload":
80
- return await import("./dataDownload-33EWD3AD.js");
81
- case "DEinput":
82
- return await import("./DEinput-ZN76I5M5.js");
83
- case "dictionary":
84
- return await import("./dictionary-OTR6Z5EZ.js");
85
- case "differentialAnalysis":
86
- return await import("./DifferentialAnalysis-7HQYEA5T.js");
87
- case "Disco":
88
- return await import("./Disco-4YNXWGRX.js");
89
- case "dmr":
90
- return await import("./DmrPlot-KZVDVPUT.js");
91
- case "facet":
92
- return await import("./facet-IZSSZDHK.js");
93
- case "GeneExpInput":
94
- return await import("./GeneExpInput-HMGV23E7.js");
95
- case "geneRanking":
96
- return await import("./geneRanking-IVKDSNDV.js");
97
- case "genomeBrowser":
98
- return await import("./GB-HT3B7Y7R.js");
99
- case "geomap":
100
- return await import("./Geomap-RB4SGVPC.js");
101
- case "grin2":
102
- return await import("./grin2-V2ZBOJBO.js");
103
- case "gsea":
104
- return await import("./GSEA-CMFMNK5Y.js");
105
- case "imagePlot":
106
- return await import("./imagePlot-NMNCAYS7.js");
107
- case "numericDictTermCluster":
108
- return await import("./numericDictTermCluster-AOTEPNEI.js");
109
- case "profileBarchart2":
110
- return await import("./barchart2-DG3S6FDJ.js");
111
- case "profileForms":
112
- return await import("./profileForms-MW7JQURG.js");
113
- case "profilePlot":
114
- return await import("./profilePlot-OVOSFR47.js");
115
- case "profilePolar2":
116
- return await import("./polar2-IGAOHGPE.js");
117
- case "profileRadar2":
118
- return await import("./radar2-QXHO2MQA.js");
119
- case "profileRadarFacility2":
120
- return await import("./radarFacility2-JCVOYMH4.js");
121
- case "proteinView":
122
- return await import("./proteinView-LFP5YYMK.js");
123
- case "proteomeAbundance":
124
- return await import("./proteomeAbundance-NH3Y4YC7.js");
125
- case "proteomeCohortCompare":
126
- return await import("./proteomeCohortCompare-ONYL2UN4.js");
127
- case "ProteomeInput":
128
- return await import("./ProteomeInput-G2EP6QH2.js");
129
- case "regression":
130
- return await import("./Regression-2HKE6C7F.js");
131
- case "report":
132
- return await import("./report-NFBB3PUI.js");
133
- case "runChart2":
134
- //See frequencyChart
135
- case "frequencyChart":
136
- return await import("./RunChart2-WRVW63PB.js");
137
- case "sampleView":
138
- return await import("./sampleView-XQXKIPC7.js");
139
- case "sampleScatter":
140
- return await import("./scatter-JUGGPR4B.js");
141
- case "sc":
142
- return await import("./SC-37RDNFGH.js");
143
- case "studyCatalog":
144
- return await import("./studyCatalog-O3EPBJPW.js");
145
- case "cohortSunburst":
146
- return await import("./cohortSunburst-EEPGV2RB.js");
147
- case "summarizeCnvGeneexp":
148
- return await import("./summarizeCnvGeneexp-ST36TPEJ.js");
149
- case "summarizeGeneexpSurvival":
150
- return await import("./summarizeGeneexpSurvival-AZOFCBMT.js");
151
- case "summarizeMutationDiagnosis":
152
- return await import("./summarizeMutationDiagnosis-RQQO2MOR.js");
153
- case "summarizeMutationSurvival":
154
- return await import("./summarizeMutationSurvival-UHSUJ7FU.js");
155
- case "summarizeMutationCnv":
156
- return await import("./summarizeMutationCnv-HRCW6BYV.js");
157
- case "summaryInput":
158
- return await import("./summaryInput-ZO5TPARQ.js");
159
- case "summary":
160
- return await import("./summary-ZMM5ET67.js");
161
- case "sunburst":
162
- return await import("./sunburst-6VJS2SUY.js");
163
- case "swimmer":
164
- return await import("./swimmer-M4JGBO72.js");
165
- case "survival":
166
- return await import("./survival-U6J6KFN2.js");
167
- case "table":
168
- return await import("./table-QO22C2ER.js");
169
- case "violin":
170
- return await import("./Violin-KD6FPWC7.js");
171
- case "volcano":
172
- return await import("./Volcano-U62TCDEL.js");
173
- case "wsi":
174
- return await import("./Wsi-PB77PVAA.js");
175
- default:
176
- if (notFoundMessage) throw notFoundMessage;
177
- return await globImport_plots_js(`../plots/${chartType}.js`);
178
- }
179
- }
180
-
181
- export {
182
- importPlot
183
- };
184
- //# sourceMappingURL=chunk-QRZRAMHA.js.map
@@ -1,103 +0,0 @@
1
- import {
2
- SearchHandler,
3
- fillTermWrapper,
4
- table2col,
5
- termsettingInit
6
- } from "./chunk-OOVVKQSD.js";
7
-
8
- // plots/summarizeMutationDiagnosis.ts
9
- async function makeChartBtnMenu(holder, chartsInstance) {
10
- let dictTw;
11
- {
12
- const t = chartsInstance.app.vocabApi.termdbConfig.defaultTw4correlationPlot?.disease;
13
- if (!t) throw "defaultTw4correlationPlot missing";
14
- dictTw = structuredClone(t);
15
- await fillTermWrapper(dictTw, chartsInstance.app.vocabApi);
16
- }
17
- const table = table2col({
18
- holder: holder.append("div"),
19
- margin: "0px 10px 10px 10px",
20
- cellPadding: "10px"
21
- });
22
- {
23
- const [td1, td2] = table.addRow();
24
- td1.text("Mutation Variable");
25
- const searchDiv = td2.append("div");
26
- const geneSearchInst = new SearchHandler();
27
- geneSearchInst.init({
28
- holder: searchDiv,
29
- app: chartsInstance.app,
30
- // required to supply "opts.app.vocabApi" for the search ui
31
- genomeObj: chartsInstance.app.opts.genome,
32
- msg: "Hit ENTER to launch plot.",
33
- /* the geneTw below is used as it comes, so a grouping the user built for this gene
34
- elsewhere can be offered here, see keepsQ in client/termdb/TermTypeSearch.ts */
35
- keepsQ: true,
36
- callback: async (geneTw) => {
37
- await fillTermWrapper(geneTw, chartsInstance.app.vocabApi);
38
- launchPlot({
39
- tw1: dictTw,
40
- tw2: geneTw,
41
- chartsInstance,
42
- holder
43
- });
44
- }
45
- });
46
- searchDiv.style("padding", "0px 0px 5px 0px");
47
- }
48
- {
49
- const [td1, td2] = table.addRow();
50
- td1.text("Compare Mutations Against");
51
- const pillDiv = td2.append("div"), waitDiv = td2.append("div").style("font-size", ".7em").text("LOADING ...");
52
- const pill = await termsettingInit({
53
- menuOptions: "{edit,replace}",
54
- /** presumably this usecase let it restrict to dictionary term ui, and hide genomic queries
55
- target="filter" works for gdc since in gdc ds it is overriding filter to dict
56
- but is not a general fix for non-gdc ds, which Replace menu will launch genomic+dict options
57
- maybe this is okay for non-gdc ds as the default dictTw is meaningful
58
- */
59
- usecase: { target: "filter" },
60
- vocabApi: chartsInstance.app.vocabApi,
61
- holder: pillDiv,
62
- callback: async (tw) => {
63
- waitDiv.text("LOADING ...");
64
- try {
65
- await pill.main(tw);
66
- dictTw = tw;
67
- waitDiv.text("Click to edit/replace the variable before searching gene.");
68
- } catch (e) {
69
- waitDiv.text("Error: " + (e.message || e));
70
- }
71
- }
72
- });
73
- try {
74
- await fillTermWrapper(dictTw, chartsInstance.app.vocabApi);
75
- await pill.main(dictTw);
76
- waitDiv.text("Click to edit/replace the variable before searching gene.");
77
- } catch (e) {
78
- waitDiv.text("Error: " + (e.message || e));
79
- }
80
- }
81
- }
82
- function launchPlot({ tw1, tw2, chartsInstance, holder }) {
83
- const chart = {
84
- config: {
85
- chartType: tw1?.term?.type == "survival" ? "survival" : "summary",
86
- // TODO define sandbox header with gene+term name
87
- term: tw1,
88
- term2: tw2
89
- }
90
- };
91
- chartsInstance.plotCreate(chart);
92
- holder.selectAll("*").remove();
93
- holder.append("div").style("margin", "20px").text("LOADING CHART ...");
94
- setTimeout(() => {
95
- holder.style("display", "none");
96
- }, 1e3);
97
- }
98
-
99
- export {
100
- makeChartBtnMenu,
101
- launchPlot
102
- };
103
- //# sourceMappingURL=chunk-RGOZHZCN.js.map