@jbrowse/plugin-variants 3.1.0 → 3.3.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/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +3 -3
- package/dist/MultiLinearVariantDisplay/index.js +1 -1
- package/dist/MultiLinearVariantDisplay/model.d.ts +58 -3
- 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 +59 -2
- package/dist/MultiLinearVariantMatrixDisplay/model.js +5 -1
- package/dist/MultiLinearVariantMatrixDisplay/renderSvg.js +2 -2
- package/dist/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.d.ts → MultiLinearVariantMatrixRenderer.d.ts} +7 -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 +2 -2
- package/dist/MultiLinearVariantMatrixRenderer/makeImageData.js +15 -8
- package/dist/MultiLinearVariantMatrixRenderer/types.d.ts +2 -4
- package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +30 -1
- package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.js +11 -5
- 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 +63 -23
- package/dist/MultiLinearVariantRenderer/types.d.ts +1 -0
- 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 +7 -2
- 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/types.js +2 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid/util.d.ts +1 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid/util.js +14 -0
- package/dist/VariantRPC/MultiVariantClusterGenotypeMatrix.d.ts +14 -0
- package/dist/VariantRPC/MultiVariantClusterGenotypeMatrix.js +30 -0
- package/dist/VariantRPC/MultiVariantGetGenotypeMatrix.d.ts +2 -13
- package/dist/VariantRPC/MultiVariantGetGenotypeMatrix.js +5 -57
- package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +3 -10
- package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.js +15 -10
- package/dist/VariantRPC/getGenotypeMatrix.d.ts +6 -0
- package/dist/VariantRPC/getGenotypeMatrix.js +60 -0
- package/dist/VariantRPC/types.d.ts +36 -0
- package/dist/VariantRPC/types.js +2 -0
- package/dist/VcfAdapter/VcfAdapter.js +6 -3
- package/dist/VcfFeature/index.js +0 -1
- package/dist/VcfFeature/util.d.ts +2 -0
- package/dist/VcfFeature/util.js +125 -27
- package/dist/VcfTabixAdapter/VcfTabixAdapter.js +17 -7
- package/dist/getMultiVariantFeaturesAutorun.d.ts +2 -0
- package/dist/getMultiVariantFeaturesAutorun.js +9 -2
- package/dist/getMultiVariantSourcesAutorun.js +3 -2
- package/dist/index.js +2 -0
- package/dist/shared/MultiVariantBaseModel.d.ts +59 -3
- package/dist/shared/MultiVariantBaseModel.js +95 -37
- 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/MultiVariantClusterDialog/ClusterDialog.d.ts +6 -0
- package/dist/shared/components/MultiVariantClusterDialog/ClusterDialog.js +29 -0
- package/dist/shared/components/MultiVariantClusterDialog/ClusterDialogAuto.d.ts +7 -0
- package/dist/shared/components/MultiVariantClusterDialog/ClusterDialogAuto.js +74 -0
- package/dist/shared/components/MultiVariantClusterDialog/ClusterDialogManual.d.ts +7 -0
- package/dist/shared/components/MultiVariantClusterDialog/ClusterDialogManual.js +145 -0
- package/dist/shared/components/MultiVariantClusterDialog/types.d.ts +10 -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 +2 -2
- package/dist/shared/components/SourcesGrid.js +1 -1
- package/dist/shared/components/SourcesGridHeader.d.ts +2 -1
- package/dist/shared/components/SourcesGridHeader.js +2 -2
- package/dist/shared/drawAlleleCount.d.ts +1 -1
- package/dist/shared/drawAlleleCount.js +29 -5
- package/dist/shared/drawPhased.d.ts +1 -1
- package/dist/shared/drawPhased.js +14 -10
- package/dist/shared/getSources.d.ts +15 -0
- package/dist/shared/getSources.js +34 -0
- package/dist/shared/minorAlleleFrequencyUtils.d.ts +6 -1
- package/dist/shared/minorAlleleFrequencyUtils.js +4 -5
- package/dist/shared/sourcesGridUtils.d.ts +3 -2
- package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +2 -2
- package/esm/MultiLinearVariantDisplay/index.js +1 -1
- package/esm/MultiLinearVariantDisplay/model.d.ts +58 -3
- 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 +59 -2
- package/esm/MultiLinearVariantMatrixDisplay/model.js +5 -1
- package/esm/MultiLinearVariantMatrixDisplay/renderSvg.js +1 -1
- package/esm/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.d.ts → MultiLinearVariantMatrixRenderer.d.ts} +7 -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 +2 -2
- package/esm/MultiLinearVariantMatrixRenderer/makeImageData.js +16 -9
- package/esm/MultiLinearVariantMatrixRenderer/types.d.ts +2 -4
- package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +30 -1
- package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.js +11 -5
- 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 +64 -24
- package/esm/MultiLinearVariantRenderer/types.d.ts +1 -0
- 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 +7 -2
- 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/types.js +1 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid/util.d.ts +1 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid/util.js +11 -0
- package/esm/VariantRPC/MultiVariantClusterGenotypeMatrix.d.ts +14 -0
- package/esm/VariantRPC/MultiVariantClusterGenotypeMatrix.js +23 -0
- package/esm/VariantRPC/MultiVariantGetGenotypeMatrix.d.ts +2 -13
- package/esm/VariantRPC/MultiVariantGetGenotypeMatrix.js +5 -57
- package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +3 -10
- package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.js +15 -10
- package/esm/VariantRPC/getGenotypeMatrix.d.ts +6 -0
- package/esm/VariantRPC/getGenotypeMatrix.js +57 -0
- package/esm/VariantRPC/types.d.ts +36 -0
- package/esm/VariantRPC/types.js +1 -0
- package/esm/VcfAdapter/VcfAdapter.js +7 -4
- package/esm/VcfFeature/index.js +0 -1
- package/esm/VcfFeature/util.d.ts +2 -0
- package/esm/VcfFeature/util.js +123 -27
- package/esm/VcfTabixAdapter/VcfTabixAdapter.js +18 -8
- package/esm/getMultiVariantFeaturesAutorun.d.ts +2 -0
- package/esm/getMultiVariantFeaturesAutorun.js +9 -2
- package/esm/getMultiVariantSourcesAutorun.js +3 -2
- package/esm/index.js +2 -0
- package/esm/shared/MultiVariantBaseModel.d.ts +59 -3
- package/esm/shared/MultiVariantBaseModel.js +97 -39
- 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/MultiVariantClusterDialog/ClusterDialog.d.ts +6 -0
- package/esm/shared/components/MultiVariantClusterDialog/ClusterDialog.js +24 -0
- package/esm/shared/components/MultiVariantClusterDialog/ClusterDialogAuto.d.ts +7 -0
- package/esm/shared/components/MultiVariantClusterDialog/ClusterDialogAuto.js +72 -0
- package/esm/shared/components/MultiVariantClusterDialog/ClusterDialogManual.d.ts +7 -0
- package/esm/shared/components/MultiVariantClusterDialog/ClusterDialogManual.js +140 -0
- package/esm/shared/components/MultiVariantClusterDialog/types.d.ts +10 -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 +2 -2
- package/esm/shared/components/SourcesGrid.js +1 -1
- package/esm/shared/components/SourcesGridHeader.d.ts +2 -1
- package/esm/shared/components/SourcesGridHeader.js +2 -2
- package/esm/shared/drawAlleleCount.d.ts +1 -1
- package/esm/shared/drawAlleleCount.js +29 -5
- package/esm/shared/drawPhased.d.ts +1 -1
- package/esm/shared/drawPhased.js +14 -10
- package/esm/shared/getSources.d.ts +15 -0
- package/esm/shared/getSources.js +31 -0
- package/esm/shared/minorAlleleFrequencyUtils.d.ts +6 -1
- package/esm/shared/minorAlleleFrequencyUtils.js +5 -6
- package/esm/shared/sourcesGridUtils.d.ts +3 -2
- package/package.json +10 -9
- 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/shared/components/ClusterDialog.d.ts +0 -11
- package/dist/shared/components/ClusterDialog.js +0 -113
- 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/shared/components/ClusterDialog.d.ts +0 -11
- package/esm/shared/components/ClusterDialog.js +0 -107
- package/esm/shared/components/LegendBar.d.ts +0 -18
- /package/dist/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.js → MultiLinearVariantMatrixRenderer.js} +0 -0
- /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/esm/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.js → MultiLinearVariantMatrixRenderer.js} +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/dist/VcfFeature/util.js
CHANGED
|
@@ -3,7 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getSOTermAndDescription = getSOTermAndDescription;
|
|
4
4
|
exports.getSOAndDescFromAltDefs = getSOAndDescFromAltDefs;
|
|
5
5
|
exports.getSOAndDescByExamination = getSOAndDescByExamination;
|
|
6
|
+
exports.getMinimalDesc = getMinimalDesc;
|
|
7
|
+
exports.makeSimpleAltString = makeSimpleAltString;
|
|
6
8
|
const vcf_1 = require("@gmod/vcf");
|
|
9
|
+
const util_1 = require("@jbrowse/core/util");
|
|
7
10
|
const altTypeToSO = {
|
|
8
11
|
DEL: 'deletion',
|
|
9
12
|
INS: 'insertion',
|
|
@@ -22,7 +25,7 @@ function getSOTermAndDescription(ref, alt, parser) {
|
|
|
22
25
|
}
|
|
23
26
|
const soTerms = new Set();
|
|
24
27
|
let descriptions = new Set();
|
|
25
|
-
|
|
28
|
+
for (const a of alt) {
|
|
26
29
|
let [soTerm, description] = getSOAndDescFromAltDefs(a, parser);
|
|
27
30
|
if (!soTerm) {
|
|
28
31
|
;
|
|
@@ -32,7 +35,7 @@ function getSOTermAndDescription(ref, alt, parser) {
|
|
|
32
35
|
soTerms.add(soTerm);
|
|
33
36
|
descriptions.add(description);
|
|
34
37
|
}
|
|
35
|
-
}
|
|
38
|
+
}
|
|
36
39
|
if (descriptions.size > 1) {
|
|
37
40
|
const descs = [...descriptions];
|
|
38
41
|
const prefixes = new Set(descs
|
|
@@ -67,63 +70,158 @@ function getSOAndDescFromAltDefs(alt, parser) {
|
|
|
67
70
|
return [soTerm, alt];
|
|
68
71
|
}
|
|
69
72
|
const modAlt = alt.split(':');
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
return [];
|
|
73
|
+
return modAlt.length > 1
|
|
74
|
+
? getSOAndDescFromAltDefs(`<${modAlt.slice(0, -1).join(':')}>`, parser)
|
|
75
|
+
: [];
|
|
74
76
|
}
|
|
75
77
|
function getSOAndDescByExamination(ref, alt) {
|
|
76
78
|
const bnd = (0, vcf_1.parseBreakend)(alt);
|
|
77
79
|
if (bnd) {
|
|
78
80
|
return ['breakend', alt];
|
|
79
81
|
}
|
|
80
|
-
if (ref.length === 1 && alt.length === 1) {
|
|
82
|
+
else if (ref.length === 1 && alt.length === 1) {
|
|
81
83
|
return ['SNV', makeDescriptionString('SNV', ref, alt)];
|
|
82
84
|
}
|
|
83
|
-
if (alt === '<INS>') {
|
|
85
|
+
else if (alt === '<INS>') {
|
|
84
86
|
return ['insertion', alt];
|
|
85
87
|
}
|
|
86
|
-
if (alt === '<DEL>') {
|
|
88
|
+
else if (alt === '<DEL>') {
|
|
87
89
|
return ['deletion', alt];
|
|
88
90
|
}
|
|
89
|
-
if (alt === '<DUP>') {
|
|
91
|
+
else if (alt === '<DUP>') {
|
|
90
92
|
return ['duplication', alt];
|
|
91
93
|
}
|
|
92
|
-
if (alt === '<CNV>') {
|
|
94
|
+
else if (alt === '<CNV>') {
|
|
93
95
|
return ['cnv', alt];
|
|
94
96
|
}
|
|
95
|
-
if (alt === '<INV>') {
|
|
97
|
+
else if (alt === '<INV>') {
|
|
96
98
|
return ['inversion', alt];
|
|
97
99
|
}
|
|
98
|
-
if (alt === '<TRA>') {
|
|
100
|
+
else if (alt === '<TRA>') {
|
|
99
101
|
return ['translocation', alt];
|
|
100
102
|
}
|
|
101
|
-
if (alt.includes('<')) {
|
|
103
|
+
else if (alt.includes('<')) {
|
|
102
104
|
return ['sv', alt];
|
|
103
105
|
}
|
|
104
|
-
if (ref.length === alt.length) {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
106
|
+
else if (ref.length === alt.length) {
|
|
107
|
+
const lenRef = ref.length;
|
|
108
|
+
const lenAlt = alt.length;
|
|
109
|
+
if (lenRef > 5 || lenAlt > 5) {
|
|
110
|
+
const lena = (0, util_1.getBpDisplayStr)(lenRef);
|
|
111
|
+
const lenb = (0, util_1.getBpDisplayStr)(lenAlt);
|
|
112
|
+
return ref.split('').reverse().join('') === alt
|
|
113
|
+
? ['inverson', makeDescriptionString('inv', lena, lenb)]
|
|
114
|
+
: ['substitution', makeDescriptionString('substitution', lena, lenb)];
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
return ref.split('').reverse().join('') === alt
|
|
118
|
+
? ['inversion', makeDescriptionString('inv', ref, alt)]
|
|
119
|
+
: ['substitution', makeDescriptionString('substitution', ref, alt)];
|
|
120
|
+
}
|
|
108
121
|
}
|
|
109
|
-
if (ref.length <= alt.length) {
|
|
122
|
+
else if (ref.length <= alt.length) {
|
|
110
123
|
const len = alt.length - ref.length;
|
|
111
|
-
const
|
|
124
|
+
const lenAlt = alt.length;
|
|
125
|
+
const lenRef = ref.length;
|
|
126
|
+
const lena = (0, util_1.getBpDisplayStr)(len);
|
|
112
127
|
return [
|
|
113
128
|
'insertion',
|
|
114
|
-
|
|
129
|
+
lenRef > 5 || lenAlt > 5
|
|
130
|
+
? `${lena} INS`
|
|
131
|
+
: makeDescriptionString('insertion', len > 5 ? lena : ref, alt),
|
|
115
132
|
];
|
|
116
133
|
}
|
|
117
|
-
if (ref.length > alt.length) {
|
|
118
|
-
const
|
|
119
|
-
const
|
|
134
|
+
else if (ref.length > alt.length) {
|
|
135
|
+
const lenRef = ref.length;
|
|
136
|
+
const lenAlt = alt.length;
|
|
137
|
+
const lena = (0, util_1.getBpDisplayStr)(lenRef - lenAlt);
|
|
120
138
|
return [
|
|
121
139
|
'deletion',
|
|
122
|
-
|
|
140
|
+
lenRef > 5 || lenAlt > 5
|
|
141
|
+
? `${lena} DEL`
|
|
142
|
+
: makeDescriptionString('deletion', ref, alt),
|
|
123
143
|
];
|
|
124
144
|
}
|
|
125
|
-
|
|
145
|
+
else {
|
|
146
|
+
return ['indel', makeDescriptionString('indel', ref, alt)];
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
function getMinimalDesc(ref, alt) {
|
|
150
|
+
const bnd = (0, vcf_1.parseBreakend)(alt);
|
|
151
|
+
if (bnd) {
|
|
152
|
+
return alt;
|
|
153
|
+
}
|
|
154
|
+
else if (ref.length === 1 && alt.length === 1) {
|
|
155
|
+
return alt;
|
|
156
|
+
}
|
|
157
|
+
else if (alt === '<INS>') {
|
|
158
|
+
return alt;
|
|
159
|
+
}
|
|
160
|
+
else if (alt === '<DEL>') {
|
|
161
|
+
return alt;
|
|
162
|
+
}
|
|
163
|
+
else if (alt === '<DUP>') {
|
|
164
|
+
return alt;
|
|
165
|
+
}
|
|
166
|
+
else if (alt === '<CNV>') {
|
|
167
|
+
return alt;
|
|
168
|
+
}
|
|
169
|
+
else if (alt === '<INV>') {
|
|
170
|
+
return alt;
|
|
171
|
+
}
|
|
172
|
+
else if (alt === '<TRA>') {
|
|
173
|
+
return alt;
|
|
174
|
+
}
|
|
175
|
+
else if (alt.includes('<')) {
|
|
176
|
+
return alt;
|
|
177
|
+
}
|
|
178
|
+
else if (ref.length === alt.length) {
|
|
179
|
+
const lenRef = ref.length;
|
|
180
|
+
const lenAlt = alt.length;
|
|
181
|
+
if (lenRef > 5 || lenAlt > 5) {
|
|
182
|
+
const lena = (0, util_1.getBpDisplayStr)(lenRef);
|
|
183
|
+
const lenb = (0, util_1.getBpDisplayStr)(lenAlt);
|
|
184
|
+
return ref.split('').reverse().join('') === alt
|
|
185
|
+
? makeDescriptionString('inv', lena, lenb)
|
|
186
|
+
: makeDescriptionString('substitution', lena, lenb);
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
return ref.split('').reverse().join('') === alt
|
|
190
|
+
? makeDescriptionString('inv', ref, alt)
|
|
191
|
+
: makeDescriptionString('substitution', ref, alt);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
else if (ref.length <= alt.length) {
|
|
195
|
+
const len = alt.length - ref.length;
|
|
196
|
+
const lenAlt = alt.length;
|
|
197
|
+
const lenRef = ref.length;
|
|
198
|
+
const lena = (0, util_1.getBpDisplayStr)(len);
|
|
199
|
+
return lenRef > 5 || lenAlt > 5
|
|
200
|
+
? `${lena} INS`
|
|
201
|
+
: makeDescriptionString('insertion', len > 5 ? lena : ref, alt);
|
|
202
|
+
}
|
|
203
|
+
else if (ref.length > alt.length) {
|
|
204
|
+
const lenRef = ref.length;
|
|
205
|
+
const lenAlt = alt.length;
|
|
206
|
+
const lena = (0, util_1.getBpDisplayStr)(lenRef - lenAlt);
|
|
207
|
+
return lenRef > 5 || lenAlt > 5
|
|
208
|
+
? `${lena} DEL`
|
|
209
|
+
: makeDescriptionString('deletion', ref, alt);
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
return makeDescriptionString('indel', ref, alt);
|
|
213
|
+
}
|
|
126
214
|
}
|
|
127
215
|
function makeDescriptionString(soTerm, ref, alt) {
|
|
128
|
-
return `${soTerm} ${ref
|
|
216
|
+
return `${soTerm} ${[ref, alt].join(' -> ')}`;
|
|
217
|
+
}
|
|
218
|
+
function makeSimpleAltString(genotype, ref, alt) {
|
|
219
|
+
return genotype
|
|
220
|
+
.split(/[/|]/)
|
|
221
|
+
.map(r => r === '.'
|
|
222
|
+
? '.'
|
|
223
|
+
: +r === 0
|
|
224
|
+
? `ref(${ref.length < 10 ? ref : (0, util_1.getBpDisplayStr)(ref.length)})`
|
|
225
|
+
: getMinimalDesc(ref, alt[+r - 1] || ''))
|
|
226
|
+
.join(genotype.includes('|') ? '|' : '/');
|
|
129
227
|
}
|
|
@@ -90,17 +90,27 @@ class VcfTabixAdapter extends BaseAdapter_1.BaseFeatureDataAdapter {
|
|
|
90
90
|
const lines = txt.split(/\n|\r\n|\r/);
|
|
91
91
|
const header = lines[0].split('\t');
|
|
92
92
|
const { parser } = await this.configure();
|
|
93
|
-
const
|
|
94
|
-
return lines
|
|
93
|
+
const metadataLines = lines
|
|
95
94
|
.slice(1)
|
|
95
|
+
.filter(f => !!f)
|
|
96
96
|
.map(line => {
|
|
97
|
-
const
|
|
97
|
+
const [name, ...rest] = line.split('\t');
|
|
98
98
|
return {
|
|
99
|
-
|
|
100
|
-
|
|
99
|
+
...Object.fromEntries(header.slice(1).map((c, idx) => [c, rest[idx] || ''])),
|
|
100
|
+
name: name,
|
|
101
101
|
};
|
|
102
|
-
})
|
|
103
|
-
|
|
102
|
+
});
|
|
103
|
+
const vcfSampleSet = new Set(parser.samples);
|
|
104
|
+
const metadataSet = new Set(metadataLines.map(r => r.name));
|
|
105
|
+
const metadataNotInVcfSamples = [...metadataSet].filter(f => !vcfSampleSet.has(f));
|
|
106
|
+
const vcfSamplesNotInMetadata = [...vcfSampleSet].filter(f => !metadataSet.has(f));
|
|
107
|
+
if (metadataNotInVcfSamples.length) {
|
|
108
|
+
console.warn(`There are ${metadataNotInVcfSamples.length} samples in metadata file (${metadataLines.length} lines) not in VCF (${parser.samples.length} samples):`, (0, util_1.shorten2)(metadataNotInVcfSamples.join(',')));
|
|
109
|
+
}
|
|
110
|
+
if (vcfSamplesNotInMetadata.length) {
|
|
111
|
+
console.warn(`There are ${vcfSamplesNotInMetadata.length} samples in VCF file (${parser.samples.length} samples) not in metadata file (${metadataLines.length} lines):`, (0, util_1.shorten2)(vcfSamplesNotInMetadata.map(m => m).join(',')));
|
|
112
|
+
}
|
|
113
|
+
return metadataLines.filter(f => vcfSampleSet.has(f.name));
|
|
104
114
|
}
|
|
105
115
|
}
|
|
106
116
|
freeResources() { }
|
|
@@ -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;
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getMultiVariantFeaturesAutorun = getMultiVariantFeaturesAutorun;
|
|
4
4
|
const util_1 = require("@jbrowse/core/util");
|
|
5
5
|
const aborting_1 = require("@jbrowse/core/util/aborting");
|
|
6
|
+
const stopToken_1 = require("@jbrowse/core/util/stopToken");
|
|
6
7
|
const tracks_1 = require("@jbrowse/core/util/tracks");
|
|
7
8
|
const mobx_1 = require("mobx");
|
|
8
9
|
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
@@ -13,16 +14,20 @@ function getMultiVariantFeaturesAutorun(self) {
|
|
|
13
14
|
if (!view.initialized || !self.statsReadyAndRegionNotTooLarge) {
|
|
14
15
|
return;
|
|
15
16
|
}
|
|
17
|
+
const stopToken = (0, stopToken_1.createStopToken)();
|
|
18
|
+
self.setSimplifiedFeaturesLoading(stopToken);
|
|
16
19
|
const { rpcManager } = (0, util_1.getSession)(self);
|
|
17
|
-
const { sources, minorAlleleFrequencyFilter, adapterConfig } = self;
|
|
20
|
+
const { lengthCutoffFilter, sources, minorAlleleFrequencyFilter, adapterConfig, } = self;
|
|
18
21
|
if (sources) {
|
|
19
22
|
const sessionId = (0, tracks_1.getRpcSessionId)(self);
|
|
20
23
|
const { sampleInfo, hasPhased, features } = (await rpcManager.call(sessionId, 'MultiVariantGetSimplifiedFeatures', {
|
|
21
24
|
regions: view.dynamicBlocks.contentBlocks,
|
|
22
25
|
sources,
|
|
23
26
|
minorAlleleFrequencyFilter,
|
|
27
|
+
lengthCutoffFilter,
|
|
24
28
|
sessionId,
|
|
25
29
|
adapterConfig,
|
|
30
|
+
stopToken,
|
|
26
31
|
}));
|
|
27
32
|
if ((0, mobx_state_tree_1.isAlive)(self)) {
|
|
28
33
|
self.setHasPhased(hasPhased);
|
|
@@ -37,5 +42,7 @@ function getMultiVariantFeaturesAutorun(self) {
|
|
|
37
42
|
(0, util_1.getSession)(self).notifyError(`${e}`, e);
|
|
38
43
|
}
|
|
39
44
|
}
|
|
40
|
-
}, {
|
|
45
|
+
}, {
|
|
46
|
+
delay: 1000,
|
|
47
|
+
}));
|
|
41
48
|
}
|
|
@@ -16,12 +16,13 @@ function getMultiVariantSourcesAutorun(self) {
|
|
|
16
16
|
}
|
|
17
17
|
const { rpcManager } = (0, util_1.getSession)(self);
|
|
18
18
|
const { adapterConfig } = self;
|
|
19
|
-
const
|
|
20
|
-
self.setSourcesLoading(
|
|
19
|
+
const stopToken = (0, stopToken_1.createStopToken)();
|
|
20
|
+
self.setSourcesLoading(stopToken);
|
|
21
21
|
const sessionId = (0, tracks_1.getRpcSessionId)(self);
|
|
22
22
|
const sources = (await rpcManager.call(sessionId, 'MultiVariantGetSources', {
|
|
23
23
|
sessionId,
|
|
24
24
|
adapterConfig,
|
|
25
|
+
stopToken,
|
|
25
26
|
}));
|
|
26
27
|
if ((0, mobx_state_tree_1.isAlive)(self)) {
|
|
27
28
|
self.setSources(sources);
|
package/dist/index.js
CHANGED
|
@@ -14,6 +14,7 @@ const MultiLinearVariantRenderer_1 = __importDefault(require("./MultiLinearVaria
|
|
|
14
14
|
const SplitVcfTabixAdapter_1 = __importDefault(require("./SplitVcfTabixAdapter"));
|
|
15
15
|
const StructuralVariantChordRenderer_1 = __importDefault(require("./StructuralVariantChordRenderer"));
|
|
16
16
|
const VariantFeatureWidget_1 = __importDefault(require("./VariantFeatureWidget"));
|
|
17
|
+
const MultiVariantClusterGenotypeMatrix_1 = require("./VariantRPC/MultiVariantClusterGenotypeMatrix");
|
|
17
18
|
const MultiVariantGetGenotypeMatrix_1 = require("./VariantRPC/MultiVariantGetGenotypeMatrix");
|
|
18
19
|
const MultiVariantGetSimplifiedFeatures_1 = require("./VariantRPC/MultiVariantGetSimplifiedFeatures");
|
|
19
20
|
const MultiVariantGetSources_1 = require("./VariantRPC/MultiVariantGetSources");
|
|
@@ -42,6 +43,7 @@ class VariantsPlugin extends Plugin_1.default {
|
|
|
42
43
|
(0, ChordVariantDisplay_1.default)(pluginManager);
|
|
43
44
|
pluginManager.addRpcMethod(() => new MultiVariantGetSources_1.MultiVariantGetSources(pluginManager));
|
|
44
45
|
pluginManager.addRpcMethod(() => new MultiVariantGetGenotypeMatrix_1.MultiVariantGetGenotypeMatrix(pluginManager));
|
|
46
|
+
pluginManager.addRpcMethod(() => new MultiVariantClusterGenotypeMatrix_1.MultiVariantClusterGenotypeMatrix(pluginManager));
|
|
45
47
|
pluginManager.addRpcMethod(() => new MultiVariantGetSimplifiedFeatures_1.MultiVariantGetSimplifiedFeatures(pluginManager));
|
|
46
48
|
}
|
|
47
49
|
}
|
|
@@ -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;
|
|
@@ -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,8 +265,19 @@ 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;
|
|
272
|
+
readonly sourcesWithoutLayout: {
|
|
273
|
+
label: string;
|
|
274
|
+
id: string;
|
|
275
|
+
baseUri?: string;
|
|
276
|
+
name: string;
|
|
277
|
+
color?: string;
|
|
278
|
+
group?: string;
|
|
279
|
+
HP?: number;
|
|
280
|
+
}[] | undefined;
|
|
258
281
|
readonly sources: {
|
|
259
282
|
label: string;
|
|
260
283
|
id: string;
|
|
@@ -265,6 +288,17 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
265
288
|
HP?: number;
|
|
266
289
|
}[] | undefined;
|
|
267
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;
|
|
268
302
|
readonly rowHeight: number;
|
|
269
303
|
adapterProps(): any;
|
|
270
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 | {
|
|
@@ -318,6 +352,18 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
318
352
|
type?: undefined;
|
|
319
353
|
checked?: undefined;
|
|
320
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;
|
|
321
367
|
} | {
|
|
322
368
|
label: string;
|
|
323
369
|
icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
|
|
@@ -330,10 +376,20 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
|
|
|
330
376
|
type?: undefined;
|
|
331
377
|
checked?: undefined;
|
|
332
378
|
onClick?: undefined;
|
|
379
|
+
} | {
|
|
380
|
+
label: string;
|
|
381
|
+
icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
|
|
382
|
+
muiName: string;
|
|
383
|
+
};
|
|
384
|
+
onClick: () => void;
|
|
385
|
+
type?: undefined;
|
|
386
|
+
checked?: undefined;
|
|
387
|
+
subMenu?: undefined;
|
|
333
388
|
})[];
|
|
334
389
|
} & {
|
|
335
390
|
readonly canDisplayLabels: boolean;
|
|
336
391
|
readonly totalHeight: number;
|
|
392
|
+
readonly featuresReady: boolean;
|
|
337
393
|
} & {
|
|
338
394
|
renderProps(): any;
|
|
339
395
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|