@sjcrh/proteinpaint-client 2.42.0 → 2.42.1-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{2dmaf-4c8115cb.js → 2dmaf-7f12f347.js} +1 -1
- package/dist/{DEanalysis-ae8b793e.js → DEanalysis-4e97eae7.js} +1 -1
- package/dist/{Disco-4ead6c6f.js → Disco-2910f321.js} +1 -1
- package/dist/{Disco.UI-a765390e.js → Disco.UI-266c3c98.js} +1 -1
- package/dist/{DragControls-03718ca8.js → DragControls-934cfddb.js} +1 -1
- package/dist/{OrbitControls-0a1bcd3b.js → OrbitControls-379215f5.js} +1 -1
- package/dist/{app-db79376c.js → app-53b444fe.js} +1 -1
- package/dist/{app-64537b0c.js → app-9ef9a482.js} +1 -1
- package/dist/{app-f70d9a0b.js → app-f73edb78.js} +1 -1
- package/dist/app.js +1 -1
- package/dist/{barchart-a4a6b4b4.js → barchart-5755e4b5.js} +1 -1
- package/dist/{barchart.events-3fd64094.js → barchart.events-cb8547bb.js} +1 -1
- package/dist/{bars.renderer-7c9358aa.js → bars.renderer-ffddf5f5.js} +1 -1
- package/dist/{block-ec15b4b6.js → block-06e306e9.js} +1 -1
- package/dist/{block.ds.gmcustomdata-4944ece7.js → block.ds.gmcustomdata-a0f1fd3e.js} +1 -1
- package/dist/block.lazyload-e9a6e4fc.js +1 -0
- package/dist/{block.legend-ebe13fbd.js → block.legend-ae9c9047.js} +1 -1
- package/dist/{block.mds-52af63e1.js → block.mds-125e263c.js} +1 -1
- package/dist/{block.mds.cnv-a40ea2e4.js → block.mds.cnv-80691b84.js} +1 -1
- package/dist/{block.mds.expressionrank-7357fa79.js → block.mds.expressionrank-8a4c69bb.js} +1 -1
- package/dist/{block.mds.expressionstat-4c3dcb37.js → block.mds.expressionstat-7ac00a72.js} +1 -1
- package/dist/{block.mds.geneboxplot-ba99239a.js → block.mds.geneboxplot-ec043226.js} +1 -1
- package/dist/{block.mds.junction-6b881504.js → block.mds.junction-5d744e19.js} +1 -1
- package/dist/{block.mds.svcnv-5bd2e65b.js → block.mds.svcnv-8aec47ec.js} +1 -1
- package/dist/{block.mds.svcnv.share-ebe307d2.js → block.mds.svcnv.share-eb86d7b0.js} +1 -1
- package/dist/{block.mds2-a039e999.js → block.mds2-08b79c5e.js} +1 -1
- package/dist/{block.svg-742bcd6f.js → block.svg-ca8e74f1.js} +1 -1
- package/dist/{block.tk.aicheck-c16f7c33.js → block.tk.aicheck-8c8c74ca.js} +1 -1
- package/dist/{block.tk.ase-5bd73577.js → block.tk.ase-27f2e649.js} +1 -1
- package/dist/{block.tk.bam-f39283bf.js → block.tk.bam-5d0cc18f.js} +1 -1
- package/dist/{block.tk.bam.gdc-66964f1c.js → block.tk.bam.gdc-318db418.js} +1 -1
- package/dist/{block.tk.bedgraphdot-d05f27a0.js → block.tk.bedgraphdot-1b5d99db.js} +1 -1
- package/dist/{block.tk.bigwig.ui-964986f8.js → block.tk.bigwig.ui-bc0afbf9.js} +1 -1
- package/dist/{block.tk.hicstraw-972dd3d4.js → block.tk.hicstraw-64610b08.js} +1 -1
- package/dist/{block.tk.junction-4e33561e.js → block.tk.junction-0febb7c5.js} +1 -1
- package/dist/{block.tk.junction.textmatrixui-e9fe9446.js → block.tk.junction.textmatrixui-11649433.js} +1 -1
- package/dist/{block.tk.ld-880fe55f.js → block.tk.ld-2449943d.js} +1 -1
- package/dist/{block.tk.menu-16e5a387.js → block.tk.menu-f4e2c9a6.js} +1 -1
- package/dist/{block.tk.pgv-daf6e812.js → block.tk.pgv-ac78e412.js} +1 -1
- package/dist/{boxplot-28751534.js → boxplot-cf99d543.js} +1 -1
- package/dist/{brush-bc06febc.js → brush-33697636.js} +1 -1
- package/dist/{categorical-c86731fd.js → categorical-024a02d0.js} +1 -1
- package/dist/{condition-59895ac1.js → condition-4c5195a9.js} +1 -1
- package/dist/{controls-cd2ff09c.js → controls-93c1b3a5.js} +1 -1
- package/dist/{controls.btns-86a413d5.js → controls.btns-af5280bd.js} +1 -1
- package/dist/{controls.config-ae99bcd1.js → controls.config-d936ea41.js} +1 -1
- package/dist/{controls.divide-8f26abff.js → controls.divide-e988fa36.js} +1 -1
- package/dist/{controls.overlay-a72d72e4.js → controls.overlay-9bfc642f.js} +1 -1
- package/dist/{controls.term1-3c9e55b8.js → controls.term1-62150931.js} +1 -1
- package/dist/{cuminc-e7326248.js → cuminc-9c7ff331.js} +1 -1
- package/dist/{dataDownload-f3cdbc7c.js → dataDownload-1f61a3fd.js} +1 -1
- package/dist/{databrowser.ui-52855244.js → databrowser.ui-0803623f.js} +1 -1
- package/dist/{density-33ec5f83.js → density-4ca7f14f.js} +1 -1
- package/dist/{dictionary-578c63d9.js → dictionary-943a4cd2.js} +1 -1
- package/dist/{drag-e2fbde14.js → drag-19604a2e.js} +1 -1
- package/dist/{e2pca-fa8ce887.js → e2pca-e18c801f.js} +1 -1
- package/dist/{ep-b51b82d5.js → ep-708f0514.js} +1 -1
- package/dist/{filter-5a5a1166.js → filter-6b0bd66e.js} +1 -1
- package/dist/{fusion.parse-d20a9d3d.js → fusion.parse-206fa8af.js} +1 -1
- package/dist/{gdc.maf-ced4bc13.js → gdc.maf-84509ef3.js} +1 -1
- package/dist/{gdc.singleCell-1fc3a5b9.js → gdc.singleCell-350d7e63.js} +1 -1
- package/dist/{geneExpression-0d0e9692.js → geneExpression-ef1eda3f.js} +1 -1
- package/dist/{geneSearch4GDCmds3-b3a65ff2.js → geneSearch4GDCmds3-e9196a30.js} +1 -1
- package/dist/{geneVariant-1100ab96.js → geneVariant-4b5d3728.js} +1 -1
- package/dist/genefusion.ui-31ff953e.js +1 -0
- package/dist/{geneset-b37a8d83.js → geneset-48feba0c.js} +1 -1
- package/dist/{genesetEdit-15cec871.js → genesetEdit-34f2ee5d.js} +1 -1
- package/dist/{genomeBrowser-10004899.js → genomeBrowser-f175f471.js} +1 -1
- package/dist/{genomeBrowser.controls-2d794ff1.js → genomeBrowser.controls-674775c6.js} +1 -1
- package/dist/{groupsetting-eaf40465.js → groupsetting-a58e1f5a.js} +1 -1
- package/dist/{hic.straw-1ca9ddd0.js → hic.straw-3143889c.js} +1 -1
- package/dist/{hierCluster-6e93c3b2.js → hierCluster-130e5722.js} +1 -1
- package/dist/{hierCluster.config-9b8fa78e.js → hierCluster.config-d4fdfeac.js} +1 -1
- package/dist/{hierCluster.interactivity-e379aa01.js → hierCluster.interactivity-4b1534bc.js} +1 -1
- package/dist/{hierCluster.renderers-7b35f0cc.js → hierCluster.renderers-cd618c97.js} +1 -1
- package/dist/{html.legend-48cf5c03.js → html.legend-f44f18ab.js} +1 -1
- package/dist/{lasso-afa6b87e.js → lasso-22efae36.js} +1 -1
- package/dist/launch.adhoc-7639eb4a.js +1 -0
- package/dist/{launchGdcHierCluster-ab790040.js → launchGdcHierCluster-001bc76e.js} +1 -1
- package/dist/{launchGdcMatrix-48c56699.js → launchGdcMatrix-6c906351.js} +1 -1
- package/dist/{legacyDataset-21fdc0fe.js → legacyDataset-661691af.js} +1 -1
- package/dist/{log-9e964794.js → log-848ca156.js} +1 -1
- package/dist/{maftimeline-fc71d7a0.js → maftimeline-8b2d8513.js} +1 -1
- package/dist/{matrix-d644b099.js → matrix-af727a11.js} +1 -1
- package/dist/{matrix.cells-5db8ba9e.js → matrix.cells-7ea665f3.js} +1 -1
- package/dist/{matrix.cluster-88a2266e.js → matrix.cluster-33321b79.js} +1 -1
- package/dist/{matrix.config-85132ec9.js → matrix.config-d8efc6dc.js} +1 -1
- package/dist/{matrix.controls-4933c41c.js → matrix.controls-b2dc0e5b.js} +1 -1
- package/dist/{matrix.data-b798eb7d.js → matrix.data-7feb7104.js} +1 -1
- package/dist/{matrix.dom-6971ecb1.js → matrix.dom-7394bd2c.js} +1 -1
- package/dist/{matrix.interactivity-380a57f9.js → matrix.interactivity-ff7ed88a.js} +1 -1
- package/dist/{matrix.layout-3165a88a.js → matrix.layout-168399d4.js} +1 -1
- package/dist/{matrix.legend-f0ab9a34.js → matrix.legend-10a21caa.js} +1 -1
- package/dist/{matrix.renderers-48826412.js → matrix.renderers-3a992e66.js} +1 -1
- package/dist/{matrix.serieses-610f9bc4.js → matrix.serieses-43f86542.js} +1 -1
- package/dist/{mavb-54aeff14.js → mavb-dc006bd3.js} +1 -1
- package/dist/{mds.fimo-fa2b1d1a.js → mds.fimo-fcc96802.js} +1 -1
- package/dist/{mds.samplescatterplot-669b4e1d.js → mds.samplescatterplot-c8732bae.js} +1 -1
- package/dist/{mds.survivalplot-055a1274.js → mds.survivalplot-4e72eb4b.js} +1 -1
- package/dist/{mdsjsonform-8d72a884.js → mdsjsonform-cd7cbed1.js} +1 -1
- package/dist/{nodrag-094c4b10.js → nodrag-39389c59.js} +1 -1
- package/dist/{numeric-939729b0.js → numeric-28b1370d.js} +1 -1
- package/dist/{numeric.binary-d1ada20b.js → numeric.binary-de25c5cb.js} +1 -1
- package/dist/{numeric.continuous-cf4fb4c0.js → numeric.continuous-78ae5f51.js} +1 -1
- package/dist/{numeric.discrete-ea17f823.js → numeric.discrete-7976336c.js} +1 -1
- package/dist/{numeric.spline-2d40b041.js → numeric.spline-1adcbe86.js} +1 -1
- package/dist/{numeric.toggle-7e1ae903.js → numeric.toggle-ba85b972.js} +1 -1
- package/dist/{plot.2dvaf-12d6ace7.js → plot.2dvaf-d8eda179.js} +1 -1
- package/dist/plot.app-cf29de59.js +1 -0
- package/dist/{plot.barplot-ab82cad5.js → plot.barplot-469de952.js} +1 -1
- package/dist/{plot.boxplot-d4984beb.js → plot.boxplot-29ed0bcd.js} +1 -1
- package/dist/{plot.disco-7efd2855.js → plot.disco-15695284.js} +1 -1
- package/dist/{plot.ssgq-e41ca8ac.js → plot.ssgq-ab818820.js} +1 -1
- package/dist/{plot.vaf2cov-0cf0bfb0.js → plot.vaf2cov-646c89ff.js} +1 -1
- package/dist/{polar-86a9ecb8.js → polar-57ab248e.js} +1 -1
- package/dist/{profileBarchart-a41a1fd8.js → profileBarchart-5eda57dd.js} +1 -1
- package/dist/{profileHome-1ada0bb1.js → profileHome-98d3bd09.js} +1 -1
- package/dist/{profilePlot-69af5e30.js → profilePlot-c1bc4e3f.js} +1 -1
- package/dist/{profilePolar-7446e230.js → profilePolar-d6a3ef51.js} +1 -1
- package/dist/{profileRadar-d23d8ebe.js → profileRadar-61cd7e72.js} +1 -1
- package/dist/{profileRadarFacility-9f9a324e.js → profileRadarFacility-fd292b0d.js} +1 -1
- package/dist/{recover-791d56f8.js → recover-97602f64.js} +1 -1
- package/dist/{regression.inputs-ba7b7342.js → regression.inputs-87698b93.js} +1 -1
- package/dist/{regression.inputs.values.table-3f6f7f0f.js → regression.inputs.values.table-be00c818.js} +1 -1
- package/dist/{regression.results-9bd02fe0.js → regression.results-d67d5723.js} +1 -1
- package/dist/{renderPvalueTable-f34371aa.js → renderPvalueTable-8ee523f4.js} +1 -1
- package/dist/{sampleScatter-ef4e3347.js → sampleScatter-dc8bd1d4.js} +1 -1
- package/dist/sampleScatter.interactivity-6b31c51d.js +1 -0
- package/dist/{sampleScatter.rendererThree-b0ddac07.js → sampleScatter.rendererThree-df642763.js} +2 -2
- package/dist/{sampleView-836462bb.js → sampleView-0d819313.js} +1 -1
- package/dist/{samplelst-6512a752.js → samplelst-e4224495.js} +1 -1
- package/dist/{samplematrix-8583e240.js → samplematrix-d77014f0.js} +1 -1
- package/dist/{scatter-a24646d2.js → scatter-df455b44.js} +1 -1
- package/dist/{selectGenomeWithTklst-c0822ac4.js → selectGenomeWithTklst-f927c08a.js} +1 -1
- package/dist/singleCellPlot-f4f9f8ce.js +1 -0
- package/dist/{singlecell-fc57d3bd.js → singlecell-d21858f6.js} +1 -1
- package/dist/{snplocus-502738fa.js → snplocus-cdb05467.js} +1 -1
- package/dist/{snplst-1b5cd5d8.js → snplst-8027603b.js} +1 -1
- package/dist/{spliceevent.a53ss.diagram-d6a9ec18.js → spliceevent.a53ss.diagram-305210e8.js} +1 -1
- package/dist/{spliceevent.exonskip.diagram-122b34c8.js → spliceevent.exonskip.diagram-b818e745.js} +1 -1
- package/dist/spliceevent.exonskip.getdefault-b539bbf8.js +1 -0
- package/dist/{spliceevent.noeventdiagram-24239df6.js → spliceevent.noeventdiagram-b8520d70.js} +1 -1
- package/dist/{spliceevent.phrase-3f069dbd.js → spliceevent.phrase-9e487144.js} +1 -1
- package/dist/{stattable-f81097a3.js → stattable-706eb093.js} +1 -1
- package/dist/{style.gdc-58cdad5e.js → style.gdc-0f9b5225.js} +1 -1
- package/dist/{summary-af438607.js → summary-e42dbeea.js} +1 -1
- package/dist/{sunburst-562d787b.js → sunburst-23a46601.js} +1 -1
- package/dist/survival-e1f95639.js +1 -0
- package/dist/{survival-d8c8c5b5.js → survival-fa638d4f.js} +1 -1
- package/dist/{svg.download-89c31ee5.js → svg.download-60935a3f.js} +1 -1
- package/dist/{svg.legend-5ce6961b.js → svg.legend-404a03f8.js} +1 -1
- package/dist/{svgraph-c326dadb.js → svgraph-22fb937c.js} +1 -1
- package/dist/{svmr-7de419fb.js → svmr-33a9543a.js} +1 -1
- package/dist/{table-141e31d7.js → table-6354b788.js} +1 -1
- package/dist/{table-2310e41b.js → table-dba817a9.js} +1 -1
- package/dist/{termInfo-3ae67507.js → termInfo-fdb502e7.js} +1 -1
- package/dist/{termsetting-8476b5ab.js → termsetting-720557a3.js} +1 -1
- package/dist/{tk-fc2e6168.js → tk-fcd7514e.js} +1 -1
- package/dist/{tp.ui-a59142ec.js → tp.ui-ece56c46.js} +1 -1
- package/dist/{tvs.density-a177d69f.js → tvs.density-411c1792.js} +1 -1
- package/dist/{tvs.geneVariant-68b9ca25.js → tvs.geneVariant-a6e91f37.js} +1 -1
- package/dist/{tvs.numeric-5c6f5524.js → tvs.numeric-358c99a0.js} +1 -1
- package/dist/{tvs.samplelst-3ddd4435.js → tvs.samplelst-946d4a6c.js} +1 -1
- package/dist/{uiUtils-60f490b2.js → uiUtils-be9b8f1b.js} +1 -1
- package/dist/{variantBrowser-882cd310.js → variantBrowser-91d4eb10.js} +1 -1
- package/dist/{vcf-ee473671.js → vcf-d8c0a17a.js} +1 -1
- package/dist/{violin-f96e92c7.js → violin-84138ebc.js} +1 -1
- package/dist/{violin.interactivity-5a9e20f2.js → violin.interactivity-31eff8d9.js} +1 -1
- package/dist/{violin.renderer-687d2341.js → violin.renderer-3d0d8f17.js} +1 -1
- package/dist/{violinRenderer-e37d4065.js → violinRenderer-ee11b031.js} +1 -1
- package/dist/{viridis-98237589.js → viridis-98f22f29.js} +1 -1
- package/dist/{y-8e1e7dad.js → y-836a433e.js} +1 -1
- package/dist/{zoom-eade983c.js → zoom-f044afad.js} +1 -1
- package/package.json +1 -1
- package/dist/block.lazyload-b81d268c.js +0 -1
- package/dist/genefusion.ui-b1264dc8.js +0 -1
- package/dist/launch.adhoc-50d81ba2.js +0 -1
- package/dist/plot.app-72083fe7.js +0 -1
- package/dist/sampleScatter.interactivity-22035655.js +0 -1
- package/dist/singleCellPlot-7caa7fdd.js +0 -1
- package/dist/spliceevent.exonskip.getdefault-f1bf3d40.js +0 -1
- package/dist/survival-e500bc6e.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{E as e,a as t,b as n,T as o,Q as a,S as i,V as s}from"./sampleScatter.rendererThree-b0ddac07.js";import"./app-f70d9a0b.js";import"path";const c={type:"change"};const r={type:"start"};const l={type:"end"};class m extends e{constructor(e,m){super();this.object=e;this.domElement=m;this.domElement.style.touchAction="none";this.enabled=true;this.target=new t;this.minDistance=0;this.maxDistance=Infinity;this.minZoom=0;this.maxZoom=Infinity;this.minPolarAngle=0;this.maxPolarAngle=Math.PI;this.minAzimuthAngle=-Infinity;this.maxAzimuthAngle=Infinity;this.enableDamping=false;this.dampingFactor=.05;this.enableZoom=true;this.zoomSpeed=1;this.enableRotate=true;this.rotateSpeed=1;this.enablePan=true;this.panSpeed=1;this.screenSpacePanning=true;this.keyPanSpeed=7;this.autoRotate=false;this.autoRotateSpeed=2;this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"};this.mouseButtons={LEFT:n.ROTATE,MIDDLE:n.DOLLY,RIGHT:n.PAN};this.touches={ONE:o.ROTATE,TWO:o.DOLLY_PAN};this.target0=this.target.clone();this.position0=this.object.position.clone();this.zoom0=this.object.zoom;this._domElementKeyEvents=null;this.getPolarAngle=function(){return d.phi};this.getAzimuthalAngle=function(){return d.theta};this.getDistance=function(){return this.object.position.distanceTo(this.target)};this.listenToKeyEvents=function(e){e.addEventListener("keydown",me);this._domElementKeyEvents=e};this.stopListenToKeyEvents=function(){this._domElementKeyEvents.removeEventListener("keydown",me);this._domElementKeyEvents=null};this.saveState=function(){u.target0.copy(u.target);u.position0.copy(u.object.position);u.zoom0=u.object.zoom};this.reset=function(){u.target.copy(u.target0);u.object.position.copy(u.position0);u.object.zoom=u.zoom0;u.object.updateProjectionMatrix();u.dispatchEvent(c);u.update();f=p.NONE};this.update=function(){const n=new t;const o=(new a).setFromUnitVectors(e.up,new t(0,1,0));const i=o.clone().invert();const s=new t;const r=new a;const l=2*Math.PI;return function e(){const t=u.object.position;n.copy(t).sub(u.target);n.applyQuaternion(o);d.setFromVector3(n);if(u.autoRotate&&f===p.NONE){x(I())}if(u.enableDamping){d.theta+=b.theta*u.dampingFactor;d.phi+=b.phi*u.dampingFactor}else{d.theta+=b.theta;d.phi+=b.phi}let a=u.minAzimuthAngle;let m=u.maxAzimuthAngle;if(isFinite(a)&&isFinite(m)){if(a<-Math.PI)a+=l;else if(a>Math.PI)a-=l;if(m<-Math.PI)m+=l;else if(m>Math.PI)m-=l;if(a<=m){d.theta=Math.max(a,Math.min(m,d.theta))}else{d.theta=d.theta>(a+m)/2?Math.max(a,d.theta):Math.min(m,d.theta)}}d.phi=Math.max(u.minPolarAngle,Math.min(u.maxPolarAngle,d.phi));d.makeSafe();d.radius*=E;d.radius=Math.max(u.minDistance,Math.min(u.maxDistance,d.radius));if(u.enableDamping===true){u.target.addScaledVector(g,u.dampingFactor)}else{u.target.add(g)}n.setFromSpherical(d);n.applyQuaternion(i);t.copy(u.target).add(n);u.object.lookAt(u.target);if(u.enableDamping===true){b.theta*=1-u.dampingFactor;b.phi*=1-u.dampingFactor;g.multiplyScalar(1-u.dampingFactor)}else{b.set(0,0,0);g.set(0,0,0)}E=1;if(y||s.distanceToSquared(u.object.position)>h||8*(1-r.dot(u.object.quaternion))>h){u.dispatchEvent(c);s.copy(u.object.position);r.copy(u.object.quaternion);y=false;return true}return false}}();this.dispose=function(){u.domElement.removeEventListener("contextmenu",fe);u.domElement.removeEventListener("pointerdown",ae);u.domElement.removeEventListener("pointercancel",se);u.domElement.removeEventListener("wheel",le);u.domElement.removeEventListener("pointermove",ie);u.domElement.removeEventListener("pointerup",se);if(u._domElementKeyEvents!==null){u._domElementKeyEvents.removeEventListener("keydown",me);u._domElementKeyEvents=null}};const u=this;const p={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6};let f=p.NONE;const h=1e-6;const d=new i;const b=new i;let E=1;const g=new t;let y=false;const O=new s;const P=new s;const T=new s;const v=new s;const A=new s;const L=new s;const w=new s;const N=new s;const j=new s;const M=[];const k={};function I(){return 2*Math.PI/60/60*u.autoRotateSpeed}function R(){return Math.pow(.95,u.zoomSpeed)}function x(e){b.theta-=e}function S(e){b.phi-=e}const Y=function(){const e=new t;return function t(n,o){e.setFromMatrixColumn(o,0);e.multiplyScalar(-n);g.add(e)}}();const D=function(){const e=new t;return function t(n,o){if(u.screenSpacePanning===true){e.setFromMatrixColumn(o,1)}else{e.setFromMatrixColumn(o,0);e.crossVectors(u.object.up,e)}e.multiplyScalar(n);g.add(e)}}();const _=function(){const e=new t;return function t(n,o){const a=u.domElement;if(u.object.isPerspectiveCamera){const t=u.object.position;e.copy(t).sub(u.target);let i=e.length();i*=Math.tan(u.object.fov/2*Math.PI/180);Y(2*n*i/a.clientHeight,u.object.matrix);D(2*o*i/a.clientHeight,u.object.matrix)}else if(u.object.isOrthographicCamera){Y(n*(u.object.right-u.object.left)/u.object.zoom/a.clientWidth,u.object.matrix);D(o*(u.object.top-u.object.bottom)/u.object.zoom/a.clientHeight,u.object.matrix)}else{console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.");u.enablePan=false}}}();function H(e){if(u.object.isPerspectiveCamera){E/=e}else if(u.object.isOrthographicCamera){u.object.zoom=Math.max(u.minZoom,Math.min(u.maxZoom,u.object.zoom*e));u.object.updateProjectionMatrix();y=true}else{console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.");u.enableZoom=false}}function K(e){if(u.object.isPerspectiveCamera){E*=e}else if(u.object.isOrthographicCamera){u.object.zoom=Math.max(u.minZoom,Math.min(u.maxZoom,u.object.zoom/e));u.object.updateProjectionMatrix();y=true}else{console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.");u.enableZoom=false}}function C(e){O.set(e.clientX,e.clientY)}function z(e){w.set(e.clientX,e.clientY)}function X(e){v.set(e.clientX,e.clientY)}function Z(e){P.set(e.clientX,e.clientY);T.subVectors(P,O).multiplyScalar(u.rotateSpeed);const t=u.domElement;x(2*Math.PI*T.x/t.clientHeight);S(2*Math.PI*T.y/t.clientHeight);O.copy(P);u.update()}function F(e){N.set(e.clientX,e.clientY);j.subVectors(N,w);if(j.y>0){H(R())}else if(j.y<0){K(R())}w.copy(N);u.update()}function U(e){A.set(e.clientX,e.clientY);L.subVectors(A,v).multiplyScalar(u.panSpeed);_(L.x,L.y);v.copy(A);u.update()}function V(e){if(e.deltaY<0){K(R())}else if(e.deltaY>0){H(R())}u.update()}function G(e){let t=false;switch(e.code){case u.keys.UP:if(e.ctrlKey||e.metaKey||e.shiftKey){S(2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(0,u.keyPanSpeed)}t=true;break;case u.keys.BOTTOM:if(e.ctrlKey||e.metaKey||e.shiftKey){S(-2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(0,-u.keyPanSpeed)}t=true;break;case u.keys.LEFT:if(e.ctrlKey||e.metaKey||e.shiftKey){x(2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(u.keyPanSpeed,0)}t=true;break;case u.keys.RIGHT:if(e.ctrlKey||e.metaKey||e.shiftKey){x(-2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(-u.keyPanSpeed,0)}t=true;break}if(t){e.preventDefault();u.update()}}function B(){if(M.length===1){O.set(M[0].pageX,M[0].pageY)}else{const e=.5*(M[0].pageX+M[1].pageX);const t=.5*(M[0].pageY+M[1].pageY);O.set(e,t)}}function W(){if(M.length===1){v.set(M[0].pageX,M[0].pageY)}else{const e=.5*(M[0].pageX+M[1].pageX);const t=.5*(M[0].pageY+M[1].pageY);v.set(e,t)}}function q(){const e=M[0].pageX-M[1].pageX;const t=M[0].pageY-M[1].pageY;const n=Math.sqrt(e*e+t*t);w.set(0,n)}function Q(){if(u.enableZoom)q();if(u.enablePan)W()}function J(){if(u.enableZoom)q();if(u.enableRotate)B()}function $(e){if(M.length==1){P.set(e.pageX,e.pageY)}else{const t=Ee(e);const n=.5*(e.pageX+t.x);const o=.5*(e.pageY+t.y);P.set(n,o)}T.subVectors(P,O).multiplyScalar(u.rotateSpeed);const t=u.domElement;x(2*Math.PI*T.x/t.clientHeight);S(2*Math.PI*T.y/t.clientHeight);O.copy(P)}function ee(e){if(M.length===1){A.set(e.pageX,e.pageY)}else{const t=Ee(e);const n=.5*(e.pageX+t.x);const o=.5*(e.pageY+t.y);A.set(n,o)}L.subVectors(A,v).multiplyScalar(u.panSpeed);_(L.x,L.y);v.copy(A)}function te(e){const t=Ee(e);const n=e.pageX-t.x;const o=e.pageY-t.y;const a=Math.sqrt(n*n+o*o);N.set(0,a);j.set(0,Math.pow(N.y/w.y,u.zoomSpeed));H(j.y);w.copy(N)}function ne(e){if(u.enableZoom)te(e);if(u.enablePan)ee(e)}function oe(e){if(u.enableZoom)te(e);if(u.enableRotate)$(e)}function ae(e){if(u.enabled===false)return;if(M.length===0){u.domElement.setPointerCapture(e.pointerId);u.domElement.addEventListener("pointermove",ie);u.domElement.addEventListener("pointerup",se)}he(e);if(e.pointerType==="touch"){ue(e)}else{ce(e)}}function ie(e){if(u.enabled===false)return;if(e.pointerType==="touch"){pe(e)}else{re(e)}}function se(e){de(e);if(M.length===0){u.domElement.releasePointerCapture(e.pointerId);u.domElement.removeEventListener("pointermove",ie);u.domElement.removeEventListener("pointerup",se)}u.dispatchEvent(l);f=p.NONE}function ce(e){let t;switch(e.button){case 0:t=u.mouseButtons.LEFT;break;case 1:t=u.mouseButtons.MIDDLE;break;case 2:t=u.mouseButtons.RIGHT;break;default:t=-1}switch(t){case n.DOLLY:if(u.enableZoom===false)return;z(e);f=p.DOLLY;break;case n.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(u.enablePan===false)return;X(e);f=p.PAN}else{if(u.enableRotate===false)return;C(e);f=p.ROTATE}break;case n.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(u.enableRotate===false)return;C(e);f=p.ROTATE}else{if(u.enablePan===false)return;X(e);f=p.PAN}break;default:f=p.NONE}if(f!==p.NONE){u.dispatchEvent(r)}}function re(e){switch(f){case p.ROTATE:if(u.enableRotate===false)return;Z(e);break;case p.DOLLY:if(u.enableZoom===false)return;F(e);break;case p.PAN:if(u.enablePan===false)return;U(e);break}}function le(e){if(u.enabled===false||u.enableZoom===false||f!==p.NONE)return;e.preventDefault();u.dispatchEvent(r);V(e);u.dispatchEvent(l)}function me(e){if(u.enabled===false||u.enablePan===false)return;G(e)}function ue(e){be(e);switch(M.length){case 1:switch(u.touches.ONE){case o.ROTATE:if(u.enableRotate===false)return;B();f=p.TOUCH_ROTATE;break;case o.PAN:if(u.enablePan===false)return;W();f=p.TOUCH_PAN;break;default:f=p.NONE}break;case 2:switch(u.touches.TWO){case o.DOLLY_PAN:if(u.enableZoom===false&&u.enablePan===false)return;Q();f=p.TOUCH_DOLLY_PAN;break;case o.DOLLY_ROTATE:if(u.enableZoom===false&&u.enableRotate===false)return;J();f=p.TOUCH_DOLLY_ROTATE;break;default:f=p.NONE}break;default:f=p.NONE}if(f!==p.NONE){u.dispatchEvent(r)}}function pe(e){be(e);switch(f){case p.TOUCH_ROTATE:if(u.enableRotate===false)return;$(e);u.update();break;case p.TOUCH_PAN:if(u.enablePan===false)return;ee(e);u.update();break;case p.TOUCH_DOLLY_PAN:if(u.enableZoom===false&&u.enablePan===false)return;ne(e);u.update();break;case p.TOUCH_DOLLY_ROTATE:if(u.enableZoom===false&&u.enableRotate===false)return;oe(e);u.update();break;default:f=p.NONE}}function fe(e){if(u.enabled===false)return;e.preventDefault()}function he(e){M.push(e)}function de(e){delete k[e.pointerId];for(let t=0;t<M.length;t++){if(M[t].pointerId==e.pointerId){M.splice(t,1);return}}}function be(e){let t=k[e.pointerId];if(t===undefined){t=new s;k[e.pointerId]=t}t.set(e.pageX,e.pageY)}function Ee(e){const t=e.pointerId===M[0].pointerId?M[1]:M[0];return k[t.pointerId]}u.domElement.addEventListener("contextmenu",fe);u.domElement.addEventListener("pointerdown",ae);u.domElement.addEventListener("pointercancel",se);u.domElement.addEventListener("wheel",le,{passive:false});this.update()}}export{m as OrbitControls};
|
|
1
|
+
import{E as e,a as t,b as n,T as o,Q as a,S as i,V as s}from"./sampleScatter.rendererThree-df642763.js";import"./app-f73edb78.js";import"path";const c={type:"change"};const r={type:"start"};const l={type:"end"};class m extends e{constructor(e,m){super();this.object=e;this.domElement=m;this.domElement.style.touchAction="none";this.enabled=true;this.target=new t;this.minDistance=0;this.maxDistance=Infinity;this.minZoom=0;this.maxZoom=Infinity;this.minPolarAngle=0;this.maxPolarAngle=Math.PI;this.minAzimuthAngle=-Infinity;this.maxAzimuthAngle=Infinity;this.enableDamping=false;this.dampingFactor=.05;this.enableZoom=true;this.zoomSpeed=1;this.enableRotate=true;this.rotateSpeed=1;this.enablePan=true;this.panSpeed=1;this.screenSpacePanning=true;this.keyPanSpeed=7;this.autoRotate=false;this.autoRotateSpeed=2;this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"};this.mouseButtons={LEFT:n.ROTATE,MIDDLE:n.DOLLY,RIGHT:n.PAN};this.touches={ONE:o.ROTATE,TWO:o.DOLLY_PAN};this.target0=this.target.clone();this.position0=this.object.position.clone();this.zoom0=this.object.zoom;this._domElementKeyEvents=null;this.getPolarAngle=function(){return d.phi};this.getAzimuthalAngle=function(){return d.theta};this.getDistance=function(){return this.object.position.distanceTo(this.target)};this.listenToKeyEvents=function(e){e.addEventListener("keydown",me);this._domElementKeyEvents=e};this.stopListenToKeyEvents=function(){this._domElementKeyEvents.removeEventListener("keydown",me);this._domElementKeyEvents=null};this.saveState=function(){u.target0.copy(u.target);u.position0.copy(u.object.position);u.zoom0=u.object.zoom};this.reset=function(){u.target.copy(u.target0);u.object.position.copy(u.position0);u.object.zoom=u.zoom0;u.object.updateProjectionMatrix();u.dispatchEvent(c);u.update();f=p.NONE};this.update=function(){const n=new t;const o=(new a).setFromUnitVectors(e.up,new t(0,1,0));const i=o.clone().invert();const s=new t;const r=new a;const l=2*Math.PI;return function e(){const t=u.object.position;n.copy(t).sub(u.target);n.applyQuaternion(o);d.setFromVector3(n);if(u.autoRotate&&f===p.NONE){x(I())}if(u.enableDamping){d.theta+=b.theta*u.dampingFactor;d.phi+=b.phi*u.dampingFactor}else{d.theta+=b.theta;d.phi+=b.phi}let a=u.minAzimuthAngle;let m=u.maxAzimuthAngle;if(isFinite(a)&&isFinite(m)){if(a<-Math.PI)a+=l;else if(a>Math.PI)a-=l;if(m<-Math.PI)m+=l;else if(m>Math.PI)m-=l;if(a<=m){d.theta=Math.max(a,Math.min(m,d.theta))}else{d.theta=d.theta>(a+m)/2?Math.max(a,d.theta):Math.min(m,d.theta)}}d.phi=Math.max(u.minPolarAngle,Math.min(u.maxPolarAngle,d.phi));d.makeSafe();d.radius*=E;d.radius=Math.max(u.minDistance,Math.min(u.maxDistance,d.radius));if(u.enableDamping===true){u.target.addScaledVector(g,u.dampingFactor)}else{u.target.add(g)}n.setFromSpherical(d);n.applyQuaternion(i);t.copy(u.target).add(n);u.object.lookAt(u.target);if(u.enableDamping===true){b.theta*=1-u.dampingFactor;b.phi*=1-u.dampingFactor;g.multiplyScalar(1-u.dampingFactor)}else{b.set(0,0,0);g.set(0,0,0)}E=1;if(y||s.distanceToSquared(u.object.position)>h||8*(1-r.dot(u.object.quaternion))>h){u.dispatchEvent(c);s.copy(u.object.position);r.copy(u.object.quaternion);y=false;return true}return false}}();this.dispose=function(){u.domElement.removeEventListener("contextmenu",fe);u.domElement.removeEventListener("pointerdown",ae);u.domElement.removeEventListener("pointercancel",se);u.domElement.removeEventListener("wheel",le);u.domElement.removeEventListener("pointermove",ie);u.domElement.removeEventListener("pointerup",se);if(u._domElementKeyEvents!==null){u._domElementKeyEvents.removeEventListener("keydown",me);u._domElementKeyEvents=null}};const u=this;const p={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6};let f=p.NONE;const h=1e-6;const d=new i;const b=new i;let E=1;const g=new t;let y=false;const O=new s;const P=new s;const T=new s;const v=new s;const A=new s;const L=new s;const w=new s;const N=new s;const j=new s;const M=[];const k={};function I(){return 2*Math.PI/60/60*u.autoRotateSpeed}function R(){return Math.pow(.95,u.zoomSpeed)}function x(e){b.theta-=e}function S(e){b.phi-=e}const Y=function(){const e=new t;return function t(n,o){e.setFromMatrixColumn(o,0);e.multiplyScalar(-n);g.add(e)}}();const D=function(){const e=new t;return function t(n,o){if(u.screenSpacePanning===true){e.setFromMatrixColumn(o,1)}else{e.setFromMatrixColumn(o,0);e.crossVectors(u.object.up,e)}e.multiplyScalar(n);g.add(e)}}();const _=function(){const e=new t;return function t(n,o){const a=u.domElement;if(u.object.isPerspectiveCamera){const t=u.object.position;e.copy(t).sub(u.target);let i=e.length();i*=Math.tan(u.object.fov/2*Math.PI/180);Y(2*n*i/a.clientHeight,u.object.matrix);D(2*o*i/a.clientHeight,u.object.matrix)}else if(u.object.isOrthographicCamera){Y(n*(u.object.right-u.object.left)/u.object.zoom/a.clientWidth,u.object.matrix);D(o*(u.object.top-u.object.bottom)/u.object.zoom/a.clientHeight,u.object.matrix)}else{console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.");u.enablePan=false}}}();function H(e){if(u.object.isPerspectiveCamera){E/=e}else if(u.object.isOrthographicCamera){u.object.zoom=Math.max(u.minZoom,Math.min(u.maxZoom,u.object.zoom*e));u.object.updateProjectionMatrix();y=true}else{console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.");u.enableZoom=false}}function K(e){if(u.object.isPerspectiveCamera){E*=e}else if(u.object.isOrthographicCamera){u.object.zoom=Math.max(u.minZoom,Math.min(u.maxZoom,u.object.zoom/e));u.object.updateProjectionMatrix();y=true}else{console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.");u.enableZoom=false}}function C(e){O.set(e.clientX,e.clientY)}function z(e){w.set(e.clientX,e.clientY)}function X(e){v.set(e.clientX,e.clientY)}function Z(e){P.set(e.clientX,e.clientY);T.subVectors(P,O).multiplyScalar(u.rotateSpeed);const t=u.domElement;x(2*Math.PI*T.x/t.clientHeight);S(2*Math.PI*T.y/t.clientHeight);O.copy(P);u.update()}function F(e){N.set(e.clientX,e.clientY);j.subVectors(N,w);if(j.y>0){H(R())}else if(j.y<0){K(R())}w.copy(N);u.update()}function U(e){A.set(e.clientX,e.clientY);L.subVectors(A,v).multiplyScalar(u.panSpeed);_(L.x,L.y);v.copy(A);u.update()}function V(e){if(e.deltaY<0){K(R())}else if(e.deltaY>0){H(R())}u.update()}function G(e){let t=false;switch(e.code){case u.keys.UP:if(e.ctrlKey||e.metaKey||e.shiftKey){S(2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(0,u.keyPanSpeed)}t=true;break;case u.keys.BOTTOM:if(e.ctrlKey||e.metaKey||e.shiftKey){S(-2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(0,-u.keyPanSpeed)}t=true;break;case u.keys.LEFT:if(e.ctrlKey||e.metaKey||e.shiftKey){x(2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(u.keyPanSpeed,0)}t=true;break;case u.keys.RIGHT:if(e.ctrlKey||e.metaKey||e.shiftKey){x(-2*Math.PI*u.rotateSpeed/u.domElement.clientHeight)}else{_(-u.keyPanSpeed,0)}t=true;break}if(t){e.preventDefault();u.update()}}function B(){if(M.length===1){O.set(M[0].pageX,M[0].pageY)}else{const e=.5*(M[0].pageX+M[1].pageX);const t=.5*(M[0].pageY+M[1].pageY);O.set(e,t)}}function W(){if(M.length===1){v.set(M[0].pageX,M[0].pageY)}else{const e=.5*(M[0].pageX+M[1].pageX);const t=.5*(M[0].pageY+M[1].pageY);v.set(e,t)}}function q(){const e=M[0].pageX-M[1].pageX;const t=M[0].pageY-M[1].pageY;const n=Math.sqrt(e*e+t*t);w.set(0,n)}function Q(){if(u.enableZoom)q();if(u.enablePan)W()}function J(){if(u.enableZoom)q();if(u.enableRotate)B()}function $(e){if(M.length==1){P.set(e.pageX,e.pageY)}else{const t=Ee(e);const n=.5*(e.pageX+t.x);const o=.5*(e.pageY+t.y);P.set(n,o)}T.subVectors(P,O).multiplyScalar(u.rotateSpeed);const t=u.domElement;x(2*Math.PI*T.x/t.clientHeight);S(2*Math.PI*T.y/t.clientHeight);O.copy(P)}function ee(e){if(M.length===1){A.set(e.pageX,e.pageY)}else{const t=Ee(e);const n=.5*(e.pageX+t.x);const o=.5*(e.pageY+t.y);A.set(n,o)}L.subVectors(A,v).multiplyScalar(u.panSpeed);_(L.x,L.y);v.copy(A)}function te(e){const t=Ee(e);const n=e.pageX-t.x;const o=e.pageY-t.y;const a=Math.sqrt(n*n+o*o);N.set(0,a);j.set(0,Math.pow(N.y/w.y,u.zoomSpeed));H(j.y);w.copy(N)}function ne(e){if(u.enableZoom)te(e);if(u.enablePan)ee(e)}function oe(e){if(u.enableZoom)te(e);if(u.enableRotate)$(e)}function ae(e){if(u.enabled===false)return;if(M.length===0){u.domElement.setPointerCapture(e.pointerId);u.domElement.addEventListener("pointermove",ie);u.domElement.addEventListener("pointerup",se)}he(e);if(e.pointerType==="touch"){ue(e)}else{ce(e)}}function ie(e){if(u.enabled===false)return;if(e.pointerType==="touch"){pe(e)}else{re(e)}}function se(e){de(e);if(M.length===0){u.domElement.releasePointerCapture(e.pointerId);u.domElement.removeEventListener("pointermove",ie);u.domElement.removeEventListener("pointerup",se)}u.dispatchEvent(l);f=p.NONE}function ce(e){let t;switch(e.button){case 0:t=u.mouseButtons.LEFT;break;case 1:t=u.mouseButtons.MIDDLE;break;case 2:t=u.mouseButtons.RIGHT;break;default:t=-1}switch(t){case n.DOLLY:if(u.enableZoom===false)return;z(e);f=p.DOLLY;break;case n.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(u.enablePan===false)return;X(e);f=p.PAN}else{if(u.enableRotate===false)return;C(e);f=p.ROTATE}break;case n.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(u.enableRotate===false)return;C(e);f=p.ROTATE}else{if(u.enablePan===false)return;X(e);f=p.PAN}break;default:f=p.NONE}if(f!==p.NONE){u.dispatchEvent(r)}}function re(e){switch(f){case p.ROTATE:if(u.enableRotate===false)return;Z(e);break;case p.DOLLY:if(u.enableZoom===false)return;F(e);break;case p.PAN:if(u.enablePan===false)return;U(e);break}}function le(e){if(u.enabled===false||u.enableZoom===false||f!==p.NONE)return;e.preventDefault();u.dispatchEvent(r);V(e);u.dispatchEvent(l)}function me(e){if(u.enabled===false||u.enablePan===false)return;G(e)}function ue(e){be(e);switch(M.length){case 1:switch(u.touches.ONE){case o.ROTATE:if(u.enableRotate===false)return;B();f=p.TOUCH_ROTATE;break;case o.PAN:if(u.enablePan===false)return;W();f=p.TOUCH_PAN;break;default:f=p.NONE}break;case 2:switch(u.touches.TWO){case o.DOLLY_PAN:if(u.enableZoom===false&&u.enablePan===false)return;Q();f=p.TOUCH_DOLLY_PAN;break;case o.DOLLY_ROTATE:if(u.enableZoom===false&&u.enableRotate===false)return;J();f=p.TOUCH_DOLLY_ROTATE;break;default:f=p.NONE}break;default:f=p.NONE}if(f!==p.NONE){u.dispatchEvent(r)}}function pe(e){be(e);switch(f){case p.TOUCH_ROTATE:if(u.enableRotate===false)return;$(e);u.update();break;case p.TOUCH_PAN:if(u.enablePan===false)return;ee(e);u.update();break;case p.TOUCH_DOLLY_PAN:if(u.enableZoom===false&&u.enablePan===false)return;ne(e);u.update();break;case p.TOUCH_DOLLY_ROTATE:if(u.enableZoom===false&&u.enableRotate===false)return;oe(e);u.update();break;default:f=p.NONE}}function fe(e){if(u.enabled===false)return;e.preventDefault()}function he(e){M.push(e)}function de(e){delete k[e.pointerId];for(let t=0;t<M.length;t++){if(M[t].pointerId==e.pointerId){M.splice(t,1);return}}}function be(e){let t=k[e.pointerId];if(t===undefined){t=new s;k[e.pointerId]=t}t.set(e.pageX,e.pageY)}function Ee(e){const t=e.pointerId===M[0].pointerId?M[1]:M[0];return k[t.pointerId]}u.domElement.addEventListener("contextmenu",fe);u.domElement.addEventListener("pointerdown",ae);u.domElement.addEventListener("pointercancel",se);u.domElement.addEventListener("wheel",le,{passive:false});this.update()}}export{m as OrbitControls};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{az as t,q as e,M as s,aA as r,a1 as o,ac as i}from"./app-f70d9a0b.js";import{r as a,s as n}from"./recover-791d56f8.js";import{v as p}from"./filter-5a5a1166.js";import{n as c}from"./sampleScatter.interactivity-22035655.js";import{summaryInit as l}from"./summary-af438607.js";import"path";import"./samplelst-6512a752.js";import"./termsetting-8476b5ab.js";import"./table-2310e41b.js";import"./app-64537b0c.js";import"./termInfo-3ae67507.js";import"./downloadTextfile-5723af95.js";import"./violin-f96e92c7.js";import"./controls-cd2ff09c.js";import"./controls.btns-86a413d5.js";import"./controls.config-ae99bcd1.js";import"./controls.overlay-a72d72e4.js";import"./controls.term1-3c9e55b8.js";import"./controls.divide-8f26abff.js";import"./violin.renderer-687d2341.js";import"./brush-bc06febc.js";import"./pointer-c7475677.js";import"./nodrag-094c4b10.js";import"./transform-f2cc07e6.js";import"./axis-6cb4f314.js";import"./line-264f8f9e.js";import"./constant-426a1483.js";import"./monotone-fed24f2f.js";import"./log-9e964794.js";import"./html.legend-48cf5c03.js";import"./violin.interactivity-5a9e20f2.js";import"./barchart-a4a6b4b4.js";import"./bars.settings-f7884503.js";import"./bars.renderer-7c9358aa.js";import"./svg.legend-5ce6961b.js";import"./barchart.events-3fd64094.js";import"./sampleScatter-ef4e3347.js";import"./zoom-eade983c.js";import"./lasso-afa6b87e.js";import"./drag-e2fbde14.js";import"./svg.download-89c31ee5.js";import"./symbol-fc7cbd41.js";import"./math-2fb199c6.js";import"./sampleScatter.rendererThree-b0ddac07.js";function m(t){switch(t){case"../plots/DEanalysis.js":return import("./DEanalysis-ae8b793e.js");case"../plots/Disco.js":return import("./Disco-4ead6c6f.js");case"../plots/barchart.data.js":return import("./filter-5a5a1166.js").then((function(t){return t.p}));case"../plots/barchart.events.js":return import("./barchart.events-3fd64094.js");case"../plots/barchart.js":return import("./barchart-a4a6b4b4.js");case"../plots/bars.renderer.js":return import("./bars.renderer-7c9358aa.js");case"../plots/bars.settings.js":return import("./bars.settings-f7884503.js");case"../plots/boxplot.js":return import("./boxplot-28751534.js");case"../plots/controls.btns.js":return import("./controls.btns-86a413d5.js");case"../plots/controls.config.js":return import("./controls.config-ae99bcd1.js");case"../plots/controls.divide.js":return import("./controls.divide-8f26abff.js");case"../plots/controls.js":return import("./controls-cd2ff09c.js");case"../plots/controls.overlay.js":return import("./controls.overlay-a72d72e4.js");case"../plots/controls.term1.js":return import("./controls.term1-3c9e55b8.js");case"../plots/cuminc.js":return import("./cuminc-e7326248.js");case"../plots/dataDownload.js":return import("./dataDownload-f3cdbc7c.js");case"../plots/dictionary.js":return import("./dictionary-578c63d9.js");case"../plots/geneExpression.js":return import("./geneExpression-0d0e9692.js");case"../plots/geneset.js":return import("./geneset-b37a8d83.js");case"../plots/genomeBrowser.controls.js":return import("./genomeBrowser.controls-2d794ff1.js");case"../plots/genomeBrowser.js":return import("./genomeBrowser-10004899.js");case"../plots/hierCluster.config.js":return import("./hierCluster.config-9b8fa78e.js");case"../plots/hierCluster.interactivity.js":return import("./hierCluster.interactivity-e379aa01.js").then((function(t){return t.i}));case"../plots/hierCluster.js":return import("./hierCluster-6e93c3b2.js");case"../plots/hierCluster.renderers.js":return import("./hierCluster.renderers-7b35f0cc.js").then((function(t){return t.r}));case"../plots/matrix.cells.js":return import("./matrix.cells-5db8ba9e.js");case"../plots/matrix.cluster.js":return import("./matrix.cluster-88a2266e.js");case"../plots/matrix.config.js":return import("./matrix.config-85132ec9.js");case"../plots/matrix.controls.js":return import("./matrix.controls-4933c41c.js");case"../plots/matrix.data.js":return import("./matrix.data-b798eb7d.js").then((function(t){return t.m}));case"../plots/matrix.dom.js":return import("./matrix.dom-6971ecb1.js");case"../plots/matrix.groups.js":return import("./matrix.groups-8b841f67.js").then((function(t){return t.m}));case"../plots/matrix.interactivity.js":return import("./matrix.interactivity-380a57f9.js");case"../plots/matrix.js":return import("./matrix-d644b099.js");case"../plots/matrix.layout.js":return import("./matrix.layout-3165a88a.js").then((function(t){return t.m}));case"../plots/matrix.legend.js":return import("./matrix.legend-f0ab9a34.js").then((function(t){return t.m}));case"../plots/matrix.renderers.js":return import("./matrix.renderers-48826412.js");case"../plots/matrix.serieses.js":return import("./matrix.serieses-610f9bc4.js").then((function(t){return t.m}));case"../plots/matrix.sort.js":return import("./matrix.sort-c3c86759.js");case"../plots/plot.app.js":return import("./plot.app-72083fe7.js");case"../plots/plot.disco.js":return import("./plot.disco-7efd2855.js");case"../plots/plot.ssgq.js":return import("./plot.ssgq-e41ca8ac.js");case"../plots/polar.js":return import("./polar-86a9ecb8.js");case"../plots/profileBarchart.js":return import("./profileBarchart-a41a1fd8.js");case"../plots/profilePlot.js":return import("./profilePlot-69af5e30.js");case"../plots/profilePolar.js":return import("./profilePolar-7446e230.js");case"../plots/profileRadar.js":return import("./profileRadar-d23d8ebe.js");case"../plots/profileRadarFacility.js":return import("./profileRadarFacility-9f9a324e.js");case"../plots/regression.inputs.js":return import("./regression.inputs-ba7b7342.js").then((function(t){return t.b}));case"../plots/regression.inputs.term.js":return import("./regression.inputs-ba7b7342.js").then((function(t){return t.a}));case"../plots/regression.inputs.values.table.js":return import("./regression.inputs.values.table-3f6f7f0f.js");case"../plots/regression.js":return import("./regression.inputs-ba7b7342.js").then((function(t){return t.r}));case"../plots/regression.results.js":return import("./regression.results-9bd02fe0.js").then((function(t){return t.r}));case"../plots/sampleScatter.interactivity.js":return import("./sampleScatter.interactivity-22035655.js").then((function(t){return t.d}));case"../plots/sampleScatter.js":return import("./sampleScatter-ef4e3347.js").then((function(t){return t.a}));case"../plots/sampleScatter.renderer.js":return import("./sampleScatter-ef4e3347.js").then((function(t){return t.s}));case"../plots/sampleScatter.rendererThree.js":return import("./sampleScatter.rendererThree-b0ddac07.js").then((function(t){return t.c}));case"../plots/sampleView.js":return import("./sampleView-836462bb.js");case"../plots/scatter.js":return import("./scatter-a24646d2.js");case"../plots/singleCellPlot.js":return import("./singleCellPlot-7caa7fdd.js");case"../plots/stattable.js":return import("./stattable-f81097a3.js");case"../plots/summary.js":return import("./summary-af438607.js");case"../plots/survival.js":return import("./survival-d8c8c5b5.js");case"../plots/table.js":return import("./table-141e31d7.js");case"../plots/variantBrowser.js":return import("./variantBrowser-882cd310.js");case"../plots/violin.interactivity.js":return import("./violin.interactivity-5a9e20f2.js");case"../plots/violin.js":return import("./violin-f96e92c7.js");case"../plots/violin.renderer.js":return import("./violin.renderer-687d2341.js");default:return new Promise((function(e,s){(typeof queueMicrotask==="function"?queueMicrotask:setTimeout)(s.bind(null,new Error("Unknown variable dynamic import: "+t)))}))}}class d{constructor(t){this.type="plot";j(this);this.initUi(t)}reactsTo(t){if(t.type.includes("cache_termq"))return true;if(t.type.endsWith("_group"))return true;if(t.type.startsWith("plot_"))return t.id===this.id;if(t.type.startsWith("filter"))return true;if(t.type.startsWith("cohort"))return true;if(t.type=="app_refresh")return true;if(t.type.endsWith("customTerm"))return true}getState(t){const e=t.plots.find((t=>t.id===this.id));if(!e){throw`No plot with id='${this.id}' found. Did you set this.id before this.api = getComponentApi(this)?`}return{config:e,groups:t.groups,_scope_:t._scope_}}async main(){this.dom.errdiv.style("display","none");if(!this.components)await this.setComponents(this.opts)}async setComponents(t){this.components={recover:await a({app:this.app,holder:this.dom.localRecoverDiv,getState:t=>this.getState(t),reactsTo:t=>t.id==this.id&&(t.type=="plot_edit"||t.type=="plot_nestedEdits")&&t._track_!="none",plot_id:this.id,maxHistoryLen:10})};const s=await m(`../plots/${t.chartType}.js`);this.components.chart=await s.componentInit({app:this.app,holder:this.dom.viz,header:this.dom.paneTitleDiv,id:this.id,plotDiv:e(this.dom.holder.app_div.node().parentNode)})}destroy(){this.dom.holder.app_div.selectAll("*").remove();this.dom.holder.app_div.remove();for(const t in this.dom){delete this.dom[t]}}}const u=t(d);function j(t){t.initUi=function(e){const r=e.holder;r.header.style("padding",0);try{t.dom={tip:new s({padding:"0px"}),holder:r,paneTitleDiv:r.header.append("div").style("display","inline-block").style("color","#555").style("padding-left","7px").style("vertical-align","sub"),localRecoverDiv:r.header.append("div").style("display","inline-block"),body:r.body.style("white-space","nowrap").style("overflow-x","auto"),errdiv:r.body.append("div").style("display","none").style("padding","5px").style("background-color","rgba(255,100,100,0.2)"),viz:r.body.append("div")}}catch(e){t.dom.errdiv.style("display","none").text(e)}}}class h{constructor(t){if(t.addLoginCallback){t.addLoginCallback((()=>this.api.dispatch({type:"app_refresh"})))}this.type="app";this.dom={holder:t.holder,topbar:t.holder.append("div"),errdiv:t.holder.append("div"),plotDiv:t.holder.append("div")};this.plotIdToSandboxId={}}validateOpts(t={}){if(!t.holder)throw`missing opts.holder in the MassApp constructor argument`;if(!t.callbacks)t.callbacks={};if(!t.state.vocab)t.state.vocab={};if(typeof t.state.vocab!="object")throw"opts.state.vocab{} is not an object";if(t.state.genome){t.state.vocab.genome=t.state.genome;delete t.state.genome}if(t.state.dslabel){t.state.vocab.dslabel=t.state.dslabel;delete t.state.dslabel}return t}async preApiFreeze(t){try{t.tip=new s({padding:"5px"});t.tip.d.on("keyup",(e=>{if(e.key=="Escape")t.tip.hide()}));t.printError=t=>this.printError(t);const e=this.opts.state.vocab;t.vocabApi=await p({app:t,state:{vocab:this.opts.state.vocab},fetchOpts:this.opts.fetchOpts,getDatasetAccessToken:this.opts.getDatasetAccessToken});t.hasWebGL=function(){try{var t=document.createElement("canvas");return!!(window.WebGLRenderingContext&&(t.getContext("webgl")||t.getContext("experimental-webgl")))}catch(t){return false}};this.opts.state.vocab=t.vocabApi.vocab}catch(t){throw t}}async init(){try{const t="debounceInterval"in this.opts?this.opts.debounceInterval:0;if(this.opts.embeddedSessionState){Object.assign(this.opts.state,this.opts.embeddedSessionState)}this.store=await n({app:this.api,state:this.opts.state,debounceInterval:t});this.state=await this.store.copyState();this.components={};if(this.state.nav.header_mode!="hidden"){this.components.nav=await c({app:this.api,holder:this.dom.topbar,header_mode:this.state&&this.state.nav&&this.state.nav.header_mode,vocab:this.state.vocab,massSessionDuration:this.state.termdbConfig.massSessionDuration})}this.components.plots={};await this.api.dispatch()}catch(t){this.printError(t);throw t}}async main(){await this.api.vocabApi.main();const t={};let e;for(const s of this.state.plots){if(this.components.plots&&!(s.id in this.components.plots)){e=o(this.dom.plotDiv,{close:()=>{this.api.dispatch({type:"plot_delete",id:s.id})},plotId:s.id,beforePlotId:s.insertBefore||null,style:{width:"98.5%"}});if(s.chartType=="summary")t[s.id]=l(Object.assign({app:this.api,holder:e},s));else t[s.id]=u(Object.assign({app:this.api,holder:e},s))}}const s=Object.keys(t).length;if(s){await Promise.all(Object.values(t));for(const e in t){this.components.plots[e]=await t[e]}}for(const t in this.components.plots){if(!this.state.plots.find((e=>e.id===t))){this.components.plots[t].destroy();delete this.components.plots[t]}}}printError(t){i(this.dom.errdiv||this.opts.holder,"Error: "+(t.message||t));if(t.stack)console.log(t.stack);this.bus.emit("error")}}const f=r(h);export{f as appInit};
|
|
1
|
+
import{az as t,q as e,M as s,aA as r,a1 as o,ac as i}from"./app-f73edb78.js";import{r as a,s as n}from"./recover-97602f64.js";import{v as p}from"./filter-6b0bd66e.js";import{n as c}from"./sampleScatter.interactivity-6b31c51d.js";import{summaryInit as l}from"./summary-e42dbeea.js";import"path";import"./samplelst-e4224495.js";import"./termsetting-720557a3.js";import"./table-dba817a9.js";import"./app-9ef9a482.js";import"./termInfo-fdb502e7.js";import"./downloadTextfile-5723af95.js";import"./violin-84138ebc.js";import"./controls-93c1b3a5.js";import"./controls.btns-af5280bd.js";import"./controls.config-d936ea41.js";import"./controls.overlay-9bfc642f.js";import"./controls.term1-62150931.js";import"./controls.divide-e988fa36.js";import"./violin.renderer-3d0d8f17.js";import"./brush-33697636.js";import"./pointer-c7475677.js";import"./nodrag-39389c59.js";import"./transform-f2cc07e6.js";import"./axis-6cb4f314.js";import"./line-264f8f9e.js";import"./constant-426a1483.js";import"./monotone-fed24f2f.js";import"./log-848ca156.js";import"./html.legend-f44f18ab.js";import"./violin.interactivity-31eff8d9.js";import"./barchart-5755e4b5.js";import"./bars.settings-f7884503.js";import"./bars.renderer-ffddf5f5.js";import"./svg.legend-404a03f8.js";import"./barchart.events-cb8547bb.js";import"./sampleScatter-dc8bd1d4.js";import"./zoom-f044afad.js";import"./lasso-22efae36.js";import"./drag-19604a2e.js";import"./svg.download-60935a3f.js";import"./symbol-fc7cbd41.js";import"./math-2fb199c6.js";import"./sampleScatter.rendererThree-df642763.js";function d(t){switch(t){case"../plots/DEanalysis.js":return import("./DEanalysis-4e97eae7.js");case"../plots/Disco.js":return import("./Disco-2910f321.js");case"../plots/barchart.data.js":return import("./filter-6b0bd66e.js").then((function(t){return t.p}));case"../plots/barchart.events.js":return import("./barchart.events-cb8547bb.js");case"../plots/barchart.js":return import("./barchart-5755e4b5.js");case"../plots/bars.renderer.js":return import("./bars.renderer-ffddf5f5.js");case"../plots/bars.settings.js":return import("./bars.settings-f7884503.js");case"../plots/boxplot.js":return import("./boxplot-cf99d543.js");case"../plots/controls.btns.js":return import("./controls.btns-af5280bd.js");case"../plots/controls.config.js":return import("./controls.config-d936ea41.js");case"../plots/controls.divide.js":return import("./controls.divide-e988fa36.js");case"../plots/controls.js":return import("./controls-93c1b3a5.js");case"../plots/controls.overlay.js":return import("./controls.overlay-9bfc642f.js");case"../plots/controls.term1.js":return import("./controls.term1-62150931.js");case"../plots/cuminc.js":return import("./cuminc-9c7ff331.js");case"../plots/dataDownload.js":return import("./dataDownload-1f61a3fd.js");case"../plots/dictionary.js":return import("./dictionary-943a4cd2.js");case"../plots/geneExpression.js":return import("./geneExpression-ef1eda3f.js");case"../plots/geneset.js":return import("./geneset-48feba0c.js");case"../plots/genomeBrowser.controls.js":return import("./genomeBrowser.controls-674775c6.js");case"../plots/genomeBrowser.js":return import("./genomeBrowser-f175f471.js");case"../plots/hierCluster.config.js":return import("./hierCluster.config-d4fdfeac.js");case"../plots/hierCluster.interactivity.js":return import("./hierCluster.interactivity-4b1534bc.js").then((function(t){return t.i}));case"../plots/hierCluster.js":return import("./hierCluster-130e5722.js");case"../plots/hierCluster.renderers.js":return import("./hierCluster.renderers-cd618c97.js").then((function(t){return t.r}));case"../plots/matrix.cells.js":return import("./matrix.cells-7ea665f3.js");case"../plots/matrix.cluster.js":return import("./matrix.cluster-33321b79.js");case"../plots/matrix.config.js":return import("./matrix.config-d8efc6dc.js");case"../plots/matrix.controls.js":return import("./matrix.controls-b2dc0e5b.js");case"../plots/matrix.data.js":return import("./matrix.data-7feb7104.js").then((function(t){return t.m}));case"../plots/matrix.dom.js":return import("./matrix.dom-7394bd2c.js");case"../plots/matrix.groups.js":return import("./matrix.groups-8b841f67.js").then((function(t){return t.m}));case"../plots/matrix.interactivity.js":return import("./matrix.interactivity-ff7ed88a.js");case"../plots/matrix.js":return import("./matrix-af727a11.js");case"../plots/matrix.layout.js":return import("./matrix.layout-168399d4.js").then((function(t){return t.m}));case"../plots/matrix.legend.js":return import("./matrix.legend-10a21caa.js").then((function(t){return t.m}));case"../plots/matrix.renderers.js":return import("./matrix.renderers-3a992e66.js");case"../plots/matrix.serieses.js":return import("./matrix.serieses-43f86542.js").then((function(t){return t.m}));case"../plots/matrix.sort.js":return import("./matrix.sort-c3c86759.js");case"../plots/plot.app.js":return import("./plot.app-cf29de59.js");case"../plots/plot.disco.js":return import("./plot.disco-15695284.js");case"../plots/plot.ssgq.js":return import("./plot.ssgq-ab818820.js");case"../plots/polar.js":return import("./polar-57ab248e.js");case"../plots/profileBarchart.js":return import("./profileBarchart-5eda57dd.js");case"../plots/profilePlot.js":return import("./profilePlot-c1bc4e3f.js");case"../plots/profilePolar.js":return import("./profilePolar-d6a3ef51.js");case"../plots/profileRadar.js":return import("./profileRadar-61cd7e72.js");case"../plots/profileRadarFacility.js":return import("./profileRadarFacility-fd292b0d.js");case"../plots/regression.inputs.js":return import("./regression.inputs-87698b93.js").then((function(t){return t.b}));case"../plots/regression.inputs.term.js":return import("./regression.inputs-87698b93.js").then((function(t){return t.a}));case"../plots/regression.inputs.values.table.js":return import("./regression.inputs.values.table-be00c818.js");case"../plots/regression.js":return import("./regression.inputs-87698b93.js").then((function(t){return t.r}));case"../plots/regression.results.js":return import("./regression.results-d67d5723.js").then((function(t){return t.r}));case"../plots/sampleScatter.interactivity.js":return import("./sampleScatter.interactivity-6b31c51d.js").then((function(t){return t.d}));case"../plots/sampleScatter.js":return import("./sampleScatter-dc8bd1d4.js").then((function(t){return t.a}));case"../plots/sampleScatter.renderer.js":return import("./sampleScatter-dc8bd1d4.js").then((function(t){return t.s}));case"../plots/sampleScatter.rendererThree.js":return import("./sampleScatter.rendererThree-df642763.js").then((function(t){return t.c}));case"../plots/sampleView.js":return import("./sampleView-0d819313.js");case"../plots/scatter.js":return import("./scatter-df455b44.js");case"../plots/singleCellPlot.js":return import("./singleCellPlot-f4f9f8ce.js");case"../plots/stattable.js":return import("./stattable-706eb093.js");case"../plots/summary.js":return import("./summary-e42dbeea.js");case"../plots/survival.js":return import("./survival-fa638d4f.js");case"../plots/table.js":return import("./table-6354b788.js");case"../plots/variantBrowser.js":return import("./variantBrowser-91d4eb10.js");case"../plots/violin.interactivity.js":return import("./violin.interactivity-31eff8d9.js");case"../plots/violin.js":return import("./violin-84138ebc.js");case"../plots/violin.renderer.js":return import("./violin.renderer-3d0d8f17.js");default:return new Promise((function(e,s){(typeof queueMicrotask==="function"?queueMicrotask:setTimeout)(s.bind(null,new Error("Unknown variable dynamic import: "+t)))}))}}class m{constructor(t){this.type="plot";j(this);this.initUi(t)}reactsTo(t){if(t.type.includes("cache_termq"))return true;if(t.type.endsWith("_group"))return true;if(t.type.startsWith("plot_"))return t.id===this.id;if(t.type.startsWith("filter"))return true;if(t.type.startsWith("cohort"))return true;if(t.type=="app_refresh")return true;if(t.type.endsWith("customTerm"))return true}getState(t){const e=t.plots.find((t=>t.id===this.id));if(!e){throw`No plot with id='${this.id}' found. Did you set this.id before this.api = getComponentApi(this)?`}return{config:e,groups:t.groups,_scope_:t._scope_}}async main(){this.dom.errdiv.style("display","none");if(!this.components)await this.setComponents(this.opts)}async setComponents(t){this.components={recover:await a({app:this.app,holder:this.dom.localRecoverDiv,getState:t=>this.getState(t),reactsTo:t=>t.id==this.id&&(t.type=="plot_edit"||t.type=="plot_nestedEdits")&&t._track_!="none",plot_id:this.id,maxHistoryLen:10})};const s=await d(`../plots/${t.chartType}.js`);this.components.chart=await s.componentInit({app:this.app,holder:this.dom.viz,header:this.dom.paneTitleDiv,id:this.id,plotDiv:e(this.dom.holder.app_div.node().parentNode)})}destroy(){this.dom.holder.app_div.selectAll("*").remove();this.dom.holder.app_div.remove();for(const t in this.dom){delete this.dom[t]}}}const u=t(m);function j(t){t.initUi=function(e){const r=e.holder;r.header.style("padding",0);try{t.dom={tip:new s({padding:"0px"}),holder:r,paneTitleDiv:r.header.append("div").style("display","inline-block").style("color","#555").style("padding-left","7px").style("vertical-align","sub"),localRecoverDiv:r.header.append("div").style("display","inline-block"),body:r.body.style("white-space","nowrap").style("overflow-x","auto"),errdiv:r.body.append("div").style("display","none").style("padding","5px").style("background-color","rgba(255,100,100,0.2)"),viz:r.body.append("div")}}catch(e){t.dom.errdiv.style("display","none").text(e)}}}class h{constructor(t){if(t.addLoginCallback){t.addLoginCallback((()=>this.api.dispatch({type:"app_refresh"})))}this.type="app";this.dom={holder:t.holder,topbar:t.holder.append("div"),errdiv:t.holder.append("div"),plotDiv:t.holder.append("div")};this.plotIdToSandboxId={}}validateOpts(t={}){if(!t.holder)throw`missing opts.holder in the MassApp constructor argument`;if(!t.callbacks)t.callbacks={};if(!t.state.vocab)t.state.vocab={};if(typeof t.state.vocab!="object")throw"opts.state.vocab{} is not an object";if(t.state.genome){t.state.vocab.genome=t.state.genome;delete t.state.genome}if(t.state.dslabel){t.state.vocab.dslabel=t.state.dslabel;delete t.state.dslabel}return t}async preApiFreeze(t){try{t.tip=new s({padding:"5px"});t.tip.d.on("keyup",(e=>{if(e.key=="Escape")t.tip.hide()}));t.printError=t=>this.printError(t);const e=this.opts.state.vocab;t.vocabApi=await p({app:t,state:{vocab:this.opts.state.vocab},fetchOpts:this.opts.fetchOpts,getDatasetAccessToken:this.opts.getDatasetAccessToken});t.hasWebGL=function(){try{var t=document.createElement("canvas");return!!(window.WebGLRenderingContext&&(t.getContext("webgl")||t.getContext("experimental-webgl")))}catch(t){return false}};this.opts.state.vocab=t.vocabApi.vocab}catch(t){throw t}}async init(){try{const t="debounceInterval"in this.opts?this.opts.debounceInterval:0;if(this.opts.embeddedSessionState){Object.assign(this.opts.state,this.opts.embeddedSessionState)}this.store=await n({app:this.api,state:this.opts.state,debounceInterval:t});this.state=await this.store.copyState();this.components={};if(this.state.nav.header_mode!="hidden"){this.components.nav=await c({app:this.api,holder:this.dom.topbar,header_mode:this.state&&this.state.nav&&this.state.nav.header_mode,vocab:this.state.vocab,massSessionDuration:this.state.termdbConfig.massSessionDuration})}this.components.plots={};await this.api.dispatch()}catch(t){this.printError(t);throw t}}async main(){await this.api.vocabApi.main();const t={};let e;for(const s of this.state.plots){if(this.components.plots&&!(s.id in this.components.plots)){e=o(this.dom.plotDiv,{close:()=>{this.api.dispatch({type:"plot_delete",id:s.id})},plotId:s.id,beforePlotId:s.insertBefore||null,style:{width:"98.5%"}});if(s.chartType=="summary")t[s.id]=l(Object.assign({app:this.api,holder:e},s));else t[s.id]=u(Object.assign({app:this.api,holder:e},s))}}const s=Object.keys(t).length;if(s){await Promise.all(Object.values(t));for(const e in t){this.components.plots[e]=await t[e]}}for(const t in this.components.plots){if(!this.state.plots.find((e=>e.id===t))){this.components.plots[t].destroy();delete this.components.plots[t]}}}printError(t){i(this.dom.errdiv||this.opts.holder,"Error: "+(t.message||t));if(t.stack)console.log(t.stack);this.bus.emit("error")}}const f=r(h);export{f as appInit};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{az as e,q as t,aT as s,aE as i,ae as r,k as a,ac as o,aA as l,M as n,T as d,aM as c}from"./app-f70d9a0b.js";import{a as p,i as m,g as h,f as u,s as f,n as y,v as b}from"./filter-5a5a1166.js";import{termInfoInit as v}from"./termInfo-3ae67507.js";import"path";import"./table-2310e41b.js";const g="25px";const _="root";const x=20;const k="400px";const T="termdiv",w="termchilddiv",C="termbtn",I="termlabel",A="termloading",D="termcheck";class S{constructor(e){this.type="tree";V(this);B(this);this.loadingTermSet=new Set;this.termsByCohort={};this.expandAll="expandAll"in e?e.expandAll:false}init(){this.dom={holder:this.opts.holder.append("div")}}reactsTo(e){if(e.type.startsWith("tree_"))return true;if(e.type.startsWith("filter_"))return true;if(e.type.startsWith("cohort_"))return true;if(e.type.startsWith("info_"))return true;if(e.type.startsWith("submenu_"))return true;if(e.type=="app_refresh")return true}getState(e){const t=p(e.termfilter.filter);const s={isVisible:!e.submenu.term,activeCohort:e.activeCohort,expandedTermIds:e.tree.expandedTermIds,selectedTerms:e.selectedTerms,termfilter:{filter:t},usecase:e.tree.usecase};if(e.termdbConfig.selectCohort){s.toSelectCohort=true;const t=e.termdbConfig.selectCohort.values[e.activeCohort];if(t){s.cohortValuelst=t.keys}}return s}async main(){if(!this.state.isVisible){this.dom.holder.style("display","none");return}if(this.state.toSelectCohort){if(!this.state.cohortValuelst){return}}this.termsById=this.getTermsById();const e=this.termsById[_];e.terms=await this.requestTermRecursive(e);this.dom.holder.style("display","block");await this.renderBranch(e,this.dom.holder);this.dom.holder.selectAll(".termbtn, .sja_tree_click_term").attr("tabindex",0).on("keyup",(e=>{if(e.key=="Enter")e.target.click()}))}getTermsById(){if(!(this.state.activeCohort in this.termsByCohort)){this.termsByCohort[this.state.activeCohort]={[_]:{id:_,__tree_isroot:true}}}return this.termsByCohort[this.state.activeCohort]}async requestTermRecursive(e){const t=await this.app.vocabApi.getTermChildren(e,this.state.toSelectCohort?this.state.cohortValuelst:null);if(t.error)throw t.error;if(!t.lst||t.lst.length==0){return[]}const s=[];for(const e of t.lst){const t=Object.assign({},e);s.push(t);if(this.state.expandedTermIds.includes(t.id)){t.terms=await this.requestTermRecursive(t)}else{const e=this.termsById[t.id];if(e&&e.terms){t.terms=e.terms}}this.termsById[t.id]=t}return s}bindKey(e){return e.id}}const j=e(S);function B(e){e.renderBranch=(t,s,i)=>{if(!t||!t.terms)return;if(t.terms.length>=x){if(s.classed("sjpp_show_scrollbar"));else{s.style("max-height",k).style("padding","10px").style("resize","vertical").classed("sjpp_show_scrollbar",true)}}if(e.opts.disable_terms){t.terms.forEach((t=>{if(t.disabled)e.opts.disable_terms.push(t.id)}))}e.included_terms=[];if(e.state.usecase){for(const s of t.terms){if(m(s,e.state.usecase).size){e.included_terms.push(s)}}}else{e.included_terms.push(...t.terms)}if(!(t.id in e.termsById)||!e.included_terms.length){s.style("display","none");return}if(e.loadingTermSet.has(t.id)){e.loadingTermSet.delete(t.id);s.select("."+A).remove()}const r=e.state.expandedTermIds;if(!r.includes(t.id)){s.style("display","none");if(i)i.text("+");return}s.style("display","block");if(i)i.text("-");const a=s.selectAll("."+T).data(e.included_terms,e.bindKey);a.exit().each(e.hideTerm);a.each(e.updateTerm);a.enter().append("div").each(e.addTerm);for(const i of t.terms){if(r.includes(i.id)){e.renderBranch(i,s.selectAll("."+w).filter((e=>e.id==i.id)),s.selectAll("."+C).filter((e=>e.id==i.id)))}}};e.hideTerm=function(s){if(s.id in e.termsById&&e.state.expandedTermIds.includes(s.id))return;t(this).style("display","none")};e.updateTerm=function(s){const i=t(this);if(!(s.id in e.termsById)){i.style("display","none");return}const r=e.opts.disable_terms?.includes(s.id);const a=m(s,e.state.usecase);i.style("display","");const o=e.state.expandedTermIds.includes(s.id);i.select("."+C).text(o?"-":"+");i.select("."+w).style("display",o?"block":"none");const l=e.state.selectedTerms.find((e=>e.name===s.name&&e.type===s.type));i.select("."+I).style("background-color",!a.has("plot")||r?"":l?"rgba(255, 194, 10,0.5)":"#cfe2f3");i.select("."+D).style("display",a.has("plot")&&l&&!r?"inline-block":"none")};e.addTerm=async function(s){const i=e.opts.disable_terms?.includes(s.id);const r=m(s,e.state.usecase);const a=t(this).attr("class",T).style("margin",s.isleaf?"":"2px").style("padding","0px 5px");if(r.has("branch")){a.append("div").attr("class","sja_menuoption "+C).style("display","inline-block").style("padding","4px 9px").style("font-family","courier").text("+").on("click",(t=>{t.stopPropagation();e.toggleBranch(s)}));if(e.expandAll)e.toggleBranch(s)}const o=e.state.selectedTerms.find((e=>e.name===s.name&&e.type===s.type));const l=a.append("div").attr("class",I).style("display","inline-block").style("padding","5px").style("opacity",i?.4:null).text(s.name);let n;if(s.hashtmldetail){n=a.append("div").style("display","inline-block")}if(r.size>0){if(i){l.attr("class","sja_tree_click_term_disabled "+I).style("padding","5px 8px").style("margin","1px 0px").style("opacity",.4)}else if(r.has("plot")){l.attr("class","ts_pill sja_filter_tag_btn sja_tree_click_term "+I).style("color","black").style("padding","5px 8px").style("border-radius","6px").style("background-color",o?"rgba(255, 194, 10,0.5)":"#cfe2f3").style("margin","1px 0px").style("cursor","default").on("click",(()=>e.clickTerm(s)))}if(s.samplecount!==undefined){a.append("div").style("font-size",".8em").style("display","inline-block").style("margin-left","5px").style("color",s.samplecount?"#777":"#ddd").text("n="+s.samplecount)}}if(s.hashtmldetail){v({vocabApi:e.app.vocabApi,icon_holder:n,content_holder:a.append("div"),id:s.id,state:{term:s}})}if(e.opts.submit_lst){a.append("div").attr("class",D).style("color","#008000").style("display",o?"inline-block":"none").html("✓")}if(!s.isleaf){a.append("div").attr("class",w).style("padding-left",g)}}}function V(e){e.toggleBranch=function(s){if(s.isleaf)return;const i=e.termsById[s.id];if(!i)throw"invalid term id";if(!i.terms){if(e.loadingTermSet.has(i.id))return;e.loadingTermSet.add(i.id);t(this.parentNode).selectAll("."+w).filter((e=>e.id===i.id)).style("display","block").append("div").text("Loading...").attr("class",A).style("opacity",.5).style("padding","5px")}const r=e.state.expandedTermIds.includes(s.id);const a=r?"tree_collapse":"tree_expand";e.app.dispatch({type:a,termId:s.id})};e.clickTerm=async t=>{if(e.opts.click_term2select_tvs){e.app.dispatch({type:"submenu_set",submenu:{term:t,type:"tvs"}});return}if(e.opts.click_term_wrapper){e.opts.click_term_wrapper(t);return}if(e.opts.submit_lst){const s=e.state.selectedTerms.findIndex((e=>e.name===t.name));if(s==-1){e.app.dispatch({type:"app_refresh",state:{selectedTerms:[...e.state.selectedTerms,t]}})}else{const t=e.state.selectedTerms.slice(0);t.splice(s,1);e.app.dispatch({type:"app_refresh",state:{selectedTerms:t}})}return}throw"missing term click callback"}}const N={header_mode:"search_only",activeCohort:0,tree:{usecase:{},expandedTermIds:[]},submenu:{},search:{isVisible:true},selectedTerms:[],termfilter:{filter:{type:"tvslst",in:true,join:"",lst:[]}}};class R{constructor(e){this.type="store";this.defaultState=N;s(this,e);this.prevGeneratedId=0}validateOpts(e){if(!e.state)throw".state{} missing";const t=e.state;if(t.vocab){if(t.vocab.dslabel){if(!t.vocab.genome)throw".state[.vocab].genome missing"}else if(t.vocab.genome){if(!t.vocab.dslabel)throw".state[.vocab].dslabel missing"}else{if(!Array.isArray(t.vocab.terms))throw"vocab.terms must be an array of objects"}}}validateState(){const e=this.state;if(e.tree.expandedTermIds.length==0){e.tree.expandedTermIds.push(_)}else{if(e.tree.expandedTermIds[0]!=_){e.tree.expandedTermIds.unshift(_)}}}async init(){this.state.termdbConfig=await this.app.vocabApi.getTermdbConfig();let e=h(this.state.termfilter.filter,"filterUiRoot");if(!e){this.state.termfilter.filter.tag="filterUiRoot";e=this.state.termfilter.filter}if(this.state.termdbConfig.selectCohort){let t=h(this.state.termfilter.filter,"cohortFilter");if(!t){t={tag:"cohortFilter",type:"tvs",tvs:{term:JSON.parse(JSON.stringify(this.state.termdbConfig.selectCohort.term)),values:this.state.activeCohort==-1?[]:this.state.termdbConfig.selectCohort.values[this.state.activeCohort].keys.map((e=>({key:e,label:e})))}};this.state.termfilter.filter={type:"tvslst",in:true,join:"and",lst:[t,e]}}else{const e=(e,t)=>e<t?-1:1;t.tvs.values.sort(((e,t)=>e.key<t.key?-1:1));const s=JSON.stringify(t.tvs.values.map((e=>e.key)).sort(e));const i=this.state.termdbConfig.selectCohort.values.findIndex((t=>s==JSON.stringify(t.keys.sort(e))));if(this.state.activeCohort!==-1&&this.state.activeCohort!==0&&i!==this.state.activeCohort){console.log("Warning: cohortFilter will override the state.activeCohort due to mismatch")}this.state.activeCohort=i}}else{this.state.activeCohort=-1;if(this.state.header_mode==="with_cohortHtmlSelect"){console.warn(`no termdbConfig.selectCohort to use for state.header_mode = 'with_cohortHtmlSelect'`);this.state.header_mode="search_only"}}}fromJson(e){const t=JSON.parse(e);return t}setId(e){e.$id=this.prevGeneratedId++;if(e.$lst){for(const t of e.$lst){this.setId(t)}}}}R.prototype.actions={app_refresh(e={}){this.state=this.copyMerge(this.toJson(this.state),e.state?e.state:{},this.replaceKeyVals)},cohort_set(e){this.state.activeCohort=e.activeCohort;const t=this.state.termdbConfig.selectCohort.values[e.activeCohort];const s=h(this.state.termfilter.filter,"cohortFilter");if(!s)throw`No item tagged with 'cohortFilter'`;s.tvs.values=t.keys.map((e=>({key:e,label:e})))},tree_expand(e){if(this.state.tree.expandedTermIds.includes(e.termId))return;this.state.tree.expandedTermIds.push(e.termId)},tree_collapse(e){const t=this.state.tree.expandedTermIds.indexOf(e.termId);if(t==-1)return;this.state.tree.expandedTermIds.splice(t,1)},filter_replace(e){const t=e.filter?e.filter:{type:"tvslst",join:"",in:1,lst:[]};if(!e.filter.tag){this.state.termfilter.filter=t}else{const s=h(this.state.termfilter.filter,e.filter.tag);if(!s)throw`cannot replace missing filter with tag '${e.filter.tag}'`;const i=u(this.state.termfilter.filter,s.$id);if(i==s){this.state.termfilter.filter=t}else{const e=i.lst.indexOf(s);i.lst[e]=t}}},submenu_set(e){const t=e.submenu&&e.submenu.term;if(!t){this.state.submenu={};this.state.tree.expandedTermIds=[_]}else{const s=[_];if(t.__ancestors){s.push(...t.__ancestors)}if(m(t).has("plot")){Object.assign(this.state.submenu,e.submenu)}else{s.push(t.id);delete this.state.submenu.term}this.state.tree.expandedTermIds=s}}};const O=i(R);class E{constructor(e){this.type="submenu";this.dom={holder:e.holder};q(this)}reactsTo(e){if(e.type.startsWith("submenu_"))return true;if(e.type=="app_refresh")return true}getState(e){return{type:e.submenu.type,term:e.submenu.term,termfilter:e.termfilter}}main(){if(!this.state.term){this.dom.holder.style("display","none");return}if(this.state.type=="tvs")this.showTvsMenu(this.state.term);else throw`unsupported submenu.type='${this.state.type}'`}}const z=e(E);function q(e){e.showTvsMenu=function(t){e.dom.holder.selectAll("*").remove();e.dom.holder.style("display","block").append("div").style("margin","20px").append("span").html("« Back to variable selection").attr("class","sja_clbtext").on("click",(()=>e.app.dispatch({type:"submenu_set",submenu:{}})));f({term:t,filter:e.state.termfilter.filter,holder:e.dom.holder.append("div"),vocabApi:e.app.vocabApi,debug:e.app.debug,getCategoriesArguments:e.app.opts.getCategoriesArguments,callback:e.app.opts.tree.click_term2select_tvs})}}class K{constructor(e){this.type="search";this.customEvents=["postSearch"];W(this);$(this);this.dom={holder:e.holder};this.isVisible="isVisible"in e?e.isVisible:true}async init(e){this.initUI(this.getState(e))}reactsTo(e){if(e.type=="app_refresh")return true;const t=e.type.split("_")[0];return["search","cohort","submenu"].includes(t)}getState(e){return{isVisible:!e.submenu.term&&this.isVisible,cohortStr:e.activeCohort==-1||!e.termdbConfig.selectCohort?"":e.termdbConfig.selectCohort.values[e.activeCohort].keys.slice().sort().join(","),allowedTermTypes:e.termdbConfig.allowedTermTypes||[],expandedTermIds:e.tree.expandedTermIds,selectedTerms:e.selectedTerms,usecase:e.tree.usecase,search:e.search,isGeneSetTermdb:e.termdbConfig.isGeneSetTermdb}}async main(){this.dom.holder.style("display",this.state.isVisible?"block":"none");this.renderSelectedNonDictTerms()}async doSearch(e,t){if(!e){this.clear();this.bus.emit("postSearch",[]);return}const s=await this.app.vocabApi.findTerm(e,this.state.cohortStr,this.state.usecase,t);this.currData=s;if(!s.lst||s.lst.length==0){this.noResult()}else{this.showTerms(s)}this.bus.emit("postSearch",s)}}const P=e(K);function W(e){e.initUI=t=>{e.dom.holder.style("display",e.search&&e.search.isVisible==false?"none":"block");e.dom.input=e.dom.holder.style("text-align","left").append("input").attr("type","search").attr("class","tree_search").attr("placeholder","Search"+e.getPrompt(t)).style("width","220px").style("margin","10px").style("display","block").on("input",r.debounce(e.onInput,300)).on("keyup",e.onKeyup);if(e.opts.focus!="off")e.dom.input.node().focus();e.dom.resultDiv=(e.opts.resultsHolder||e.dom.holder).append("div").style("display","none").style("grid-template-columns","auto auto");const s=e.dom.resultDiv.append("div");const i=e.dom.resultDiv.append("div");e.dom.resultDiv_genes=s.append("div").style("border-left","solid 1px rgb(133,182,225)").style("margin","0px 0px 10px 10px").style("padding-left","5px");e.dom.resultDiv_terms=i.append("div").style("border-left",e.opts.resultsHolder?"":"solid 1px rgb(133,182,225)").style("margin","0px 0px 10px 10px").style("padding-left","5px");e.dom.nonDictDiv=e.dom.holder.append("div").style("margin","0px 0px 10px 10px").style("display","none");e.dom.nonDictDiv.append("div").style("font-weight",600).html("Selected genes");e.dom.selectedNonDictDiv=e.dom.nonDictDiv.append("div")};e.getPrompt=e=>{const t=e.allowedTermTypes.includes("geneVariant")&&m({type:"geneVariant"},e.usecase).has("plot");if(t)return" variables or genes";if(e.isGeneSetTermdb)return" gene sets";return" variables"};e.noResult=()=>{e.clear();e.dom.resultDiv.style("display","inline-grid");e.dom.resultDiv_terms.append("div").style("padding","3px 3px 3px 0px").style("opacity",.5).text("No match"+(e.app.vocabApi.termdbConfig?.queries?.snvindel?.allowSNPs?". Press ENTER to search SNP":""))};e.showTerms=t=>{if(e.opts.disable_terms){t.lst.forEach((t=>{if(t.disabled)e.opts.disable_terms.push(t.id)}))}e.clear();e.dom.resultDiv.style("display","inline-grid");const s=[],i=[];for(const e of t.lst){if(e.type=="geneVariant"){s.push(e)}else{i.push(e)}}if(s.length){e.dom.resultDiv_genes.append("table").selectAll().data(s).enter().append("tr").each(e.showTerm)}if(i.length){e.dom.resultDiv_terms.append("table").selectAll().data(i).enter().append("tr").each(e.showTerm)}e.focusableResults=[...e.dom.resultDiv.node().querySelectorAll(".sja_tree_click_term, .sja_menuoption")]};e.showTerm=function(s){const i=t(this);const r=i.append("td").text(s.name);const a=m(s,e.state.usecase);if((e.opts.click_term||e.app.opts?.tree?.click_term_wrapper)&&a.has("plot")){if("id"in s&&e.opts.disable_terms?.includes(s.id)){r.attr("class","sja_tree_click_term_disabled").style("display","block").style("padding","5px 8px").style("margin","1px 0px").style("opacity",.4)}else{r.attr("class","ts_pill sja_filter_tag_btn sja_tree_click_term").attr("tabindex",0).style("display","block").style("color","black").style("padding","5px 8px").style("border-radius","6px").style("background-color",s.type=="geneVariant"?"rgba(251,171,96,0.5)":"#cfe2f3").style("margin","1px 0px").style("cursor","default").on("click",(()=>{if(e.opts.click_term){e.opts.click_term(s)}else{e.app.opts.tree.click_term_wrapper(s)}e.clear();e.dom.input.property("value","")})).on("keyup",e.navInputValueByKeyboard)}if(s.samplecount!==undefined){i.append("td").append("div").style("font-size",".8em").style("display","inline-block").style("margin-left","5px").style("color",s.samplecount?"#777":"#ddd").text("n="+s.samplecount)}}else{r.attr("class","sja_menuoption").attr("tabindex",0).on("click",(()=>{e.clear();e.dom.input.property("value","");const t=[_];if(s.type=="geneVariant"&&e.opts.handleGeneVariant){e.opts.handleGeneVariant(s)}else if(y.has(s.type)){e.app.dispatch({type:"app_refresh",state:{selectedTerms:[...e.state.selectedTerms,s]}})}else{if(s.__ancestors){t.push(...s.__ancestors)}if(!e.app.vocabApi.graphable(s))t.push(s.id);e.app.dispatch({type:"app_refresh",state:{tree:{expandedTermIds:t}}})}})).on("keyup",e.navInputValueByKeyboard)}i.append("td").text(s.type=="geneVariant"?"gene variant":(s.__ancestorNames||[]).join(" > ")).style("opacity",.5).style("font-size",".7em")};e.clear=()=>{e.dom.resultDiv_genes.selectAll("*").remove();e.dom.resultDiv_terms.selectAll("*").remove();e.dom.resultDiv.style("display","none")};e.renderSelectedNonDictTerms=function(){const t=e.state.selectedTerms.filter((e=>y.has(e.type)));e.dom.nonDictDiv.style("display",t.length?"":"none");const s=e.dom.selectedNonDictDiv.selectAll("div").data(t,(e=>e.name));s.exit().remove();s.enter().append("div").style("display","inline-block").style("margin","1px").style("padding","5px 8px").style("background-color","rgba(255, 194, 10,0.5)").style("border-radius","6px").html((e=>e.name))}}function $(e){e.onKeyup=t=>{if(t.key=="ArrowDown"&&e.currData?.lst?.length){e.dom.resultDiv.select(".sja_tree_click_term, .sja_menuoption").node().focus();return}if(!a(t))return;if(!e.app.vocabApi.termdbConfig?.queries?.snvindel?.allowSNPs)return;e.onInput(t,"snp")};e.onInput=async(t,s)=>{const i=e.dom.input.property("value");try{await e.doSearch(i,s)}catch(t){e.clear();e.dom.resultDiv.style("display","inline-grid");o(e.dom.resultDiv_terms,"Error: "+(t.message||t));if(t.stack)console.log(t.stack)}};e.navInputValueByKeyboard=t=>{if(t.key=="Enter")t.target.click();else if(t.key.startsWith("Arrow")){const s=e.focusableResults.findIndex((e=>e===t.target));if(t.key=="ArrowDown"){if(s<e.focusableResults.length-1)e.focusableResults[s+1].focus();else e.focusableResults[0].focus()}else if(t.key=="ArrowUp"){if(s!=0)e.focusableResults[s-1].focus();else e.focusableResults[e.focusableResults.length-1].focus()}}}}class G{constructor(e){this.type="app";if(!e.holder)t("body").append("div");const s=e.holder.append("div").style("display",e.tree?.submit_lst?"":"none").style("text-align","center").style("margin","10px 5px");const i=s.append("button").property("disabled",true).text(this.noSelectionPrompt).on("click",(()=>this.opts.tree?.submit_lst(this.state.selectedTerms)));const r=e.holder.append("div");this.dom={holder:e.holder,treeDiv:e.holder.append("div"),customTermDiv:e.holder.append("div").style("margin","10px"),submitDiv:s,submitBtn:i,topbar:r,searchDiv:r.append("div").style("display","inline-block"),filterDiv:r.append("div").style("display","none"),errdiv:e.holder.append("div"),tip:new n({padding:"5px"})}}validateOpts(e){if(e.vocabApi);else if(e.state&&e.state.vocab){if(typeof e.state.vocab!="object")throw"opts.state.vocab{} is not an object"}else if(e.state&&e.state.genome){const t=e.state;if(!t.vocab)t.vocab={};t.vocab.genome=t.genome;delete t.genome;if(t.dslabel){t.vocab.dslabel=t.dslabel;delete t.dslabel}}else{throw"neither state.vocab{} or opts.vocabApi provided"}if(e.tree){if(e.tree.disable_terms&&!e.tree.click_term&&!e.tree.click_term2select_tvs&&(!e.barchart||!e.barchart.bar_click_override)){throw`opts.tree.disable_terms is used only when opts.tree.click_term, opts.tree.click_term2select_tvs, or opts.barchart.bar_click_override is set`}if(!e.search)e.search={};if(e.tree.click_term2select_tvs){e.search.click_term=e=>this.api.dispatch({type:"submenu_set",submenu:{term:e,type:"tvs"}})}if(e.tree.click_term){e.tree.click_term_wrapper=async t=>{if(this.state.termdbConfig.termMatch2geneSet){const e=await d("termdb",{body:{genome:this.state.vocab.genome,dslabel:this.state.vocab.dslabel,genesetByTermId:t.id}});t._geneset=e}e.tree.click_term(t)}}if(e.tree.disable_terms)e.search.disable_terms=e.tree.disable_terms}return e}async preApiFreeze(e){try{if(this.opts.vocabApi){e.vocabApi=this.opts.vocabApi}else{const t={vocab:this.opts.state.vocab||{genome:this.opts.state.genome,dslabel:this.opts.state.dslabel}};e.vocabApi=await b({app:this.api,state:t,fetchOpts:this.opts.fetchOpts})}e.appInit=J}catch(e){console.log(e);throw e}}async init(){try{this.store=await O({app:this.api,state:this.opts.state});this.state=await this.store.copyState();await this.setComponents();await this.api.dispatch()}catch(e){this.printError(e)}}async setComponents(){try{const e=this.state.nav?.header_mode;const t={search:P({app:this.api,holder:this.dom.searchDiv,isVisible:e!=="hide_search"}),tree:j({app:this.api,holder:this.dom.treeDiv,headerDiv:this.dom.headerDiv,expandAll:e=="hide_search"})};if(this.opts.tree&&this.opts.tree.click_term2select_tvs){t.submenu=z({app:this.api,holder:this.dom.holder.append("div").style("display","none")})}this.components=await c(t)}catch(e){throw e}}async main(){this.api.vocabApi.main();const e=this.state.selectedTerms.length;this.dom.submitBtn.property("disabled",!e).text(!e?"Search or click term(s)":`Submit ${e} term${e>1?"s":""}`);await this.mayShowCustomTerms();this.dom.holder.selectAll("search, .termbtn, button").attr("tabindex",0);this.dom.holder.selectAll(".termbtn").on("keyup",(e=>{if(e.key=="Enter")e.target.click()}))}printError(e){o(this.dom.errdiv,"Error: "+(e.message||e));if(e.stack)console.log(e.stack)}async mayShowCustomTerms(){if(Object.keys(this.state.submenu).length)return this.dom.customTermDiv.style("display","none");const e=await this.api.vocabApi.getCustomTerms();if(!Array.isArray(e)||e.length==0)return this.dom.customTermDiv.style("display","none");const t=[];for(const s of e){const e=m(s.term,this.state.tree.usecase);if(e.has("plot"))t.push(s)}if(t.length==0)return this.dom.customTermDiv.style("display","none");this.dom.customTermDiv.selectAll("*").remove();this.dom.customTermDiv.append("div").text("CUSTOM VARIABLES").style("font-size",".7em");for(const e of t){this.dom.customTermDiv.append("div").style("margin-bottom","3px").append("div").text(e.term.name).attr("class","sja_filter_tag_btn").style("padding","3px 6px").style("border-radius","6px").on("click",(()=>{if(!this.opts.tree)return;if(this.opts.tree.click_term){this.opts.tree.click_term(e);return}if(this.opts.tree.click_term2select_tvs){this.api.dispatch({type:"submenu_set",submenu:{term:e.term,type:"tvs"}});return}}))}}}const J=l(G);export{J as appInit};
|
|
1
|
+
import{az as e,q as t,aT as s,aE as i,ae as r,k as a,ac as o,aA as l,M as n,T as d,aM as c}from"./app-f73edb78.js";import{a as p,i as m,g as h,f as u,s as f,n as y,v as b}from"./filter-6b0bd66e.js";import{termInfoInit as v}from"./termInfo-fdb502e7.js";import"path";import"./table-dba817a9.js";const g="25px";const _="root";const x=20;const k="400px";const T="termdiv",w="termchilddiv",C="termbtn",I="termlabel",A="termloading",D="termcheck";class S{constructor(e){this.type="tree";V(this);B(this);this.loadingTermSet=new Set;this.termsByCohort={};this.expandAll="expandAll"in e?e.expandAll:false}init(){this.dom={holder:this.opts.holder.append("div")}}reactsTo(e){if(e.type.startsWith("tree_"))return true;if(e.type.startsWith("filter_"))return true;if(e.type.startsWith("cohort_"))return true;if(e.type.startsWith("info_"))return true;if(e.type.startsWith("submenu_"))return true;if(e.type=="app_refresh")return true}getState(e){const t=p(e.termfilter.filter);const s={isVisible:!e.submenu.term,activeCohort:e.activeCohort,expandedTermIds:e.tree.expandedTermIds,selectedTerms:e.selectedTerms,termfilter:{filter:t},usecase:e.tree.usecase};if(e.termdbConfig.selectCohort){s.toSelectCohort=true;const t=e.termdbConfig.selectCohort.values[e.activeCohort];if(t){s.cohortValuelst=t.keys}}return s}async main(){if(!this.state.isVisible){this.dom.holder.style("display","none");return}if(this.state.toSelectCohort){if(!this.state.cohortValuelst){return}}this.termsById=this.getTermsById();const e=this.termsById[_];e.terms=await this.requestTermRecursive(e);this.dom.holder.style("display","block");await this.renderBranch(e,this.dom.holder);this.dom.holder.selectAll(".termbtn, .sja_tree_click_term").attr("tabindex",0).on("keyup",(e=>{if(e.key=="Enter")e.target.click()}))}getTermsById(){if(!(this.state.activeCohort in this.termsByCohort)){this.termsByCohort[this.state.activeCohort]={[_]:{id:_,__tree_isroot:true}}}return this.termsByCohort[this.state.activeCohort]}async requestTermRecursive(e){const t=await this.app.vocabApi.getTermChildren(e,this.state.toSelectCohort?this.state.cohortValuelst:null);if(t.error)throw t.error;if(!t.lst||t.lst.length==0){return[]}const s=[];for(const e of t.lst){const t=Object.assign({},e);s.push(t);if(this.state.expandedTermIds.includes(t.id)){t.terms=await this.requestTermRecursive(t)}else{const e=this.termsById[t.id];if(e&&e.terms){t.terms=e.terms}}this.termsById[t.id]=t}return s}bindKey(e){return e.id}}const j=e(S);function B(e){e.renderBranch=(t,s,i)=>{if(!t||!t.terms)return;if(t.terms.length>=x){if(s.classed("sjpp_show_scrollbar"));else{s.style("max-height",k).style("padding","10px").style("resize","vertical").classed("sjpp_show_scrollbar",true)}}if(e.opts.disable_terms){t.terms.forEach((t=>{if(t.disabled)e.opts.disable_terms.push(t.id)}))}e.included_terms=[];if(e.state.usecase){for(const s of t.terms){if(m(s,e.state.usecase).size){e.included_terms.push(s)}}}else{e.included_terms.push(...t.terms)}if(!(t.id in e.termsById)||!e.included_terms.length){s.style("display","none");return}if(e.loadingTermSet.has(t.id)){e.loadingTermSet.delete(t.id);s.select("."+A).remove()}const r=e.state.expandedTermIds;if(!r.includes(t.id)){s.style("display","none");if(i)i.text("+");return}s.style("display","block");if(i)i.text("-");const a=s.selectAll("."+T).data(e.included_terms,e.bindKey);a.exit().each(e.hideTerm);a.each(e.updateTerm);a.enter().append("div").each(e.addTerm);for(const i of t.terms){if(r.includes(i.id)){e.renderBranch(i,s.selectAll("."+w).filter((e=>e.id==i.id)),s.selectAll("."+C).filter((e=>e.id==i.id)))}}};e.hideTerm=function(s){if(s.id in e.termsById&&e.state.expandedTermIds.includes(s.id))return;t(this).style("display","none")};e.updateTerm=function(s){const i=t(this);if(!(s.id in e.termsById)){i.style("display","none");return}const r=e.opts.disable_terms?.includes(s.id);const a=m(s,e.state.usecase);i.style("display","");const o=e.state.expandedTermIds.includes(s.id);i.select("."+C).text(o?"-":"+");i.select("."+w).style("display",o?"block":"none");const l=e.state.selectedTerms.find((e=>e.name===s.name&&e.type===s.type));i.select("."+I).style("background-color",!a.has("plot")||r?"":l?"rgba(255, 194, 10,0.5)":"#cfe2f3");i.select("."+D).style("display",a.has("plot")&&l&&!r?"inline-block":"none")};e.addTerm=async function(s){const i=e.opts.disable_terms?.includes(s.id);const r=m(s,e.state.usecase);const a=t(this).attr("class",T).style("margin",s.isleaf?"":"2px").style("padding","0px 5px");if(r.has("branch")){a.append("div").attr("class","sja_menuoption "+C).style("display","inline-block").style("padding","4px 9px").style("font-family","courier").text("+").on("click",(t=>{t.stopPropagation();e.toggleBranch(s)}));if(e.expandAll)e.toggleBranch(s)}const o=e.state.selectedTerms.find((e=>e.name===s.name&&e.type===s.type));const l=a.append("div").attr("class",I).style("display","inline-block").style("padding","5px").style("opacity",i?.4:null).text(s.name);let n;if(s.hashtmldetail){n=a.append("div").style("display","inline-block")}if(r.size>0){if(i){l.attr("class","sja_tree_click_term_disabled "+I).style("padding","5px 8px").style("margin","1px 0px").style("opacity",.4)}else if(r.has("plot")){l.attr("class","ts_pill sja_filter_tag_btn sja_tree_click_term "+I).style("color","black").style("padding","5px 8px").style("border-radius","6px").style("background-color",o?"rgba(255, 194, 10,0.5)":"#cfe2f3").style("margin","1px 0px").style("cursor","default").on("click",(()=>e.clickTerm(s)))}if(s.samplecount!==undefined){a.append("div").style("font-size",".8em").style("display","inline-block").style("margin-left","5px").style("color",s.samplecount?"#777":"#ddd").text("n="+s.samplecount)}}if(s.hashtmldetail){v({vocabApi:e.app.vocabApi,icon_holder:n,content_holder:a.append("div"),id:s.id,state:{term:s}})}if(e.opts.submit_lst){a.append("div").attr("class",D).style("color","#008000").style("display",o?"inline-block":"none").html("✓")}if(!s.isleaf){a.append("div").attr("class",w).style("padding-left",g)}}}function V(e){e.toggleBranch=function(s){if(s.isleaf)return;const i=e.termsById[s.id];if(!i)throw"invalid term id";if(!i.terms){if(e.loadingTermSet.has(i.id))return;e.loadingTermSet.add(i.id);t(this.parentNode).selectAll("."+w).filter((e=>e.id===i.id)).style("display","block").append("div").text("Loading...").attr("class",A).style("opacity",.5).style("padding","5px")}const r=e.state.expandedTermIds.includes(s.id);const a=r?"tree_collapse":"tree_expand";e.app.dispatch({type:a,termId:s.id})};e.clickTerm=async t=>{if(e.opts.click_term2select_tvs){e.app.dispatch({type:"submenu_set",submenu:{term:t,type:"tvs"}});return}if(e.opts.click_term_wrapper){e.opts.click_term_wrapper(t);return}if(e.opts.submit_lst){const s=e.state.selectedTerms.findIndex((e=>e.name===t.name));if(s==-1){e.app.dispatch({type:"app_refresh",state:{selectedTerms:[...e.state.selectedTerms,t]}})}else{const t=e.state.selectedTerms.slice(0);t.splice(s,1);e.app.dispatch({type:"app_refresh",state:{selectedTerms:t}})}return}throw"missing term click callback"}}const N={header_mode:"search_only",activeCohort:0,tree:{usecase:{},expandedTermIds:[]},submenu:{},search:{isVisible:true},selectedTerms:[],termfilter:{filter:{type:"tvslst",in:true,join:"",lst:[]}}};class R{constructor(e){this.type="store";this.defaultState=N;s(this,e);this.prevGeneratedId=0}validateOpts(e){if(!e.state)throw".state{} missing";const t=e.state;if(t.vocab){if(t.vocab.dslabel){if(!t.vocab.genome)throw".state[.vocab].genome missing"}else if(t.vocab.genome){if(!t.vocab.dslabel)throw".state[.vocab].dslabel missing"}else{if(!Array.isArray(t.vocab.terms))throw"vocab.terms must be an array of objects"}}}validateState(){const e=this.state;if(e.tree.expandedTermIds.length==0){e.tree.expandedTermIds.push(_)}else{if(e.tree.expandedTermIds[0]!=_){e.tree.expandedTermIds.unshift(_)}}}async init(){this.state.termdbConfig=await this.app.vocabApi.getTermdbConfig();let e=h(this.state.termfilter.filter,"filterUiRoot");if(!e){this.state.termfilter.filter.tag="filterUiRoot";e=this.state.termfilter.filter}if(this.state.termdbConfig.selectCohort){let t=h(this.state.termfilter.filter,"cohortFilter");if(!t){t={tag:"cohortFilter",type:"tvs",tvs:{term:JSON.parse(JSON.stringify(this.state.termdbConfig.selectCohort.term)),values:this.state.activeCohort==-1?[]:this.state.termdbConfig.selectCohort.values[this.state.activeCohort].keys.map((e=>({key:e,label:e})))}};this.state.termfilter.filter={type:"tvslst",in:true,join:"and",lst:[t,e]}}else{const e=(e,t)=>e<t?-1:1;t.tvs.values.sort(((e,t)=>e.key<t.key?-1:1));const s=JSON.stringify(t.tvs.values.map((e=>e.key)).sort(e));const i=this.state.termdbConfig.selectCohort.values.findIndex((t=>s==JSON.stringify(t.keys.sort(e))));if(this.state.activeCohort!==-1&&this.state.activeCohort!==0&&i!==this.state.activeCohort){console.log("Warning: cohortFilter will override the state.activeCohort due to mismatch")}this.state.activeCohort=i}}else{this.state.activeCohort=-1;if(this.state.header_mode==="with_cohortHtmlSelect"){console.warn(`no termdbConfig.selectCohort to use for state.header_mode = 'with_cohortHtmlSelect'`);this.state.header_mode="search_only"}}}fromJson(e){const t=JSON.parse(e);return t}setId(e){e.$id=this.prevGeneratedId++;if(e.$lst){for(const t of e.$lst){this.setId(t)}}}}R.prototype.actions={app_refresh(e={}){this.state=this.copyMerge(this.toJson(this.state),e.state?e.state:{},this.replaceKeyVals)},cohort_set(e){this.state.activeCohort=e.activeCohort;const t=this.state.termdbConfig.selectCohort.values[e.activeCohort];const s=h(this.state.termfilter.filter,"cohortFilter");if(!s)throw`No item tagged with 'cohortFilter'`;s.tvs.values=t.keys.map((e=>({key:e,label:e})))},tree_expand(e){if(this.state.tree.expandedTermIds.includes(e.termId))return;this.state.tree.expandedTermIds.push(e.termId)},tree_collapse(e){const t=this.state.tree.expandedTermIds.indexOf(e.termId);if(t==-1)return;this.state.tree.expandedTermIds.splice(t,1)},filter_replace(e){const t=e.filter?e.filter:{type:"tvslst",join:"",in:1,lst:[]};if(!e.filter.tag){this.state.termfilter.filter=t}else{const s=h(this.state.termfilter.filter,e.filter.tag);if(!s)throw`cannot replace missing filter with tag '${e.filter.tag}'`;const i=u(this.state.termfilter.filter,s.$id);if(i==s){this.state.termfilter.filter=t}else{const e=i.lst.indexOf(s);i.lst[e]=t}}},submenu_set(e){const t=e.submenu&&e.submenu.term;if(!t){this.state.submenu={};this.state.tree.expandedTermIds=[_]}else{const s=[_];if(t.__ancestors){s.push(...t.__ancestors)}if(m(t).has("plot")){Object.assign(this.state.submenu,e.submenu)}else{s.push(t.id);delete this.state.submenu.term}this.state.tree.expandedTermIds=s}}};const O=i(R);class E{constructor(e){this.type="submenu";this.dom={holder:e.holder};q(this)}reactsTo(e){if(e.type.startsWith("submenu_"))return true;if(e.type=="app_refresh")return true}getState(e){return{type:e.submenu.type,term:e.submenu.term,termfilter:e.termfilter}}main(){if(!this.state.term){this.dom.holder.style("display","none");return}if(this.state.type=="tvs")this.showTvsMenu(this.state.term);else throw`unsupported submenu.type='${this.state.type}'`}}const z=e(E);function q(e){e.showTvsMenu=function(t){e.dom.holder.selectAll("*").remove();e.dom.holder.style("display","block").append("div").style("margin","20px").append("span").html("« Back to variable selection").attr("class","sja_clbtext").on("click",(()=>e.app.dispatch({type:"submenu_set",submenu:{}})));f({term:t,filter:e.state.termfilter.filter,holder:e.dom.holder.append("div"),vocabApi:e.app.vocabApi,debug:e.app.debug,getCategoriesArguments:e.app.opts.getCategoriesArguments,callback:e.app.opts.tree.click_term2select_tvs})}}class K{constructor(e){this.type="search";this.customEvents=["postSearch"];W(this);$(this);this.dom={holder:e.holder};this.isVisible="isVisible"in e?e.isVisible:true}async init(e){this.initUI(this.getState(e))}reactsTo(e){if(e.type=="app_refresh")return true;const t=e.type.split("_")[0];return["search","cohort","submenu"].includes(t)}getState(e){return{isVisible:!e.submenu.term&&this.isVisible,cohortStr:e.activeCohort==-1||!e.termdbConfig.selectCohort?"":e.termdbConfig.selectCohort.values[e.activeCohort].keys.slice().sort().join(","),allowedTermTypes:e.termdbConfig.allowedTermTypes||[],expandedTermIds:e.tree.expandedTermIds,selectedTerms:e.selectedTerms,usecase:e.tree.usecase,search:e.search,isGeneSetTermdb:e.termdbConfig.isGeneSetTermdb}}async main(){this.dom.holder.style("display",this.state.isVisible?"block":"none");this.renderSelectedNonDictTerms()}async doSearch(e,t){if(!e){this.clear();this.bus.emit("postSearch",[]);return}const s=await this.app.vocabApi.findTerm(e,this.state.cohortStr,this.state.usecase,t);this.currData=s;if(!s.lst||s.lst.length==0){this.noResult()}else{this.showTerms(s)}this.bus.emit("postSearch",s)}}const P=e(K);function W(e){e.initUI=t=>{e.dom.holder.style("display",e.search&&e.search.isVisible==false?"none":"block");e.dom.input=e.dom.holder.style("text-align","left").append("input").attr("type","search").attr("class","tree_search").attr("placeholder","Search"+e.getPrompt(t)).style("width","220px").style("margin","10px").style("display","block").on("input",r.debounce(e.onInput,300)).on("keyup",e.onKeyup);if(e.opts.focus!="off")e.dom.input.node().focus();e.dom.resultDiv=(e.opts.resultsHolder||e.dom.holder).append("div").style("display","none").style("grid-template-columns","auto auto");const s=e.dom.resultDiv.append("div");const i=e.dom.resultDiv.append("div");e.dom.resultDiv_genes=s.append("div").style("border-left","solid 1px rgb(133,182,225)").style("margin","0px 0px 10px 10px").style("padding-left","5px");e.dom.resultDiv_terms=i.append("div").style("border-left",e.opts.resultsHolder?"":"solid 1px rgb(133,182,225)").style("margin","0px 0px 10px 10px").style("padding-left","5px");e.dom.nonDictDiv=e.dom.holder.append("div").style("margin","0px 0px 10px 10px").style("display","none");e.dom.nonDictDiv.append("div").style("font-weight",600).html("Selected genes");e.dom.selectedNonDictDiv=e.dom.nonDictDiv.append("div")};e.getPrompt=e=>{const t=e.allowedTermTypes.includes("geneVariant")&&m({type:"geneVariant"},e.usecase).has("plot");if(t)return" variables or genes";if(e.isGeneSetTermdb)return" gene sets";return" variables"};e.noResult=()=>{e.clear();e.dom.resultDiv.style("display","inline-grid");e.dom.resultDiv_terms.append("div").style("padding","3px 3px 3px 0px").style("opacity",.5).text("No match"+(e.app.vocabApi.termdbConfig?.queries?.snvindel?.allowSNPs?". Press ENTER to search SNP":""))};e.showTerms=t=>{if(e.opts.disable_terms){t.lst.forEach((t=>{if(t.disabled)e.opts.disable_terms.push(t.id)}))}e.clear();e.dom.resultDiv.style("display","inline-grid");const s=[],i=[];for(const e of t.lst){if(e.type=="geneVariant"){s.push(e)}else{i.push(e)}}if(s.length){e.dom.resultDiv_genes.append("table").selectAll().data(s).enter().append("tr").each(e.showTerm)}if(i.length){e.dom.resultDiv_terms.append("table").selectAll().data(i).enter().append("tr").each(e.showTerm)}e.focusableResults=[...e.dom.resultDiv.node().querySelectorAll(".sja_tree_click_term, .sja_menuoption")]};e.showTerm=function(s){const i=t(this);const r=i.append("td").text(s.name);const a=m(s,e.state.usecase);if((e.opts.click_term||e.app.opts?.tree?.click_term_wrapper)&&a.has("plot")){if("id"in s&&e.opts.disable_terms?.includes(s.id)){r.attr("class","sja_tree_click_term_disabled").style("display","block").style("padding","5px 8px").style("margin","1px 0px").style("opacity",.4)}else{r.attr("class","ts_pill sja_filter_tag_btn sja_tree_click_term").attr("tabindex",0).style("display","block").style("color","black").style("padding","5px 8px").style("border-radius","6px").style("background-color",s.type=="geneVariant"?"rgba(251,171,96,0.5)":"#cfe2f3").style("margin","1px 0px").style("cursor","default").on("click",(()=>{if(e.opts.click_term){e.opts.click_term(s)}else{e.app.opts.tree.click_term_wrapper(s)}e.clear();e.dom.input.property("value","")})).on("keyup",e.navInputValueByKeyboard)}if(s.samplecount!==undefined){i.append("td").append("div").style("font-size",".8em").style("display","inline-block").style("margin-left","5px").style("color",s.samplecount?"#777":"#ddd").text("n="+s.samplecount)}}else{r.attr("class","sja_menuoption").attr("tabindex",0).on("click",(()=>{e.clear();e.dom.input.property("value","");const t=[_];if(s.type=="geneVariant"&&e.opts.handleGeneVariant){e.opts.handleGeneVariant(s)}else if(y.has(s.type)){e.app.dispatch({type:"app_refresh",state:{selectedTerms:[...e.state.selectedTerms,s]}})}else{if(s.__ancestors){t.push(...s.__ancestors)}if(!e.app.vocabApi.graphable(s))t.push(s.id);e.app.dispatch({type:"app_refresh",state:{tree:{expandedTermIds:t}}})}})).on("keyup",e.navInputValueByKeyboard)}i.append("td").text(s.type=="geneVariant"?"gene variant":(s.__ancestorNames||[]).join(" > ")).style("opacity",.5).style("font-size",".7em")};e.clear=()=>{e.dom.resultDiv_genes.selectAll("*").remove();e.dom.resultDiv_terms.selectAll("*").remove();e.dom.resultDiv.style("display","none")};e.renderSelectedNonDictTerms=function(){const t=e.state.selectedTerms.filter((e=>y.has(e.type)));e.dom.nonDictDiv.style("display",t.length?"":"none");const s=e.dom.selectedNonDictDiv.selectAll("div").data(t,(e=>e.name));s.exit().remove();s.enter().append("div").style("display","inline-block").style("margin","1px").style("padding","5px 8px").style("background-color","rgba(255, 194, 10,0.5)").style("border-radius","6px").html((e=>e.name))}}function $(e){e.onKeyup=t=>{if(t.key=="ArrowDown"&&e.currData?.lst?.length){e.dom.resultDiv.select(".sja_tree_click_term, .sja_menuoption").node().focus();return}if(!a(t))return;if(!e.app.vocabApi.termdbConfig?.queries?.snvindel?.allowSNPs)return;e.onInput(t,"snp")};e.onInput=async(t,s)=>{const i=e.dom.input.property("value");try{await e.doSearch(i,s)}catch(t){e.clear();e.dom.resultDiv.style("display","inline-grid");o(e.dom.resultDiv_terms,"Error: "+(t.message||t));if(t.stack)console.log(t.stack)}};e.navInputValueByKeyboard=t=>{if(t.key=="Enter")t.target.click();else if(t.key.startsWith("Arrow")){const s=e.focusableResults.findIndex((e=>e===t.target));if(t.key=="ArrowDown"){if(s<e.focusableResults.length-1)e.focusableResults[s+1].focus();else e.focusableResults[0].focus()}else if(t.key=="ArrowUp"){if(s!=0)e.focusableResults[s-1].focus();else e.focusableResults[e.focusableResults.length-1].focus()}}}}class G{constructor(e){this.type="app";if(!e.holder)t("body").append("div");const s=e.holder.append("div").style("display",e.tree?.submit_lst?"":"none").style("text-align","center").style("margin","10px 5px");const i=s.append("button").property("disabled",true).text(this.noSelectionPrompt).on("click",(()=>this.opts.tree?.submit_lst(this.state.selectedTerms)));const r=e.holder.append("div");this.dom={holder:e.holder,treeDiv:e.holder.append("div"),customTermDiv:e.holder.append("div").style("margin","10px"),submitDiv:s,submitBtn:i,topbar:r,searchDiv:r.append("div").style("display","inline-block"),filterDiv:r.append("div").style("display","none"),errdiv:e.holder.append("div"),tip:new n({padding:"5px"})}}validateOpts(e){if(e.vocabApi);else if(e.state&&e.state.vocab){if(typeof e.state.vocab!="object")throw"opts.state.vocab{} is not an object"}else if(e.state&&e.state.genome){const t=e.state;if(!t.vocab)t.vocab={};t.vocab.genome=t.genome;delete t.genome;if(t.dslabel){t.vocab.dslabel=t.dslabel;delete t.dslabel}}else{throw"neither state.vocab{} or opts.vocabApi provided"}if(e.tree){if(e.tree.disable_terms&&!e.tree.click_term&&!e.tree.click_term2select_tvs&&(!e.barchart||!e.barchart.bar_click_override)){throw`opts.tree.disable_terms is used only when opts.tree.click_term, opts.tree.click_term2select_tvs, or opts.barchart.bar_click_override is set`}if(!e.search)e.search={};if(e.tree.click_term2select_tvs){e.search.click_term=e=>this.api.dispatch({type:"submenu_set",submenu:{term:e,type:"tvs"}})}if(e.tree.click_term){e.tree.click_term_wrapper=async t=>{if(this.state.termdbConfig.termMatch2geneSet){const e=await d("termdb",{body:{genome:this.state.vocab.genome,dslabel:this.state.vocab.dslabel,genesetByTermId:t.id}});t._geneset=e}e.tree.click_term(t)}}if(e.tree.disable_terms)e.search.disable_terms=e.tree.disable_terms}return e}async preApiFreeze(e){try{if(this.opts.vocabApi){e.vocabApi=this.opts.vocabApi}else{const t={vocab:this.opts.state.vocab||{genome:this.opts.state.genome,dslabel:this.opts.state.dslabel}};e.vocabApi=await b({app:this.api,state:t,fetchOpts:this.opts.fetchOpts})}e.appInit=J}catch(e){console.log(e);throw e}}async init(){try{this.store=await O({app:this.api,state:this.opts.state});this.state=await this.store.copyState();await this.setComponents();await this.api.dispatch()}catch(e){this.printError(e)}}async setComponents(){try{const e=this.state.nav?.header_mode;const t={search:P({app:this.api,holder:this.dom.searchDiv,isVisible:e!=="hide_search"}),tree:j({app:this.api,holder:this.dom.treeDiv,headerDiv:this.dom.headerDiv,expandAll:e=="hide_search"})};if(this.opts.tree&&this.opts.tree.click_term2select_tvs){t.submenu=z({app:this.api,holder:this.dom.holder.append("div").style("display","none")})}this.components=await c(t)}catch(e){throw e}}async main(){this.api.vocabApi.main();const e=this.state.selectedTerms.length;this.dom.submitBtn.property("disabled",!e).text(!e?"Search or click term(s)":`Submit ${e} term${e>1?"s":""}`);await this.mayShowCustomTerms();this.dom.holder.selectAll("search, .termbtn, button").attr("tabindex",0);this.dom.holder.selectAll(".termbtn").on("keyup",(e=>{if(e.key=="Enter")e.target.click()}))}printError(e){o(this.dom.errdiv,"Error: "+(e.message||e));if(e.stack)console.log(e.stack)}async mayShowCustomTerms(){if(Object.keys(this.state.submenu).length)return this.dom.customTermDiv.style("display","none");const e=await this.api.vocabApi.getCustomTerms();if(!Array.isArray(e)||e.length==0)return this.dom.customTermDiv.style("display","none");const t=[];for(const s of e){const e=m(s.term,this.state.tree.usecase);if(e.has("plot"))t.push(s)}if(t.length==0)return this.dom.customTermDiv.style("display","none");this.dom.customTermDiv.selectAll("*").remove();this.dom.customTermDiv.append("div").text("CUSTOM VARIABLES").style("font-size",".7em");for(const e of t){this.dom.customTermDiv.append("div").style("margin-bottom","3px").append("div").text(e.term.name).attr("class","sja_filter_tag_btn").style("padding","3px 6px").style("border-radius","6px").on("click",(()=>{if(!this.opts.tree)return;if(this.opts.tree.click_term){this.opts.tree.click_term(e);return}if(this.opts.tree.click_term2select_tvs){this.api.dispatch({type:"submenu_set",submenu:{term:e.term,type:"tvs"}});return}}))}}}const J=l(G);export{J as appInit};
|