@jbrowse/plugin-alignments 1.7.9 → 2.0.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/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +192 -207
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +1 -0
- package/dist/AlignmentsFeatureDetail/index.d.ts +28 -3
- package/dist/AlignmentsFeatureDetail/index.js +48 -55
- package/dist/AlignmentsFeatureDetail/index.js.map +1 -0
- package/dist/AlignmentsTrack/index.js +24 -32
- package/dist/AlignmentsTrack/index.js.map +1 -0
- package/dist/BamAdapter/BamAdapter.js +345 -585
- package/dist/BamAdapter/BamAdapter.js.map +1 -0
- package/dist/BamAdapter/BamSlightlyLazyFeature.js +143 -174
- package/dist/BamAdapter/BamSlightlyLazyFeature.js.map +1 -0
- package/dist/BamAdapter/MismatchParser.js +340 -416
- package/dist/BamAdapter/MismatchParser.js.map +1 -0
- package/dist/BamAdapter/configSchema.js +33 -46
- package/dist/BamAdapter/configSchema.js.map +1 -0
- package/dist/BamAdapter/index.js +36 -32
- package/dist/BamAdapter/index.js.map +1 -0
- package/dist/CramAdapter/CramAdapter.js +376 -644
- package/dist/CramAdapter/CramAdapter.js.map +1 -0
- package/dist/CramAdapter/CramSlightlyLazyFeature.js +374 -439
- package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +1 -0
- package/dist/CramAdapter/CramTestAdapters.js +169 -227
- package/dist/CramAdapter/CramTestAdapters.js.map +1 -0
- package/dist/CramAdapter/configSchema.js +28 -38
- package/dist/CramAdapter/configSchema.js.map +1 -0
- package/dist/CramAdapter/index.js +37 -32
- package/dist/CramAdapter/index.js.map +1 -0
- package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js +91 -93
- package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js.map +1 -0
- package/dist/HtsgetBamAdapter/configSchema.js +19 -29
- package/dist/HtsgetBamAdapter/configSchema.js.map +1 -0
- package/dist/HtsgetBamAdapter/index.js +44 -38
- package/dist/HtsgetBamAdapter/index.js.map +1 -0
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +36 -65
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +1 -0
- package/dist/LinearAlignmentsDisplay/index.js +22 -28
- package/dist/LinearAlignmentsDisplay/index.js.map +1 -0
- package/dist/LinearAlignmentsDisplay/models/configSchema.js +12 -23
- package/dist/LinearAlignmentsDisplay/models/configSchema.js.map +1 -0
- package/dist/LinearAlignmentsDisplay/models/model.d.ts +10 -10
- package/dist/LinearAlignmentsDisplay/models/model.js +257 -245
- package/dist/LinearAlignmentsDisplay/models/model.js.map +1 -0
- package/dist/LinearPileupDisplay/components/ColorByModifications.js +98 -116
- package/dist/LinearPileupDisplay/components/ColorByModifications.js.map +1 -0
- package/dist/LinearPileupDisplay/components/ColorByTag.js +82 -91
- package/dist/LinearPileupDisplay/components/ColorByTag.js.map +1 -0
- package/dist/LinearPileupDisplay/components/FilterByTag.js +156 -192
- package/dist/LinearPileupDisplay/components/FilterByTag.js.map +1 -0
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +15 -29
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +1 -0
- package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +79 -93
- package/dist/LinearPileupDisplay/components/SetFeatureHeight.js.map +1 -0
- package/dist/LinearPileupDisplay/components/SetMaxHeight.js +78 -81
- package/dist/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -0
- package/dist/LinearPileupDisplay/components/SortByTag.js +80 -88
- package/dist/LinearPileupDisplay/components/SortByTag.js.map +1 -0
- package/dist/LinearPileupDisplay/configSchema.js +40 -42
- package/dist/LinearPileupDisplay/configSchema.js.map +1 -0
- package/dist/LinearPileupDisplay/index.js +21 -27
- package/dist/LinearPileupDisplay/index.js.map +1 -0
- package/dist/LinearPileupDisplay/model.d.ts +33 -20
- package/dist/LinearPileupDisplay/model.js +702 -716
- package/dist/LinearPileupDisplay/model.js.map +1 -0
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +1 -1
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +105 -57
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.js.map +1 -0
- package/dist/LinearSNPCoverageDisplay/index.js +21 -27
- package/dist/LinearSNPCoverageDisplay/index.js.map +1 -0
- package/dist/LinearSNPCoverageDisplay/models/configSchema.js +45 -55
- package/dist/LinearSNPCoverageDisplay/models/configSchema.js.map +1 -0
- package/dist/LinearSNPCoverageDisplay/models/model.d.ts +14 -12
- package/dist/LinearSNPCoverageDisplay/models/model.js +257 -230
- package/dist/LinearSNPCoverageDisplay/models/model.js.map +1 -0
- package/dist/NestedFrequencyTable.js +104 -139
- package/dist/NestedFrequencyTable.js.map +1 -0
- package/dist/PileupRPC/rpcMethods.js +199 -278
- package/dist/PileupRPC/rpcMethods.js.map +1 -0
- package/dist/PileupRenderer/PileupLayoutSession.js +56 -76
- package/dist/PileupRenderer/PileupLayoutSession.js.map +1 -0
- package/dist/PileupRenderer/PileupRenderer.d.ts +56 -11
- package/dist/PileupRenderer/PileupRenderer.js +942 -1134
- package/dist/PileupRenderer/PileupRenderer.js.map +1 -0
- package/dist/PileupRenderer/components/PileupRendering.d.ts +1 -1
- package/dist/PileupRenderer/components/PileupRendering.js +173 -253
- package/dist/PileupRenderer/components/PileupRendering.js.map +1 -0
- package/dist/PileupRenderer/configSchema.js +65 -71
- package/dist/PileupRenderer/configSchema.js.map +1 -0
- package/dist/PileupRenderer/index.js +17 -22
- package/dist/PileupRenderer/index.js.map +1 -0
- package/dist/PileupRenderer/sortUtil.js +83 -107
- package/dist/PileupRenderer/sortUtil.js.map +1 -0
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +2 -0
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +436 -586
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -0
- package/dist/SNPCoverageAdapter/configSchema.js +10 -20
- package/dist/SNPCoverageAdapter/configSchema.js.map +1 -0
- package/dist/SNPCoverageAdapter/index.js +46 -41
- package/dist/SNPCoverageAdapter/index.js.map +1 -0
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +1 -1
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +265 -290
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js.map +1 -0
- package/dist/SNPCoverageRenderer/configSchema.js +30 -39
- package/dist/SNPCoverageRenderer/configSchema.js.map +1 -0
- package/dist/SNPCoverageRenderer/index.js +19 -30
- package/dist/SNPCoverageRenderer/index.js.map +1 -0
- package/dist/index.js +135 -152
- package/dist/index.js.map +1 -0
- package/dist/shared.js +84 -92
- package/dist/shared.js.map +1 -0
- package/dist/util.js +130 -121
- package/dist/util.js.map +1 -0
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +6 -0
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +145 -0
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +1 -0
- package/esm/AlignmentsFeatureDetail/index.d.ts +38 -0
- package/esm/AlignmentsFeatureDetail/index.js +23 -0
- package/esm/AlignmentsFeatureDetail/index.js.map +1 -0
- package/esm/AlignmentsTrack/index.d.ts +2 -0
- package/esm/AlignmentsTrack/index.js +23 -0
- package/esm/AlignmentsTrack/index.js.map +1 -0
- package/esm/BamAdapter/BamAdapter.d.ts +40 -0
- package/esm/BamAdapter/BamAdapter.js +173 -0
- package/esm/BamAdapter/BamAdapter.js.map +1 -0
- package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +33 -0
- package/esm/BamAdapter/BamSlightlyLazyFeature.js +107 -0
- package/esm/BamAdapter/BamSlightlyLazyFeature.js.map +1 -0
- package/esm/BamAdapter/MismatchParser.d.ts +25 -0
- package/esm/BamAdapter/MismatchParser.js +294 -0
- package/esm/BamAdapter/MismatchParser.js.map +1 -0
- package/esm/BamAdapter/configSchema.d.ts +2 -0
- package/esm/BamAdapter/configSchema.js +31 -0
- package/esm/BamAdapter/configSchema.js.map +1 -0
- package/esm/BamAdapter/index.d.ts +3 -0
- package/esm/BamAdapter/index.js +10 -0
- package/esm/BamAdapter/index.js.map +1 -0
- package/esm/CramAdapter/CramAdapter.d.ts +53 -0
- package/esm/CramAdapter/CramAdapter.js +228 -0
- package/esm/CramAdapter/CramAdapter.js.map +1 -0
- package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +49 -0
- package/esm/CramAdapter/CramSlightlyLazyFeature.js +349 -0
- package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +1 -0
- package/esm/CramAdapter/CramTestAdapters.d.ts +29 -0
- package/esm/CramAdapter/CramTestAdapters.js +70 -0
- package/esm/CramAdapter/CramTestAdapters.js.map +1 -0
- package/esm/CramAdapter/configSchema.d.ts +3 -0
- package/esm/CramAdapter/configSchema.js +26 -0
- package/esm/CramAdapter/configSchema.js.map +1 -0
- package/esm/CramAdapter/index.d.ts +3 -0
- package/esm/CramAdapter/index.js +11 -0
- package/esm/CramAdapter/index.js.map +1 -0
- package/esm/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +9 -0
- package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js +27 -0
- package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js.map +1 -0
- package/esm/HtsgetBamAdapter/configSchema.d.ts +2 -0
- package/esm/HtsgetBamAdapter/configSchema.js +17 -0
- package/esm/HtsgetBamAdapter/configSchema.js.map +1 -0
- package/esm/HtsgetBamAdapter/index.d.ts +3 -0
- package/esm/HtsgetBamAdapter/index.js +16 -0
- package/esm/HtsgetBamAdapter/index.js.map +1 -0
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +7 -0
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +34 -0
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +1 -0
- package/esm/LinearAlignmentsDisplay/index.d.ts +2 -0
- package/esm/LinearAlignmentsDisplay/index.js +19 -0
- package/esm/LinearAlignmentsDisplay/index.js.map +1 -0
- package/esm/LinearAlignmentsDisplay/models/configSchema.d.ts +4 -0
- package/esm/LinearAlignmentsDisplay/models/configSchema.js +12 -0
- package/esm/LinearAlignmentsDisplay/models/configSchema.js.map +1 -0
- package/esm/LinearAlignmentsDisplay/models/model.d.ts +105 -0
- package/esm/LinearAlignmentsDisplay/models/model.js +181 -0
- package/esm/LinearAlignmentsDisplay/models/model.js.map +1 -0
- package/esm/LinearPileupDisplay/components/ColorByModifications.d.ts +14 -0
- package/esm/LinearPileupDisplay/components/ColorByModifications.js +71 -0
- package/esm/LinearPileupDisplay/components/ColorByModifications.js.map +1 -0
- package/esm/LinearPileupDisplay/components/ColorByTag.d.ts +9 -0
- package/esm/LinearPileupDisplay/components/ColorByTag.js +45 -0
- package/esm/LinearPileupDisplay/components/ColorByTag.js.map +1 -0
- package/esm/LinearPileupDisplay/components/FilterByTag.d.ts +18 -0
- package/esm/LinearPileupDisplay/components/FilterByTag.js +123 -0
- package/esm/LinearPileupDisplay/components/FilterByTag.js.map +1 -0
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +13 -0
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +13 -0
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +1 -0
- package/esm/LinearPileupDisplay/components/SetFeatureHeight.d.ts +16 -0
- package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +41 -0
- package/esm/LinearPileupDisplay/components/SetFeatureHeight.js.map +1 -0
- package/esm/LinearPileupDisplay/components/SetMaxHeight.d.ts +10 -0
- package/esm/LinearPileupDisplay/components/SetMaxHeight.js +43 -0
- package/esm/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -0
- package/esm/LinearPileupDisplay/components/SortByTag.d.ts +9 -0
- package/esm/LinearPileupDisplay/components/SortByTag.js +43 -0
- package/esm/LinearPileupDisplay/components/SortByTag.js.map +1 -0
- package/esm/LinearPileupDisplay/configSchema.d.ts +6 -0
- package/esm/LinearPileupDisplay/configSchema.js +41 -0
- package/esm/LinearPileupDisplay/configSchema.js.map +1 -0
- package/esm/LinearPileupDisplay/index.d.ts +2 -0
- package/esm/LinearPileupDisplay/index.js +18 -0
- package/esm/LinearPileupDisplay/index.js.map +1 -0
- package/esm/LinearPileupDisplay/model.d.ts +332 -0
- package/esm/LinearPileupDisplay/model.js +576 -0
- package/esm/LinearPileupDisplay/model.js.map +1 -0
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.d.ts +10 -0
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +57 -0
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.js.map +1 -0
- package/esm/LinearSNPCoverageDisplay/index.d.ts +2 -0
- package/esm/LinearSNPCoverageDisplay/index.js +18 -0
- package/esm/LinearSNPCoverageDisplay/index.js.map +1 -0
- package/esm/LinearSNPCoverageDisplay/models/configSchema.d.ts +2 -0
- package/esm/LinearSNPCoverageDisplay/models/configSchema.js +44 -0
- package/esm/LinearSNPCoverageDisplay/models/configSchema.js.map +1 -0
- package/esm/LinearSNPCoverageDisplay/models/model.d.ts +348 -0
- package/esm/LinearSNPCoverageDisplay/models/model.js +185 -0
- package/esm/LinearSNPCoverageDisplay/models/model.js.map +1 -0
- package/esm/NestedFrequencyTable.d.ts +14 -0
- package/esm/NestedFrequencyTable.js +101 -0
- package/esm/NestedFrequencyTable.js.map +1 -0
- package/esm/PileupRPC/rpcMethods.d.ts +34 -0
- package/esm/PileupRPC/rpcMethods.js +70 -0
- package/esm/PileupRPC/rpcMethods.js.map +1 -0
- package/esm/PileupRenderer/PileupLayoutSession.d.ts +32 -0
- package/esm/PileupRenderer/PileupLayoutSession.js +32 -0
- package/esm/PileupRenderer/PileupLayoutSession.js.map +1 -0
- package/esm/PileupRenderer/PileupRenderer.d.ts +182 -0
- package/esm/PileupRenderer/PileupRenderer.js +830 -0
- package/esm/PileupRenderer/PileupRenderer.js.map +1 -0
- package/esm/PileupRenderer/components/PileupRendering.d.ts +23 -0
- package/esm/PileupRenderer/components/PileupRendering.js +138 -0
- package/esm/PileupRenderer/components/PileupRendering.js.map +1 -0
- package/esm/PileupRenderer/configSchema.d.ts +2 -0
- package/esm/PileupRenderer/configSchema.js +64 -0
- package/esm/PileupRenderer/configSchema.js.map +1 -0
- package/esm/PileupRenderer/index.d.ts +2 -0
- package/esm/PileupRenderer/index.js +12 -0
- package/esm/PileupRenderer/index.js.map +1 -0
- package/esm/PileupRenderer/sortUtil.d.ts +8 -0
- package/esm/PileupRenderer/sortUtil.js +80 -0
- package/esm/PileupRenderer/sortUtil.js.map +1 -0
- package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +67 -0
- package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +259 -0
- package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -0
- package/esm/SNPCoverageAdapter/configSchema.d.ts +3 -0
- package/esm/SNPCoverageAdapter/configSchema.js +6 -0
- package/esm/SNPCoverageAdapter/configSchema.js.map +1 -0
- package/esm/SNPCoverageAdapter/index.d.ts +3 -0
- package/esm/SNPCoverageAdapter/index.js +18 -0
- package/esm/SNPCoverageAdapter/index.js.map +1 -0
- package/esm/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +20 -0
- package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +185 -0
- package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js.map +1 -0
- package/esm/SNPCoverageRenderer/configSchema.d.ts +2 -0
- package/esm/SNPCoverageRenderer/configSchema.js +29 -0
- package/esm/SNPCoverageRenderer/configSchema.js.map +1 -0
- package/esm/SNPCoverageRenderer/index.d.ts +3 -0
- package/esm/SNPCoverageRenderer/index.js +14 -0
- package/esm/SNPCoverageRenderer/index.js.map +1 -0
- package/esm/index.d.ts +10 -0
- package/esm/index.js +91 -0
- package/esm/index.js.map +1 -0
- package/esm/shared.d.ts +25 -0
- package/esm/shared.js +28 -0
- package/esm/shared.js.map +1 -0
- package/esm/util.d.ts +19 -0
- package/esm/util.js +83 -0
- package/esm/util.js.map +1 -0
- package/package.json +19 -11
- package/src/AlignmentsFeatureDetail/AlignmentsFeatureDetail.tsx +16 -6
- package/src/AlignmentsFeatureDetail/__snapshots__/index.test.js.snap +321 -397
- package/src/AlignmentsFeatureDetail/index.ts +7 -17
- package/src/BamAdapter/MismatchParser.ts +1 -0
- package/src/LinearAlignmentsDisplay/components/AlignmentsDisplay.tsx +3 -3
- package/src/LinearPileupDisplay/components/ColorByModifications.tsx +7 -7
- package/src/LinearPileupDisplay/components/ColorByTag.tsx +5 -5
- package/src/LinearPileupDisplay/components/FilterByTag.tsx +5 -5
- package/src/LinearPileupDisplay/components/LinearPileupDisplayBlurb.tsx +1 -1
- package/src/LinearPileupDisplay/components/SetFeatureHeight.tsx +9 -9
- package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +5 -5
- package/src/LinearPileupDisplay/components/SortByTag.tsx +5 -5
- package/src/LinearPileupDisplay/model.ts +90 -32
- package/src/LinearSNPCoverageDisplay/components/Tooltip.tsx +44 -30
- package/src/LinearSNPCoverageDisplay/models/model.ts +25 -25
- package/src/PileupRenderer/PileupRenderer.tsx +399 -198
- package/src/PileupRenderer/components/PileupRendering.tsx +11 -11
- package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +5 -0
- package/src/SNPCoverageRenderer/SNPCoverageRenderer.ts +7 -5
- package/dist/AlignmentsFeatureDetail/index.test.js +0 -60
- package/dist/BamAdapter/BamAdapter.test.js +0 -177
- package/dist/BamAdapter/MismatchParser.test.js +0 -251
- package/dist/CramAdapter/CramAdapter.test.js +0 -138
- package/dist/LinearAlignmentsDisplay/models/configSchema.test.js +0 -83
- package/dist/LinearPileupDisplay/configSchema.test.js +0 -92
- package/dist/LinearSNPCoverageDisplay/models/configSchema.test.js +0 -62
- package/dist/PileupRenderer/components/PileupRendering.test.js +0 -36
- package/dist/declare.d.js +0 -1
- package/dist/index.test.js +0 -26
|
@@ -1,72 +1,66 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
}, {
|
|
69
|
-
explicitlyTyped: true
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
exports.default = _default;
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var configuration_1 = require("@jbrowse/core/configuration");
|
|
4
|
+
var mobx_state_tree_1 = require("mobx-state-tree");
|
|
5
|
+
exports.default = (0, configuration_1.ConfigurationSchema)('PileupRenderer', {
|
|
6
|
+
// default magenta here is used to detect the user has not customized this
|
|
7
|
+
color: {
|
|
8
|
+
type: 'color',
|
|
9
|
+
description: 'the color of each feature in a pileup alignment',
|
|
10
|
+
defaultValue: '#f0f',
|
|
11
|
+
contextVariable: ['feature'],
|
|
12
|
+
},
|
|
13
|
+
orientationType: {
|
|
14
|
+
type: 'stringEnum',
|
|
15
|
+
model: mobx_state_tree_1.types.enumeration('orientationType', ['fr', 'rf', 'ff']),
|
|
16
|
+
defaultValue: 'fr',
|
|
17
|
+
description: 'read sequencer orienation. fr is normal "reads pointing at each other ---> <--- while some other sequencers can use other options',
|
|
18
|
+
},
|
|
19
|
+
displayMode: {
|
|
20
|
+
type: 'stringEnum',
|
|
21
|
+
model: mobx_state_tree_1.types.enumeration('displayMode', [
|
|
22
|
+
'normal',
|
|
23
|
+
'compact',
|
|
24
|
+
'collapse',
|
|
25
|
+
]),
|
|
26
|
+
description: 'Alternative display modes',
|
|
27
|
+
defaultValue: 'normal',
|
|
28
|
+
},
|
|
29
|
+
minSubfeatureWidth: {
|
|
30
|
+
type: 'number',
|
|
31
|
+
description: 'the minimum width in px for a pileup mismatch feature. use for increasing/decreasing mismatch marker widths when zoomed out, e.g. 0 or 1',
|
|
32
|
+
defaultValue: 0.7,
|
|
33
|
+
},
|
|
34
|
+
maxHeight: {
|
|
35
|
+
type: 'integer',
|
|
36
|
+
description: 'the maximum height to be used in a pileup rendering',
|
|
37
|
+
defaultValue: 1200,
|
|
38
|
+
},
|
|
39
|
+
maxClippingSize: {
|
|
40
|
+
type: 'integer',
|
|
41
|
+
description: 'the max clip size to be used in a pileup rendering',
|
|
42
|
+
defaultValue: 10000,
|
|
43
|
+
},
|
|
44
|
+
height: {
|
|
45
|
+
type: 'number',
|
|
46
|
+
description: 'the height of each feature in a pileup alignment',
|
|
47
|
+
defaultValue: 7,
|
|
48
|
+
contextVariable: ['feature'],
|
|
49
|
+
},
|
|
50
|
+
noSpacing: {
|
|
51
|
+
type: 'boolean',
|
|
52
|
+
description: 'remove spacing between features',
|
|
53
|
+
defaultValue: false,
|
|
54
|
+
},
|
|
55
|
+
largeInsertionIndicatorScale: {
|
|
56
|
+
type: 'number',
|
|
57
|
+
description: 'scale at which to draw the large insertion indicators (bp/pixel)',
|
|
58
|
+
defaultValue: 10,
|
|
59
|
+
},
|
|
60
|
+
mismatchAlpha: {
|
|
61
|
+
type: 'boolean',
|
|
62
|
+
defaultValue: false,
|
|
63
|
+
description: 'Fade low quality mismatches',
|
|
64
|
+
},
|
|
65
|
+
}, { explicitlyTyped: true });
|
|
66
|
+
//# sourceMappingURL=configSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/PileupRenderer/configSchema.ts"],"names":[],"mappings":";;AAAA,6DAAiE;AACjE,mDAAuC;AAEvC,kBAAe,IAAA,mCAAmB,EAChC,gBAAgB,EAChB;IACE,0EAA0E;IAC1E,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,iDAAiD;QAC9D,YAAY,EAAE,MAAM;QACpB,eAAe,EAAE,CAAC,SAAS,CAAC;KAC7B;IACD,eAAe,EAAE;QACf,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,uBAAK,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/D,YAAY,EAAE,IAAI;QAClB,WAAW,EACT,mIAAmI;KACtI;IACD,WAAW,EAAE;QACX,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,uBAAK,CAAC,WAAW,CAAC,aAAa,EAAE;YACtC,QAAQ;YACR,SAAS;YACT,UAAU;SACX,CAAC;QACF,WAAW,EAAE,2BAA2B;QACxC,YAAY,EAAE,QAAQ;KACvB;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,0IAA0I;QAC5I,YAAY,EAAE,GAAG;KAClB;IACD,SAAS,EAAE;QACT,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,qDAAqD;QAClE,YAAY,EAAE,IAAI;KACnB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,oDAAoD;QACjE,YAAY,EAAE,KAAK;KACpB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kDAAkD;QAC/D,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC,SAAS,CAAC;KAC7B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,iCAAiC;QAC9C,YAAY,EAAE,KAAK;KACpB;IACD,4BAA4B,EAAE;QAC5B,IAAI,EAAE,QAAQ;QACd,WAAW,EACT,kEAAkE;QACpE,YAAY,EAAE,EAAE;KACjB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,KAAK;QACnB,WAAW,EAAE,6BAA6B;KAC3C;CACF,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAA"}
|
|
@@ -1,25 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var _PileupRenderer = _interopRequireDefault(require("./PileupRenderer"));
|
|
11
|
-
|
|
12
|
-
var _PileupRendering = _interopRequireDefault(require("./components/PileupRendering"));
|
|
13
|
-
|
|
14
|
-
var _configSchema = _interopRequireDefault(require("./configSchema"));
|
|
15
|
-
|
|
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
|
+
var PileupRenderer_1 = __importDefault(require("./PileupRenderer"));
|
|
7
|
+
var PileupRendering_1 = __importDefault(require("./components/PileupRendering"));
|
|
8
|
+
var configSchema_1 = __importDefault(require("./configSchema"));
|
|
16
9
|
function register(pluginManager) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
10
|
+
pluginManager.addRendererType(function () {
|
|
11
|
+
return new PileupRenderer_1.default({
|
|
12
|
+
name: 'PileupRenderer',
|
|
13
|
+
ReactComponent: PileupRendering_1.default,
|
|
14
|
+
configSchema: configSchema_1.default,
|
|
15
|
+
pluginManager: pluginManager,
|
|
16
|
+
});
|
|
23
17
|
});
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
}
|
|
19
|
+
exports.default = register;
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/PileupRenderer/index.ts"],"names":[],"mappings":";;;;;AACA,oEAA6C;AAC7C,iFAAyD;AACzD,gEAAyC;AAEzC,SAAwB,QAAQ,CAAC,aAA4B;IAC3D,aAAa,CAAC,eAAe,CAC3B;QACE,OAAA,IAAI,wBAAc,CAAC;YACjB,IAAI,EAAE,gBAAgB;YACtB,cAAc,2BAAA;YACd,YAAY,wBAAA;YACZ,aAAa,eAAA;SACd,CAAC;IALF,CAKE,CACL,CAAA;AACH,CAAC;AAVD,2BAUC"}
|
|
@@ -1,112 +1,88 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.sortFeature = void 0;
|
|
7
|
-
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
featuresInCenterLine.push(innerArray);
|
|
24
|
-
} else {
|
|
25
|
-
featuresOutsideCenter.push(innerArray);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
var isCram = featureArray.length ? featureArray[0].get('tags') : false;
|
|
29
|
-
|
|
30
|
-
switch (type) {
|
|
31
|
-
case 'Start location':
|
|
32
|
-
{
|
|
33
|
-
featuresInCenterLine.sort(function (a, b) {
|
|
34
|
-
return a.get('start') - b.get('start');
|
|
35
|
-
});
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
case 'tag':
|
|
40
|
-
{
|
|
41
|
-
var tag = sortedBy.tag;
|
|
42
|
-
|
|
43
|
-
var getTag = function getTag(f, t) {
|
|
44
|
-
return isCram ? f.get('tags')[t] : f.get(t);
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
var isString = featuresInCenterLine[0] && typeof getTag(featuresInCenterLine[0], tag) === 'string';
|
|
48
|
-
|
|
49
|
-
if (isString) {
|
|
50
|
-
featuresInCenterLine.sort(function (a, b) {
|
|
51
|
-
return getTag(b, tag).localeCompare(getTag(a, tag));
|
|
52
|
-
});
|
|
53
|
-
} else {
|
|
54
|
-
featuresInCenterLine.sort(function (a, b) {
|
|
55
|
-
return (getTag(b, tag) || 0) - (getTag(a, tag) || 0);
|
|
56
|
-
});
|
|
4
|
+
var range_1 = require("@jbrowse/core/util/range");
|
|
5
|
+
var sortFeature = function (features, sortedBy) {
|
|
6
|
+
var featureArray = Array.from(features.values());
|
|
7
|
+
var featuresInCenterLine = [];
|
|
8
|
+
var featuresOutsideCenter = [];
|
|
9
|
+
var pos = sortedBy.pos, type = sortedBy.type;
|
|
10
|
+
// only sort on features that intersect center line, append those outside post-sort
|
|
11
|
+
featureArray.forEach(function (innerArray) {
|
|
12
|
+
var feature = innerArray;
|
|
13
|
+
var start = feature.get('start');
|
|
14
|
+
var end = feature.get('end');
|
|
15
|
+
if ((0, range_1.doesIntersect2)(pos - 1, pos, start, end)) {
|
|
16
|
+
featuresInCenterLine.push(innerArray);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
featuresOutsideCenter.push(innerArray);
|
|
57
20
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
var
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
21
|
+
});
|
|
22
|
+
var isCram = featureArray.length ? featureArray[0].get('tags') : false;
|
|
23
|
+
switch (type) {
|
|
24
|
+
case 'Start location': {
|
|
25
|
+
featuresInCenterLine.sort(function (a, b) { return a.get('start') - b.get('start'); });
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
case 'tag': {
|
|
29
|
+
var tag_1 = sortedBy.tag;
|
|
30
|
+
var getTag_1 = function (f, t) {
|
|
31
|
+
return isCram ? f.get('tags')[t] : f.get(t);
|
|
32
|
+
};
|
|
33
|
+
var isString = featuresInCenterLine[0] &&
|
|
34
|
+
typeof getTag_1(featuresInCenterLine[0], tag_1) === 'string';
|
|
35
|
+
if (isString) {
|
|
36
|
+
featuresInCenterLine.sort(function (a, b) {
|
|
37
|
+
return getTag_1(b, tag_1).localeCompare(getTag_1(a, tag_1));
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
featuresInCenterLine.sort(function (a, b) { return (getTag_1(b, tag_1) || 0) - (getTag_1(a, tag_1) || 0); });
|
|
76
42
|
}
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
// first sort all mismatches, then all reference bases at the end
|
|
46
|
+
case 'Base pair': {
|
|
47
|
+
var baseSortArray_1 = [];
|
|
48
|
+
featuresInCenterLine.forEach(function (feature) {
|
|
49
|
+
var mismatches = feature.get('mismatches');
|
|
50
|
+
mismatches.forEach(function (mismatch) {
|
|
51
|
+
var start = feature.get('start');
|
|
52
|
+
var offset = start + mismatch.start + 1;
|
|
53
|
+
var consuming = mismatch.type === 'insertion' || mismatch.type === 'softclip';
|
|
54
|
+
var len = consuming ? 0 : mismatch.length;
|
|
55
|
+
if (pos >= offset && pos < offset + len) {
|
|
56
|
+
baseSortArray_1.push([feature.id(), mismatch]);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
var baseMap_1 = new Map(baseSortArray_1);
|
|
61
|
+
featuresInCenterLine.sort(function (a, b) {
|
|
62
|
+
var aMismatch = baseMap_1.get(a.id());
|
|
63
|
+
var bMismatch = baseMap_1.get(b.id());
|
|
64
|
+
var acode = bMismatch && bMismatch.base.toUpperCase();
|
|
65
|
+
var bcode = aMismatch && aMismatch.base.toUpperCase();
|
|
66
|
+
if (acode === bcode && acode === '*') {
|
|
67
|
+
// @ts-ignore
|
|
68
|
+
return aMismatch.length - bMismatch.length;
|
|
69
|
+
}
|
|
70
|
+
return ((acode ? acode.charCodeAt(0) : 0) - (bcode ? bcode.charCodeAt(0) : 0));
|
|
71
|
+
});
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
// sorts positive strands then negative strands
|
|
75
|
+
case 'Read strand': {
|
|
76
|
+
featuresInCenterLine.sort(function (a, b) {
|
|
77
|
+
return a.get('strand') <= b.get('strand') ? 1 : -1;
|
|
78
|
+
});
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
var sortedMap = new Map(featuresInCenterLine
|
|
83
|
+
.concat(featuresOutsideCenter)
|
|
84
|
+
.map(function (feature) { return [feature.id(), feature]; }));
|
|
85
|
+
return sortedMap;
|
|
110
86
|
};
|
|
111
|
-
|
|
112
|
-
|
|
87
|
+
exports.sortFeature = sortFeature;
|
|
88
|
+
//# sourceMappingURL=sortUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sortUtil.js","sourceRoot":"","sources":["../../src/PileupRenderer/sortUtil.ts"],"names":[],"mappings":"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"}
|