@sjcrh/proteinpaint-client 2.91.0 → 2.92.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 (327) hide show
  1. package/dist/{AppHeader-UOK32X5E.js → AppHeader-ZQKMDQTW.js} +8 -8
  2. package/dist/{DEanalysis-JPOCDT4F.js → DEanalysis-3HI7SEID.js} +10 -10
  3. package/dist/DEanalysis-3HI7SEID.js.map +7 -0
  4. package/dist/{Disco-ZYPMYP2E.js → Disco-VSLMH7IW.js} +4 -4
  5. package/dist/{Disco.UI-G3GAHU6Q.js → Disco.UI-4PHNVJKL.js} +6 -6
  6. package/dist/{DragControls-XN4IHBGY.js → DragControls-UVVSECD2.js} +2 -2
  7. package/dist/{HicApp-NSUVNIPD.js → HicApp-TB6CQVOL.js} +7 -7
  8. package/dist/{HicApp-NSUVNIPD.js.map → HicApp-TB6CQVOL.js.map} +2 -2
  9. package/dist/{OrbitControls-YMWMH4WZ.js → OrbitControls-MGUMHY2I.js} +2 -2
  10. package/dist/{app-SAA3573O.js → app-BIGY6UZP.js} +3 -3
  11. package/dist/{app-BMEYXSSQ.js → app-KBVF2EAY.js} +17 -17
  12. package/dist/app.js +4 -4
  13. package/dist/{bam-3YO37EHW.js → bam-B7GZKDWQ.js} +4 -4
  14. package/dist/{barchart-6EI3DEVP.js → barchart-Y2XPNFRD.js} +5 -5
  15. package/dist/{barchart.events-P5XXFDKV.js → barchart.events-UWAAX53T.js} +4 -4
  16. package/dist/{block-N65B7WJT.js → block-YQFJGXVO.js} +10 -10
  17. package/dist/{block.init-BQCHC3WP.js → block.init-5F26S4V6.js} +2 -2
  18. package/dist/{block.mds.svcnv-GCEUWRSQ.js → block.mds.svcnv-RNYQIEZO.js} +4 -4
  19. package/dist/{block.mds2-ZE6NTZOU.js → block.mds2-JG532WJY.js} +4 -4
  20. package/dist/{block.tk.aicheck-V4ZME5YR.js → block.tk.aicheck-LWKCRL4I.js} +3 -3
  21. package/dist/{block.tk.bam-IHI7TDEL.js → block.tk.bam-254A7R6I.js} +3 -3
  22. package/dist/{block.tk.hicstraw-HJEWEKOS.js → block.tk.hicstraw-RYQACLEL.js} +6 -6
  23. package/dist/{block.tk.hicstraw-HJEWEKOS.js.map → block.tk.hicstraw-RYQACLEL.js.map} +2 -2
  24. package/dist/{block.tk.junction.textmatrixui-RGTATX5P.js → block.tk.junction.textmatrixui-36QEHSWY.js} +2 -2
  25. package/dist/{block.tk.ld-72XEESGB.js → block.tk.ld-ORDNYNEP.js} +4 -4
  26. package/dist/{boxplot-JCQXIGE2.js → boxplot-57PPWW6P.js} +4 -4
  27. package/dist/{brainImaging-XMYYEITW.js → brainImaging-V2JG4IUK.js} +3 -3
  28. package/dist/{categorical-J6VCKUL2.js → categorical-P73QZORL.js} +4 -4
  29. package/dist/{chunk-BHCBREIZ.js → chunk-2SF6NJDC.js} +8 -8
  30. package/dist/{chunk-FG73LHQE.js → chunk-34HJB3ST.js} +4 -4
  31. package/dist/{chunk-IHUKABE4.js → chunk-3Z4P4FRE.js} +7 -7
  32. package/dist/{chunk-IHUKABE4.js.map → chunk-3Z4P4FRE.js.map} +2 -2
  33. package/dist/{chunk-PUIFOQNI.js → chunk-6WASEC7G.js} +2 -2
  34. package/dist/{chunk-7SLKEWIW.js → chunk-APXXS5DK.js} +2 -2
  35. package/dist/{chunk-YOW7TPPF.js → chunk-C5KBMVXY.js} +4 -4
  36. package/dist/{chunk-6RJXEPJL.js → chunk-CP2LCTLX.js} +2 -2
  37. package/dist/{chunk-CGJTS2OW.js → chunk-DXRDUM7A.js} +3 -3
  38. package/dist/{chunk-4IWF4RDN.js → chunk-EPPR77EC.js} +4 -4
  39. package/dist/{chunk-YJVN77BP.js → chunk-EQY2C4GI.js} +2 -2
  40. package/dist/{chunk-JLBNZGAD.js → chunk-GGM5H2BU.js} +4 -4
  41. package/dist/{chunk-QNZVPLAX.js → chunk-GGVUDL6O.js} +75 -74
  42. package/dist/chunk-GGVUDL6O.js.map +7 -0
  43. package/dist/{chunk-XS4RGX3K.js → chunk-GLIROF7A.js} +3 -3
  44. package/dist/{chunk-UTLRYSRI.js → chunk-KAXSJWCX.js} +7 -7
  45. package/dist/{chunk-UTLRYSRI.js.map → chunk-KAXSJWCX.js.map} +2 -2
  46. package/dist/{chunk-MOZV5PXG.js → chunk-KO6FGSI7.js} +71 -71
  47. package/dist/{chunk-GEET6ANL.js → chunk-LIZSVH2J.js} +11 -11
  48. package/dist/{chunk-GEET6ANL.js.map → chunk-LIZSVH2J.js.map} +2 -2
  49. package/dist/{chunk-64A6MQVL.js → chunk-M7UM6ZD4.js} +2 -2
  50. package/dist/{chunk-APKLOVET.js → chunk-MDAKLAAD.js} +2 -2
  51. package/dist/{chunk-GW7EHXNP.js → chunk-ME5L7I56.js} +2 -2
  52. package/dist/{chunk-PBNDKVWJ.js → chunk-MZHFYUY4.js} +4 -4
  53. package/dist/{chunk-UXHCBCW5.js → chunk-NZHTUZ4I.js} +3 -3
  54. package/dist/{chunk-ZROHWTSW.js → chunk-O6XO5GFR.js} +68 -68
  55. package/dist/{chunk-NPAZPQLE.js → chunk-OSRE6G2W.js} +3 -3
  56. package/dist/{chunk-2XHCEZSM.js → chunk-PZTSXGRE.js} +4 -4
  57. package/dist/{chunk-JBYJMF2E.js → chunk-QEHA27EP.js} +2 -2
  58. package/dist/{chunk-GZI2F2XT.js → chunk-QK3IZZ3L.js} +2 -2
  59. package/dist/{chunk-NT57I3IH.js → chunk-REZ56N4Q.js} +18 -18
  60. package/dist/{chunk-3JSP72KP.js → chunk-SKGPRWPH.js} +3 -3
  61. package/dist/{chunk-LZPDDFN3.js → chunk-U3EWNHXK.js} +9 -9
  62. package/dist/{chunk-E2TDGDP2.js → chunk-UWNQFLVD.js} +7 -7
  63. package/dist/{chunk-VKP2QBZV.js → chunk-UWXKF5GA.js} +69 -69
  64. package/dist/{chunk-UKAOQSTV.js → chunk-VA4HQACG.js} +3 -3
  65. package/dist/{chunk-LL2WK3Q6.js → chunk-VDCRIOHJ.js} +2 -2
  66. package/dist/{chunk-6FOJOYDP.js → chunk-WYAFLG2D.js} +31 -31
  67. package/dist/{chunk-VZJFUTZE.js → chunk-XSLQBFH5.js} +7 -7
  68. package/dist/{chunk-6DVJ73PZ.js → chunk-YJDQ6TJN.js} +23 -21
  69. package/dist/chunk-YJDQ6TJN.js.map +7 -0
  70. package/dist/{chunk-HJXC2LYC.js → chunk-YMARXWBK.js} +53 -43
  71. package/dist/{chunk-HJXC2LYC.js.map → chunk-YMARXWBK.js.map} +3 -3
  72. package/dist/{chunk-DZTTAFY6.js → chunk-YNH7AQH7.js} +1 -305
  73. package/dist/{chunk-DZTTAFY6.js.map → chunk-YNH7AQH7.js.map} +2 -2
  74. package/dist/{chunk-FCUPUFGS.js → chunk-Z36HPN3C.js} +14 -4
  75. package/dist/chunk-Z36HPN3C.js.map +7 -0
  76. package/dist/{chunk-OHC2VBNI.js → chunk-ZC2JTN3M.js} +132 -120
  77. package/dist/chunk-ZC2JTN3M.js.map +7 -0
  78. package/dist/{chunk-IFXP7FQ2.js → chunk-ZLL5JX4A.js} +11 -11
  79. package/dist/{condition-ICQIIVMP.js → condition-JLXP6ZII.js} +3 -3
  80. package/dist/{controls-FU77ODEU.js → controls-4WBQROMR.js} +3 -3
  81. package/dist/{controls.config-MOSIYST5.js → controls.config-RP3L3FAY.js} +3 -3
  82. package/dist/{cuminc-ATHTUBAD.js → cuminc-BL64UABO.js} +3 -3
  83. package/dist/{dataDownload-LACL6X22.js → dataDownload-TE42YTVH.js} +3 -3
  84. package/dist/{databrowser.ui-OUTN7SY2.js → databrowser.ui-G36J22GG.js} +17 -17
  85. package/dist/{dictionary-JNFCMKEA.js → dictionary-E6O2EQ3R.js} +3 -3
  86. package/dist/{expclust.gdc.spec-F5IT3KYE.js → expclust.gdc.spec-UMQDDUM6.js} +6 -6
  87. package/dist/{facet-O6C5PHBN.js → facet-ESQMHM7O.js} +3 -3
  88. package/dist/{geneExpClustering-F32P43C4.js → geneExpClustering-4TDN4ZI5.js} +5 -5
  89. package/dist/{geneExpression-QRYBSRG3.js → geneExpression-7BSQ5SSU.js} +3 -3
  90. package/dist/{geneExpression-LGU44LXY.js → geneExpression-NHOOMYJ6.js} +6 -6
  91. package/dist/{geneORA-PXMZK2PO.js → geneORA-YEXHRI3Y.js} +3 -3
  92. package/dist/{geneVariant-W66ADLH7.js → geneVariant-QMUOAYJF.js} +3 -3
  93. package/dist/{geneset-XCYLWB2D.js → geneset-JR4ZZRNY.js} +3 -3
  94. package/dist/{genomeBrowser-ROSFQBBC.js → genomeBrowser-CH7JEEYE.js} +6 -6
  95. package/dist/{genomeBrowser.controls-SR5EM3XS.js → genomeBrowser.controls-XQE2UQO4.js} +4 -4
  96. package/dist/{genomeBrowser.spec-AKIIHDUW.js → genomeBrowser.spec-Z6PDSB2Y.js} +6 -6
  97. package/dist/{gsea-NPH2MCZ6.js → gsea-DRKEJ6JD.js} +3 -3
  98. package/dist/{hierCluster-HJHPHVIE.js → hierCluster-HMC57Q7L.js} +11 -11
  99. package/dist/{hierCluster-ABJO7W6O.js → hierCluster-NSLXYVKY.js} +12 -12
  100. package/dist/{hierCluster.config-TPOPFGS4.js → hierCluster.config-EHYPMCOU.js} +5 -5
  101. package/dist/{hierCluster.integration.spec-6PKWKTCK.js → hierCluster.integration.spec-T2ZPPJSK.js} +10 -10
  102. package/dist/{hierCluster.interactivity-6XV6SKB3.js → hierCluster.interactivity-D6SSTWYJ.js} +4 -4
  103. package/dist/{imagePlot-MGDQ4JMH.js → imagePlot-5NO2PK2P.js} +4 -4
  104. package/dist/{launch.adhoc-PMCICQHJ.js → launch.adhoc-O3DANWWL.js} +6 -6
  105. package/dist/{leftlabel.sample-SNTQWHC2.js → leftlabel.sample-5QOKSOU2.js} +5 -5
  106. package/dist/{lollipop-C6XZX24U.js → lollipop-VIWFHS35.js} +2 -2
  107. package/dist/{maf-C5KMBY7B.js → maf-QSMKFZ4C.js} +3 -3
  108. package/dist/{matrix-CSK3JGZC.js → matrix-NFRLYUJT.js} +9 -9
  109. package/dist/{matrix-Y4W4EZZX.js → matrix-R53NLOBN.js} +9 -9
  110. package/dist/{matrix.config-TDFKGLE3.js → matrix.config-2I2LNAXP.js} +4 -4
  111. package/dist/{matrix.controls-ZSLNRR4E.js → matrix.controls-FO7WYQQ2.js} +4 -4
  112. package/dist/{matrix.interactivity-TNIBNY2D.js → matrix.interactivity-J2X7Y6AW.js} +4 -4
  113. package/dist/{matrix.layout-3C4MEF4O.js → matrix.layout-3NXUS3N4.js} +4 -4
  114. package/dist/{matrix.renderers-PZXLADGH.js → matrix.renderers-5X2BNMRT.js} +4 -4
  115. package/dist/{matrix.sort.unit.spec-UUVTBXPV.js → matrix.sort.unit.spec-NNUC7YES.js} +4 -4
  116. package/dist/{matrix.sorterUi.unit.spec-EWGQ3L54.js → matrix.sorterUi.unit.spec-TAAC7QTO.js} +4 -4
  117. package/dist/{mavb-SV6XLOVC.js → mavb-BLQ5JD5P.js} +2 -2
  118. package/dist/{mds.samplescatterplot-FA6B4WXW.js → mds.samplescatterplot-XF54GPVN.js} +5 -5
  119. package/dist/{metaboliteIntensity-2NYFVX5P.js → metaboliteIntensity-FSJPMPLC.js} +6 -6
  120. package/dist/{numeric-HPO4T4S4.js → numeric-7AI7IUYF.js} +6 -6
  121. package/dist/{numeric.binary-P2FVJBGO.js → numeric.binary-LPMHPWZI.js} +4 -4
  122. package/dist/{numeric.continuous-IADAB6YO.js → numeric.continuous-JJZ26DML.js} +3 -3
  123. package/dist/{numeric.discrete-7CAZQ6HV.js → numeric.discrete-IPEPEDU6.js} +4 -4
  124. package/dist/{numeric.spline-W5GUKJSA.js → numeric.spline-G7BZWLA3.js} +3 -3
  125. package/dist/{numeric.toggle-MI77JIJD.js → numeric.toggle-MNGDPEEC.js} +4 -4
  126. package/dist/{oncomatrix-GP5ZIVL5.js → oncomatrix-LURTD22K.js} +5 -5
  127. package/dist/{oncomatrix.spec-H46TONS5.js → oncomatrix.spec-QFYCW3JI.js} +6 -6
  128. package/dist/{plot.app-UFVEKETW.js → plot.app-IRTO5LTF.js} +5 -5
  129. package/dist/{plot.brainImaging-ULIDCHGJ.js → plot.brainImaging-2RFOQ5PJ.js} +2 -2
  130. package/dist/{plot.disco-6SSQCAW6.js → plot.disco-OS2LXCXU.js} +2 -2
  131. package/dist/{plot.dzi-IRIRTOLE.js → plot.dzi-LHKVF4GW.js} +2 -2
  132. package/dist/{plot.ssgq-XC2V6A3Y.js → plot.ssgq-YOH3EATO.js} +2 -2
  133. package/dist/{plot.wsi-4MK2W2IR.js → plot.wsi-KEZXO34L.js} +2 -2
  134. package/dist/{profile.spec-ND5MNUMV.js → profile.spec-6DQGZ5ZQ.js} +6 -6
  135. package/dist/{profileBarchart-APYVWLDQ.js → profileBarchart-CKBIXYOI.js} +3 -3
  136. package/dist/{profileForms-GUSWQTSI.js → profileForms-PUP2TO2V.js} +3 -3
  137. package/dist/{profilePlot-ZZEP7JVJ.js → profilePlot-KMZPTKXO.js} +3 -3
  138. package/dist/{profilePolar-HI5WH2X4.js → profilePolar-VPNLB37L.js} +3 -3
  139. package/dist/{profileRadar-QJIJQBIF.js → profileRadar-5GLSD4TC.js} +3 -3
  140. package/dist/{profileRadarFacility-33ZD6NUR.js → profileRadarFacility-TVVFCNRH.js} +3 -3
  141. package/dist/{regression-GKJLVVCR.js → regression-X3KL6H54.js} +11 -11
  142. package/dist/{regression.inputs-5U2CU4TV.js → regression.inputs-RS3PWWTG.js} +11 -11
  143. package/dist/{regression.inputs.term-FSWURYJ5.js → regression.inputs.term-GMQWKHIU.js} +11 -11
  144. package/dist/{regression.inputs.values.table-RRTK4MJO.js → regression.inputs.values.table-KJXMNB4O.js} +9 -9
  145. package/dist/{regression.results-HDKYM74I.js → regression.results-GT57NEUQ.js} +4 -4
  146. package/dist/{sampleScatter-RFNEENWD.js → sampleScatter-ZJHWYF2K.js} +8 -8
  147. package/dist/{sampleScatter.interactivity-LKAG4KUY.js → sampleScatter.interactivity-VTTXUNOH.js} +5 -5
  148. package/dist/{sampleScatter.renderer-DIACXD5O.js → sampleScatter.renderer-3A2M46ZM.js} +8 -8
  149. package/dist/sampleScatter.rendererThree-TTVVJ2MT.js +13 -0
  150. package/dist/{sampleView-FEDZXACC.js → sampleView-VY5U5LKB.js} +4 -4
  151. package/dist/{samplelst-KBERHA3P.js → samplelst-D35ZQT4Q.js} +3 -3
  152. package/dist/{samplematrix-WDGQO4HN.js → samplematrix-GQRNPZF7.js} +2 -2
  153. package/dist/{scatter-6NENZ6SN.js → scatter-OEPZC2Y3.js} +3 -3
  154. package/dist/{selectGenomeWithTklst-Y7HYORTI.js → selectGenomeWithTklst-F7KZD3HR.js} +2 -2
  155. package/dist/{singleCellCellType-QTC3QRJX.js → singleCellCellType-5IUIUVU2.js} +4 -4
  156. package/dist/{singleCellGeneExpression-MZESR6HR.js → singleCellGeneExpression-B5QRGWO2.js} +6 -6
  157. package/dist/{singleCellPlot-ONKFXDWM.js → singleCellPlot-AYXN2LHH.js} +177 -95
  158. package/dist/singleCellPlot-AYXN2LHH.js.map +7 -0
  159. package/dist/{singlecell-BEHZ6DGN.js → singlecell-VLJX2G56.js} +5 -5
  160. package/dist/{snp-NA2D6EKG.js → snp-IHXFEKC7.js} +4 -4
  161. package/dist/{snplocus-WLH2J5GU.js → snplocus-DLJR6YDY.js} +3 -3
  162. package/dist/{summary-TZ5L53U7.js → summary-7BWCMI4Y.js} +15 -15
  163. package/dist/{survival-E7UGBBNQ.js → survival-3G7BRGIX.js} +4 -4
  164. package/dist/{survival-N7H3NFN5.js → survival-C2MZMNJL.js} +3 -3
  165. package/dist/{svmr-LWKNGZ7J.js → svmr-6WU5U56H.js} +2 -2
  166. package/dist/{table-ASVL7FMD.js → table-UUT3EJYO.js} +3 -3
  167. package/dist/{tk-ZFWHRK65.js → tk-FJLGUUXH.js} +5 -5
  168. package/dist/{tp.ui-LYDSDF2F.js → tp.ui-FOGAKJ7P.js} +4 -4
  169. package/dist/{tvs.samplelst-RGMREOJQ.js → tvs.samplelst-6MV6E32W.js} +2 -2
  170. package/dist/{violin-7TCUMMCE.js → violin-LI6ZVX7Z.js} +6 -6
  171. package/dist/{violin.interactivity-SVIQWWXE.js → violin.interactivity-QRBU6WOT.js} +4 -4
  172. package/dist/{violin.renderer-XRJAM35M.js → violin.renderer-YDMXLIXC.js} +4 -4
  173. package/dist/{vocabulary-PFFEALPQ.js → vocabulary-F6TGETOD.js} +3 -3
  174. package/package.json +1 -1
  175. package/dist/DEanalysis-JPOCDT4F.js.map +0 -7
  176. package/dist/chunk-6DVJ73PZ.js.map +0 -7
  177. package/dist/chunk-FCUPUFGS.js.map +0 -7
  178. package/dist/chunk-OHC2VBNI.js.map +0 -7
  179. package/dist/chunk-QNZVPLAX.js.map +0 -7
  180. package/dist/sampleScatter.rendererThree-3WMYDPGH.js +0 -11
  181. package/dist/singleCellPlot-ONKFXDWM.js.map +0 -7
  182. /package/dist/{AppHeader-UOK32X5E.js.map → AppHeader-ZQKMDQTW.js.map} +0 -0
  183. /package/dist/{Disco-ZYPMYP2E.js.map → Disco-VSLMH7IW.js.map} +0 -0
  184. /package/dist/{Disco.UI-G3GAHU6Q.js.map → Disco.UI-4PHNVJKL.js.map} +0 -0
  185. /package/dist/{DragControls-XN4IHBGY.js.map → DragControls-UVVSECD2.js.map} +0 -0
  186. /package/dist/{OrbitControls-YMWMH4WZ.js.map → OrbitControls-MGUMHY2I.js.map} +0 -0
  187. /package/dist/{app-BMEYXSSQ.js.map → app-BIGY6UZP.js.map} +0 -0
  188. /package/dist/{app-SAA3573O.js.map → app-KBVF2EAY.js.map} +0 -0
  189. /package/dist/{bam-3YO37EHW.js.map → bam-B7GZKDWQ.js.map} +0 -0
  190. /package/dist/{barchart-6EI3DEVP.js.map → barchart-Y2XPNFRD.js.map} +0 -0
  191. /package/dist/{barchart.events-P5XXFDKV.js.map → barchart.events-UWAAX53T.js.map} +0 -0
  192. /package/dist/{block-N65B7WJT.js.map → block-YQFJGXVO.js.map} +0 -0
  193. /package/dist/{block.init-BQCHC3WP.js.map → block.init-5F26S4V6.js.map} +0 -0
  194. /package/dist/{block.mds.svcnv-GCEUWRSQ.js.map → block.mds.svcnv-RNYQIEZO.js.map} +0 -0
  195. /package/dist/{block.mds2-ZE6NTZOU.js.map → block.mds2-JG532WJY.js.map} +0 -0
  196. /package/dist/{block.tk.aicheck-V4ZME5YR.js.map → block.tk.aicheck-LWKCRL4I.js.map} +0 -0
  197. /package/dist/{block.tk.bam-IHI7TDEL.js.map → block.tk.bam-254A7R6I.js.map} +0 -0
  198. /package/dist/{block.tk.junction.textmatrixui-RGTATX5P.js.map → block.tk.junction.textmatrixui-36QEHSWY.js.map} +0 -0
  199. /package/dist/{block.tk.ld-72XEESGB.js.map → block.tk.ld-ORDNYNEP.js.map} +0 -0
  200. /package/dist/{boxplot-JCQXIGE2.js.map → boxplot-57PPWW6P.js.map} +0 -0
  201. /package/dist/{brainImaging-XMYYEITW.js.map → brainImaging-V2JG4IUK.js.map} +0 -0
  202. /package/dist/{categorical-J6VCKUL2.js.map → categorical-P73QZORL.js.map} +0 -0
  203. /package/dist/{chunk-BHCBREIZ.js.map → chunk-2SF6NJDC.js.map} +0 -0
  204. /package/dist/{chunk-FG73LHQE.js.map → chunk-34HJB3ST.js.map} +0 -0
  205. /package/dist/{chunk-PUIFOQNI.js.map → chunk-6WASEC7G.js.map} +0 -0
  206. /package/dist/{chunk-7SLKEWIW.js.map → chunk-APXXS5DK.js.map} +0 -0
  207. /package/dist/{chunk-YOW7TPPF.js.map → chunk-C5KBMVXY.js.map} +0 -0
  208. /package/dist/{chunk-6RJXEPJL.js.map → chunk-CP2LCTLX.js.map} +0 -0
  209. /package/dist/{chunk-CGJTS2OW.js.map → chunk-DXRDUM7A.js.map} +0 -0
  210. /package/dist/{chunk-4IWF4RDN.js.map → chunk-EPPR77EC.js.map} +0 -0
  211. /package/dist/{chunk-YJVN77BP.js.map → chunk-EQY2C4GI.js.map} +0 -0
  212. /package/dist/{chunk-JLBNZGAD.js.map → chunk-GGM5H2BU.js.map} +0 -0
  213. /package/dist/{chunk-XS4RGX3K.js.map → chunk-GLIROF7A.js.map} +0 -0
  214. /package/dist/{chunk-MOZV5PXG.js.map → chunk-KO6FGSI7.js.map} +0 -0
  215. /package/dist/{chunk-64A6MQVL.js.map → chunk-M7UM6ZD4.js.map} +0 -0
  216. /package/dist/{chunk-APKLOVET.js.map → chunk-MDAKLAAD.js.map} +0 -0
  217. /package/dist/{chunk-GW7EHXNP.js.map → chunk-ME5L7I56.js.map} +0 -0
  218. /package/dist/{chunk-PBNDKVWJ.js.map → chunk-MZHFYUY4.js.map} +0 -0
  219. /package/dist/{chunk-UXHCBCW5.js.map → chunk-NZHTUZ4I.js.map} +0 -0
  220. /package/dist/{chunk-ZROHWTSW.js.map → chunk-O6XO5GFR.js.map} +0 -0
  221. /package/dist/{chunk-NPAZPQLE.js.map → chunk-OSRE6G2W.js.map} +0 -0
  222. /package/dist/{chunk-2XHCEZSM.js.map → chunk-PZTSXGRE.js.map} +0 -0
  223. /package/dist/{chunk-JBYJMF2E.js.map → chunk-QEHA27EP.js.map} +0 -0
  224. /package/dist/{chunk-GZI2F2XT.js.map → chunk-QK3IZZ3L.js.map} +0 -0
  225. /package/dist/{chunk-NT57I3IH.js.map → chunk-REZ56N4Q.js.map} +0 -0
  226. /package/dist/{chunk-3JSP72KP.js.map → chunk-SKGPRWPH.js.map} +0 -0
  227. /package/dist/{chunk-LZPDDFN3.js.map → chunk-U3EWNHXK.js.map} +0 -0
  228. /package/dist/{chunk-E2TDGDP2.js.map → chunk-UWNQFLVD.js.map} +0 -0
  229. /package/dist/{chunk-VKP2QBZV.js.map → chunk-UWXKF5GA.js.map} +0 -0
  230. /package/dist/{chunk-UKAOQSTV.js.map → chunk-VA4HQACG.js.map} +0 -0
  231. /package/dist/{chunk-LL2WK3Q6.js.map → chunk-VDCRIOHJ.js.map} +0 -0
  232. /package/dist/{chunk-6FOJOYDP.js.map → chunk-WYAFLG2D.js.map} +0 -0
  233. /package/dist/{chunk-VZJFUTZE.js.map → chunk-XSLQBFH5.js.map} +0 -0
  234. /package/dist/{chunk-IFXP7FQ2.js.map → chunk-ZLL5JX4A.js.map} +0 -0
  235. /package/dist/{condition-ICQIIVMP.js.map → condition-JLXP6ZII.js.map} +0 -0
  236. /package/dist/{controls-FU77ODEU.js.map → controls-4WBQROMR.js.map} +0 -0
  237. /package/dist/{controls.config-MOSIYST5.js.map → controls.config-RP3L3FAY.js.map} +0 -0
  238. /package/dist/{cuminc-ATHTUBAD.js.map → cuminc-BL64UABO.js.map} +0 -0
  239. /package/dist/{dataDownload-LACL6X22.js.map → dataDownload-TE42YTVH.js.map} +0 -0
  240. /package/dist/{databrowser.ui-OUTN7SY2.js.map → databrowser.ui-G36J22GG.js.map} +0 -0
  241. /package/dist/{dictionary-JNFCMKEA.js.map → dictionary-E6O2EQ3R.js.map} +0 -0
  242. /package/dist/{expclust.gdc.spec-F5IT3KYE.js.map → expclust.gdc.spec-UMQDDUM6.js.map} +0 -0
  243. /package/dist/{facet-O6C5PHBN.js.map → facet-ESQMHM7O.js.map} +0 -0
  244. /package/dist/{geneExpClustering-F32P43C4.js.map → geneExpClustering-4TDN4ZI5.js.map} +0 -0
  245. /package/dist/{geneExpression-QRYBSRG3.js.map → geneExpression-7BSQ5SSU.js.map} +0 -0
  246. /package/dist/{geneExpression-LGU44LXY.js.map → geneExpression-NHOOMYJ6.js.map} +0 -0
  247. /package/dist/{geneORA-PXMZK2PO.js.map → geneORA-YEXHRI3Y.js.map} +0 -0
  248. /package/dist/{geneVariant-W66ADLH7.js.map → geneVariant-QMUOAYJF.js.map} +0 -0
  249. /package/dist/{geneset-XCYLWB2D.js.map → geneset-JR4ZZRNY.js.map} +0 -0
  250. /package/dist/{genomeBrowser-ROSFQBBC.js.map → genomeBrowser-CH7JEEYE.js.map} +0 -0
  251. /package/dist/{genomeBrowser.controls-SR5EM3XS.js.map → genomeBrowser.controls-XQE2UQO4.js.map} +0 -0
  252. /package/dist/{genomeBrowser.spec-AKIIHDUW.js.map → genomeBrowser.spec-Z6PDSB2Y.js.map} +0 -0
  253. /package/dist/{gsea-NPH2MCZ6.js.map → gsea-DRKEJ6JD.js.map} +0 -0
  254. /package/dist/{hierCluster-ABJO7W6O.js.map → hierCluster-HMC57Q7L.js.map} +0 -0
  255. /package/dist/{hierCluster-HJHPHVIE.js.map → hierCluster-NSLXYVKY.js.map} +0 -0
  256. /package/dist/{hierCluster.config-TPOPFGS4.js.map → hierCluster.config-EHYPMCOU.js.map} +0 -0
  257. /package/dist/{hierCluster.integration.spec-6PKWKTCK.js.map → hierCluster.integration.spec-T2ZPPJSK.js.map} +0 -0
  258. /package/dist/{hierCluster.interactivity-6XV6SKB3.js.map → hierCluster.interactivity-D6SSTWYJ.js.map} +0 -0
  259. /package/dist/{imagePlot-MGDQ4JMH.js.map → imagePlot-5NO2PK2P.js.map} +0 -0
  260. /package/dist/{launch.adhoc-PMCICQHJ.js.map → launch.adhoc-O3DANWWL.js.map} +0 -0
  261. /package/dist/{leftlabel.sample-SNTQWHC2.js.map → leftlabel.sample-5QOKSOU2.js.map} +0 -0
  262. /package/dist/{lollipop-C6XZX24U.js.map → lollipop-VIWFHS35.js.map} +0 -0
  263. /package/dist/{maf-C5KMBY7B.js.map → maf-QSMKFZ4C.js.map} +0 -0
  264. /package/dist/{matrix-CSK3JGZC.js.map → matrix-NFRLYUJT.js.map} +0 -0
  265. /package/dist/{matrix-Y4W4EZZX.js.map → matrix-R53NLOBN.js.map} +0 -0
  266. /package/dist/{matrix.config-TDFKGLE3.js.map → matrix.config-2I2LNAXP.js.map} +0 -0
  267. /package/dist/{matrix.controls-ZSLNRR4E.js.map → matrix.controls-FO7WYQQ2.js.map} +0 -0
  268. /package/dist/{matrix.interactivity-TNIBNY2D.js.map → matrix.interactivity-J2X7Y6AW.js.map} +0 -0
  269. /package/dist/{matrix.layout-3C4MEF4O.js.map → matrix.layout-3NXUS3N4.js.map} +0 -0
  270. /package/dist/{matrix.renderers-PZXLADGH.js.map → matrix.renderers-5X2BNMRT.js.map} +0 -0
  271. /package/dist/{matrix.sort.unit.spec-UUVTBXPV.js.map → matrix.sort.unit.spec-NNUC7YES.js.map} +0 -0
  272. /package/dist/{matrix.sorterUi.unit.spec-EWGQ3L54.js.map → matrix.sorterUi.unit.spec-TAAC7QTO.js.map} +0 -0
  273. /package/dist/{mavb-SV6XLOVC.js.map → mavb-BLQ5JD5P.js.map} +0 -0
  274. /package/dist/{mds.samplescatterplot-FA6B4WXW.js.map → mds.samplescatterplot-XF54GPVN.js.map} +0 -0
  275. /package/dist/{metaboliteIntensity-2NYFVX5P.js.map → metaboliteIntensity-FSJPMPLC.js.map} +0 -0
  276. /package/dist/{numeric-HPO4T4S4.js.map → numeric-7AI7IUYF.js.map} +0 -0
  277. /package/dist/{numeric.binary-P2FVJBGO.js.map → numeric.binary-LPMHPWZI.js.map} +0 -0
  278. /package/dist/{numeric.continuous-IADAB6YO.js.map → numeric.continuous-JJZ26DML.js.map} +0 -0
  279. /package/dist/{numeric.discrete-7CAZQ6HV.js.map → numeric.discrete-IPEPEDU6.js.map} +0 -0
  280. /package/dist/{numeric.spline-W5GUKJSA.js.map → numeric.spline-G7BZWLA3.js.map} +0 -0
  281. /package/dist/{numeric.toggle-MI77JIJD.js.map → numeric.toggle-MNGDPEEC.js.map} +0 -0
  282. /package/dist/{oncomatrix-GP5ZIVL5.js.map → oncomatrix-LURTD22K.js.map} +0 -0
  283. /package/dist/{oncomatrix.spec-H46TONS5.js.map → oncomatrix.spec-QFYCW3JI.js.map} +0 -0
  284. /package/dist/{plot.app-UFVEKETW.js.map → plot.app-IRTO5LTF.js.map} +0 -0
  285. /package/dist/{plot.brainImaging-ULIDCHGJ.js.map → plot.brainImaging-2RFOQ5PJ.js.map} +0 -0
  286. /package/dist/{plot.disco-6SSQCAW6.js.map → plot.disco-OS2LXCXU.js.map} +0 -0
  287. /package/dist/{plot.dzi-IRIRTOLE.js.map → plot.dzi-LHKVF4GW.js.map} +0 -0
  288. /package/dist/{plot.ssgq-XC2V6A3Y.js.map → plot.ssgq-YOH3EATO.js.map} +0 -0
  289. /package/dist/{plot.wsi-4MK2W2IR.js.map → plot.wsi-KEZXO34L.js.map} +0 -0
  290. /package/dist/{profile.spec-ND5MNUMV.js.map → profile.spec-6DQGZ5ZQ.js.map} +0 -0
  291. /package/dist/{profileBarchart-APYVWLDQ.js.map → profileBarchart-CKBIXYOI.js.map} +0 -0
  292. /package/dist/{profileForms-GUSWQTSI.js.map → profileForms-PUP2TO2V.js.map} +0 -0
  293. /package/dist/{profilePlot-ZZEP7JVJ.js.map → profilePlot-KMZPTKXO.js.map} +0 -0
  294. /package/dist/{profilePolar-HI5WH2X4.js.map → profilePolar-VPNLB37L.js.map} +0 -0
  295. /package/dist/{profileRadar-QJIJQBIF.js.map → profileRadar-5GLSD4TC.js.map} +0 -0
  296. /package/dist/{profileRadarFacility-33ZD6NUR.js.map → profileRadarFacility-TVVFCNRH.js.map} +0 -0
  297. /package/dist/{regression-GKJLVVCR.js.map → regression-X3KL6H54.js.map} +0 -0
  298. /package/dist/{regression.inputs-5U2CU4TV.js.map → regression.inputs-RS3PWWTG.js.map} +0 -0
  299. /package/dist/{regression.inputs.term-FSWURYJ5.js.map → regression.inputs.term-GMQWKHIU.js.map} +0 -0
  300. /package/dist/{regression.inputs.values.table-RRTK4MJO.js.map → regression.inputs.values.table-KJXMNB4O.js.map} +0 -0
  301. /package/dist/{regression.results-HDKYM74I.js.map → regression.results-GT57NEUQ.js.map} +0 -0
  302. /package/dist/{sampleScatter-RFNEENWD.js.map → sampleScatter-ZJHWYF2K.js.map} +0 -0
  303. /package/dist/{sampleScatter.interactivity-LKAG4KUY.js.map → sampleScatter.interactivity-VTTXUNOH.js.map} +0 -0
  304. /package/dist/{sampleScatter.renderer-DIACXD5O.js.map → sampleScatter.renderer-3A2M46ZM.js.map} +0 -0
  305. /package/dist/{sampleScatter.rendererThree-3WMYDPGH.js.map → sampleScatter.rendererThree-TTVVJ2MT.js.map} +0 -0
  306. /package/dist/{sampleView-FEDZXACC.js.map → sampleView-VY5U5LKB.js.map} +0 -0
  307. /package/dist/{samplelst-KBERHA3P.js.map → samplelst-D35ZQT4Q.js.map} +0 -0
  308. /package/dist/{samplematrix-WDGQO4HN.js.map → samplematrix-GQRNPZF7.js.map} +0 -0
  309. /package/dist/{scatter-6NENZ6SN.js.map → scatter-OEPZC2Y3.js.map} +0 -0
  310. /package/dist/{selectGenomeWithTklst-Y7HYORTI.js.map → selectGenomeWithTklst-F7KZD3HR.js.map} +0 -0
  311. /package/dist/{singleCellCellType-QTC3QRJX.js.map → singleCellCellType-5IUIUVU2.js.map} +0 -0
  312. /package/dist/{singleCellGeneExpression-MZESR6HR.js.map → singleCellGeneExpression-B5QRGWO2.js.map} +0 -0
  313. /package/dist/{singlecell-BEHZ6DGN.js.map → singlecell-VLJX2G56.js.map} +0 -0
  314. /package/dist/{snp-NA2D6EKG.js.map → snp-IHXFEKC7.js.map} +0 -0
  315. /package/dist/{snplocus-WLH2J5GU.js.map → snplocus-DLJR6YDY.js.map} +0 -0
  316. /package/dist/{summary-TZ5L53U7.js.map → summary-7BWCMI4Y.js.map} +0 -0
  317. /package/dist/{survival-E7UGBBNQ.js.map → survival-3G7BRGIX.js.map} +0 -0
  318. /package/dist/{survival-N7H3NFN5.js.map → survival-C2MZMNJL.js.map} +0 -0
  319. /package/dist/{svmr-LWKNGZ7J.js.map → svmr-6WU5U56H.js.map} +0 -0
  320. /package/dist/{table-ASVL7FMD.js.map → table-UUT3EJYO.js.map} +0 -0
  321. /package/dist/{tk-ZFWHRK65.js.map → tk-FJLGUUXH.js.map} +0 -0
  322. /package/dist/{tp.ui-LYDSDF2F.js.map → tp.ui-FOGAKJ7P.js.map} +0 -0
  323. /package/dist/{tvs.samplelst-RGMREOJQ.js.map → tvs.samplelst-6MV6E32W.js.map} +0 -0
  324. /package/dist/{violin-7TCUMMCE.js.map → violin-LI6ZVX7Z.js.map} +0 -0
  325. /package/dist/{violin.interactivity-SVIQWWXE.js.map → violin.interactivity-QRBU6WOT.js.map} +0 -0
  326. /package/dist/{violin.renderer-XRJAM35M.js.map → violin.renderer-YDMXLIXC.js.map} +0 -0
  327. /package/dist/{vocabulary-PFFEALPQ.js.map → vocabulary-F6TGETOD.js.map} +0 -0
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-GLTXSGJ5.js";
5
5
  import {
6
6
  InputSearch
7
- } from "./chunk-OHC2VBNI.js";
7
+ } from "./chunk-ZC2JTN3M.js";
8
8
  import "./chunk-7KFEDC2T.js";
9
9
  import "./chunk-FCPSU6WB.js";
10
10
  import "./chunk-4WBP22U2.js";
@@ -17,12 +17,12 @@ import "./chunk-VSRNBBZH.js";
17
17
  import "./chunk-Z7ZWX5W5.js";
18
18
  import "./chunk-NHPZSGTH.js";
19
19
  import "./chunk-PBT5AMVE.js";
20
- import "./chunk-FCUPUFGS.js";
20
+ import "./chunk-Z36HPN3C.js";
21
21
  import "./chunk-WTM3GD2X.js";
22
22
  import {
23
23
  get_tklst
24
- } from "./chunk-NT57I3IH.js";
25
- import "./chunk-2XHCEZSM.js";
24
+ } from "./chunk-REZ56N4Q.js";
25
+ import "./chunk-PZTSXGRE.js";
26
26
  import "./chunk-MYPTC6HX.js";
27
27
  import "./chunk-MKAF2BHB.js";
28
28
  import {
@@ -37,7 +37,7 @@ import "./chunk-SJ4KZVLF.js";
37
37
  import "./chunk-ALPXXDQD.js";
38
38
  import {
39
39
  block_init_default
40
- } from "./chunk-CGJTS2OW.js";
40
+ } from "./chunk-DXRDUM7A.js";
41
41
  import {
42
42
  throwMsgWithFilePathAndFnName
43
43
  } from "./chunk-RKJGIOIF.js";
@@ -236,7 +236,7 @@ async function findgene2paint(str, app, genomename, jwt) {
236
236
  debugmode: app.debugmode
237
237
  };
238
238
  first_genetrack_tolist(g, par2.tklst);
239
- import("./block-N65B7WJT.js").then((b) => new b.Block(par2)).catch((err) => {
239
+ import("./block-YQFJGXVO.js").then((b) => new b.Block(par2)).catch((err) => {
240
240
  app.error0(err);
241
241
  });
242
242
  return;
@@ -842,7 +842,7 @@ var AppHeader = class _AppHeader {
842
842
  debugmode: app.debugmode
843
843
  };
844
844
  first_genetrack_tolist(g, par.tklst);
845
- import("./block-N65B7WJT.js").then((b) => new b.Block(par));
845
+ import("./block-YQFJGXVO.js").then((b) => new b.Block(par));
846
846
  app.drawer.dispatch({ type: "is_apps_btn_active", value: false });
847
847
  });
848
848
  return g_browser_btn;
@@ -855,4 +855,4 @@ var AppHeader = class _AppHeader {
855
855
  export {
856
856
  AppHeader
857
857
  };
858
- //# sourceMappingURL=AppHeader-UOK32X5E.js.map
858
+ //# sourceMappingURL=AppHeader-ZQKMDQTW.js.map
@@ -2,7 +2,7 @@ import "./chunk-Q7EFDAC2.js";
2
2
  import {
3
3
  axisstyle,
4
4
  controlsInit
5
- } from "./chunk-OHC2VBNI.js";
5
+ } from "./chunk-ZC2JTN3M.js";
6
6
  import "./chunk-7KFEDC2T.js";
7
7
  import "./chunk-FCPSU6WB.js";
8
8
  import "./chunk-4WBP22U2.js";
@@ -20,7 +20,7 @@ import {
20
20
  import {
21
21
  downloadTable,
22
22
  renderTable
23
- } from "./chunk-FCUPUFGS.js";
23
+ } from "./chunk-Z36HPN3C.js";
24
24
  import "./chunk-WTM3GD2X.js";
25
25
  import "./chunk-ZYRXVRSD.js";
26
26
  import "./chunk-SJ4KZVLF.js";
@@ -142,7 +142,9 @@ var DEanalysis = class {
142
142
  ]
143
143
  }
144
144
  ];
145
- if (output.mid_sample_size_cutoff >= output.sample_size1 && output.mid_sample_size_cutoff < output.sample_size2 && output.sample_size2 < output.high_sample_size_cutoff || output.mid_sample_size_cutoff >= output.sample_size2 && output.mid_sample_size_cutoff < output.sample_size1 && output.sample_size1 < output.high_sample_size_cutoff) {
145
+ if (JSON.parse(sessionStorage.getItem("optionalFeatures")).run_parametricDE == true || // edgeR (and other parametric methods to be added in the future) option is always shown when serverconfig.features.run_parametricDE is set to true. This has been added so as to make this functionality available only in select few production servers for now.
146
+ output.mid_sample_size_cutoff >= output.sample_size1 && // Invoked only when one sample size is low than the mid_sample_size_cutoff and the other one is higher but the higher sample size is lower than the high cutoff so that the DE computation does not take a lot of time on the server
147
+ output.mid_sample_size_cutoff < output.sample_size2 && output.sample_size2 < output.high_sample_size_cutoff || output.mid_sample_size_cutoff >= output.sample_size2 && output.mid_sample_size_cutoff < output.sample_size1 && output.sample_size1 < output.high_sample_size_cutoff) {
146
148
  inputs.push({
147
149
  label: "Method",
148
150
  type: "radio",
@@ -154,8 +156,6 @@ var DEanalysis = class {
154
156
  { label: "wilcoxon", value: "wilcoxon" }
155
157
  ]
156
158
  });
157
- this.settings.method = output.method;
158
- this.state.config = output.method;
159
159
  }
160
160
  if (this.app.opts.genome.termdbs) {
161
161
  inputs.push({
@@ -408,11 +408,11 @@ async function render_volcano(self, output) {
408
408
  value: num_significant_genes + num_non_significant_genes
409
409
  },
410
410
  {
411
- label: self.config.state.groups[0].name + " sample size",
411
+ label: self.config.state.groups[0].name + " sample size (control group)",
412
412
  value: sample_size1
413
413
  },
414
414
  {
415
- label: self.config.state.groups[1].name + " sample size",
415
+ label: self.config.state.groups[1].name + " sample size (treatment group)",
416
416
  value: sample_size2
417
417
  }
418
418
  ];
@@ -555,12 +555,12 @@ async function getPlotConfig(opts, app) {
555
555
  settings: {
556
556
  DEanalysis: {
557
557
  pvalue: 0.05,
558
- foldchange: 2,
558
+ foldchange: 0,
559
559
  min_count: 10,
560
560
  min_total_count: 15,
561
561
  pvaluetable: false,
562
562
  adjusted_original_pvalue: "adjusted",
563
- method: void 0,
563
+ method: "wilcoxon",
564
564
  gene_ora: void 0,
565
565
  gsea: void 0
566
566
  }
@@ -644,4 +644,4 @@ export {
644
644
  makeChartBtnMenu,
645
645
  openHiercluster
646
646
  };
647
- //# sourceMappingURL=DEanalysis-JPOCDT4F.js.map
647
+ //# sourceMappingURL=DEanalysis-3HI7SEID.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../plots/DEanalysis.js"],
4
+ "sourcesContent": ["import { axisstyle } from '#dom/axisstyle'\nimport { table2col } from '#dom/table2col'\nimport { Menu } from '../dom/menu'\nimport { renderTable } from '../dom/table'\nimport * as d3axis from 'd3-axis'\nimport { controlsInit } from './controls'\nimport { select as d3select } from 'd3-selection'\nimport { getCompInit, copyMerge } from '#rx'\nimport { dofetch3 } from '#common/dofetch'\nimport { scaleLog, scaleLinear } from 'd3-scale'\nimport { d3lasso } from '../common/lasso'\nimport { downloadTable } from '../dom/table'\nimport { roundValueAuto } from '#shared/roundValue.js'\n\n/*\n\nopts{}\n\tsamplelst{}\n\t\tgroups[]\n\nthis{}\n\tapp{}\n\t\tvocabApi\n*/\n\nconst hlcolor = '#ffa200'\nconst tip = new Menu()\nclass DEanalysis {\n\tconstructor() {\n\t\tthis.type = 'DEanalysis'\n\t}\n\tasync init(opts) {\n\t\tconst config = opts.plots.find(p => p.id === this.id)\n\t\tconst controlsDiv = this.opts.holder.append('div').style('display', 'inline-block')\n\t\tconst mainDiv = this.opts.holder.append('div').style('display', 'inline-block').style('margin-left', '50px')\n\t\tconst holder = mainDiv.append('div').style('display', 'inline-block')\n\t\tconst detailsDiv = mainDiv\n\t\t\t.append('div')\n\t\t\t.style('display', 'inline-block')\n\t\t\t.style('vertical-align', 'top')\n\t\t\t.style('margin-top', '50px')\n\n\t\tconst tableDiv = this.opts.holder.append('div').style('margin-left', '50px')\n\n\t\tthis.dom = {\n\t\t\tholder,\n\t\t\theader: this.opts.header,\n\t\t\tcontrolsDiv,\n\t\t\tdetailsDiv,\n\t\t\ttableDiv\n\t\t}\n\t}\n\n\tasync setControls(output) {\n\t\tthis.dom.controlsDiv.selectAll('*').remove()\n\t\tconst inputs = [\n\t\t\t{\n\t\t\t\tlabel: 'Minimum read count',\n\t\t\t\ttype: 'number',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'min_count',\n\t\t\t\ttitle: 'Relative cpm cutoff for filtering a gene compared to all samples and genes in dataset',\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10000\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Minimum total read count',\n\t\t\t\ttype: 'number',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'min_total_count',\n\t\t\t\ttitle: 'Minimum total read count required for each sample',\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10000\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'P-value significance (linear scale)',\n\t\t\t\ttype: 'number',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'pvalue',\n\t\t\t\ttitle: 'P-value significance',\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Fold change (log scale)',\n\t\t\t\ttype: 'number',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'foldchange',\n\t\t\t\ttitle: 'Fold change',\n\t\t\t\tmin: -10,\n\t\t\t\tmax: 10\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'P-value table',\n\t\t\t\ttype: 'checkbox',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'pvaluetable',\n\t\t\t\ttitle: 'Display table showing original and adjusted pvalues for all significant genes',\n\t\t\t\tboxLabel: ''\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'P-value',\n\t\t\t\ttype: 'radio',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'adjusted_original_pvalue',\n\t\t\t\ttitle: 'Toggle between original and adjusted pvalues for volcano plot',\n\t\t\t\toptions: [\n\t\t\t\t\t{ label: 'adjusted', value: 'adjusted' },\n\t\t\t\t\t{ label: 'original', value: 'original' }\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\n\t\tif (\n\t\t\tJSON.parse(sessionStorage.getItem('optionalFeatures')).run_parametricDE == true || // edgeR (and other parametric methods to be added in the future) option is always shown when serverconfig.features.run_parametricDE is set to true. This has been added so as to make this functionality available only in select few production servers for now.\n\t\t\t(output.mid_sample_size_cutoff >= output.sample_size1 && // Invoked only when one sample size is low than the mid_sample_size_cutoff and the other one is higher but the higher sample size is lower than the high cutoff so that the DE computation does not take a lot of time on the server\n\t\t\t\toutput.mid_sample_size_cutoff < output.sample_size2 &&\n\t\t\t\toutput.sample_size2 < output.high_sample_size_cutoff) ||\n\t\t\t(output.mid_sample_size_cutoff >= output.sample_size2 &&\n\t\t\t\toutput.mid_sample_size_cutoff < output.sample_size1 &&\n\t\t\t\toutput.sample_size1 < output.high_sample_size_cutoff)\n\t\t) {\n\t\t\tinputs.push({\n\t\t\t\tlabel: 'Method',\n\t\t\t\ttype: 'radio',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'method',\n\t\t\t\ttitle: 'Toggle between edgeR and wilcoxon test',\n\t\t\t\toptions: [\n\t\t\t\t\t{ label: 'edgeR', value: 'edgeR' },\n\t\t\t\t\t{ label: 'wilcoxon', value: 'wilcoxon' }\n\t\t\t\t]\n\t\t\t})\n\t\t}\n\n\t\t//if (\n\t\t//\t(output.mid_sample_size_cutoff >= output.sample_size1 &&\n\t\t//\t\toutput.mid_sample_size_cutoff < output.sample_size2 &&\n\t\t//\t\toutput.sample_size2 < output.high_sample_size_cutoff) ||\n\t\t//\t(output.mid_sample_size_cutoff >= output.sample_size2 &&\n\t\t//\t\toutput.mid_sample_size_cutoff < output.sample_size1 &&\n\t\t//\t\toutput.sample_size1 < output.high_sample_size_cutoff)\n\t\t//) {\n\t\t//\t// Invoked only when one sample size is low than the mid_sample_size_cutoff and the other one is higher but the higher sample size is lower than the high cutoff so that the DE computation does not take a lot of time on the server\n\t\t//\tinputs.push({\n\t\t//\t\tlabel: 'Method',\n\t\t//\t\ttype: 'radio',\n\t\t//\t\tchartType: 'DEanalysis',\n\t\t//\t\tsettingsKey: 'method',\n\t\t//\t\ttitle: 'Toggle between edgeR and wilcoxon test',\n\t\t//\t\toptions: [\n\t\t//\t\t\t{ label: 'edgeR', value: 'edgeR' },\n\t\t//\t\t\t{ label: 'wilcoxon', value: 'wilcoxon' }\n\t\t//\t\t]\n\t\t//\t})\n\t\t//\tthis.settings.method = output.method\n\t\t//\tthis.state.config = output.method\n\t\t//}\n\n\t\tif (this.app.opts.genome.termdbs) {\n\t\t\t// Check if genome build contains termdbs, only then enable gene ora\n\t\t\tinputs.push({\n\t\t\t\tlabel: 'Gene set overrepresentation analysis',\n\t\t\t\ttype: 'radio',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'gene_ora',\n\t\t\t\ttitle: 'Toggle between analyzing upregulated, downregulated or both genes',\n\t\t\t\toptions: [\n\t\t\t\t\t{ label: 'upregulated', value: 'upregulated' },\n\t\t\t\t\t{ label: 'downregulated', value: 'downregulated' },\n\t\t\t\t\t{ label: 'both', value: 'both' }\n\t\t\t\t]\n\t\t\t})\n\t\t}\n\n\t\tif (this.app.opts.genome.termdbs && !this.settings.gsea) {\n\t\t\t// Check if genome build contains termdbs, only then enable gene ora\n\t\t\tinputs.push({\n\t\t\t\tlabel: 'Gene set enrichment analysis',\n\t\t\t\ttype: 'radio',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'gsea',\n\t\t\t\ttitle: 'Gene set enrichment analysis',\n\t\t\t\toptions: [{ label: 'Submit', value: 'Submit' }]\n\t\t\t})\n\t\t}\n\n\t\tif (this.settings.pvaluetable == true) {\n\t\t\t// This currently does not work as hierarchial clustering code needs to be changed\n\t\t\tinputs.push({\n\t\t\t\tlabel: 'Hierarchial Clustering',\n\t\t\t\ttype: 'radio',\n\t\t\t\tchartType: 'DEanalysis',\n\t\t\t\tsettingsKey: 'hierCluster',\n\t\t\t\ttitle: 'Toggle between various methods for selecting genes for hierarchial clustering',\n\t\t\t\toptions: [\n\t\t\t\t\t{ label: 'Top 100 genes', value: 'top100' },\n\t\t\t\t\t{ label: 'Top 100 upregulated', value: 'top100up' },\n\t\t\t\t\t{ label: 'Top 100 downregulated', value: 'top100down' }\n\t\t\t\t]\n\t\t\t})\n\t\t\tthis.settings.hierCluster = 'top100'\n\t\t}\n\n\t\tthis.components = {\n\t\t\tcontrols: await controlsInit({\n\t\t\t\tapp: this.app,\n\t\t\t\tid: this.id,\n\t\t\t\tholder: this.dom.controlsDiv,\n\t\t\t\tinputs: inputs\n\t\t\t})\n\t\t}\n\t\tthis.components.controls.on('downloadClick.DEanalysis', () => {\n\t\t\tdownloadTable(this.table_rows, this.table_cols)\n\t\t})\n\t}\n\tgetState(appState) {\n\t\tconst config = appState.plots.find(p => p.id === this.id)\n\t\tif (!config) throw `No plot with id='${this.id}' found`\n\t\treturn {\n\t\t\tconfig\n\t\t}\n\t}\n\n\tasync main() {\n\t\tthis.config = JSON.parse(JSON.stringify(this.state.config))\n\t\tthis.settings = this.config.settings.DEanalysis\n\t\tif (this.dom.detailsDiv) {\n\t\t\tthis.dom.detailsDiv.selectAll('*').remove()\n\t\t}\n\t\tif (this.dom.holder) {\n\t\t\tthis.dom.holder.selectAll('*').remove()\n\t\t}\n\t\tconst wait = this.dom.detailsDiv.append('div').text('Loading...')\n\t\tconst output = await runDEanalysis(this) // \"this.config\" was changed from \"this.state.config\". Hope this does not create any problems.\n\t\twait.remove()\n\t\toutput.mid_sample_size_cutoff = 8 // mid sample size cutoff for method toggle to appear\n\t\toutput.high_sample_size_cutoff = 30 // high sample size cutoff for method toggle to not appear, so that very high sample-size groups are not analyzed by edgeR. The exact cutoff value will need to be determined with more examples.\n\t\tawait this.setControls(output)\n\t\tthis.dom.header.html(\n\t\t\tthis.config.state.groups[0].name +\n\t\t\t\t' vs ' +\n\t\t\t\tthis.config.state.groups[1].name +\n\t\t\t\t' <span style=\"font-size:.8em;opacity:.7\">DIFFERENTIAL GENE EXPRESSION</span>'\n\t\t)\n\t\trender_volcano(this, output)\n\t}\n}\n\nasync function render_volcano(self, output) {\n\t/*\nm {}\n- gene\n- logfoldchange\n- averagevalue\n- pvalue\n\nadd:\n- vo_circle\n\t*/\n\n\t// Delete previous holder, if present\n\tconst sample_size1 = output.sample_size1\n\tconst sample_size2 = output.sample_size2\n\tconst mavb = output.data\n\tconst holder = self.dom.holder\n\tholder.selectAll('*').remove()\n\tself.dom.detailsDiv.selectAll('*').remove()\n\tself.dom.tableDiv.selectAll('*').remove()\n\tlet minlogfc = 0,\n\t\tmaxlogfc = 0,\n\t\tminlogpv = 0,\n\t\tmaxlogpv = 0\n\tfor (const d of mavb) {\n\t\tminlogfc = Math.min(minlogfc, d.fold_change)\n\t\tmaxlogfc = Math.max(maxlogfc, d.fold_change)\n\t\tif (d.adjusted_p_value == 0) {\n\t\t\tcontinue\n\t\t} else {\n\t\t\tminlogpv = Math.min(minlogpv, d.adjusted_p_value)\n\t\t\tmaxlogpv = Math.max(maxlogpv, d.adjusted_p_value)\n\t\t}\n\t}\n\n\tlet yaxisw,\n\t\txaxish,\n\t\twidth,\n\t\theight,\n\t\txpad,\n\t\typad,\n\t\ttoppad = 50,\n\t\trightpad = 50,\n\t\tradius\n\n\tconst svg = holder.append('svg')\n\tconst yaxisg = svg.append('g')\n\tconst xaxisg = svg.append('g')\n\tconst xlab = svg.append('text').text('log2(fold change)').attr('fill', 'black').attr('text-anchor', 'middle')\n\tconst ylab = svg.append('text').text('-log10(adjusted P value)').attr('fill', 'black').attr('text-anchor', 'middle')\n\n\tmavb.vo_dotarea = svg.append('g')\n\n\tconst box = mavb.vo_dotarea\n\t\t.append('rect')\n\t\t.attr('stroke', '#ededed')\n\t\t.attr('fill', 'none')\n\t\t.attr('shape-rendering', 'crispEdges')\n\tconst xscale = scaleLinear().domain([minlogfc, maxlogfc])\n\tconst yscale = scaleLinear().domain([minlogpv, maxlogpv])\n\tlet radiusscale\n\tconst dotg = mavb.vo_dotarea\n\t\t.selectAll()\n\t\t.data(mavb)\n\t\t.enter()\n\t\t.append('g')\n\t\t.each(function (d) {\n\t\t\td.vo_g = this\n\t\t})\n\tconst fold_change_cutoff = self.settings.foldchange\n\t//console.log(\"self.settings:\",self.settings)\n\t//self.config.settings.DEanalysis.min_count = self.settings.min_count\n\t//self.config.settings.DEanalysis.min_total_count = self.settings.min_total_count\n\tif (self.settings.pvalue == 0) throw 'p-value significance cannot be zero'\n\tconst p_value_cutoff = -Math.log10(self.settings.pvalue)\n\tconst p_value_adjusted_original = self.settings.adjusted_original_pvalue\n\tlet num_significant_genes = 0\n\tlet num_non_significant_genes = 0\n\tself.table_rows = []\n\tconst circle = dotg\n\t\t.append('circle')\n\t\t.attr('stroke', d => {\n\t\t\tlet color\n\t\t\tconst value3 = roundValueAuto(d.fold_change)\n\t\t\tconst value4 = roundValueAuto(Math.pow(10, -d.original_p_value))\n\t\t\tconst value5 = roundValueAuto(Math.pow(10, -d.adjusted_p_value))\n\t\t\tif (\n\t\t\t\tp_value_adjusted_original == 'adjusted' &&\n\t\t\t\td.adjusted_p_value > p_value_cutoff &&\n\t\t\t\tMath.abs(d.fold_change) > fold_change_cutoff\n\t\t\t) {\n\t\t\t\tcolor = 'red'\n\t\t\t\tnum_significant_genes += 1\n\n\t\t\t\tself.table_rows.push([\n\t\t\t\t\t{ value: d.gene_name },\n\t\t\t\t\t{ value: d.gene_symbol },\n\t\t\t\t\t{ value: value3 },\n\t\t\t\t\t{ value: value4 },\n\t\t\t\t\t{ value: value5 }\n\t\t\t\t])\n\t\t\t} else if (\n\t\t\t\tp_value_adjusted_original == 'original' &&\n\t\t\t\td.original_p_value > p_value_cutoff &&\n\t\t\t\tMath.abs(d.fold_change) > fold_change_cutoff\n\t\t\t) {\n\t\t\t\tcolor = 'red'\n\t\t\t\tnum_significant_genes += 1\n\t\t\t\tself.table_rows.push([\n\t\t\t\t\t{ value: d.gene_name },\n\t\t\t\t\t{ value: d.gene_symbol },\n\t\t\t\t\t{ value: value3 },\n\t\t\t\t\t{ value: value4 },\n\t\t\t\t\t{ value: value5 }\n\t\t\t\t])\n\t\t\t} else {\n\t\t\t\tcolor = 'black'\n\t\t\t\tnum_non_significant_genes += 1\n\t\t\t}\n\t\t\treturn color\n\t\t})\n\t\t.attr('stroke-opacity', 0.2)\n\t\t.attr('stroke-width', 1)\n\t\t.attr('fill', hlcolor)\n\t\t.attr('fill-opacity', 0)\n\t\t.each(function (d) {\n\t\t\td.vo_circle = this\n\t\t})\n\t\t.on('mouseover', circlemouseover)\n\t\t.on('mouseout', circlemouseout)\n\t//.on('click', (event, d) => {\n\t//\tcircleclick(d, mavb, event.clientX, event.clientY)\n\t//})\n\tself.table_rows.sort((a, b) => a[2].value - b[2].value).reverse() // Sorting genes in descending order of fold change\n\t//console.log(\n\t//\t'Percentage of significant genes:',\n\t//\t(num_significant_genes * 100) / (num_significant_genes + num_non_significant_genes)\n\t//)\n\n\tconst logfc0line = mavb.vo_dotarea.append('line').attr('stroke', '#ccc').attr('shape-rendering', 'crispEdges')\n\n\tfunction resize(w, h) {\n\t\twidth = w\n\t\theight = h\n\t\tyaxisw = Math.max(50, width / 8)\n\t\txaxish = Math.max(50, height / 8)\n\n\t\tradius = Math.max(width, height) / 80\n\t\tconst maxradius = radius * 3\n\t\tif (radiusscale) radiusscale.range([radius, maxradius])\n\t\tcircle.each(d => {\n\t\t\td.vo_radius = radiusscale ? radiusscale(Math.abs(d.tvalue)) : radius\n\t\t})\n\n\t\txpad = Math.max(maxradius, width / 50)\n\t\typad = Math.max(maxradius, height / 50)\n\t\tyaxisg.attr('transform', 'translate(' + yaxisw + ',' + toppad + ')')\n\t\txaxisg.attr('transform', 'translate(' + (yaxisw + xpad) + ',' + (toppad + height + ypad) + ')')\n\t\txlab.attr('x', yaxisw + xpad + width / 2).attr('y', toppad + height + ypad + xaxish - 5)\n\t\tylab.attr('transform', 'translate(15,' + (toppad + height / 2) + ') rotate(-90)')\n\t\tmavb.vo_dotarea.attr('transform', 'translate(' + (yaxisw + xpad) + ',' + toppad + ')')\n\t\tbox.attr('width', width).attr('height', height)\n\t\txscale.range([0, width])\n\t\tyscale.range([height, 0])\n\t\tdotg.attr('transform', d => {\n\t\t\treturn 'translate(' + xscale(d.fold_change) + ',' + yscale(d.adjusted_p_value) + ')'\n\t\t})\n\t\tcircle.attr('r', d => {\n\t\t\treturn d.vo_radius\n\t\t})\n\t\tlogfc0line.attr('x1', xscale(0)).attr('x2', xscale(0)).attr('y2', height)\n\n\t\tsvg.attr('width', yaxisw + xpad + width + rightpad).attr('height', toppad + height + ypad + xaxish)\n\t\taxisstyle({\n\t\t\taxis: yaxisg.call(d3axis.axisLeft().scale(yscale)),\n\t\t\tcolor: 'black',\n\t\t\tshowline: true\n\t\t})\n\t\taxisstyle({\n\t\t\taxis: xaxisg.call(d3axis.axisBottom().scale(xscale)),\n\t\t\tcolor: 'black',\n\t\t\tshowline: true\n\t\t})\n\t}\n\tresize(400, 400)\n\n\tif (mavb[0].adjusted_p_value != undefined) {\n\t\t// enable pvalue switching between adjusted and unadjusted\n\t\tconst row = holder.append('div').style('margin', '20px')\n\t\tminlogpv = 0\n\t\tmaxlogpv = 0\n\t\tlet text_string\n\t\tfor (const d of mavb) {\n\t\t\tlet pv\n\t\t\tif (p_value_adjusted_original == 'adjusted') {\n\t\t\t\tpv = d.adjusted_p_value\n\t\t\t} else {\n\t\t\t\tpv = d.original_p_value\n\t\t\t}\n\t\t\tif (pv == 0) continue\n\t\t\tminlogpv = Math.min(minlogpv, pv)\n\t\t\tmaxlogpv = Math.max(maxlogpv, pv)\n\t\t}\n\t\tyscale.domain([minlogpv, maxlogpv])\n\t\taxisstyle({\n\t\t\taxis: yaxisg.call(d3axis.axisLeft().scale(yscale)),\n\t\t\tcolor: 'black',\n\t\t\tshowline: true\n\t\t})\n\t\tdotg.attr('transform', d => {\n\t\t\tlet pv\n\t\t\tif (p_value_adjusted_original == 'adjusted') {\n\t\t\t\tpv = d.adjusted_p_value\n\t\t\t} else {\n\t\t\t\tpv = d.original_p_value\n\t\t\t}\n\t\t\treturn 'translate(' + xscale(d.fold_change) + ',' + yscale(pv) + ')'\n\t\t})\n\t\tif (p_value_adjusted_original == 'adjusted') {\n\t\t\ttext_string = '-log10(adjusted P value)'\n\t\t} else {\n\t\t\ttext_string = '-log10(original P value)'\n\t\t}\n\t\tylab.text(text_string)\n\t\tconst table_stats = table2col({ holder: self.dom.detailsDiv })\n\t\tconst addStats = [\n\t\t\t{\n\t\t\t\tlabel: 'Percentage of significant genes',\n\t\t\t\tvalue: roundValueAuto((num_significant_genes * 100) / (num_significant_genes + num_non_significant_genes))\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Number of significant genes',\n\t\t\t\tvalue: num_significant_genes\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Number of total genes',\n\t\t\t\tvalue: num_significant_genes + num_non_significant_genes\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: self.config.state.groups[0].name + ' sample size (control group)',\n\t\t\t\tvalue: sample_size1\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: self.config.state.groups[1].name + ' sample size (treatment group)',\n\t\t\t\tvalue: sample_size2\n\t\t\t}\n\t\t]\n\n\t\tfor (const dataRow of addStats) {\n\t\t\tconst [td1, td2] = table_stats.addRow()\n\t\t\ttd1.text(dataRow.label)\n\t\t\ttd2.style('text-align', 'end').text(dataRow.value)\n\t\t}\n\n\t\tself.table_cols = [\n\t\t\t{ label: 'Gene Name' },\n\t\t\t{ label: 'Gene Symbol' },\n\t\t\t{ label: 'log2 Fold change' },\n\t\t\t{ label: 'Original p-value (linear scale)' },\n\t\t\t{ label: 'Adjusted p-value (linear scale)' }\n\t\t]\n\t\tif (self.settings.pvaluetable == true) {\n\t\t\tconst d = self.dom.tableDiv.append('div').html(`<br>DE analysis results`)\n\t\t\trenderTable({\n\t\t\t\tcolumns: self.table_cols,\n\t\t\t\trows: self.table_rows,\n\t\t\t\tdiv: d,\n\t\t\t\tshowLines: true,\n\t\t\t\tmaxHeight: '150vh',\n\t\t\t\tresize: true\n\t\t\t})\n\t\t} else {\n\t\t\tself.dom.tableDiv.selectAll('*').remove()\n\t\t}\n\n\t\tif (self.settings.gene_ora && self.app.opts.genome.termdbs) {\n\t\t\t// Currently backend only uses msigdb, but in future may use other databases in genome.termdbs{}. In ui will need to generate a <select> to choose one key of termdbs{}.\n\t\t\t//console.log('Run gene ora:', self.settings.gene_ora)\n\t\t\t//console.log('output.data:', output.data)\n\t\t\tconst sample_genes = []\n\t\t\tconst background_genes = []\n\t\t\t//console.log('self:', self)\n\t\t\t//console.log('fold_change_cutoff:', fold_change_cutoff)\n\n\t\t\t// Need to handle those genes which do not have a name\n\t\t\tif (self.settings.gene_ora == 'upregulated') {\n\t\t\t\tfor (const gene of output.data) {\n\t\t\t\t\tif (gene.gene_symbol.length > 0) {\n\t\t\t\t\t\t// Do not include blank rows\n\t\t\t\t\t\tif (fold_change_cutoff < Math.abs(gene.fold_change) && gene.fold_change > 0) {\n\t\t\t\t\t\t\tsample_genes.push(gene.gene_symbol)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbackground_genes.push(gene.gene_symbol)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (self.settings.gene_ora == 'downregulated') {\n\t\t\t\tfor (const gene of output.data) {\n\t\t\t\t\tif (gene.gene_symbol.length > 0) {\n\t\t\t\t\t\t// Do not include blank rows\n\t\t\t\t\t\tif (fold_change_cutoff < Math.abs(gene.fold_change) && gene.fold_change < 0) {\n\t\t\t\t\t\t\tsample_genes.push(gene.gene_symbol)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbackground_genes.push(gene.gene_symbol)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (self.settings.gene_ora == 'both') {\n\t\t\t\tfor (const gene of output.data) {\n\t\t\t\t\tif (gene.gene_symbol.length > 0) {\n\t\t\t\t\t\t// Do not include blank rows\n\t\t\t\t\t\tif (fold_change_cutoff < Math.abs(gene.fold_change)) {\n\t\t\t\t\t\t\tsample_genes.push(gene.gene_symbol)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbackground_genes.push(gene.gene_symbol)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log('Unrecognized option')\n\t\t\t}\n\n\t\t\tconst geneORAparams = {\n\t\t\t\tsample_genes: sample_genes.toString(),\n\t\t\t\tbackground_genes: background_genes.toString(),\n\t\t\t\tgenome: self.app.vocabApi.opts.state.vocab.genome,\n\t\t\t\tora_request_type: self.settings.gene_ora,\n\t\t\t\tnum_samples_genes: sample_genes.length,\n\t\t\t\tnum_background_genes: background_genes.length\n\t\t\t}\n\n\t\t\t// Check if a previous requests has already been made with the same parameters\n\t\t\tconst previous_geneORA = self.app.getState().plots.find(x => x.chartType == 'geneORA')\n\n\t\t\tif (previous_geneORA) {\n\t\t\t\tif (\n\t\t\t\t\tprevious_geneORA.geneORAparams.ora_request_type == self.settings.gene_ora &&\n\t\t\t\t\tprevious_geneORA.geneORAparams.num_samples_genes == sample_genes.length &&\n\t\t\t\t\tprevious_geneORA.geneORAparams.num_background_genes == background_genes.length\n\t\t\t\t) {\n\t\t\t\t\t// The check for number of background genes and sample genes have been added so that the same gene ORA request type (upregulated/downregulated/both) is not triggerred, but if any other DE parameter is changed (min_count etc.) then a new gene ORA request of the same type can be made.\n\t\t\t\t\t//alert(self.settings.gene_ora + \"geneORA already open\")\n\t\t\t\t} else {\n\t\t\t\t\tconst config = {\n\t\t\t\t\t\tchartType: 'geneORA',\n\t\t\t\t\t\tgeneORAparams: geneORAparams\n\t\t\t\t\t}\n\t\t\t\t\tself.app.dispatch({\n\t\t\t\t\t\ttype: 'plot_create',\n\t\t\t\t\t\tconfig\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst config = {\n\t\t\t\t\tchartType: 'geneORA',\n\t\t\t\t\tgeneORAparams: geneORAparams\n\t\t\t\t}\n\t\t\t\tself.app.dispatch({\n\t\t\t\t\ttype: 'plot_create',\n\t\t\t\t\tconfig\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tif (self.settings.gsea && self.app.opts.genome.termdbs) {\n\t\t\t// Currently backend only uses msigdb, but in future may use other databases in genome.termdbs{}. In ui will need to generate a <select> to choose one key of termdbs{}.\n\t\t\t//self.settings.gsea = false\n\t\t\tconst input_genes = output.data.map(i => i.gene_symbol)\n\t\t\tconst gsea_params = {\n\t\t\t\tgenes: input_genes,\n\t\t\t\tfold_change: output.data.map(i => i.fold_change),\n\t\t\t\tgenome: self.app.vocabApi.opts.state.vocab.genome,\n\t\t\t\tgenes_length: input_genes.length\n\t\t\t}\n\t\t\t//console.log(\"gsea_params:\",gsea_params)\n\t\t\t// Check if a previous requests has already been made with the same parameters\n\t\t\tconst previous_gsea = self.app.getState().plots.find(x => x.chartType == 'gsea')\n\t\t\tif (previous_gsea) {\n\t\t\t\tif (previous_gsea.gsea_params.genes_length == input_genes.length) {\n\t\t\t\t\t// GSEA window already open for these parameters\n\t\t\t\t} else {\n\t\t\t\t\tconst config = {\n\t\t\t\t\t\tchartType: 'gsea',\n\t\t\t\t\t\tgsea_params: gsea_params\n\t\t\t\t\t}\n\t\t\t\t\tself.app.dispatch({\n\t\t\t\t\t\ttype: 'plot_create',\n\t\t\t\t\t\tconfig\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst config = {\n\t\t\t\t\tchartType: 'gsea',\n\t\t\t\t\tgsea_params: gsea_params\n\t\t\t\t}\n\t\t\t\tself.app.dispatch({\n\t\t\t\t\ttype: 'plot_create',\n\t\t\t\t\tconfig\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\t//console.log('this.app.getState:', self.app.getState())\n\t}\n\treturn svg\n}\n\nexport async function getPlotConfig(opts, app) {\n\ttry {\n\t\tif (opts.samplelst.groups.length != 2) throw 'opts.samplelst.groups[].length!=2'\n\t\tif (opts.samplelst.groups[0].values?.length < 1) throw 'group 1 not having >1 samples'\n\t\tif (opts.samplelst.groups[1].values?.length < 1) throw 'group 2 not having >1 samples'\n\t\tconst config = {\n\t\t\t//idea for fixing nav button\n\t\t\t//samplelst: { groups: app.opts.state.groups}\n\t\t\tsettings: {\n\t\t\t\tDEanalysis: {\n\t\t\t\t\tpvalue: 0.05,\n\t\t\t\t\tfoldchange: 0,\n\t\t\t\t\tmin_count: 10,\n\t\t\t\t\tmin_total_count: 15,\n\t\t\t\t\tpvaluetable: false,\n\t\t\t\t\tadjusted_original_pvalue: 'adjusted',\n\t\t\t\t\tmethod: 'wilcoxon',\n\t\t\t\t\tgene_ora: undefined,\n\t\t\t\t\tgsea: undefined\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn copyMerge(config, opts)\n\t} catch (e) {\n\t\tthrow `${e} [DEanalysis getPlotConfig()]`\n\t}\n}\n\nexport const DEanalysisInit = getCompInit(DEanalysis)\n// this alias will allow abstracted dynamic imports\nexport const componentInit = DEanalysisInit\n\nexport function makeChartBtnMenu(holder, chartsInstance) {\n\t/*\n\tholder: the holder in the tooltip\n\tchartsInstance: MassCharts instance\n termdbConfig is accessible at chartsInstance.state.termdbConfig{}\n mass option is accessible at chartsInstance.app.opts{}\n\t*/\n\t// to fill in menu, create options in \"holder\"\n\t// to hide menu, call chartsInstance.dom.tip.hide()\n\t// upon clicking an option, generate plot:\n\tchartsInstance.prepPlot({\n\t\tconfig: {\n\t\t\tchartType: 'DEanalysis'\n\t\t}\n\t})\n}\n\nfunction circlemouseover(event, d) {\n\ttip.clear().show(event.clientX, event.clientY)\n\tconst lst = [\n\t\t{ k: 'gene_name', v: d.gene_name },\n\t\t{ k: 'gene_symbol', v: d.gene_symbol },\n\t\t{ k: 'log fold change', v: roundValueAuto(d.fold_change) },\n\t\t{ k: 'log original p-value', v: roundValueAuto(d.original_p_value) },\n\t\t{ k: 'log adjusted p-value', v: roundValueAuto(d.adjusted_p_value) }\n\t]\n\tconst table = table2col({ holder: tip.d })\n\tfor (const item of lst) {\n\t\tconst [td1, td2] = table.addRow()\n\t\ttd1.text(item.k)\n\t\ttd2.text(item.v)\n\t}\n\n\tif (!d.ma_label) {\n\t\td3select(d.ma_circle).attr('fill-opacity', 0.9)\n\t\td3select(d.vo_circle).attr('fill-opacity', 0.9)\n\t}\n}\n\nfunction circlemouseout(event, d) {\n\ttip.hide()\n\tif (!d.ma_label) {\n\t\td3select(d.ma_circle).attr('fill-opacity', 0)\n\t\td3select(d.vo_circle).attr('fill-opacity', 0)\n\t}\n}\n\nexport async function openHiercluster(term, samplelstTW, app, id, newId) {\n\t// barchart config.term{} name is confusing, as it is actually a termsetting object, not t erm\n\t// thus convert the given term into a termwrapper\n\t// tw.q can be missing and will be filled in with default setting\n\tconst tw = term.term ? term : { term }\n\n\tlet config = {\n\t\tchartType: 'hierCluster',\n\t\tgenes: ['barchart', xxx]\n\t}\n\tif (id) config.insertBefore = id\n\tif (newId) config.id = newId()\n\tawait app.dispatch({\n\t\ttype: 'plot_create',\n\t\tconfig\n\t})\n}\n\nasync function runDEanalysis(self) {\n\tconst output = await dofetch3('DEanalysis', {\n\t\tbody: {\n\t\t\tgenome: self.app.vocabApi.vocab.genome,\n\t\t\tdslabel: self.app.vocabApi.vocab.dslabel,\n\t\t\tsamplelst: self.config.samplelst,\n\t\t\tmin_count: self.settings.min_count,\n\t\t\tmin_total_count: self.settings.min_total_count,\n\t\t\tmethod: self.settings.method\n\t\t}\n\t})\n\tif (output.error) console.log('server side error:', output.error)\n\treturn output\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,IAAM,UAAU;AAChB,IAAM,MAAM,IAAI,KAAK;AACrB,IAAM,aAAN,MAAiB;AAAA,EAChB,cAAc;AACb,SAAK,OAAO;AAAA,EACb;AAAA,EACA,MAAM,KAAK,MAAM;AAChB,UAAM,SAAS,KAAK,MAAM,KAAK,OAAK,EAAE,OAAO,KAAK,EAAE;AACpD,UAAM,cAAc,KAAK,KAAK,OAAO,OAAO,KAAK,EAAE,MAAM,WAAW,cAAc;AAClF,UAAM,UAAU,KAAK,KAAK,OAAO,OAAO,KAAK,EAAE,MAAM,WAAW,cAAc,EAAE,MAAM,eAAe,MAAM;AAC3G,UAAM,SAAS,QAAQ,OAAO,KAAK,EAAE,MAAM,WAAW,cAAc;AACpE,UAAM,aAAa,QACjB,OAAO,KAAK,EACZ,MAAM,WAAW,cAAc,EAC/B,MAAM,kBAAkB,KAAK,EAC7B,MAAM,cAAc,MAAM;AAE5B,UAAM,WAAW,KAAK,KAAK,OAAO,OAAO,KAAK,EAAE,MAAM,eAAe,MAAM;AAE3E,SAAK,MAAM;AAAA,MACV;AAAA,MACA,QAAQ,KAAK,KAAK;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MAAM,YAAY,QAAQ;AACzB,SAAK,IAAI,YAAY,UAAU,GAAG,EAAE,OAAO;AAC3C,UAAM,SAAS;AAAA,MACd;AAAA,QACC,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,KAAK;AAAA,QACL,KAAK;AAAA,MACN;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,KAAK;AAAA,QACL,KAAK;AAAA,MACN;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,KAAK;AAAA,QACL,KAAK;AAAA,MACN;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,KAAK;AAAA,QACL,KAAK;AAAA,MACN;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,UAAU;AAAA,MACX;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,SAAS;AAAA,UACR,EAAE,OAAO,YAAY,OAAO,WAAW;AAAA,UACvC,EAAE,OAAO,YAAY,OAAO,WAAW;AAAA,QACxC;AAAA,MACD;AAAA,IACD;AAEA,QACC,KAAK,MAAM,eAAe,QAAQ,kBAAkB,CAAC,EAAE,oBAAoB;AAAA,IAC1E,OAAO,0BAA0B,OAAO;AAAA,IACxC,OAAO,yBAAyB,OAAO,gBACvC,OAAO,eAAe,OAAO,2BAC7B,OAAO,0BAA0B,OAAO,gBACxC,OAAO,yBAAyB,OAAO,gBACvC,OAAO,eAAe,OAAO,yBAC7B;AACD,aAAO,KAAK;AAAA,QACX,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,SAAS;AAAA,UACR,EAAE,OAAO,SAAS,OAAO,QAAQ;AAAA,UACjC,EAAE,OAAO,YAAY,OAAO,WAAW;AAAA,QACxC;AAAA,MACD,CAAC;AAAA,IACF;AA0BA,QAAI,KAAK,IAAI,KAAK,OAAO,SAAS;AAEjC,aAAO,KAAK;AAAA,QACX,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,SAAS;AAAA,UACR,EAAE,OAAO,eAAe,OAAO,cAAc;AAAA,UAC7C,EAAE,OAAO,iBAAiB,OAAO,gBAAgB;AAAA,UACjD,EAAE,OAAO,QAAQ,OAAO,OAAO;AAAA,QAChC;AAAA,MACD,CAAC;AAAA,IACF;AAEA,QAAI,KAAK,IAAI,KAAK,OAAO,WAAW,CAAC,KAAK,SAAS,MAAM;AAExD,aAAO,KAAK;AAAA,QACX,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,SAAS,CAAC,EAAE,OAAO,UAAU,OAAO,SAAS,CAAC;AAAA,MAC/C,CAAC;AAAA,IACF;AAEA,QAAI,KAAK,SAAS,eAAe,MAAM;AAEtC,aAAO,KAAK;AAAA,QACX,OAAO;AAAA,QACP,MAAM;AAAA,QACN,WAAW;AAAA,QACX,aAAa;AAAA,QACb,OAAO;AAAA,QACP,SAAS;AAAA,UACR,EAAE,OAAO,iBAAiB,OAAO,SAAS;AAAA,UAC1C,EAAE,OAAO,uBAAuB,OAAO,WAAW;AAAA,UAClD,EAAE,OAAO,yBAAyB,OAAO,aAAa;AAAA,QACvD;AAAA,MACD,CAAC;AACD,WAAK,SAAS,cAAc;AAAA,IAC7B;AAEA,SAAK,aAAa;AAAA,MACjB,UAAU,MAAM,aAAa;AAAA,QAC5B,KAAK,KAAK;AAAA,QACV,IAAI,KAAK;AAAA,QACT,QAAQ,KAAK,IAAI;AAAA,QACjB;AAAA,MACD,CAAC;AAAA,IACF;AACA,SAAK,WAAW,SAAS,GAAG,4BAA4B,MAAM;AAC7D,oBAAc,KAAK,YAAY,KAAK,UAAU;AAAA,IAC/C,CAAC;AAAA,EACF;AAAA,EACA,SAAS,UAAU;AAClB,UAAM,SAAS,SAAS,MAAM,KAAK,OAAK,EAAE,OAAO,KAAK,EAAE;AACxD,QAAI,CAAC;AAAQ,YAAM,oBAAoB,KAAK,EAAE;AAC9C,WAAO;AAAA,MACN;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MAAM,OAAO;AACZ,SAAK,SAAS,KAAK,MAAM,KAAK,UAAU,KAAK,MAAM,MAAM,CAAC;AAC1D,SAAK,WAAW,KAAK,OAAO,SAAS;AACrC,QAAI,KAAK,IAAI,YAAY;AACxB,WAAK,IAAI,WAAW,UAAU,GAAG,EAAE,OAAO;AAAA,IAC3C;AACA,QAAI,KAAK,IAAI,QAAQ;AACpB,WAAK,IAAI,OAAO,UAAU,GAAG,EAAE,OAAO;AAAA,IACvC;AACA,UAAM,OAAO,KAAK,IAAI,WAAW,OAAO,KAAK,EAAE,KAAK,YAAY;AAChE,UAAM,SAAS,MAAM,cAAc,IAAI;AACvC,SAAK,OAAO;AACZ,WAAO,yBAAyB;AAChC,WAAO,0BAA0B;AACjC,UAAM,KAAK,YAAY,MAAM;AAC7B,SAAK,IAAI,OAAO;AAAA,MACf,KAAK,OAAO,MAAM,OAAO,CAAC,EAAE,OAC3B,SACA,KAAK,OAAO,MAAM,OAAO,CAAC,EAAE,OAC5B;AAAA,IACF;AACA,mBAAe,MAAM,MAAM;AAAA,EAC5B;AACD;AAEA,eAAe,eAAe,MAAM,QAAQ;AAa3C,QAAM,eAAe,OAAO;AAC5B,QAAM,eAAe,OAAO;AAC5B,QAAM,OAAO,OAAO;AACpB,QAAM,SAAS,KAAK,IAAI;AACxB,SAAO,UAAU,GAAG,EAAE,OAAO;AAC7B,OAAK,IAAI,WAAW,UAAU,GAAG,EAAE,OAAO;AAC1C,OAAK,IAAI,SAAS,UAAU,GAAG,EAAE,OAAO;AACxC,MAAI,WAAW,GACd,WAAW,GACX,WAAW,GACX,WAAW;AACZ,aAAW,KAAK,MAAM;AACrB,eAAW,KAAK,IAAI,UAAU,EAAE,WAAW;AAC3C,eAAW,KAAK,IAAI,UAAU,EAAE,WAAW;AAC3C,QAAI,EAAE,oBAAoB,GAAG;AAC5B;AAAA,IACD,OAAO;AACN,iBAAW,KAAK,IAAI,UAAU,EAAE,gBAAgB;AAChD,iBAAW,KAAK,IAAI,UAAU,EAAE,gBAAgB;AAAA,IACjD;AAAA,EACD;AAEA,MAAI,QACH,QACA,OACA,QACA,MACA,MACA,SAAS,IACT,WAAW,IACX;AAED,QAAM,MAAM,OAAO,OAAO,KAAK;AAC/B,QAAM,SAAS,IAAI,OAAO,GAAG;AAC7B,QAAM,SAAS,IAAI,OAAO,GAAG;AAC7B,QAAM,OAAO,IAAI,OAAO,MAAM,EAAE,KAAK,mBAAmB,EAAE,KAAK,QAAQ,OAAO,EAAE,KAAK,eAAe,QAAQ;AAC5G,QAAM,OAAO,IAAI,OAAO,MAAM,EAAE,KAAK,0BAA0B,EAAE,KAAK,QAAQ,OAAO,EAAE,KAAK,eAAe,QAAQ;AAEnH,OAAK,aAAa,IAAI,OAAO,GAAG;AAEhC,QAAM,MAAM,KAAK,WACf,OAAO,MAAM,EACb,KAAK,UAAU,SAAS,EACxB,KAAK,QAAQ,MAAM,EACnB,KAAK,mBAAmB,YAAY;AACtC,QAAM,SAAS,OAAY,EAAE,OAAO,CAAC,UAAU,QAAQ,CAAC;AACxD,QAAM,SAAS,OAAY,EAAE,OAAO,CAAC,UAAU,QAAQ,CAAC;AACxD,MAAI;AACJ,QAAM,OAAO,KAAK,WAChB,UAAU,EACV,KAAK,IAAI,EACT,MAAM,EACN,OAAO,GAAG,EACV,KAAK,SAAU,GAAG;AAClB,MAAE,OAAO;AAAA,EACV,CAAC;AACF,QAAM,qBAAqB,KAAK,SAAS;AAIzC,MAAI,KAAK,SAAS,UAAU;AAAG,UAAM;AACrC,QAAM,iBAAiB,CAAC,KAAK,MAAM,KAAK,SAAS,MAAM;AACvD,QAAM,4BAA4B,KAAK,SAAS;AAChD,MAAI,wBAAwB;AAC5B,MAAI,4BAA4B;AAChC,OAAK,aAAa,CAAC;AACnB,QAAM,SAAS,KACb,OAAO,QAAQ,EACf,KAAK,UAAU,OAAK;AACpB,QAAI;AACJ,UAAM,SAAS,eAAe,EAAE,WAAW;AAC3C,UAAM,SAAS,eAAe,KAAK,IAAI,IAAI,CAAC,EAAE,gBAAgB,CAAC;AAC/D,UAAM,SAAS,eAAe,KAAK,IAAI,IAAI,CAAC,EAAE,gBAAgB,CAAC;AAC/D,QACC,6BAA6B,cAC7B,EAAE,mBAAmB,kBACrB,KAAK,IAAI,EAAE,WAAW,IAAI,oBACzB;AACD,cAAQ;AACR,+BAAyB;AAEzB,WAAK,WAAW,KAAK;AAAA,QACpB,EAAE,OAAO,EAAE,UAAU;AAAA,QACrB,EAAE,OAAO,EAAE,YAAY;AAAA,QACvB,EAAE,OAAO,OAAO;AAAA,QAChB,EAAE,OAAO,OAAO;AAAA,QAChB,EAAE,OAAO,OAAO;AAAA,MACjB,CAAC;AAAA,IACF,WACC,6BAA6B,cAC7B,EAAE,mBAAmB,kBACrB,KAAK,IAAI,EAAE,WAAW,IAAI,oBACzB;AACD,cAAQ;AACR,+BAAyB;AACzB,WAAK,WAAW,KAAK;AAAA,QACpB,EAAE,OAAO,EAAE,UAAU;AAAA,QACrB,EAAE,OAAO,EAAE,YAAY;AAAA,QACvB,EAAE,OAAO,OAAO;AAAA,QAChB,EAAE,OAAO,OAAO;AAAA,QAChB,EAAE,OAAO,OAAO;AAAA,MACjB,CAAC;AAAA,IACF,OAAO;AACN,cAAQ;AACR,mCAA6B;AAAA,IAC9B;AACA,WAAO;AAAA,EACR,CAAC,EACA,KAAK,kBAAkB,GAAG,EAC1B,KAAK,gBAAgB,CAAC,EACtB,KAAK,QAAQ,OAAO,EACpB,KAAK,gBAAgB,CAAC,EACtB,KAAK,SAAU,GAAG;AAClB,MAAE,YAAY;AAAA,EACf,CAAC,EACA,GAAG,aAAa,eAAe,EAC/B,GAAG,YAAY,cAAc;AAI/B,OAAK,WAAW,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ;AAMhE,QAAM,aAAa,KAAK,WAAW,OAAO,MAAM,EAAE,KAAK,UAAU,MAAM,EAAE,KAAK,mBAAmB,YAAY;AAE7G,WAAS,OAAO,GAAG,GAAG;AACrB,YAAQ;AACR,aAAS;AACT,aAAS,KAAK,IAAI,IAAI,QAAQ,CAAC;AAC/B,aAAS,KAAK,IAAI,IAAI,SAAS,CAAC;AAEhC,aAAS,KAAK,IAAI,OAAO,MAAM,IAAI;AACnC,UAAM,YAAY,SAAS;AAC3B,QAAI;AAAa,kBAAY,MAAM,CAAC,QAAQ,SAAS,CAAC;AACtD,WAAO,KAAK,OAAK;AAChB,QAAE,YAAY,cAAc,YAAY,KAAK,IAAI,EAAE,MAAM,CAAC,IAAI;AAAA,IAC/D,CAAC;AAED,WAAO,KAAK,IAAI,WAAW,QAAQ,EAAE;AACrC,WAAO,KAAK,IAAI,WAAW,SAAS,EAAE;AACtC,WAAO,KAAK,aAAa,eAAe,SAAS,MAAM,SAAS,GAAG;AACnE,WAAO,KAAK,aAAa,gBAAgB,SAAS,QAAQ,OAAO,SAAS,SAAS,QAAQ,GAAG;AAC9F,SAAK,KAAK,KAAK,SAAS,OAAO,QAAQ,CAAC,EAAE,KAAK,KAAK,SAAS,SAAS,OAAO,SAAS,CAAC;AACvF,SAAK,KAAK,aAAa,mBAAmB,SAAS,SAAS,KAAK,eAAe;AAChF,SAAK,WAAW,KAAK,aAAa,gBAAgB,SAAS,QAAQ,MAAM,SAAS,GAAG;AACrF,QAAI,KAAK,SAAS,KAAK,EAAE,KAAK,UAAU,MAAM;AAC9C,WAAO,MAAM,CAAC,GAAG,KAAK,CAAC;AACvB,WAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;AACxB,SAAK,KAAK,aAAa,OAAK;AAC3B,aAAO,eAAe,OAAO,EAAE,WAAW,IAAI,MAAM,OAAO,EAAE,gBAAgB,IAAI;AAAA,IAClF,CAAC;AACD,WAAO,KAAK,KAAK,OAAK;AACrB,aAAO,EAAE;AAAA,IACV,CAAC;AACD,eAAW,KAAK,MAAM,OAAO,CAAC,CAAC,EAAE,KAAK,MAAM,OAAO,CAAC,CAAC,EAAE,KAAK,MAAM,MAAM;AAExE,QAAI,KAAK,SAAS,SAAS,OAAO,QAAQ,QAAQ,EAAE,KAAK,UAAU,SAAS,SAAS,OAAO,MAAM;AAClG,cAAU;AAAA,MACT,MAAM,OAAO,KAAY,SAAS,EAAE,MAAM,MAAM,CAAC;AAAA,MACjD,OAAO;AAAA,MACP,UAAU;AAAA,IACX,CAAC;AACD,cAAU;AAAA,MACT,MAAM,OAAO,KAAY,WAAW,EAAE,MAAM,MAAM,CAAC;AAAA,MACnD,OAAO;AAAA,MACP,UAAU;AAAA,IACX,CAAC;AAAA,EACF;AACA,SAAO,KAAK,GAAG;AAEf,MAAI,KAAK,CAAC,EAAE,oBAAoB,QAAW;AAE1C,UAAM,MAAM,OAAO,OAAO,KAAK,EAAE,MAAM,UAAU,MAAM;AACvD,eAAW;AACX,eAAW;AACX,QAAI;AACJ,eAAW,KAAK,MAAM;AACrB,UAAI;AACJ,UAAI,6BAA6B,YAAY;AAC5C,aAAK,EAAE;AAAA,MACR,OAAO;AACN,aAAK,EAAE;AAAA,MACR;AACA,UAAI,MAAM;AAAG;AACb,iBAAW,KAAK,IAAI,UAAU,EAAE;AAChC,iBAAW,KAAK,IAAI,UAAU,EAAE;AAAA,IACjC;AACA,WAAO,OAAO,CAAC,UAAU,QAAQ,CAAC;AAClC,cAAU;AAAA,MACT,MAAM,OAAO,KAAY,SAAS,EAAE,MAAM,MAAM,CAAC;AAAA,MACjD,OAAO;AAAA,MACP,UAAU;AAAA,IACX,CAAC;AACD,SAAK,KAAK,aAAa,OAAK;AAC3B,UAAI;AACJ,UAAI,6BAA6B,YAAY;AAC5C,aAAK,EAAE;AAAA,MACR,OAAO;AACN,aAAK,EAAE;AAAA,MACR;AACA,aAAO,eAAe,OAAO,EAAE,WAAW,IAAI,MAAM,OAAO,EAAE,IAAI;AAAA,IAClE,CAAC;AACD,QAAI,6BAA6B,YAAY;AAC5C,oBAAc;AAAA,IACf,OAAO;AACN,oBAAc;AAAA,IACf;AACA,SAAK,KAAK,WAAW;AACrB,UAAM,cAAc,UAAU,EAAE,QAAQ,KAAK,IAAI,WAAW,CAAC;AAC7D,UAAM,WAAW;AAAA,MAChB;AAAA,QACC,OAAO;AAAA,QACP,OAAO,eAAgB,wBAAwB,OAAQ,wBAAwB,0BAA0B;AAAA,MAC1G;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,OAAO;AAAA,MACR;AAAA,MACA;AAAA,QACC,OAAO;AAAA,QACP,OAAO,wBAAwB;AAAA,MAChC;AAAA,MACA;AAAA,QACC,OAAO,KAAK,OAAO,MAAM,OAAO,CAAC,EAAE,OAAO;AAAA,QAC1C,OAAO;AAAA,MACR;AAAA,MACA;AAAA,QACC,OAAO,KAAK,OAAO,MAAM,OAAO,CAAC,EAAE,OAAO;AAAA,QAC1C,OAAO;AAAA,MACR;AAAA,IACD;AAEA,eAAW,WAAW,UAAU;AAC/B,YAAM,CAAC,KAAK,GAAG,IAAI,YAAY,OAAO;AACtC,UAAI,KAAK,QAAQ,KAAK;AACtB,UAAI,MAAM,cAAc,KAAK,EAAE,KAAK,QAAQ,KAAK;AAAA,IAClD;AAEA,SAAK,aAAa;AAAA,MACjB,EAAE,OAAO,YAAY;AAAA,MACrB,EAAE,OAAO,cAAc;AAAA,MACvB,EAAE,OAAO,mBAAmB;AAAA,MAC5B,EAAE,OAAO,kCAAkC;AAAA,MAC3C,EAAE,OAAO,kCAAkC;AAAA,IAC5C;AACA,QAAI,KAAK,SAAS,eAAe,MAAM;AACtC,YAAM,IAAI,KAAK,IAAI,SAAS,OAAO,KAAK,EAAE,KAAK,yBAAyB;AACxE,kBAAY;AAAA,QACX,SAAS,KAAK;AAAA,QACd,MAAM,KAAK;AAAA,QACX,KAAK;AAAA,QACL,WAAW;AAAA,QACX,WAAW;AAAA,QACX,QAAQ;AAAA,MACT,CAAC;AAAA,IACF,OAAO;AACN,WAAK,IAAI,SAAS,UAAU,GAAG,EAAE,OAAO;AAAA,IACzC;AAEA,QAAI,KAAK,SAAS,YAAY,KAAK,IAAI,KAAK,OAAO,SAAS;AAI3D,YAAM,eAAe,CAAC;AACtB,YAAM,mBAAmB,CAAC;AAK1B,UAAI,KAAK,SAAS,YAAY,eAAe;AAC5C,mBAAW,QAAQ,OAAO,MAAM;AAC/B,cAAI,KAAK,YAAY,SAAS,GAAG;AAEhC,gBAAI,qBAAqB,KAAK,IAAI,KAAK,WAAW,KAAK,KAAK,cAAc,GAAG;AAC5E,2BAAa,KAAK,KAAK,WAAW;AAAA,YACnC;AACA,6BAAiB,KAAK,KAAK,WAAW;AAAA,UACvC;AAAA,QACD;AAAA,MACD,WAAW,KAAK,SAAS,YAAY,iBAAiB;AACrD,mBAAW,QAAQ,OAAO,MAAM;AAC/B,cAAI,KAAK,YAAY,SAAS,GAAG;AAEhC,gBAAI,qBAAqB,KAAK,IAAI,KAAK,WAAW,KAAK,KAAK,cAAc,GAAG;AAC5E,2BAAa,KAAK,KAAK,WAAW;AAAA,YACnC;AACA,6BAAiB,KAAK,KAAK,WAAW;AAAA,UACvC;AAAA,QACD;AAAA,MACD,WAAW,KAAK,SAAS,YAAY,QAAQ;AAC5C,mBAAW,QAAQ,OAAO,MAAM;AAC/B,cAAI,KAAK,YAAY,SAAS,GAAG;AAEhC,gBAAI,qBAAqB,KAAK,IAAI,KAAK,WAAW,GAAG;AACpD,2BAAa,KAAK,KAAK,WAAW;AAAA,YACnC;AACA,6BAAiB,KAAK,KAAK,WAAW;AAAA,UACvC;AAAA,QACD;AAAA,MACD,OAAO;AACN,gBAAQ,IAAI,qBAAqB;AAAA,MAClC;AAEA,YAAM,gBAAgB;AAAA,QACrB,cAAc,aAAa,SAAS;AAAA,QACpC,kBAAkB,iBAAiB,SAAS;AAAA,QAC5C,QAAQ,KAAK,IAAI,SAAS,KAAK,MAAM,MAAM;AAAA,QAC3C,kBAAkB,KAAK,SAAS;AAAA,QAChC,mBAAmB,aAAa;AAAA,QAChC,sBAAsB,iBAAiB;AAAA,MACxC;AAGA,YAAM,mBAAmB,KAAK,IAAI,SAAS,EAAE,MAAM,KAAK,OAAK,EAAE,aAAa,SAAS;AAErF,UAAI,kBAAkB;AACrB,YACC,iBAAiB,cAAc,oBAAoB,KAAK,SAAS,YACjE,iBAAiB,cAAc,qBAAqB,aAAa,UACjE,iBAAiB,cAAc,wBAAwB,iBAAiB,QACvE;AAAA,QAGF,OAAO;AACN,gBAAM,SAAS;AAAA,YACd,WAAW;AAAA,YACX;AAAA,UACD;AACA,eAAK,IAAI,SAAS;AAAA,YACjB,MAAM;AAAA,YACN;AAAA,UACD,CAAC;AAAA,QACF;AAAA,MACD,OAAO;AACN,cAAM,SAAS;AAAA,UACd,WAAW;AAAA,UACX;AAAA,QACD;AACA,aAAK,IAAI,SAAS;AAAA,UACjB,MAAM;AAAA,UACN;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAEA,QAAI,KAAK,SAAS,QAAQ,KAAK,IAAI,KAAK,OAAO,SAAS;AAGvD,YAAM,cAAc,OAAO,KAAK,IAAI,OAAK,EAAE,WAAW;AACtD,YAAM,cAAc;AAAA,QACnB,OAAO;AAAA,QACP,aAAa,OAAO,KAAK,IAAI,OAAK,EAAE,WAAW;AAAA,QAC/C,QAAQ,KAAK,IAAI,SAAS,KAAK,MAAM,MAAM;AAAA,QAC3C,cAAc,YAAY;AAAA,MAC3B;AAGA,YAAM,gBAAgB,KAAK,IAAI,SAAS,EAAE,MAAM,KAAK,OAAK,EAAE,aAAa,MAAM;AAC/E,UAAI,eAAe;AAClB,YAAI,cAAc,YAAY,gBAAgB,YAAY,QAAQ;AAAA,QAElE,OAAO;AACN,gBAAM,SAAS;AAAA,YACd,WAAW;AAAA,YACX;AAAA,UACD;AACA,eAAK,IAAI,SAAS;AAAA,YACjB,MAAM;AAAA,YACN;AAAA,UACD,CAAC;AAAA,QACF;AAAA,MACD,OAAO;AACN,cAAM,SAAS;AAAA,UACd,WAAW;AAAA,UACX;AAAA,QACD;AACA,aAAK,IAAI,SAAS;AAAA,UACjB,MAAM;AAAA,UACN;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EAED;AACA,SAAO;AACR;AAEA,eAAsB,cAAc,MAAM,KAAK;AAC9C,MAAI;AACH,QAAI,KAAK,UAAU,OAAO,UAAU;AAAG,YAAM;AAC7C,QAAI,KAAK,UAAU,OAAO,CAAC,EAAE,QAAQ,SAAS;AAAG,YAAM;AACvD,QAAI,KAAK,UAAU,OAAO,CAAC,EAAE,QAAQ,SAAS;AAAG,YAAM;AACvD,UAAM,SAAS;AAAA;AAAA;AAAA,MAGd,UAAU;AAAA,QACT,YAAY;AAAA,UACX,QAAQ;AAAA,UACR,YAAY;AAAA,UACZ,WAAW;AAAA,UACX,iBAAiB;AAAA,UACjB,aAAa;AAAA,UACb,0BAA0B;AAAA,UAC1B,QAAQ;AAAA,UACR,UAAU;AAAA,UACV,MAAM;AAAA,QACP;AAAA,MACD;AAAA,IACD;AACA,WAAO,UAAU,QAAQ,IAAI;AAAA,EAC9B,SAAS,GAAG;AACX,UAAM,GAAG,CAAC;AAAA,EACX;AACD;AAEO,IAAM,iBAAiB,YAAY,UAAU;AAE7C,IAAM,gBAAgB;AAEtB,SAAS,iBAAiB,QAAQ,gBAAgB;AAUxD,iBAAe,SAAS;AAAA,IACvB,QAAQ;AAAA,MACP,WAAW;AAAA,IACZ;AAAA,EACD,CAAC;AACF;AAEA,SAAS,gBAAgB,OAAO,GAAG;AAClC,MAAI,MAAM,EAAE,KAAK,MAAM,SAAS,MAAM,OAAO;AAC7C,QAAM,MAAM;AAAA,IACX,EAAE,GAAG,aAAa,GAAG,EAAE,UAAU;AAAA,IACjC,EAAE,GAAG,eAAe,GAAG,EAAE,YAAY;AAAA,IACrC,EAAE,GAAG,mBAAmB,GAAG,eAAe,EAAE,WAAW,EAAE;AAAA,IACzD,EAAE,GAAG,wBAAwB,GAAG,eAAe,EAAE,gBAAgB,EAAE;AAAA,IACnE,EAAE,GAAG,wBAAwB,GAAG,eAAe,EAAE,gBAAgB,EAAE;AAAA,EACpE;AACA,QAAM,QAAQ,UAAU,EAAE,QAAQ,IAAI,EAAE,CAAC;AACzC,aAAW,QAAQ,KAAK;AACvB,UAAM,CAAC,KAAK,GAAG,IAAI,MAAM,OAAO;AAChC,QAAI,KAAK,KAAK,CAAC;AACf,QAAI,KAAK,KAAK,CAAC;AAAA,EAChB;AAEA,MAAI,CAAC,EAAE,UAAU;AAChB,mBAAS,EAAE,SAAS,EAAE,KAAK,gBAAgB,GAAG;AAC9C,mBAAS,EAAE,SAAS,EAAE,KAAK,gBAAgB,GAAG;AAAA,EAC/C;AACD;AAEA,SAAS,eAAe,OAAO,GAAG;AACjC,MAAI,KAAK;AACT,MAAI,CAAC,EAAE,UAAU;AAChB,mBAAS,EAAE,SAAS,EAAE,KAAK,gBAAgB,CAAC;AAC5C,mBAAS,EAAE,SAAS,EAAE,KAAK,gBAAgB,CAAC;AAAA,EAC7C;AACD;AAEA,eAAsB,gBAAgB,MAAM,aAAa,KAAK,IAAI,OAAO;AAIxE,QAAM,KAAK,KAAK,OAAO,OAAO,EAAE,KAAK;AAErC,MAAI,SAAS;AAAA,IACZ,WAAW;AAAA,IACX,OAAO,CAAC,YAAY,GAAG;AAAA,EACxB;AACA,MAAI;AAAI,WAAO,eAAe;AAC9B,MAAI;AAAO,WAAO,KAAK,MAAM;AAC7B,QAAM,IAAI,SAAS;AAAA,IAClB,MAAM;AAAA,IACN;AAAA,EACD,CAAC;AACF;AAEA,eAAe,cAAc,MAAM;AAClC,QAAM,SAAS,MAAM,SAAS,cAAc;AAAA,IAC3C,MAAM;AAAA,MACL,QAAQ,KAAK,IAAI,SAAS,MAAM;AAAA,MAChC,SAAS,KAAK,IAAI,SAAS,MAAM;AAAA,MACjC,WAAW,KAAK,OAAO;AAAA,MACvB,WAAW,KAAK,SAAS;AAAA,MACzB,iBAAiB,KAAK,SAAS;AAAA,MAC/B,QAAQ,KAAK,SAAS;AAAA,IACvB;AAAA,EACD,CAAC;AACD,MAAI,OAAO;AAAO,YAAQ,IAAI,sBAAsB,OAAO,KAAK;AAChE,SAAO;AACR;",
6
+ "names": []
7
+ }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  configUiInit,
3
3
  svgLegend
4
- } from "./chunk-OHC2VBNI.js";
4
+ } from "./chunk-ZC2JTN3M.js";
5
5
  import "./chunk-7KFEDC2T.js";
6
6
  import "./chunk-FCPSU6WB.js";
7
7
  import "./chunk-4WBP22U2.js";
@@ -16,7 +16,7 @@ import "./chunk-VSRNBBZH.js";
16
16
  import "./chunk-Z7ZWX5W5.js";
17
17
  import "./chunk-NHPZSGTH.js";
18
18
  import "./chunk-PBT5AMVE.js";
19
- import "./chunk-FCUPUFGS.js";
19
+ import "./chunk-Z36HPN3C.js";
20
20
  import "./chunk-WTM3GD2X.js";
21
21
  import "./chunk-ZYRXVRSD.js";
22
22
  import "./chunk-SJ4KZVLF.js";
@@ -224,7 +224,7 @@ var DiscoInteractions = class {
224
224
  }
225
225
  ]
226
226
  };
227
- const _ = await import("./block.init-BQCHC3WP.js");
227
+ const _ = await import("./block.init-5F26S4V6.js");
228
228
  await _.default(arg);
229
229
  };
230
230
  }
@@ -2482,4 +2482,4 @@ export {
2482
2482
  discoInit,
2483
2483
  getPlotConfig
2484
2484
  };
2485
- //# sourceMappingURL=Disco-ZYPMYP2E.js.map
2485
+ //# sourceMappingURL=Disco-VSLMH7IW.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  launch
3
- } from "./chunk-JBYJMF2E.js";
3
+ } from "./chunk-QEHA27EP.js";
4
4
  import {
5
5
  makeBtn,
6
6
  makeFileUpload,
@@ -9,11 +9,11 @@ import {
9
9
  makeResetBtn,
10
10
  makeTextAreaInput
11
11
  } from "./chunk-CVRLSPB3.js";
12
- import "./chunk-VKP2QBZV.js";
13
- import "./chunk-ZROHWTSW.js";
12
+ import "./chunk-UWXKF5GA.js";
13
+ import "./chunk-O6XO5GFR.js";
14
14
  import "./chunk-5MDPW4SY.js";
15
15
  import "./chunk-NEKINX6F.js";
16
- import "./chunk-OHC2VBNI.js";
16
+ import "./chunk-ZC2JTN3M.js";
17
17
  import {
18
18
  Tabs
19
19
  } from "./chunk-7KFEDC2T.js";
@@ -28,7 +28,7 @@ import "./chunk-VSRNBBZH.js";
28
28
  import "./chunk-Z7ZWX5W5.js";
29
29
  import "./chunk-NHPZSGTH.js";
30
30
  import "./chunk-PBT5AMVE.js";
31
- import "./chunk-FCUPUFGS.js";
31
+ import "./chunk-Z36HPN3C.js";
32
32
  import "./chunk-WTM3GD2X.js";
33
33
  import "./chunk-ZYRXVRSD.js";
34
34
  import "./chunk-SJ4KZVLF.js";
@@ -250,4 +250,4 @@ function backButton(holder, genomes) {
250
250
  export {
251
251
  init_discoplotUI
252
252
  };
253
- //# sourceMappingURL=Disco.UI-G3GAHU6Q.js.map
253
+ //# sourceMappingURL=Disco.UI-4PHNVJKL.js.map
@@ -5,7 +5,7 @@ import {
5
5
  Raycaster,
6
6
  Vector2,
7
7
  Vector3
8
- } from "./chunk-DZTTAFY6.js";
8
+ } from "./chunk-YNH7AQH7.js";
9
9
  import "./chunk-F3OQE4AZ.js";
10
10
 
11
11
  // ../node_modules/three/examples/jsm/controls/DragControls.js
@@ -128,4 +128,4 @@ var DragControls = class extends EventDispatcher {
128
128
  export {
129
129
  DragControls
130
130
  };
131
- //# sourceMappingURL=DragControls-XN4IHBGY.js.map
131
+ //# sourceMappingURL=DragControls-UVVSECD2.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  blocklazyload
3
- } from "./chunk-64A6MQVL.js";
3
+ } from "./chunk-M7UM6ZD4.js";
4
4
  import {
5
5
  hicParseFile
6
6
  } from "./chunk-VIEDCIGF.js";
7
7
  import {
8
8
  ColorScale
9
- } from "./chunk-OHC2VBNI.js";
9
+ } from "./chunk-ZC2JTN3M.js";
10
10
  import "./chunk-7KFEDC2T.js";
11
11
  import "./chunk-FCPSU6WB.js";
12
12
  import "./chunk-4WBP22U2.js";
@@ -19,7 +19,7 @@ import "./chunk-VSRNBBZH.js";
19
19
  import "./chunk-Z7ZWX5W5.js";
20
20
  import "./chunk-NHPZSGTH.js";
21
21
  import "./chunk-PBT5AMVE.js";
22
- import "./chunk-FCUPUFGS.js";
22
+ import "./chunk-Z36HPN3C.js";
23
23
  import "./chunk-WTM3GD2X.js";
24
24
  import "./chunk-ZYRXVRSD.js";
25
25
  import "./chunk-SJ4KZVLF.js";
@@ -1775,7 +1775,7 @@ var InfoBar = class {
1775
1775
  this.colorScale = new ColorScale({
1776
1776
  barheight: 20,
1777
1777
  barwidth: 100,
1778
- data: [this.parent("min"), this.parent("max")],
1778
+ domain: [this.parent("min"), this.parent("max")],
1779
1779
  fontSize: 12,
1780
1780
  height: 40,
1781
1781
  width: 150,
@@ -1807,10 +1807,10 @@ var InfoBar = class {
1807
1807
  const max = this.parent("max");
1808
1808
  if (min < 0) {
1809
1809
  this.colorScale.colors = ["blue", "white", "red"];
1810
- this.colorScale.data = [min, 0, max];
1810
+ this.colorScale.domain = [min, 0, max];
1811
1811
  } else {
1812
1812
  this.colorScale.colors = ["white", "red"];
1813
- this.colorScale.data = [0, max];
1813
+ this.colorScale.domain = [0, max];
1814
1814
  }
1815
1815
  this.colorScale.markedValue = min;
1816
1816
  this.colorScale.updateScale();
@@ -2282,4 +2282,4 @@ var hicInit = getAppInit(HicApp);
2282
2282
  export {
2283
2283
  hicInit
2284
2284
  };
2285
- //# sourceMappingURL=HicApp-NSUVNIPD.js.map
2285
+ //# sourceMappingURL=HicApp-TB6CQVOL.js.map