@sjcrh/proteinpaint-client 2.181.0 → 2.182.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-YHYYSSKR.js +1371 -0
- package/dist/AIProjectAdmin-D4AASQBM.js +830 -0
- package/dist/AIProjectAdmin-D4AASQBM.js.map +7 -0
- package/dist/AppHeader-T4ZLY3VG.js +833 -0
- package/dist/BoxPlot-DIU4YXNK.js +1217 -0
- package/dist/BoxPlot-DIU4YXNK.js.map +7 -0
- package/dist/CorrelationVolcano-EXH4P56S.js +617 -0
- package/dist/DE-C5K2TVUQ.js +93 -0
- package/dist/DE-C5K2TVUQ.js.map +7 -0
- package/dist/DEinput-KVILE7QQ.js +297 -0
- package/dist/DEinput-KVILE7QQ.js.map +7 -0
- package/dist/DifferentialAnalysis-P6GKHAS5.js +238 -0
- package/dist/Disco-IMLXEBPG.js +3235 -0
- package/dist/Disco-IMLXEBPG.js.map +7 -0
- package/dist/Disco.UI-4A2P5Q55.js +242 -0
- package/dist/DmrPlot-6EEEGD32.js +640 -0
- package/dist/GB-XFO5I6ND.js +1125 -0
- package/dist/HicApp-3LFHOOAR.js +2248 -0
- package/dist/NumBinaryEditor-74PY52BP.js +268 -0
- package/dist/NumBinaryEditor-74PY52BP.js.map +7 -0
- package/dist/NumBinaryEditor.unit.spec-2PYZ7P2R.js +284 -0
- package/dist/NumContEditor-BMWALLQM.js +105 -0
- package/dist/NumContEditor.unit.spec-ETVLVX6A.js +167 -0
- package/dist/NumCustomBinEditor-2XJ6GUWY.js +36 -0
- package/dist/NumCustomBinEditor.unit.spec-TZVL553E.js +282 -0
- package/dist/NumDiscreteEditor-4LNLKAXT.js +177 -0
- package/dist/NumDiscreteEditor-4LNLKAXT.js.map +7 -0
- package/dist/NumDiscreteEditor.unit.spec-KQND2XAE.js +200 -0
- package/dist/NumRegularBinEditor-OYELFDIB.js +36 -0
- package/dist/NumRegularBinEditor.unit.spec-44SALKLH.js +225 -0
- package/dist/NumSplineEditor-SENQC4P2.js +190 -0
- package/dist/NumSplineEditor-SENQC4P2.js.map +7 -0
- package/dist/NumSplineEditor.unit.spec-XKB4XXU4.js +197 -0
- package/dist/NumericDensity-GCNWO7YS.js +36 -0
- package/dist/NumericDensity.unit.spec-7LWNOUYK.js +219 -0
- package/dist/NumericHandler-EMQBI5UI.js +37 -0
- package/dist/NumericHandler.unit.spec-TEELPRIM.js +217 -0
- package/dist/RunChart2-LJBC5X2H.js +756 -0
- package/dist/RunChart2-LJBC5X2H.js.map +7 -0
- package/dist/SC-3EB6UYIS.js +682 -0
- package/dist/SC-3EB6UYIS.js.map +7 -0
- package/dist/Volcano-CPULLVYV.js +1185 -0
- package/dist/Volcano-CPULLVYV.js.map +7 -0
- package/dist/WSIViewer-2YCT4LCM.js +47974 -0
- package/dist/WSIViewer-2YCT4LCM.js.map +7 -0
- package/dist/WsiSamplesPlot-B2DM7Z3Q.js +163 -0
- package/dist/adSandbox-INF3NNEV.js +36 -0
- package/dist/alphaGenome-CO4TQHXN.js +173 -0
- package/dist/app-63JU2YIT.js +47 -0
- package/dist/app-BL3POUOO.js +35 -0
- package/dist/app.js +17 -17
- package/dist/bam-SVEJYICC.js +857 -0
- package/dist/bam-SVEJYICC.js.map +7 -0
- package/dist/barchart-PDUXZAIH.js +45 -0
- package/dist/barchart.data-EXENRVMU.js +22 -0
- package/dist/barchart.events-MQNQTSWI.js +45 -0
- package/dist/barchart.integration.spec-DSO2377T.js +1675 -0
- package/dist/bars.renderer-S7A7I6BQ.js +12 -0
- package/dist/block-OO2NLGUP.js +6200 -0
- package/dist/block-OO2NLGUP.js.map +7 -0
- package/dist/block.init-7J5OHYKA.js +36 -0
- package/dist/block.mds.expressionrank-643H7PN7.js +357 -0
- package/dist/block.mds.geneboxplot-C222ODSL.js +826 -0
- package/dist/block.mds.junction-C5DJRUOK.js +1543 -0
- package/dist/block.mds.svcnv-4G74JQ7Y.js +6799 -0
- package/dist/block.svg-35KUC5R7.js +162 -0
- package/dist/block.tk.aicheck-LLWT6K6H.js +281 -0
- package/dist/block.tk.ase-PQUKY65E.js +363 -0
- package/dist/block.tk.bam-EUEOB7BR.js +1904 -0
- package/dist/block.tk.bedgraphdot-XAHUY545.js +382 -0
- package/dist/block.tk.bigwig.ui-HEOPNL3T.js +209 -0
- package/dist/block.tk.hicstraw-EPH3LEX2.js +821 -0
- package/dist/block.tk.junction-MIUDAIAR.js +2362 -0
- package/dist/block.tk.junction.textmatrixui-AVFUQBDS.js +197 -0
- package/dist/block.tk.ld-ED7YMBQ4.js +97 -0
- package/dist/block.tk.menu-3CVIECWQ.js +1027 -0
- package/dist/block.tk.pgv-HETJVWXH.js +942 -0
- package/dist/brainImaging-K3LHK3DD.js +421 -0
- package/dist/chat-BYX5ARUK.js +148 -0
- package/dist/chunk-25RP5OSE.js +1426 -0
- package/dist/chunk-25RP5OSE.js.map +7 -0
- package/dist/chunk-2LULD7RN.js +31 -0
- package/dist/chunk-2M6JV7YS.js +261 -0
- package/dist/chunk-2M6JV7YS.js.map +7 -0
- package/dist/chunk-2TJESM3Z.js +158 -0
- package/dist/chunk-2TJESM3Z.js.map +7 -0
- package/dist/chunk-2VFYZ3EY.js +102 -0
- package/dist/chunk-3CD5ZROA.js +4952 -0
- package/dist/chunk-3DCABJHB.js +381 -0
- package/dist/chunk-3MMKHYUM.js +95 -0
- package/dist/chunk-3PRPMJTG.js +55 -0
- package/dist/chunk-4JON7TLI.js +176 -0
- package/dist/chunk-4JON7TLI.js.map +7 -0
- package/dist/chunk-5JD4D5GD.js +215 -0
- package/dist/chunk-5JD4D5GD.js.map +7 -0
- package/dist/chunk-5UMPBVA6.js +534 -0
- package/dist/chunk-64FGLSIM.js +56 -0
- package/dist/chunk-64FGLSIM.js.map +7 -0
- package/dist/chunk-6ITDJ5UR.js +261 -0
- package/dist/chunk-6ITDJ5UR.js.map +7 -0
- package/dist/chunk-6LAE5AVA.js +13624 -0
- package/dist/chunk-6VLA5NEW.js +335 -0
- package/dist/chunk-6VLA5NEW.js.map +7 -0
- package/dist/chunk-7FKIAQ4K.js +17 -0
- package/dist/chunk-7FKIAQ4K.js.map +7 -0
- package/dist/chunk-7FTDQDVF.js +824 -0
- package/dist/chunk-7IEZ2KMW.js +142 -0
- package/dist/chunk-7RN3L2BX.js +1788 -0
- package/dist/chunk-7RN3L2BX.js.map +7 -0
- package/dist/chunk-A5AFIW2T.js +14 -0
- package/dist/chunk-A6TQGNDQ.js +421 -0
- package/dist/chunk-A6TQGNDQ.js.map +7 -0
- package/dist/chunk-AIBODF32.js +2784 -0
- package/dist/chunk-AWWW6K2I.js +407 -0
- package/dist/chunk-AWWW6K2I.js.map +7 -0
- package/dist/chunk-BAY47D5E.js +226 -0
- package/dist/chunk-CFHKYLDY.js +26 -0
- package/dist/chunk-CJZN7HFL.js +293 -0
- package/dist/chunk-CXOF4UGH.js +229 -0
- package/dist/chunk-CXOF4UGH.js.map +7 -0
- package/dist/chunk-D4QFQQWJ.js +170 -0
- package/dist/chunk-DNCSPTOQ.js +446 -0
- package/dist/chunk-DQGSCCI3.js +100 -0
- package/dist/chunk-EWGMLVC7.js +34 -0
- package/dist/chunk-F7PB5HGT.js +148 -0
- package/dist/chunk-G7QKLA54.js +92 -0
- package/dist/chunk-HWHG63LH.js +148 -0
- package/dist/chunk-HWHG63LH.js.map +7 -0
- package/dist/chunk-HYZG6OPC.js +467 -0
- package/dist/chunk-HYZG6OPC.js.map +7 -0
- package/dist/chunk-IBBMKCO7.js +526 -0
- package/dist/chunk-IBBMKCO7.js.map +7 -0
- package/dist/chunk-IQUYTZOA.js +455 -0
- package/dist/chunk-IQUYTZOA.js.map +7 -0
- package/dist/chunk-J5RINDKS.js +480 -0
- package/dist/chunk-JMPSZMDD.js +52 -0
- package/dist/chunk-KQMEJUWI.js +815 -0
- package/dist/chunk-KWFEGPZL.js +97 -0
- package/dist/chunk-KWFEGPZL.js.map +7 -0
- package/dist/chunk-LBXZGYU5.js +368 -0
- package/dist/chunk-LBXZGYU5.js.map +7 -0
- package/dist/chunk-LRBNYEFI.js +50 -0
- package/dist/chunk-LRBNYEFI.js.map +7 -0
- package/dist/chunk-LRMV5DNW.js +441 -0
- package/dist/chunk-LWNOC7AJ.js +54 -0
- package/dist/chunk-MICNOSX7.js +129 -0
- package/dist/chunk-MLWNMXAV.js +272 -0
- package/dist/chunk-MMBLSLQR.js +158 -0
- package/dist/chunk-N3QEGDEZ.js +117 -0
- package/dist/chunk-N3QEGDEZ.js.map +7 -0
- package/dist/chunk-NV5XWADG.js +1150 -0
- package/dist/chunk-NVB7MQLH.js +20649 -0
- package/dist/chunk-NVB7MQLH.js.map +7 -0
- package/dist/chunk-O3255WPP.js +1087 -0
- package/dist/chunk-OSM7YS23.js +276 -0
- package/dist/chunk-PEWHCKCH.js +1205 -0
- package/dist/chunk-PEWHCKCH.js.map +7 -0
- package/dist/chunk-Q7PYFSNU.js +107 -0
- package/dist/chunk-QEZPKEWB.js +1159 -0
- package/dist/chunk-QEZPKEWB.js.map +7 -0
- package/dist/chunk-QMI222IJ.js +386 -0
- package/dist/chunk-QRIRWDIW.js +252 -0
- package/dist/chunk-SJTOSA7E.js +629 -0
- package/dist/chunk-SRYFYAXK.js +615 -0
- package/dist/chunk-SSPDNHDW.js +398 -0
- package/dist/chunk-SSPDNHDW.js.map +7 -0
- package/dist/chunk-SYMOQE3X.js +37 -0
- package/dist/chunk-SYMOQE3X.js.map +7 -0
- package/dist/chunk-TITA4HJA.js +228 -0
- package/dist/chunk-U7ZMIMI5.js +2815 -0
- package/dist/chunk-UJU3Q7QJ.js +119 -0
- package/dist/chunk-UL2ISTHR.js +2672 -0
- package/dist/chunk-VIPMLSZP.js +217 -0
- package/dist/chunk-VYIO7T6J.js +82 -0
- package/dist/chunk-VYIO7T6J.js.map +7 -0
- package/dist/chunk-VZPYIG77.js +1271 -0
- package/dist/chunk-VZPYIG77.js.map +7 -0
- package/dist/chunk-W345H42C.js +273 -0
- package/dist/chunk-W345H42C.js.map +7 -0
- package/dist/chunk-WGL6FIUE.js +330 -0
- package/dist/chunk-WIYKAKWE.js +302 -0
- package/dist/chunk-WJGVQJSX.js +514 -0
- package/dist/chunk-WJGVQJSX.js.map +7 -0
- package/dist/chunk-WPHOEG56.js +194 -0
- package/dist/chunk-WU63AOK2.js +4207 -0
- package/dist/chunk-WU63AOK2.js.map +7 -0
- package/dist/chunk-XS4QWRS3.js +205 -0
- package/dist/chunk-XYFDBYOY.js +1658 -0
- package/dist/chunk-XYFDBYOY.js.map +7 -0
- package/dist/chunk-YDWRIMCT.js +289 -0
- package/dist/chunk-YDWRIMCT.js.map +7 -0
- package/dist/chunk-YK5NFMHR.js +269 -0
- package/dist/chunk-YK5NFMHR.js.map +7 -0
- package/dist/chunk-YSW57QDM.js +6364 -0
- package/dist/chunk-YXQNZPCO.js +203 -0
- package/dist/chunk-YYYJB53A.js +2370 -0
- package/dist/chunk-ZTKQLABY.js +470 -0
- package/dist/condition-AM523RDR.js +330 -0
- package/dist/controls-HTMH5QBP.js +39 -0
- package/dist/controls.config-EEK2RBPI.js +37 -0
- package/dist/correlation-HKD67SPS.js +96 -0
- package/dist/cuminc-66V55MMN.js +1147 -0
- package/dist/cuminc.integration.spec-PNTOPB2L.js +676 -0
- package/dist/customdata.inputui-Z4WQDU6I.js +285 -0
- package/dist/dataDownload-3ZEI22OK.js +328 -0
- package/dist/dataDownload.integration.spec-C3JRC6K5.js +191 -0
- package/dist/databrowser.ui-Q365SHBG.js +419 -0
- package/dist/dictionary-D4E2VEJT.js +109 -0
- package/dist/dictionary-D4E2VEJT.js.map +7 -0
- package/dist/dnaMethylation-IFZWWBUG.js +36 -0
- package/dist/dnaMethylation.integration.spec-UKV4BSIO.js +165 -0
- package/dist/dnaMethylation.integration.spec-UKV4BSIO.js.map +7 -0
- package/dist/e2pca-I3QXF7EM.js +348 -0
- package/dist/ep-2VCQ36GT.js +1254 -0
- package/dist/expclust.gdc.spec-VWIQFY67.js +305 -0
- package/dist/facet-CHP3VUWS.js +519 -0
- package/dist/geneExpClustering-YDIDEH2O.js +246 -0
- package/dist/geneExpression-FA5RJRHZ.js +36 -0
- package/dist/geneExpression-X2KXJPND.js +312 -0
- package/dist/geneExpression.unit.spec-3LVHYZGG.js +100 -0
- package/dist/geneORA-4CAYRKSN.js +276 -0
- package/dist/geneVariant-OCOTNUH4.js +39 -0
- package/dist/geneVariant-Y4L5W5HF.js +37 -0
- package/dist/geneVariant.integration.spec-BOJ5MM5K.js +196 -0
- package/dist/genefusion.ui-I6HZOBIV.js +249 -0
- package/dist/geneset-GEWKDAAT.js +194 -0
- package/dist/genomeBrowser.spec-FDEGH4DY.js +279 -0
- package/dist/grin2-K56B6XBZ.js +1031 -0
- package/dist/grin2-V6FMM44N.js +1554 -0
- package/dist/gsea-UNPPRU2U.js +45 -0
- package/dist/hierCluster-DXAWRQNI.js +58 -0
- package/dist/hierCluster-SPIQA2M2.js +62 -0
- package/dist/hierCluster.config-JW6D3T3Q.js +38 -0
- package/dist/hierCluster.integration.spec-5NXZY4LG.js +374 -0
- package/dist/hierCluster.interactivity-CPPBXHM7.js +52 -0
- package/dist/hierCluster.renderers-A6MEGO2B.js +21 -0
- package/dist/imagePlot-QLAHCULW.js +139 -0
- package/dist/importPlot-6ITZ6U7G.js +8 -0
- package/dist/isoformExpression-7GAUF2QV.js +38 -0
- package/dist/isoformExpression.unit.spec-3BVXVVNO.js +206 -0
- package/dist/isoformExpression.unit.spec-3BVXVVNO.js.map +7 -0
- package/dist/jspdf.es.min-FC3BCETM.js +40 -0
- package/dist/launch.adhoc-HFHBAUR6.js +40 -0
- package/dist/leftlabel.sample-CWPJUCHR.js +257 -0
- package/dist/lollipop-QFRQLEER.js +166 -0
- package/dist/maf-OEODBT3Y.js +450 -0
- package/dist/maf-OEODBT3Y.js.map +7 -0
- package/dist/maftimeline-2DFIF4C4.js +591 -0
- package/dist/matrix-3HFB5TUU.js +57 -0
- package/dist/matrix-MIXK27AD.js +62 -0
- package/dist/matrix.cells-U7AQNEBP.js +28 -0
- package/dist/matrix.config-FX5MHX6O.js +39 -0
- package/dist/matrix.controls-5K7BB5Z4.js +37 -0
- package/dist/matrix.data-EEIY6AO4.js +25 -0
- package/dist/matrix.dom-6QL3AJMW.js +11 -0
- package/dist/matrix.groups-CUB6UWC5.js +26 -0
- package/dist/matrix.integration.spec-ML4T7FRG.js +3070 -0
- package/dist/matrix.interactivity-QMPWX63Q.js +40 -0
- package/dist/matrix.layout-7SEF6MYI.js +42 -0
- package/dist/matrix.legend-42LQGAGX.js +22 -0
- package/dist/matrix.renderers-ZF7LLER3.js +36 -0
- package/dist/matrix.serieses-4B2WB526.js +21 -0
- package/dist/matrix.sort-BJACNR7G.js +27 -0
- package/dist/matrix.sort.unit.spec-ZGSM7HDJ.js +470 -0
- package/dist/matrix.sorterUi-W6XFYZY2.js +18 -0
- package/dist/matrix.sorterUi.unit.spec-V34ZZD7A.js +340 -0
- package/dist/mavb-NVQVFU6E.js +730 -0
- package/dist/mds.fimo-HOCF6U6K.js +516 -0
- package/dist/mds.samplescatterplot-ULD5BK5R.js +1548 -0
- package/dist/mds.survivalplot-5US32RQD.js +481 -0
- package/dist/oncomatrix-Y3G3MUJJ.js +293 -0
- package/dist/oncomatrix-Y3G3MUJJ.js.map +7 -0
- package/dist/oncomatrix.spec-MFUJLWEP.js +446 -0
- package/dist/plot.2dvaf-F4WZ4YPU.js +375 -0
- package/dist/plot.app-YFFLLBU5.js +39 -0
- package/dist/plot.barplot-2EJ2MWQD.js +100 -0
- package/dist/plot.boxplot-AKZM443E.js +150 -0
- package/dist/plot.brainImaging-DR6WJNFZ.js +51 -0
- package/dist/plot.disco-LBE5H67U.js +101 -0
- package/dist/plot.disco-LBE5H67U.js.map +7 -0
- package/dist/plot.dzi-R2MR7HAT.js +33 -0
- package/dist/plot.ssgq-C52YIUFY.js +137 -0
- package/dist/plot.vaf2cov-FOD3K7BC.js +257 -0
- package/dist/plot.wsi-D2TXYERK.js +36 -0
- package/dist/polar-2LC35O6K.js +184 -0
- package/dist/polar2-QPUOEUJZ.js +226 -0
- package/dist/profile.spec-3NCDGHLX.js +78 -0
- package/dist/profileBarchart-PPQ3NL4D.js +265 -0
- package/dist/profileForms-GS3VVW65.js +438 -0
- package/dist/profilePlot-DQWFH5NC.js +52 -0
- package/dist/profileRadar-KAKRDC4R.js +261 -0
- package/dist/profileRadarFacility-FZP62VPV.js +261 -0
- package/dist/profileRadarFacility-FZP62VPV.js.map +7 -0
- package/dist/proteinView-LWVWJY54.js +444 -0
- package/dist/proteinView-LWVWJY54.js.map +7 -0
- package/dist/proteomeAbundance-DE4NVBCN.js +21 -0
- package/dist/proteomeAbundance-LTB3QR3G.js +63 -0
- package/dist/qualitative-YOFAROVR.js +41 -0
- package/dist/regression-PF6IAHJK.js +54 -0
- package/dist/regression.inputs-77IUYED3.js +46 -0
- package/dist/regression.inputs.term-WWCHU6KF.js +46 -0
- package/dist/regression.inputs.values.table-I6GM6MU7.js +43 -0
- package/dist/regression.integration.spec-DGEZUURU.js +782 -0
- package/dist/regression.integration.spec-DGEZUURU.js.map +7 -0
- package/dist/regression.results-6GXNKYUS.js +38 -0
- package/dist/regression.spec-MEFQNY34.js +706 -0
- package/dist/report-LG3UKZHL.js +220 -0
- package/dist/sampleScatter.spec-D3IK7MSA.js +200 -0
- package/dist/sampleView-XUI2J5EC.js +46 -0
- package/dist/samplelst-A7IHCBAX.js +109 -0
- package/dist/samplematrix-VGUU7Q75.js +2196 -0
- package/dist/sc-UVKVT2RY.js +84 -0
- package/dist/scatter-UILUYOGO.js +800 -0
- package/dist/scatter.integration.spec-VPNALPUG.js +1194 -0
- package/dist/scatter.integration.spec-VPNALPUG.js.map +7 -0
- package/dist/selectGenomeWithTklst-LWKIMZEJ.js +132 -0
- package/dist/singleCellCellType-TI52WQQ4.js +36 -0
- package/dist/singleCellCellType.unit.spec-R3BTRFRU.js +158 -0
- package/dist/singleCellCellType.unit.spec-R3BTRFRU.js.map +7 -0
- package/dist/singleCellGeneExpression-I5SAHMGI.js +36 -0
- package/dist/singleCellGeneExpression.unit.spec-2JTB5HLY.js +151 -0
- package/dist/singleCellGeneExpression.unit.spec-2JTB5HLY.js.map +7 -0
- package/dist/singleCellPlot-HRWCHYCI.js +51 -0
- package/dist/singlecell-BHPP7KCO.js +1570 -0
- package/dist/singlecell-PQNKBKR7.js +84 -0
- package/dist/snp-V4YGI7B3.js +36 -0
- package/dist/snp.unit.spec-JSUCMGNP.js +174 -0
- package/dist/snplocus-3YT5NNCH.js +206 -0
- package/dist/spliceevent.a53ss.diagram-QEQJ44YH.js +149 -0
- package/dist/spliceevent.exonskip.diagram-HMWVSOJG.js +275 -0
- package/dist/spliceevent.noeventdiagram-L5HUCT5A.js +458 -0
- package/dist/ssGSEA-Z3XRCBYW.js +36 -0
- package/dist/ssGSEA.unit.spec-EUCTV2XJ.js +86 -0
- package/dist/summarizeCnvGeneexp-O7O2CFW4.js +161 -0
- package/dist/summarizeCnvGeneexp-O7O2CFW4.js.map +7 -0
- package/dist/summarizeGeneexpSurvival-DDPH56EI.js +106 -0
- package/dist/summarizeGeneexpSurvival-DDPH56EI.js.map +7 -0
- package/dist/summarizeMutationCnv-6KJQUJWR.js +162 -0
- package/dist/summarizeMutationCnv-6KJQUJWR.js.map +7 -0
- package/dist/summarizeMutationDiagnosis-HFFYLQOF.js +38 -0
- package/dist/summarizeMutationSurvival-OBK6YILP.js +97 -0
- package/dist/summary-W55WWIU2.js +47 -0
- package/dist/summary.integration.spec-X2PNAUKW.js +412 -0
- package/dist/summaryInput-X547Q6C7.js +218 -0
- package/dist/sunburst-KWNGYBRI.js +282 -0
- package/dist/sunburst-KWNGYBRI.js.map +7 -0
- package/dist/survival-PAJZHZPD.js +56 -0
- package/dist/survival-TQPWMOD5.js +44 -0
- package/dist/survival.integration.spec-YMQASOMX.js +800 -0
- package/dist/survival.integration.spec-YMQASOMX.js.map +7 -0
- package/dist/svg2pdf.es.min-CYTPRWNB.js +3157 -0
- package/dist/svgraph-Y35C2M3D.js +1385 -0
- package/dist/svmr-WGCIR7PE.js +3840 -0
- package/dist/table-Q3B2YXEN.js +198 -0
- package/dist/termCollection-A6YTSM5I.js +177 -0
- package/dist/termCollection-NTFNVQ7D.js +36 -0
- package/dist/termCollection.unit.spec-BX54PHKT.js +206 -0
- package/dist/tk-OCBZ7YR6.js +44 -0
- package/dist/tp.ui-ZT47N2CO.js +1457 -0
- package/dist/tvs.dt-BFB253O3.js +37 -0
- package/dist/tvs.dtcnv.categorical-ARGAYIDO.js +38 -0
- package/dist/tvs.dtcnv.continuous-JCU23ERV.js +70 -0
- package/dist/tvs.dtfusion-FV64XLZI.js +38 -0
- package/dist/tvs.dtsnvindel-DMOXMEVL.js +38 -0
- package/dist/tvs.dtsv-53FSZEPV.js +38 -0
- package/dist/tvs.samplelst-MVPL6VXX.js +102 -0
- package/dist/tvs.termCollection-UGJXTHTG.js +151 -0
- package/dist/violin-ZLUDGSQG.js +44 -0
- package/dist/violin.integration.spec-KWOFOFLT.js +1423 -0
- package/dist/violin.integration.spec-KWOFOFLT.js.map +7 -0
- package/dist/violin.interactivity-ULDOCZWW.js +36 -0
- package/dist/violin.renderer-KJAXPMIK.js +38 -0
- package/dist/vocabulary-34YUQ4ZQ.js +39 -0
- package/package.json +3 -3
- package/dist/2dmaf-PFPBHIUI.js +0 -1371
- package/dist/AIProjectAdmin-H2GB5ZOX.js +0 -830
- package/dist/AIProjectAdmin-H2GB5ZOX.js.map +0 -7
- package/dist/AppHeader-FCWML6WH.js +0 -833
- package/dist/BoxPlot-QKXGF76K.js +0 -1295
- package/dist/BoxPlot-QKXGF76K.js.map +0 -7
- package/dist/CorrelationVolcano-ZJ7Q6JBC.js +0 -617
- package/dist/DifferentialAnalysis-PWCFCWFY.js +0 -238
- package/dist/Disco-IE5JKIF2.js +0 -3199
- package/dist/Disco-IE5JKIF2.js.map +0 -7
- package/dist/Disco.UI-SR7LSJE3.js +0 -242
- package/dist/DmrPlot-UDY7GOSY.js +0 -640
- package/dist/GB-GNTOP5C6.js +0 -1125
- package/dist/HicApp-FZTJL3OA.js +0 -2248
- package/dist/NumBinaryEditor-R5QVG3C4.js +0 -266
- package/dist/NumBinaryEditor-R5QVG3C4.js.map +0 -7
- package/dist/NumBinaryEditor.unit.spec-BMVRI24W.js +0 -284
- package/dist/NumContEditor-6JT5D6IW.js +0 -105
- package/dist/NumContEditor.unit.spec-XBQF2SW6.js +0 -167
- package/dist/NumCustomBinEditor-MEKEFOQI.js +0 -36
- package/dist/NumCustomBinEditor.unit.spec-LEMQJHDT.js +0 -282
- package/dist/NumDiscreteEditor-U3N37XRQ.js +0 -170
- package/dist/NumDiscreteEditor-U3N37XRQ.js.map +0 -7
- package/dist/NumDiscreteEditor.unit.spec-WQM4DLKO.js +0 -200
- package/dist/NumRegularBinEditor-HQR5Y6P7.js +0 -36
- package/dist/NumRegularBinEditor.unit.spec-FL4IFT7L.js +0 -225
- package/dist/NumSplineEditor-OESWMWP5.js +0 -188
- package/dist/NumSplineEditor-OESWMWP5.js.map +0 -7
- package/dist/NumSplineEditor.unit.spec-HYOXO45B.js +0 -197
- package/dist/NumericDensity-GJZ4BBJS.js +0 -36
- package/dist/NumericDensity.unit.spec-6LXWAXW7.js +0 -219
- package/dist/NumericHandler-LZIMPOHS.js +0 -37
- package/dist/NumericHandler.unit.spec-ZSU35AMD.js +0 -217
- package/dist/RunChart2-7XV6TIFO.js +0 -756
- package/dist/RunChart2-7XV6TIFO.js.map +0 -7
- package/dist/SC-E4EYAG26.js +0 -733
- package/dist/SC-E4EYAG26.js.map +0 -7
- package/dist/Volcano-Z7TJK6PW.js +0 -1187
- package/dist/Volcano-Z7TJK6PW.js.map +0 -7
- package/dist/WSIViewer-ZH2XABLC.js +0 -47933
- package/dist/WSIViewer-ZH2XABLC.js.map +0 -7
- package/dist/WsiSamplesPlot-BL47MDHQ.js +0 -163
- package/dist/adSandbox-V3NTKVBC.js +0 -36
- package/dist/alphaGenome-IQVFCSWQ.js +0 -173
- package/dist/app-GJLZ2G2U.js +0 -47
- package/dist/app-YSD2U64Q.js +0 -35
- package/dist/bam-TRIF3AIQ.js +0 -849
- package/dist/bam-TRIF3AIQ.js.map +0 -7
- package/dist/barchart-GLLUYTAJ.js +0 -45
- package/dist/barchart.data-FRYRGKH3.js +0 -22
- package/dist/barchart.events-WODVSHRN.js +0 -45
- package/dist/barchart.integration.spec-6POS3V3T.js +0 -1675
- package/dist/bars.renderer-T5R3UIBW.js +0 -12
- package/dist/block-2QM37YSE.js +0 -6300
- package/dist/block-2QM37YSE.js.map +0 -7
- package/dist/block.init-7HDLKQVX.js +0 -36
- package/dist/block.mds.expressionrank-UIB25S6E.js +0 -357
- package/dist/block.mds.geneboxplot-4PQYO3MR.js +0 -826
- package/dist/block.mds.junction-DWFYZEC2.js +0 -1543
- package/dist/block.mds.svcnv-N3KJJ4GQ.js +0 -6799
- package/dist/block.svg-2HBDI7BT.js +0 -162
- package/dist/block.tk.aicheck-2M4522IQ.js +0 -281
- package/dist/block.tk.ase-URIKF6JD.js +0 -363
- package/dist/block.tk.bam-HTDMASHX.js +0 -1904
- package/dist/block.tk.bedgraphdot-RVKMSFCQ.js +0 -382
- package/dist/block.tk.bigwig.ui-7JPEOIKM.js +0 -209
- package/dist/block.tk.hicstraw-72J7UJ2J.js +0 -821
- package/dist/block.tk.junction-GGFMBCV5.js +0 -2362
- package/dist/block.tk.junction.textmatrixui-44SAYYWE.js +0 -197
- package/dist/block.tk.ld-XDKJFEOL.js +0 -97
- package/dist/block.tk.menu-46FOTM7H.js +0 -1027
- package/dist/block.tk.pgv-ZVONRT4B.js +0 -942
- package/dist/brainImaging-CSLO7ODJ.js +0 -421
- package/dist/chat-GMD22F3K.js +0 -148
- package/dist/chunk-22KWZOCN.js +0 -153
- package/dist/chunk-22KWZOCN.js.map +0 -7
- package/dist/chunk-2NQ4TM74.js +0 -48
- package/dist/chunk-2NQ4TM74.js.map +0 -7
- package/dist/chunk-2SRMRC6L.js +0 -421
- package/dist/chunk-2SRMRC6L.js.map +0 -7
- package/dist/chunk-2TIYJ3PH.js +0 -815
- package/dist/chunk-2UWHV2SB.js +0 -261
- package/dist/chunk-2UWHV2SB.js.map +0 -7
- package/dist/chunk-3656ZY4T.js +0 -237
- package/dist/chunk-3656ZY4T.js.map +0 -7
- package/dist/chunk-3TU6TRLQ.js +0 -98
- package/dist/chunk-3TU6TRLQ.js.map +0 -7
- package/dist/chunk-4FJ5GS6P.js +0 -4202
- package/dist/chunk-4FJ5GS6P.js.map +0 -7
- package/dist/chunk-4FO7KZY2.js +0 -534
- package/dist/chunk-4OEOQX4L.js +0 -334
- package/dist/chunk-4OEOQX4L.js.map +0 -7
- package/dist/chunk-5ZICCKEH.js +0 -4952
- package/dist/chunk-6UU7VPDO.js +0 -272
- package/dist/chunk-6YLQN7FF.js +0 -441
- package/dist/chunk-74QJDBIP.js +0 -480
- package/dist/chunk-75EBDB7G.js +0 -21
- package/dist/chunk-75EBDB7G.js.map +0 -7
- package/dist/chunk-7FXPMQRW.js +0 -34
- package/dist/chunk-A2Y3GEUH.js +0 -228
- package/dist/chunk-AAEXTQT3.js +0 -330
- package/dist/chunk-AG6HVFQY.js +0 -504
- package/dist/chunk-AG6HVFQY.js.map +0 -7
- package/dist/chunk-AHLUW2BN.js +0 -129
- package/dist/chunk-AYDXOUFX.js +0 -1275
- package/dist/chunk-AYDXOUFX.js.map +0 -7
- package/dist/chunk-BBIPZ2UF.js +0 -52
- package/dist/chunk-BBVOZ5BY.js +0 -230
- package/dist/chunk-BBVOZ5BY.js.map +0 -7
- package/dist/chunk-BHVDOW3W.js +0 -470
- package/dist/chunk-BNN32RI2.js +0 -36
- package/dist/chunk-BNN32RI2.js.map +0 -7
- package/dist/chunk-BQLC6QOH.js +0 -368
- package/dist/chunk-BQLC6QOH.js.map +0 -7
- package/dist/chunk-C5QOWZK6.js +0 -629
- package/dist/chunk-CJJ6LDZM.js +0 -170
- package/dist/chunk-CJJ6LDZM.js.map +0 -7
- package/dist/chunk-D4U5X2QQ.js +0 -261
- package/dist/chunk-D4U5X2QQ.js.map +0 -7
- package/dist/chunk-DV444SFD.js +0 -26
- package/dist/chunk-DWWAB4YQ.js +0 -102
- package/dist/chunk-FP5VKE3Z.js +0 -170
- package/dist/chunk-G2MAZI6I.js +0 -205
- package/dist/chunk-HLRNIO5K.js +0 -158
- package/dist/chunk-HTHH2B6D.js +0 -46
- package/dist/chunk-HTHH2B6D.js.map +0 -7
- package/dist/chunk-I7X6K4OL.js +0 -217
- package/dist/chunk-IC7SUXJD.js +0 -82
- package/dist/chunk-IC7SUXJD.js.map +0 -7
- package/dist/chunk-ITYEOGLB.js +0 -302
- package/dist/chunk-J6XKDYNZ.js +0 -276
- package/dist/chunk-JDX4E7ZO.js +0 -381
- package/dist/chunk-JWX7GYHP.js +0 -95
- package/dist/chunk-KISFQDQE.js +0 -258
- package/dist/chunk-KISFQDQE.js.map +0 -7
- package/dist/chunk-KLFROH3F.js +0 -203
- package/dist/chunk-KQSN7PUK.js +0 -215
- package/dist/chunk-KQSN7PUK.js.map +0 -7
- package/dist/chunk-L2ED35QZ.js +0 -2815
- package/dist/chunk-LLPFFNLV.js +0 -526
- package/dist/chunk-LLPFFNLV.js.map +0 -7
- package/dist/chunk-LRV4VWRF.js +0 -94
- package/dist/chunk-LRV4VWRF.js.map +0 -7
- package/dist/chunk-M464GTNI.js +0 -615
- package/dist/chunk-MDN3K2BG.js +0 -229
- package/dist/chunk-MDN3K2BG.js.map +0 -7
- package/dist/chunk-N46WTUX7.js +0 -286
- package/dist/chunk-N46WTUX7.js.map +0 -7
- package/dist/chunk-NBMJ2UMA.js +0 -194
- package/dist/chunk-NI7VSKJI.js +0 -293
- package/dist/chunk-NTVM4ZPG.js +0 -2784
- package/dist/chunk-O64UTRAC.js +0 -252
- package/dist/chunk-OM326NV3.js +0 -100
- package/dist/chunk-P4ENJUBN.js +0 -386
- package/dist/chunk-PEKVBCIH.js +0 -824
- package/dist/chunk-PF6MKI4X.js +0 -92
- package/dist/chunk-PJTQP6RL.js +0 -54
- package/dist/chunk-PVSRVJBE.js +0 -1201
- package/dist/chunk-PVSRVJBE.js.map +0 -7
- package/dist/chunk-PZ3L3KM6.js +0 -55
- package/dist/chunk-QEHUEG4X.js +0 -1788
- package/dist/chunk-QEHUEG4X.js.map +0 -7
- package/dist/chunk-QXCVG66S.js +0 -2672
- package/dist/chunk-RIGZHHCP.js +0 -119
- package/dist/chunk-SEIANPCX.js +0 -142
- package/dist/chunk-SK7YVOQN.js +0 -148
- package/dist/chunk-SPPZB5ZQ.js +0 -158
- package/dist/chunk-SPPZB5ZQ.js.map +0 -7
- package/dist/chunk-T5KFRIP4.js +0 -1087
- package/dist/chunk-TTSNECVD.js +0 -1413
- package/dist/chunk-TTSNECVD.js.map +0 -7
- package/dist/chunk-TVXESYIR.js +0 -439
- package/dist/chunk-TVXESYIR.js.map +0 -7
- package/dist/chunk-U3UR3U3F.js +0 -446
- package/dist/chunk-UBS5UVIY.js +0 -13624
- package/dist/chunk-UFYU7AKL.js +0 -107
- package/dist/chunk-VIYGTRUZ.js +0 -6364
- package/dist/chunk-WCTH7CB3.js +0 -31
- package/dist/chunk-WGSWVYHY.js +0 -1155
- package/dist/chunk-WGSWVYHY.js.map +0 -7
- package/dist/chunk-WYZ4COTF.js +0 -226
- package/dist/chunk-WZRXJ5LL.js +0 -2370
- package/dist/chunk-XDI4UFCZ.js +0 -467
- package/dist/chunk-XDI4UFCZ.js.map +0 -7
- package/dist/chunk-XZZLEHWC.js +0 -20328
- package/dist/chunk-XZZLEHWC.js.map +0 -7
- package/dist/chunk-Y7JAPSMG.js +0 -406
- package/dist/chunk-Y7JAPSMG.js.map +0 -7
- package/dist/chunk-YJ2HC4CP.js +0 -1150
- package/dist/chunk-ZLH4PJKX.js +0 -1658
- package/dist/chunk-ZLH4PJKX.js.map +0 -7
- package/dist/chunk-ZZSDYKD5.js +0 -14
- package/dist/condition-S52W57ZO.js +0 -330
- package/dist/controls-B4MTTPWO.js +0 -39
- package/dist/controls.config-6KBCTIPN.js +0 -37
- package/dist/correlation-VSBCBFFP.js +0 -96
- package/dist/cuminc-T5ZPAGVB.js +0 -1147
- package/dist/cuminc.integration.spec-2QT3IPHU.js +0 -676
- package/dist/customdata.inputui-5MHQQHJL.js +0 -285
- package/dist/dataDownload-S4EBNHMW.js +0 -328
- package/dist/dataDownload.integration.spec-OVSIWI34.js +0 -191
- package/dist/databrowser.ui-EAJS3NXV.js +0 -419
- package/dist/dictionary-CQHSMVYF.js +0 -98
- package/dist/dictionary-CQHSMVYF.js.map +0 -7
- package/dist/dnaMethylation-G3F2INDH.js +0 -36
- package/dist/dnaMethylation.integration.spec-FWF4353K.js +0 -179
- package/dist/dnaMethylation.integration.spec-FWF4353K.js.map +0 -7
- package/dist/e2pca-SLXGPVHP.js +0 -348
- package/dist/ep-4HGUSDGJ.js +0 -1254
- package/dist/expclust.gdc.spec-JJ42ESKE.js +0 -305
- package/dist/facet-6WVTVKDV.js +0 -519
- package/dist/geneExpClustering-5LOZPD5X.js +0 -246
- package/dist/geneExpression-BJ46UGXW.js +0 -312
- package/dist/geneExpression-PTSZWKCM.js +0 -36
- package/dist/geneExpression.unit.spec-NW5HTO7F.js +0 -100
- package/dist/geneORA-H65EZ7QO.js +0 -276
- package/dist/geneVariant-T6GWOVZD.js +0 -39
- package/dist/geneVariant-WTDFZTXG.js +0 -37
- package/dist/geneVariant.integration.spec-OPSBRUM3.js +0 -196
- package/dist/genefusion.ui-RSBCC37C.js +0 -249
- package/dist/geneset-B67PAZVL.js +0 -194
- package/dist/genomeBrowser.spec-AUTULF4C.js +0 -279
- package/dist/grin2-CMBP7XVH.js +0 -1031
- package/dist/grin2-JVCNH3KW.js +0 -1554
- package/dist/gsea-H774WVPQ.js +0 -45
- package/dist/hierCluster-IQTXQUMI.js +0 -58
- package/dist/hierCluster-ZQJDXYBD.js +0 -62
- package/dist/hierCluster.config-ZHJTZK5L.js +0 -38
- package/dist/hierCluster.integration.spec-MSJ5GHHK.js +0 -374
- package/dist/hierCluster.interactivity-H2GNO6AA.js +0 -52
- package/dist/hierCluster.renderers-2TE6HMK2.js +0 -21
- package/dist/imagePlot-FMNMB7JZ.js +0 -139
- package/dist/importPlot-N66G43XX.js +0 -8
- package/dist/isoformExpression-B64WLO3H.js +0 -38
- package/dist/isoformExpression.unit.spec-D2R6CRKO.js +0 -126
- package/dist/isoformExpression.unit.spec-D2R6CRKO.js.map +0 -7
- package/dist/jspdf.es.min-DO4YWL2R.js +0 -40
- package/dist/launch.adhoc-MPRAJ3GN.js +0 -40
- package/dist/leftlabel.sample-4JCKYXED.js +0 -257
- package/dist/lollipop-25ADHT7O.js +0 -166
- package/dist/maf-POYTGXT4.js +0 -442
- package/dist/maf-POYTGXT4.js.map +0 -7
- package/dist/maftimeline-FOQF6O3X.js +0 -591
- package/dist/matrix-LHLAYDTQ.js +0 -57
- package/dist/matrix-ZKF7NRAD.js +0 -62
- package/dist/matrix.cells-H4TS74FJ.js +0 -28
- package/dist/matrix.config-HE7QUDER.js +0 -39
- package/dist/matrix.controls-VILCLNSC.js +0 -37
- package/dist/matrix.data-2OUWYD35.js +0 -25
- package/dist/matrix.dom-IZFFS4RQ.js +0 -11
- package/dist/matrix.groups-5BGJIOOJ.js +0 -26
- package/dist/matrix.integration.spec-DSXZHAEY.js +0 -3070
- package/dist/matrix.interactivity-VK3NWX5M.js +0 -40
- package/dist/matrix.layout-PUNMMNCC.js +0 -42
- package/dist/matrix.legend-QMERGVYU.js +0 -22
- package/dist/matrix.renderers-2KQ2NXSQ.js +0 -36
- package/dist/matrix.serieses-24G3XPJD.js +0 -21
- package/dist/matrix.sort-HTVT4K7C.js +0 -27
- package/dist/matrix.sort.unit.spec-EUVL76NB.js +0 -470
- package/dist/matrix.sorterUi-PJPFXWOJ.js +0 -18
- package/dist/matrix.sorterUi.unit.spec-QWL5Y4DQ.js +0 -340
- package/dist/mavb-UGM5SHEF.js +0 -730
- package/dist/mds.fimo-64US7RTE.js +0 -516
- package/dist/mds.samplescatterplot-JMXLXVIE.js +0 -1548
- package/dist/mds.survivalplot-RJ5UD3IU.js +0 -481
- package/dist/oncomatrix-ZFT3DRAP.js +0 -293
- package/dist/oncomatrix-ZFT3DRAP.js.map +0 -7
- package/dist/oncomatrix.spec-4YLKDGFE.js +0 -446
- package/dist/plot.2dvaf-DYSU6BBN.js +0 -375
- package/dist/plot.app-NFBVLAXZ.js +0 -39
- package/dist/plot.barplot-DBGTDK7J.js +0 -100
- package/dist/plot.boxplot-MCKZUROP.js +0 -150
- package/dist/plot.brainImaging-BBAVUEB4.js +0 -51
- package/dist/plot.disco-VGOEQYRL.js +0 -101
- package/dist/plot.disco-VGOEQYRL.js.map +0 -7
- package/dist/plot.dzi-YQIFOTZQ.js +0 -33
- package/dist/plot.ssgq-MU3BRTMC.js +0 -137
- package/dist/plot.vaf2cov-KDHZ7JXJ.js +0 -257
- package/dist/plot.wsi-G2TUGQF7.js +0 -36
- package/dist/polar-RCCZXZIU.js +0 -184
- package/dist/polar2-COQ3WIGW.js +0 -226
- package/dist/profile.spec-A4ZASR2T.js +0 -78
- package/dist/profileBarchart-GB4RK5DF.js +0 -265
- package/dist/profileForms-O5KBHRF6.js +0 -438
- package/dist/profilePlot-COCLCP5B.js +0 -52
- package/dist/profileRadar-4EE3YDOH.js +0 -261
- package/dist/profileRadarFacility-JYTSGA5H.js +0 -261
- package/dist/profileRadarFacility-JYTSGA5H.js.map +0 -7
- package/dist/proteomeAbundance-JBVXUSD6.js +0 -19
- package/dist/proteomeAbundance-NQVU4DOW.js +0 -63
- package/dist/qualitative-QROOPDSI.js +0 -41
- package/dist/regression-7FQZ22OO.js +0 -54
- package/dist/regression.inputs-F62CES3A.js +0 -46
- package/dist/regression.inputs.term-BCGP7PX4.js +0 -46
- package/dist/regression.inputs.values.table-D3ZXZSH7.js +0 -43
- package/dist/regression.integration.spec-P2BBTT2O.js +0 -784
- package/dist/regression.integration.spec-P2BBTT2O.js.map +0 -7
- package/dist/regression.results-JX6RJQQP.js +0 -38
- package/dist/regression.spec-ROME7T33.js +0 -706
- package/dist/report-B6MM4T6B.js +0 -220
- package/dist/sampleScatter.spec-EPCMC3SR.js +0 -200
- package/dist/sampleView-77EAJ75T.js +0 -46
- package/dist/samplelst-CX4NQWA7.js +0 -109
- package/dist/samplematrix-PYQFAH64.js +0 -2196
- package/dist/sc-X6SI5VVI.js +0 -84
- package/dist/scatter-ZFFHAI4F.js +0 -800
- package/dist/scatter.integration.spec-NN43OXRN.js +0 -1194
- package/dist/scatter.integration.spec-NN43OXRN.js.map +0 -7
- package/dist/selectGenomeWithTklst-CZMVTBMD.js +0 -132
- package/dist/singleCellCellType-GOBX7JKV.js +0 -36
- package/dist/singleCellCellType.unit.spec-F344QMTQ.js +0 -177
- package/dist/singleCellCellType.unit.spec-F344QMTQ.js.map +0 -7
- package/dist/singleCellGeneExpression-BLMNMEAI.js +0 -36
- package/dist/singleCellGeneExpression.unit.spec-6ZEPUFWC.js +0 -163
- package/dist/singleCellGeneExpression.unit.spec-6ZEPUFWC.js.map +0 -7
- package/dist/singleCellPlot-HLD7PLQH.js +0 -51
- package/dist/singlecell-HL4GLGIA.js +0 -1570
- package/dist/singlecell-JQFPINRS.js +0 -84
- package/dist/snp-EAUNFDAV.js +0 -36
- package/dist/snp.unit.spec-AVLPMAWI.js +0 -174
- package/dist/snplocus-2J7OA6OL.js +0 -206
- package/dist/spliceevent.a53ss.diagram-4DU2U7NW.js +0 -149
- package/dist/spliceevent.exonskip.diagram-GG5FGXOK.js +0 -275
- package/dist/spliceevent.noeventdiagram-T6RNIMCM.js +0 -458
- package/dist/ssGSEA-XJWLRVFQ.js +0 -36
- package/dist/ssGSEA.unit.spec-MQ23ODYO.js +0 -86
- package/dist/summarizeCnvGeneexp-CJPC76RM.js +0 -158
- package/dist/summarizeCnvGeneexp-CJPC76RM.js.map +0 -7
- package/dist/summarizeGeneexpSurvival-FGCFZTVG.js +0 -105
- package/dist/summarizeGeneexpSurvival-FGCFZTVG.js.map +0 -7
- package/dist/summarizeMutationCnv-4E7R2NHQ.js +0 -159
- package/dist/summarizeMutationCnv-4E7R2NHQ.js.map +0 -7
- package/dist/summarizeMutationDiagnosis-ZVX7AZK7.js +0 -38
- package/dist/summarizeMutationSurvival-EWXD7TCT.js +0 -97
- package/dist/summary-VUYBKQOC.js +0 -47
- package/dist/summary.integration.spec-EPBV5XCT.js +0 -412
- package/dist/summaryInput-YX5IRGWM.js +0 -218
- package/dist/sunburst-HPDML45I.js +0 -282
- package/dist/sunburst-HPDML45I.js.map +0 -7
- package/dist/survival-E6SRRXBB.js +0 -44
- package/dist/survival-XOXDPXZR.js +0 -56
- package/dist/survival.integration.spec-SJBPJZGJ.js +0 -787
- package/dist/survival.integration.spec-SJBPJZGJ.js.map +0 -7
- package/dist/svg2pdf.es.min-EZ4UYRSH.js +0 -3157
- package/dist/svgraph-D23WG3UE.js +0 -1385
- package/dist/svmr-UFC4TKWV.js +0 -3840
- package/dist/table-US2K6IYZ.js +0 -198
- package/dist/termCollection-E7S57CIN.js +0 -177
- package/dist/termCollection-ZMP3VE2G.js +0 -36
- package/dist/termCollection.unit.spec-MDWK6XH3.js +0 -206
- package/dist/tk-TLQJK6R4.js +0 -44
- package/dist/tp.ui-NQEAKWUH.js +0 -1457
- package/dist/tvs.dt-U2MINIBH.js +0 -37
- package/dist/tvs.dtcnv.categorical-2OOAZJKC.js +0 -38
- package/dist/tvs.dtcnv.continuous-5ETKBJ52.js +0 -70
- package/dist/tvs.dtfusion-EB4PPR3Y.js +0 -38
- package/dist/tvs.dtsnvindel-IRQPTKQF.js +0 -38
- package/dist/tvs.dtsv-TOVXZJCR.js +0 -38
- package/dist/tvs.samplelst-4SCH543Y.js +0 -102
- package/dist/tvs.termCollection-GGN5F6HC.js +0 -151
- package/dist/violin-7D7DN74I.js +0 -44
- package/dist/violin.integration.spec-KE76AL54.js +0 -1417
- package/dist/violin.integration.spec-KE76AL54.js.map +0 -7
- package/dist/violin.interactivity-YPJ2H6SQ.js +0 -36
- package/dist/violin.renderer-UK7WSA2Z.js +0 -38
- package/dist/vocabulary-KLWZ6LRP.js +0 -39
- /package/dist/{2dmaf-PFPBHIUI.js.map → 2dmaf-YHYYSSKR.js.map} +0 -0
- /package/dist/{AppHeader-FCWML6WH.js.map → AppHeader-T4ZLY3VG.js.map} +0 -0
- /package/dist/{CorrelationVolcano-ZJ7Q6JBC.js.map → CorrelationVolcano-EXH4P56S.js.map} +0 -0
- /package/dist/{DifferentialAnalysis-PWCFCWFY.js.map → DifferentialAnalysis-P6GKHAS5.js.map} +0 -0
- /package/dist/{Disco.UI-SR7LSJE3.js.map → Disco.UI-4A2P5Q55.js.map} +0 -0
- /package/dist/{DmrPlot-UDY7GOSY.js.map → DmrPlot-6EEEGD32.js.map} +0 -0
- /package/dist/{GB-GNTOP5C6.js.map → GB-XFO5I6ND.js.map} +0 -0
- /package/dist/{HicApp-FZTJL3OA.js.map → HicApp-3LFHOOAR.js.map} +0 -0
- /package/dist/{NumBinaryEditor.unit.spec-BMVRI24W.js.map → NumBinaryEditor.unit.spec-2PYZ7P2R.js.map} +0 -0
- /package/dist/{NumContEditor-6JT5D6IW.js.map → NumContEditor-BMWALLQM.js.map} +0 -0
- /package/dist/{NumContEditor.unit.spec-XBQF2SW6.js.map → NumContEditor.unit.spec-ETVLVX6A.js.map} +0 -0
- /package/dist/{NumCustomBinEditor-MEKEFOQI.js.map → NumCustomBinEditor-2XJ6GUWY.js.map} +0 -0
- /package/dist/{NumCustomBinEditor.unit.spec-LEMQJHDT.js.map → NumCustomBinEditor.unit.spec-TZVL553E.js.map} +0 -0
- /package/dist/{NumDiscreteEditor.unit.spec-WQM4DLKO.js.map → NumDiscreteEditor.unit.spec-KQND2XAE.js.map} +0 -0
- /package/dist/{NumRegularBinEditor-HQR5Y6P7.js.map → NumRegularBinEditor-OYELFDIB.js.map} +0 -0
- /package/dist/{NumRegularBinEditor.unit.spec-FL4IFT7L.js.map → NumRegularBinEditor.unit.spec-44SALKLH.js.map} +0 -0
- /package/dist/{NumSplineEditor.unit.spec-HYOXO45B.js.map → NumSplineEditor.unit.spec-XKB4XXU4.js.map} +0 -0
- /package/dist/{NumericDensity-GJZ4BBJS.js.map → NumericDensity-GCNWO7YS.js.map} +0 -0
- /package/dist/{NumericDensity.unit.spec-6LXWAXW7.js.map → NumericDensity.unit.spec-7LWNOUYK.js.map} +0 -0
- /package/dist/{NumericHandler-LZIMPOHS.js.map → NumericHandler-EMQBI5UI.js.map} +0 -0
- /package/dist/{NumericHandler.unit.spec-ZSU35AMD.js.map → NumericHandler.unit.spec-TEELPRIM.js.map} +0 -0
- /package/dist/{WsiSamplesPlot-BL47MDHQ.js.map → WsiSamplesPlot-B2DM7Z3Q.js.map} +0 -0
- /package/dist/{adSandbox-V3NTKVBC.js.map → adSandbox-INF3NNEV.js.map} +0 -0
- /package/dist/{alphaGenome-IQVFCSWQ.js.map → alphaGenome-CO4TQHXN.js.map} +0 -0
- /package/dist/{app-GJLZ2G2U.js.map → app-63JU2YIT.js.map} +0 -0
- /package/dist/{app-YSD2U64Q.js.map → app-BL3POUOO.js.map} +0 -0
- /package/dist/{barchart-GLLUYTAJ.js.map → barchart-PDUXZAIH.js.map} +0 -0
- /package/dist/{barchart.data-FRYRGKH3.js.map → barchart.data-EXENRVMU.js.map} +0 -0
- /package/dist/{barchart.events-WODVSHRN.js.map → barchart.events-MQNQTSWI.js.map} +0 -0
- /package/dist/{barchart.integration.spec-6POS3V3T.js.map → barchart.integration.spec-DSO2377T.js.map} +0 -0
- /package/dist/{bars.renderer-T5R3UIBW.js.map → bars.renderer-S7A7I6BQ.js.map} +0 -0
- /package/dist/{block.init-7HDLKQVX.js.map → block.init-7J5OHYKA.js.map} +0 -0
- /package/dist/{block.mds.expressionrank-UIB25S6E.js.map → block.mds.expressionrank-643H7PN7.js.map} +0 -0
- /package/dist/{block.mds.geneboxplot-4PQYO3MR.js.map → block.mds.geneboxplot-C222ODSL.js.map} +0 -0
- /package/dist/{block.mds.junction-DWFYZEC2.js.map → block.mds.junction-C5DJRUOK.js.map} +0 -0
- /package/dist/{block.mds.svcnv-N3KJJ4GQ.js.map → block.mds.svcnv-4G74JQ7Y.js.map} +0 -0
- /package/dist/{block.svg-2HBDI7BT.js.map → block.svg-35KUC5R7.js.map} +0 -0
- /package/dist/{block.tk.aicheck-2M4522IQ.js.map → block.tk.aicheck-LLWT6K6H.js.map} +0 -0
- /package/dist/{block.tk.ase-URIKF6JD.js.map → block.tk.ase-PQUKY65E.js.map} +0 -0
- /package/dist/{block.tk.bam-HTDMASHX.js.map → block.tk.bam-EUEOB7BR.js.map} +0 -0
- /package/dist/{block.tk.bedgraphdot-RVKMSFCQ.js.map → block.tk.bedgraphdot-XAHUY545.js.map} +0 -0
- /package/dist/{block.tk.bigwig.ui-7JPEOIKM.js.map → block.tk.bigwig.ui-HEOPNL3T.js.map} +0 -0
- /package/dist/{block.tk.hicstraw-72J7UJ2J.js.map → block.tk.hicstraw-EPH3LEX2.js.map} +0 -0
- /package/dist/{block.tk.junction-GGFMBCV5.js.map → block.tk.junction-MIUDAIAR.js.map} +0 -0
- /package/dist/{block.tk.junction.textmatrixui-44SAYYWE.js.map → block.tk.junction.textmatrixui-AVFUQBDS.js.map} +0 -0
- /package/dist/{block.tk.ld-XDKJFEOL.js.map → block.tk.ld-ED7YMBQ4.js.map} +0 -0
- /package/dist/{block.tk.menu-46FOTM7H.js.map → block.tk.menu-3CVIECWQ.js.map} +0 -0
- /package/dist/{block.tk.pgv-ZVONRT4B.js.map → block.tk.pgv-HETJVWXH.js.map} +0 -0
- /package/dist/{brainImaging-CSLO7ODJ.js.map → brainImaging-K3LHK3DD.js.map} +0 -0
- /package/dist/{chat-GMD22F3K.js.map → chat-BYX5ARUK.js.map} +0 -0
- /package/dist/{chunk-WCTH7CB3.js.map → chunk-2LULD7RN.js.map} +0 -0
- /package/dist/{chunk-DWWAB4YQ.js.map → chunk-2VFYZ3EY.js.map} +0 -0
- /package/dist/{chunk-5ZICCKEH.js.map → chunk-3CD5ZROA.js.map} +0 -0
- /package/dist/{chunk-JDX4E7ZO.js.map → chunk-3DCABJHB.js.map} +0 -0
- /package/dist/{chunk-JWX7GYHP.js.map → chunk-3MMKHYUM.js.map} +0 -0
- /package/dist/{chunk-PZ3L3KM6.js.map → chunk-3PRPMJTG.js.map} +0 -0
- /package/dist/{chunk-4FO7KZY2.js.map → chunk-5UMPBVA6.js.map} +0 -0
- /package/dist/{chunk-UBS5UVIY.js.map → chunk-6LAE5AVA.js.map} +0 -0
- /package/dist/{chunk-PEKVBCIH.js.map → chunk-7FTDQDVF.js.map} +0 -0
- /package/dist/{chunk-SEIANPCX.js.map → chunk-7IEZ2KMW.js.map} +0 -0
- /package/dist/{chunk-ZZSDYKD5.js.map → chunk-A5AFIW2T.js.map} +0 -0
- /package/dist/{chunk-NTVM4ZPG.js.map → chunk-AIBODF32.js.map} +0 -0
- /package/dist/{chunk-WYZ4COTF.js.map → chunk-BAY47D5E.js.map} +0 -0
- /package/dist/{chunk-DV444SFD.js.map → chunk-CFHKYLDY.js.map} +0 -0
- /package/dist/{chunk-NI7VSKJI.js.map → chunk-CJZN7HFL.js.map} +0 -0
- /package/dist/{chunk-FP5VKE3Z.js.map → chunk-D4QFQQWJ.js.map} +0 -0
- /package/dist/{chunk-U3UR3U3F.js.map → chunk-DNCSPTOQ.js.map} +0 -0
- /package/dist/{chunk-OM326NV3.js.map → chunk-DQGSCCI3.js.map} +0 -0
- /package/dist/{chunk-7FXPMQRW.js.map → chunk-EWGMLVC7.js.map} +0 -0
- /package/dist/{chunk-SK7YVOQN.js.map → chunk-F7PB5HGT.js.map} +0 -0
- /package/dist/{chunk-PF6MKI4X.js.map → chunk-G7QKLA54.js.map} +0 -0
- /package/dist/{chunk-74QJDBIP.js.map → chunk-J5RINDKS.js.map} +0 -0
- /package/dist/{chunk-BBIPZ2UF.js.map → chunk-JMPSZMDD.js.map} +0 -0
- /package/dist/{chunk-2TIYJ3PH.js.map → chunk-KQMEJUWI.js.map} +0 -0
- /package/dist/{chunk-6YLQN7FF.js.map → chunk-LRMV5DNW.js.map} +0 -0
- /package/dist/{chunk-PJTQP6RL.js.map → chunk-LWNOC7AJ.js.map} +0 -0
- /package/dist/{chunk-AHLUW2BN.js.map → chunk-MICNOSX7.js.map} +0 -0
- /package/dist/{chunk-6UU7VPDO.js.map → chunk-MLWNMXAV.js.map} +0 -0
- /package/dist/{chunk-HLRNIO5K.js.map → chunk-MMBLSLQR.js.map} +0 -0
- /package/dist/{chunk-YJ2HC4CP.js.map → chunk-NV5XWADG.js.map} +0 -0
- /package/dist/{chunk-T5KFRIP4.js.map → chunk-O3255WPP.js.map} +0 -0
- /package/dist/{chunk-J6XKDYNZ.js.map → chunk-OSM7YS23.js.map} +0 -0
- /package/dist/{chunk-UFYU7AKL.js.map → chunk-Q7PYFSNU.js.map} +0 -0
- /package/dist/{chunk-P4ENJUBN.js.map → chunk-QMI222IJ.js.map} +0 -0
- /package/dist/{chunk-O64UTRAC.js.map → chunk-QRIRWDIW.js.map} +0 -0
- /package/dist/{chunk-C5QOWZK6.js.map → chunk-SJTOSA7E.js.map} +0 -0
- /package/dist/{chunk-M464GTNI.js.map → chunk-SRYFYAXK.js.map} +0 -0
- /package/dist/{chunk-A2Y3GEUH.js.map → chunk-TITA4HJA.js.map} +0 -0
- /package/dist/{chunk-L2ED35QZ.js.map → chunk-U7ZMIMI5.js.map} +0 -0
- /package/dist/{chunk-RIGZHHCP.js.map → chunk-UJU3Q7QJ.js.map} +0 -0
- /package/dist/{chunk-QXCVG66S.js.map → chunk-UL2ISTHR.js.map} +0 -0
- /package/dist/{chunk-I7X6K4OL.js.map → chunk-VIPMLSZP.js.map} +0 -0
- /package/dist/{chunk-AAEXTQT3.js.map → chunk-WGL6FIUE.js.map} +0 -0
- /package/dist/{chunk-ITYEOGLB.js.map → chunk-WIYKAKWE.js.map} +0 -0
- /package/dist/{chunk-NBMJ2UMA.js.map → chunk-WPHOEG56.js.map} +0 -0
- /package/dist/{chunk-G2MAZI6I.js.map → chunk-XS4QWRS3.js.map} +0 -0
- /package/dist/{chunk-VIYGTRUZ.js.map → chunk-YSW57QDM.js.map} +0 -0
- /package/dist/{chunk-KLFROH3F.js.map → chunk-YXQNZPCO.js.map} +0 -0
- /package/dist/{chunk-WZRXJ5LL.js.map → chunk-YYYJB53A.js.map} +0 -0
- /package/dist/{chunk-BHVDOW3W.js.map → chunk-ZTKQLABY.js.map} +0 -0
- /package/dist/{condition-S52W57ZO.js.map → condition-AM523RDR.js.map} +0 -0
- /package/dist/{controls-B4MTTPWO.js.map → controls-HTMH5QBP.js.map} +0 -0
- /package/dist/{controls.config-6KBCTIPN.js.map → controls.config-EEK2RBPI.js.map} +0 -0
- /package/dist/{correlation-VSBCBFFP.js.map → correlation-HKD67SPS.js.map} +0 -0
- /package/dist/{cuminc-T5ZPAGVB.js.map → cuminc-66V55MMN.js.map} +0 -0
- /package/dist/{cuminc.integration.spec-2QT3IPHU.js.map → cuminc.integration.spec-PNTOPB2L.js.map} +0 -0
- /package/dist/{customdata.inputui-5MHQQHJL.js.map → customdata.inputui-Z4WQDU6I.js.map} +0 -0
- /package/dist/{dataDownload-S4EBNHMW.js.map → dataDownload-3ZEI22OK.js.map} +0 -0
- /package/dist/{dataDownload.integration.spec-OVSIWI34.js.map → dataDownload.integration.spec-C3JRC6K5.js.map} +0 -0
- /package/dist/{databrowser.ui-EAJS3NXV.js.map → databrowser.ui-Q365SHBG.js.map} +0 -0
- /package/dist/{dnaMethylation-G3F2INDH.js.map → dnaMethylation-IFZWWBUG.js.map} +0 -0
- /package/dist/{e2pca-SLXGPVHP.js.map → e2pca-I3QXF7EM.js.map} +0 -0
- /package/dist/{ep-4HGUSDGJ.js.map → ep-2VCQ36GT.js.map} +0 -0
- /package/dist/{expclust.gdc.spec-JJ42ESKE.js.map → expclust.gdc.spec-VWIQFY67.js.map} +0 -0
- /package/dist/{facet-6WVTVKDV.js.map → facet-CHP3VUWS.js.map} +0 -0
- /package/dist/{geneExpClustering-5LOZPD5X.js.map → geneExpClustering-YDIDEH2O.js.map} +0 -0
- /package/dist/{geneExpression-PTSZWKCM.js.map → geneExpression-FA5RJRHZ.js.map} +0 -0
- /package/dist/{geneExpression-BJ46UGXW.js.map → geneExpression-X2KXJPND.js.map} +0 -0
- /package/dist/{geneExpression.unit.spec-NW5HTO7F.js.map → geneExpression.unit.spec-3LVHYZGG.js.map} +0 -0
- /package/dist/{geneORA-H65EZ7QO.js.map → geneORA-4CAYRKSN.js.map} +0 -0
- /package/dist/{geneVariant-T6GWOVZD.js.map → geneVariant-OCOTNUH4.js.map} +0 -0
- /package/dist/{geneVariant-WTDFZTXG.js.map → geneVariant-Y4L5W5HF.js.map} +0 -0
- /package/dist/{geneVariant.integration.spec-OPSBRUM3.js.map → geneVariant.integration.spec-BOJ5MM5K.js.map} +0 -0
- /package/dist/{genefusion.ui-RSBCC37C.js.map → genefusion.ui-I6HZOBIV.js.map} +0 -0
- /package/dist/{geneset-B67PAZVL.js.map → geneset-GEWKDAAT.js.map} +0 -0
- /package/dist/{genomeBrowser.spec-AUTULF4C.js.map → genomeBrowser.spec-FDEGH4DY.js.map} +0 -0
- /package/dist/{grin2-CMBP7XVH.js.map → grin2-K56B6XBZ.js.map} +0 -0
- /package/dist/{grin2-JVCNH3KW.js.map → grin2-V6FMM44N.js.map} +0 -0
- /package/dist/{gsea-H774WVPQ.js.map → gsea-UNPPRU2U.js.map} +0 -0
- /package/dist/{hierCluster-IQTXQUMI.js.map → hierCluster-DXAWRQNI.js.map} +0 -0
- /package/dist/{hierCluster-ZQJDXYBD.js.map → hierCluster-SPIQA2M2.js.map} +0 -0
- /package/dist/{hierCluster.config-ZHJTZK5L.js.map → hierCluster.config-JW6D3T3Q.js.map} +0 -0
- /package/dist/{hierCluster.integration.spec-MSJ5GHHK.js.map → hierCluster.integration.spec-5NXZY4LG.js.map} +0 -0
- /package/dist/{hierCluster.interactivity-H2GNO6AA.js.map → hierCluster.interactivity-CPPBXHM7.js.map} +0 -0
- /package/dist/{hierCluster.renderers-2TE6HMK2.js.map → hierCluster.renderers-A6MEGO2B.js.map} +0 -0
- /package/dist/{imagePlot-FMNMB7JZ.js.map → imagePlot-QLAHCULW.js.map} +0 -0
- /package/dist/{importPlot-N66G43XX.js.map → importPlot-6ITZ6U7G.js.map} +0 -0
- /package/dist/{isoformExpression-B64WLO3H.js.map → isoformExpression-7GAUF2QV.js.map} +0 -0
- /package/dist/{jspdf.es.min-DO4YWL2R.js.map → jspdf.es.min-FC3BCETM.js.map} +0 -0
- /package/dist/{launch.adhoc-MPRAJ3GN.js.map → launch.adhoc-HFHBAUR6.js.map} +0 -0
- /package/dist/{leftlabel.sample-4JCKYXED.js.map → leftlabel.sample-CWPJUCHR.js.map} +0 -0
- /package/dist/{lollipop-25ADHT7O.js.map → lollipop-QFRQLEER.js.map} +0 -0
- /package/dist/{maftimeline-FOQF6O3X.js.map → maftimeline-2DFIF4C4.js.map} +0 -0
- /package/dist/{matrix-LHLAYDTQ.js.map → matrix-3HFB5TUU.js.map} +0 -0
- /package/dist/{matrix-ZKF7NRAD.js.map → matrix-MIXK27AD.js.map} +0 -0
- /package/dist/{matrix.cells-H4TS74FJ.js.map → matrix.cells-U7AQNEBP.js.map} +0 -0
- /package/dist/{matrix.config-HE7QUDER.js.map → matrix.config-FX5MHX6O.js.map} +0 -0
- /package/dist/{matrix.controls-VILCLNSC.js.map → matrix.controls-5K7BB5Z4.js.map} +0 -0
- /package/dist/{matrix.data-2OUWYD35.js.map → matrix.data-EEIY6AO4.js.map} +0 -0
- /package/dist/{matrix.dom-IZFFS4RQ.js.map → matrix.dom-6QL3AJMW.js.map} +0 -0
- /package/dist/{matrix.groups-5BGJIOOJ.js.map → matrix.groups-CUB6UWC5.js.map} +0 -0
- /package/dist/{matrix.integration.spec-DSXZHAEY.js.map → matrix.integration.spec-ML4T7FRG.js.map} +0 -0
- /package/dist/{matrix.interactivity-VK3NWX5M.js.map → matrix.interactivity-QMPWX63Q.js.map} +0 -0
- /package/dist/{matrix.layout-PUNMMNCC.js.map → matrix.layout-7SEF6MYI.js.map} +0 -0
- /package/dist/{matrix.legend-QMERGVYU.js.map → matrix.legend-42LQGAGX.js.map} +0 -0
- /package/dist/{matrix.renderers-2KQ2NXSQ.js.map → matrix.renderers-ZF7LLER3.js.map} +0 -0
- /package/dist/{matrix.serieses-24G3XPJD.js.map → matrix.serieses-4B2WB526.js.map} +0 -0
- /package/dist/{matrix.sort-HTVT4K7C.js.map → matrix.sort-BJACNR7G.js.map} +0 -0
- /package/dist/{matrix.sort.unit.spec-EUVL76NB.js.map → matrix.sort.unit.spec-ZGSM7HDJ.js.map} +0 -0
- /package/dist/{matrix.sorterUi-PJPFXWOJ.js.map → matrix.sorterUi-W6XFYZY2.js.map} +0 -0
- /package/dist/{matrix.sorterUi.unit.spec-QWL5Y4DQ.js.map → matrix.sorterUi.unit.spec-V34ZZD7A.js.map} +0 -0
- /package/dist/{mavb-UGM5SHEF.js.map → mavb-NVQVFU6E.js.map} +0 -0
- /package/dist/{mds.fimo-64US7RTE.js.map → mds.fimo-HOCF6U6K.js.map} +0 -0
- /package/dist/{mds.samplescatterplot-JMXLXVIE.js.map → mds.samplescatterplot-ULD5BK5R.js.map} +0 -0
- /package/dist/{mds.survivalplot-RJ5UD3IU.js.map → mds.survivalplot-5US32RQD.js.map} +0 -0
- /package/dist/{oncomatrix.spec-4YLKDGFE.js.map → oncomatrix.spec-MFUJLWEP.js.map} +0 -0
- /package/dist/{plot.2dvaf-DYSU6BBN.js.map → plot.2dvaf-F4WZ4YPU.js.map} +0 -0
- /package/dist/{plot.app-NFBVLAXZ.js.map → plot.app-YFFLLBU5.js.map} +0 -0
- /package/dist/{plot.barplot-DBGTDK7J.js.map → plot.barplot-2EJ2MWQD.js.map} +0 -0
- /package/dist/{plot.boxplot-MCKZUROP.js.map → plot.boxplot-AKZM443E.js.map} +0 -0
- /package/dist/{plot.brainImaging-BBAVUEB4.js.map → plot.brainImaging-DR6WJNFZ.js.map} +0 -0
- /package/dist/{plot.dzi-YQIFOTZQ.js.map → plot.dzi-R2MR7HAT.js.map} +0 -0
- /package/dist/{plot.ssgq-MU3BRTMC.js.map → plot.ssgq-C52YIUFY.js.map} +0 -0
- /package/dist/{plot.vaf2cov-KDHZ7JXJ.js.map → plot.vaf2cov-FOD3K7BC.js.map} +0 -0
- /package/dist/{plot.wsi-G2TUGQF7.js.map → plot.wsi-D2TXYERK.js.map} +0 -0
- /package/dist/{polar-RCCZXZIU.js.map → polar-2LC35O6K.js.map} +0 -0
- /package/dist/{polar2-COQ3WIGW.js.map → polar2-QPUOEUJZ.js.map} +0 -0
- /package/dist/{profile.spec-A4ZASR2T.js.map → profile.spec-3NCDGHLX.js.map} +0 -0
- /package/dist/{profileBarchart-GB4RK5DF.js.map → profileBarchart-PPQ3NL4D.js.map} +0 -0
- /package/dist/{profileForms-O5KBHRF6.js.map → profileForms-GS3VVW65.js.map} +0 -0
- /package/dist/{profilePlot-COCLCP5B.js.map → profilePlot-DQWFH5NC.js.map} +0 -0
- /package/dist/{profileRadar-4EE3YDOH.js.map → profileRadar-KAKRDC4R.js.map} +0 -0
- /package/dist/{proteomeAbundance-JBVXUSD6.js.map → proteomeAbundance-DE4NVBCN.js.map} +0 -0
- /package/dist/{proteomeAbundance-NQVU4DOW.js.map → proteomeAbundance-LTB3QR3G.js.map} +0 -0
- /package/dist/{qualitative-QROOPDSI.js.map → qualitative-YOFAROVR.js.map} +0 -0
- /package/dist/{regression-7FQZ22OO.js.map → regression-PF6IAHJK.js.map} +0 -0
- /package/dist/{regression.inputs-F62CES3A.js.map → regression.inputs-77IUYED3.js.map} +0 -0
- /package/dist/{regression.inputs.term-BCGP7PX4.js.map → regression.inputs.term-WWCHU6KF.js.map} +0 -0
- /package/dist/{regression.inputs.values.table-D3ZXZSH7.js.map → regression.inputs.values.table-I6GM6MU7.js.map} +0 -0
- /package/dist/{regression.results-JX6RJQQP.js.map → regression.results-6GXNKYUS.js.map} +0 -0
- /package/dist/{regression.spec-ROME7T33.js.map → regression.spec-MEFQNY34.js.map} +0 -0
- /package/dist/{report-B6MM4T6B.js.map → report-LG3UKZHL.js.map} +0 -0
- /package/dist/{sampleScatter.spec-EPCMC3SR.js.map → sampleScatter.spec-D3IK7MSA.js.map} +0 -0
- /package/dist/{sampleView-77EAJ75T.js.map → sampleView-XUI2J5EC.js.map} +0 -0
- /package/dist/{samplelst-CX4NQWA7.js.map → samplelst-A7IHCBAX.js.map} +0 -0
- /package/dist/{samplematrix-PYQFAH64.js.map → samplematrix-VGUU7Q75.js.map} +0 -0
- /package/dist/{sc-X6SI5VVI.js.map → sc-UVKVT2RY.js.map} +0 -0
- /package/dist/{scatter-ZFFHAI4F.js.map → scatter-UILUYOGO.js.map} +0 -0
- /package/dist/{selectGenomeWithTklst-CZMVTBMD.js.map → selectGenomeWithTklst-LWKIMZEJ.js.map} +0 -0
- /package/dist/{singleCellCellType-GOBX7JKV.js.map → singleCellCellType-TI52WQQ4.js.map} +0 -0
- /package/dist/{singleCellGeneExpression-BLMNMEAI.js.map → singleCellGeneExpression-I5SAHMGI.js.map} +0 -0
- /package/dist/{singleCellPlot-HLD7PLQH.js.map → singleCellPlot-HRWCHYCI.js.map} +0 -0
- /package/dist/{singlecell-HL4GLGIA.js.map → singlecell-BHPP7KCO.js.map} +0 -0
- /package/dist/{singlecell-JQFPINRS.js.map → singlecell-PQNKBKR7.js.map} +0 -0
- /package/dist/{snp-EAUNFDAV.js.map → snp-V4YGI7B3.js.map} +0 -0
- /package/dist/{snp.unit.spec-AVLPMAWI.js.map → snp.unit.spec-JSUCMGNP.js.map} +0 -0
- /package/dist/{snplocus-2J7OA6OL.js.map → snplocus-3YT5NNCH.js.map} +0 -0
- /package/dist/{spliceevent.a53ss.diagram-4DU2U7NW.js.map → spliceevent.a53ss.diagram-QEQJ44YH.js.map} +0 -0
- /package/dist/{spliceevent.exonskip.diagram-GG5FGXOK.js.map → spliceevent.exonskip.diagram-HMWVSOJG.js.map} +0 -0
- /package/dist/{spliceevent.noeventdiagram-T6RNIMCM.js.map → spliceevent.noeventdiagram-L5HUCT5A.js.map} +0 -0
- /package/dist/{ssGSEA-XJWLRVFQ.js.map → ssGSEA-Z3XRCBYW.js.map} +0 -0
- /package/dist/{ssGSEA.unit.spec-MQ23ODYO.js.map → ssGSEA.unit.spec-EUCTV2XJ.js.map} +0 -0
- /package/dist/{summarizeMutationDiagnosis-ZVX7AZK7.js.map → summarizeMutationDiagnosis-HFFYLQOF.js.map} +0 -0
- /package/dist/{summarizeMutationSurvival-EWXD7TCT.js.map → summarizeMutationSurvival-OBK6YILP.js.map} +0 -0
- /package/dist/{summary-VUYBKQOC.js.map → summary-W55WWIU2.js.map} +0 -0
- /package/dist/{summary.integration.spec-EPBV5XCT.js.map → summary.integration.spec-X2PNAUKW.js.map} +0 -0
- /package/dist/{summaryInput-YX5IRGWM.js.map → summaryInput-X547Q6C7.js.map} +0 -0
- /package/dist/{survival-XOXDPXZR.js.map → survival-PAJZHZPD.js.map} +0 -0
- /package/dist/{survival-E6SRRXBB.js.map → survival-TQPWMOD5.js.map} +0 -0
- /package/dist/{svg2pdf.es.min-EZ4UYRSH.js.map → svg2pdf.es.min-CYTPRWNB.js.map} +0 -0
- /package/dist/{svgraph-D23WG3UE.js.map → svgraph-Y35C2M3D.js.map} +0 -0
- /package/dist/{svmr-UFC4TKWV.js.map → svmr-WGCIR7PE.js.map} +0 -0
- /package/dist/{table-US2K6IYZ.js.map → table-Q3B2YXEN.js.map} +0 -0
- /package/dist/{termCollection-E7S57CIN.js.map → termCollection-A6YTSM5I.js.map} +0 -0
- /package/dist/{termCollection-ZMP3VE2G.js.map → termCollection-NTFNVQ7D.js.map} +0 -0
- /package/dist/{termCollection.unit.spec-MDWK6XH3.js.map → termCollection.unit.spec-BX54PHKT.js.map} +0 -0
- /package/dist/{tk-TLQJK6R4.js.map → tk-OCBZ7YR6.js.map} +0 -0
- /package/dist/{tp.ui-NQEAKWUH.js.map → tp.ui-ZT47N2CO.js.map} +0 -0
- /package/dist/{tvs.dt-U2MINIBH.js.map → tvs.dt-BFB253O3.js.map} +0 -0
- /package/dist/{tvs.dtcnv.categorical-2OOAZJKC.js.map → tvs.dtcnv.categorical-ARGAYIDO.js.map} +0 -0
- /package/dist/{tvs.dtcnv.continuous-5ETKBJ52.js.map → tvs.dtcnv.continuous-JCU23ERV.js.map} +0 -0
- /package/dist/{tvs.dtfusion-EB4PPR3Y.js.map → tvs.dtfusion-FV64XLZI.js.map} +0 -0
- /package/dist/{tvs.dtsnvindel-IRQPTKQF.js.map → tvs.dtsnvindel-DMOXMEVL.js.map} +0 -0
- /package/dist/{tvs.dtsv-TOVXZJCR.js.map → tvs.dtsv-53FSZEPV.js.map} +0 -0
- /package/dist/{tvs.samplelst-4SCH543Y.js.map → tvs.samplelst-MVPL6VXX.js.map} +0 -0
- /package/dist/{tvs.termCollection-GGN5F6HC.js.map → tvs.termCollection-UGJXTHTG.js.map} +0 -0
- /package/dist/{violin-7D7DN74I.js.map → violin-ZLUDGSQG.js.map} +0 -0
- /package/dist/{violin.interactivity-YPJ2H6SQ.js.map → violin.interactivity-ULDOCZWW.js.map} +0 -0
- /package/dist/{violin.renderer-UK7WSA2Z.js.map → violin.renderer-KJAXPMIK.js.map} +0 -0
- /package/dist/{vocabulary-KLWZ6LRP.js.map → vocabulary-34YUQ4ZQ.js.map} +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import {
|
|
2
|
+
addGeneSearchbox,
|
|
3
|
+
first_genetrack_tolist,
|
|
4
|
+
getDNAMethUnit,
|
|
5
|
+
sayerror
|
|
6
|
+
} from "./chunk-NVB7MQLH.js";
|
|
7
|
+
import {
|
|
8
|
+
Menu
|
|
9
|
+
} from "./chunk-A6TQGNDQ.js";
|
|
10
|
+
import {
|
|
11
|
+
DNA_METHYLATION
|
|
12
|
+
} from "./chunk-6ITDJ5UR.js";
|
|
13
|
+
|
|
14
|
+
// termdb/handlers/dnaMethylation.ts
|
|
15
|
+
var SearchHandler = class {
|
|
16
|
+
init(opts) {
|
|
17
|
+
this.opts = opts;
|
|
18
|
+
this.callback = opts.callback;
|
|
19
|
+
this.app = opts.app;
|
|
20
|
+
const holder = opts.holder.append("div").style("margin", "10px 0px");
|
|
21
|
+
this.dom = {};
|
|
22
|
+
this.dom.errDiv = holder.append("div").style("margin", "5px 0px").style("display", "none");
|
|
23
|
+
this.dom.geneSearchDiv = holder.append("div");
|
|
24
|
+
this.dom.blockDiv = holder.append("div").style("display", "none").style("margin", "15px 4px");
|
|
25
|
+
const geneSearch = addGeneSearchbox({
|
|
26
|
+
tip: new Menu({ padding: "0px" }),
|
|
27
|
+
genome: opts.genomeObj,
|
|
28
|
+
row: this.dom.geneSearchDiv,
|
|
29
|
+
callback: async () => {
|
|
30
|
+
try {
|
|
31
|
+
this.dom.errDiv.style("display", "none");
|
|
32
|
+
await this.handleGeneSearch(geneSearch);
|
|
33
|
+
} catch (e) {
|
|
34
|
+
this.dom.errDiv.style("display", "block");
|
|
35
|
+
sayerror(this.dom.errDiv, "Error: " + (e.message || e));
|
|
36
|
+
if (e.stack) console.log(e.stack);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
async handleGeneSearch(geneSearch) {
|
|
42
|
+
if (geneSearch.geneSymbol) {
|
|
43
|
+
const { chr, start, stop } = geneSearch;
|
|
44
|
+
if (!chr || !Number.isInteger(start) || !Number.isInteger(stop))
|
|
45
|
+
throw new Error("unable to retrieve gene coordinate");
|
|
46
|
+
this.dom.blockDiv.selectAll("*").remove();
|
|
47
|
+
this.dom.blockDiv.style("display", "block");
|
|
48
|
+
this.dom.blockDiv.append("div").style("opacity", 0.6).text("Navigate genome browser to desired region");
|
|
49
|
+
const arg = {
|
|
50
|
+
holder: this.dom.blockDiv,
|
|
51
|
+
genome: this.opts.genomeObj,
|
|
52
|
+
// genome obj
|
|
53
|
+
chr,
|
|
54
|
+
start,
|
|
55
|
+
stop,
|
|
56
|
+
tklst: [],
|
|
57
|
+
nobox: true,
|
|
58
|
+
width: 500,
|
|
59
|
+
hidegenelegend: true,
|
|
60
|
+
debugmode: this.opts.debug
|
|
61
|
+
};
|
|
62
|
+
first_genetrack_tolist(this.opts.genomeObj, arg.tklst);
|
|
63
|
+
const _ = await import("./block-OO2NLGUP.js");
|
|
64
|
+
this.blockInstance = new _.Block(arg);
|
|
65
|
+
this.dom.submitBtn = this.dom.blockDiv.append("div").attr("data-testid", "sjpp-dnaMethylation-submitDiv").style("margin", "10px 0px").append("button").style("border", "none").style("border-radius", "20px").style("padding", "10px 15px").text("Submit Region").on("click", async () => {
|
|
66
|
+
const { chr: chr2, start: start2, stop: stop2 } = this.blockInstance.rglst[0];
|
|
67
|
+
const term = this.makeTerm({ chr: chr2, start: start2, stop: stop2 });
|
|
68
|
+
await this.callback(term);
|
|
69
|
+
});
|
|
70
|
+
} else if (geneSearch.chr && Number.isInteger(geneSearch.start) && Number.isInteger(geneSearch.stop)) {
|
|
71
|
+
const { chr, start, stop } = geneSearch;
|
|
72
|
+
const term = this.makeTerm({ chr, start, stop });
|
|
73
|
+
await this.callback(term);
|
|
74
|
+
} else {
|
|
75
|
+
throw new Error("invalid gene search input");
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
makeTerm(opts) {
|
|
79
|
+
const { chr, start, stop } = opts;
|
|
80
|
+
if (!chr || !Number.isInteger(start) || !Number.isInteger(stop)) throw new Error("invalid coordinate");
|
|
81
|
+
const unit = getDNAMethUnit("region", this.app.vocabApi);
|
|
82
|
+
const term = {
|
|
83
|
+
chr,
|
|
84
|
+
start,
|
|
85
|
+
stop,
|
|
86
|
+
type: DNA_METHYLATION,
|
|
87
|
+
unit,
|
|
88
|
+
genomicFeatureType: "region"
|
|
89
|
+
};
|
|
90
|
+
return term;
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
export {
|
|
95
|
+
SearchHandler
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=chunk-KWFEGPZL.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../termdb/handlers/dnaMethylation.ts"],
|
|
4
|
+
"sourcesContent": ["import { Menu, addGeneSearchbox, sayerror } from '#dom'\nimport { DNA_METHYLATION } from '#shared/terms.js'\nimport { getDNAMethUnit } from '#tw/dnaMethylation'\nimport { first_genetrack_tolist } from '#common/1stGenetk'\n\n// TODO: currently, when inputting a single position (e.g. chr17:7661778 or chr17:7661778-7661778), the output is a region 400bp long. Need to support single position input.\n// TODO: verify whether coordiante is 0-based or 1-based (need to do the same for other search handlers e.g. geneVariant.ts, snp.ts, etc.)\n\nexport class SearchHandler {\n\topts: any\n\tcallback: any\n\tapp: any\n\tdom: any\n\tblockInstance: any\n\tinit(opts) {\n\t\tthis.opts = opts\n\t\tthis.callback = opts.callback\n\t\tthis.app = opts.app\n\t\tconst holder = opts.holder.append('div').style('margin', '10px 0px')\n\t\tthis.dom = {}\n\t\tthis.dom.errDiv = holder.append('div').style('margin', '5px 0px').style('display', 'none')\n\t\tthis.dom.geneSearchDiv = holder.append('div')\n\t\tthis.dom.blockDiv = holder.append('div').style('display', 'none').style('margin', '15px 4px')\n\t\tconst geneSearch = addGeneSearchbox({\n\t\t\ttip: new Menu({ padding: '0px' }),\n\t\t\tgenome: opts.genomeObj,\n\t\t\trow: this.dom.geneSearchDiv,\n\t\t\tcallback: async () => {\n\t\t\t\ttry {\n\t\t\t\t\tthis.dom.errDiv.style('display', 'none')\n\t\t\t\t\tawait this.handleGeneSearch(geneSearch)\n\t\t\t\t} catch (e: any) {\n\t\t\t\t\tthis.dom.errDiv.style('display', 'block')\n\t\t\t\t\tsayerror(this.dom.errDiv, 'Error: ' + (e.message || e))\n\t\t\t\t\tif (e.stack) console.log(e.stack)\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t}\n\n\tasync handleGeneSearch(geneSearch) {\n\t\tif (geneSearch.geneSymbol) {\n\t\t\t// gene input\n\t\t\t// embed block of gene locus to allow navigation to region of interest\n\t\t\tconst { chr, start, stop } = geneSearch\n\t\t\tif (!chr || !Number.isInteger(start) || !Number.isInteger(stop))\n\t\t\t\tthrow new Error('unable to retrieve gene coordinate')\n\n\t\t\tthis.dom.blockDiv.selectAll('*').remove()\n\t\t\tthis.dom.blockDiv.style('display', 'block')\n\t\t\tthis.dom.blockDiv.append('div').style('opacity', 0.6).text('Navigate genome browser to desired region')\n\n\t\t\tconst arg: any = {\n\t\t\t\tholder: this.dom.blockDiv,\n\t\t\t\tgenome: this.opts.genomeObj, // genome obj\n\t\t\t\tchr,\n\t\t\t\tstart,\n\t\t\t\tstop,\n\t\t\t\ttklst: [],\n\t\t\t\tnobox: true,\n\t\t\t\twidth: 500,\n\t\t\t\thidegenelegend: true,\n\t\t\t\tdebugmode: this.opts.debug\n\t\t\t}\n\t\t\tfirst_genetrack_tolist(this.opts.genomeObj, arg.tklst)\n\t\t\tconst _ = await import('#src/block')\n\t\t\tthis.blockInstance = new _.Block(arg)\n\n\t\t\tthis.dom.submitBtn = this.dom.blockDiv\n\t\t\t\t.append('div')\n\t\t\t\t.attr('data-testid', 'sjpp-dnaMethylation-submitDiv')\n\t\t\t\t.style('margin', '10px 0px')\n\t\t\t\t.append('button')\n\t\t\t\t.style('border', 'none')\n\t\t\t\t.style('border-radius', '20px')\n\t\t\t\t.style('padding', '10px 15px')\n\t\t\t\t.text('Submit Region')\n\t\t\t\t.on('click', async () => {\n\t\t\t\t\tconst { chr, start, stop } = this.blockInstance.rglst[0]\n\t\t\t\t\tconst term = this.makeTerm({ chr, start, stop })\n\t\t\t\t\tawait this.callback(term)\n\t\t\t\t})\n\t\t} else if (geneSearch.chr && Number.isInteger(geneSearch.start) && Number.isInteger(geneSearch.stop)) {\n\t\t\t// coordinate input\n\t\t\t// directly use coordinate to make term\n\t\t\tconst { chr, start, stop } = geneSearch\n\t\t\tconst term = this.makeTerm({ chr, start, stop })\n\t\t\tawait this.callback(term)\n\t\t} else {\n\t\t\tthrow new Error('invalid gene search input')\n\t\t}\n\t}\n\n\tmakeTerm(opts) {\n\t\tconst { chr, start, stop } = opts\n\t\tif (!chr || !Number.isInteger(start) || !Number.isInteger(stop)) throw new Error('invalid coordinate')\n\t\tconst unit = getDNAMethUnit('region', this.app.vocabApi)\n\n\t\tconst term = {\n\t\t\tchr,\n\t\t\tstart,\n\t\t\tstop,\n\t\t\ttype: DNA_METHYLATION,\n\t\t\tunit,\n\t\t\tgenomicFeatureType: 'region'\n\t\t}\n\t\treturn term\n\t}\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["chr", "start", "stop"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
import {
|
|
2
|
+
fillTermWrapper,
|
|
3
|
+
termsettingInit
|
|
4
|
+
} from "./chunk-NVB7MQLH.js";
|
|
5
|
+
import {
|
|
6
|
+
isNumericTerm
|
|
7
|
+
} from "./chunk-6ITDJ5UR.js";
|
|
8
|
+
import {
|
|
9
|
+
select_default
|
|
10
|
+
} from "./chunk-NDWTN4U5.js";
|
|
11
|
+
|
|
12
|
+
// plots/matrix/matrix.renderers.js
|
|
13
|
+
function setRenderers(self) {
|
|
14
|
+
self.render = function() {
|
|
15
|
+
const s = self.settings.matrix;
|
|
16
|
+
const l = self.layout;
|
|
17
|
+
const d = self.dimensions;
|
|
18
|
+
const duration = self.dom.svg.attr("width") ? s.duration : 0;
|
|
19
|
+
self.dom.clipRect.attr("x", d.xOffset - 1).attr("y", 0).attr("width", d.mainw + 3).attr("height", d.mainh + 500);
|
|
20
|
+
self.renderSerieses(s, l, d, duration);
|
|
21
|
+
self.renderLabels(s, l, d, duration);
|
|
22
|
+
self.renderDivideByLabel(s, l, d, duration);
|
|
23
|
+
self.dom.colBeam.attr("width", d.dx).attr("height", d.mainh).style("stroke", s.beamStroke);
|
|
24
|
+
self.dom.rowBeam.attr("width", d.zoomedMainW).attr("height", s.rowh).style("stroke", s.beamStroke);
|
|
25
|
+
};
|
|
26
|
+
self.renderSerieses = function(s, l, d, duration) {
|
|
27
|
+
if (self.prevUseCanvas != s.useCanvas) {
|
|
28
|
+
self.dom.seriesesG.selectAll("g").remove();
|
|
29
|
+
}
|
|
30
|
+
if (s.useCanvas) {
|
|
31
|
+
const _g = self.dom.seriesesG.selectAll("g");
|
|
32
|
+
const g = (
|
|
33
|
+
/*(_g.size() && _g) ||*/
|
|
34
|
+
self.dom.seriesesG.append("g").datum(this.serieses)
|
|
35
|
+
);
|
|
36
|
+
self.renderCanvas(this.serieses, g, d, s, _g, duration);
|
|
37
|
+
} else {
|
|
38
|
+
self.dom.seriesesG.attr("transform", `translate(${d.xOffset + d.seriesXoffset},${d.yOffset})`);
|
|
39
|
+
const sg = self.dom.seriesesG.selectAll(".sjpp-mass-series-g").data(this.serieses, (series) => series.tw.$id);
|
|
40
|
+
sg.exit().remove();
|
|
41
|
+
sg.each(self.renderSeries);
|
|
42
|
+
sg.enter().append("g").attr("class", "sjpp-mass-series-g").style("opacity", 1e-3).each(self.renderSeries);
|
|
43
|
+
self.mouseout();
|
|
44
|
+
}
|
|
45
|
+
self.prevUseCanvas = s.useCanvas;
|
|
46
|
+
};
|
|
47
|
+
self.renderSeries = async function(series) {
|
|
48
|
+
const s = self.settings.matrix;
|
|
49
|
+
const d = self.dimensions;
|
|
50
|
+
const g = select_default(this);
|
|
51
|
+
const duration = g.attr("transform") ? s.duration : 0;
|
|
52
|
+
g.attr("transform", `translate(${series.x},${series.y})`).style("opacity", 1);
|
|
53
|
+
const last = series.cells[series.cells.length - 1];
|
|
54
|
+
const height = series.y + last?.y + s.rowh;
|
|
55
|
+
const rects = g.selectAll("rect").data(series.cells, (cell) => cell.sample + ";;" + cell.tw.$id + ";;" + cell.valueIndex);
|
|
56
|
+
rects.exit().remove();
|
|
57
|
+
rects.each(self.renderCell);
|
|
58
|
+
rects.enter().append("rect").each(self.renderCell);
|
|
59
|
+
};
|
|
60
|
+
self.renderCanvas = async function(serieses, g, d, s, _g, duration) {
|
|
61
|
+
const pxr = window.devicePixelRatio <= 1 ? 1 : window.devicePixelRatio;
|
|
62
|
+
g.selectAll("*").remove();
|
|
63
|
+
const width = d.imgW;
|
|
64
|
+
const height = self.dimensions.mainh;
|
|
65
|
+
const canvas = window.OffscreenCanvas ? new OffscreenCanvas(width * pxr, height * pxr) : (
|
|
66
|
+
// TODO: no need to support older browser versions???
|
|
67
|
+
self.dom.holder.append("canvas").attr("width", pxr * width).attr("height", pxr * height).style("opacity", 0).node()
|
|
68
|
+
);
|
|
69
|
+
const ctx = canvas.getContext("2d");
|
|
70
|
+
ctx.imageSmoothingEnabled = false;
|
|
71
|
+
ctx.imageSmoothingQuality = "high";
|
|
72
|
+
ctx.scale(pxr, pxr);
|
|
73
|
+
for (const series of serieses) {
|
|
74
|
+
for (const cell of series.cells) {
|
|
75
|
+
self.renderCellWithCanvas(ctx, cell, series, s, d, series.y);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (window.OffscreenCanvas) {
|
|
79
|
+
const reader = new FileReader();
|
|
80
|
+
reader.addEventListener(
|
|
81
|
+
"load",
|
|
82
|
+
() => {
|
|
83
|
+
_g?.remove();
|
|
84
|
+
self.dom.seriesesG.attr("transform", `translate(${d.xOffset + d.seriesXoffset},${d.yOffset})`);
|
|
85
|
+
g.selectAll("image").remove();
|
|
86
|
+
g.append("image").attr("xlink:href", reader.result).attr("x", d.xMin).attr("width", width).attr("height", height);
|
|
87
|
+
},
|
|
88
|
+
false
|
|
89
|
+
);
|
|
90
|
+
const blob = await canvas.convertToBlob({ quality: 1 });
|
|
91
|
+
const dataURL = reader.readAsDataURL(blob);
|
|
92
|
+
} else {
|
|
93
|
+
_g?.remove();
|
|
94
|
+
self.dom.seriesesG.attr("transform", `translate(${d.xOffset + d.seriesXoffset},${d.yOffset})`);
|
|
95
|
+
const dataURL = canvas.toDataURL();
|
|
96
|
+
const ratio = window.devicePixelRatio * window.devicePixelRatio;
|
|
97
|
+
g.append("image").attr("width", width).attr("height", height).attr("xlink:href", dataURL);
|
|
98
|
+
if (!window.OffscreenCanvas) canvas.remove();
|
|
99
|
+
}
|
|
100
|
+
self.mouseout();
|
|
101
|
+
};
|
|
102
|
+
self.renderCellWithCanvas = function(ctx, cell, series, s, d, _y) {
|
|
103
|
+
if (!cell.fill)
|
|
104
|
+
cell.fill = cell.$id in self.colorScaleByTermId ? self.colorScaleByTermId[cell.$id](cell.key) : getRectFill(cell);
|
|
105
|
+
const x = cell.x ? cell.x - d.xMin : 0;
|
|
106
|
+
const y = _y ? _y + cell.y : cell.y || 0;
|
|
107
|
+
const width = s.useMinPixelWidth ? Math.max(cell.width || d.colw, d.pxw) : cell.width || d.colw;
|
|
108
|
+
const height = "height" in cell ? cell.height : s.rowh;
|
|
109
|
+
ctx.fillStyle = cell.fill;
|
|
110
|
+
ctx.fillRect(x, y, width, height);
|
|
111
|
+
const borderWidth = Math.min(width, height) * 0.1;
|
|
112
|
+
if (cell.border) {
|
|
113
|
+
ctx.lineWidth = borderWidth;
|
|
114
|
+
ctx.strokeStyle = "white";
|
|
115
|
+
ctx.strokeRect(x, y, width, height);
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
self.renderCell = function(cell) {
|
|
119
|
+
if (!cell.fill)
|
|
120
|
+
cell.fill = cell.$id in self.colorScaleByTermId ? self.colorScaleByTermId[cell.$id](cell.key) : getRectFill(cell);
|
|
121
|
+
const s = self.settings.matrix;
|
|
122
|
+
const rect = select_default(this).attr("x", cell.x || 0).attr("y", cell.y || 0).attr("width", cell.width || self.dimensions.colw).attr("height", "height" in cell ? Math.max(0, cell.height) : s.rowh).attr("shape-rendering", "crispEdges").attr("fill", cell.fill);
|
|
123
|
+
if (cell.border) {
|
|
124
|
+
rect.attr("stroke", "white").attr("stroke-width", 0.8);
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
self.renderLabels = function(s, l, d, duration) {
|
|
128
|
+
for (const direction of ["top", "btm", "left", "right"]) {
|
|
129
|
+
let renderLabel2 = function(lab) {
|
|
130
|
+
const g = select_default(this);
|
|
131
|
+
g.attr("transform", side.attr.labelGTransform);
|
|
132
|
+
if (!g.select(":scope>text").size()) g.append("text");
|
|
133
|
+
const showContAxis = !side.isGroup && lab.grp?.type !== "hierCluster" && lab.tw?.q?.mode == "continuous";
|
|
134
|
+
const labelText = side.label(lab);
|
|
135
|
+
const text = g.select(":scope>text").attr("fill", "#000");
|
|
136
|
+
let continuousBarHAdjust;
|
|
137
|
+
const twSpecificSettings = self.config.settings.matrix.twSpecificSettings;
|
|
138
|
+
const twSettingsBarH = twSpecificSettings[lab.tw?.$id]?.contBarH;
|
|
139
|
+
if (twSettingsBarH && s.barh) continuousBarHAdjust = (twSettingsBarH - s.barh) * 0.5;
|
|
140
|
+
text.attr(
|
|
141
|
+
"display",
|
|
142
|
+
lab.grp?.type === "hierCluster" && s.clusterRowh < 6 ? "none" : side.attr.fontSize < 6 || labelText === "configure" ? "none" : ""
|
|
143
|
+
).attr("font-size", lab.grp?.type === "hierCluster" ? Math.max(4, s.clusterRowh - 4) : side.attr.fontSize).attr("text-anchor", side.attr.labelAnchor).attr(
|
|
144
|
+
"transform",
|
|
145
|
+
side.attr.labelTransform + (continuousBarHAdjust ? ` translate(0,${continuousBarHAdjust})` : "")
|
|
146
|
+
).attr("cursor", "pointer").attr(side.attr.textpos.coord, side.attr.textpos.factor * (showContAxis ? 30 : 0));
|
|
147
|
+
if (!Array.isArray(labelText)) {
|
|
148
|
+
text.text(labelText);
|
|
149
|
+
text.attr(
|
|
150
|
+
"y",
|
|
151
|
+
lab.grp?.type !== "hierCluster" && lab.tw?.q?.mode == "continuous" ? 10 : lab.grp?.type === "hierCluster" ? 0.1 * s.clusterRowh : 0
|
|
152
|
+
);
|
|
153
|
+
if (lab.grp?.type !== "hierCluster" && lab.tw?.q?.mode == "continuous") text.attr("x", -20);
|
|
154
|
+
} else {
|
|
155
|
+
text.text("");
|
|
156
|
+
const tspan = text.selectAll("tspan").data(labelText);
|
|
157
|
+
tspan.enter().append("tspan").attr("class", getTspanCls2).attr("dx", getTspanDx2).attr("font-size", getTspanFontSize2).text(getTspanText2);
|
|
158
|
+
}
|
|
159
|
+
text.on("mouseover", labelText === "configure" ? () => text.attr("opacity", 0.5) : null).on("mouseout", labelText === "configure" ? () => text.attr("opacity", 0) : null);
|
|
160
|
+
const hasAxis = g.select(".sjpp-matrix-cell-axis").size() && true;
|
|
161
|
+
if (showContAxis && labelText) {
|
|
162
|
+
if (!hasAxis) {
|
|
163
|
+
g.append("g").attr("class", "sjpp-matrix-cell-axis").attr("shape-rendering", "crispEdges");
|
|
164
|
+
}
|
|
165
|
+
const axisg = g.select(".sjpp-matrix-cell-axis");
|
|
166
|
+
axisg.selectAll("*").remove();
|
|
167
|
+
const domain = [lab.counts.maxval, lab.counts.minval];
|
|
168
|
+
if (s.transpose) domain.reverse();
|
|
169
|
+
const twSpecificSettings2 = self.config.settings.matrix.twSpecificSettings;
|
|
170
|
+
const twSettings = twSpecificSettings2[lab.tw.$id];
|
|
171
|
+
const x = !s.transpose ? 0 : twSettings.contBarGap - 1 - lab.labelOffset;
|
|
172
|
+
const y = !s.transpose ? twSettings.contBarGap - 1 - lab.labelOffset : 0;
|
|
173
|
+
axisg.attr("shape-rendering", "crispEdges").attr("transform", `translate(${x},${y})`).call(side.attr.axisFxn(lab.scales.full.domain(lab.scales.tickValues)).tickValues(lab.scales.tickValues));
|
|
174
|
+
} else if (hasAxis) {
|
|
175
|
+
g.select(".sjpp-matrix-cell-axis").remove();
|
|
176
|
+
}
|
|
177
|
+
}, getTspanCls2 = function(d2) {
|
|
178
|
+
return d2.cls;
|
|
179
|
+
}, getTspanDx2 = function(d2) {
|
|
180
|
+
return d2.dx;
|
|
181
|
+
}, getTspanFontSize2 = function(d2) {
|
|
182
|
+
return d2.fontSize || side.attr.fontSize;
|
|
183
|
+
}, getTspanText2 = function(d2) {
|
|
184
|
+
return d2.text;
|
|
185
|
+
};
|
|
186
|
+
var renderLabel = renderLabel2, getTspanCls = getTspanCls2, getTspanDx = getTspanDx2, getTspanFontSize = getTspanFontSize2, getTspanText = getTspanText2;
|
|
187
|
+
const side = l[direction];
|
|
188
|
+
side.box.style("display", side.display || "").attr("transform", side.attr.boxTransform);
|
|
189
|
+
const labels = side.box.selectAll(".sjpp-matrix-label").data(side.data, side.key);
|
|
190
|
+
labels.exit().remove();
|
|
191
|
+
labels.each(renderLabel2);
|
|
192
|
+
labels.enter().append("g").attr("class", "sjpp-matrix-label").each(renderLabel2);
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
self.colLabelGTransform = (lab, grpIndex) => {
|
|
196
|
+
const s = self.settings.matrix;
|
|
197
|
+
const d = self.dimensions;
|
|
198
|
+
lab.labelOffset = 0.8 * d.colw;
|
|
199
|
+
const x = lab.grpIndex * s.colgspace + lab.totalIndex * d.dx + lab.labelOffset + lab.totalHtAdjustments;
|
|
200
|
+
const y = 0;
|
|
201
|
+
return `translate(${x + d.seriesXoffset},${y})`;
|
|
202
|
+
};
|
|
203
|
+
self.colGrpLabelGTransform = (lab, grpIndex) => {
|
|
204
|
+
const s = self.settings.matrix;
|
|
205
|
+
const d = self.dimensions;
|
|
206
|
+
const len = (lab.processedLst || lab.grp.lst).length;
|
|
207
|
+
const x = lab.grpIndex * s.colgspace + lab.prevGrpTotalIndex * d.dx + len * d.dx / 2 + s.grpLabelFontSize / 2 + lab.totalHtAdjustments;
|
|
208
|
+
return `translate(${x + d.seriesXoffset},0)`;
|
|
209
|
+
};
|
|
210
|
+
self.rowLabelGTransform = (lab, grpIndex) => {
|
|
211
|
+
const s = self.settings.matrix;
|
|
212
|
+
const d = self.dimensions;
|
|
213
|
+
const x = 0;
|
|
214
|
+
lab.labelOffset = 0.7 * (lab.grp.type == "hierCluster" ? s.clusterRowh : s.rowh);
|
|
215
|
+
const y = lab.grpIndex * s.rowgspace + lab.totalIndex * d.dy + lab.labelOffset + lab.totalHtAdjustments;
|
|
216
|
+
return `translate(${x},${y})`;
|
|
217
|
+
};
|
|
218
|
+
self.rowGrpLabelGTransform = (lab, grpIndex) => {
|
|
219
|
+
const s = self.settings.matrix;
|
|
220
|
+
const d = self.dimensions;
|
|
221
|
+
const len = (lab.processedLst || lab.grp.lst).length;
|
|
222
|
+
const x = lab.tw?.q?.mode == "continuous" ? 20 : 0;
|
|
223
|
+
const y = lab.grpIndex * s.rowgspace + lab.prevGrpTotalIndex * d.dy + len * d.dy / 2 + s.grpLabelFontSize / 2 + lab.totalHtAdjustments;
|
|
224
|
+
return `translate(${x},${y})`;
|
|
225
|
+
};
|
|
226
|
+
self.rowAxisGTransform = (lab, grpIndex) => {
|
|
227
|
+
const s = self.settings.matrix;
|
|
228
|
+
const d = self.dimensions;
|
|
229
|
+
const x = 0;
|
|
230
|
+
const y = lab.grpIndex * s.rowgspace + lab.totalIndex * d.dy + 0.7 * s.rowh + lab.totalHtAdjustments;
|
|
231
|
+
return `translate(${x},${y})`;
|
|
232
|
+
};
|
|
233
|
+
self.renderDivideByLabel = async (s, l, d) => {
|
|
234
|
+
self.dom.mainG.selectAll(".sjpp-matrix-divide-by-label").remove();
|
|
235
|
+
if (!self.config.divideBy) return;
|
|
236
|
+
const name = self.config.divideBy?.term.name || "";
|
|
237
|
+
const text = name.length <= s.rowlabelmaxchars ? name : name.slice(0, s.rowlabelmaxchars) + "\u2026";
|
|
238
|
+
const sides = !s.transpose ? [l.left, l.right] : [l.top, l.bottom];
|
|
239
|
+
const box = sides.find((d2) => !d2.isGroup)?.box;
|
|
240
|
+
const y = (s.collabelpos == "top" ? d.mainh + s.collabelmaxchars : -s.collabelmaxchars) + 8;
|
|
241
|
+
const anchor = s.rowlabelpos == "left" ? "end" : "start";
|
|
242
|
+
const cl = s.controlLabels;
|
|
243
|
+
const gNote = box.append("g").attr("class", "sjpp-matrix-divide-by-label").attr("transform", `translate(0, ${y})`);
|
|
244
|
+
gNote.append("text").attr("text-anchor", anchor).attr("font-style", "italic").attr("y", -20).text(`${cl.Samples} grouped by`);
|
|
245
|
+
const g = box.datum({ tw: self.config.divideBy }).append("g").attr("class", "sjpp-matrix-divide-by-label").attr("transform", `translate(0, ${y})`).on("click", (event, d2) => {
|
|
246
|
+
pill.showMenu(event, textElem.node());
|
|
247
|
+
});
|
|
248
|
+
const textElem = g.append("text").attr("text-anchor", anchor).attr("font-weight", 600).text(text);
|
|
249
|
+
g.append("title").text(`${cl.Samples} are grouped by this gene or variable. Click to edit.`);
|
|
250
|
+
const customMenuOptions = [];
|
|
251
|
+
const tvsKey = isNumericTerm(self.config.divideBy.term) ? "ranges" : "values";
|
|
252
|
+
if (self.config.legendValueFilter.lst?.find(
|
|
253
|
+
(l2) => l2.legendGrpName == self.config.divideBy.term.id || l2.legendGrpName == self.config.divideBy.term.name
|
|
254
|
+
)?.tvs[tvsKey]?.length) {
|
|
255
|
+
customMenuOptions.push({ label: `Show filtered ${cl.samples}`, callback: self.showDeletedSampleGroups });
|
|
256
|
+
}
|
|
257
|
+
const pill = await termsettingInit({
|
|
258
|
+
menuOptions: "{edit,replace,remove}",
|
|
259
|
+
//numericEditMenuVersion: opts.numericEditMenuVersion,
|
|
260
|
+
customMenuOptions,
|
|
261
|
+
//custom menu options other than menuOptions
|
|
262
|
+
vocabApi: self.app.vocabApi,
|
|
263
|
+
vocab: self.state.vocab,
|
|
264
|
+
//activeCohort: opts.state?.activeCohort,
|
|
265
|
+
holder: g,
|
|
266
|
+
debug: self.opts.debug,
|
|
267
|
+
usecase: { target: "matrix" },
|
|
268
|
+
getBodyParams: () => {
|
|
269
|
+
const currentGeneNames = self.termOrder.filter((t) => t.tw.term.type === "geneVariant").map(
|
|
270
|
+
(t) => t.tw.term.chr ? `${t.tw.term.chr}:${t.tw.term.start}-${t.tw.term.stop}` : t.tw.term.gene || t.tw.term.name
|
|
271
|
+
);
|
|
272
|
+
if (currentGeneNames.length) return { currentGeneNames };
|
|
273
|
+
return {};
|
|
274
|
+
},
|
|
275
|
+
callback: async (tw) => {
|
|
276
|
+
if (self.dom.loadingDiv && self.dom.svg) {
|
|
277
|
+
self.dom.loadingDiv.selectAll("*").remove();
|
|
278
|
+
self.dom.loadingDiv.html("").style("display", "").style("position", "relative").style("left", "45%");
|
|
279
|
+
self.dom.loadingDiv.html("Processing data ...");
|
|
280
|
+
self.dom.svg.style("opacity", 0.1).style("pointer-events", "none");
|
|
281
|
+
}
|
|
282
|
+
if (tw && !tw.q) throw "data.q{} missing from pill callback";
|
|
283
|
+
if (tw?.term && isNumericTerm(tw.term)) {
|
|
284
|
+
tw.q = { ...tw.q, mode: "discrete" };
|
|
285
|
+
}
|
|
286
|
+
if (tw) await fillTermWrapper(tw, self.app.vocabApi);
|
|
287
|
+
await pill.main(tw ? tw : { term: null, q: null });
|
|
288
|
+
box.datum({ tw });
|
|
289
|
+
self.app.dispatch({
|
|
290
|
+
type: "plot_edit",
|
|
291
|
+
id: self.id,
|
|
292
|
+
config: {
|
|
293
|
+
divideBy: tw,
|
|
294
|
+
legendValueFilter: self.mayRemoveTvsEntry(self.config.divideBy)
|
|
295
|
+
}
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
const arg = {
|
|
300
|
+
term: self.config.divideBy.term,
|
|
301
|
+
q: self.config.divideBy.q
|
|
302
|
+
};
|
|
303
|
+
if (self.config.divideBy.$id) arg.$id = self.config.divideBy.$id;
|
|
304
|
+
pill.main(arg);
|
|
305
|
+
};
|
|
306
|
+
self.adjustSvgDimensions = async function(prevTranspose) {
|
|
307
|
+
const s = self.settings.matrix;
|
|
308
|
+
const hc = self.settings.hierCluster || {};
|
|
309
|
+
const l = self.layout;
|
|
310
|
+
const hcHeight = !hc.yDendrogramHeight ? 0 : hc.yDendrogramHeight + (l.top.display === "none" ? 0 : 10);
|
|
311
|
+
const hcWidth = hc.xDendrogramHeight || 0;
|
|
312
|
+
const d = self.dimensions;
|
|
313
|
+
const duration = self.dom.svg.attr("width") ? s.duration : 0;
|
|
314
|
+
await sleep(prevTranspose == s.transpose ? duration : s.duration);
|
|
315
|
+
const topBox = l.top.box.node().getBBox();
|
|
316
|
+
const btmBox = l.btm.box.node().getBBox();
|
|
317
|
+
const leftBox = l.left.box.node().getBBox();
|
|
318
|
+
const rtBox = l.right.box.node().getBBox();
|
|
319
|
+
const legendBox = self.dom.legendG.node().getBBox();
|
|
320
|
+
const seriesBox = self.dom.seriesesG.node().getBBox();
|
|
321
|
+
d.extraWidth = leftBox.width + rtBox.width + s.margin.left + s.margin.right + s.rowlabelgap * 2;
|
|
322
|
+
d.extraHeight = topBox.height + btmBox.height + s.margin.top + s.margin.bottom + s.collabelgap * 2;
|
|
323
|
+
d.svgw = d.mainw + d.extraWidth + hcWidth;
|
|
324
|
+
d.svgh = d.mainh + d.extraHeight + legendBox.height + 20 + s.scrollHeight + hcHeight;
|
|
325
|
+
self.dom.svg.attr("width", d.svgw).attr("height", d.svgh);
|
|
326
|
+
let maxLabelWidth = self.type == "hierCluster" ? 0 : leftBox.width, maxLabelNumChars = 0;
|
|
327
|
+
if (hc.xDendrogramHeight) {
|
|
328
|
+
self.dom.termLabelG.selectAll(".sjpp-matrix-label").each(function(d2) {
|
|
329
|
+
if (d2.grp.type !== "hierCluster") return;
|
|
330
|
+
const box = this.getBBox();
|
|
331
|
+
if (box.width > maxLabelWidth) {
|
|
332
|
+
maxLabelWidth = box.width;
|
|
333
|
+
maxLabelNumChars = d2.label.length;
|
|
334
|
+
}
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
const x = -l.left.offset + hcWidth + maxLabelWidth;
|
|
338
|
+
const xAdjust = !hc.xDendrogramHeight ? 0 : Math.max(leftBox.width - (hc.xDendrogramHeight + maxLabelWidth), 0);
|
|
339
|
+
const y = (l.top.display == "none" ? 0 : topBox.height) - l.top.offset + hcHeight;
|
|
340
|
+
self.dom.mainG.attr("transform", `translate(${x + xAdjust},${y})`);
|
|
341
|
+
self.dom.clipRect.attr("y", -y).attr("height", d.mainh + 500 + y);
|
|
342
|
+
const legendX = d.xOffset + (s.transpose ? 20 : 0);
|
|
343
|
+
const legendY = d.yOffset + d.mainh + s.collabelgap + (l.btm.display == "none" ? 0 : btmBox.height) + 20;
|
|
344
|
+
self.dom.legendG.attr("transform", `translate(${legendX},${legendY})`);
|
|
345
|
+
if (hc.xDendrogramHeight) {
|
|
346
|
+
const dendroX = maxLabelWidth + xAdjust - l.left.offset + d.xOffset - d.dx / 2;
|
|
347
|
+
self.dom.hcClipRect.attr("x", dendroX + hcWidth + d.dx / 2).attr("y", 0).attr("width", d.mainw + 3).attr("height", d.mainh + hc.yDendrogramHeight + 500);
|
|
348
|
+
self.topDendroX = dendroX + d.seriesXoffset;
|
|
349
|
+
self.dom.topDendrogram.attr("transform", `translate(${self.topDendroX}, 0)`);
|
|
350
|
+
const y2 = l.top.display == "none" ? 0 : topBox.height + s.collabelgap;
|
|
351
|
+
self.dom.leftDendrogram.attr("transform", `translate(${dendroX - maxLabelWidth - 10}, ${y2})`);
|
|
352
|
+
}
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
function getRectFill(d) {
|
|
356
|
+
if (d.fill) return d.fill;
|
|
357
|
+
const cls = d.class || Array.isArray(d.values) && d.values[0].class;
|
|
358
|
+
if (!cls) console.log;
|
|
359
|
+
return cls ? mclass[cls].color : "#555";
|
|
360
|
+
}
|
|
361
|
+
function sleep(ms) {
|
|
362
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
export {
|
|
366
|
+
setRenderers
|
|
367
|
+
};
|
|
368
|
+
//# sourceMappingURL=chunk-LBXZGYU5.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../plots/matrix/matrix.renderers.js"],
|
|
4
|
+
"sourcesContent": ["import { select } from 'd3-selection'\nimport { fillTermWrapper, termsettingInit } from '#termsetting'\nimport { isNumericTerm } from '#shared/terms.js'\n\nexport function setRenderers(self) {\n\tself.render = function () {\n\t\tconst s = self.settings.matrix\n\t\tconst l = self.layout\n\t\tconst d = self.dimensions\n\t\tconst duration = self.dom.svg.attr('width') ? s.duration : 0\n\n\t\tself.dom.clipRect\n\t\t\t.attr('x', d.xOffset - 1)\n\t\t\t.attr('y', 0)\n\t\t\t.attr('width', d.mainw + 3)\n\t\t\t// add 500 so that the column labels are not clipped\n\t\t\t.attr('height', d.mainh + 500)\n\n\t\t// const x = self.type == 'hierCluster' ? self.settings.hierCluster.xDendrogramHeight : 0\n\t\t// const y = self.type == 'hierCluster' ? self.settings.hierCluster.yDendrogramHeight : 0\n\t\t// self.dom.mainG\n\t\t// \t.attr('transform', `translate(${x},${y})`)\n\n\t\tself.renderSerieses(s, l, d, duration)\n\t\tself.renderLabels(s, l, d, duration)\n\t\tself.renderDivideByLabel(s, l, d, duration)\n\n\t\tself.dom.colBeam.attr('width', d.dx).attr('height', d.mainh).style('stroke', s.beamStroke)\n\n\t\tself.dom.rowBeam.attr('width', d.zoomedMainW).attr('height', s.rowh).style('stroke', s.beamStroke)\n\t}\n\n\tself.renderSerieses = function (s, l, d, duration) {\n\t\tif (self.prevUseCanvas != s.useCanvas) {\n\t\t\tself.dom.seriesesG.selectAll('g').remove()\n\t\t}\n\t\tif (s.useCanvas) {\n\t\t\tconst _g = self.dom.seriesesG.selectAll('g')\n\t\t\tconst g = /*(_g.size() && _g) ||*/ self.dom.seriesesG.append('g').datum(this.serieses)\n\t\t\tself.renderCanvas(this.serieses, g, d, s, _g, duration)\n\t\t} else {\n\t\t\tself.dom.seriesesG\n\t\t\t\t//.transition()\n\t\t\t\t//.duration(duration)\n\t\t\t\t.attr('transform', `translate(${d.xOffset + d.seriesXoffset},${d.yOffset})`)\n\n\t\t\tconst sg = self.dom.seriesesG.selectAll('.sjpp-mass-series-g').data(this.serieses, series => series.tw.$id)\n\t\t\tsg.exit().remove()\n\t\t\tsg.each(self.renderSeries)\n\t\t\tsg.enter().append('g').attr('class', 'sjpp-mass-series-g').style('opacity', 0.001).each(self.renderSeries)\n\t\t\t// need to reset imgBox and beam highlighters after rendering to avoid misaligned beam highlighters\n\t\t\tself.mouseout()\n\t\t}\n\t\tself.prevUseCanvas = s.useCanvas\n\t}\n\n\tself.renderSeries = async function (series) {\n\t\tconst s = self.settings.matrix\n\t\tconst d = self.dimensions\n\t\tconst g = select(this)\n\t\tconst duration = g.attr('transform') ? s.duration : 0\n\n\t\tg //.transition()\n\t\t\t//.duration(duration)\n\t\t\t.attr('transform', `translate(${series.x},${series.y})`)\n\t\t\t.style('opacity', 1)\n\t\tconst last = series.cells[series.cells.length - 1]\n\t\tconst height = series.y + last?.y + s.rowh\n\n\t\tconst rects = g\n\t\t\t.selectAll('rect')\n\t\t\t.data(series.cells, cell => cell.sample + ';;' + cell.tw.$id + ';;' + cell.valueIndex)\n\t\trects.exit().remove()\n\t\trects.each(self.renderCell)\n\t\trects.enter().append('rect').each(self.renderCell)\n\t}\n\n\tself.renderCanvas = async function (serieses, g, d, s, _g, duration) {\n\t\tconst pxr = window.devicePixelRatio <= 1 ? 1 : window.devicePixelRatio\n\t\t// TODO: may not need to remove the image???\n\t\tg.selectAll('*').remove()\n\t\tconst width = d.imgW\n\t\tconst height = self.dimensions.mainh\n\t\tconst canvas = window.OffscreenCanvas\n\t\t\t? new OffscreenCanvas(width * pxr, height * pxr)\n\t\t\t: // TODO: no need to support older browser versions???\n\t\t\t self.dom.holder\n\t\t\t\t\t.append('canvas')\n\t\t\t\t\t.attr('width', pxr * width)\n\t\t\t\t\t.attr('height', pxr * height)\n\t\t\t\t\t.style('opacity', 0)\n\t\t\t\t\t.node()\n\t\tconst ctx = canvas.getContext('2d')\n\t\tctx.imageSmoothingEnabled = false\n\t\tctx.imageSmoothingQuality = 'high'\n\t\t//ctx.lineWidth = 0.5\n\t\t//ctx.setTransform(pxr, 0, 0, pxr, 0, 0)\n\t\tctx.scale(pxr, pxr)\n\t\tfor (const series of serieses) {\n\t\t\tfor (const cell of series.cells) {\n\t\t\t\tself.renderCellWithCanvas(ctx, cell, series, s, d, series.y)\n\t\t\t}\n\t\t}\n\n\t\tif (window.OffscreenCanvas) {\n\t\t\tconst reader = new FileReader()\n\t\t\treader.addEventListener(\n\t\t\t\t'load',\n\t\t\t\t() => {\n\t\t\t\t\t// remove a previously rendered image, if applicable, right before replacing it\n\t\t\t\t\t// so that there will be no flicker on update\n\t\t\t\t\t_g?.remove()\n\t\t\t\t\tself.dom.seriesesG\n\t\t\t\t\t\t//.transition()\n\t\t\t\t\t\t//.duration(duration)\n\t\t\t\t\t\t.attr('transform', `translate(${d.xOffset + d.seriesXoffset},${d.yOffset})`)\n\n\t\t\t\t\tg.selectAll('image').remove()\n\t\t\t\t\tg.append('image')\n\t\t\t\t\t\t.attr('xlink:href', reader.result)\n\t\t\t\t\t\t.attr('x', d.xMin) //d.seriesXoffset + d.xMin) //d.xMin) // + d.xOffset) //d.seriesXoffset - d.xMin)\n\t\t\t\t\t\t.attr('width', width)\n\t\t\t\t\t\t.attr('height', height)\n\t\t\t\t},\n\t\t\t\tfalse\n\t\t\t)\n\t\t\tconst blob = await canvas.convertToBlob({ quality: 1 })\n\t\t\tconst dataURL = reader.readAsDataURL(blob)\n\t\t} else {\n\t\t\t_g?.remove()\n\t\t\tself.dom.seriesesG\n\t\t\t\t//.transition()\n\t\t\t\t//.duration(duration)\n\t\t\t\t.attr('transform', `translate(${d.xOffset + d.seriesXoffset},${d.yOffset})`)\n\n\t\t\tconst dataURL = canvas.toDataURL()\n\t\t\tconst ratio = window.devicePixelRatio * window.devicePixelRatio\n\t\t\tg.append('image').attr('width', width).attr('height', height).attr('xlink:href', dataURL)\n\t\t\tif (!window.OffscreenCanvas) canvas.remove()\n\t\t}\n\t\t// need to reset imgBox and beam highlighters after rendering to avoid misaligned beam highlighters\n\t\tself.mouseout()\n\t}\n\n\tself.renderCellWithCanvas = function (ctx, cell, series, s, d, _y) {\n\t\tif (!cell.fill)\n\t\t\tcell.fill = cell.$id in self.colorScaleByTermId ? self.colorScaleByTermId[cell.$id](cell.key) : getRectFill(cell)\n\t\tconst x = cell.x ? cell.x - d.xMin : 0\n\t\tconst y = _y ? _y + cell.y : cell.y || 0\n\t\tconst width = s.useMinPixelWidth ? Math.max(cell.width || d.colw, d.pxw) : cell.width || d.colw\n\t\tconst height = 'height' in cell ? cell.height : s.rowh\n\t\tctx.fillStyle = cell.fill\n\t\tctx.fillRect(x, y, width, height)\n\n\t\tconst borderWidth = Math.min(width, height) * 0.1\n\t\tif (cell.border) {\n\t\t\t// Draw the border\n\t\t\tctx.lineWidth = borderWidth // Set border width, you can adjust this value\n\t\t\tctx.strokeStyle = 'white' // Set the border color, you can use any color\n\t\t\tctx.strokeRect(x, y, width, height) // Draw the border\n\t\t}\n\t}\n\n\tself.renderCell = function (cell) {\n\t\tif (!cell.fill)\n\t\t\tcell.fill = cell.$id in self.colorScaleByTermId ? self.colorScaleByTermId[cell.$id](cell.key) : getRectFill(cell)\n\t\tconst s = self.settings.matrix\n\t\tconst rect = select(this)\n\t\t\t//.transition()\n\t\t\t// TODO: use s.duration if there is a way to avoid any remaining glitchy transitions\n\t\t\t// using the cell index in the .data() bind function seems to fix glitches in split cells,\n\t\t\t// but cells with overriden values flashes during a transition\n\t\t\t//.duration(0) //'x' in cell ? s.duration : 0)\n\t\t\t.attr('x', cell.x || 0)\n\t\t\t.attr('y', cell.y || 0)\n\t\t\t.attr('width', cell.width || self.dimensions.colw)\n\t\t\t.attr('height', 'height' in cell ? Math.max(0, cell.height) : s.rowh)\n\t\t\t.attr('shape-rendering', 'crispEdges')\n\t\t\t.attr('fill', cell.fill)\n\t\tif (cell.border) {\n\t\t\trect.attr('stroke', 'white').attr('stroke-width', 0.8)\n\t\t}\n\t}\n\n\tself.renderLabels = function (s, l, d, duration) {\n\t\tfor (const direction of ['top', 'btm', 'left', 'right']) {\n\t\t\tconst side = l[direction]\n\t\t\tside.box\n\t\t\t\t.style('display', side.display || '')\n\t\t\t\t//.transition()\n\t\t\t\t//.duration(duration)\n\t\t\t\t.attr('transform', side.attr.boxTransform)\n\n\t\t\tconst labels = side.box.selectAll('.sjpp-matrix-label').data(side.data, side.key)\n\t\t\tlabels.exit().remove()\n\t\t\tlabels.each(renderLabel)\n\t\t\tlabels.enter().append('g').attr('class', 'sjpp-matrix-label').each(renderLabel)\n\n\t\t\tfunction renderLabel(lab) {\n\t\t\t\tconst g = select(this)\n\t\t\t\t//const textduration = g.attr('transform') ? duration : 0\n\t\t\t\tg //.transition()\n\t\t\t\t\t//.duration(textduration)\n\t\t\t\t\t.attr('transform', side.attr.labelGTransform)\n\n\t\t\t\tif (!g.select(':scope>text').size()) g.append('text')\n\t\t\t\tconst showContAxis = !side.isGroup && lab.grp?.type !== 'hierCluster' && lab.tw?.q?.mode == 'continuous'\n\t\t\t\tconst labelText = side.label(lab)\n\t\t\t\tconst text = g.select(':scope>text').attr('fill', '#000')\n\n\t\t\t\tlet continuousBarHAdjust\n\t\t\t\tconst twSpecificSettings = self.config.settings.matrix.twSpecificSettings\n\t\t\t\tconst twSettingsBarH = twSpecificSettings[lab.tw?.$id]?.contBarH\n\t\t\t\tif (twSettingsBarH && s.barh) continuousBarHAdjust = (twSettingsBarH - s.barh) * 0.5\n\n\t\t\t\ttext\n\t\t\t\t\t//.transition()\n\t\t\t\t\t//.duration(textduration)\n\t\t\t\t\t.attr(\n\t\t\t\t\t\t'display',\n\t\t\t\t\t\tlab.grp?.type === 'hierCluster' && s.clusterRowh < 6\n\t\t\t\t\t\t\t? 'none'\n\t\t\t\t\t\t\t: side.attr.fontSize < 6 || labelText === 'configure'\n\t\t\t\t\t\t\t? 'none'\n\t\t\t\t\t\t\t: ''\n\t\t\t\t\t)\n\t\t\t\t\t.attr('font-size', lab.grp?.type === 'hierCluster' ? Math.max(4, s.clusterRowh - 4) : side.attr.fontSize)\n\t\t\t\t\t.attr('text-anchor', side.attr.labelAnchor)\n\t\t\t\t\t.attr(\n\t\t\t\t\t\t'transform',\n\t\t\t\t\t\tside.attr.labelTransform + (continuousBarHAdjust ? ` translate(0,${continuousBarHAdjust})` : '')\n\t\t\t\t\t)\n\t\t\t\t\t.attr('cursor', 'pointer')\n\t\t\t\t\t.attr(side.attr.textpos.coord, side.attr.textpos.factor * (showContAxis ? 30 : 0))\n\n\t\t\t\tif (!Array.isArray(labelText)) {\n\t\t\t\t\ttext.text(labelText)\n\t\t\t\t\ttext.attr(\n\t\t\t\t\t\t'y',\n\t\t\t\t\t\tlab.grp?.type !== 'hierCluster' && lab.tw?.q?.mode == 'continuous'\n\t\t\t\t\t\t\t? 10\n\t\t\t\t\t\t\t: lab.grp?.type === 'hierCluster'\n\t\t\t\t\t\t\t? 0.1 * s.clusterRowh\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t)\n\t\t\t\t\tif (lab.grp?.type !== 'hierCluster' && lab.tw?.q?.mode == 'continuous') text.attr('x', -20)\n\t\t\t\t} else {\n\t\t\t\t\t// this is required because labelText in the if-condition is not wrapped in tspan,\n\t\t\t\t\t// so the text.selectAll('tspan') below will not remove previous label\n\t\t\t\t\ttext.text('')\n\n\t\t\t\t\tconst tspan = text.selectAll('tspan').data(labelText)\n\t\t\t\t\t//tspan.exit().remove()\n\t\t\t\t\t//tspan.attr('dx', getTspanDx).attr('font-size', getTspanFontSize).text(getTspanText)\n\t\t\t\t\ttspan\n\t\t\t\t\t\t.enter()\n\t\t\t\t\t\t.append('tspan')\n\t\t\t\t\t\t.attr('class', getTspanCls)\n\t\t\t\t\t\t.attr('dx', getTspanDx)\n\t\t\t\t\t\t.attr('font-size', getTspanFontSize)\n\t\t\t\t\t\t.text(getTspanText)\n\t\t\t\t}\n\n\t\t\t\ttext\n\t\t\t\t\t.on('mouseover', labelText === 'configure' ? () => text.attr('opacity', 0.5) : null)\n\t\t\t\t\t.on('mouseout', labelText === 'configure' ? () => text.attr('opacity', 0) : null)\n\n\t\t\t\tconst hasAxis = g.select('.sjpp-matrix-cell-axis').size() && true\n\t\t\t\tif (showContAxis && labelText) {\n\t\t\t\t\tif (!hasAxis) {\n\t\t\t\t\t\tg.append('g').attr('class', 'sjpp-matrix-cell-axis').attr('shape-rendering', 'crispEdges')\n\t\t\t\t\t}\n\t\t\t\t\tconst axisg = g.select('.sjpp-matrix-cell-axis')\n\t\t\t\t\taxisg.selectAll('*').remove()\n\t\t\t\t\tconst domain = [lab.counts.maxval, lab.counts.minval]\n\t\t\t\t\tif (s.transpose) domain.reverse()\n\n\t\t\t\t\tconst twSpecificSettings = self.config.settings.matrix.twSpecificSettings\n\t\t\t\t\tconst twSettings = twSpecificSettings[lab.tw.$id]\n\t\t\t\t\tconst x = !s.transpose ? 0 : twSettings.contBarGap - 1 - lab.labelOffset\n\t\t\t\t\tconst y = !s.transpose ? twSettings.contBarGap - 1 - lab.labelOffset : 0\n\t\t\t\t\taxisg\n\t\t\t\t\t\t.attr('shape-rendering', 'crispEdges')\n\t\t\t\t\t\t.attr('transform', `translate(${x},${y})`)\n\t\t\t\t\t\t.call(side.attr.axisFxn(lab.scales.full.domain(lab.scales.tickValues)).tickValues(lab.scales.tickValues))\n\t\t\t\t} else if (hasAxis) {\n\t\t\t\t\tg.select('.sjpp-matrix-cell-axis').remove()\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction getTspanCls(d) {\n\t\t\t\treturn d.cls\n\t\t\t}\n\t\t\tfunction getTspanDx(d) {\n\t\t\t\treturn d.dx\n\t\t\t}\n\t\t\tfunction getTspanFontSize(d) {\n\t\t\t\treturn d.fontSize || side.attr.fontSize\n\t\t\t}\n\t\t\tfunction getTspanText(d) {\n\t\t\t\treturn d.text\n\t\t\t}\n\t\t}\n\t}\n\n\tself.colLabelGTransform = (lab, grpIndex) => {\n\t\tconst s = self.settings.matrix\n\t\tconst d = self.dimensions\n\t\tlab.labelOffset = 0.8 * d.colw\n\t\tconst x = lab.grpIndex * s.colgspace + lab.totalIndex * d.dx + lab.labelOffset + lab.totalHtAdjustments\n\t\tconst y = 0 //lab.tw?.q?.mode == 'continuous' ? -30 : 0\n\t\treturn `translate(${x + d.seriesXoffset},${y})`\n\t}\n\n\tself.colGrpLabelGTransform = (lab, grpIndex) => {\n\t\tconst s = self.settings.matrix\n\t\tconst d = self.dimensions\n\t\tconst len = (lab.processedLst || lab.grp.lst).length\n\t\tconst x =\n\t\t\tlab.grpIndex * s.colgspace +\n\t\t\tlab.prevGrpTotalIndex * d.dx +\n\t\t\t(len * d.dx) / 2 +\n\t\t\ts.grpLabelFontSize / 2 +\n\t\t\tlab.totalHtAdjustments\n\t\treturn `translate(${x + d.seriesXoffset},0)`\n\t}\n\n\tself.rowLabelGTransform = (lab, grpIndex) => {\n\t\tconst s = self.settings.matrix\n\t\tconst d = self.dimensions\n\t\tconst x = 0 // lab.tw?.q?.mode == 'continuous' ? -30 : 0\n\t\tlab.labelOffset = 0.7 * (lab.grp.type == 'hierCluster' ? s.clusterRowh : s.rowh)\n\t\tconst y = lab.grpIndex * s.rowgspace + lab.totalIndex * d.dy + lab.labelOffset + lab.totalHtAdjustments\n\t\treturn `translate(${x},${y})`\n\t}\n\n\tself.rowGrpLabelGTransform = (lab, grpIndex) => {\n\t\tconst s = self.settings.matrix\n\t\tconst d = self.dimensions\n\t\tconst len = (lab.processedLst || lab.grp.lst).length\n\t\tconst x = lab.tw?.q?.mode == 'continuous' ? 20 : 0\n\t\tconst y =\n\t\t\tlab.grpIndex * s.rowgspace +\n\t\t\tlab.prevGrpTotalIndex * d.dy +\n\t\t\t(len * d.dy) / 2 +\n\t\t\ts.grpLabelFontSize / 2 +\n\t\t\tlab.totalHtAdjustments\n\t\treturn `translate(${x},${y})`\n\t}\n\n\tself.rowAxisGTransform = (lab, grpIndex) => {\n\t\tconst s = self.settings.matrix\n\t\tconst d = self.dimensions\n\t\tconst x = 0 // lab.tw?.q?.mode == 'continuous' ? -30 : 0\n\t\tconst y = lab.grpIndex * s.rowgspace + lab.totalIndex * d.dy + 0.7 * s.rowh + lab.totalHtAdjustments\n\t\treturn `translate(${x},${y})`\n\t}\n\n\tself.renderDivideByLabel = async (s, l, d) => {\n\t\tself.dom.mainG.selectAll('.sjpp-matrix-divide-by-label').remove()\n\t\tif (!self.config.divideBy) return\n\t\tconst name = self.config.divideBy?.term.name || ''\n\t\tconst text = name.length <= s.rowlabelmaxchars ? name : name.slice(0, s.rowlabelmaxchars) + '\u2026'\n\t\tconst sides = !s.transpose ? [l.left, l.right] : [l.top, l.bottom]\n\t\tconst box = sides.find(d => !d.isGroup)?.box\n\t\tconst y = (s.collabelpos == 'top' ? d.mainh + s.collabelmaxchars : -s.collabelmaxchars) + 8\n\t\tconst anchor = s.rowlabelpos == 'left' ? 'end' : 'start'\n\t\tconst cl = s.controlLabels\n\n\t\tconst gNote = box.append('g').attr('class', 'sjpp-matrix-divide-by-label').attr('transform', `translate(0, ${y})`)\n\n\t\tgNote\n\t\t\t.append('text')\n\t\t\t.attr('text-anchor', anchor)\n\t\t\t.attr('font-style', 'italic')\n\t\t\t.attr('y', -20)\n\t\t\t.text(`${cl.Samples} grouped by`)\n\n\t\tconst g = box\n\t\t\t.datum({ tw: self.config.divideBy })\n\t\t\t.append('g')\n\t\t\t.attr('class', 'sjpp-matrix-divide-by-label')\n\t\t\t.attr('transform', `translate(0, ${y})`)\n\t\t\t.on('click', (event, d) => {\n\t\t\t\tpill.showMenu(event, textElem.node())\n\t\t\t})\n\n\t\tconst textElem = g.append('text').attr('text-anchor', anchor).attr('font-weight', 600).text(text)\n\n\t\tg.append('title').text(`${cl.Samples} are grouped by this gene or variable. Click to edit.`)\n\n\t\tconst customMenuOptions = []\n\t\tconst tvsKey = isNumericTerm(self.config.divideBy.term) ? 'ranges' : 'values'\n\t\tif (\n\t\t\tself.config.legendValueFilter.lst?.find(\n\t\t\t\tl => l.legendGrpName == self.config.divideBy.term.id || l.legendGrpName == self.config.divideBy.term.name\n\t\t\t)?.tvs[tvsKey]?.length\n\t\t) {\n\t\t\tcustomMenuOptions.push({ label: `Show filtered ${cl.samples}`, callback: self.showDeletedSampleGroups })\n\t\t}\n\n\t\tconst pill = await termsettingInit({\n\t\t\tmenuOptions: '{edit,replace,remove}',\n\t\t\t//numericEditMenuVersion: opts.numericEditMenuVersion,\n\n\t\t\tcustomMenuOptions, //custom menu options other than menuOptions\n\t\t\tvocabApi: self.app.vocabApi,\n\t\t\tvocab: self.state.vocab,\n\t\t\t//activeCohort: opts.state?.activeCohort,\n\t\t\tholder: g,\n\t\t\tdebug: self.opts.debug,\n\t\t\tusecase: { target: 'matrix' },\n\t\t\tgetBodyParams: () => {\n\t\t\t\tconst currentGeneNames = self.termOrder\n\t\t\t\t\t.filter(t => t.tw.term.type === 'geneVariant')\n\t\t\t\t\t.map(t =>\n\t\t\t\t\t\tt.tw.term.chr ? `${t.tw.term.chr}:${t.tw.term.start}-${t.tw.term.stop}` : t.tw.term.gene || t.tw.term.name\n\t\t\t\t\t) // TODO term.gene replaces term.name\n\t\t\t\tif (currentGeneNames.length) return { currentGeneNames }\n\t\t\t\treturn {}\n\t\t\t},\n\t\t\tcallback: async tw => {\n\t\t\t\t// showing \"processing data ...\"\" before pill is set\n\t\t\t\tif (self.dom.loadingDiv && self.dom.svg) {\n\t\t\t\t\tself.dom.loadingDiv.selectAll('*').remove()\n\t\t\t\t\tself.dom.loadingDiv.html('').style('display', '').style('position', 'relative').style('left', '45%')\n\t\t\t\t\tself.dom.loadingDiv.html('Processing data ...')\n\t\t\t\t\tself.dom.svg.style('opacity', 0.1).style('pointer-events', 'none')\n\t\t\t\t}\n\t\t\t\t// data is object with only one needed attribute: q, never is null\n\t\t\t\tif (tw && !tw.q) throw 'data.q{} missing from pill callback'\n\t\t\t\tif (tw?.term && isNumericTerm(tw.term)) {\n\t\t\t\t\t// any numeric term should be discrete when used as divideBy term\n\t\t\t\t\t// tw is missing when dividedBy term deleted\n\t\t\t\t\ttw.q = { ...tw.q, mode: 'discrete' }\n\t\t\t\t}\n\t\t\t\tif (tw) await fillTermWrapper(tw, self.app.vocabApi)\n\t\t\t\tawait pill.main(tw ? tw : { term: null, q: null })\n\t\t\t\tbox.datum({ tw })\n\t\t\t\tself.app.dispatch({\n\t\t\t\t\ttype: 'plot_edit',\n\t\t\t\t\tid: self.id,\n\t\t\t\t\tconfig: {\n\t\t\t\t\t\tdivideBy: tw,\n\t\t\t\t\t\tlegendValueFilter: self.mayRemoveTvsEntry(self.config.divideBy)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\t\tconst arg = {\n\t\t\tterm: self.config.divideBy.term,\n\t\t\tq: self.config.divideBy.q\n\t\t}\n\t\tif (self.config.divideBy.$id) arg.$id = self.config.divideBy.$id\n\t\tpill.main(arg)\n\t}\n\n\tself.adjustSvgDimensions = async function (prevTranspose) {\n\t\tconst s = self.settings.matrix\n\t\tconst hc = self.settings.hierCluster || {}\n\t\tconst l = self.layout\n\t\tconst hcHeight = !hc.yDendrogramHeight ? 0 : hc.yDendrogramHeight + (l.top.display === 'none' ? 0 : 10)\n\t\tconst hcWidth = hc.xDendrogramHeight || 0\n\t\tconst d = self.dimensions\n\t\tconst duration = self.dom.svg.attr('width') ? s.duration : 0\n\n\t\t// wait for labels to render; when transposing, must wait for\n\t\t// the label rotation to end before measuring the label height and width\n\t\tawait sleep(prevTranspose == s.transpose ? duration : s.duration)\n\n\t\t// these are the label boxes\n\t\tconst topBox = l.top.box.node().getBBox()\n\t\tconst btmBox = l.btm.box.node().getBBox()\n\t\tconst leftBox = l.left.box.node().getBBox()\n\t\tconst rtBox = l.right.box.node().getBBox()\n\t\tconst legendBox = self.dom.legendG.node().getBBox()\n\t\tconst seriesBox = self.dom.seriesesG.node().getBBox()\n\n\t\td.extraWidth = leftBox.width + rtBox.width + s.margin.left + s.margin.right + s.rowlabelgap * 2\n\t\td.extraHeight = topBox.height + btmBox.height + s.margin.top + s.margin.bottom + s.collabelgap * 2\n\t\td.svgw = d.mainw + d.extraWidth + hcWidth\n\t\td.svgh = d.mainh + d.extraHeight + legendBox.height + 20 + s.scrollHeight + hcHeight\n\t\tself.dom.svg\n\t\t\t//.transition()\n\t\t\t//.duration(duration)\n\t\t\t.attr('width', d.svgw)\n\t\t\t.attr('height', d.svgh)\n\n\t\t//calculate the max gene label\n\t\tlet maxLabelWidth = self.type == 'hierCluster' ? 0 : leftBox.width,\n\t\t\tmaxLabelNumChars = 0\n\t\tif (hc.xDendrogramHeight) {\n\t\t\tself.dom.termLabelG.selectAll('.sjpp-matrix-label').each(function (d) {\n\t\t\t\tif (d.grp.type !== 'hierCluster') return\n\t\t\t\t// TODO: may enable this optimization to only detect the label box width\n\t\t\t\t// if the text length difference is likely to affect the width\n\t\t\t\t// DOM measurements like getBBox() may affect performance if there are lots of labels\n\t\t\t\t// if (d.label.length < maxLabelNumChars - 10) return\n\t\t\t\tconst box = this.getBBox()\n\t\t\t\tif (box.width > maxLabelWidth) {\n\t\t\t\t\tmaxLabelWidth = box.width\n\t\t\t\t\tmaxLabelNumChars = d.label.length\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\t// note: two leftBox.width terms cancels to zero\n\t\tconst x = -l.left.offset + hcWidth + maxLabelWidth\n\t\t// with hierCluster:\n\t\t// in case the term dendrograms + max term label width is less than the leftBox.width of all row labels,\n\t\t// then the mainG and top/left dendrograms must be offset have an additional offset based on the difference\n\t\tconst xAdjust = !hc.xDendrogramHeight ? 0 : Math.max(leftBox.width - (hc.xDendrogramHeight + maxLabelWidth), 0)\n\t\tconst y = (l.top.display == 'none' ? 0 : topBox.height) - l.top.offset + hcHeight\n\t\tself.dom.mainG\n\t\t\t//.transition()\n\t\t\t//.duration(duration)\n\t\t\t.attr('transform', `translate(${x + xAdjust},${y})`)\n\n\t\tself.dom.clipRect\n\t\t\t// the cliprect has to be moved upwards, plus increased height to that adjustment value,\n\t\t\t// in order to display all characters of every column/group label\n\t\t\t.attr('y', -y)\n\t\t\t// add 500 so that the column labels are not clipped\n\t\t\t.attr('height', d.mainh + 500 + y)\n\n\t\t// this position is based on layout.btm.attr.boxTransform, plus box height and margins\n\t\tconst legendX = d.xOffset + (s.transpose ? 20 : 0)\n\t\tconst legendY = d.yOffset + d.mainh + s.collabelgap + (l.btm.display == 'none' ? 0 : btmBox.height) + 20\n\n\t\tself.dom.legendG\n\t\t\t//.transition()\n\t\t\t//.duration(duration)\n\t\t\t.attr('transform', `translate(${legendX},${legendY})`)\n\n\t\tif (hc.xDendrogramHeight) {\n\t\t\tconst dendroX = maxLabelWidth + xAdjust - l.left.offset + d.xOffset - d.dx / 2\n\t\t\tself.dom.hcClipRect\n\t\t\t\t.attr('x', dendroX + hcWidth + d.dx / 2)\n\t\t\t\t.attr('y', 0)\n\t\t\t\t.attr('width', d.mainw + 3)\n\t\t\t\t// add 500 so that the column labels are not clipped\n\t\t\t\t.attr('height', d.mainh + hc.yDendrogramHeight + 500)\n\n\t\t\t// for easy reference when scrolling interactively\n\t\t\tself.topDendroX = dendroX + d.seriesXoffset\n\t\t\tself.dom.topDendrogram.attr('transform', `translate(${self.topDendroX}, 0)`)\n\t\t\tconst y = l.top.display == 'none' ? 0 : topBox.height + s.collabelgap\n\t\t\tself.dom.leftDendrogram.attr('transform', `translate(${dendroX - maxLabelWidth - 10}, ${y})`)\n\t\t}\n\t}\n}\n\nfunction getRectFill(d) {\n\tif (d.fill) return d.fill\n\t/*** TODO: class should be for every values entry, as applicable ***/\n\tconst cls = d.class || (Array.isArray(d.values) && d.values[0].class)\n\tif (!cls) console.log\n\treturn cls ? mclass[cls].color : '#555'\n}\n\nfunction sleep(ms) {\n\treturn new Promise(resolve => setTimeout(resolve, ms))\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["renderLabel", "getTspanCls", "getTspanDx", "getTspanFontSize", "getTspanText", "twSpecificSettings", "d", "l", "y"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import {
|
|
2
|
+
addGeneSearchbox,
|
|
3
|
+
getSCGEunit
|
|
4
|
+
} from "./chunk-NVB7MQLH.js";
|
|
5
|
+
import {
|
|
6
|
+
Menu
|
|
7
|
+
} from "./chunk-A6TQGNDQ.js";
|
|
8
|
+
import {
|
|
9
|
+
SINGLECELL_GENE_EXPRESSION
|
|
10
|
+
} from "./chunk-6ITDJ5UR.js";
|
|
11
|
+
|
|
12
|
+
// termdb/handlers/singleCellGeneExpression.ts
|
|
13
|
+
var SearchHandler = class {
|
|
14
|
+
init(opts) {
|
|
15
|
+
this.validateOpts(opts);
|
|
16
|
+
this.callback = opts.callback;
|
|
17
|
+
this.app = opts.app;
|
|
18
|
+
const holder = opts.holder.append("div").style("padding", "10px 0px");
|
|
19
|
+
const geneSearch = addGeneSearchbox({
|
|
20
|
+
tip: new Menu({ padding: "0px" }),
|
|
21
|
+
genome: opts.genomeObj,
|
|
22
|
+
row: holder,
|
|
23
|
+
searchOnly: "gene",
|
|
24
|
+
callback: () => this.selectGene(geneSearch.geneSymbol, opts.usecase?.specialCase?.config?.sample)
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/**TODO: scge tw handler will validate that a sample is included. Need to resolve issue
|
|
28
|
+
* with sample info not included.*/
|
|
29
|
+
async selectGene(gene, sample) {
|
|
30
|
+
if (!gene) throw new Error("No gene selected");
|
|
31
|
+
const unit = getSCGEunit(this.app.vocabApi);
|
|
32
|
+
const name = `${gene} ${unit}`;
|
|
33
|
+
this.callback({ gene, name, type: SINGLECELL_GENE_EXPRESSION, sample });
|
|
34
|
+
}
|
|
35
|
+
validateOpts(opts) {
|
|
36
|
+
if (opts.callback == null) throw new Error("callback is required");
|
|
37
|
+
if (opts.app == null) throw new Error("app is required");
|
|
38
|
+
if (opts.holder == null) throw new Error("holder is required");
|
|
39
|
+
if (opts.genomeObj == null) throw new Error("genomeObj is required");
|
|
40
|
+
if (opts.usecase == null) throw new Error("usecase is required");
|
|
41
|
+
if (!opts.usecase?.specialCase?.config?.sample) {
|
|
42
|
+
throw new Error("usecase.specialCase.config.sample is required for singleCellGeneExpression handler");
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export {
|
|
48
|
+
SearchHandler
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=chunk-LRBNYEFI.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../termdb/handlers/singleCellGeneExpression.ts"],
|
|
4
|
+
"sourcesContent": ["import { Menu, addGeneSearchbox } from '#dom'\nimport type { AppApi } from '#rx'\nimport { SINGLECELL_GENE_EXPRESSION } from '#shared/terms.js'\nimport { getSCGEunit } from '#tw/singleCellGeneExpression'\nimport type { SearchHandlerOpts } from '../TermTypeSearch.js'\n\nexport class SearchHandler {\n\tcallback?: (arg0: { gene: string; name: string; type: string; sample: object }) => void\n\tapp?: AppApi\n\n\tinit(opts: SearchHandlerOpts) {\n\t\tthis.validateOpts(opts)\n\t\tthis.callback = opts.callback\n\t\tthis.app = opts.app\n\t\tconst holder = opts.holder.append('div').style('padding', '10px 0px')\n\t\tconst geneSearch = addGeneSearchbox({\n\t\t\ttip: new Menu({ padding: '0px' }),\n\t\t\tgenome: opts.genomeObj,\n\t\t\trow: holder,\n\t\t\tsearchOnly: 'gene',\n\t\t\tcallback: () => this.selectGene(geneSearch.geneSymbol, opts.usecase?.specialCase?.config?.sample)\n\t\t})\n\t}\n\n\t/**TODO: scge tw handler will validate that a sample is included. Need to resolve issue\n\t * with sample info not included.*/\n\tasync selectGene(gene: string | undefined, sample: any | undefined) {\n\t\tif (!gene) throw new Error('No gene selected')\n\t\tconst unit = getSCGEunit(this.app!.vocabApi)\n\t\tconst name = `${gene} ${unit}`\n\t\tthis.callback!({ gene, name, type: SINGLECELL_GENE_EXPRESSION, sample })\n\t}\n\n\tvalidateOpts(opts) {\n\t\tif (opts.callback == null) throw new Error('callback is required')\n\t\tif (opts.app == null) throw new Error('app is required')\n\t\tif (opts.holder == null) throw new Error('holder is required')\n\t\tif (opts.genomeObj == null) throw new Error('genomeObj is required')\n\t\tif (opts.usecase == null) throw new Error('usecase is required')\n\t\tif (!opts.usecase?.specialCase?.config?.sample) {\n\t\t\tthrow new Error('usecase.specialCase.config.sample is required for singleCellGeneExpression handler')\n\t\t}\n\t}\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;AAMO,IAAM,gBAAN,MAAoB;AAAA,EAI1B,KAAK,MAAyB;AAC7B,SAAK,aAAa,IAAI;AACtB,SAAK,WAAW,KAAK;AACrB,SAAK,MAAM,KAAK;AAChB,UAAM,SAAS,KAAK,OAAO,OAAO,KAAK,EAAE,MAAM,WAAW,UAAU;AACpE,UAAM,aAAa,iBAAiB;AAAA,MACnC,KAAK,IAAI,KAAK,EAAE,SAAS,MAAM,CAAC;AAAA,MAChC,QAAQ,KAAK;AAAA,MACb,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,UAAU,MAAM,KAAK,WAAW,WAAW,YAAY,KAAK,SAAS,aAAa,QAAQ,MAAM;AAAA,IACjG,CAAC;AAAA,EACF;AAAA;AAAA;AAAA,EAIA,MAAM,WAAW,MAA0B,QAAyB;AACnE,QAAI,CAAC,KAAM,OAAM,IAAI,MAAM,kBAAkB;AAC7C,UAAM,OAAO,YAAY,KAAK,IAAK,QAAQ;AAC3C,UAAM,OAAO,GAAG,IAAI,IAAI,IAAI;AAC5B,SAAK,SAAU,EAAE,MAAM,MAAM,MAAM,4BAA4B,OAAO,CAAC;AAAA,EACxE;AAAA,EAEA,aAAa,MAAM;AAClB,QAAI,KAAK,YAAY,KAAM,OAAM,IAAI,MAAM,sBAAsB;AACjE,QAAI,KAAK,OAAO,KAAM,OAAM,IAAI,MAAM,iBAAiB;AACvD,QAAI,KAAK,UAAU,KAAM,OAAM,IAAI,MAAM,oBAAoB;AAC7D,QAAI,KAAK,aAAa,KAAM,OAAM,IAAI,MAAM,uBAAuB;AACnE,QAAI,KAAK,WAAW,KAAM,OAAM,IAAI,MAAM,qBAAqB;AAC/D,QAAI,CAAC,KAAK,SAAS,aAAa,QAAQ,QAAQ;AAC/C,YAAM,IAAI,MAAM,oFAAoF;AAAA,IACrG;AAAA,EACD;AACD;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|