@jbrowse/plugin-variants 2.18.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ChordVariantDisplay/models/stateModelFactory.d.ts +1 -1
- package/dist/LinearVariantDisplay/model.d.ts +5 -5
- package/dist/MultiLinearVariantDisplay/components/Crosshair.d.ts +7 -0
- package/dist/MultiLinearVariantDisplay/components/Crosshair.js +35 -0
- package/dist/MultiLinearVariantDisplay/components/VariantDisplayComponent.d.ts +1 -2
- package/dist/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +5 -49
- package/dist/MultiLinearVariantDisplay/index.js +18 -8
- package/dist/MultiLinearVariantDisplay/model.d.ts +113 -40
- package/dist/MultiLinearVariantDisplay/model.js +24 -176
- package/dist/MultiLinearVariantDisplay/renderSvg.d.ts +1 -2
- package/dist/MultiLinearVariantDisplay/renderSvg.js +2 -5
- package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +7 -0
- package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.js +28 -0
- package/dist/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.d.ts +1 -2
- package/dist/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +13 -16
- package/dist/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.d.ts +1 -2
- package/dist/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +6 -56
- package/dist/MultiLinearVariantMatrixDisplay/model.d.ts +109 -27
- package/dist/MultiLinearVariantMatrixDisplay/model.js +31 -136
- package/dist/MultiLinearVariantMatrixDisplay/renderSvg.d.ts +1 -2
- package/dist/MultiLinearVariantMatrixDisplay/renderSvg.js +3 -7
- package/dist/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.d.ts +4 -32
- package/dist/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.js +44 -63
- package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +3 -2
- package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +31 -5
- package/dist/MultiLinearVariantMatrixRenderer/index.js +2 -2
- package/dist/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +10 -0
- package/dist/MultiLinearVariantMatrixRenderer/makeImageData.js +99 -0
- package/dist/MultiLinearVariantMatrixRenderer/types.d.ts +15 -0
- package/dist/MultiLinearVariantMatrixRenderer/types.js +2 -0
- package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +4 -21
- package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.js +38 -25
- package/dist/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +7 -3
- package/dist/MultiLinearVariantRenderer/MultiVariantRendering.js +36 -27
- package/dist/MultiLinearVariantRenderer/configSchema.d.ts +1 -33
- package/dist/MultiLinearVariantRenderer/configSchema.js +0 -5
- package/dist/MultiLinearVariantRenderer/makeImageData.d.ts +4 -0
- package/dist/MultiLinearVariantRenderer/makeImageData.js +67 -0
- package/dist/MultiLinearVariantRenderer/types.d.ts +19 -0
- package/dist/MultiLinearVariantRenderer/types.js +2 -0
- package/dist/MultiVariantBaseRenderer.d.ts +4 -4
- package/dist/StructuralVariantChordRenderer/Chord.d.ts +2 -19
- package/dist/StructuralVariantChordRenderer/Chord.js +3 -25
- package/dist/StructuralVariantChordRenderer/ReactComponent.d.ts +2 -3
- package/dist/StructuralVariantChordRenderer/ReactComponent.js +7 -29
- package/dist/StructuralVariantChordRenderer/types.d.ts +17 -0
- package/dist/StructuralVariantChordRenderer/types.js +2 -0
- package/dist/Tooltip.d.ts +2 -2
- package/dist/Tooltip.js +6 -32
- package/dist/VariantFeatureWidget/Checkbox2.d.ts +1 -2
- package/dist/VariantFeatureWidget/Checkbox2.js +2 -5
- package/dist/VariantFeatureWidget/LaunchBreakendPanel.d.ts +2 -3
- package/dist/VariantFeatureWidget/LaunchBreakendPanel.js +66 -69
- package/dist/VariantFeatureWidget/LaunchBreakendWidgetArea.d.ts +4 -0
- package/dist/VariantFeatureWidget/LaunchBreakendWidgetArea.js +60 -0
- package/dist/VariantFeatureWidget/VariantConsequenceDataGrid.d.ts +5 -0
- package/dist/VariantFeatureWidget/VariantConsequenceDataGrid.js +15 -0
- package/dist/VariantFeatureWidget/VariantConsequenceDataGridWrapper.d.ts +5 -0
- package/dist/VariantFeatureWidget/VariantConsequenceDataGridWrapper.js +20 -0
- package/dist/VariantFeatureWidget/VariantConsequencePanel.d.ts +5 -0
- package/dist/VariantFeatureWidget/VariantConsequencePanel.js +15 -0
- package/dist/VariantFeatureWidget/VariantFeatureWidget.d.ts +1 -2
- package/dist/VariantFeatureWidget/VariantFeatureWidget.js +47 -36
- package/dist/VariantFeatureWidget/VariantSampleFilters.d.ts +9 -0
- package/dist/VariantFeatureWidget/VariantSampleFilters.js +10 -0
- package/dist/VariantFeatureWidget/VariantSampleGrid.d.ts +9 -7
- package/dist/VariantFeatureWidget/VariantSampleGrid.js +14 -44
- package/dist/VariantFeatureWidget/index.js +17 -7
- package/dist/VariantFeatureWidget/types.d.ts +16 -0
- package/dist/VariantFeatureWidget/types.js +2 -0
- package/dist/VariantRPC/MultiVariantGetGenotypeMatrix.js +10 -27
- package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +12 -7
- package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.js +27 -37
- package/dist/VcfAdapter/VcfAdapter.d.ts +7 -0
- package/dist/VcfAdapter/VcfAdapter.js +29 -3
- package/dist/VcfAdapter/configSchema.d.ts +8 -0
- package/dist/VcfAdapter/configSchema.js +12 -1
- package/dist/VcfAdapter/index.js +17 -7
- package/dist/VcfFeature/index.js +2 -1
- package/dist/VcfFeature/util.js +3 -4
- package/dist/VcfTabixAdapter/VcfTabixAdapter.js +38 -12
- package/dist/VcfTabixAdapter/configSchema.d.ts +8 -0
- package/dist/VcfTabixAdapter/configSchema.js +8 -0
- package/dist/VcfTabixAdapter/index.js +17 -7
- package/dist/extensionPoints.js +21 -33
- package/dist/getMultiVariantFeaturesAutorun.d.ts +4 -7
- package/dist/getMultiVariantFeaturesAutorun.js +16 -15
- package/dist/getMultiVariantSourcesAutorun.d.ts +1 -6
- package/dist/shared/BulkEditPanel.d.ts +4 -5
- package/dist/shared/BulkEditPanel.js +69 -88
- package/dist/shared/ClusterDialog.d.ts +4 -5
- package/dist/shared/ClusterDialog.js +45 -86
- package/dist/shared/ColorLegend.d.ts +2 -3
- package/dist/shared/ColorLegend.js +8 -10
- package/dist/shared/HelpfulTips.d.ts +1 -0
- package/dist/shared/HelpfulTips.js +7 -0
- package/dist/shared/LegendBar.d.ts +3 -3
- package/dist/shared/LegendBar.js +6 -12
- package/dist/shared/MAFFilterDialog.d.ts +2 -3
- package/dist/shared/MAFFilterDialog.js +14 -42
- package/dist/shared/MultiVariantBaseModel.d.ts +341 -0
- package/dist/shared/MultiVariantBaseModel.js +316 -0
- package/dist/shared/MultiVariantTooltip.d.ts +6 -0
- package/dist/shared/MultiVariantTooltip.js +23 -0
- package/dist/shared/RectBg.d.ts +2 -3
- package/dist/shared/RectBg.js +3 -7
- package/dist/shared/RowPalettizer.d.ts +2 -3
- package/dist/shared/RowPalettizer.js +30 -28
- package/dist/shared/SetColorDialog.d.ts +2 -3
- package/dist/shared/SetColorDialog.js +26 -65
- package/dist/shared/SetMinMaxDialog.d.ts +1 -2
- package/dist/shared/SetMinMaxDialog.js +11 -41
- package/dist/shared/SetRowHeightDialog.d.ts +8 -0
- package/dist/shared/SetRowHeightDialog.js +18 -0
- package/dist/shared/SharedVariantMixin.d.ts +7 -7
- package/dist/shared/SourcesDataGrid.d.ts +6 -0
- package/dist/shared/SourcesDataGrid.js +68 -0
- package/dist/shared/SourcesGrid.d.ts +2 -3
- package/dist/shared/SourcesGrid.js +5 -134
- package/dist/shared/SourcesGridHeader.d.ts +7 -0
- package/dist/shared/SourcesGridHeader.js +41 -0
- package/dist/shared/multiVariantColor.d.ts +3 -0
- package/dist/shared/multiVariantColor.js +50 -0
- package/dist/types.d.ts +14 -0
- package/dist/types.js +2 -0
- package/dist/util.d.ts +6 -9
- package/dist/util.js +47 -14
- package/esm/ChordVariantDisplay/models/stateModelFactory.d.ts +1 -1
- package/esm/LinearVariantDisplay/model.d.ts +5 -5
- package/esm/MultiLinearVariantDisplay/components/Crosshair.d.ts +7 -0
- package/esm/MultiLinearVariantDisplay/components/Crosshair.js +30 -0
- package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.d.ts +1 -2
- package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +5 -26
- package/esm/MultiLinearVariantDisplay/index.js +1 -1
- package/esm/MultiLinearVariantDisplay/model.d.ts +113 -40
- package/esm/MultiLinearVariantDisplay/model.js +7 -169
- package/esm/MultiLinearVariantDisplay/renderSvg.d.ts +1 -2
- package/esm/MultiLinearVariantDisplay/renderSvg.js +2 -5
- package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +7 -0
- package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.js +23 -0
- package/esm/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.d.ts +1 -2
- package/esm/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +13 -13
- package/esm/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.d.ts +1 -2
- package/esm/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +6 -33
- package/esm/MultiLinearVariantMatrixDisplay/model.d.ts +109 -27
- package/esm/MultiLinearVariantMatrixDisplay/model.js +14 -129
- package/esm/MultiLinearVariantMatrixDisplay/renderSvg.d.ts +1 -2
- package/esm/MultiLinearVariantMatrixDisplay/renderSvg.js +3 -7
- package/esm/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.d.ts +4 -32
- package/esm/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.js +11 -63
- package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +3 -2
- package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +31 -2
- package/esm/MultiLinearVariantMatrixRenderer/index.js +1 -1
- package/esm/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +10 -0
- package/esm/MultiLinearVariantMatrixRenderer/makeImageData.js +96 -0
- package/esm/MultiLinearVariantMatrixRenderer/types.d.ts +15 -0
- package/esm/MultiLinearVariantMatrixRenderer/types.js +1 -0
- package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +4 -21
- package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.js +6 -26
- package/esm/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +7 -3
- package/esm/MultiLinearVariantRenderer/MultiVariantRendering.js +34 -5
- package/esm/MultiLinearVariantRenderer/configSchema.d.ts +1 -33
- package/esm/MultiLinearVariantRenderer/configSchema.js +0 -2
- package/esm/MultiLinearVariantRenderer/makeImageData.d.ts +4 -0
- package/esm/MultiLinearVariantRenderer/makeImageData.js +61 -0
- package/esm/MultiLinearVariantRenderer/types.d.ts +19 -0
- package/esm/MultiLinearVariantRenderer/types.js +1 -0
- package/esm/MultiVariantBaseRenderer.d.ts +4 -4
- package/esm/StructuralVariantChordRenderer/Chord.d.ts +2 -19
- package/esm/StructuralVariantChordRenderer/Chord.js +3 -2
- package/esm/StructuralVariantChordRenderer/ReactComponent.d.ts +2 -3
- package/esm/StructuralVariantChordRenderer/ReactComponent.js +7 -6
- package/esm/StructuralVariantChordRenderer/types.d.ts +17 -0
- package/esm/StructuralVariantChordRenderer/types.js +1 -0
- package/esm/Tooltip.d.ts +2 -2
- package/esm/Tooltip.js +6 -9
- package/esm/VariantFeatureWidget/Checkbox2.d.ts +1 -2
- package/esm/VariantFeatureWidget/Checkbox2.js +2 -2
- package/esm/VariantFeatureWidget/LaunchBreakendPanel.d.ts +2 -3
- package/esm/VariantFeatureWidget/LaunchBreakendPanel.js +48 -61
- package/esm/VariantFeatureWidget/LaunchBreakendWidgetArea.d.ts +4 -0
- package/esm/VariantFeatureWidget/LaunchBreakendWidgetArea.js +24 -0
- package/esm/VariantFeatureWidget/VariantConsequenceDataGrid.d.ts +5 -0
- package/esm/VariantFeatureWidget/VariantConsequenceDataGrid.js +9 -0
- package/esm/VariantFeatureWidget/VariantConsequenceDataGridWrapper.d.ts +5 -0
- package/esm/VariantFeatureWidget/VariantConsequenceDataGridWrapper.js +17 -0
- package/esm/VariantFeatureWidget/VariantConsequencePanel.d.ts +5 -0
- package/esm/VariantFeatureWidget/VariantConsequencePanel.js +9 -0
- package/esm/VariantFeatureWidget/VariantFeatureWidget.d.ts +1 -2
- package/esm/VariantFeatureWidget/VariantFeatureWidget.js +30 -29
- package/esm/VariantFeatureWidget/VariantSampleFilters.d.ts +9 -0
- package/esm/VariantFeatureWidget/VariantSampleFilters.js +7 -0
- package/esm/VariantFeatureWidget/VariantSampleGrid.d.ts +9 -7
- package/esm/VariantFeatureWidget/VariantSampleGrid.js +15 -22
- package/esm/VariantFeatureWidget/types.d.ts +16 -0
- package/esm/VariantFeatureWidget/types.js +1 -0
- package/esm/VariantRPC/MultiVariantGetGenotypeMatrix.js +10 -27
- package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +12 -7
- package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.js +27 -37
- package/esm/VcfAdapter/VcfAdapter.d.ts +7 -0
- package/esm/VcfAdapter/VcfAdapter.js +31 -5
- package/esm/VcfAdapter/configSchema.d.ts +8 -0
- package/esm/VcfAdapter/configSchema.js +12 -1
- package/esm/VcfFeature/index.js +2 -1
- package/esm/VcfFeature/util.js +3 -4
- package/esm/VcfTabixAdapter/VcfTabixAdapter.js +38 -12
- package/esm/VcfTabixAdapter/configSchema.d.ts +8 -0
- package/esm/VcfTabixAdapter/configSchema.js +8 -0
- package/esm/extensionPoints.js +21 -33
- package/esm/getMultiVariantFeaturesAutorun.d.ts +4 -7
- package/esm/getMultiVariantFeaturesAutorun.js +16 -15
- package/esm/getMultiVariantSourcesAutorun.d.ts +1 -6
- package/esm/shared/BulkEditPanel.d.ts +4 -5
- package/esm/shared/BulkEditPanel.js +70 -66
- package/esm/shared/ClusterDialog.d.ts +4 -5
- package/esm/shared/ClusterDialog.js +44 -62
- package/esm/shared/ColorLegend.d.ts +2 -3
- package/esm/shared/ColorLegend.js +8 -10
- package/esm/shared/HelpfulTips.d.ts +1 -0
- package/esm/shared/HelpfulTips.js +4 -0
- package/esm/shared/LegendBar.d.ts +3 -3
- package/esm/shared/LegendBar.js +7 -13
- package/esm/shared/MAFFilterDialog.d.ts +2 -3
- package/esm/shared/MAFFilterDialog.js +14 -19
- package/esm/shared/MultiVariantBaseModel.d.ts +341 -0
- package/esm/shared/MultiVariantBaseModel.js +277 -0
- package/esm/shared/MultiVariantTooltip.d.ts +6 -0
- package/esm/shared/MultiVariantTooltip.js +17 -0
- package/esm/shared/RectBg.d.ts +2 -3
- package/esm/shared/RectBg.js +3 -4
- package/esm/shared/RowPalettizer.d.ts +2 -3
- package/esm/shared/RowPalettizer.js +30 -25
- package/esm/shared/SetColorDialog.d.ts +2 -3
- package/esm/shared/SetColorDialog.js +26 -42
- package/esm/shared/SetMinMaxDialog.d.ts +1 -2
- package/esm/shared/SetMinMaxDialog.js +11 -18
- package/esm/shared/SetRowHeightDialog.d.ts +8 -0
- package/esm/shared/SetRowHeightDialog.js +15 -0
- package/esm/shared/SharedVariantMixin.d.ts +7 -7
- package/esm/shared/SourcesDataGrid.d.ts +6 -0
- package/esm/shared/SourcesDataGrid.js +62 -0
- package/esm/shared/SourcesGrid.d.ts +2 -3
- package/esm/shared/SourcesGrid.js +5 -111
- package/esm/shared/SourcesGridHeader.d.ts +7 -0
- package/esm/shared/SourcesGridHeader.js +35 -0
- package/esm/shared/multiVariantColor.d.ts +3 -0
- package/esm/shared/multiVariantColor.js +45 -0
- package/esm/types.d.ts +14 -0
- package/esm/types.js +1 -0
- package/esm/util.d.ts +6 -9
- package/esm/util.js +43 -13
- package/package.json +12 -13
- package/dist/VariantFeatureWidget/AnnotGrid.d.ts +0 -6
- package/dist/VariantFeatureWidget/AnnotGrid.js +0 -39
- package/dist/VariantFeatureWidget/VariantAnnotationTable.d.ts +0 -6
- package/dist/VariantFeatureWidget/VariantAnnotationTable.js +0 -16
- package/dist/configSchema.d.ts +0 -34
- package/dist/configSchema.js +0 -44
- package/dist/shared/DraggableDialog.d.ts +0 -6
- package/dist/shared/DraggableDialog.js +0 -62
- package/dist/shared/Tooltip.d.ts +0 -18
- package/dist/shared/Tooltip.js +0 -38
- package/esm/VariantFeatureWidget/AnnotGrid.d.ts +0 -6
- package/esm/VariantFeatureWidget/AnnotGrid.js +0 -13
- package/esm/VariantFeatureWidget/VariantAnnotationTable.d.ts +0 -6
- package/esm/VariantFeatureWidget/VariantAnnotationTable.js +0 -10
- package/esm/configSchema.d.ts +0 -34
- package/esm/configSchema.js +0 -42
- package/esm/shared/DraggableDialog.d.ts +0 -6
- package/esm/shared/DraggableDialog.js +0 -34
- package/esm/shared/Tooltip.d.ts +0 -18
- package/esm/shared/Tooltip.js +0 -33
package/esm/util.d.ts
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
baseUri?: string;
|
|
3
|
-
name: string;
|
|
4
|
-
color?: string;
|
|
5
|
-
group?: string;
|
|
6
|
-
[key: string]: unknown;
|
|
7
|
-
}
|
|
1
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
8
2
|
export declare function fillRectCtx(x: number, y: number, width: number, height: number, ctx: CanvasRenderingContext2D, color?: string): void;
|
|
9
|
-
export declare function getCol(gt: string): "
|
|
10
|
-
export declare const colorPaletteDefault: string[];
|
|
3
|
+
export declare function getCol(gt: string): "blue" | "teal" | "#ccc" | "#CBC3E3";
|
|
11
4
|
export declare function randomColor(str: string): string;
|
|
5
|
+
export declare function colorify(n: number): string;
|
|
6
|
+
export declare function findSecondLargest(arr: Iterable<number>): number;
|
|
7
|
+
export declare function calculateMinorAlleleFrequency(feat: Feature): number;
|
|
8
|
+
export declare function getFeaturesThatPassMinorAlleleFrequencyFilter(feats: Iterable<Feature>, minorAlleleFrequencyFilter: number): Feature[];
|
package/esm/util.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { sum } from '@jbrowse/core/util';
|
|
1
2
|
export function fillRectCtx(x, y, width, height, ctx, color) {
|
|
2
3
|
if (width < 0) {
|
|
3
4
|
x += width;
|
|
@@ -26,22 +27,51 @@ export function getCol(gt) {
|
|
|
26
27
|
return '#CBC3E3';
|
|
27
28
|
}
|
|
28
29
|
}
|
|
29
|
-
export const colorPaletteDefault = [
|
|
30
|
-
'red',
|
|
31
|
-
'blue',
|
|
32
|
-
'green',
|
|
33
|
-
'orange',
|
|
34
|
-
'purple',
|
|
35
|
-
'cyan',
|
|
36
|
-
'pink',
|
|
37
|
-
'darkblue',
|
|
38
|
-
'darkred',
|
|
39
|
-
'pink',
|
|
40
|
-
];
|
|
41
30
|
export function randomColor(str) {
|
|
42
31
|
let sum = 0;
|
|
43
32
|
for (let i = 0; i < str.length; i++) {
|
|
44
33
|
sum += str.charCodeAt(i);
|
|
45
34
|
}
|
|
46
|
-
return `hsl(${sum * 10},
|
|
35
|
+
return `hsl(${colorify(sum * 10)}, 50%, 50%)`;
|
|
36
|
+
}
|
|
37
|
+
export function colorify(n) {
|
|
38
|
+
return `hsl(${n % 255}, 50%, 50%)`;
|
|
39
|
+
}
|
|
40
|
+
export function findSecondLargest(arr) {
|
|
41
|
+
let firstMax = 0;
|
|
42
|
+
let secondMax = 0;
|
|
43
|
+
for (const num of arr) {
|
|
44
|
+
if (num > firstMax) {
|
|
45
|
+
secondMax = firstMax;
|
|
46
|
+
firstMax = num;
|
|
47
|
+
}
|
|
48
|
+
else if (num > secondMax && num !== firstMax) {
|
|
49
|
+
secondMax = num;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return secondMax;
|
|
53
|
+
}
|
|
54
|
+
export function calculateMinorAlleleFrequency(feat) {
|
|
55
|
+
if (feat.get('end') - feat.get('start') <= 10) {
|
|
56
|
+
const samp = feat.get('genotypes');
|
|
57
|
+
const alleleCounts = new Map();
|
|
58
|
+
for (const val of Object.values(samp)) {
|
|
59
|
+
const alleles = val.split(/[/|]/);
|
|
60
|
+
for (const allele of alleles) {
|
|
61
|
+
alleleCounts.set(allele, (alleleCounts.get(allele) || 0) + 1);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return (findSecondLargest(alleleCounts.values()) /
|
|
65
|
+
(sum(alleleCounts.values()) || 1));
|
|
66
|
+
}
|
|
67
|
+
return -1;
|
|
68
|
+
}
|
|
69
|
+
export function getFeaturesThatPassMinorAlleleFrequencyFilter(feats, minorAlleleFrequencyFilter) {
|
|
70
|
+
const mafs = [];
|
|
71
|
+
for (const feat of feats) {
|
|
72
|
+
if (calculateMinorAlleleFrequency(feat) >= minorAlleleFrequencyFilter) {
|
|
73
|
+
mafs.push(feat);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return mafs;
|
|
47
77
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jbrowse/plugin-variants",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.1",
|
|
4
4
|
"description": "JBrowse 2 variant adapters, tracks, etc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jbrowse",
|
|
@@ -37,31 +37,30 @@
|
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@flatten-js/interval-tree": "^1.0.15",
|
|
40
|
-
"@gmod/bgzf-filehandle": "^
|
|
41
|
-
"@gmod/tabix": "^
|
|
40
|
+
"@gmod/bgzf-filehandle": "^2.0.1",
|
|
41
|
+
"@gmod/tabix": "^2.0.0",
|
|
42
42
|
"@gmod/vcf": "^6.0.0",
|
|
43
|
-
"@jbrowse/
|
|
43
|
+
"@jbrowse/core": "^3.0.1",
|
|
44
|
+
"@jbrowse/plugin-circular-view": "^3.0.1",
|
|
45
|
+
"@jbrowse/plugin-linear-genome-view": "^3.0.1",
|
|
46
|
+
"@jbrowse/sv-core": "^3.0.1",
|
|
44
47
|
"@mui/icons-material": "^6.0.0",
|
|
45
|
-
"@mui/x-data-grid": "^7.0.0",
|
|
46
|
-
"generic-filehandle": "^3.0.0"
|
|
47
|
-
},
|
|
48
|
-
"peerDependencies": {
|
|
49
|
-
"@jbrowse/core": "^2.0.0",
|
|
50
|
-
"@jbrowse/plugin-circular-view": "^2.0.0",
|
|
51
|
-
"@jbrowse/plugin-linear-genome-view": "^2.0.0",
|
|
52
48
|
"@mui/material": "^6.0.0",
|
|
49
|
+
"@mui/x-data-grid": "^7.0.0",
|
|
53
50
|
"mobx": "^6.0.0",
|
|
54
51
|
"mobx-react": "^9.0.0",
|
|
55
52
|
"mobx-state-tree": "^5.0.0",
|
|
56
|
-
"react": ">=16.8.0",
|
|
57
53
|
"rxjs": "^7.0.0",
|
|
58
54
|
"tss-react": "^4.0.0"
|
|
59
55
|
},
|
|
56
|
+
"peerDependencies": {
|
|
57
|
+
"react": ">=18.0.0"
|
|
58
|
+
},
|
|
60
59
|
"publishConfig": {
|
|
61
60
|
"access": "public"
|
|
62
61
|
},
|
|
63
62
|
"distModule": "esm/index.js",
|
|
64
63
|
"srcModule": "src/index.ts",
|
|
65
64
|
"module": "esm/index.js",
|
|
66
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "aa2f1d1a89d2361c7fd1a93fe29506fa4554f5cc"
|
|
67
66
|
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.default = VariantAnnotPanel;
|
|
27
|
-
const react_1 = __importStar(require("react"));
|
|
28
|
-
const util_1 = require("@jbrowse/core/util");
|
|
29
|
-
const material_1 = require("@mui/material");
|
|
30
|
-
const x_data_grid_1 = require("@mui/x-data-grid");
|
|
31
|
-
function VariantAnnotPanel({ rows, columns, }) {
|
|
32
|
-
const [checked, setChecked] = (0, react_1.useState)(false);
|
|
33
|
-
const widths = columns.map(e => (0, util_1.measureGridWidth)(rows.map(r => r[e.field])));
|
|
34
|
-
return rows.length ? (react_1.default.createElement("div", null,
|
|
35
|
-
react_1.default.createElement(material_1.FormControlLabel, { control: react_1.default.createElement(material_1.Checkbox, { checked: checked, onChange: event => {
|
|
36
|
-
setChecked(event.target.checked);
|
|
37
|
-
} }), label: react_1.default.createElement(material_1.Typography, { variant: "body2" }, "Show options") }),
|
|
38
|
-
react_1.default.createElement(x_data_grid_1.DataGrid, { rowHeight: 25, rows: rows, columns: columns.map((c, i) => ({ ...c, width: widths[i] })), slots: { toolbar: checked ? x_data_grid_1.GridToolbar : null } }))) : null;
|
|
39
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.default = VariantAnnotationTable;
|
|
7
|
-
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const BaseCard_1 = __importDefault(require("@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/BaseCard"));
|
|
9
|
-
const AnnotGrid_1 = __importDefault(require("./AnnotGrid"));
|
|
10
|
-
function VariantAnnotationTable({ data, fields, title, }) {
|
|
11
|
-
return data.length ? (react_1.default.createElement(BaseCard_1.default, { title: title },
|
|
12
|
-
react_1.default.createElement(AnnotGrid_1.default, { rows: data.map((elt, id) => ({
|
|
13
|
-
id,
|
|
14
|
-
...Object.fromEntries(elt.split('|').map((e, i) => [fields[i], e])),
|
|
15
|
-
})), columns: fields.map(c => ({ field: c })) }))) : null;
|
|
16
|
-
}
|
package/dist/configSchema.d.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
declare const WiggleRenderer: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
2
|
-
color: {
|
|
3
|
-
type: string;
|
|
4
|
-
description: string;
|
|
5
|
-
defaultValue: string;
|
|
6
|
-
};
|
|
7
|
-
posColor: {
|
|
8
|
-
type: string;
|
|
9
|
-
description: string;
|
|
10
|
-
defaultValue: string;
|
|
11
|
-
};
|
|
12
|
-
negColor: {
|
|
13
|
-
type: string;
|
|
14
|
-
description: string;
|
|
15
|
-
defaultValue: string;
|
|
16
|
-
};
|
|
17
|
-
clipColor: {
|
|
18
|
-
type: string;
|
|
19
|
-
description: string;
|
|
20
|
-
defaultValue: string;
|
|
21
|
-
};
|
|
22
|
-
bicolorPivot: {
|
|
23
|
-
type: string;
|
|
24
|
-
model: import("mobx-state-tree").ISimpleType<string>;
|
|
25
|
-
description: string;
|
|
26
|
-
defaultValue: string;
|
|
27
|
-
};
|
|
28
|
-
bicolorPivotValue: {
|
|
29
|
-
type: string;
|
|
30
|
-
defaultValue: number;
|
|
31
|
-
description: string;
|
|
32
|
-
};
|
|
33
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
34
|
-
export default WiggleRenderer;
|
package/dist/configSchema.js
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const configuration_1 = require("@jbrowse/core/configuration");
|
|
4
|
-
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
5
|
-
function x() { }
|
|
6
|
-
const WiggleRenderer = (0, configuration_1.ConfigurationSchema)('WiggleRenderer', {
|
|
7
|
-
color: {
|
|
8
|
-
type: 'color',
|
|
9
|
-
description: 'the color of track, overrides posColor and negColor',
|
|
10
|
-
defaultValue: '#f0f',
|
|
11
|
-
},
|
|
12
|
-
posColor: {
|
|
13
|
-
type: 'color',
|
|
14
|
-
description: 'the color to use when the score is positive',
|
|
15
|
-
defaultValue: 'blue',
|
|
16
|
-
},
|
|
17
|
-
negColor: {
|
|
18
|
-
type: 'color',
|
|
19
|
-
description: 'the color to use when the score is negative',
|
|
20
|
-
defaultValue: 'red',
|
|
21
|
-
},
|
|
22
|
-
clipColor: {
|
|
23
|
-
type: 'color',
|
|
24
|
-
description: 'the color of the clipping marker',
|
|
25
|
-
defaultValue: 'red',
|
|
26
|
-
},
|
|
27
|
-
bicolorPivot: {
|
|
28
|
-
type: 'stringEnum',
|
|
29
|
-
model: mobx_state_tree_1.types.enumeration('Scale type', [
|
|
30
|
-
'numeric',
|
|
31
|
-
'mean',
|
|
32
|
-
'z_score',
|
|
33
|
-
'none',
|
|
34
|
-
]),
|
|
35
|
-
description: 'type of bicolor pivot',
|
|
36
|
-
defaultValue: 'numeric',
|
|
37
|
-
},
|
|
38
|
-
bicolorPivotValue: {
|
|
39
|
-
type: 'number',
|
|
40
|
-
defaultValue: 0,
|
|
41
|
-
description: 'value to use for bicolor pivot',
|
|
42
|
-
},
|
|
43
|
-
}, { explicitlyTyped: true });
|
|
44
|
-
exports.default = WiggleRenderer;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const react_1 = __importStar(require("react"));
|
|
30
|
-
const Close_1 = __importDefault(require("@mui/icons-material/Close"));
|
|
31
|
-
const material_1 = require("@mui/material");
|
|
32
|
-
const mobx_react_1 = require("mobx-react");
|
|
33
|
-
const react_draggable_1 = __importDefault(require("react-draggable"));
|
|
34
|
-
const mui_1 = require("tss-react/mui");
|
|
35
|
-
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
36
|
-
closeButton: {
|
|
37
|
-
position: 'absolute',
|
|
38
|
-
right: theme.spacing(1),
|
|
39
|
-
top: theme.spacing(1),
|
|
40
|
-
color: theme.palette.grey[500],
|
|
41
|
-
},
|
|
42
|
-
}));
|
|
43
|
-
function PaperComponent(props) {
|
|
44
|
-
const ref = (0, react_1.useRef)(null);
|
|
45
|
-
return (react_1.default.createElement(react_draggable_1.default, { nodeRef: ref, cancel: '[class*="MuiDialogContent-root"]', onStart: arg => { var _a, _b; return (_b = (_a = arg.target) === null || _a === void 0 ? void 0 : _a.className) === null || _b === void 0 ? void 0 : _b.includes('MuiDialogTitle'); } },
|
|
46
|
-
react_1.default.createElement(material_1.Paper, { ref: ref, ...props })));
|
|
47
|
-
}
|
|
48
|
-
const DraggableDialog = (0, mobx_react_1.observer)(function DraggableDialog(props) {
|
|
49
|
-
const { classes } = useStyles();
|
|
50
|
-
const { title, children, onClose } = props;
|
|
51
|
-
return (react_1.default.createElement(material_1.Dialog, { ...props, PaperComponent: PaperComponent },
|
|
52
|
-
react_1.default.createElement(material_1.ScopedCssBaseline, null,
|
|
53
|
-
react_1.default.createElement(material_1.DialogTitle, { style: { cursor: 'move' } },
|
|
54
|
-
title,
|
|
55
|
-
onClose ? (react_1.default.createElement(material_1.IconButton, { className: classes.closeButton, onClick: () => {
|
|
56
|
-
onClose();
|
|
57
|
-
} },
|
|
58
|
-
react_1.default.createElement(Close_1.default, null))) : null),
|
|
59
|
-
react_1.default.createElement(material_1.Divider, null),
|
|
60
|
-
children)));
|
|
61
|
-
});
|
|
62
|
-
exports.default = DraggableDialog;
|
package/dist/shared/Tooltip.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { TooltipContentsComponent } from '../Tooltip';
|
|
3
|
-
import type { Source } from '../util';
|
|
4
|
-
import type { Feature } from '@jbrowse/core/util';
|
|
5
|
-
type Coord = [number, number];
|
|
6
|
-
declare const VariantTooltip: (props: {
|
|
7
|
-
model: {
|
|
8
|
-
featureUnderMouse: Feature;
|
|
9
|
-
sources: Source[];
|
|
10
|
-
rowHeight: number;
|
|
11
|
-
};
|
|
12
|
-
height: number;
|
|
13
|
-
offsetMouseCoord: Coord;
|
|
14
|
-
clientMouseCoord: Coord;
|
|
15
|
-
clientRect?: DOMRect;
|
|
16
|
-
TooltipContents?: TooltipContentsComponent;
|
|
17
|
-
}) => React.JSX.Element;
|
|
18
|
-
export default VariantTooltip;
|
package/dist/shared/Tooltip.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const react_1 = __importDefault(require("react"));
|
|
7
|
-
const mobx_react_1 = require("mobx-react");
|
|
8
|
-
const Tooltip_1 = __importDefault(require("../Tooltip"));
|
|
9
|
-
const en = (n) => n.toLocaleString('en-US');
|
|
10
|
-
const TooltipContents = react_1.default.forwardRef(function TooltipContents2({ model, feature }, ref) {
|
|
11
|
-
const start = feature.get('start');
|
|
12
|
-
const end = feature.get('end');
|
|
13
|
-
const refName = feature.get('refName');
|
|
14
|
-
const coord = start === end ? en(start) : `${en(start)}..${en(end)}`;
|
|
15
|
-
const sources = feature.get('sources');
|
|
16
|
-
const source = feature.get('source');
|
|
17
|
-
const obj = Object.fromEntries(model.sources.map(ent => [ent.name, ent]));
|
|
18
|
-
return (react_1.default.createElement("div", { ref: ref },
|
|
19
|
-
[refName, coord].filter(f => !!f).join(':'),
|
|
20
|
-
react_1.default.createElement("br", null),
|
|
21
|
-
sources ? (react_1.default.createElement("table", null,
|
|
22
|
-
react_1.default.createElement("thead", null,
|
|
23
|
-
react_1.default.createElement("tr", null,
|
|
24
|
-
react_1.default.createElement("th", null, "color"),
|
|
25
|
-
react_1.default.createElement("th", null, "source"),
|
|
26
|
-
react_1.default.createElement("th", null, "score"))),
|
|
27
|
-
react_1.default.createElement("tbody", null, Object.entries(sources).map(([source, data]) => {
|
|
28
|
-
var _a;
|
|
29
|
-
return (react_1.default.createElement("tr", { key: source },
|
|
30
|
-
react_1.default.createElement("td", { style: { background: (_a = obj[source]) === null || _a === void 0 ? void 0 : _a.color } }, " "),
|
|
31
|
-
react_1.default.createElement("td", null, source),
|
|
32
|
-
react_1.default.createElement("td", null, data.score)));
|
|
33
|
-
})))) : (react_1.default.createElement("span", null, source))));
|
|
34
|
-
});
|
|
35
|
-
const VariantTooltip = (0, mobx_react_1.observer)((props) => {
|
|
36
|
-
return react_1.default.createElement(Tooltip_1.default, { useClientY: true, TooltipContents: TooltipContents, ...props });
|
|
37
|
-
});
|
|
38
|
-
exports.default = VariantTooltip;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React, { useState } from 'react';
|
|
2
|
-
import { measureGridWidth } from '@jbrowse/core/util';
|
|
3
|
-
import { Checkbox, FormControlLabel, Typography } from '@mui/material';
|
|
4
|
-
import { DataGrid, GridToolbar } from '@mui/x-data-grid';
|
|
5
|
-
export default function VariantAnnotPanel({ rows, columns, }) {
|
|
6
|
-
const [checked, setChecked] = useState(false);
|
|
7
|
-
const widths = columns.map(e => measureGridWidth(rows.map(r => r[e.field])));
|
|
8
|
-
return rows.length ? (React.createElement("div", null,
|
|
9
|
-
React.createElement(FormControlLabel, { control: React.createElement(Checkbox, { checked: checked, onChange: event => {
|
|
10
|
-
setChecked(event.target.checked);
|
|
11
|
-
} }), label: React.createElement(Typography, { variant: "body2" }, "Show options") }),
|
|
12
|
-
React.createElement(DataGrid, { rowHeight: 25, rows: rows, columns: columns.map((c, i) => ({ ...c, width: widths[i] })), slots: { toolbar: checked ? GridToolbar : null } }))) : null;
|
|
13
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import BaseCard from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/BaseCard';
|
|
3
|
-
import AnnotGrid from './AnnotGrid';
|
|
4
|
-
export default function VariantAnnotationTable({ data, fields, title, }) {
|
|
5
|
-
return data.length ? (React.createElement(BaseCard, { title: title },
|
|
6
|
-
React.createElement(AnnotGrid, { rows: data.map((elt, id) => ({
|
|
7
|
-
id,
|
|
8
|
-
...Object.fromEntries(elt.split('|').map((e, i) => [fields[i], e])),
|
|
9
|
-
})), columns: fields.map(c => ({ field: c })) }))) : null;
|
|
10
|
-
}
|
package/esm/configSchema.d.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
declare const WiggleRenderer: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
2
|
-
color: {
|
|
3
|
-
type: string;
|
|
4
|
-
description: string;
|
|
5
|
-
defaultValue: string;
|
|
6
|
-
};
|
|
7
|
-
posColor: {
|
|
8
|
-
type: string;
|
|
9
|
-
description: string;
|
|
10
|
-
defaultValue: string;
|
|
11
|
-
};
|
|
12
|
-
negColor: {
|
|
13
|
-
type: string;
|
|
14
|
-
description: string;
|
|
15
|
-
defaultValue: string;
|
|
16
|
-
};
|
|
17
|
-
clipColor: {
|
|
18
|
-
type: string;
|
|
19
|
-
description: string;
|
|
20
|
-
defaultValue: string;
|
|
21
|
-
};
|
|
22
|
-
bicolorPivot: {
|
|
23
|
-
type: string;
|
|
24
|
-
model: import("mobx-state-tree").ISimpleType<string>;
|
|
25
|
-
description: string;
|
|
26
|
-
defaultValue: string;
|
|
27
|
-
};
|
|
28
|
-
bicolorPivotValue: {
|
|
29
|
-
type: string;
|
|
30
|
-
defaultValue: number;
|
|
31
|
-
description: string;
|
|
32
|
-
};
|
|
33
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
34
|
-
export default WiggleRenderer;
|
package/esm/configSchema.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
|
-
import { types } from 'mobx-state-tree';
|
|
3
|
-
function x() { }
|
|
4
|
-
const WiggleRenderer = ConfigurationSchema('WiggleRenderer', {
|
|
5
|
-
color: {
|
|
6
|
-
type: 'color',
|
|
7
|
-
description: 'the color of track, overrides posColor and negColor',
|
|
8
|
-
defaultValue: '#f0f',
|
|
9
|
-
},
|
|
10
|
-
posColor: {
|
|
11
|
-
type: 'color',
|
|
12
|
-
description: 'the color to use when the score is positive',
|
|
13
|
-
defaultValue: 'blue',
|
|
14
|
-
},
|
|
15
|
-
negColor: {
|
|
16
|
-
type: 'color',
|
|
17
|
-
description: 'the color to use when the score is negative',
|
|
18
|
-
defaultValue: 'red',
|
|
19
|
-
},
|
|
20
|
-
clipColor: {
|
|
21
|
-
type: 'color',
|
|
22
|
-
description: 'the color of the clipping marker',
|
|
23
|
-
defaultValue: 'red',
|
|
24
|
-
},
|
|
25
|
-
bicolorPivot: {
|
|
26
|
-
type: 'stringEnum',
|
|
27
|
-
model: types.enumeration('Scale type', [
|
|
28
|
-
'numeric',
|
|
29
|
-
'mean',
|
|
30
|
-
'z_score',
|
|
31
|
-
'none',
|
|
32
|
-
]),
|
|
33
|
-
description: 'type of bicolor pivot',
|
|
34
|
-
defaultValue: 'numeric',
|
|
35
|
-
},
|
|
36
|
-
bicolorPivotValue: {
|
|
37
|
-
type: 'number',
|
|
38
|
-
defaultValue: 0,
|
|
39
|
-
description: 'value to use for bicolor pivot',
|
|
40
|
-
},
|
|
41
|
-
}, { explicitlyTyped: true });
|
|
42
|
-
export default WiggleRenderer;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import React, { useRef } from 'react';
|
|
2
|
-
import CloseIcon from '@mui/icons-material/Close';
|
|
3
|
-
import { Dialog, DialogTitle, Divider, IconButton, Paper, ScopedCssBaseline, } from '@mui/material';
|
|
4
|
-
import { observer } from 'mobx-react';
|
|
5
|
-
import Draggable from 'react-draggable';
|
|
6
|
-
import { makeStyles } from 'tss-react/mui';
|
|
7
|
-
const useStyles = makeStyles()(theme => ({
|
|
8
|
-
closeButton: {
|
|
9
|
-
position: 'absolute',
|
|
10
|
-
right: theme.spacing(1),
|
|
11
|
-
top: theme.spacing(1),
|
|
12
|
-
color: theme.palette.grey[500],
|
|
13
|
-
},
|
|
14
|
-
}));
|
|
15
|
-
function PaperComponent(props) {
|
|
16
|
-
const ref = useRef(null);
|
|
17
|
-
return (React.createElement(Draggable, { nodeRef: ref, cancel: '[class*="MuiDialogContent-root"]', onStart: arg => { var _a, _b; return (_b = (_a = arg.target) === null || _a === void 0 ? void 0 : _a.className) === null || _b === void 0 ? void 0 : _b.includes('MuiDialogTitle'); } },
|
|
18
|
-
React.createElement(Paper, { ref: ref, ...props })));
|
|
19
|
-
}
|
|
20
|
-
const DraggableDialog = observer(function DraggableDialog(props) {
|
|
21
|
-
const { classes } = useStyles();
|
|
22
|
-
const { title, children, onClose } = props;
|
|
23
|
-
return (React.createElement(Dialog, { ...props, PaperComponent: PaperComponent },
|
|
24
|
-
React.createElement(ScopedCssBaseline, null,
|
|
25
|
-
React.createElement(DialogTitle, { style: { cursor: 'move' } },
|
|
26
|
-
title,
|
|
27
|
-
onClose ? (React.createElement(IconButton, { className: classes.closeButton, onClick: () => {
|
|
28
|
-
onClose();
|
|
29
|
-
} },
|
|
30
|
-
React.createElement(CloseIcon, null))) : null),
|
|
31
|
-
React.createElement(Divider, null),
|
|
32
|
-
children)));
|
|
33
|
-
});
|
|
34
|
-
export default DraggableDialog;
|
package/esm/shared/Tooltip.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { TooltipContentsComponent } from '../Tooltip';
|
|
3
|
-
import type { Source } from '../util';
|
|
4
|
-
import type { Feature } from '@jbrowse/core/util';
|
|
5
|
-
type Coord = [number, number];
|
|
6
|
-
declare const VariantTooltip: (props: {
|
|
7
|
-
model: {
|
|
8
|
-
featureUnderMouse: Feature;
|
|
9
|
-
sources: Source[];
|
|
10
|
-
rowHeight: number;
|
|
11
|
-
};
|
|
12
|
-
height: number;
|
|
13
|
-
offsetMouseCoord: Coord;
|
|
14
|
-
clientMouseCoord: Coord;
|
|
15
|
-
clientRect?: DOMRect;
|
|
16
|
-
TooltipContents?: TooltipContentsComponent;
|
|
17
|
-
}) => React.JSX.Element;
|
|
18
|
-
export default VariantTooltip;
|
package/esm/shared/Tooltip.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { observer } from 'mobx-react';
|
|
3
|
-
import Tooltip from '../Tooltip';
|
|
4
|
-
const en = (n) => n.toLocaleString('en-US');
|
|
5
|
-
const TooltipContents = React.forwardRef(function TooltipContents2({ model, feature }, ref) {
|
|
6
|
-
const start = feature.get('start');
|
|
7
|
-
const end = feature.get('end');
|
|
8
|
-
const refName = feature.get('refName');
|
|
9
|
-
const coord = start === end ? en(start) : `${en(start)}..${en(end)}`;
|
|
10
|
-
const sources = feature.get('sources');
|
|
11
|
-
const source = feature.get('source');
|
|
12
|
-
const obj = Object.fromEntries(model.sources.map(ent => [ent.name, ent]));
|
|
13
|
-
return (React.createElement("div", { ref: ref },
|
|
14
|
-
[refName, coord].filter(f => !!f).join(':'),
|
|
15
|
-
React.createElement("br", null),
|
|
16
|
-
sources ? (React.createElement("table", null,
|
|
17
|
-
React.createElement("thead", null,
|
|
18
|
-
React.createElement("tr", null,
|
|
19
|
-
React.createElement("th", null, "color"),
|
|
20
|
-
React.createElement("th", null, "source"),
|
|
21
|
-
React.createElement("th", null, "score"))),
|
|
22
|
-
React.createElement("tbody", null, Object.entries(sources).map(([source, data]) => {
|
|
23
|
-
var _a;
|
|
24
|
-
return (React.createElement("tr", { key: source },
|
|
25
|
-
React.createElement("td", { style: { background: (_a = obj[source]) === null || _a === void 0 ? void 0 : _a.color } }, " "),
|
|
26
|
-
React.createElement("td", null, source),
|
|
27
|
-
React.createElement("td", null, data.score)));
|
|
28
|
-
})))) : (React.createElement("span", null, source))));
|
|
29
|
-
});
|
|
30
|
-
const VariantTooltip = observer((props) => {
|
|
31
|
-
return React.createElement(Tooltip, { useClientY: true, TooltipContents: TooltipContents, ...props });
|
|
32
|
-
});
|
|
33
|
-
export default VariantTooltip;
|