@sjcrh/proteinpaint-client 2.203.0 → 2.203.1
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.
- package/dist/2dmaf-6CEBP4SA.js +1366 -0
- package/dist/AIProjectAdmin-2CKKFC3A.js +951 -0
- package/dist/AggregateMatrix-5TBUMFE5.js +665 -0
- package/dist/AppHeader-5YBPWF44.js +829 -0
- package/dist/BoxPlot-UOJS5SJV.js +1210 -0
- package/dist/CorrelationVolcano-KX6JPZMT.js +613 -0
- package/dist/Cuminc-TLOOLZWR.js +1208 -0
- package/dist/DE-HUQLQ2Z3.js +87 -0
- package/dist/DEinput-WWUISAF2.js +404 -0
- package/dist/DifferentialAnalysis-6DTAGCEY.js +237 -0
- package/dist/Disco-P6ZLPYLF.js +3388 -0
- package/dist/Disco.UI-WGTMAFK2.js +242 -0
- package/dist/DmrPlot-3FRU5KUK.js +636 -0
- package/dist/GB-NWOBARL3.js +1390 -0
- package/dist/GSEA-DEEUAAMI.js +850 -0
- package/dist/GeneExpInput-6QWGEAFV.js +361 -0
- package/dist/Geomap-6HT2B7RH.js +83 -0
- package/dist/HicApp-PCNOUULF.js +2244 -0
- package/dist/IDCViewer-H3QPXVM3.js +10811 -0
- package/dist/NumBinaryEditor-IU6OLMKN.js +278 -0
- package/dist/NumBinaryEditor.unit.spec-YUPUILIV.js +311 -0
- package/dist/NumContEditor-KFDA76QN.js +104 -0
- package/dist/NumContEditor.unit.spec-QBOT5QHU.js +163 -0
- package/dist/NumCustomBinEditor-EOSTEXLB.js +32 -0
- package/dist/NumCustomBinEditor.unit.spec-B46XWFYH.js +396 -0
- package/dist/NumDiscreteEditor-Y4EAADXC.js +169 -0
- package/dist/NumDiscreteEditor.unit.spec-SJGHLWSM.js +232 -0
- package/dist/NumRegularBinEditor-3BNG7DIN.js +32 -0
- package/dist/NumRegularBinEditor.unit.spec-KM45QXXG.js +277 -0
- package/dist/NumSplineEditor-K4KPDC4S.js +209 -0
- package/dist/NumSplineEditor.unit.spec-TKQP5XTS.js +223 -0
- package/dist/NumericDensity-Z6JFVN3D.js +32 -0
- package/dist/NumericDensity.unit.spec-YEYBVLEP.js +417 -0
- package/dist/NumericHandler-ITT6HMPN.js +33 -0
- package/dist/NumericHandler.unit.spec-QVONMXY4.js +213 -0
- package/dist/ProteomeInput-PRS3DEMZ.js +387 -0
- package/dist/Regression-LJJJBBT6.js +1413 -0
- package/dist/Regression-LJJJBBT6.js.map +7 -0
- package/dist/RunChart2-AMM2JFF5.js +749 -0
- package/dist/SC-F7IE66VZ.js +1106 -0
- package/dist/Violin-RJ6OJZ4F.js +1073 -0
- package/dist/Volcano-BJA5HN5Y.js +1414 -0
- package/dist/WSIViewer-RJZGRUIR.js +26194 -0
- package/dist/Wsi-DXP6KOQA.js +232 -0
- package/dist/WsiSamplesPlot-2IAWV2B6.js +159 -0
- package/dist/adSandbox-RGWOIV3W.js +32 -0
- package/dist/animatedBubbleChart-J4Q2NAEW.js +546 -0
- package/dist/app-3QXNR4VG.js +31 -0
- package/dist/app-B4B7YNP3.js +41 -0
- package/dist/app.js +12 -12
- package/dist/bam-LRUMN45P.js +875 -0
- package/dist/barchart-L2G6GEHK.js +41 -0
- package/dist/barchart2-DWNVAZAJ.js +308 -0
- package/dist/block-TVEVAXNP.js +6248 -0
- package/dist/block.init-YOHAKPRI.js +32 -0
- package/dist/block.mds.expressionrank-PU6JH4W5.js +353 -0
- package/dist/block.mds.geneboxplot-WYYFDNE3.js +822 -0
- package/dist/block.mds.junction-4WCTL7Y4.js +1538 -0
- package/dist/block.mds.svcnv-MR3VCYUW.js +6795 -0
- package/dist/block.svg-LR3Y4ZO7.js +158 -0
- package/dist/block.tk.aicheck-A5AWKJZI.js +277 -0
- package/dist/block.tk.ase-AQBBAQEH.js +359 -0
- package/dist/block.tk.bam-QBTA2O3V.js +1900 -0
- package/dist/block.tk.bedgraphdot-4ALZG2MY.js +378 -0
- package/dist/block.tk.bigwig.ui-32W6XW37.js +205 -0
- package/dist/block.tk.hicstraw-PKBHBAG2.js +817 -0
- package/dist/block.tk.junction-AO5CXUCU.js +2357 -0
- package/dist/block.tk.junction.textmatrixui-RORVUIPI.js +193 -0
- package/dist/block.tk.ld-TNBSR4FT.js +93 -0
- package/dist/block.tk.menu-QDJO54J5.js +1023 -0
- package/dist/block.tk.pgv-6222WWYR.js +937 -0
- package/dist/brainImaging-2TPE7MXB.js +426 -0
- package/dist/brainImaging-2TPE7MXB.js.map +7 -0
- package/dist/brainRegions-KTFH6DE2.js +215 -0
- package/dist/bubbleHeatmap-LNXZLFY6.js +377 -0
- package/dist/cellTypeBubbleHeatmap-SRHUNX3S.js +277 -0
- package/dist/chunk-3TXVDBGN.js +626 -0
- package/dist/chunk-4HLHKBHP.js +274 -0
- package/dist/chunk-5GG7Q2ZG.js +397 -0
- package/dist/chunk-5HVAVJKW.js +518 -0
- package/dist/chunk-5HVAVJKW.js.map +7 -0
- package/dist/chunk-5PMFCQKC.js +98 -0
- package/dist/chunk-67URJYN7.js +84 -0
- package/dist/chunk-67URJYN7.js.map +7 -0
- package/dist/chunk-6AKSOLBX.js +5071 -0
- package/dist/chunk-6AKSOLBX.js.map +7 -0
- package/dist/chunk-6X7PP7A4.js +2126 -0
- package/dist/chunk-A3EDLRUN.js +54 -0
- package/dist/chunk-ACXFPMJP.js +14 -0
- package/dist/chunk-ASRW3UJ5.js +102 -0
- package/dist/chunk-BBILSUDX.js +176 -0
- package/dist/chunk-BOWI37X2.js +100 -0
- package/dist/chunk-BVA26EFK.js +368 -0
- package/dist/chunk-D5J57ENI.js +797 -0
- package/dist/chunk-D5PX2UDG.js +23878 -0
- package/dist/chunk-D5PX2UDG.js.map +7 -0
- package/dist/chunk-DAGONMWK.js +261 -0
- package/dist/chunk-DAGONMWK.js.map +7 -0
- package/dist/chunk-DXLO4OAB.js +357 -0
- package/dist/chunk-DXLO4OAB.js.map +7 -0
- package/dist/chunk-E5BFGDLA.js +292 -0
- package/dist/chunk-ECISCOPF.js +134 -0
- package/dist/chunk-ECLUUJVE.js +158 -0
- package/dist/chunk-EGDQ5I54.js +272 -0
- package/dist/chunk-ELNVTA7O.js +56 -0
- package/dist/chunk-EO6M3LY3.js +339 -0
- package/dist/chunk-EO6M3LY3.js.map +7 -0
- package/dist/chunk-F4PMOAQK.js +494 -0
- package/dist/chunk-FISQTHD4.js +2327 -0
- package/dist/chunk-FXT2XM4E.js +1337 -0
- package/dist/chunk-FXT2XM4E.js.map +7 -0
- package/dist/chunk-HIWTGMTE.js +1721 -0
- package/dist/chunk-HIWTGMTE.js.map +7 -0
- package/dist/chunk-HL6GJIOH.js +1254 -0
- package/dist/chunk-IGZAOCTU.js +55 -0
- package/dist/chunk-JMDJI7KM.js +6360 -0
- package/dist/chunk-JQVA264Z.js +49 -0
- package/dist/chunk-JRF7SRLB.js +2784 -0
- package/dist/chunk-KLWSW6CC.js +203 -0
- package/dist/chunk-KNNSOOTG.js +194 -0
- package/dist/chunk-KTPXQH2N.js +170 -0
- package/dist/chunk-LGKXSWY4.js +276 -0
- package/dist/chunk-LP2GIXVK.js +4274 -0
- package/dist/chunk-M2ZZL5EV.js +2669 -0
- package/dist/chunk-M2ZZL5EV.js.map +7 -0
- package/dist/chunk-MBHERRJR.js +302 -0
- package/dist/chunk-MLYQDJUQ.js +480 -0
- package/dist/chunk-NBGDLLMX.js +446 -0
- package/dist/chunk-OPMMU6DQ.js +183 -0
- package/dist/chunk-OPMMU6DQ.js.map +7 -0
- package/dist/chunk-P3JEXVBT.js +50 -0
- package/dist/chunk-PZPPJY4K.js +34 -0
- package/dist/chunk-Q6JF4ZLT.js +141 -0
- package/dist/chunk-QF5IH7PC.js +263 -0
- package/dist/chunk-QJ6SO7CF.js +465 -0
- package/dist/chunk-QQUOVIOM.js +2899 -0
- package/dist/chunk-R3OBOAOF.js +240 -0
- package/dist/chunk-SNCZRDS5.js +557 -0
- package/dist/chunk-SNCZRDS5.js.map +7 -0
- package/dist/chunk-SPDNUC76.js +70 -0
- package/dist/chunk-T3663ZQL.js +37 -0
- package/dist/chunk-TSK4ZTFK.js +340 -0
- package/dist/chunk-USW6WRDZ.js +217 -0
- package/dist/chunk-WBMYHNKH.js +299 -0
- package/dist/chunk-X46LAU4Q.js +187 -0
- package/dist/chunk-XE6E526E.js +129 -0
- package/dist/chunk-XWCWBHLB.js +123 -0
- package/dist/chunk-YCECQV3T.js +160 -0
- package/dist/chunk-YROOKO3Q.js +1954 -0
- package/dist/chunk-YROOKO3Q.js.map +7 -0
- package/dist/chunk-Z4NADGZX.js +243 -0
- package/dist/chunk-Z53KOPRJ.js +102 -0
- package/dist/cohort-U7M6Q2UX.js +69 -0
- package/dist/condition-EGAV2PMJ.js +326 -0
- package/dist/controls-PTMYWUZV.js +33 -0
- package/dist/controls.config-DOA6PTP2.js +33 -0
- package/dist/correlation-Y3EL6GB7.js +94 -0
- package/dist/customdata.inputui-4NDDG6FL.js +283 -0
- package/dist/dataDownload-EQGUAOK2.js +328 -0
- package/dist/databrowser.ui-ABGOJUWQ.js +424 -0
- package/dist/dictionary-YOLLEDE5.js +112 -0
- package/dist/dnaMethylation-JZT63UHO.js +32 -0
- package/dist/dnaMethylation.integration.spec-EATCABJW.js +197 -0
- package/dist/dofetch-YNBIUFV5.js +48 -0
- package/dist/e2pca-RD6COCRL.js +343 -0
- package/dist/ep-BAI7WUET.js +1248 -0
- package/dist/expclust.gdc.spec-LKV2CQA5.js +301 -0
- package/dist/facet-X3SXQIAC.js +518 -0
- package/dist/gb-K324K7XB.js +80 -0
- package/dist/geneExpClustering-BJD5U3KG.js +243 -0
- package/dist/geneExpression-2TK3XLZ5.js +310 -0
- package/dist/geneExpression-F6NRTHZ4.js +32 -0
- package/dist/geneExpression.unit.spec-IFZN3J6A.js +96 -0
- package/dist/geneORA-DUEP735U.js +272 -0
- package/dist/geneRanking-LURDNT7L.js +547 -0
- package/dist/geneVariant-EAVCWQAZ.js +35 -0
- package/dist/geneVariant-IZTFYAG6.js +284 -0
- package/dist/geneVariant-IZTFYAG6.js.map +7 -0
- package/dist/geneVariant.integration.spec-LHL4ERFO.js +192 -0
- package/dist/genefusion.ui-4T5R7DT7.js +302 -0
- package/dist/geneset-3PWXPBG2.js +202 -0
- package/dist/genomeBrowser.spec-5SEN7R2P.js +275 -0
- package/dist/grin2-EXBG7TMS.js +1136 -0
- package/dist/grin2-XIXVFVWO.js +69 -0
- package/dist/hierCluster-5XQIWXAY.js +57 -0
- package/dist/hierCluster-I4TAQWPF.js +53 -0
- package/dist/hierCluster.config-T7HVAWES.js +34 -0
- package/dist/hierCluster.integration.spec-XWX43K4D.js +482 -0
- package/dist/hierCluster.interactivity-MYIDHFSL.js +48 -0
- package/dist/hierCluster.renderers-YRXA5ZUK.js +19 -0
- package/dist/imagePlot-4JQB6JUG.js +155 -0
- package/dist/importPlot-D3MXCCLN.js +8 -0
- package/dist/isoformExpression-WNGGUVIZ.js +34 -0
- package/dist/isoformExpression.unit.spec-NVJ5TIKM.js +236 -0
- package/dist/junction-O7N57JE3.js +35 -0
- package/dist/junction.unit.spec-Z63DRTRR.js +181 -0
- package/dist/launch.adhoc-MBDRXD3B.js +36 -0
- package/dist/leftlabel.sample-IG6FOQ26.js +257 -0
- package/dist/lollipop-ZUYBLPGN.js +165 -0
- package/dist/maf-QOS5LURG.js +454 -0
- package/dist/maftimeline-FEHP2J55.js +586 -0
- package/dist/matrix-BG4J4RXA.js +57 -0
- package/dist/matrix-PX4LWTGN.js +52 -0
- package/dist/matrix.cells-PTIDQVCI.js +26 -0
- package/dist/matrix.config-NHW7BLIE.js +35 -0
- package/dist/matrix.data-FMIQRXOA.js +23 -0
- package/dist/matrix.dom-4S2UYJOU.js +11 -0
- package/dist/matrix.groups-QMID5XAO.js +25 -0
- package/dist/matrix.integration.spec-H6T7KP5R.js +3066 -0
- package/dist/matrix.interactivity-WQUO25HB.js +36 -0
- package/dist/matrix.layout-CTPVZZ34.js +38 -0
- package/dist/matrix.legend-K6EYUN6L.js +20 -0
- package/dist/matrix.renderers-5DIAUY6R.js +32 -0
- package/dist/matrix.serieses-LRMN2J52.js +19 -0
- package/dist/matrix.sort-RGAGEA6Z.js +25 -0
- package/dist/matrix.sort.unit.spec-RGICZZJL.js +466 -0
- package/dist/matrix.sorterUi.unit.spec-45QPEGWE.js +336 -0
- package/dist/matrix.unit.spec-TMRZM5DU.js +148 -0
- package/dist/matrix.unit.spec-TMRZM5DU.js.map +7 -0
- package/dist/mavb-VEIVB62L.js +726 -0
- package/dist/mds.fimo-BG4LTWFB.js +512 -0
- package/dist/mds.samplescatterplot-PWADJZ2J.js +1544 -0
- package/dist/mds.survivalplot-BX4HZ23K.js +476 -0
- package/dist/multivalue-OZALSBFW.js +82 -0
- package/dist/numericDictTermCluster-7PGJ7KV4.js +63 -0
- package/dist/oncomatrix-Q2EQZPLS.js +289 -0
- package/dist/oncomatrix.spec-YEQOQRPW.js +442 -0
- package/dist/plot.2dvaf-NJSB3HNH.js +371 -0
- package/dist/plot.app-AEUR6XGI.js +35 -0
- package/dist/plot.barplot-OXN2P5KL.js +96 -0
- package/dist/plot.boxplot-2KHEVVFE.js +145 -0
- package/dist/plot.brainImaging-JWDX4BZG.js +51 -0
- package/dist/plot.disco-LUFC5GGC.js +99 -0
- package/dist/plot.ssgq-FMM3IRNA.js +133 -0
- package/dist/plot.vaf2cov-K5TAQUC5.js +252 -0
- package/dist/plot.wsi-CNQCNZ4Z.js +36 -0
- package/dist/polar2-AB6SVYRS.js +231 -0
- package/dist/profileForms-AIEHZ4GC.js +933 -0
- package/dist/profilePlot-PZDFGXKZ.js +48 -0
- package/dist/proteinView-7GWHQYXC.js +1561 -0
- package/dist/proteomeCohortCompare-BTN4HHFL.js +779 -0
- package/dist/proteomeCohortCompare-BTN4HHFL.js.map +7 -0
- package/dist/pseudbulk.unit.spec-NFT4VNTI.js +85 -0
- package/dist/pseudobulk-WDGWTXW4.js +34 -0
- package/dist/qualitative-PZYJENE7.js +37 -0
- package/dist/radar2-QHRGH3YS.js +326 -0
- package/dist/radarFacility2-2JD26FL6.js +334 -0
- package/dist/render-YA4Z56LT.js +32 -0
- package/dist/report-2NUKFJTF.js +216 -0
- package/dist/sampleView-2XVPJTVR.js +42 -0
- package/dist/samplelst-DMILFDT5.js +105 -0
- package/dist/samplematrix-LYA5XTUM.js +2192 -0
- package/dist/sc-CM2C34MN.js +80 -0
- package/dist/scatter-C3CH3HTF.js +879 -0
- package/dist/scatter-GO6LV6NY.js +87 -0
- package/dist/selectGenomeWithTklst-5C7UBTGZ.js +128 -0
- package/dist/singleCellCellType-EZYESBVZ.js +32 -0
- package/dist/singleCellCellType.unit.spec-DB6FM4XR.js +153 -0
- package/dist/singleCellGeneExpression-DZLEFPW4.js +32 -0
- package/dist/singleCellGeneExpression.unit.spec-ZTBK3V43.js +147 -0
- package/dist/singleCellPlot-VF4TZ4FT.js +48 -0
- package/dist/singlecell-2MHROPBN.js +1565 -0
- package/dist/singlecell-GPAFNOUZ.js +80 -0
- package/dist/snp-K4EAEVW4.js +32 -0
- package/dist/snp.unit.spec-BUVQLVOY.js +170 -0
- package/dist/snplocus-GEVISN6Z.js +202 -0
- package/dist/spliceevent.a53ss.diagram-5UPWNAZF.js +145 -0
- package/dist/spliceevent.exonskip.diagram-7TKAQURC.js +277 -0
- package/dist/spliceevent.noeventdiagram-CDXZLR3Z.js +454 -0
- package/dist/ssGSEA-NMCJUQXT.js +32 -0
- package/dist/ssGSEA.unit.spec-3FQALTPQ.js +82 -0
- package/dist/stattable-2RXQPWKK.js +116 -0
- package/dist/studyCatalog-WWFCTTX7.js +377 -0
- package/dist/studyCatalog-WWFCTTX7.js.map +7 -0
- package/dist/summarizeCnvGeneexp-4BQS5AFM.js +157 -0
- package/dist/summarizeGeneexpSurvival-HTBZQFB5.js +104 -0
- package/dist/summarizeMutationCnv-XUWZGPCM.js +158 -0
- package/dist/summarizeMutationDiagnosis-QUJX42TO.js +34 -0
- package/dist/summarizeMutationSurvival-3R47TTR6.js +93 -0
- package/dist/summary-6UUB63QR.js +41 -0
- package/dist/summary.integration.spec-JJDE6SRV.js +408 -0
- package/dist/summaryInput-JG4AW6FW.js +225 -0
- package/dist/sunburst-YKB42RZX.js +277 -0
- package/dist/survival-3IFFTDQA.js +52 -0
- package/dist/survival-HOFNJENX.js +1236 -0
- package/dist/survival.integration.spec-7YZYKEUW.js +612 -0
- package/dist/survival.integration.spec-7YZYKEUW.js.map +7 -0
- package/dist/svgraph-WFEY4ZIZ.js +1381 -0
- package/dist/svmr-44EIX7YD.js +3836 -0
- package/dist/table-6MKVJUNC.js +196 -0
- package/dist/termCollection-6JBVQL6Y.js +251 -0
- package/dist/termCollection-TTELZVC5.js +32 -0
- package/dist/termCollection.unit.spec-6Z7X646L.js +298 -0
- package/dist/termCollectionFractionSelection-5DVIJBM5.js +41 -0
- package/dist/termCollectionFractionSelection.unit.spec-3HIM5BIF.js +187 -0
- package/dist/tk-HSYWJCGQ.js +40 -0
- package/dist/tk-PNOVG2XS.js +1120 -0
- package/dist/tp.ui-COBBSUPB.js +1453 -0
- package/dist/tvs.dt-35AKURFI.js +33 -0
- package/dist/tvs.dtcnv.categorical-3EHXYROL.js +34 -0
- package/dist/tvs.dtcnv.continuous-AXQ2GU6S.js +66 -0
- package/dist/tvs.dtfusion-PLJIMPNX.js +34 -0
- package/dist/tvs.dtitd-JS6RFBV5.js +34 -0
- package/dist/tvs.dtsnvindel-MDEM5MPT.js +34 -0
- package/dist/tvs.dtsv-OU756YLO.js +34 -0
- package/dist/tvs.samplelst-5NDICES4.js +98 -0
- package/dist/tvs.termCollection-5URPDPH6.js +123 -0
- package/dist/vocabulary-CHCVMPK5.js +35 -0
- package/dist/wsi.direct-JSKV4H4X.js +75 -0
- package/package.json +4 -4
- package/dist/2dmaf-I4HBWRNQ.js +0 -1366
- package/dist/AIProjectAdmin-SZYSG7HR.js +0 -951
- package/dist/AggregateMatrix-U7HHALFR.js +0 -665
- package/dist/AppHeader-O4RBZQZF.js +0 -829
- package/dist/BoxPlot-NOXWAGX6.js +0 -1210
- package/dist/CorrelationVolcano-IJ5UT6N5.js +0 -613
- package/dist/Cuminc-NGUDAOAD.js +0 -1208
- package/dist/DE-MIAHOI5J.js +0 -87
- package/dist/DEinput-FYBSL2ER.js +0 -404
- package/dist/DifferentialAnalysis-I6S5YQXY.js +0 -237
- package/dist/Disco-VLUBOZDC.js +0 -3388
- package/dist/Disco.UI-QQYWQEW7.js +0 -242
- package/dist/DmrPlot-DFOBEN7A.js +0 -636
- package/dist/GB-5FSXJMEZ.js +0 -1390
- package/dist/GSEA-JISHQOVY.js +0 -850
- package/dist/GeneExpInput-5YEX22VD.js +0 -361
- package/dist/Geomap-YVF6YBK5.js +0 -83
- package/dist/HicApp-ZCMOOKTY.js +0 -2244
- package/dist/IDCViewer-5ZNTAEUG.js +0 -10811
- package/dist/NumBinaryEditor-BEF5YCKI.js +0 -278
- package/dist/NumBinaryEditor.unit.spec-GCYZGHB2.js +0 -311
- package/dist/NumContEditor-TUXPB6YJ.js +0 -104
- package/dist/NumContEditor.unit.spec-5CMHHWIP.js +0 -163
- package/dist/NumCustomBinEditor-HS7RSGFV.js +0 -32
- package/dist/NumCustomBinEditor.unit.spec-MM3JJXT4.js +0 -396
- package/dist/NumDiscreteEditor-ZL7PP6ZT.js +0 -169
- package/dist/NumDiscreteEditor.unit.spec-OEWX2KJC.js +0 -232
- package/dist/NumRegularBinEditor-YBXK7YV6.js +0 -32
- package/dist/NumRegularBinEditor.unit.spec-FVHN4J5L.js +0 -277
- package/dist/NumSplineEditor-VN4XBTTI.js +0 -209
- package/dist/NumSplineEditor.unit.spec-AI642DWP.js +0 -223
- package/dist/NumericDensity-2KTY7DGH.js +0 -32
- package/dist/NumericDensity.unit.spec-6EA72A24.js +0 -417
- package/dist/NumericHandler-62EN6AD3.js +0 -33
- package/dist/NumericHandler.unit.spec-FXOJ2L2L.js +0 -213
- package/dist/ProteomeInput-MBBDXO2Z.js +0 -387
- package/dist/Regression-OQETMZPL.js +0 -1408
- package/dist/Regression-OQETMZPL.js.map +0 -7
- package/dist/RunChart2-RHZFHH4M.js +0 -749
- package/dist/SC-FAQXOHO4.js +0 -1106
- package/dist/Violin-2A3ICNBP.js +0 -1073
- package/dist/Volcano-X5KGHLHZ.js +0 -1414
- package/dist/WSIViewer-F2SD6LLP.js +0 -26194
- package/dist/Wsi-KAFAC3Q5.js +0 -232
- package/dist/WsiSamplesPlot-VKPMLDZI.js +0 -159
- package/dist/adSandbox-QKG5EA23.js +0 -32
- package/dist/animatedBubbleChart-ES62XWMN.js +0 -546
- package/dist/app-2HLLOBTD.js +0 -41
- package/dist/app-GJL6K6V4.js +0 -31
- package/dist/bam-DCPAAVPX.js +0 -875
- package/dist/barchart-DCVGCEZO.js +0 -41
- package/dist/barchart2-5X57VSIN.js +0 -308
- package/dist/block-XYSUTBXJ.js +0 -6248
- package/dist/block.init-5B27QKPU.js +0 -32
- package/dist/block.mds.expressionrank-Z7BGGPZ7.js +0 -353
- package/dist/block.mds.geneboxplot-4U4UZH2J.js +0 -822
- package/dist/block.mds.junction-ZPCUEQZJ.js +0 -1538
- package/dist/block.mds.svcnv-OGGPBOL2.js +0 -6795
- package/dist/block.svg-BWGAMNDS.js +0 -158
- package/dist/block.tk.aicheck-XHHW7WST.js +0 -277
- package/dist/block.tk.ase-BZ2IL3CQ.js +0 -359
- package/dist/block.tk.bam-WRHOOWXN.js +0 -1900
- package/dist/block.tk.bedgraphdot-B536STRA.js +0 -378
- package/dist/block.tk.bigwig.ui-K5X3BSQC.js +0 -205
- package/dist/block.tk.hicstraw-OYOKZ45W.js +0 -817
- package/dist/block.tk.junction-S5JMMMR6.js +0 -2357
- package/dist/block.tk.junction.textmatrixui-OLZY5BYR.js +0 -193
- package/dist/block.tk.ld-KINDO5UU.js +0 -93
- package/dist/block.tk.menu-3FNBVZ7J.js +0 -1023
- package/dist/block.tk.pgv-UHDY3T4G.js +0 -937
- package/dist/brainImaging-KWFRX3XB.js +0 -422
- package/dist/brainImaging-KWFRX3XB.js.map +0 -7
- package/dist/brainRegions-YI7K4OVE.js +0 -215
- package/dist/bubbleHeatmap-EQ44CSG5.js +0 -377
- package/dist/cellTypeBubbleHeatmap-O3KL2YBF.js +0 -277
- package/dist/chunk-254KEDDH.js +0 -129
- package/dist/chunk-25RPYQRT.js +0 -203
- package/dist/chunk-2OEMKKLP.js +0 -272
- package/dist/chunk-34AV6DED.js +0 -299
- package/dist/chunk-3UOSDVFJ.js +0 -1710
- package/dist/chunk-3UOSDVFJ.js.map +0 -7
- package/dist/chunk-4GN3CSDT.js +0 -98
- package/dist/chunk-4KUGV44F.js +0 -397
- package/dist/chunk-4WF3XDQP.js +0 -220
- package/dist/chunk-4WF3XDQP.js.map +0 -7
- package/dist/chunk-55PGOBTR.js +0 -123
- package/dist/chunk-5RHE36DQ.js +0 -37
- package/dist/chunk-6456HESK.js +0 -160
- package/dist/chunk-6THPWBBU.js +0 -102
- package/dist/chunk-6ZLCBVJA.js +0 -54
- package/dist/chunk-7AYGTMED.js +0 -182
- package/dist/chunk-7AYGTMED.js.map +0 -7
- package/dist/chunk-7ROMS7YT.js +0 -626
- package/dist/chunk-7UFK4GVI.js +0 -263
- package/dist/chunk-7UFK4GVI.js.map +0 -7
- package/dist/chunk-ALXSSRGI.js +0 -263
- package/dist/chunk-AT7HWXMW.js +0 -302
- package/dist/chunk-AVR4LFOO.js +0 -194
- package/dist/chunk-BY5B5BM5.js +0 -170
- package/dist/chunk-BZ36NJHA.js +0 -797
- package/dist/chunk-BZKHE26Z.js +0 -340
- package/dist/chunk-CBRZIMNF.js +0 -217
- package/dist/chunk-CTO247UZ.js +0 -5069
- package/dist/chunk-CTO247UZ.js.map +0 -7
- package/dist/chunk-D27C6HZW.js +0 -50
- package/dist/chunk-D73PJ4WC.js +0 -512
- package/dist/chunk-D73PJ4WC.js.map +0 -7
- package/dist/chunk-DLXMO6EK.js +0 -494
- package/dist/chunk-EK7CQC3P.js +0 -100
- package/dist/chunk-FCMHDCMO.js +0 -56
- package/dist/chunk-GJFG2MML.js +0 -1254
- package/dist/chunk-GQQ4R6BI.js +0 -24060
- package/dist/chunk-GQQ4R6BI.js.map +0 -7
- package/dist/chunk-HENLCRVM.js +0 -2126
- package/dist/chunk-I56CSICA.js +0 -292
- package/dist/chunk-I5KBI5PC.js +0 -274
- package/dist/chunk-IHDVUZFC.js +0 -1947
- package/dist/chunk-IHDVUZFC.js.map +0 -7
- package/dist/chunk-IUA3PSTK.js +0 -6360
- package/dist/chunk-J3TIXBCS.js +0 -276
- package/dist/chunk-JJHMFHRC.js +0 -257
- package/dist/chunk-JJHMFHRC.js.map +0 -7
- package/dist/chunk-JPQSDB2H.js +0 -102
- package/dist/chunk-LIMDUEVX.js +0 -1336
- package/dist/chunk-LIMDUEVX.js.map +0 -7
- package/dist/chunk-MECQLU4J.js +0 -243
- package/dist/chunk-MEJMWIBD.js +0 -187
- package/dist/chunk-MT5MHYL3.js +0 -480
- package/dist/chunk-NVH5I6EP.js +0 -176
- package/dist/chunk-OGQMELRU.js +0 -14
- package/dist/chunk-PBRW6QLS.js +0 -4274
- package/dist/chunk-PPJMCBVT.js +0 -82
- package/dist/chunk-PPJMCBVT.js.map +0 -7
- package/dist/chunk-RRI3RX4A.js +0 -2669
- package/dist/chunk-RRI3RX4A.js.map +0 -7
- package/dist/chunk-S2D6GH6D.js +0 -465
- package/dist/chunk-SACNULB3.js +0 -368
- package/dist/chunk-SEJGXC2L.js +0 -141
- package/dist/chunk-TMZZ4Z7L.js +0 -34
- package/dist/chunk-TRWFL52W.js +0 -446
- package/dist/chunk-VP2FPPLA.js +0 -70
- package/dist/chunk-VTYMSJGY.js +0 -49
- package/dist/chunk-WEF6INPI.js +0 -2784
- package/dist/chunk-WO4CL5JL.js +0 -240
- package/dist/chunk-WVVH56ZU.js +0 -2327
- package/dist/chunk-WZTZJNSG.js +0 -2899
- package/dist/chunk-XPSUKXMF.js +0 -556
- package/dist/chunk-XPSUKXMF.js.map +0 -7
- package/dist/chunk-XXITHNR2.js +0 -134
- package/dist/chunk-YCLNEB4L.js +0 -158
- package/dist/chunk-ZPFN3CYR.js +0 -55
- package/dist/cohort-JCMVMOBQ.js +0 -69
- package/dist/condition-SHRWEMG7.js +0 -326
- package/dist/controls-EKIHLQS6.js +0 -33
- package/dist/controls.config-WSVX6UC6.js +0 -33
- package/dist/correlation-ALFFZLKD.js +0 -94
- package/dist/customdata.inputui-L2UAIU6I.js +0 -283
- package/dist/dataDownload-73N5364T.js +0 -328
- package/dist/databrowser.ui-NTOGXDYE.js +0 -424
- package/dist/dictionary-CUAU2X6Q.js +0 -112
- package/dist/dnaMethylation-AGWAGXVD.js +0 -32
- package/dist/dnaMethylation.integration.spec-K22XXOU4.js +0 -197
- package/dist/dofetch-BVJ77SP7.js +0 -48
- package/dist/e2pca-4HIJWLSC.js +0 -343
- package/dist/ep-U4RGH62P.js +0 -1248
- package/dist/expclust.gdc.spec-JJGGQDQK.js +0 -301
- package/dist/facet-NNUPVXCG.js +0 -518
- package/dist/gb-2MYXJEMY.js +0 -80
- package/dist/geneExpClustering-6ORRRH43.js +0 -243
- package/dist/geneExpression-4JVWKJWP.js +0 -310
- package/dist/geneExpression-MARWAIHW.js +0 -32
- package/dist/geneExpression.unit.spec-3CQTUSDK.js +0 -96
- package/dist/geneORA-M2L2YEX3.js +0 -272
- package/dist/geneRanking-S2B3LSTU.js +0 -547
- package/dist/geneVariant-D2ANGINP.js +0 -35
- package/dist/geneVariant-T4NG72OL.js +0 -33
- package/dist/geneVariant.integration.spec-62NJS7GD.js +0 -192
- package/dist/genefusion.ui-4ZZNKANU.js +0 -302
- package/dist/geneset-QCLFANPD.js +0 -202
- package/dist/genomeBrowser.spec-BV5M6JFN.js +0 -275
- package/dist/grin2-J4VDS2JT.js +0 -1136
- package/dist/grin2-K5G3N5XP.js +0 -69
- package/dist/hierCluster-FMK524WF.js +0 -57
- package/dist/hierCluster-XF7ZWVKD.js +0 -53
- package/dist/hierCluster.config-LYAQCO3L.js +0 -34
- package/dist/hierCluster.integration.spec-NSLTJBL4.js +0 -482
- package/dist/hierCluster.interactivity-VKAOR2DR.js +0 -48
- package/dist/hierCluster.renderers-6C5F7LRL.js +0 -19
- package/dist/imagePlot-IPTIFVLT.js +0 -155
- package/dist/importPlot-V3P6DCUR.js +0 -8
- package/dist/isoformExpression-6IIPJI4M.js +0 -34
- package/dist/isoformExpression.unit.spec-IYZWSLO5.js +0 -236
- package/dist/junction-E6FB2OP4.js +0 -35
- package/dist/junction.unit.spec-M4EN7KPG.js +0 -181
- package/dist/launch.adhoc-SU5L2YXN.js +0 -36
- package/dist/leftlabel.sample-5WTK5NBD.js +0 -257
- package/dist/lollipop-L64ZTEEX.js +0 -165
- package/dist/maf-QLNFANWO.js +0 -454
- package/dist/maftimeline-U7FMTMTV.js +0 -586
- package/dist/matrix-GFVK3PEB.js +0 -57
- package/dist/matrix-HFJQGPJJ.js +0 -52
- package/dist/matrix.cells-5JKTBI3X.js +0 -26
- package/dist/matrix.config-QPTQ22RR.js +0 -35
- package/dist/matrix.data-MXIUMSRR.js +0 -23
- package/dist/matrix.dom-ENBFB4CW.js +0 -11
- package/dist/matrix.groups-6DYTBVGR.js +0 -25
- package/dist/matrix.integration.spec-X4HM67TN.js +0 -3066
- package/dist/matrix.interactivity-QTB56LXE.js +0 -36
- package/dist/matrix.layout-VQAORIIH.js +0 -38
- package/dist/matrix.legend-SDJXYNHE.js +0 -20
- package/dist/matrix.renderers-6PMYIP2S.js +0 -32
- package/dist/matrix.serieses-WWY7474U.js +0 -19
- package/dist/matrix.sort-V46C2MAZ.js +0 -25
- package/dist/matrix.sort.unit.spec-3RM7V6CS.js +0 -466
- package/dist/matrix.sorterUi.unit.spec-YOV6FBRT.js +0 -336
- package/dist/mavb-PJA76T7F.js +0 -726
- package/dist/mds.fimo-GW7XPJGQ.js +0 -512
- package/dist/mds.samplescatterplot-ZAIEWPO4.js +0 -1544
- package/dist/mds.survivalplot-ETLLFDWR.js +0 -476
- package/dist/multivalue-AZPAQJQD.js +0 -82
- package/dist/numericDictTermCluster-KOJODGZT.js +0 -63
- package/dist/oncomatrix-2TRXETOJ.js +0 -289
- package/dist/oncomatrix.spec-DOVKLS24.js +0 -442
- package/dist/plot.2dvaf-RQN6QADW.js +0 -371
- package/dist/plot.app-MOIVGIS6.js +0 -35
- package/dist/plot.barplot-46QRWJOX.js +0 -96
- package/dist/plot.boxplot-54J4UWQX.js +0 -145
- package/dist/plot.brainImaging-Y32KQFLS.js +0 -51
- package/dist/plot.disco-4R5J7Z5S.js +0 -99
- package/dist/plot.ssgq-6LCKYRYD.js +0 -133
- package/dist/plot.vaf2cov-UCBH4NSC.js +0 -252
- package/dist/plot.wsi-DAC7NUQE.js +0 -36
- package/dist/polar2-JKV74QV5.js +0 -231
- package/dist/profileForms-VDYCFH4M.js +0 -933
- package/dist/profilePlot-PR3LVRYU.js +0 -48
- package/dist/proteinView-A3EM6OR5.js +0 -1561
- package/dist/proteomeCohortCompare-QGFEJTDQ.js +0 -793
- package/dist/proteomeCohortCompare-QGFEJTDQ.js.map +0 -7
- package/dist/pseudbulk.unit.spec-CUMTLAH7.js +0 -85
- package/dist/pseudobulk-5E5MSMU3.js +0 -34
- package/dist/qualitative-WPXUBISK.js +0 -37
- package/dist/radar2-A5OYMORS.js +0 -326
- package/dist/radarFacility2-4TPJB6M4.js +0 -334
- package/dist/render-XQBWWS33.js +0 -32
- package/dist/report-NCJOTYIC.js +0 -216
- package/dist/sampleView-2PUSMG4W.js +0 -42
- package/dist/samplelst-FV7BAUN5.js +0 -105
- package/dist/samplematrix-DFD3PNI4.js +0 -2192
- package/dist/sc-GIMTDVLG.js +0 -80
- package/dist/scatter-4GJ5HKUY.js +0 -879
- package/dist/scatter-P3ISZB3R.js +0 -87
- package/dist/selectGenomeWithTklst-ZZ4CEHDU.js +0 -128
- package/dist/singleCellCellType-CEERCVTR.js +0 -32
- package/dist/singleCellCellType.unit.spec-JNEIICK5.js +0 -153
- package/dist/singleCellGeneExpression-G5B7DDES.js +0 -32
- package/dist/singleCellGeneExpression.unit.spec-CGRZGY66.js +0 -147
- package/dist/singleCellPlot-US5KTHS4.js +0 -48
- package/dist/singlecell-IPTSIKNA.js +0 -1565
- package/dist/singlecell-VB4KLPJF.js +0 -80
- package/dist/snp-6V2SCCRN.js +0 -32
- package/dist/snp.unit.spec-Q537NGVG.js +0 -170
- package/dist/snplocus-BV6WJTVP.js +0 -202
- package/dist/spliceevent.a53ss.diagram-3BUQVK4Q.js +0 -145
- package/dist/spliceevent.exonskip.diagram-CQZ2DFQ5.js +0 -277
- package/dist/spliceevent.noeventdiagram-QAEPR6LD.js +0 -454
- package/dist/ssGSEA-XNI5S7AC.js +0 -32
- package/dist/ssGSEA.unit.spec-A337IMC7.js +0 -82
- package/dist/stattable-J4ZQKJFM.js +0 -116
- package/dist/studyCatalog-BJTJJGBC.js +0 -352
- package/dist/studyCatalog-BJTJJGBC.js.map +0 -7
- package/dist/summarizeCnvGeneexp-76UJXLA4.js +0 -157
- package/dist/summarizeGeneexpSurvival-ZUEHXA2R.js +0 -104
- package/dist/summarizeMutationCnv-EBCBVMG6.js +0 -158
- package/dist/summarizeMutationDiagnosis-VLFI2ZIZ.js +0 -34
- package/dist/summarizeMutationSurvival-QRFMJLLO.js +0 -93
- package/dist/summary-U3YKEMZC.js +0 -41
- package/dist/summary.integration.spec-52WP6SNY.js +0 -408
- package/dist/summaryInput-WUJNHCGH.js +0 -225
- package/dist/sunburst-IJ3ZG2BC.js +0 -277
- package/dist/survival-F2B5JKOO.js +0 -1236
- package/dist/survival-SQRYWGWZ.js +0 -52
- package/dist/survival.integration.spec-YGRZJ2OL.js +0 -967
- package/dist/survival.integration.spec-YGRZJ2OL.js.map +0 -7
- package/dist/svgraph-HVCMF6KI.js +0 -1381
- package/dist/svmr-PROHTMTP.js +0 -3836
- package/dist/table-3E64OJNV.js +0 -196
- package/dist/termCollection-MUH7P6B5.js +0 -32
- package/dist/termCollection-WKT6ESMI.js +0 -251
- package/dist/termCollection.unit.spec-XMOCMVER.js +0 -298
- package/dist/termCollectionFractionSelection-P5G6WIJJ.js +0 -41
- package/dist/termCollectionFractionSelection.unit.spec-MG7E3EIZ.js +0 -187
- package/dist/tk-HWUPUGOS.js +0 -1120
- package/dist/tk-SBM2GN3S.js +0 -40
- package/dist/tp.ui-RRB5MJRD.js +0 -1453
- package/dist/tvs.dt-I2ECKHQ2.js +0 -33
- package/dist/tvs.dtcnv.categorical-7RJPQKMX.js +0 -34
- package/dist/tvs.dtcnv.continuous-FW4ZXIYY.js +0 -66
- package/dist/tvs.dtfusion-3GDWW3ML.js +0 -34
- package/dist/tvs.dtitd-FER4H4UO.js +0 -34
- package/dist/tvs.dtsnvindel-ISEOJ5UA.js +0 -34
- package/dist/tvs.dtsv-JDML7EWE.js +0 -34
- package/dist/tvs.samplelst-MJTM6GSV.js +0 -98
- package/dist/tvs.termCollection-GMOXBJWF.js +0 -123
- package/dist/vocabulary-5EJMLXI2.js +0 -35
- package/dist/vocabulary-5EJMLXI2.js.map +0 -7
- package/dist/wsi.direct-IVPACPNT.js +0 -75
- /package/dist/{2dmaf-I4HBWRNQ.js.map → 2dmaf-6CEBP4SA.js.map} +0 -0
- /package/dist/{AIProjectAdmin-SZYSG7HR.js.map → AIProjectAdmin-2CKKFC3A.js.map} +0 -0
- /package/dist/{AggregateMatrix-U7HHALFR.js.map → AggregateMatrix-5TBUMFE5.js.map} +0 -0
- /package/dist/{AppHeader-O4RBZQZF.js.map → AppHeader-5YBPWF44.js.map} +0 -0
- /package/dist/{BoxPlot-NOXWAGX6.js.map → BoxPlot-UOJS5SJV.js.map} +0 -0
- /package/dist/{CorrelationVolcano-IJ5UT6N5.js.map → CorrelationVolcano-KX6JPZMT.js.map} +0 -0
- /package/dist/{Cuminc-NGUDAOAD.js.map → Cuminc-TLOOLZWR.js.map} +0 -0
- /package/dist/{DE-MIAHOI5J.js.map → DE-HUQLQ2Z3.js.map} +0 -0
- /package/dist/{DEinput-FYBSL2ER.js.map → DEinput-WWUISAF2.js.map} +0 -0
- /package/dist/{DifferentialAnalysis-I6S5YQXY.js.map → DifferentialAnalysis-6DTAGCEY.js.map} +0 -0
- /package/dist/{Disco-VLUBOZDC.js.map → Disco-P6ZLPYLF.js.map} +0 -0
- /package/dist/{Disco.UI-QQYWQEW7.js.map → Disco.UI-WGTMAFK2.js.map} +0 -0
- /package/dist/{DmrPlot-DFOBEN7A.js.map → DmrPlot-3FRU5KUK.js.map} +0 -0
- /package/dist/{GB-5FSXJMEZ.js.map → GB-NWOBARL3.js.map} +0 -0
- /package/dist/{GSEA-JISHQOVY.js.map → GSEA-DEEUAAMI.js.map} +0 -0
- /package/dist/{GeneExpInput-5YEX22VD.js.map → GeneExpInput-6QWGEAFV.js.map} +0 -0
- /package/dist/{Geomap-YVF6YBK5.js.map → Geomap-6HT2B7RH.js.map} +0 -0
- /package/dist/{HicApp-ZCMOOKTY.js.map → HicApp-PCNOUULF.js.map} +0 -0
- /package/dist/{IDCViewer-5ZNTAEUG.js.map → IDCViewer-H3QPXVM3.js.map} +0 -0
- /package/dist/{NumBinaryEditor-BEF5YCKI.js.map → NumBinaryEditor-IU6OLMKN.js.map} +0 -0
- /package/dist/{NumBinaryEditor.unit.spec-GCYZGHB2.js.map → NumBinaryEditor.unit.spec-YUPUILIV.js.map} +0 -0
- /package/dist/{NumContEditor-TUXPB6YJ.js.map → NumContEditor-KFDA76QN.js.map} +0 -0
- /package/dist/{NumContEditor.unit.spec-5CMHHWIP.js.map → NumContEditor.unit.spec-QBOT5QHU.js.map} +0 -0
- /package/dist/{NumCustomBinEditor-HS7RSGFV.js.map → NumCustomBinEditor-EOSTEXLB.js.map} +0 -0
- /package/dist/{NumCustomBinEditor.unit.spec-MM3JJXT4.js.map → NumCustomBinEditor.unit.spec-B46XWFYH.js.map} +0 -0
- /package/dist/{NumDiscreteEditor-ZL7PP6ZT.js.map → NumDiscreteEditor-Y4EAADXC.js.map} +0 -0
- /package/dist/{NumDiscreteEditor.unit.spec-OEWX2KJC.js.map → NumDiscreteEditor.unit.spec-SJGHLWSM.js.map} +0 -0
- /package/dist/{NumRegularBinEditor-YBXK7YV6.js.map → NumRegularBinEditor-3BNG7DIN.js.map} +0 -0
- /package/dist/{NumRegularBinEditor.unit.spec-FVHN4J5L.js.map → NumRegularBinEditor.unit.spec-KM45QXXG.js.map} +0 -0
- /package/dist/{NumSplineEditor-VN4XBTTI.js.map → NumSplineEditor-K4KPDC4S.js.map} +0 -0
- /package/dist/{NumSplineEditor.unit.spec-AI642DWP.js.map → NumSplineEditor.unit.spec-TKQP5XTS.js.map} +0 -0
- /package/dist/{NumericDensity-2KTY7DGH.js.map → NumericDensity-Z6JFVN3D.js.map} +0 -0
- /package/dist/{NumericDensity.unit.spec-6EA72A24.js.map → NumericDensity.unit.spec-YEYBVLEP.js.map} +0 -0
- /package/dist/{NumericHandler-62EN6AD3.js.map → NumericHandler-ITT6HMPN.js.map} +0 -0
- /package/dist/{NumericHandler.unit.spec-FXOJ2L2L.js.map → NumericHandler.unit.spec-QVONMXY4.js.map} +0 -0
- /package/dist/{ProteomeInput-MBBDXO2Z.js.map → ProteomeInput-PRS3DEMZ.js.map} +0 -0
- /package/dist/{RunChart2-RHZFHH4M.js.map → RunChart2-AMM2JFF5.js.map} +0 -0
- /package/dist/{SC-FAQXOHO4.js.map → SC-F7IE66VZ.js.map} +0 -0
- /package/dist/{Violin-2A3ICNBP.js.map → Violin-RJ6OJZ4F.js.map} +0 -0
- /package/dist/{Volcano-X5KGHLHZ.js.map → Volcano-BJA5HN5Y.js.map} +0 -0
- /package/dist/{WSIViewer-F2SD6LLP.js.map → WSIViewer-RJZGRUIR.js.map} +0 -0
- /package/dist/{Wsi-KAFAC3Q5.js.map → Wsi-DXP6KOQA.js.map} +0 -0
- /package/dist/{WsiSamplesPlot-VKPMLDZI.js.map → WsiSamplesPlot-2IAWV2B6.js.map} +0 -0
- /package/dist/{adSandbox-QKG5EA23.js.map → adSandbox-RGWOIV3W.js.map} +0 -0
- /package/dist/{animatedBubbleChart-ES62XWMN.js.map → animatedBubbleChart-J4Q2NAEW.js.map} +0 -0
- /package/dist/{app-2HLLOBTD.js.map → app-3QXNR4VG.js.map} +0 -0
- /package/dist/{app-GJL6K6V4.js.map → app-B4B7YNP3.js.map} +0 -0
- /package/dist/{bam-DCPAAVPX.js.map → bam-LRUMN45P.js.map} +0 -0
- /package/dist/{barchart-DCVGCEZO.js.map → barchart-L2G6GEHK.js.map} +0 -0
- /package/dist/{barchart2-5X57VSIN.js.map → barchart2-DWNVAZAJ.js.map} +0 -0
- /package/dist/{block-XYSUTBXJ.js.map → block-TVEVAXNP.js.map} +0 -0
- /package/dist/{block.init-5B27QKPU.js.map → block.init-YOHAKPRI.js.map} +0 -0
- /package/dist/{block.mds.expressionrank-Z7BGGPZ7.js.map → block.mds.expressionrank-PU6JH4W5.js.map} +0 -0
- /package/dist/{block.mds.geneboxplot-4U4UZH2J.js.map → block.mds.geneboxplot-WYYFDNE3.js.map} +0 -0
- /package/dist/{block.mds.junction-ZPCUEQZJ.js.map → block.mds.junction-4WCTL7Y4.js.map} +0 -0
- /package/dist/{block.mds.svcnv-OGGPBOL2.js.map → block.mds.svcnv-MR3VCYUW.js.map} +0 -0
- /package/dist/{block.svg-BWGAMNDS.js.map → block.svg-LR3Y4ZO7.js.map} +0 -0
- /package/dist/{block.tk.aicheck-XHHW7WST.js.map → block.tk.aicheck-A5AWKJZI.js.map} +0 -0
- /package/dist/{block.tk.ase-BZ2IL3CQ.js.map → block.tk.ase-AQBBAQEH.js.map} +0 -0
- /package/dist/{block.tk.bam-WRHOOWXN.js.map → block.tk.bam-QBTA2O3V.js.map} +0 -0
- /package/dist/{block.tk.bedgraphdot-B536STRA.js.map → block.tk.bedgraphdot-4ALZG2MY.js.map} +0 -0
- /package/dist/{block.tk.bigwig.ui-K5X3BSQC.js.map → block.tk.bigwig.ui-32W6XW37.js.map} +0 -0
- /package/dist/{block.tk.hicstraw-OYOKZ45W.js.map → block.tk.hicstraw-PKBHBAG2.js.map} +0 -0
- /package/dist/{block.tk.junction-S5JMMMR6.js.map → block.tk.junction-AO5CXUCU.js.map} +0 -0
- /package/dist/{block.tk.junction.textmatrixui-OLZY5BYR.js.map → block.tk.junction.textmatrixui-RORVUIPI.js.map} +0 -0
- /package/dist/{block.tk.ld-KINDO5UU.js.map → block.tk.ld-TNBSR4FT.js.map} +0 -0
- /package/dist/{block.tk.menu-3FNBVZ7J.js.map → block.tk.menu-QDJO54J5.js.map} +0 -0
- /package/dist/{block.tk.pgv-UHDY3T4G.js.map → block.tk.pgv-6222WWYR.js.map} +0 -0
- /package/dist/{brainRegions-YI7K4OVE.js.map → brainRegions-KTFH6DE2.js.map} +0 -0
- /package/dist/{bubbleHeatmap-EQ44CSG5.js.map → bubbleHeatmap-LNXZLFY6.js.map} +0 -0
- /package/dist/{cellTypeBubbleHeatmap-O3KL2YBF.js.map → cellTypeBubbleHeatmap-SRHUNX3S.js.map} +0 -0
- /package/dist/{chunk-7ROMS7YT.js.map → chunk-3TXVDBGN.js.map} +0 -0
- /package/dist/{chunk-I5KBI5PC.js.map → chunk-4HLHKBHP.js.map} +0 -0
- /package/dist/{chunk-4KUGV44F.js.map → chunk-5GG7Q2ZG.js.map} +0 -0
- /package/dist/{chunk-4GN3CSDT.js.map → chunk-5PMFCQKC.js.map} +0 -0
- /package/dist/{chunk-HENLCRVM.js.map → chunk-6X7PP7A4.js.map} +0 -0
- /package/dist/{chunk-6ZLCBVJA.js.map → chunk-A3EDLRUN.js.map} +0 -0
- /package/dist/{chunk-OGQMELRU.js.map → chunk-ACXFPMJP.js.map} +0 -0
- /package/dist/{chunk-JPQSDB2H.js.map → chunk-ASRW3UJ5.js.map} +0 -0
- /package/dist/{chunk-NVH5I6EP.js.map → chunk-BBILSUDX.js.map} +0 -0
- /package/dist/{chunk-EK7CQC3P.js.map → chunk-BOWI37X2.js.map} +0 -0
- /package/dist/{chunk-SACNULB3.js.map → chunk-BVA26EFK.js.map} +0 -0
- /package/dist/{chunk-BZ36NJHA.js.map → chunk-D5J57ENI.js.map} +0 -0
- /package/dist/{chunk-I56CSICA.js.map → chunk-E5BFGDLA.js.map} +0 -0
- /package/dist/{chunk-XXITHNR2.js.map → chunk-ECISCOPF.js.map} +0 -0
- /package/dist/{chunk-YCLNEB4L.js.map → chunk-ECLUUJVE.js.map} +0 -0
- /package/dist/{chunk-2OEMKKLP.js.map → chunk-EGDQ5I54.js.map} +0 -0
- /package/dist/{chunk-FCMHDCMO.js.map → chunk-ELNVTA7O.js.map} +0 -0
- /package/dist/{chunk-DLXMO6EK.js.map → chunk-F4PMOAQK.js.map} +0 -0
- /package/dist/{chunk-WVVH56ZU.js.map → chunk-FISQTHD4.js.map} +0 -0
- /package/dist/{chunk-GJFG2MML.js.map → chunk-HL6GJIOH.js.map} +0 -0
- /package/dist/{chunk-ZPFN3CYR.js.map → chunk-IGZAOCTU.js.map} +0 -0
- /package/dist/{chunk-IUA3PSTK.js.map → chunk-JMDJI7KM.js.map} +0 -0
- /package/dist/{chunk-VTYMSJGY.js.map → chunk-JQVA264Z.js.map} +0 -0
- /package/dist/{chunk-WEF6INPI.js.map → chunk-JRF7SRLB.js.map} +0 -0
- /package/dist/{chunk-25RPYQRT.js.map → chunk-KLWSW6CC.js.map} +0 -0
- /package/dist/{chunk-AVR4LFOO.js.map → chunk-KNNSOOTG.js.map} +0 -0
- /package/dist/{chunk-BY5B5BM5.js.map → chunk-KTPXQH2N.js.map} +0 -0
- /package/dist/{chunk-J3TIXBCS.js.map → chunk-LGKXSWY4.js.map} +0 -0
- /package/dist/{chunk-PBRW6QLS.js.map → chunk-LP2GIXVK.js.map} +0 -0
- /package/dist/{chunk-AT7HWXMW.js.map → chunk-MBHERRJR.js.map} +0 -0
- /package/dist/{chunk-MT5MHYL3.js.map → chunk-MLYQDJUQ.js.map} +0 -0
- /package/dist/{chunk-TRWFL52W.js.map → chunk-NBGDLLMX.js.map} +0 -0
- /package/dist/{chunk-D27C6HZW.js.map → chunk-P3JEXVBT.js.map} +0 -0
- /package/dist/{chunk-TMZZ4Z7L.js.map → chunk-PZPPJY4K.js.map} +0 -0
- /package/dist/{chunk-SEJGXC2L.js.map → chunk-Q6JF4ZLT.js.map} +0 -0
- /package/dist/{chunk-ALXSSRGI.js.map → chunk-QF5IH7PC.js.map} +0 -0
- /package/dist/{chunk-S2D6GH6D.js.map → chunk-QJ6SO7CF.js.map} +0 -0
- /package/dist/{chunk-WZTZJNSG.js.map → chunk-QQUOVIOM.js.map} +0 -0
- /package/dist/{chunk-WO4CL5JL.js.map → chunk-R3OBOAOF.js.map} +0 -0
- /package/dist/{chunk-VP2FPPLA.js.map → chunk-SPDNUC76.js.map} +0 -0
- /package/dist/{chunk-5RHE36DQ.js.map → chunk-T3663ZQL.js.map} +0 -0
- /package/dist/{chunk-BZKHE26Z.js.map → chunk-TSK4ZTFK.js.map} +0 -0
- /package/dist/{chunk-CBRZIMNF.js.map → chunk-USW6WRDZ.js.map} +0 -0
- /package/dist/{chunk-34AV6DED.js.map → chunk-WBMYHNKH.js.map} +0 -0
- /package/dist/{chunk-MEJMWIBD.js.map → chunk-X46LAU4Q.js.map} +0 -0
- /package/dist/{chunk-254KEDDH.js.map → chunk-XE6E526E.js.map} +0 -0
- /package/dist/{chunk-55PGOBTR.js.map → chunk-XWCWBHLB.js.map} +0 -0
- /package/dist/{chunk-6456HESK.js.map → chunk-YCECQV3T.js.map} +0 -0
- /package/dist/{chunk-MECQLU4J.js.map → chunk-Z4NADGZX.js.map} +0 -0
- /package/dist/{chunk-6THPWBBU.js.map → chunk-Z53KOPRJ.js.map} +0 -0
- /package/dist/{cohort-JCMVMOBQ.js.map → cohort-U7M6Q2UX.js.map} +0 -0
- /package/dist/{condition-SHRWEMG7.js.map → condition-EGAV2PMJ.js.map} +0 -0
- /package/dist/{controls-EKIHLQS6.js.map → controls-PTMYWUZV.js.map} +0 -0
- /package/dist/{controls.config-WSVX6UC6.js.map → controls.config-DOA6PTP2.js.map} +0 -0
- /package/dist/{correlation-ALFFZLKD.js.map → correlation-Y3EL6GB7.js.map} +0 -0
- /package/dist/{customdata.inputui-L2UAIU6I.js.map → customdata.inputui-4NDDG6FL.js.map} +0 -0
- /package/dist/{dataDownload-73N5364T.js.map → dataDownload-EQGUAOK2.js.map} +0 -0
- /package/dist/{databrowser.ui-NTOGXDYE.js.map → databrowser.ui-ABGOJUWQ.js.map} +0 -0
- /package/dist/{dictionary-CUAU2X6Q.js.map → dictionary-YOLLEDE5.js.map} +0 -0
- /package/dist/{dnaMethylation-AGWAGXVD.js.map → dnaMethylation-JZT63UHO.js.map} +0 -0
- /package/dist/{dnaMethylation.integration.spec-K22XXOU4.js.map → dnaMethylation.integration.spec-EATCABJW.js.map} +0 -0
- /package/dist/{dofetch-BVJ77SP7.js.map → dofetch-YNBIUFV5.js.map} +0 -0
- /package/dist/{e2pca-4HIJWLSC.js.map → e2pca-RD6COCRL.js.map} +0 -0
- /package/dist/{ep-U4RGH62P.js.map → ep-BAI7WUET.js.map} +0 -0
- /package/dist/{expclust.gdc.spec-JJGGQDQK.js.map → expclust.gdc.spec-LKV2CQA5.js.map} +0 -0
- /package/dist/{facet-NNUPVXCG.js.map → facet-X3SXQIAC.js.map} +0 -0
- /package/dist/{gb-2MYXJEMY.js.map → gb-K324K7XB.js.map} +0 -0
- /package/dist/{geneExpClustering-6ORRRH43.js.map → geneExpClustering-BJD5U3KG.js.map} +0 -0
- /package/dist/{geneExpression-4JVWKJWP.js.map → geneExpression-2TK3XLZ5.js.map} +0 -0
- /package/dist/{geneExpression-MARWAIHW.js.map → geneExpression-F6NRTHZ4.js.map} +0 -0
- /package/dist/{geneExpression.unit.spec-3CQTUSDK.js.map → geneExpression.unit.spec-IFZN3J6A.js.map} +0 -0
- /package/dist/{geneORA-M2L2YEX3.js.map → geneORA-DUEP735U.js.map} +0 -0
- /package/dist/{geneRanking-S2B3LSTU.js.map → geneRanking-LURDNT7L.js.map} +0 -0
- /package/dist/{geneVariant-D2ANGINP.js.map → geneVariant-EAVCWQAZ.js.map} +0 -0
- /package/dist/{geneVariant.integration.spec-62NJS7GD.js.map → geneVariant.integration.spec-LHL4ERFO.js.map} +0 -0
- /package/dist/{genefusion.ui-4ZZNKANU.js.map → genefusion.ui-4T5R7DT7.js.map} +0 -0
- /package/dist/{geneset-QCLFANPD.js.map → geneset-3PWXPBG2.js.map} +0 -0
- /package/dist/{genomeBrowser.spec-BV5M6JFN.js.map → genomeBrowser.spec-5SEN7R2P.js.map} +0 -0
- /package/dist/{grin2-J4VDS2JT.js.map → grin2-EXBG7TMS.js.map} +0 -0
- /package/dist/{grin2-K5G3N5XP.js.map → grin2-XIXVFVWO.js.map} +0 -0
- /package/dist/{geneVariant-T4NG72OL.js.map → hierCluster-5XQIWXAY.js.map} +0 -0
- /package/dist/{hierCluster-FMK524WF.js.map → hierCluster-I4TAQWPF.js.map} +0 -0
- /package/dist/{hierCluster-XF7ZWVKD.js.map → hierCluster.config-T7HVAWES.js.map} +0 -0
- /package/dist/{hierCluster.integration.spec-NSLTJBL4.js.map → hierCluster.integration.spec-XWX43K4D.js.map} +0 -0
- /package/dist/{hierCluster.config-LYAQCO3L.js.map → hierCluster.interactivity-MYIDHFSL.js.map} +0 -0
- /package/dist/{hierCluster.interactivity-VKAOR2DR.js.map → hierCluster.renderers-YRXA5ZUK.js.map} +0 -0
- /package/dist/{imagePlot-IPTIFVLT.js.map → imagePlot-4JQB6JUG.js.map} +0 -0
- /package/dist/{hierCluster.renderers-6C5F7LRL.js.map → importPlot-D3MXCCLN.js.map} +0 -0
- /package/dist/{importPlot-V3P6DCUR.js.map → isoformExpression-WNGGUVIZ.js.map} +0 -0
- /package/dist/{isoformExpression.unit.spec-IYZWSLO5.js.map → isoformExpression.unit.spec-NVJ5TIKM.js.map} +0 -0
- /package/dist/{isoformExpression-6IIPJI4M.js.map → junction-O7N57JE3.js.map} +0 -0
- /package/dist/{junction.unit.spec-M4EN7KPG.js.map → junction.unit.spec-Z63DRTRR.js.map} +0 -0
- /package/dist/{junction-E6FB2OP4.js.map → launch.adhoc-MBDRXD3B.js.map} +0 -0
- /package/dist/{leftlabel.sample-5WTK5NBD.js.map → leftlabel.sample-IG6FOQ26.js.map} +0 -0
- /package/dist/{lollipop-L64ZTEEX.js.map → lollipop-ZUYBLPGN.js.map} +0 -0
- /package/dist/{maf-QLNFANWO.js.map → maf-QOS5LURG.js.map} +0 -0
- /package/dist/{maftimeline-U7FMTMTV.js.map → maftimeline-FEHP2J55.js.map} +0 -0
- /package/dist/{launch.adhoc-SU5L2YXN.js.map → matrix-BG4J4RXA.js.map} +0 -0
- /package/dist/{matrix-GFVK3PEB.js.map → matrix-PX4LWTGN.js.map} +0 -0
- /package/dist/{matrix-HFJQGPJJ.js.map → matrix.cells-PTIDQVCI.js.map} +0 -0
- /package/dist/{matrix.cells-5JKTBI3X.js.map → matrix.config-NHW7BLIE.js.map} +0 -0
- /package/dist/{matrix.config-QPTQ22RR.js.map → matrix.data-FMIQRXOA.js.map} +0 -0
- /package/dist/{matrix.data-MXIUMSRR.js.map → matrix.dom-4S2UYJOU.js.map} +0 -0
- /package/dist/{matrix.dom-ENBFB4CW.js.map → matrix.groups-QMID5XAO.js.map} +0 -0
- /package/dist/{matrix.integration.spec-X4HM67TN.js.map → matrix.integration.spec-H6T7KP5R.js.map} +0 -0
- /package/dist/{matrix.groups-6DYTBVGR.js.map → matrix.interactivity-WQUO25HB.js.map} +0 -0
- /package/dist/{matrix.interactivity-QTB56LXE.js.map → matrix.layout-CTPVZZ34.js.map} +0 -0
- /package/dist/{matrix.layout-VQAORIIH.js.map → matrix.legend-K6EYUN6L.js.map} +0 -0
- /package/dist/{matrix.legend-SDJXYNHE.js.map → matrix.renderers-5DIAUY6R.js.map} +0 -0
- /package/dist/{matrix.renderers-6PMYIP2S.js.map → matrix.serieses-LRMN2J52.js.map} +0 -0
- /package/dist/{matrix.serieses-WWY7474U.js.map → matrix.sort-RGAGEA6Z.js.map} +0 -0
- /package/dist/{matrix.sort.unit.spec-3RM7V6CS.js.map → matrix.sort.unit.spec-RGICZZJL.js.map} +0 -0
- /package/dist/{matrix.sorterUi.unit.spec-YOV6FBRT.js.map → matrix.sorterUi.unit.spec-45QPEGWE.js.map} +0 -0
- /package/dist/{mavb-PJA76T7F.js.map → mavb-VEIVB62L.js.map} +0 -0
- /package/dist/{mds.fimo-GW7XPJGQ.js.map → mds.fimo-BG4LTWFB.js.map} +0 -0
- /package/dist/{mds.samplescatterplot-ZAIEWPO4.js.map → mds.samplescatterplot-PWADJZ2J.js.map} +0 -0
- /package/dist/{mds.survivalplot-ETLLFDWR.js.map → mds.survivalplot-BX4HZ23K.js.map} +0 -0
- /package/dist/{multivalue-AZPAQJQD.js.map → multivalue-OZALSBFW.js.map} +0 -0
- /package/dist/{numericDictTermCluster-KOJODGZT.js.map → numericDictTermCluster-7PGJ7KV4.js.map} +0 -0
- /package/dist/{oncomatrix-2TRXETOJ.js.map → oncomatrix-Q2EQZPLS.js.map} +0 -0
- /package/dist/{oncomatrix.spec-DOVKLS24.js.map → oncomatrix.spec-YEQOQRPW.js.map} +0 -0
- /package/dist/{plot.2dvaf-RQN6QADW.js.map → plot.2dvaf-NJSB3HNH.js.map} +0 -0
- /package/dist/{matrix.sort-V46C2MAZ.js.map → plot.app-AEUR6XGI.js.map} +0 -0
- /package/dist/{plot.barplot-46QRWJOX.js.map → plot.barplot-OXN2P5KL.js.map} +0 -0
- /package/dist/{plot.boxplot-54J4UWQX.js.map → plot.boxplot-2KHEVVFE.js.map} +0 -0
- /package/dist/{plot.brainImaging-Y32KQFLS.js.map → plot.brainImaging-JWDX4BZG.js.map} +0 -0
- /package/dist/{plot.disco-4R5J7Z5S.js.map → plot.disco-LUFC5GGC.js.map} +0 -0
- /package/dist/{plot.ssgq-6LCKYRYD.js.map → plot.ssgq-FMM3IRNA.js.map} +0 -0
- /package/dist/{plot.vaf2cov-UCBH4NSC.js.map → plot.vaf2cov-K5TAQUC5.js.map} +0 -0
- /package/dist/{plot.wsi-DAC7NUQE.js.map → plot.wsi-CNQCNZ4Z.js.map} +0 -0
- /package/dist/{polar2-JKV74QV5.js.map → polar2-AB6SVYRS.js.map} +0 -0
- /package/dist/{profileForms-VDYCFH4M.js.map → profileForms-AIEHZ4GC.js.map} +0 -0
- /package/dist/{plot.app-MOIVGIS6.js.map → profilePlot-PZDFGXKZ.js.map} +0 -0
- /package/dist/{proteinView-A3EM6OR5.js.map → proteinView-7GWHQYXC.js.map} +0 -0
- /package/dist/{pseudbulk.unit.spec-CUMTLAH7.js.map → pseudbulk.unit.spec-NFT4VNTI.js.map} +0 -0
- /package/dist/{profilePlot-PR3LVRYU.js.map → pseudobulk-WDGWTXW4.js.map} +0 -0
- /package/dist/{pseudobulk-5E5MSMU3.js.map → qualitative-PZYJENE7.js.map} +0 -0
- /package/dist/{radar2-A5OYMORS.js.map → radar2-QHRGH3YS.js.map} +0 -0
- /package/dist/{radarFacility2-4TPJB6M4.js.map → radarFacility2-2JD26FL6.js.map} +0 -0
- /package/dist/{qualitative-WPXUBISK.js.map → render-YA4Z56LT.js.map} +0 -0
- /package/dist/{report-NCJOTYIC.js.map → report-2NUKFJTF.js.map} +0 -0
- /package/dist/{render-XQBWWS33.js.map → sampleView-2XVPJTVR.js.map} +0 -0
- /package/dist/{samplelst-FV7BAUN5.js.map → samplelst-DMILFDT5.js.map} +0 -0
- /package/dist/{samplematrix-DFD3PNI4.js.map → samplematrix-LYA5XTUM.js.map} +0 -0
- /package/dist/{sc-GIMTDVLG.js.map → sc-CM2C34MN.js.map} +0 -0
- /package/dist/{scatter-4GJ5HKUY.js.map → scatter-C3CH3HTF.js.map} +0 -0
- /package/dist/{scatter-P3ISZB3R.js.map → scatter-GO6LV6NY.js.map} +0 -0
- /package/dist/{selectGenomeWithTklst-ZZ4CEHDU.js.map → selectGenomeWithTklst-5C7UBTGZ.js.map} +0 -0
- /package/dist/{sampleView-2PUSMG4W.js.map → singleCellCellType-EZYESBVZ.js.map} +0 -0
- /package/dist/{singleCellCellType.unit.spec-JNEIICK5.js.map → singleCellCellType.unit.spec-DB6FM4XR.js.map} +0 -0
- /package/dist/{singleCellCellType-CEERCVTR.js.map → singleCellGeneExpression-DZLEFPW4.js.map} +0 -0
- /package/dist/{singleCellGeneExpression.unit.spec-CGRZGY66.js.map → singleCellGeneExpression.unit.spec-ZTBK3V43.js.map} +0 -0
- /package/dist/{singleCellGeneExpression-G5B7DDES.js.map → singleCellPlot-VF4TZ4FT.js.map} +0 -0
- /package/dist/{singlecell-IPTSIKNA.js.map → singlecell-2MHROPBN.js.map} +0 -0
- /package/dist/{singlecell-VB4KLPJF.js.map → singlecell-GPAFNOUZ.js.map} +0 -0
- /package/dist/{singleCellPlot-US5KTHS4.js.map → snp-K4EAEVW4.js.map} +0 -0
- /package/dist/{snp.unit.spec-Q537NGVG.js.map → snp.unit.spec-BUVQLVOY.js.map} +0 -0
- /package/dist/{snplocus-BV6WJTVP.js.map → snplocus-GEVISN6Z.js.map} +0 -0
- /package/dist/{spliceevent.a53ss.diagram-3BUQVK4Q.js.map → spliceevent.a53ss.diagram-5UPWNAZF.js.map} +0 -0
- /package/dist/{spliceevent.exonskip.diagram-CQZ2DFQ5.js.map → spliceevent.exonskip.diagram-7TKAQURC.js.map} +0 -0
- /package/dist/{spliceevent.noeventdiagram-QAEPR6LD.js.map → spliceevent.noeventdiagram-CDXZLR3Z.js.map} +0 -0
- /package/dist/{snp-6V2SCCRN.js.map → ssGSEA-NMCJUQXT.js.map} +0 -0
- /package/dist/{ssGSEA.unit.spec-A337IMC7.js.map → ssGSEA.unit.spec-3FQALTPQ.js.map} +0 -0
- /package/dist/{stattable-J4ZQKJFM.js.map → stattable-2RXQPWKK.js.map} +0 -0
- /package/dist/{summarizeCnvGeneexp-76UJXLA4.js.map → summarizeCnvGeneexp-4BQS5AFM.js.map} +0 -0
- /package/dist/{summarizeGeneexpSurvival-ZUEHXA2R.js.map → summarizeGeneexpSurvival-HTBZQFB5.js.map} +0 -0
- /package/dist/{summarizeMutationCnv-EBCBVMG6.js.map → summarizeMutationCnv-XUWZGPCM.js.map} +0 -0
- /package/dist/{ssGSEA-XNI5S7AC.js.map → summarizeMutationDiagnosis-QUJX42TO.js.map} +0 -0
- /package/dist/{summarizeMutationSurvival-QRFMJLLO.js.map → summarizeMutationSurvival-3R47TTR6.js.map} +0 -0
- /package/dist/{summarizeMutationDiagnosis-VLFI2ZIZ.js.map → summary-6UUB63QR.js.map} +0 -0
- /package/dist/{summary.integration.spec-52WP6SNY.js.map → summary.integration.spec-JJDE6SRV.js.map} +0 -0
- /package/dist/{summaryInput-WUJNHCGH.js.map → summaryInput-JG4AW6FW.js.map} +0 -0
- /package/dist/{sunburst-IJ3ZG2BC.js.map → sunburst-YKB42RZX.js.map} +0 -0
- /package/dist/{survival-SQRYWGWZ.js.map → survival-3IFFTDQA.js.map} +0 -0
- /package/dist/{survival-F2B5JKOO.js.map → survival-HOFNJENX.js.map} +0 -0
- /package/dist/{svgraph-HVCMF6KI.js.map → svgraph-WFEY4ZIZ.js.map} +0 -0
- /package/dist/{svmr-PROHTMTP.js.map → svmr-44EIX7YD.js.map} +0 -0
- /package/dist/{table-3E64OJNV.js.map → table-6MKVJUNC.js.map} +0 -0
- /package/dist/{termCollection-WKT6ESMI.js.map → termCollection-6JBVQL6Y.js.map} +0 -0
- /package/dist/{summary-U3YKEMZC.js.map → termCollection-TTELZVC5.js.map} +0 -0
- /package/dist/{termCollection.unit.spec-XMOCMVER.js.map → termCollection.unit.spec-6Z7X646L.js.map} +0 -0
- /package/dist/{termCollection-MUH7P6B5.js.map → termCollectionFractionSelection-5DVIJBM5.js.map} +0 -0
- /package/dist/{termCollectionFractionSelection.unit.spec-MG7E3EIZ.js.map → termCollectionFractionSelection.unit.spec-3HIM5BIF.js.map} +0 -0
- /package/dist/{termCollectionFractionSelection-P5G6WIJJ.js.map → tk-HSYWJCGQ.js.map} +0 -0
- /package/dist/{tk-HWUPUGOS.js.map → tk-PNOVG2XS.js.map} +0 -0
- /package/dist/{tp.ui-RRB5MJRD.js.map → tp.ui-COBBSUPB.js.map} +0 -0
- /package/dist/{tk-SBM2GN3S.js.map → tvs.dt-35AKURFI.js.map} +0 -0
- /package/dist/{tvs.dtcnv.categorical-7RJPQKMX.js.map → tvs.dtcnv.categorical-3EHXYROL.js.map} +0 -0
- /package/dist/{tvs.dtcnv.continuous-FW4ZXIYY.js.map → tvs.dtcnv.continuous-AXQ2GU6S.js.map} +0 -0
- /package/dist/{tvs.dtfusion-3GDWW3ML.js.map → tvs.dtfusion-PLJIMPNX.js.map} +0 -0
- /package/dist/{tvs.dtitd-FER4H4UO.js.map → tvs.dtitd-JS6RFBV5.js.map} +0 -0
- /package/dist/{tvs.dtsnvindel-ISEOJ5UA.js.map → tvs.dtsnvindel-MDEM5MPT.js.map} +0 -0
- /package/dist/{tvs.dtsv-JDML7EWE.js.map → tvs.dtsv-OU756YLO.js.map} +0 -0
- /package/dist/{tvs.samplelst-MJTM6GSV.js.map → tvs.samplelst-5NDICES4.js.map} +0 -0
- /package/dist/{tvs.termCollection-GMOXBJWF.js.map → tvs.termCollection-5URPDPH6.js.map} +0 -0
- /package/dist/{tvs.dt-I2ECKHQ2.js.map → vocabulary-CHCVMPK5.js.map} +0 -0
- /package/dist/{wsi.direct-IVPACPNT.js.map → wsi.direct-JSKV4H4X.js.map} +0 -0
|
@@ -0,0 +1,518 @@
|
|
|
1
|
+
import {
|
|
2
|
+
colorDelta,
|
|
3
|
+
getInterpolatedDomainRange,
|
|
4
|
+
removeOutliers
|
|
5
|
+
} from "./chunk-D5PX2UDG.js";
|
|
6
|
+
import {
|
|
7
|
+
variantFilterLabel
|
|
8
|
+
} from "./chunk-EO6M3LY3.js";
|
|
9
|
+
import {
|
|
10
|
+
dtcnv
|
|
11
|
+
} from "./chunk-4QBRVM4V.js";
|
|
12
|
+
import {
|
|
13
|
+
copyMerge
|
|
14
|
+
} from "./chunk-H6INPPUC.js";
|
|
15
|
+
import {
|
|
16
|
+
Blues_default,
|
|
17
|
+
Reds_default,
|
|
18
|
+
axisBottom,
|
|
19
|
+
axisLeft,
|
|
20
|
+
axisRight,
|
|
21
|
+
axisTop
|
|
22
|
+
} from "./chunk-4ZL6IBXM.js";
|
|
23
|
+
import {
|
|
24
|
+
linear
|
|
25
|
+
} from "./chunk-OZVWP4ZR.js";
|
|
26
|
+
import {
|
|
27
|
+
roundValueAuto
|
|
28
|
+
} from "./chunk-TLT4YIG3.js";
|
|
29
|
+
import {
|
|
30
|
+
__export
|
|
31
|
+
} from "./chunk-HFNDKYVF.js";
|
|
32
|
+
|
|
33
|
+
// plots/matrix/matrix.layout.js
|
|
34
|
+
var matrix_layout_exports = {};
|
|
35
|
+
__export(matrix_layout_exports, {
|
|
36
|
+
getMaxGrpLabelWidth: () => getMaxGrpLabelWidth,
|
|
37
|
+
setAutoDimensions: () => setAutoDimensions,
|
|
38
|
+
setLabelsAndScales: () => setLabelsAndScales,
|
|
39
|
+
setLayout: () => setLayout
|
|
40
|
+
});
|
|
41
|
+
var MINCOLWSPACED = 7;
|
|
42
|
+
function setAutoDimensions(xOffset) {
|
|
43
|
+
const m = this.state.config.settings.matrix;
|
|
44
|
+
if (!this.autoDimensions) this.autoDimensions = /* @__PURE__ */ new Set();
|
|
45
|
+
if (!m.colw) this.autoDimensions.add("colw");
|
|
46
|
+
else this.autoDimensions.delete("colw");
|
|
47
|
+
if (!m.rowh) this.autoDimensions.add("rowh");
|
|
48
|
+
else this.autoDimensions.delete("rowh");
|
|
49
|
+
const s = this.settings.matrix;
|
|
50
|
+
this.computedSettings = {
|
|
51
|
+
useCanvas: this.sampleOrder.length > m.svgCanvasSwitch
|
|
52
|
+
};
|
|
53
|
+
if (s.availContentWidth) {
|
|
54
|
+
this.availContentWidth = s.availContentWidth;
|
|
55
|
+
} else {
|
|
56
|
+
let boundingWidth = this.dom.contentNode.getBoundingClientRect().width;
|
|
57
|
+
if (boundingWidth < 600) {
|
|
58
|
+
boundingWidth = window.document.body.clientWidth;
|
|
59
|
+
}
|
|
60
|
+
const maxGrpLabelWidth = this.getMaxGrpLabelWidth();
|
|
61
|
+
const padding = Math.max(65, maxGrpLabelWidth);
|
|
62
|
+
const hcw = this.state.config.settings.hierCluster?.xDendrogramHeight || 0;
|
|
63
|
+
this.availContentWidth = boundingWidth - padding - s.margin.right - xOffset - hcw;
|
|
64
|
+
}
|
|
65
|
+
let colwSpaced, colwNoSpace;
|
|
66
|
+
if (this.autoDimensions.has("colw")) {
|
|
67
|
+
const totalColgspace = s.colgspace * Math.max(0, this.visibleSampleGrps.size - 1);
|
|
68
|
+
const tentativeGaps = this.sampleOrder.length * s.colspace + totalColgspace;
|
|
69
|
+
const spacedColw = (this.availContentWidth - tentativeGaps) / this.sampleOrder.length;
|
|
70
|
+
const constrainedMINCOLWSPACED = Math.max(s.colwMin, Math.min(MINCOLWSPACED, s.colwMax));
|
|
71
|
+
colwSpaced = Math.max(constrainedMINCOLWSPACED, Math.min(spacedColw, s.colwMax));
|
|
72
|
+
const noSpacedColw = (this.availContentWidth - totalColgspace) / this.sampleOrder.length;
|
|
73
|
+
colwNoSpace = Math.max(s.colwMin, Math.min(noSpacedColw, s.colwMax));
|
|
74
|
+
this.computedSettings.colw = colwSpaced <= MINCOLWSPACED ? colwNoSpace : colwSpaced;
|
|
75
|
+
this.computedSettings.zoomMin = s.colwMin / this.computedSettings.colw;
|
|
76
|
+
this.computedSettings.zoomMax = s.colwMax / this.computedSettings.colw;
|
|
77
|
+
} else {
|
|
78
|
+
colwSpaced = m.colw;
|
|
79
|
+
colNoSpace = m.colw;
|
|
80
|
+
this.computedSettings.colw = m.colw;
|
|
81
|
+
this.computedSettings.zoomMin = s.colwMin / m.colw;
|
|
82
|
+
this.computedSettings.zoomMax = s.colwMax / m.colw;
|
|
83
|
+
}
|
|
84
|
+
const { colw } = this.computedSettings;
|
|
85
|
+
this.computedSettings.colspace = colw === colwNoSpace && colwSpaced < colwNoSpace || colw * s.zoomLevel < MINCOLWSPACED ? 0 : s.colspace;
|
|
86
|
+
const hch = this.state.config.settings.hierCluster?.yDendrogramHeight || 0;
|
|
87
|
+
const availHeight = s.availContentHeight || screen.availHeight - hch;
|
|
88
|
+
this.computedSettings.clusterRowh = Math.min(
|
|
89
|
+
s.rowhMax,
|
|
90
|
+
Math.max(s.rowhMin, Math.floor(availHeight / this.numClusterTerms))
|
|
91
|
+
);
|
|
92
|
+
copyMerge(this.settings.matrix, this.computedSettings);
|
|
93
|
+
}
|
|
94
|
+
function getMaxGrpLabelWidth() {
|
|
95
|
+
const s = this.settings.matrix;
|
|
96
|
+
const g = this.dom.svg.append("g").attr("opacity", 0.01);
|
|
97
|
+
let maxWidth = 0;
|
|
98
|
+
for (const grp of this.termGroups) {
|
|
99
|
+
const grpLabel = !grp.name ? "" : grp.name.length <= s.termGrpLabelMaxChars ? grp.name : grp.name.slice(0, s.termGrpLabelMaxChars) + "\u2026";
|
|
100
|
+
const text = g.append("text").text(grpLabel).attr("font-size", 12);
|
|
101
|
+
const box = text.node().getBBox();
|
|
102
|
+
if (maxWidth < box.width) maxWidth = box.width;
|
|
103
|
+
}
|
|
104
|
+
g.remove();
|
|
105
|
+
return maxWidth;
|
|
106
|
+
}
|
|
107
|
+
function setLabelsAndScales() {
|
|
108
|
+
const s = this.settings.matrix;
|
|
109
|
+
this.cnvValues = [];
|
|
110
|
+
const ht = s.transpose ? s.colw : s.rowh;
|
|
111
|
+
const grpTotals = {};
|
|
112
|
+
const processedLabels = { sampleGrpByName: {}, termGrpByName: {} };
|
|
113
|
+
let totalHtAdjustments = 0;
|
|
114
|
+
for (const t of this.termOrder) {
|
|
115
|
+
const countedSamples = /* @__PURE__ */ new Set();
|
|
116
|
+
t.counts = { samples: 0, hits: 0 };
|
|
117
|
+
const renderedContinuousVs = [];
|
|
118
|
+
let hasMixedValues = false;
|
|
119
|
+
if (t.tw.term.type == "termCollection") {
|
|
120
|
+
t.counts.minval = 0;
|
|
121
|
+
t.counts.maxval = 0;
|
|
122
|
+
}
|
|
123
|
+
t.counts.subGroupCounts = {};
|
|
124
|
+
for (const group of this.sampleGroups) {
|
|
125
|
+
t.counts.subGroupCounts[group.name] = {
|
|
126
|
+
samplesTotal: 0,
|
|
127
|
+
// number of counted (not Blank or WT) samples
|
|
128
|
+
classes: {}
|
|
129
|
+
// number of each class
|
|
130
|
+
};
|
|
131
|
+
if (t.tw.term.type == "geneVariant") {
|
|
132
|
+
t.counts.subGroupCounts[group.name].samplesNotTested = 0;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
if (!processedLabels.termGrpByName[t.grp.name || ""]) {
|
|
136
|
+
const name = t.grp.name || "";
|
|
137
|
+
t.grp.label = name.length <= s.termGrpLabelMaxChars ? name : name.slice(0, s.termGrpLabelMaxChars) + "\u2026";
|
|
138
|
+
processedLabels.termGrpByName[name] = t.grp.label;
|
|
139
|
+
}
|
|
140
|
+
for (const sample of this.sampleOrder) {
|
|
141
|
+
if (countedSamples.has(sample.row.sample)) continue;
|
|
142
|
+
const name = sample.grp.name || "";
|
|
143
|
+
if (!(name in processedLabels.sampleGrpByName)) {
|
|
144
|
+
sample.grp.label = name.length <= s.sampleGrpLabelMaxChars ? name : name.slice(0, s.sampleGrpLabelMaxChars) + "\u2026";
|
|
145
|
+
if (this.config.divideBy) sample.grp.label += ` (${sample.grp.lst.length})`;
|
|
146
|
+
processedLabels.sampleGrpByName[name] = sample.grp.label;
|
|
147
|
+
}
|
|
148
|
+
const sampleName = sample.row._ref_.label || "";
|
|
149
|
+
sample.label = sampleName.length <= s.collabelmaxchars ? sampleName : sampleName.slice(0, s.collabelmaxchars) + "\u2026";
|
|
150
|
+
const anno = sample.row[t.tw.$id];
|
|
151
|
+
if (!anno) continue;
|
|
152
|
+
if (t.tw.term.type == "termCollection" && anno.hasMixedValues) {
|
|
153
|
+
hasMixedValues = true;
|
|
154
|
+
}
|
|
155
|
+
if (t.tw.term.type == "termCollection" && anno.values) {
|
|
156
|
+
for (const val of anno.values) {
|
|
157
|
+
const pct = val.value;
|
|
158
|
+
if (pct > 0) {
|
|
159
|
+
const cumSum = val.pre_val_sum + pct;
|
|
160
|
+
if (!("maxval" in t.counts) || t.counts.maxval < cumSum) {
|
|
161
|
+
t.counts.maxval = cumSum;
|
|
162
|
+
}
|
|
163
|
+
} else if (pct < 0) {
|
|
164
|
+
const cumSum = val.pre_val_sum + pct;
|
|
165
|
+
if (!("minval" in t.counts) || t.counts.minval > cumSum) {
|
|
166
|
+
t.counts.minval = cumSum;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
const { filteredValues, countedValues, renderedValues } = this.classifyValues(
|
|
172
|
+
anno,
|
|
173
|
+
t.tw,
|
|
174
|
+
t.grp,
|
|
175
|
+
this.settings.matrix,
|
|
176
|
+
sample.row
|
|
177
|
+
);
|
|
178
|
+
anno.filteredValues = filteredValues;
|
|
179
|
+
anno.countedValues = countedValues;
|
|
180
|
+
anno.renderedValues = renderedValues;
|
|
181
|
+
if (anno.countedValues?.length) {
|
|
182
|
+
t.counts.samples += 1;
|
|
183
|
+
t.counts.hits += anno.countedValues.length;
|
|
184
|
+
if (t.tw.q?.mode == "continuous") {
|
|
185
|
+
const v = anno.value;
|
|
186
|
+
if (!t.tw.term.values?.[v]?.uncomputable) {
|
|
187
|
+
if (!("minval" in t.counts) || t.counts.minval > v) t.counts.minval = v;
|
|
188
|
+
if (!("maxval" in t.counts) || t.counts.maxval < v) t.counts.maxval = v;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
if (t.tw.term.type == "geneVariant" && anno.values) {
|
|
192
|
+
for (const val of anno.values) {
|
|
193
|
+
if (val.dt == dtcnv && "value" in val && !s.ignoreCnvValues) {
|
|
194
|
+
const v = val.value;
|
|
195
|
+
this.cnvValues.push(v);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
if (t.tw.q?.mode == "continuous" && renderedValues?.length && t.grp.type != "hierCluster") {
|
|
201
|
+
renderedContinuousVs.push(
|
|
202
|
+
t.tw.term.valueConversion ? t.tw.term.valueConversion.scaleFactor * (renderedValues[0].value || renderedValues[0]) : renderedValues[0].value || renderedValues[0]
|
|
203
|
+
);
|
|
204
|
+
}
|
|
205
|
+
const subGroup = t.counts.subGroupCounts?.[sample.grp.name];
|
|
206
|
+
const countedValuesNoSkip = anno.filteredValues.filter((v) => {
|
|
207
|
+
if (t.tw.term.type == "geneVariant") {
|
|
208
|
+
if (v.class == "WT" || v.class == "Blank") return false;
|
|
209
|
+
}
|
|
210
|
+
return true;
|
|
211
|
+
});
|
|
212
|
+
if (countedValuesNoSkip.length) {
|
|
213
|
+
if (t.tw.term.type == "geneVariant") {
|
|
214
|
+
let sampleCounted = false;
|
|
215
|
+
for (const countedValue of countedValuesNoSkip) {
|
|
216
|
+
if (s.geneVariantCountSamplesSkipMclass.includes(countedValue.class)) {
|
|
217
|
+
if (!subGroup.notTestedClasses) subGroup.notTestedClasses = {};
|
|
218
|
+
if (!(countedValue.class in subGroup.notTestedClasses)) subGroup.notTestedClasses[countedValue.class] = 1;
|
|
219
|
+
else subGroup.notTestedClasses[countedValue.class] += 1;
|
|
220
|
+
} else if (!(countedValue.class in subGroup.classes)) {
|
|
221
|
+
if (!sampleCounted) {
|
|
222
|
+
subGroup.samplesTotal += 1;
|
|
223
|
+
sampleCounted = true;
|
|
224
|
+
}
|
|
225
|
+
subGroup.classes[countedValue.class] = 1;
|
|
226
|
+
} else {
|
|
227
|
+
if (!sampleCounted) {
|
|
228
|
+
subGroup.samplesTotal += 1;
|
|
229
|
+
sampleCounted = true;
|
|
230
|
+
}
|
|
231
|
+
subGroup.classes[countedValue.class] += 1;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
} else {
|
|
235
|
+
subGroup.samplesTotal += 1;
|
|
236
|
+
for (const countedValue of countedValuesNoSkip) {
|
|
237
|
+
if (!(countedValue in subGroup.classes)) subGroup.classes[countedValue] = 1;
|
|
238
|
+
else subGroup.classes[countedValue] += 1;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
if (anno.filteredValues?.length && t.tw.term.type == "geneVariant") {
|
|
243
|
+
const notTested = anno.filteredValues.every((v) => v.class == "Blank");
|
|
244
|
+
if (notTested) {
|
|
245
|
+
subGroup.samplesNotTested += 1;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
if (t.tw.label) {
|
|
250
|
+
t.label = t.tw.label;
|
|
251
|
+
} else if (t.grp.type == "hierCluster") {
|
|
252
|
+
t.label = t.tw.term.gene || t.tw.term.name;
|
|
253
|
+
} else if (t.tw.q?.variantFilter) {
|
|
254
|
+
const selected = variantFilterLabel(t.tw.q.variantFilter, this.mclass);
|
|
255
|
+
t.label = selected ? `${t.tw.term.name} ${selected}` : t.tw.term.name;
|
|
256
|
+
} else {
|
|
257
|
+
t.label = t.tw.term.name;
|
|
258
|
+
}
|
|
259
|
+
if (t.label.length > s.rowlabelmaxchars) t.label = t.label.slice(0, s.rowlabelmaxchars - 1) + "\u2026";
|
|
260
|
+
const termGroupName = this.config?.settings.hierCluster?.termGroupName;
|
|
261
|
+
if (s.samplecount4gene && t.tw.term.type.startsWith("gene") && (!termGroupName || t.grp.name !== termGroupName)) {
|
|
262
|
+
const count = s.samplecount4gene === "abs" ? t.counts.samples : (100 * t.counts.samples / this.sampleOrder.length).toFixed(1) + "%";
|
|
263
|
+
t.label = `${t.label} (${count})`;
|
|
264
|
+
}
|
|
265
|
+
const twSpecificSettings = this.config.settings.matrix.twSpecificSettings;
|
|
266
|
+
if (!twSpecificSettings[t.tw.$id]) twSpecificSettings[t.tw.$id] = {};
|
|
267
|
+
const twSettings = twSpecificSettings[t.tw.$id];
|
|
268
|
+
if (t.grp.type !== "hierCluster" && t.tw.q?.mode == "continuous") {
|
|
269
|
+
const vc = t.tw.term.valueConversion;
|
|
270
|
+
if (vc) {
|
|
271
|
+
t.counts.minval *= vc.scaleFactor;
|
|
272
|
+
t.counts.maxval *= vc.scaleFactor;
|
|
273
|
+
}
|
|
274
|
+
if (renderedContinuousVs.length && t.tw.q.convert2ZScore) {
|
|
275
|
+
const mean = renderedContinuousVs.reduce((acc, val) => acc + val, 0) / renderedContinuousVs.length;
|
|
276
|
+
const std = Math.sqrt(
|
|
277
|
+
renderedContinuousVs.reduce((acc, val) => acc + Math.pow(val - mean, 2), 0) / renderedContinuousVs.length
|
|
278
|
+
);
|
|
279
|
+
t.mean = mean;
|
|
280
|
+
t.std = std;
|
|
281
|
+
t.counts.minval = (t.counts.minval - mean) / std;
|
|
282
|
+
t.counts.maxval = (t.counts.maxval - mean) / std;
|
|
283
|
+
}
|
|
284
|
+
if (!twSettings.contBarH) twSettings.contBarH = t.tw.term.type == "termCollection" ? 150 : s.barh;
|
|
285
|
+
if (!("gap" in twSettings)) twSettings.contBarGap = 4;
|
|
286
|
+
const barh = twSettings.contBarH;
|
|
287
|
+
if (t.tw.term.type == "termCollection") {
|
|
288
|
+
if (!("minval" in t.counts)) t.counts.minval = 0;
|
|
289
|
+
if (!("maxval" in t.counts)) t.counts.maxval = 0;
|
|
290
|
+
}
|
|
291
|
+
const absMin = Math.abs(t.counts.minval);
|
|
292
|
+
const rangeSpansZero = t.counts.minval < 0 && t.counts.maxval > 0;
|
|
293
|
+
const ratio = t.counts.minval >= 0 ? 1 : t.counts.maxval / (absMin + t.counts.maxval);
|
|
294
|
+
t.counts.posMaxHt = ratio * barh;
|
|
295
|
+
const tickValues = [t.counts.maxval, t.counts.minval];
|
|
296
|
+
t.scales = {
|
|
297
|
+
tickValues,
|
|
298
|
+
full: linear().domain(tickValues).range([1, barh])
|
|
299
|
+
};
|
|
300
|
+
if (t.counts.maxval >= 0) {
|
|
301
|
+
const domainMin = rangeSpansZero ? 0 : t.counts.minval;
|
|
302
|
+
t.scales.pos = linear().domain([domainMin, t.counts.maxval]).range([1, t.counts.posMaxHt]);
|
|
303
|
+
}
|
|
304
|
+
if (t.counts.minval < 0) {
|
|
305
|
+
const domainMax = rangeSpansZero ? 0 : t.counts.maxval;
|
|
306
|
+
t.scales.neg = linear().domain([domainMax, t.counts.minval]).range([1, barh - t.counts.posMaxHt]);
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
t.totalHtAdjustments = totalHtAdjustments;
|
|
310
|
+
t.rowHt = t.grp.type == "hierCluster" ? s.clusterRowh : twSettings.contBarH && t.tw.q?.mode == "continuous" ? twSettings.contBarH + 2 * twSettings.contBarGap : ht;
|
|
311
|
+
const adjustment = t.rowHt - ht - (t.grp.type == "hierCluster" ? s.rowspace : 0);
|
|
312
|
+
totalHtAdjustments += adjustment;
|
|
313
|
+
t.cumulativeAdjustment = totalHtAdjustments;
|
|
314
|
+
if (!(t.visibleGrpIndex in grpTotals)) grpTotals[t.visibleGrpIndex] = { htAdjustment: 0 };
|
|
315
|
+
grpTotals[t.visibleGrpIndex].htAdjustment += adjustment;
|
|
316
|
+
t.grpTotals = grpTotals[t.visibleGrpIndex];
|
|
317
|
+
}
|
|
318
|
+
let cnvLegendDomainRange;
|
|
319
|
+
if (this.cnvValues.length) {
|
|
320
|
+
if (s.cnvValues.cutoffMode == "fixed") {
|
|
321
|
+
this.cnvValues = this.cnvValues.filter((v) => v >= s.cnvValues.min && v <= s.cnvValues.max).sort((a, b) => a - b);
|
|
322
|
+
if (this.cnvValues[0] != s.cnvValues.min) this.cnvValues.unshift(s.cnvValues.min);
|
|
323
|
+
if (this.cnvValues[this.cnvValues.length - 1] != s.cnvValues.max) this.cnvValues.push(s.cnvValues.max);
|
|
324
|
+
} else if (s.cnvValues.cutoffMode == "percentile" || s.cnvValues.cutoffMode == "auto") {
|
|
325
|
+
let maxPercentile = s.cnvValues.cutoffMode == "auto" ? s.cnvValues.defaultPercentile : s.cnvValues.percentile;
|
|
326
|
+
maxPercentile = maxPercentile / 100;
|
|
327
|
+
const minPercentile = roundValueAuto(1 - maxPercentile);
|
|
328
|
+
this.cnvValues = removeOutliers(this.cnvValues, { minPercentile, maxPercentile, baseValue: 0 });
|
|
329
|
+
} else throw new Error(`Invalid cnvValues cutoffMode: ${s.cnvValues.cutoffMode}`);
|
|
330
|
+
const minLoss = this.cnvValues[0] <= 0 ? this.cnvValues[0] : void 0;
|
|
331
|
+
const maxGain = this.cnvValues[this.cnvValues.length - 1] >= 0 ? this.cnvValues[this.cnvValues.length - 1] : void 0;
|
|
332
|
+
let maxLoss, minGain, absMax;
|
|
333
|
+
for (const n of this.cnvValues) {
|
|
334
|
+
if (n < 0) maxLoss = n;
|
|
335
|
+
if (!minGain && n > 0) {
|
|
336
|
+
minGain = n;
|
|
337
|
+
break;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
for (const t of this.termOrder) {
|
|
341
|
+
if (t.tw.term.type == "geneVariant") {
|
|
342
|
+
if (!cnvLegendDomainRange) {
|
|
343
|
+
const loss0color = Blues_default(0);
|
|
344
|
+
const gain0color = Reds_default(0);
|
|
345
|
+
const colorDiff = colorDelta(loss0color, gain0color);
|
|
346
|
+
if (minLoss !== void 0 && maxGain !== void 0 && colorDiff > 25)
|
|
347
|
+
console.warn(
|
|
348
|
+
`CNV loss and gain do not have the same middle color for value=0'${loss0color}' vs '${gain0color}', color difference=${colorDiff}`
|
|
349
|
+
);
|
|
350
|
+
absMax = minLoss !== void 0 && maxGain !== void 0 ? Math.max(Math.abs(minLoss), maxGain) : minLoss !== void 0 ? Math.abs(minLoss) : maxGain;
|
|
351
|
+
cnvLegendDomainRange = getInterpolatedDomainRange({
|
|
352
|
+
absMin: 0,
|
|
353
|
+
absMax,
|
|
354
|
+
totalNumSteps: 10,
|
|
355
|
+
negInterpolator: minLoss !== void 0 && Blues_default,
|
|
356
|
+
posInterpolator: maxGain !== void 0 && Reds_default,
|
|
357
|
+
// force this middleColor to white, knowing that interpolateBlues and interpolateReds,
|
|
358
|
+
// as hardcoded above and below, share similar white colors for their minimum abs values
|
|
359
|
+
middleColor: "white"
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
t.scales = {
|
|
363
|
+
loss: Blues_default,
|
|
364
|
+
gain: Reds_default,
|
|
365
|
+
maxLoss,
|
|
366
|
+
maxGain,
|
|
367
|
+
minLoss,
|
|
368
|
+
minGain,
|
|
369
|
+
absMax,
|
|
370
|
+
legend: cnvLegendDomainRange
|
|
371
|
+
};
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
function setLayout() {
|
|
377
|
+
const s = this.settings.matrix;
|
|
378
|
+
const [col, row] = !s.transpose ? ["sample", "term"] : ["term", "sample"];
|
|
379
|
+
const [_t_, _b_] = s.collabelpos == "top" ? ["", "Grp"] : ["Grp", ""];
|
|
380
|
+
const [_l_, _r_] = s.rowlabelpos == "left" ? ["", "Grp"] : ["Grp", ""];
|
|
381
|
+
const top = col + _t_;
|
|
382
|
+
const btm = col + _b_;
|
|
383
|
+
const left = row + _l_;
|
|
384
|
+
const right = row + _r_;
|
|
385
|
+
this.samples = this.sampleOrder;
|
|
386
|
+
this.sampleGrps = this.sampleOrder.filter((s2) => s2.index === 0);
|
|
387
|
+
this.terms = this.termOrder;
|
|
388
|
+
this.termGrps = this.termOrder.filter((t) => t.index === 0);
|
|
389
|
+
const layout = {};
|
|
390
|
+
const sides = { top, btm, left, right };
|
|
391
|
+
for (const direction in sides) {
|
|
392
|
+
const d = sides[direction];
|
|
393
|
+
const Direction = direction[0].toUpperCase() + direction.slice(1);
|
|
394
|
+
layout[direction] = {
|
|
395
|
+
prefix: d,
|
|
396
|
+
data: this[`${d}s`],
|
|
397
|
+
offset: s[`${d}LabelOffset`],
|
|
398
|
+
box: this.dom[`${d}LabelG`],
|
|
399
|
+
key: this[`${d}Key`],
|
|
400
|
+
label: this[`${d}Label`],
|
|
401
|
+
render: this[`render${Direction}Label`],
|
|
402
|
+
isGroup: sides[direction].includes("Grp")
|
|
403
|
+
};
|
|
404
|
+
}
|
|
405
|
+
const yOffset = layout.top.offset + s.margin.top + s.scrollHeight;
|
|
406
|
+
const xOffset = layout.left.offset + s.margin.left;
|
|
407
|
+
this.setAutoDimensions(xOffset);
|
|
408
|
+
this.setLabelsAndScales();
|
|
409
|
+
const colw = Math.max(s.colwMin, Math.min(s.colwMax, s.colw * s.zoomLevel));
|
|
410
|
+
const dx = colw + s.colspace;
|
|
411
|
+
const nx = this[`${col}s`].length;
|
|
412
|
+
const dy = s.rowh + s.rowspace;
|
|
413
|
+
const ny = this[`${row}s`].length;
|
|
414
|
+
const mainwByColDimensions = nx * (colw + s.colspace) + this[`${col}Grps`].length * s.colgspace + (this[`${col}s`].slice(-1)[0]?.totalHtAdjustments || 0);
|
|
415
|
+
const mainw = Math.min(mainwByColDimensions, this.availContentWidth);
|
|
416
|
+
const lastRow = this[`${row}s`].slice(-1)[0];
|
|
417
|
+
const mainh = ny * dy + (this[`${row}Grps`].length - 1) * s.rowgspace + (lastRow?.cumulativeAdjustment || 0);
|
|
418
|
+
const colLabelFontSize = Math.min(
|
|
419
|
+
Math.max(colw + s.colspace - 2 * s.collabelpad - s.colspace, s.minLabelFontSize),
|
|
420
|
+
s.maxLabelFontSize
|
|
421
|
+
);
|
|
422
|
+
const topFontSize = _t_ == "Grp" ? s.grpLabelFontSize : colLabelFontSize;
|
|
423
|
+
layout.top.attr = {
|
|
424
|
+
boxTransform: `translate(${xOffset}, ${yOffset - s.collabelgap})`,
|
|
425
|
+
adjustBoxTransform: (dx2) => layout.top.box.attr("transform", `translate(${xOffset + dx2}, ${yOffset - s.collabelgap})`),
|
|
426
|
+
labelTransform: "rotate(-90)",
|
|
427
|
+
labelAnchor: "start",
|
|
428
|
+
labelGY: 0,
|
|
429
|
+
labelGTransform: this[`col${_t_}LabelGTransform`],
|
|
430
|
+
fontSize: topFontSize,
|
|
431
|
+
textpos: { coord: "y", factor: -1 },
|
|
432
|
+
axisFxn: axisTop
|
|
433
|
+
};
|
|
434
|
+
if (layout.top.prefix == "sample")
|
|
435
|
+
layout.top.display = s.sampleLabelsToggle !== "hide" && colw >= s.minLabelFontSize ? "" : "none";
|
|
436
|
+
const btmFontSize = _b_ == "Grp" ? s.grpLabelFontSize : colLabelFontSize;
|
|
437
|
+
layout.btm.attr = {
|
|
438
|
+
boxTransform: `translate(${xOffset}, ${yOffset + mainh + s.collabelgap})`,
|
|
439
|
+
adjustBoxTransform: (dx2) => layout.btm.box.attr("transform", `translate(${xOffset + dx2}, ${yOffset + mainh + s.collabelgap})`),
|
|
440
|
+
labelTransform: "rotate(-90)",
|
|
441
|
+
labelAnchor: "end",
|
|
442
|
+
labelGY: 0,
|
|
443
|
+
labelGTransform: this[`col${_b_}LabelGTransform`],
|
|
444
|
+
fontSize: btmFontSize,
|
|
445
|
+
textpos: { coord: "y", factor: 1 },
|
|
446
|
+
axisFxn: axisBottom
|
|
447
|
+
};
|
|
448
|
+
if (layout.btm.prefix == "sample")
|
|
449
|
+
layout.btm.display = s.sampleLabelsToggle !== "hide" && colw >= s.minLabelFontSize ? "" : "none";
|
|
450
|
+
const leftFontSize = _l_ == "Grp" ? s.grpLabelFontSize : Math.max(s.rowh + s.rowspace - 2 * s.rowlabelpad - s.rowspace, s.minLabelFontSize);
|
|
451
|
+
layout.left.attr = {
|
|
452
|
+
boxTransform: `translate(${xOffset - s.rowlabelgap}, ${yOffset})`,
|
|
453
|
+
labelTransform: "",
|
|
454
|
+
labelAnchor: "end",
|
|
455
|
+
labelGX: 0,
|
|
456
|
+
labelGTransform: this[`row${_l_}LabelGTransform`],
|
|
457
|
+
fontSize: leftFontSize,
|
|
458
|
+
textpos: { coord: "x", factor: -1 },
|
|
459
|
+
axisFxn: axisLeft
|
|
460
|
+
};
|
|
461
|
+
const rtFontSize = _r_ == "Grp" ? s.grpLabelFontSize : Math.max(s.rowh + s.rowspace - 2 * s.rowlabelpad, s.minLabelFontSize);
|
|
462
|
+
layout.right.attr = {
|
|
463
|
+
boxTransform: `translate(${xOffset + mainw + s.rowlabelgap}, ${yOffset})`,
|
|
464
|
+
labelTransform: "",
|
|
465
|
+
labelAnchor: "start",
|
|
466
|
+
labelGX: 0,
|
|
467
|
+
labelGTransform: this[`row${_r_}LabelGTransform`],
|
|
468
|
+
fontSize: rtFontSize,
|
|
469
|
+
textpos: { coord: "x", factor: 1 },
|
|
470
|
+
axisFxn: axisRight
|
|
471
|
+
};
|
|
472
|
+
this.dom.sampleLabelsPG.attr("clip-path", s.transpose ? "" : `url(#${this.seriesClipId})`);
|
|
473
|
+
this.dom.termLabelsPG.attr("clip-path", s.transpose ? `url(#${this.seriesClipId})` : "");
|
|
474
|
+
this.layout = layout;
|
|
475
|
+
if (!s.zoomCenterPct) {
|
|
476
|
+
s.zoomCenterPct = 0.5;
|
|
477
|
+
s.zoomIndex = Math.round(s.zoomCenterPct * mainw / dx);
|
|
478
|
+
s.zoomGrpIndex = this.sampleOrder[s.zoomIndex]?.grpIndex || 0;
|
|
479
|
+
}
|
|
480
|
+
const zoomCenter = s.zoomCenterPct * mainw;
|
|
481
|
+
const centerCellX = s.zoomIndex * dx + s.zoomGrpIndex * s.colgspace;
|
|
482
|
+
const zoomedMainW = Math.max(0, nx * dx + (this[`${col}Grps`].length - 1) * s.colgspace);
|
|
483
|
+
const seriesXoffset = s.zoomLevel <= 1 && mainw >= zoomedMainW ? 0 : Math.max(zoomCenter - centerCellX, mainw - zoomedMainW);
|
|
484
|
+
const imgW = (s.imgWMax > zoomedMainW ? zoomedMainW : s.imgWMax) - 1e-7;
|
|
485
|
+
const halfImgW = 0.5 * imgW;
|
|
486
|
+
const unwantedRightOvershoot = Math.max(0, centerCellX + halfImgW - zoomedMainW);
|
|
487
|
+
const imgLeftMin = Math.max(0, centerCellX - Math.min(halfImgW, imgW) - unwantedRightOvershoot);
|
|
488
|
+
const xMin = s.zoomLevel <= 1 && mainw >= zoomedMainW ? 0 : imgLeftMin;
|
|
489
|
+
const xMax = imgW + xMin;
|
|
490
|
+
this.dimensions = {
|
|
491
|
+
xMin,
|
|
492
|
+
xMax,
|
|
493
|
+
dx,
|
|
494
|
+
dy,
|
|
495
|
+
xOffset,
|
|
496
|
+
yOffset,
|
|
497
|
+
mainw,
|
|
498
|
+
mainh,
|
|
499
|
+
colw,
|
|
500
|
+
zoomedMainW,
|
|
501
|
+
seriesXoffset: seriesXoffset > 0 ? 0 : seriesXoffset,
|
|
502
|
+
maxMainW: Math.max(mainwByColDimensions, this.availContentWidth),
|
|
503
|
+
imgW,
|
|
504
|
+
// recompute the resolvable "pixel width", in case the pixel ratio changes
|
|
505
|
+
// when moving the browser window to a different monitor,
|
|
506
|
+
// will be used to sharpen canvas shapes that are smaller than this pixel width
|
|
507
|
+
pxw: 1 / window.devicePixelRatio
|
|
508
|
+
};
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
export {
|
|
512
|
+
setAutoDimensions,
|
|
513
|
+
getMaxGrpLabelWidth,
|
|
514
|
+
setLabelsAndScales,
|
|
515
|
+
setLayout,
|
|
516
|
+
matrix_layout_exports
|
|
517
|
+
};
|
|
518
|
+
//# sourceMappingURL=chunk-5HVAVJKW.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../plots/matrix/matrix.layout.js"],
|
|
4
|
+
"sourcesContent": ["import { getCompInit, copyMerge, deepEqual } from '#rx'\nimport { scaleLinear, scaleOrdinal } from 'd3-scale'\nimport { schemeCategory10, interpolateReds, interpolateBlues } from 'd3-scale-chromatic'\nimport { axisLeft, axisTop, axisRight, axisBottom } from 'd3-axis'\nimport { dtsnvindel, dtcnv, dtfusionrna, dtgeneexpression, dtsv } from '#shared/common.js'\nimport { colorDelta, getInterpolatedDomainRange, removeInterpolatedOutliers, removeOutliers } from '#dom'\nimport { roundValueAuto } from '#shared/roundValue.js'\nimport { variantFilterLabel } from '#shared/geneVariantFilter.js'\n\nconst MINCOLWSPACED = 7\n\nexport function setAutoDimensions(xOffset) {\n\tconst m = this.state.config.settings.matrix\n\tif (!this.autoDimensions) this.autoDimensions = new Set()\n\n\t// NOTE: there may be a hardcoded m.colw = 0 in matrix.config to force auto-sizing\n\tif (!m.colw) this.autoDimensions.add('colw')\n\telse this.autoDimensions.delete('colw')\n\tif (!m.rowh) this.autoDimensions.add('rowh')\n\telse this.autoDimensions.delete('rowh')\n\n\tconst s = this.settings.matrix\n\tthis.computedSettings = {\n\t\tuseCanvas: this.sampleOrder.length > m.svgCanvasSwitch\n\t}\n\n\tif (s.availContentWidth) {\n\t\tthis.availContentWidth = s.availContentWidth\n\t} else {\n\t\tlet boundingWidth = this.dom.contentNode.getBoundingClientRect().width\n\t\tif (boundingWidth < 600) {\n\t\t\t// rely on div scroll to view a not-overly-narrow matrix\n\t\t\tboundingWidth = window.document.body.clientWidth\n\t\t}\n\n\t\t// 65 is an mannually calibrated padding\n\t\tconst maxGrpLabelWidth = this.getMaxGrpLabelWidth()\n\t\tconst padding = Math.max(65, maxGrpLabelWidth)\n\n\t\t// should be estimated based on label-fontsize and longest label\n\t\t// const labelOffset = !s.transpose\n\t\t// \t? s.termLabelOffset + s.termGrpLabelOffset\n\t\t// \t: s.sampleLabelOffset + s.sampleGrpLabelOffset\n\t\tconst hcw = this.state.config.settings.hierCluster?.xDendrogramHeight || 0\n\t\tthis.availContentWidth = boundingWidth - padding - s.margin.right - xOffset - hcw // - 0.5 * labelOffset\n\t}\n\n\tlet colwSpaced, colwNoSpace\n\tif (this.autoDimensions.has('colw')) {\n\t\tconst totalColgspace = s.colgspace * Math.max(0, this.visibleSampleGrps.size - 1)\n\t\tconst tentativeGaps = this.sampleOrder.length * s.colspace + totalColgspace\n\t\tconst spacedColw = (this.availContentWidth - tentativeGaps) / this.sampleOrder.length\n\t\tconst constrainedMINCOLWSPACED = Math.max(s.colwMin, Math.min(MINCOLWSPACED, s.colwMax))\n\t\t// colwSpaced is the colw if the colspace is shown between columns, but note that\n\t\t// its value does not include the colspace. It also requires MINCOLWSPACED column width\n\t\t// for the colspace to not be too visually overwhelming.\n\t\tcolwSpaced = Math.max(constrainedMINCOLWSPACED, Math.min(spacedColw, s.colwMax))\n\t\t// noSpacedColw is the colw if the colspace is not shown between columns, without taking into account colwMin and colwMax\n\t\tconst noSpacedColw = (this.availContentWidth - totalColgspace) / this.sampleOrder.length\n\t\t// colwNoSpace is the colw if the colspace is not shown between columns, after taking into account colwMin and colwMax\n\t\tcolwNoSpace = Math.max(s.colwMin, Math.min(noSpacedColw, s.colwMax))\n\n\t\t// if the computed colwSpaced for (availContentWidth - gaps) / (numer of samples) is less than MINCOLWSPACED,\n\t\t// then rendered gaps between columns will be visually overwhelming, use colwNoSpace in that case\n\t\tthis.computedSettings.colw = colwSpaced <= MINCOLWSPACED ? colwNoSpace : colwSpaced\n\n\t\t// IMPORTANT: compute zoomMin and zoomMax here before computing settings.colw downstream\n\t\t// in setLayout(), to avoid feedback loop\n\t\tthis.computedSettings.zoomMin = s.colwMin / this.computedSettings.colw\n\t\tthis.computedSettings.zoomMax = s.colwMax / this.computedSettings.colw\n\t} else {\n\t\tcolwSpaced = m.colw\n\t\tcolNoSpace = m.colw\n\t\t// NOTE: There may be a hardcoded m.colw = 0 in matrix.config to force auto-sizing,\n\t\t// handling this condition for future support.\n\t\tthis.computedSettings.colw = m.colw\n\t\tthis.computedSettings.zoomMin = s.colwMin / m.colw\n\t\tthis.computedSettings.zoomMax = s.colwMax / m.colw\n\t}\n\n\tconst { colw } = this.computedSettings\n\t// When cells have very small width, do not show colspace. If colwSpaced == colwNoSpace,\n\t// that means max\n\t// IMPORTANT: compute zoomMin and zoomMax before using s.zoomLevel for any computed settings\n\tthis.computedSettings.colspace =\n\t\t(colw === colwNoSpace && colwSpaced < colwNoSpace) || colw * s.zoomLevel < MINCOLWSPACED ? 0 : s.colspace\n\n\tconst hch = this.state.config.settings.hierCluster?.yDendrogramHeight || 0\n\tconst availHeight = s.availContentHeight || screen.availHeight - hch\n\tthis.computedSettings.clusterRowh = Math.min(\n\t\ts.rowhMax,\n\t\tMath.max(s.rowhMin, Math.floor(availHeight / this.numClusterTerms))\n\t)\n\tcopyMerge(this.settings.matrix, this.computedSettings)\n}\n\n// calculate the max group label width on the plot\nexport function getMaxGrpLabelWidth() {\n\tconst s = this.settings.matrix\n\n\t// attach each group label on tmp g (later removed) to calculate the max actual width of the group label on plot\n\tconst g = this.dom.svg.append('g').attr('opacity', 0.01)\n\tlet maxWidth = 0\n\tfor (const grp of this.termGroups) {\n\t\tconst grpLabel = !grp.name\n\t\t\t? ''\n\t\t\t: grp.name.length <= s.termGrpLabelMaxChars\n\t\t\t? grp.name\n\t\t\t: grp.name.slice(0, s.termGrpLabelMaxChars) + '\u2026'\n\t\tconst text = g.append('text').text(grpLabel).attr('font-size', 12)\n\t\tconst box = text.node().getBBox()\n\t\tif (maxWidth < box.width) maxWidth = box.width\n\t}\n\tg.remove()\n\treturn maxWidth\n}\n\nexport function setLabelsAndScales() {\n\tconst s = this.settings.matrix\n\tthis.cnvValues = []\n\t// ht: standard cell dimension for term row or column\n\tconst ht = s.transpose ? s.colw : s.rowh\n\tconst grpTotals = {}\n\tconst processedLabels = { sampleGrpByName: {}, termGrpByName: {} }\n\tlet totalHtAdjustments = 0\n\n\tfor (const t of this.termOrder) {\n\t\tconst countedSamples = new Set()\n\t\tt.counts = { samples: 0, hits: 0 }\n\t\tconst renderedContinuousVs = []\n\t\t// Track if any sample in this term has mixed positive/negative values\n\t\tlet hasMixedValues = false\n\n\t\t// Initialize min/max for termCollection\n\t\tif (t.tw.term.type == 'termCollection') {\n\t\t\tt.counts.minval = 0\n\t\t\tt.counts.maxval = 0\n\t\t}\n\n\t\t// store counts for each subGroup in subGroupCounts\n\t\tt.counts.subGroupCounts = {}\n\t\tfor (const group of this.sampleGroups) {\n\t\t\tt.counts.subGroupCounts[group.name] = {\n\t\t\t\tsamplesTotal: 0, // number of counted (not Blank or WT) samples\n\t\t\t\tclasses: {} // number of each class\n\t\t\t}\n\t\t\tif (t.tw.term.type == 'geneVariant') {\n\t\t\t\t// for a geneVariant term, the number of samples not tested\n\t\t\t\tt.counts.subGroupCounts[group.name].samplesNotTested = 0 //number of samples not tested\n\t\t\t}\n\t\t}\n\t\tif (!processedLabels.termGrpByName[t.grp.name || '']) {\n\t\t\tconst name = t.grp.name || ''\n\t\t\tt.grp.label = name.length <= s.termGrpLabelMaxChars ? name : name.slice(0, s.termGrpLabelMaxChars) + '\u2026'\n\t\t\tprocessedLabels.termGrpByName[name] = t.grp.label\n\t\t}\n\t\tfor (const sample of this.sampleOrder) {\n\t\t\tif (countedSamples.has(sample.row.sample)) continue\n\t\t\tconst name = sample.grp.name || ''\n\t\t\tif (!(name in processedLabels.sampleGrpByName)) {\n\t\t\t\tsample.grp.label =\n\t\t\t\t\tname.length <= s.sampleGrpLabelMaxChars ? name : name.slice(0, s.sampleGrpLabelMaxChars) + '\u2026'\n\t\t\t\tif (this.config.divideBy) sample.grp.label += ` (${sample.grp.lst.length})`\n\t\t\t\tprocessedLabels.sampleGrpByName[name] = sample.grp.label\n\t\t\t}\n\t\t\tconst sampleName = sample.row._ref_.label || ''\n\t\t\tsample.label =\n\t\t\t\tsampleName.length <= s.collabelmaxchars ? sampleName : sampleName.slice(0, s.collabelmaxchars) + '\u2026'\n\n\t\t\tconst anno = sample.row[t.tw.$id]\n\t\t\tif (!anno) continue\n\n\t\t\t// Check if this annotation has mixed positive/negative values (for termCollection)\n\t\t\tif (t.tw.term.type == 'termCollection' && anno.hasMixedValues) {\n\t\t\t\thasMixedValues = true\n\t\t\t}\n\n\t\t\t// Track min/max percentage values for termCollection\n\t\t\tif (t.tw.term.type == 'termCollection' && anno.values) {\n\t\t\t\tfor (const val of anno.values) {\n\t\t\t\t\tconst pct = val.value\n\t\t\t\t\tif (pct > 0) {\n\t\t\t\t\t\t// For positive values, track the cumulative sum (pre_val_sum + pct)\n\t\t\t\t\t\tconst cumSum = val.pre_val_sum + pct\n\t\t\t\t\t\tif (!('maxval' in t.counts) || t.counts.maxval < cumSum) {\n\t\t\t\t\t\t\tt.counts.maxval = cumSum\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (pct < 0) {\n\t\t\t\t\t\t// For negative values, track the cumulative sum (pre_val_sum + pct, which is negative)\n\t\t\t\t\t\tconst cumSum = val.pre_val_sum + pct\n\t\t\t\t\t\tif (!('minval' in t.counts) || t.counts.minval > cumSum) {\n\t\t\t\t\t\t\tt.counts.minval = cumSum\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// This is the second call to classifyValues(), to determine case/hit counts for row labels\n\t\t\tconst { filteredValues, countedValues, renderedValues } = this.classifyValues(\n\t\t\t\tanno,\n\t\t\t\tt.tw,\n\t\t\t\tt.grp,\n\t\t\t\tthis.settings.matrix,\n\t\t\t\tsample.row\n\t\t\t)\n\t\t\tanno.filteredValues = filteredValues\n\t\t\tanno.countedValues = countedValues\n\t\t\tanno.renderedValues = renderedValues\n\t\t\tif (anno.countedValues?.length) {\n\t\t\t\tt.counts.samples += 1\n\t\t\t\tt.counts.hits += anno.countedValues.length\n\t\t\t\tif (t.tw.q?.mode == 'continuous') {\n\t\t\t\t\tconst v = anno.value\n\t\t\t\t\tif (!t.tw.term.values?.[v]?.uncomputable) {\n\t\t\t\t\t\tif (!('minval' in t.counts) || t.counts.minval > v) t.counts.minval = v\n\t\t\t\t\t\tif (!('maxval' in t.counts) || t.counts.maxval < v) t.counts.maxval = v\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (t.tw.term.type == 'geneVariant' && anno.values) {\n\t\t\t\t\tfor (const val of anno.values) {\n\t\t\t\t\t\tif (val.dt == dtcnv && 'value' in val && !s.ignoreCnvValues) {\n\t\t\t\t\t\t\tconst v = val.value\n\t\t\t\t\t\t\tthis.cnvValues.push(v)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (t.tw.q?.mode == 'continuous' && renderedValues?.length && t.grp.type != 'hierCluster') {\n\t\t\t\t// store the rendered continuous values into renderedContinuousVs to be used later\n\t\t\t\t// do not do it for terms in hierCluster group\n\t\t\t\trenderedContinuousVs.push(\n\t\t\t\t\tt.tw.term.valueConversion\n\t\t\t\t\t\t? t.tw.term.valueConversion.scaleFactor * (renderedValues[0].value || renderedValues[0])\n\t\t\t\t\t\t: renderedValues[0].value || renderedValues[0]\n\t\t\t\t)\n\t\t\t}\n\n\t\t\tconst subGroup = t.counts.subGroupCounts?.[sample.grp.name]\n\n\t\t\tconst countedValuesNoSkip = anno.filteredValues.filter(v => {\n\t\t\t\t// doesn't consider geneVariantCountSamplesSkipMclass as countedValues does\n\t\t\t\tif (t.tw.term.type == 'geneVariant') {\n\t\t\t\t\t// do not count wildtype and not tested as hits\n\t\t\t\t\tif (v.class == 'WT' || v.class == 'Blank') return false\n\t\t\t\t}\n\t\t\t\treturn true\n\t\t\t})\n\n\t\t\tif (countedValuesNoSkip.length) {\n\t\t\t\t//count the samples and classes in each subGroup\n\t\t\t\tif (t.tw.term.type == 'geneVariant') {\n\t\t\t\t\tlet sampleCounted = false\n\t\t\t\t\tfor (const countedValue of countedValuesNoSkip) {\n\t\t\t\t\t\tif (s.geneVariantCountSamplesSkipMclass.includes(countedValue.class)) {\n\t\t\t\t\t\t\tif (!subGroup.notTestedClasses) subGroup.notTestedClasses = {}\n\t\t\t\t\t\t\tif (!(countedValue.class in subGroup.notTestedClasses)) subGroup.notTestedClasses[countedValue.class] = 1\n\t\t\t\t\t\t\telse subGroup.notTestedClasses[countedValue.class] += 1\n\t\t\t\t\t\t} else if (!(countedValue.class in subGroup.classes)) {\n\t\t\t\t\t\t\tif (!sampleCounted) {\n\t\t\t\t\t\t\t\tsubGroup.samplesTotal += 1\n\t\t\t\t\t\t\t\tsampleCounted = true\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsubGroup.classes[countedValue.class] = 1\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (!sampleCounted) {\n\t\t\t\t\t\t\t\tsubGroup.samplesTotal += 1\n\t\t\t\t\t\t\t\tsampleCounted = true\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsubGroup.classes[countedValue.class] += 1\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tsubGroup.samplesTotal += 1\n\t\t\t\t\tfor (const countedValue of countedValuesNoSkip) {\n\t\t\t\t\t\tif (!(countedValue in subGroup.classes)) subGroup.classes[countedValue] = 1\n\t\t\t\t\t\telse subGroup.classes[countedValue] += 1\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (anno.filteredValues?.length && t.tw.term.type == 'geneVariant') {\n\t\t\t\t//count the samples that are not tested in each subGroup\n\t\t\t\tconst notTested = anno.filteredValues.every(v => v.class == 'Blank')\n\t\t\t\tif (notTested) {\n\t\t\t\t\t// sample not tested for all assays\n\t\t\t\t\tsubGroup.samplesNotTested += 1\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (t.tw.label) {\n\t\t\tt.label = t.tw.label\n\t\t} else if (t.grp.type == 'hierCluster') {\n\t\t\tt.label = t.tw.term.gene || t.tw.term.name\n\t\t} else if (t.tw.q?.variantFilter) {\n\t\t\t// name what the row's variant filter selects, e.g. \"KRAS G12D\", otherwise\n\t\t\t// two filtered rows of the same gene would carry the same label. an\n\t\t\t// explicit tw.label above still wins\n\t\t\tconst selected = variantFilterLabel(t.tw.q.variantFilter, this.mclass)\n\t\t\tt.label = selected ? `${t.tw.term.name} ${selected}` : t.tw.term.name\n\t\t} else {\n\t\t\tt.label = t.tw.term.name\n\t\t}\n\t\tif (t.label.length > s.rowlabelmaxchars) t.label = t.label.slice(0, s.rowlabelmaxchars - 1) + '\u2026'\n\t\tconst termGroupName = this.config?.settings.hierCluster?.termGroupName\n\t\tif (s.samplecount4gene && t.tw.term.type.startsWith('gene') && (!termGroupName || t.grp.name !== termGroupName)) {\n\t\t\tconst count =\n\t\t\t\ts.samplecount4gene === 'abs'\n\t\t\t\t\t? t.counts.samples\n\t\t\t\t\t: ((100 * t.counts.samples) / this.sampleOrder.length).toFixed(1) + '%'\n\t\t\tt.label = `${t.label} (${count})`\n\t\t}\n\n\t\tconst twSpecificSettings = this.config.settings.matrix.twSpecificSettings\n\t\tif (!twSpecificSettings[t.tw.$id]) twSpecificSettings[t.tw.$id] = {}\n\t\tconst twSettings = twSpecificSettings[t.tw.$id]\n\n\t\tif (t.grp.type !== 'hierCluster' && t.tw.q?.mode == 'continuous') {\n\t\t\tconst vc = t.tw.term.valueConversion\n\t\t\tif (vc) {\n\t\t\t\t// convert values\n\t\t\t\tt.counts.minval *= vc.scaleFactor\n\t\t\t\tt.counts.maxval *= vc.scaleFactor\n\t\t\t}\n\n\t\t\t/*\n\t\t\t\tcompute mean and std on the client side using the renderedValues, instead of asking the server to \n\t\t\t\ttransform the values when the data source does not actually change. That means re-reading \n\t\t\t\tdb/files/external API for the same data on the server, it would impact the server less \n\t\t\t\t(by allowing caching and offloading computation) if the value transformation is done on \n\t\t\t\tthe client. Also, in case some of the data/rendered filters are done on the client-side plot, \n\t\t\t\tthen the server may not know which data are actually rendered, meaning the mean and stdev \n\t\t\t\tmay not be computable on the server side.\n\t\t\t*/\n\t\t\tif (renderedContinuousVs.length && t.tw.q.convert2ZScore) {\n\t\t\t\tconst mean = renderedContinuousVs.reduce((acc, val) => acc + val, 0) / renderedContinuousVs.length\n\t\t\t\tconst std = Math.sqrt(\n\t\t\t\t\trenderedContinuousVs.reduce((acc, val) => acc + Math.pow(val - mean, 2), 0) / renderedContinuousVs.length\n\t\t\t\t)\n\t\t\t\tt.mean = mean\n\t\t\t\tt.std = std\n\t\t\t\tt.counts.minval = (t.counts.minval - mean) / std\n\t\t\t\tt.counts.maxval = (t.counts.maxval - mean) / std\n\t\t\t}\n\n\t\t\tif (!twSettings.contBarH) twSettings.contBarH = t.tw.term.type == 'termCollection' ? 150 : s.barh\n\t\t\tif (!('gap' in twSettings)) twSettings.contBarGap = 4\n\t\t\tconst barh = twSettings.contBarH\n\t\t\t// For termCollection, min/max values are already calculated from the percentage values\n\t\t\t// No need to force specific ranges - use dynamic range based on actual data\n\t\t\tif (t.tw.term.type == 'termCollection') {\n\t\t\t\t// Ensure minval and maxval are set (default to 0 if no values)\n\t\t\t\tif (!('minval' in t.counts)) t.counts.minval = 0\n\t\t\t\tif (!('maxval' in t.counts)) t.counts.maxval = 0\n\t\t\t}\n\n\t\t\tconst absMin = Math.abs(t.counts.minval)\n\t\t\tconst rangeSpansZero = t.counts.minval < 0 && t.counts.maxval > 0\n\t\t\tconst ratio = t.counts.minval >= 0 ? 1 : t.counts.maxval / (absMin + t.counts.maxval)\n\t\t\tt.counts.posMaxHt = ratio * barh\n\t\t\tconst tickValues = [t.counts.maxval, t.counts.minval]\n\t\t\tt.scales = {\n\t\t\t\ttickValues,\n\t\t\t\tfull: scaleLinear().domain(tickValues).range([1, barh])\n\t\t\t}\n\t\t\tif (t.counts.maxval >= 0) {\n\t\t\t\tconst domainMin = rangeSpansZero ? 0 : t.counts.minval\n\t\t\t\tt.scales.pos = scaleLinear().domain([domainMin, t.counts.maxval]).range([1, t.counts.posMaxHt])\n\t\t\t}\n\t\t\tif (t.counts.minval < 0) {\n\t\t\t\tconst domainMax = rangeSpansZero ? 0 : t.counts.maxval\n\t\t\t\tt.scales.neg = scaleLinear()\n\t\t\t\t\t.domain([domainMax, t.counts.minval])\n\t\t\t\t\t.range([1, barh - t.counts.posMaxHt])\n\t\t\t}\n\t\t}\n\n\t\tt.totalHtAdjustments = totalHtAdjustments\n\t\tt.rowHt =\n\t\t\tt.grp.type == 'hierCluster'\n\t\t\t\t? s.clusterRowh\n\t\t\t\t: twSettings.contBarH && t.tw.q?.mode == 'continuous'\n\t\t\t\t? twSettings.contBarH + 2 * twSettings.contBarGap\n\t\t\t\t: ht\n\t\t// adjustment is the difference in actual computed row height - \"standard\" row\n\t\t// need to subtract s.rowspace for hierCluster row to remove gaps between heatmap rows\n\t\tconst adjustment = t.rowHt - ht - (t.grp.type == 'hierCluster' ? s.rowspace : 0)\n\t\ttotalHtAdjustments += adjustment\n\n\t\t// adjustment when last row is in continous mode\n\t\tt.cumulativeAdjustment = totalHtAdjustments\n\n\t\tif (!(t.visibleGrpIndex in grpTotals)) grpTotals[t.visibleGrpIndex] = { htAdjustment: 0 }\n\t\tgrpTotals[t.visibleGrpIndex].htAdjustment += adjustment\n\t\tt.grpTotals = grpTotals[t.visibleGrpIndex]\n\t}\n\n\tlet cnvLegendDomainRange // if cnv data is present, compute once and reuse across geneVariant tw's\n\n\tif (this.cnvValues.length) {\n\t\tif (s.cnvValues.cutoffMode == 'fixed') {\n\t\t\tthis.cnvValues = this.cnvValues.filter(v => v >= s.cnvValues.min && v <= s.cnvValues.max).sort((a, b) => a - b)\n\t\t\t//Need to include the input value for the user\n\t\t\tif (this.cnvValues[0] != s.cnvValues.min) this.cnvValues.unshift(s.cnvValues.min)\n\t\t\tif (this.cnvValues[this.cnvValues.length - 1] != s.cnvValues.max) this.cnvValues.push(s.cnvValues.max)\n\t\t} else if (s.cnvValues.cutoffMode == 'percentile' || s.cnvValues.cutoffMode == 'auto') {\n\t\t\t/** Users enter the percentile as whole number.\n\t\t\t * Convert to a fraction for removeOutliers.*/\n\t\t\tlet maxPercentile = s.cnvValues.cutoffMode == 'auto' ? s.cnvValues.defaultPercentile : s.cnvValues.percentile\n\t\t\tmaxPercentile = maxPercentile / 100\n\t\t\tconst minPercentile = roundValueAuto(1 - maxPercentile)\n\t\t\tthis.cnvValues = removeOutliers(this.cnvValues, { minPercentile, maxPercentile, baseValue: 0 })\n\t\t} else throw new Error(`Invalid cnvValues cutoffMode: ${s.cnvValues.cutoffMode}`)\n\t\tconst minLoss = this.cnvValues[0] <= 0 ? this.cnvValues[0] : undefined\n\t\tconst maxGain =\n\t\t\tthis.cnvValues[this.cnvValues.length - 1] >= 0 ? this.cnvValues[this.cnvValues.length - 1] : undefined\n\t\tlet maxLoss, minGain, absMax\n\t\tfor (const n of this.cnvValues) {\n\t\t\tif (n < 0) maxLoss = n\n\t\t\tif (!minGain && n > 0) {\n\t\t\t\tminGain = n\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t\t// need to assign scales to terms after the loop above so each term has the global maxLoss, maxGain, minLoss, minGain\n\t\tfor (const t of this.termOrder) {\n\t\t\tif (t.tw.term.type == 'geneVariant') {\n\t\t\t\tif (!cnvLegendDomainRange) {\n\t\t\t\t\t// compute these interpolated domain/range only once,\n\t\t\t\t\t// and then share with other t objects\n\t\t\t\t\tconst loss0color = interpolateBlues(0)\n\t\t\t\t\tconst gain0color = interpolateReds(0)\n\t\t\t\t\tconst colorDiff = colorDelta(loss0color, gain0color)\n\t\t\t\t\tif (minLoss !== undefined && maxGain !== undefined && colorDiff > 25)\n\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t`CNV loss and gain do not have the same middle color for value=0` +\n\t\t\t\t\t\t\t\t`'${loss0color}' vs '${gain0color}', color difference=${colorDiff}`\n\t\t\t\t\t\t)\n\n\t\t\t\t\t// These precomputed CNV domains and ranges are to be passed to\n\t\t\t\t\t// ColorScale legend renderer in matrix.legend.js. By computing\n\t\t\t\t\t// these values here, the legend will match the scale\n\t\t\t\t\t// min/max values and rendered-value colors in matrix cells.\n\t\t\t\t\tabsMax =\n\t\t\t\t\t\tminLoss !== undefined && maxGain !== undefined\n\t\t\t\t\t\t\t? Math.max(Math.abs(minLoss), maxGain)\n\t\t\t\t\t\t\t: minLoss !== undefined\n\t\t\t\t\t\t\t? Math.abs(minLoss)\n\t\t\t\t\t\t\t: maxGain\n\t\t\t\t\tcnvLegendDomainRange = getInterpolatedDomainRange({\n\t\t\t\t\t\tabsMin: 0,\n\t\t\t\t\t\tabsMax,\n\t\t\t\t\t\ttotalNumSteps: 10,\n\t\t\t\t\t\tnegInterpolator: minLoss !== undefined && interpolateBlues,\n\t\t\t\t\t\tposInterpolator: maxGain !== undefined && interpolateReds,\n\t\t\t\t\t\t// force this middleColor to white, knowing that interpolateBlues and interpolateReds,\n\t\t\t\t\t\t// as hardcoded above and below, share similar white colors for their minimum abs values\n\t\t\t\t\t\tmiddleColor: 'white'\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\t// const min = cnvLegendDomainRange.domain[0]\n\t\t\t\t// const max = cnvLegendDomainRange.domain[cnvLegendDomainRange.domain.length - 1]\n\t\t\t\t// const domainRange = Math.abs(max - min)\n\t\t\t\t// if (((min === 0 || max === 0) && domainRange > 1) || domainRange > 5)\n\t\t\t\t// cnvLegendDomainRange = removeInterpolatedOutliers(cnvLegendDomainRange)\n\n\t\t\t\tt.scales = {\n\t\t\t\t\tloss: interpolateBlues,\n\t\t\t\t\tgain: interpolateReds,\n\t\t\t\t\tmaxLoss,\n\t\t\t\t\tmaxGain,\n\t\t\t\t\tminLoss,\n\t\t\t\t\tminGain,\n\t\t\t\t\tabsMax,\n\t\t\t\t\tlegend: cnvLegendDomainRange\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport function setLayout() {\n\tconst s = this.settings.matrix\n\tconst [col, row] = !s.transpose ? ['sample', 'term'] : ['term', 'sample']\n\tconst [_t_, _b_] = s.collabelpos == 'top' ? ['', 'Grp'] : ['Grp', '']\n\tconst [_l_, _r_] = s.rowlabelpos == 'left' ? ['', 'Grp'] : ['Grp', '']\n\tconst top = col + _t_\n\tconst btm = col + _b_\n\tconst left = row + _l_\n\tconst right = row + _r_\n\n\t// TODO: should not need aliases, rename class properties to simplify\n\tthis.samples = this.sampleOrder\n\tthis.sampleGrps = this.sampleOrder.filter(s => s.index === 0)\n\tthis.terms = this.termOrder\n\tthis.termGrps = this.termOrder.filter(t => t.index === 0)\n\n\tconst layout = {}\n\tconst sides = { top, btm, left, right }\n\tfor (const direction in sides) {\n\t\tconst d = sides[direction]\n\t\tconst Direction = direction[0].toUpperCase() + direction.slice(1)\n\t\tlayout[direction] = {\n\t\t\tprefix: d,\n\t\t\tdata: this[`${d}s`],\n\t\t\toffset: s[`${d}LabelOffset`],\n\t\t\tbox: this.dom[`${d}LabelG`],\n\t\t\tkey: this[`${d}Key`],\n\t\t\tlabel: this[`${d}Label`],\n\t\t\trender: this[`render${Direction}Label`],\n\t\t\tisGroup: sides[direction].includes('Grp')\n\t\t}\n\t}\n\n\tconst yOffset = layout.top.offset + s.margin.top + s.scrollHeight\n\tconst xOffset = layout.left.offset + s.margin.left\n\n\tthis.setAutoDimensions(xOffset)\n\tthis.setLabelsAndScales()\n\n\t// When the cell is very small, colspace is 0. Once zoomed in, colspace will be shown, so need to consider it when zooming in\n\t// At this point, computed matrix settings has been merged to settings.matrix by setAutoDimensions.\n\tconst colw = Math.max(s.colwMin, Math.min(s.colwMax, s.colw * s.zoomLevel))\n\tconst dx = colw + s.colspace // s.colspace may have been set to 0 by setAutoDimensions\n\tconst nx = this[`${col}s`].length\n\tconst dy = s.rowh + s.rowspace\n\tconst ny = this[`${row}s`].length\n\tconst mainwByColDimensions =\n\t\tnx * (colw + s.colspace) +\n\t\tthis[`${col}Grps`].length * s.colgspace +\n\t\t(this[`${col}s`].slice(-1)[0]?.totalHtAdjustments || 0)\n\tconst mainw = Math.min(mainwByColDimensions, this.availContentWidth)\n\n\tconst lastRow = this[`${row}s`].slice(-1)[0]\n\tconst mainh = ny * dy + (this[`${row}Grps`].length - 1) * s.rowgspace + (lastRow?.cumulativeAdjustment || 0)\n\n\tconst colLabelFontSize = Math.min(\n\t\tMath.max(colw + s.colspace - 2 * s.collabelpad - s.colspace, s.minLabelFontSize),\n\t\ts.maxLabelFontSize\n\t)\n\n\tconst topFontSize = _t_ == 'Grp' ? s.grpLabelFontSize : colLabelFontSize\n\tlayout.top.attr = {\n\t\tboxTransform: `translate(${xOffset}, ${yOffset - s.collabelgap})`,\n\t\tadjustBoxTransform: dx =>\n\t\t\tlayout.top.box.attr('transform', `translate(${xOffset + dx}, ${yOffset - s.collabelgap})`),\n\t\tlabelTransform: 'rotate(-90)',\n\t\tlabelAnchor: 'start',\n\t\tlabelGY: 0,\n\t\tlabelGTransform: this[`col${_t_}LabelGTransform`],\n\t\tfontSize: topFontSize,\n\t\ttextpos: { coord: 'y', factor: -1 },\n\t\taxisFxn: axisTop\n\t}\n\tif (layout.top.prefix == 'sample')\n\t\tlayout.top.display = s.sampleLabelsToggle !== 'hide' && colw >= s.minLabelFontSize ? '' : 'none'\n\n\tconst btmFontSize = _b_ == 'Grp' ? s.grpLabelFontSize : colLabelFontSize\n\tlayout.btm.attr = {\n\t\tboxTransform: `translate(${xOffset}, ${yOffset + mainh + s.collabelgap})`,\n\t\tadjustBoxTransform: dx =>\n\t\t\tlayout.btm.box.attr('transform', `translate(${xOffset + dx}, ${yOffset + mainh + s.collabelgap})`),\n\t\tlabelTransform: 'rotate(-90)',\n\t\tlabelAnchor: 'end',\n\t\tlabelGY: 0,\n\t\tlabelGTransform: this[`col${_b_}LabelGTransform`],\n\t\tfontSize: btmFontSize,\n\t\ttextpos: { coord: 'y', factor: 1 },\n\t\taxisFxn: axisBottom\n\t}\n\tif (layout.btm.prefix == 'sample')\n\t\tlayout.btm.display = s.sampleLabelsToggle !== 'hide' && colw >= s.minLabelFontSize ? '' : 'none'\n\n\tconst leftFontSize =\n\t\t_l_ == 'Grp'\n\t\t\t? s.grpLabelFontSize\n\t\t\t: Math.max(s.rowh + s.rowspace - 2 * s.rowlabelpad - s.rowspace, s.minLabelFontSize)\n\tlayout.left.attr = {\n\t\tboxTransform: `translate(${xOffset - s.rowlabelgap}, ${yOffset})`,\n\t\tlabelTransform: '',\n\t\tlabelAnchor: 'end',\n\t\tlabelGX: 0,\n\t\tlabelGTransform: this[`row${_l_}LabelGTransform`],\n\t\tfontSize: leftFontSize,\n\t\ttextpos: { coord: 'x', factor: -1 },\n\t\taxisFxn: axisLeft\n\t}\n\n\tconst rtFontSize =\n\t\t_r_ == 'Grp' ? s.grpLabelFontSize : Math.max(s.rowh + s.rowspace - 2 * s.rowlabelpad, s.minLabelFontSize)\n\tlayout.right.attr = {\n\t\tboxTransform: `translate(${xOffset + mainw + s.rowlabelgap}, ${yOffset})`,\n\t\tlabelTransform: '',\n\t\tlabelAnchor: 'start',\n\t\tlabelGX: 0,\n\t\tlabelGTransform: this[`row${_r_}LabelGTransform`],\n\t\tfontSize: rtFontSize,\n\t\ttextpos: { coord: 'x', factor: 1 },\n\t\taxisFxn: axisRight\n\t}\n\n\tthis.dom.sampleLabelsPG.attr('clip-path', s.transpose ? '' : `url(#${this.seriesClipId})`)\n\tthis.dom.termLabelsPG.attr('clip-path', s.transpose ? `url(#${this.seriesClipId})` : '')\n\n\tthis.layout = layout\n\tif (!s.zoomCenterPct) {\n\t\ts.zoomCenterPct = 0.5\n\t\ts.zoomIndex = Math.round((s.zoomCenterPct * mainw) / dx)\n\t\ts.zoomGrpIndex = this.sampleOrder[s.zoomIndex]?.grpIndex || 0\n\t}\n\t// zoomCenter relative to mainw\n\tconst zoomCenter = s.zoomCenterPct * mainw\n\tconst centerCellX = s.zoomIndex * dx + s.zoomGrpIndex * s.colgspace\n\tconst zoomedMainW = Math.max(0, nx * dx + (this[`${col}Grps`].length - 1) * s.colgspace)\n\tconst seriesXoffset =\n\t\ts.zoomLevel <= 1 && mainw >= zoomedMainW ? 0 : Math.max(zoomCenter - centerCellX, mainw - zoomedMainW)\n\n\t//\n\t// canvas-related dimensions, computed to not exceed an ultrawide, zoomed-in\n\t// image width limit that causes the canvas to not render, and also\n\t// the possibly narrowed image must be positioned correctly\n\t//\n\t// for a canvas-generated image, the image is sharper when the image width is not an integer,\n\t// so subtract a negligible decimal value to have a numeric real/float width value\n\tconst imgW = (s.imgWMax > zoomedMainW ? zoomedMainW : s.imgWMax) - 0.0000001\n\tconst halfImgW = 0.5 * imgW\n\t// determine how the canvas image will be offset relative to the center of mainw (the visible width)\n\tconst unwantedRightOvershoot = Math.max(0, centerCellX + halfImgW - zoomedMainW)\n\tconst imgLeftMin = Math.max(0, centerCellX - Math.min(halfImgW, imgW) - unwantedRightOvershoot)\n\t// canvas cells with x posistions that fall outside of xMin and xMax will not be rendered,\n\t// since they will be outside the computed allowed image width\n\tconst xMin = s.zoomLevel <= 1 && mainw >= zoomedMainW ? 0 : imgLeftMin\n\tconst xMax = imgW + xMin\n\t// console.log({ imgW, mainw, xMin, xMax, seriesXoffset, imgLeftMin, xOffset, centerCellX, zoomedMainW, imgWMax: s.imgWMax })\n\n\tthis.dimensions = {\n\t\txMin,\n\t\txMax,\n\t\tdx,\n\t\tdy,\n\t\txOffset,\n\t\tyOffset,\n\t\tmainw,\n\t\tmainh,\n\t\tcolw,\n\t\tzoomedMainW,\n\t\tseriesXoffset: seriesXoffset > 0 ? 0 : seriesXoffset,\n\t\tmaxMainW: Math.max(mainwByColDimensions, this.availContentWidth),\n\t\timgW,\n\t\t// recompute the resolvable \"pixel width\", in case the pixel ratio changes\n\t\t// when moving the browser window to a different monitor,\n\t\t// will be used to sharpen canvas shapes that are smaller than this pixel width\n\t\tpxw: 1 / window.devicePixelRatio\n\t}\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["s", "dx"]
|
|
7
|
+
}
|