@jbrowse/plugin-variants 3.2.0 → 3.4.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/LinearVariantDisplay/model.d.ts +1 -1
- package/dist/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +3 -3
- package/dist/MultiLinearVariantDisplay/index.js +1 -1
- package/dist/MultiLinearVariantDisplay/model.d.ts +40 -4
- package/dist/MultiLinearVariantDisplay/model.js +0 -1
- package/dist/MultiLinearVariantDisplay/renderSvg.js +2 -2
- package/dist/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +15 -5
- package/dist/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +3 -3
- package/dist/MultiLinearVariantMatrixDisplay/index.js +1 -1
- package/dist/MultiLinearVariantMatrixDisplay/model.d.ts +40 -3
- package/dist/MultiLinearVariantMatrixDisplay/model.js +1 -0
- package/dist/MultiLinearVariantMatrixDisplay/renderSvg.js +2 -2
- package/dist/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.d.ts → MultiLinearVariantMatrixRenderer.d.ts} +14 -11
- package/dist/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.js → MultiLinearVariantMatrixRenderer.js} +3 -3
- package/dist/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.d.ts +8 -0
- package/dist/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.js +41 -0
- package/dist/MultiLinearVariantMatrixRenderer/index.js +4 -4
- package/dist/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +3 -3
- package/dist/MultiLinearVariantMatrixRenderer/makeImageData.js +71 -17
- package/dist/MultiLinearVariantMatrixRenderer/types.d.ts +2 -4
- package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +34 -5
- package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.js +13 -7
- package/dist/MultiLinearVariantRenderer/components/{MultiVariantRendering.d.ts → MultiLinearVariantRendering.d.ts} +10 -4
- package/dist/MultiLinearVariantRenderer/{MultiVariantRendering.js → components/MultiLinearVariantRendering.js} +25 -7
- package/dist/MultiLinearVariantRenderer/components/util.d.ts +1 -0
- package/dist/MultiLinearVariantRenderer/components/util.js +15 -0
- package/dist/MultiLinearVariantRenderer/index.js +2 -2
- package/dist/MultiLinearVariantRenderer/makeImageData.d.ts +9 -0
- package/dist/MultiLinearVariantRenderer/makeImageData.js +104 -41
- package/dist/MultiLinearVariantRenderer/types.d.ts +2 -0
- package/dist/MultiVariantBaseRenderer.d.ts +4 -4
- package/dist/SplitVcfTabixAdapter/SplitVcfTabixAdapter.d.ts +0 -1
- package/dist/SplitVcfTabixAdapter/SplitVcfTabixAdapter.js +0 -1
- package/dist/SplitVcfTabixAdapter/configSchema.js +4 -2
- package/dist/VariantFeatureWidget/AltFormatter.d.ts +4 -0
- package/dist/VariantFeatureWidget/AltFormatter.js +13 -0
- package/dist/VariantFeatureWidget/Checkbox2.js +1 -8
- package/dist/VariantFeatureWidget/Formatter.d.ts +3 -0
- package/dist/VariantFeatureWidget/Formatter.js +23 -0
- package/dist/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.js → VariantConsequence/VariantConsequenceDataGridWrapper.js} +3 -5
- package/dist/VariantFeatureWidget/VariantFeatureWidget.js +16 -6
- package/dist/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.d.ts +4 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.js +80 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.d.ts +3 -9
- package/dist/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.js +41 -20
- package/dist/VariantFeatureWidget/VariantSampleGrid/types.d.ts +21 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid/util.d.ts +1 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid/util.js +14 -0
- package/dist/VariantFeatureWidget/stateModelFactory.d.ts +9 -6
- package/dist/VariantRPC/MultiVariantClusterGenotypeMatrix.d.ts +2 -16
- package/dist/VariantRPC/MultiVariantClusterGenotypeMatrix.js +4 -7
- package/dist/VariantRPC/MultiVariantGetGenotypeMatrix.d.ts +2 -15
- package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +3 -13
- package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.js +14 -8
- package/dist/VariantRPC/getGenotypeMatrix.js +20 -7
- package/dist/VariantRPC/types.d.ts +23 -0
- package/dist/VcfAdapter/VcfAdapter.d.ts +0 -1
- package/dist/VcfAdapter/VcfAdapter.js +0 -1
- package/dist/VcfFeature/index.js +0 -1
- package/dist/VcfFeature/util.d.ts +2 -0
- package/dist/VcfFeature/util.js +123 -25
- package/dist/VcfTabixAdapter/VcfTabixAdapter.d.ts +0 -1
- package/dist/VcfTabixAdapter/VcfTabixAdapter.js +12 -8
- package/dist/getMultiVariantFeaturesAutorun.d.ts +2 -0
- package/dist/getMultiVariantFeaturesAutorun.js +9 -2
- package/dist/getMultiVariantSourcesAutorun.js +3 -2
- package/dist/shared/MultiVariantBaseModel.d.ts +41 -4
- package/dist/shared/MultiVariantBaseModel.js +69 -3
- package/dist/shared/SharedVariantMixin.d.ts +1 -1
- package/dist/shared/components/AddFiltersDialog.d.ts +9 -0
- package/dist/shared/components/AddFiltersDialog.js +61 -0
- package/dist/shared/components/MultiVariantBaseDisplayComponent.d.ts +5 -0
- package/dist/shared/components/MultiVariantBaseDisplayComponent.js +29 -0
- package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.js +2 -2
- package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.js +8 -3
- package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.js +29 -28
- package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/types.d.ts +1 -0
- package/dist/shared/components/MultiVariantClusterDialog/types.js +2 -0
- package/{esm/shared/components/ColorLegend.d.ts → dist/shared/components/MultiVariantColorLegend.d.ts} +2 -2
- package/dist/shared/components/{ColorLegend.js → MultiVariantColorLegend.js} +5 -3
- package/dist/shared/components/MultiVariantCrosshairs.d.ts +7 -0
- package/dist/shared/components/MultiVariantCrosshairs.js +40 -0
- package/dist/shared/components/MultiVariantLegendBar.d.ts +7 -0
- package/dist/shared/components/{LegendBar.js → MultiVariantLegendBar.js} +2 -2
- package/dist/shared/components/MultiVariantTooltip.d.ts +4 -0
- package/dist/shared/components/MultiVariantTooltip.js +3 -2
- package/dist/shared/components/RectBg.js +4 -2
- package/dist/shared/components/SetColorDialog.js +1 -1
- package/dist/shared/components/SourcesDataGrid.d.ts +2 -1
- package/dist/shared/components/SourcesDataGrid.js +40 -47
- package/dist/shared/components/SourcesGrid.js +1 -1
- package/dist/shared/components/SourcesGridHeader.d.ts +2 -1
- package/dist/shared/drawAlleleCount.d.ts +2 -1
- package/dist/shared/drawAlleleCount.js +26 -24
- package/dist/shared/drawPhased.d.ts +1 -1
- package/dist/shared/drawPhased.js +14 -10
- package/dist/shared/minorAlleleFrequencyUtils.d.ts +9 -4
- package/dist/shared/minorAlleleFrequencyUtils.js +19 -14
- package/dist/shared/sourcesGridUtils.d.ts +3 -2
- package/esm/LinearVariantDisplay/model.d.ts +1 -1
- package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +2 -2
- package/esm/MultiLinearVariantDisplay/index.js +1 -1
- package/esm/MultiLinearVariantDisplay/model.d.ts +40 -4
- package/esm/MultiLinearVariantDisplay/model.js +0 -1
- package/esm/MultiLinearVariantDisplay/renderSvg.js +1 -1
- package/esm/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +15 -8
- package/esm/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +2 -2
- package/esm/MultiLinearVariantMatrixDisplay/index.js +1 -1
- package/esm/MultiLinearVariantMatrixDisplay/model.d.ts +40 -3
- package/esm/MultiLinearVariantMatrixDisplay/model.js +1 -0
- package/esm/MultiLinearVariantMatrixDisplay/renderSvg.js +1 -1
- package/esm/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.d.ts → MultiLinearVariantMatrixRenderer.d.ts} +14 -11
- package/esm/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.js → MultiLinearVariantMatrixRenderer.js} +3 -3
- package/esm/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.d.ts +8 -0
- package/esm/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.js +39 -0
- package/esm/MultiLinearVariantMatrixRenderer/index.js +4 -4
- package/esm/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +3 -3
- package/esm/MultiLinearVariantMatrixRenderer/makeImageData.js +73 -19
- package/esm/MultiLinearVariantMatrixRenderer/types.d.ts +2 -4
- package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +34 -5
- package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.js +13 -7
- package/esm/MultiLinearVariantRenderer/components/{MultiVariantRendering.d.ts → MultiLinearVariantRendering.d.ts} +10 -4
- package/esm/MultiLinearVariantRenderer/components/{MultiVariantRendering.js → MultiLinearVariantRendering.js} +25 -7
- package/esm/MultiLinearVariantRenderer/components/util.d.ts +1 -0
- package/esm/MultiLinearVariantRenderer/components/util.js +12 -0
- package/esm/MultiLinearVariantRenderer/index.js +1 -1
- package/esm/MultiLinearVariantRenderer/makeImageData.d.ts +9 -0
- package/esm/MultiLinearVariantRenderer/makeImageData.js +106 -43
- package/esm/MultiLinearVariantRenderer/types.d.ts +2 -0
- package/esm/MultiVariantBaseRenderer.d.ts +4 -4
- package/esm/SplitVcfTabixAdapter/SplitVcfTabixAdapter.d.ts +0 -1
- package/esm/SplitVcfTabixAdapter/SplitVcfTabixAdapter.js +0 -1
- package/esm/SplitVcfTabixAdapter/configSchema.js +4 -2
- package/esm/VariantFeatureWidget/AltFormatter.d.ts +4 -0
- package/esm/VariantFeatureWidget/AltFormatter.js +10 -0
- package/esm/VariantFeatureWidget/Checkbox2.js +2 -9
- package/esm/VariantFeatureWidget/Formatter.d.ts +3 -0
- package/esm/VariantFeatureWidget/Formatter.js +17 -0
- package/esm/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.js → VariantConsequence/VariantConsequenceDataGridWrapper.js} +4 -6
- package/esm/VariantFeatureWidget/VariantFeatureWidget.js +16 -6
- package/esm/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.d.ts +4 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.js +74 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.d.ts +3 -9
- package/esm/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.js +43 -22
- package/esm/VariantFeatureWidget/VariantSampleGrid/types.d.ts +21 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid/util.d.ts +1 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid/util.js +11 -0
- package/esm/VariantFeatureWidget/stateModelFactory.d.ts +9 -6
- package/esm/VariantRPC/MultiVariantClusterGenotypeMatrix.d.ts +2 -16
- package/esm/VariantRPC/MultiVariantClusterGenotypeMatrix.js +4 -7
- package/esm/VariantRPC/MultiVariantGetGenotypeMatrix.d.ts +2 -15
- package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +3 -13
- package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.js +14 -8
- package/esm/VariantRPC/getGenotypeMatrix.js +20 -7
- package/esm/VariantRPC/types.d.ts +23 -0
- package/esm/VcfAdapter/VcfAdapter.d.ts +0 -1
- package/esm/VcfAdapter/VcfAdapter.js +0 -1
- package/esm/VcfFeature/index.js +0 -1
- package/esm/VcfFeature/util.d.ts +2 -0
- package/esm/VcfFeature/util.js +121 -25
- package/esm/VcfTabixAdapter/VcfTabixAdapter.d.ts +0 -1
- package/esm/VcfTabixAdapter/VcfTabixAdapter.js +13 -9
- package/esm/getMultiVariantFeaturesAutorun.d.ts +2 -0
- package/esm/getMultiVariantFeaturesAutorun.js +9 -2
- package/esm/getMultiVariantSourcesAutorun.js +3 -2
- package/esm/shared/MultiVariantBaseModel.d.ts +41 -4
- package/esm/shared/MultiVariantBaseModel.js +71 -5
- package/esm/shared/SharedVariantMixin.d.ts +1 -1
- package/esm/shared/components/AddFiltersDialog.d.ts +9 -0
- package/esm/shared/components/AddFiltersDialog.js +59 -0
- package/esm/shared/components/MultiVariantBaseDisplayComponent.d.ts +5 -0
- package/esm/shared/components/MultiVariantBaseDisplayComponent.js +24 -0
- package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.js +2 -2
- package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.js +9 -4
- package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.js +29 -28
- package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/types.d.ts +1 -0
- package/esm/shared/components/MultiVariantClusterDialog/types.js +1 -0
- package/{dist/shared/components/ColorLegend.d.ts → esm/shared/components/MultiVariantColorLegend.d.ts} +2 -2
- package/esm/shared/components/{ColorLegend.js → MultiVariantColorLegend.js} +6 -4
- package/esm/shared/components/MultiVariantCrosshairs.d.ts +7 -0
- package/esm/shared/components/MultiVariantCrosshairs.js +35 -0
- package/esm/shared/components/MultiVariantLegendBar.d.ts +7 -0
- package/esm/shared/components/{LegendBar.js → MultiVariantLegendBar.js} +1 -1
- package/esm/shared/components/MultiVariantTooltip.d.ts +4 -0
- package/esm/shared/components/MultiVariantTooltip.js +3 -2
- package/esm/shared/components/RectBg.js +4 -2
- package/esm/shared/components/SetColorDialog.js +1 -1
- package/esm/shared/components/SourcesDataGrid.d.ts +2 -1
- package/esm/shared/components/SourcesDataGrid.js +40 -47
- package/esm/shared/components/SourcesGrid.js +1 -1
- package/esm/shared/components/SourcesGridHeader.d.ts +2 -1
- package/esm/shared/drawAlleleCount.d.ts +2 -1
- package/esm/shared/drawAlleleCount.js +25 -24
- package/esm/shared/drawPhased.d.ts +1 -1
- package/esm/shared/drawPhased.js +14 -10
- package/esm/shared/minorAlleleFrequencyUtils.d.ts +9 -4
- package/esm/shared/minorAlleleFrequencyUtils.js +20 -15
- package/esm/shared/sourcesGridUtils.d.ts +3 -2
- package/package.json +12 -11
- package/dist/MultiLinearVariantDisplay/components/Crosshair.d.ts +0 -7
- package/dist/MultiLinearVariantDisplay/components/Crosshair.js +0 -35
- package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +0 -7
- package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.js +0 -28
- package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +0 -7
- package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +0 -38
- package/dist/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +0 -22
- package/dist/MultiLinearVariantRenderer/components/MultiVariantRendering.js +0 -52
- package/dist/VariantFeatureWidget/VariantConsequencePanel.d.ts +0 -5
- package/dist/VariantFeatureWidget/VariantConsequencePanel.js +0 -15
- package/dist/VariantRPC/cluster.d.ts +0 -17
- package/dist/VariantRPC/cluster.js +0 -84
- package/dist/shared/components/LegendBar.d.ts +0 -18
- package/esm/MultiLinearVariantDisplay/components/Crosshair.d.ts +0 -7
- package/esm/MultiLinearVariantDisplay/components/Crosshair.js +0 -30
- package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +0 -7
- package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.js +0 -23
- package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +0 -7
- package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +0 -36
- package/esm/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +0 -22
- package/esm/MultiLinearVariantRenderer/MultiVariantRendering.js +0 -47
- package/esm/VariantFeatureWidget/VariantConsequencePanel.d.ts +0 -5
- package/esm/VariantFeatureWidget/VariantConsequencePanel.js +0 -9
- package/esm/VariantRPC/cluster.d.ts +0 -17
- package/esm/VariantRPC/cluster.js +0 -79
- package/esm/shared/components/LegendBar.d.ts +0 -18
- /package/dist/VariantFeatureWidget/{VariantConsequenceDataGrid.d.ts → VariantConsequence/VariantConsequenceDataGrid.d.ts} +0 -0
- /package/dist/VariantFeatureWidget/{VariantConsequenceDataGrid.js → VariantConsequence/VariantConsequenceDataGrid.js} +0 -0
- /package/dist/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.d.ts → VariantConsequence/VariantConsequenceDataGridWrapper.d.ts} +0 -0
- /package/dist/{shared/components/ClusterDialog → VariantFeatureWidget/VariantSampleGrid}/types.js +0 -0
- /package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.d.ts +0 -0
- /package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.d.ts +0 -0
- /package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.d.ts +0 -0
- /package/esm/VariantFeatureWidget/{VariantConsequenceDataGrid.d.ts → VariantConsequence/VariantConsequenceDataGrid.d.ts} +0 -0
- /package/esm/VariantFeatureWidget/{VariantConsequenceDataGrid.js → VariantConsequence/VariantConsequenceDataGrid.js} +0 -0
- /package/esm/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.d.ts → VariantConsequence/VariantConsequenceDataGridWrapper.d.ts} +0 -0
- /package/esm/{shared/components/ClusterDialog → VariantFeatureWidget/VariantSampleGrid}/types.js +0 -0
- /package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.d.ts +0 -0
- /package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.d.ts +0 -0
- /package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.d.ts +0 -0
|
@@ -1,27 +1,40 @@
|
|
|
1
1
|
import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
|
|
2
|
+
import { forEachWithStopTokenCheck } from '@jbrowse/core/util';
|
|
2
3
|
import { firstValueFrom, toArray } from 'rxjs';
|
|
3
4
|
import { getFeaturesThatPassMinorAlleleFrequencyFilter } from '../shared/minorAlleleFrequencyUtils';
|
|
4
5
|
export async function getGenotypeMatrix({ pluginManager, args, }) {
|
|
5
|
-
const { sources, minorAlleleFrequencyFilter, regions, adapterConfig, sessionId, } = args;
|
|
6
|
+
const { sources, minorAlleleFrequencyFilter, regions, adapterConfig, sessionId, lengthCutoffFilter, stopToken, } = args;
|
|
6
7
|
const adapter = await getAdapter(pluginManager, sessionId, adapterConfig);
|
|
7
8
|
const dataAdapter = adapter.dataAdapter;
|
|
8
|
-
const feats = await firstValueFrom(dataAdapter.getFeaturesInMultipleRegions(regions, args).pipe(toArray()));
|
|
9
9
|
const genotypeFactor = new Set();
|
|
10
|
-
const mafs = getFeaturesThatPassMinorAlleleFrequencyFilter(
|
|
10
|
+
const mafs = getFeaturesThatPassMinorAlleleFrequencyFilter({
|
|
11
|
+
minorAlleleFrequencyFilter,
|
|
12
|
+
lengthCutoffFilter,
|
|
13
|
+
stopToken,
|
|
14
|
+
features: await firstValueFrom(dataAdapter.getFeaturesInMultipleRegions(regions, args).pipe(toArray())),
|
|
15
|
+
});
|
|
11
16
|
for (const { alleleCounts } of mafs) {
|
|
12
|
-
for (const alt of
|
|
17
|
+
for (const alt of Object.keys(alleleCounts)) {
|
|
13
18
|
genotypeFactor.add(alt);
|
|
14
19
|
}
|
|
15
20
|
}
|
|
16
21
|
const rows = {};
|
|
17
|
-
|
|
22
|
+
const cacheSplit = {};
|
|
23
|
+
forEachWithStopTokenCheck(mafs, stopToken, ({ feature }) => {
|
|
18
24
|
const genotypes = feature.get('genotypes');
|
|
19
25
|
for (const { name } of sources) {
|
|
20
26
|
if (!rows[name]) {
|
|
21
27
|
rows[name] = [];
|
|
22
28
|
}
|
|
23
29
|
const val = genotypes[name];
|
|
24
|
-
|
|
30
|
+
let alleles;
|
|
31
|
+
if (cacheSplit[val]) {
|
|
32
|
+
alleles = cacheSplit[val];
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
alleles = val.split(/[/|]/);
|
|
36
|
+
cacheSplit[val] = alleles;
|
|
37
|
+
}
|
|
25
38
|
let genotypeStatus = 0;
|
|
26
39
|
let nonRefCount = 0;
|
|
27
40
|
let uncalledCount = 0;
|
|
@@ -47,6 +60,6 @@ export async function getGenotypeMatrix({ pluginManager, args, }) {
|
|
|
47
60
|
}
|
|
48
61
|
rows[name].push(genotypeStatus);
|
|
49
62
|
}
|
|
50
|
-
}
|
|
63
|
+
});
|
|
51
64
|
return rows;
|
|
52
65
|
}
|
|
@@ -10,4 +10,27 @@ export interface GetGenotypeMatrixArgs {
|
|
|
10
10
|
headers?: Record<string, string>;
|
|
11
11
|
regions: Region[];
|
|
12
12
|
bpPerPx: number;
|
|
13
|
+
lengthCutoffFilter: number;
|
|
14
|
+
}
|
|
15
|
+
export interface GetSimplifiedFeaturesArgs {
|
|
16
|
+
adapterConfig: AnyConfigurationModel;
|
|
17
|
+
stopToken?: string;
|
|
18
|
+
sessionId: string;
|
|
19
|
+
headers?: Record<string, string>;
|
|
20
|
+
regions: Region[];
|
|
21
|
+
bpPerPx: number;
|
|
22
|
+
minorAlleleFrequencyFilter: number;
|
|
23
|
+
lengthCutoffFilter: number;
|
|
24
|
+
}
|
|
25
|
+
export interface ClusterGenotypeMatrixArgs {
|
|
26
|
+
adapterConfig: AnyConfigurationModel;
|
|
27
|
+
stopToken?: string;
|
|
28
|
+
statusCallback: (arg: string) => void;
|
|
29
|
+
sessionId: string;
|
|
30
|
+
headers?: Record<string, string>;
|
|
31
|
+
regions: Region[];
|
|
32
|
+
bpPerPx: number;
|
|
33
|
+
sources: Source[];
|
|
34
|
+
minorAlleleFrequencyFilter: number;
|
|
35
|
+
lengthCutoffFilter: number;
|
|
13
36
|
}
|
package/esm/VcfFeature/index.js
CHANGED
package/esm/VcfFeature/util.d.ts
CHANGED
|
@@ -2,3 +2,5 @@ import type VCF from '@gmod/vcf';
|
|
|
2
2
|
export declare function getSOTermAndDescription(ref: string, alt: string[] | undefined, parser: VCF): string[];
|
|
3
3
|
export declare function getSOAndDescFromAltDefs(alt: string, parser: VCF): string[];
|
|
4
4
|
export declare function getSOAndDescByExamination(ref: string, alt: string): string[];
|
|
5
|
+
export declare function getMinimalDesc(ref: string, alt: string): string;
|
|
6
|
+
export declare function makeSimpleAltString(genotype: string, ref: string, alt: string[]): string;
|
package/esm/VcfFeature/util.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { parseBreakend } from '@gmod/vcf';
|
|
2
|
+
import { getBpDisplayStr } from '@jbrowse/core/util';
|
|
2
3
|
const altTypeToSO = {
|
|
3
4
|
DEL: 'deletion',
|
|
4
5
|
INS: 'insertion',
|
|
@@ -62,63 +63,158 @@ export function getSOAndDescFromAltDefs(alt, parser) {
|
|
|
62
63
|
return [soTerm, alt];
|
|
63
64
|
}
|
|
64
65
|
const modAlt = alt.split(':');
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
return [];
|
|
66
|
+
return modAlt.length > 1
|
|
67
|
+
? getSOAndDescFromAltDefs(`<${modAlt.slice(0, -1).join(':')}>`, parser)
|
|
68
|
+
: [];
|
|
69
69
|
}
|
|
70
70
|
export function getSOAndDescByExamination(ref, alt) {
|
|
71
71
|
const bnd = parseBreakend(alt);
|
|
72
72
|
if (bnd) {
|
|
73
73
|
return ['breakend', alt];
|
|
74
74
|
}
|
|
75
|
-
if (ref.length === 1 && alt.length === 1) {
|
|
75
|
+
else if (ref.length === 1 && alt.length === 1) {
|
|
76
76
|
return ['SNV', makeDescriptionString('SNV', ref, alt)];
|
|
77
77
|
}
|
|
78
|
-
if (alt === '<INS>') {
|
|
78
|
+
else if (alt === '<INS>') {
|
|
79
79
|
return ['insertion', alt];
|
|
80
80
|
}
|
|
81
|
-
if (alt === '<DEL>') {
|
|
81
|
+
else if (alt === '<DEL>') {
|
|
82
82
|
return ['deletion', alt];
|
|
83
83
|
}
|
|
84
|
-
if (alt === '<DUP>') {
|
|
84
|
+
else if (alt === '<DUP>') {
|
|
85
85
|
return ['duplication', alt];
|
|
86
86
|
}
|
|
87
|
-
if (alt === '<CNV>') {
|
|
87
|
+
else if (alt === '<CNV>') {
|
|
88
88
|
return ['cnv', alt];
|
|
89
89
|
}
|
|
90
|
-
if (alt === '<INV>') {
|
|
90
|
+
else if (alt === '<INV>') {
|
|
91
91
|
return ['inversion', alt];
|
|
92
92
|
}
|
|
93
|
-
if (alt === '<TRA>') {
|
|
93
|
+
else if (alt === '<TRA>') {
|
|
94
94
|
return ['translocation', alt];
|
|
95
95
|
}
|
|
96
|
-
if (alt.includes('<')) {
|
|
96
|
+
else if (alt.includes('<')) {
|
|
97
97
|
return ['sv', alt];
|
|
98
98
|
}
|
|
99
|
-
if (ref.length === alt.length) {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
else if (ref.length === alt.length) {
|
|
100
|
+
const lenRef = ref.length;
|
|
101
|
+
const lenAlt = alt.length;
|
|
102
|
+
if (lenRef > 5 || lenAlt > 5) {
|
|
103
|
+
const lena = getBpDisplayStr(lenRef);
|
|
104
|
+
const lenb = getBpDisplayStr(lenAlt);
|
|
105
|
+
return ref.split('').reverse().join('') === alt
|
|
106
|
+
? ['inverson', makeDescriptionString('inv', lena, lenb)]
|
|
107
|
+
: ['substitution', makeDescriptionString('substitution', lena, lenb)];
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
return ref.split('').reverse().join('') === alt
|
|
111
|
+
? ['inversion', makeDescriptionString('inv', ref, alt)]
|
|
112
|
+
: ['substitution', makeDescriptionString('substitution', ref, alt)];
|
|
113
|
+
}
|
|
103
114
|
}
|
|
104
|
-
if (ref.length <= alt.length) {
|
|
115
|
+
else if (ref.length <= alt.length) {
|
|
105
116
|
const len = alt.length - ref.length;
|
|
106
|
-
const
|
|
117
|
+
const lenAlt = alt.length;
|
|
118
|
+
const lenRef = ref.length;
|
|
119
|
+
const lena = getBpDisplayStr(len);
|
|
107
120
|
return [
|
|
108
121
|
'insertion',
|
|
109
|
-
|
|
122
|
+
lenRef > 5 || lenAlt > 5
|
|
123
|
+
? `${lena} INS`
|
|
124
|
+
: makeDescriptionString('insertion', len > 5 ? lena : ref, alt),
|
|
110
125
|
];
|
|
111
126
|
}
|
|
112
|
-
if (ref.length > alt.length) {
|
|
113
|
-
const
|
|
114
|
-
const
|
|
127
|
+
else if (ref.length > alt.length) {
|
|
128
|
+
const lenRef = ref.length;
|
|
129
|
+
const lenAlt = alt.length;
|
|
130
|
+
const lena = getBpDisplayStr(lenRef - lenAlt);
|
|
115
131
|
return [
|
|
116
132
|
'deletion',
|
|
117
|
-
|
|
133
|
+
lenRef > 5 || lenAlt > 5
|
|
134
|
+
? `${lena} DEL`
|
|
135
|
+
: makeDescriptionString('deletion', ref, alt),
|
|
118
136
|
];
|
|
119
137
|
}
|
|
120
|
-
|
|
138
|
+
else {
|
|
139
|
+
return ['indel', makeDescriptionString('indel', ref, alt)];
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
export function getMinimalDesc(ref, alt) {
|
|
143
|
+
const bnd = parseBreakend(alt);
|
|
144
|
+
if (bnd) {
|
|
145
|
+
return alt;
|
|
146
|
+
}
|
|
147
|
+
else if (ref.length === 1 && alt.length === 1) {
|
|
148
|
+
return alt;
|
|
149
|
+
}
|
|
150
|
+
else if (alt === '<INS>') {
|
|
151
|
+
return alt;
|
|
152
|
+
}
|
|
153
|
+
else if (alt === '<DEL>') {
|
|
154
|
+
return alt;
|
|
155
|
+
}
|
|
156
|
+
else if (alt === '<DUP>') {
|
|
157
|
+
return alt;
|
|
158
|
+
}
|
|
159
|
+
else if (alt === '<CNV>') {
|
|
160
|
+
return alt;
|
|
161
|
+
}
|
|
162
|
+
else if (alt === '<INV>') {
|
|
163
|
+
return alt;
|
|
164
|
+
}
|
|
165
|
+
else if (alt === '<TRA>') {
|
|
166
|
+
return alt;
|
|
167
|
+
}
|
|
168
|
+
else if (alt.includes('<')) {
|
|
169
|
+
return alt;
|
|
170
|
+
}
|
|
171
|
+
else if (ref.length === alt.length) {
|
|
172
|
+
const lenRef = ref.length;
|
|
173
|
+
const lenAlt = alt.length;
|
|
174
|
+
if (lenRef > 5 || lenAlt > 5) {
|
|
175
|
+
const lena = getBpDisplayStr(lenRef);
|
|
176
|
+
const lenb = getBpDisplayStr(lenAlt);
|
|
177
|
+
return ref.split('').reverse().join('') === alt
|
|
178
|
+
? makeDescriptionString('inv', lena, lenb)
|
|
179
|
+
: makeDescriptionString('substitution', lena, lenb);
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
return ref.split('').reverse().join('') === alt
|
|
183
|
+
? makeDescriptionString('inv', ref, alt)
|
|
184
|
+
: makeDescriptionString('substitution', ref, alt);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
else if (ref.length <= alt.length) {
|
|
188
|
+
const len = alt.length - ref.length;
|
|
189
|
+
const lenAlt = alt.length;
|
|
190
|
+
const lenRef = ref.length;
|
|
191
|
+
const lena = getBpDisplayStr(len);
|
|
192
|
+
return lenRef > 5 || lenAlt > 5
|
|
193
|
+
? `${lena} INS`
|
|
194
|
+
: makeDescriptionString('insertion', len > 5 ? lena : ref, alt);
|
|
195
|
+
}
|
|
196
|
+
else if (ref.length > alt.length) {
|
|
197
|
+
const lenRef = ref.length;
|
|
198
|
+
const lenAlt = alt.length;
|
|
199
|
+
const lena = getBpDisplayStr(lenRef - lenAlt);
|
|
200
|
+
return lenRef > 5 || lenAlt > 5
|
|
201
|
+
? `${lena} DEL`
|
|
202
|
+
: makeDescriptionString('deletion', ref, alt);
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
return makeDescriptionString('indel', ref, alt);
|
|
206
|
+
}
|
|
121
207
|
}
|
|
122
208
|
function makeDescriptionString(soTerm, ref, alt) {
|
|
123
|
-
return `${soTerm} ${ref
|
|
209
|
+
return `${soTerm} ${[ref, alt].join(' -> ')}`;
|
|
210
|
+
}
|
|
211
|
+
export function makeSimpleAltString(genotype, ref, alt) {
|
|
212
|
+
return genotype
|
|
213
|
+
.split(/[/|]/)
|
|
214
|
+
.map(r => r === '.'
|
|
215
|
+
? '.'
|
|
216
|
+
: +r === 0
|
|
217
|
+
? `ref(${ref.length < 10 ? ref : getBpDisplayStr(ref.length)})`
|
|
218
|
+
: getMinimalDesc(ref, alt[+r - 1] || ''))
|
|
219
|
+
.join(genotype.includes('|') ? '|' : '/');
|
|
124
220
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TabixIndexedFile } from '@gmod/tabix';
|
|
2
2
|
import VcfParser from '@gmod/vcf';
|
|
3
3
|
import { BaseFeatureDataAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
4
|
-
import { fetchAndMaybeUnzipText, updateStatus } from '@jbrowse/core/util';
|
|
4
|
+
import { fetchAndMaybeUnzipText, shorten2, updateStatus, } from '@jbrowse/core/util';
|
|
5
5
|
import { openLocation } from '@jbrowse/core/util/io';
|
|
6
6
|
import { ObservableCreate } from '@jbrowse/core/util/rxjs';
|
|
7
7
|
import VcfFeature from '../VcfFeature';
|
|
@@ -85,23 +85,27 @@ export default class VcfTabixAdapter extends BaseFeatureDataAdapter {
|
|
|
85
85
|
const lines = txt.split(/\n|\r\n|\r/);
|
|
86
86
|
const header = lines[0].split('\t');
|
|
87
87
|
const { parser } = await this.configure();
|
|
88
|
-
const
|
|
89
|
-
const ret = lines
|
|
88
|
+
const metadataLines = lines
|
|
90
89
|
.slice(1)
|
|
91
90
|
.filter(f => !!f)
|
|
92
91
|
.map(line => {
|
|
93
92
|
const [name, ...rest] = line.split('\t');
|
|
94
93
|
return {
|
|
95
|
-
...Object.fromEntries(
|
|
94
|
+
...Object.fromEntries(header.slice(1).map((c, idx) => [c, rest[idx] || ''])),
|
|
96
95
|
name: name,
|
|
97
96
|
};
|
|
98
97
|
});
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
98
|
+
const vcfSampleSet = new Set(parser.samples);
|
|
99
|
+
const metadataSet = new Set(metadataLines.map(r => r.name));
|
|
100
|
+
const metadataNotInVcfSamples = [...metadataSet].filter(f => !vcfSampleSet.has(f));
|
|
101
|
+
const vcfSamplesNotInMetadata = [...vcfSampleSet].filter(f => !metadataSet.has(f));
|
|
102
|
+
if (metadataNotInVcfSamples.length) {
|
|
103
|
+
console.warn(`There are ${metadataNotInVcfSamples.length} samples in metadata file (${metadataLines.length} lines) not in VCF (${parser.samples.length} samples):`, shorten2(metadataNotInVcfSamples.join(',')));
|
|
102
104
|
}
|
|
103
|
-
|
|
105
|
+
if (vcfSamplesNotInMetadata.length) {
|
|
106
|
+
console.warn(`There are ${vcfSamplesNotInMetadata.length} samples in VCF file (${parser.samples.length} samples) not in metadata file (${metadataLines.length} lines):`, shorten2(vcfSamplesNotInMetadata.map(m => m).join(',')));
|
|
107
|
+
}
|
|
108
|
+
return metadataLines.filter(f => vcfSampleSet.has(f.name));
|
|
104
109
|
}
|
|
105
110
|
}
|
|
106
|
-
freeResources() { }
|
|
107
111
|
}
|
|
@@ -6,6 +6,7 @@ export declare function getMultiVariantFeaturesAutorun(self: {
|
|
|
6
6
|
adapterConfig: AnyConfigurationModel;
|
|
7
7
|
sources?: Source[];
|
|
8
8
|
minorAlleleFrequencyFilter: number;
|
|
9
|
+
lengthCutoffFilter: number;
|
|
9
10
|
statsReadyAndRegionNotTooLarge: boolean;
|
|
10
11
|
adapterProps: () => Record<string, unknown>;
|
|
11
12
|
setError: (error: unknown) => void;
|
|
@@ -13,4 +14,5 @@ export declare function getMultiVariantFeaturesAutorun(self: {
|
|
|
13
14
|
setMessage: (str: string) => void;
|
|
14
15
|
setHasPhased: (arg: boolean) => void;
|
|
15
16
|
setSampleInfo: (arg: Record<string, SampleInfo>) => void;
|
|
17
|
+
setSimplifiedFeaturesLoading: (arg: string) => void;
|
|
16
18
|
}): void;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SimpleFeature, getContainingView, getSession, } from '@jbrowse/core/util';
|
|
2
2
|
import { isAbortException } from '@jbrowse/core/util/aborting';
|
|
3
|
+
import { createStopToken } from '@jbrowse/core/util/stopToken';
|
|
3
4
|
import { getRpcSessionId } from '@jbrowse/core/util/tracks';
|
|
4
5
|
import { autorun } from 'mobx';
|
|
5
6
|
import { addDisposer, isAlive } from 'mobx-state-tree';
|
|
@@ -10,16 +11,20 @@ export function getMultiVariantFeaturesAutorun(self) {
|
|
|
10
11
|
if (!view.initialized || !self.statsReadyAndRegionNotTooLarge) {
|
|
11
12
|
return;
|
|
12
13
|
}
|
|
14
|
+
const stopToken = createStopToken();
|
|
15
|
+
self.setSimplifiedFeaturesLoading(stopToken);
|
|
13
16
|
const { rpcManager } = getSession(self);
|
|
14
|
-
const { sources, minorAlleleFrequencyFilter, adapterConfig } = self;
|
|
17
|
+
const { lengthCutoffFilter, sources, minorAlleleFrequencyFilter, adapterConfig, } = self;
|
|
15
18
|
if (sources) {
|
|
16
19
|
const sessionId = getRpcSessionId(self);
|
|
17
20
|
const { sampleInfo, hasPhased, features } = (await rpcManager.call(sessionId, 'MultiVariantGetSimplifiedFeatures', {
|
|
18
21
|
regions: view.dynamicBlocks.contentBlocks,
|
|
19
22
|
sources,
|
|
20
23
|
minorAlleleFrequencyFilter,
|
|
24
|
+
lengthCutoffFilter,
|
|
21
25
|
sessionId,
|
|
22
26
|
adapterConfig,
|
|
27
|
+
stopToken,
|
|
23
28
|
}));
|
|
24
29
|
if (isAlive(self)) {
|
|
25
30
|
self.setHasPhased(hasPhased);
|
|
@@ -34,5 +39,7 @@ export function getMultiVariantFeaturesAutorun(self) {
|
|
|
34
39
|
getSession(self).notifyError(`${e}`, e);
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
|
-
}, {
|
|
42
|
+
}, {
|
|
43
|
+
delay: 1000,
|
|
44
|
+
}));
|
|
38
45
|
}
|
|
@@ -13,12 +13,13 @@ export function getMultiVariantSourcesAutorun(self) {
|
|
|
13
13
|
}
|
|
14
14
|
const { rpcManager } = getSession(self);
|
|
15
15
|
const { adapterConfig } = self;
|
|
16
|
-
const
|
|
17
|
-
self.setSourcesLoading(
|
|
16
|
+
const stopToken = createStopToken();
|
|
17
|
+
self.setSourcesLoading(stopToken);
|
|
18
18
|
const sessionId = getRpcSessionId(self);
|
|
19
19
|
const sources = (await rpcManager.call(sessionId, 'MultiVariantGetSources', {
|
|
20
20
|
sessionId,
|
|
21
21
|
adapterConfig,
|
|
22
|
+
stopToken,
|
|
22
23
|
}));
|
|
23
24
|
if (isAlive(self)) {
|
|
24
25
|
self.setSources(sources);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SampleInfo, Source } from '
|
|
1
|
+
import type { SampleInfo, Source } from './types';
|
|
2
2
|
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
3
3
|
import type { Feature } from '@jbrowse/core/util';
|
|
4
4
|
import type { Instance } from 'mobx-state-tree';
|
|
@@ -90,6 +90,9 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
90
90
|
renderingMode: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
91
91
|
rowHeightSetting: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
92
92
|
autoHeight: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
93
|
+
lengthCutoffFilter: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
94
|
+
jexlFilters: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IArrayType<import("mobx-state-tree").ISimpleType<string>>>;
|
|
95
|
+
referenceDrawingMode: import("mobx-state-tree").IType<string | undefined, string, string>;
|
|
93
96
|
}, {
|
|
94
97
|
rendererTypeName: string;
|
|
95
98
|
error: unknown;
|
|
@@ -202,7 +205,7 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
202
205
|
} & {
|
|
203
206
|
addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
|
|
204
207
|
deleteBlock(key: string): void;
|
|
205
|
-
selectFeature(feature: Feature): void
|
|
208
|
+
selectFeature(feature: Feature): Promise<void>;
|
|
206
209
|
navToFeature(feature: Feature): void;
|
|
207
210
|
clearFeatureSelection(): void;
|
|
208
211
|
setFeatureIdUnderMouse(feature?: string): void;
|
|
@@ -233,19 +236,28 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
233
236
|
renderProps(): any;
|
|
234
237
|
} & {
|
|
235
238
|
sourcesLoadingStopToken: string | undefined;
|
|
239
|
+
simplifiedFeaturesStopToken: string | undefined;
|
|
236
240
|
featureUnderMouseVolatile: Feature | undefined;
|
|
237
241
|
sourcesVolatile: Source[] | undefined;
|
|
238
242
|
featuresVolatile: Feature[] | undefined;
|
|
239
243
|
hasPhased: boolean;
|
|
240
244
|
sampleInfo: undefined | Record<string, SampleInfo>;
|
|
241
|
-
hoveredGenotype:
|
|
245
|
+
hoveredGenotype: {
|
|
246
|
+
genotype: string;
|
|
247
|
+
name: string;
|
|
248
|
+
} | undefined;
|
|
242
249
|
} & {
|
|
250
|
+
setJexlFilters(f?: string[]): void;
|
|
243
251
|
setRowHeight(arg: number): void;
|
|
244
|
-
setHoveredGenotype(arg
|
|
252
|
+
setHoveredGenotype(arg?: {
|
|
253
|
+
genotype: string;
|
|
254
|
+
name: string;
|
|
255
|
+
}): void;
|
|
245
256
|
setFeatures(f: Feature[]): void;
|
|
246
257
|
setLayout(layout: Source[]): void;
|
|
247
258
|
clearLayout(): void;
|
|
248
259
|
setSourcesLoading(str: string): void;
|
|
260
|
+
setSimplifiedFeaturesLoading(str: string): void;
|
|
249
261
|
setSources(sources: Source[]): void;
|
|
250
262
|
setMafFilter(arg: number): void;
|
|
251
263
|
setShowSidebarLabels(arg: boolean): void;
|
|
@@ -253,7 +265,9 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
253
265
|
setAutoHeight(arg: boolean): void;
|
|
254
266
|
setHasPhased(arg: boolean): void;
|
|
255
267
|
setSampleInfo(arg: Record<string, SampleInfo>): void;
|
|
268
|
+
setReferenceDrawingMode(arg: string): void;
|
|
256
269
|
} & {
|
|
270
|
+
readonly activeFilters: any;
|
|
257
271
|
readonly preSources: Source[] | undefined;
|
|
258
272
|
readonly sourcesWithoutLayout: {
|
|
259
273
|
label: string;
|
|
@@ -274,6 +288,17 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
274
288
|
HP?: number;
|
|
275
289
|
}[] | undefined;
|
|
276
290
|
} & {
|
|
291
|
+
readonly sourceMap: {
|
|
292
|
+
[k: string]: {
|
|
293
|
+
label: string;
|
|
294
|
+
id: string;
|
|
295
|
+
baseUri?: string;
|
|
296
|
+
name: string;
|
|
297
|
+
color?: string;
|
|
298
|
+
group?: string;
|
|
299
|
+
HP?: number;
|
|
300
|
+
};
|
|
301
|
+
} | undefined;
|
|
277
302
|
readonly rowHeight: number;
|
|
278
303
|
adapterProps(): any;
|
|
279
304
|
trackMenuItems(): (import("@jbrowse/core/ui").MenuDivider | import("@jbrowse/core/ui").MenuSubHeader | import("@jbrowse/core/ui").NormalMenuItem | import("@jbrowse/core/ui").CheckboxMenuItem | import("@jbrowse/core/ui").RadioMenuItem | import("@jbrowse/core/ui").SubMenuItem | {
|
|
@@ -327,6 +352,18 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
327
352
|
type?: undefined;
|
|
328
353
|
checked?: undefined;
|
|
329
354
|
onClick?: undefined;
|
|
355
|
+
} | {
|
|
356
|
+
label: string;
|
|
357
|
+
type: string;
|
|
358
|
+
subMenu: {
|
|
359
|
+
label: string;
|
|
360
|
+
type: string;
|
|
361
|
+
checked: boolean;
|
|
362
|
+
onClick: () => void;
|
|
363
|
+
}[];
|
|
364
|
+
icon?: undefined;
|
|
365
|
+
checked?: undefined;
|
|
366
|
+
onClick?: undefined;
|
|
330
367
|
} | {
|
|
331
368
|
label: string;
|
|
332
369
|
icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
|