@jbrowse/plugin-alignments 1.6.9 → 1.7.3
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.d.ts +6 -6
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +216 -0
- package/dist/AlignmentsFeatureDetail/index.d.ts +13 -13
- package/dist/AlignmentsFeatureDetail/index.js +63 -0
- package/dist/AlignmentsFeatureDetail/index.test.js +60 -0
- package/dist/AlignmentsTrack/index.d.ts +2 -2
- package/dist/AlignmentsTrack/index.js +37 -0
- package/dist/BamAdapter/BamAdapter.d.ts +40 -30
- package/dist/BamAdapter/BamAdapter.js +598 -0
- package/dist/BamAdapter/BamAdapter.test.js +177 -0
- package/dist/BamAdapter/BamSlightlyLazyFeature.d.ts +33 -33
- package/dist/BamAdapter/BamSlightlyLazyFeature.js +176 -0
- package/dist/BamAdapter/MismatchParser.d.ts +28 -28
- package/dist/BamAdapter/MismatchParser.js +384 -0
- package/dist/BamAdapter/MismatchParser.test.js +259 -0
- package/dist/BamAdapter/configSchema.d.ts +2 -2
- package/dist/BamAdapter/configSchema.js +48 -0
- package/dist/BamAdapter/index.d.ts +3 -3
- package/dist/BamAdapter/index.js +36 -0
- package/dist/CramAdapter/CramAdapter.d.ts +52 -43
- package/dist/CramAdapter/CramAdapter.js +660 -0
- package/dist/CramAdapter/CramAdapter.test.js +138 -0
- package/dist/CramAdapter/CramSlightlyLazyFeature.d.ts +49 -49
- package/dist/CramAdapter/CramSlightlyLazyFeature.js +447 -0
- package/dist/CramAdapter/CramTestAdapters.d.ts +29 -29
- package/dist/CramAdapter/CramTestAdapters.js +234 -0
- package/dist/CramAdapter/configSchema.d.ts +3 -3
- package/dist/CramAdapter/configSchema.js +40 -0
- package/dist/CramAdapter/index.d.ts +3 -3
- package/dist/CramAdapter/index.js +36 -0
- package/dist/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +9 -9
- package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js +97 -0
- package/dist/HtsgetBamAdapter/configSchema.d.ts +2 -2
- package/dist/HtsgetBamAdapter/configSchema.js +31 -0
- package/dist/HtsgetBamAdapter/index.d.ts +3 -3
- package/dist/HtsgetBamAdapter/index.js +42 -0
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +7 -7
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +69 -0
- package/dist/LinearAlignmentsDisplay/index.d.ts +2 -2
- package/dist/LinearAlignmentsDisplay/index.js +31 -0
- package/dist/LinearAlignmentsDisplay/models/configSchema.d.ts +4 -4
- package/dist/LinearAlignmentsDisplay/models/configSchema.js +25 -0
- package/dist/LinearAlignmentsDisplay/models/configSchema.test.js +83 -0
- package/dist/LinearAlignmentsDisplay/models/model.d.ts +105 -105
- package/dist/LinearAlignmentsDisplay/models/model.js +250 -0
- package/dist/LinearPileupDisplay/components/ColorByModifications.d.ts +14 -14
- package/dist/LinearPileupDisplay/components/ColorByModifications.js +123 -0
- package/dist/LinearPileupDisplay/components/ColorByTag.d.ts +9 -9
- package/dist/LinearPileupDisplay/components/ColorByTag.js +98 -0
- package/dist/LinearPileupDisplay/components/FilterByTag.d.ts +18 -18
- package/dist/LinearPileupDisplay/components/FilterByTag.js +203 -0
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +13 -13
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +32 -0
- package/dist/LinearPileupDisplay/components/SetFeatureHeight.d.ts +16 -16
- package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +99 -0
- package/dist/LinearPileupDisplay/components/SetMaxHeight.d.ts +10 -10
- package/dist/LinearPileupDisplay/components/SetMaxHeight.js +90 -0
- package/dist/LinearPileupDisplay/components/SortByTag.d.ts +9 -9
- package/dist/LinearPileupDisplay/components/SortByTag.js +95 -0
- package/dist/LinearPileupDisplay/configSchema.d.ts +6 -6
- package/dist/LinearPileupDisplay/configSchema.js +47 -0
- package/dist/LinearPileupDisplay/configSchema.test.js +92 -0
- package/dist/LinearPileupDisplay/index.d.ts +2 -2
- package/dist/LinearPileupDisplay/index.js +30 -0
- package/dist/LinearPileupDisplay/model.d.ts +319 -321
- package/dist/LinearPileupDisplay/model.js +602 -0
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +10 -10
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +63 -0
- package/dist/LinearSNPCoverageDisplay/index.d.ts +2 -2
- package/dist/LinearSNPCoverageDisplay/index.js +30 -0
- package/dist/LinearSNPCoverageDisplay/models/configSchema.d.ts +2 -2
- package/dist/LinearSNPCoverageDisplay/models/configSchema.js +57 -0
- package/dist/LinearSNPCoverageDisplay/models/configSchema.test.js +62 -0
- package/dist/LinearSNPCoverageDisplay/models/model.d.ts +346 -96
- package/dist/LinearSNPCoverageDisplay/models/model.js +237 -0
- package/dist/NestedFrequencyTable.d.ts +14 -14
- package/dist/NestedFrequencyTable.js +152 -0
- package/dist/PileupRPC/rpcMethods.d.ts +34 -34
- package/dist/PileupRPC/rpcMethods.js +285 -0
- package/dist/PileupRenderer/PileupLayoutSession.d.ts +29 -29
- package/dist/PileupRenderer/PileupLayoutSession.js +79 -0
- package/dist/PileupRenderer/PileupRenderer.d.ts +125 -125
- package/dist/PileupRenderer/PileupRenderer.js +1220 -0
- package/dist/PileupRenderer/components/PileupRendering.d.ts +23 -23
- package/dist/PileupRenderer/components/PileupRendering.js +270 -0
- package/dist/PileupRenderer/components/PileupRendering.test.js +36 -0
- package/dist/PileupRenderer/configSchema.d.ts +2 -2
- package/dist/PileupRenderer/configSchema.js +72 -0
- package/dist/PileupRenderer/index.d.ts +2 -2
- package/dist/PileupRenderer/index.js +25 -0
- package/dist/PileupRenderer/sortUtil.d.ts +8 -8
- package/dist/PileupRenderer/sortUtil.js +112 -0
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +67 -71
- package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +606 -0
- package/dist/SNPCoverageAdapter/configSchema.d.ts +3 -3
- package/dist/SNPCoverageAdapter/configSchema.js +22 -0
- package/dist/SNPCoverageAdapter/index.d.ts +3 -3
- package/dist/SNPCoverageAdapter/index.js +45 -0
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +20 -20
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +296 -0
- package/dist/SNPCoverageRenderer/configSchema.d.ts +2 -2
- package/dist/SNPCoverageRenderer/configSchema.js +40 -0
- package/dist/SNPCoverageRenderer/index.d.ts +3 -3
- package/dist/SNPCoverageRenderer/index.js +34 -0
- package/dist/declare.d.js +1 -0
- package/dist/index.d.ts +10 -10
- package/dist/index.js +154 -6
- package/dist/index.test.js +26 -0
- package/dist/shared.d.ts +25 -25
- package/dist/shared.js +96 -0
- package/dist/util.d.ts +19 -19
- package/dist/util.js +135 -0
- package/package.json +5 -8
- package/src/BamAdapter/BamAdapter.ts +35 -8
- package/src/CramAdapter/CramAdapter.ts +42 -15
- package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +1 -1
- package/src/LinearPileupDisplay/model.ts +2 -22
- package/src/LinearSNPCoverageDisplay/models/model.ts +6 -36
- package/src/PileupRenderer/PileupRenderer.tsx +3 -6
- package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +11 -17
- package/dist/AlignmentsFeatureDetail/index.test.d.ts +0 -1
- package/dist/LinearAlignmentsDisplay/models/configSchema.test.d.ts +0 -1
- package/dist/LinearPileupDisplay/configSchema.test.d.ts +0 -1
- package/dist/LinearSNPCoverageDisplay/models/configSchema.test.d.ts +0 -1
- package/dist/PileupRenderer/components/PileupRendering.test.d.ts +0 -1
- package/dist/plugin-alignments.cjs.development.js +0 -8438
- package/dist/plugin-alignments.cjs.development.js.map +0 -1
- package/dist/plugin-alignments.cjs.production.min.js +0 -2
- package/dist/plugin-alignments.cjs.production.min.js.map +0 -1
- package/dist/plugin-alignments.esm.js +0 -8430
- package/dist/plugin-alignments.esm.js.map +0 -1
|
@@ -670,8 +670,7 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
670
670
|
// this coloring is similar to igv.js, and is helpful to color negative
|
|
671
671
|
// strand reads differently because their c-g will be flipped (e.g. g-c
|
|
672
672
|
// read right to left)
|
|
673
|
-
|
|
674
|
-
if (flags & 16) {
|
|
673
|
+
if (feature.get('flags') & 16) {
|
|
675
674
|
ctx.fillStyle = '#c8dcc8'
|
|
676
675
|
} else {
|
|
677
676
|
ctx.fillStyle = '#c8c8c8'
|
|
@@ -789,10 +788,8 @@ export default class PileupRenderer extends BoxRendererType {
|
|
|
789
788
|
|
|
790
789
|
if (widthPx >= charWidth && heightPx >= heightLim) {
|
|
791
790
|
// normal SNP coloring
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
mismatch,
|
|
795
|
-
)
|
|
791
|
+
const contrast = contrastForBase[mismatch.base] || 'black'
|
|
792
|
+
ctx.fillStyle = getAlphaColor(contrast, mismatch)
|
|
796
793
|
ctx.fillText(
|
|
797
794
|
mbase,
|
|
798
795
|
leftPx + (widthPx - charWidth) / 2 + 1,
|
|
@@ -4,7 +4,6 @@ import {
|
|
|
4
4
|
} from '@jbrowse/core/data_adapters/BaseAdapter'
|
|
5
5
|
import { AugmentedRegion as Region } from '@jbrowse/core/util/types'
|
|
6
6
|
import SimpleFeature, { Feature } from '@jbrowse/core/util/simpleFeature'
|
|
7
|
-
import SerializableFilterChain from '@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain'
|
|
8
7
|
import { ObservableCreate } from '@jbrowse/core/util/rxjs'
|
|
9
8
|
import { toArray } from 'rxjs/operators'
|
|
10
9
|
import {
|
|
@@ -20,10 +19,6 @@ import {
|
|
|
20
19
|
Mismatch,
|
|
21
20
|
} from '../BamAdapter/MismatchParser'
|
|
22
21
|
|
|
23
|
-
interface SNPCoverageOptions extends BaseOptions {
|
|
24
|
-
filters?: SerializableFilterChain
|
|
25
|
-
}
|
|
26
|
-
|
|
27
22
|
function mismatchLen(mismatch: Mismatch) {
|
|
28
23
|
return !isInterbase(mismatch.type) ? mismatch.length : 1
|
|
29
24
|
}
|
|
@@ -34,11 +29,15 @@ function isInterbase(type: string) {
|
|
|
34
29
|
|
|
35
30
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
36
31
|
function inc(bin: any, strand: number, type: string, field: string) {
|
|
37
|
-
|
|
38
|
-
|
|
32
|
+
let thisBin = bin[type][field]
|
|
33
|
+
if (!thisBin) {
|
|
34
|
+
thisBin = bin[type][field] = {
|
|
35
|
+
total: 0,
|
|
36
|
+
strands: { '-1': 0, '0': 0, '1': 0 },
|
|
37
|
+
}
|
|
39
38
|
}
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
thisBin.total++
|
|
40
|
+
thisBin.strands[strand]++
|
|
42
41
|
}
|
|
43
42
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
44
43
|
function dec(bin: any, strand: number, type: string, field: string) {
|
|
@@ -80,19 +79,14 @@ export default class SNPCoverageAdapter extends BaseFeatureDataAdapter {
|
|
|
80
79
|
return fetchSequence(region, sequenceAdapter)
|
|
81
80
|
}
|
|
82
81
|
|
|
83
|
-
getFeatures(region: Region, opts:
|
|
82
|
+
getFeatures(region: Region, opts: BaseOptions = {}) {
|
|
84
83
|
return ObservableCreate<Feature>(async observer => {
|
|
85
84
|
const { subadapter } = await this.configure()
|
|
86
|
-
|
|
85
|
+
const feats = await subadapter
|
|
87
86
|
.getFeatures(region, opts)
|
|
88
87
|
.pipe(toArray())
|
|
89
88
|
.toPromise()
|
|
90
89
|
|
|
91
|
-
if (opts.filters) {
|
|
92
|
-
const { filters } = opts
|
|
93
|
-
feats = feats.filter(f => filters.passes(f, opts))
|
|
94
|
-
}
|
|
95
|
-
|
|
96
90
|
const { bins, skipmap } = await this.generateCoverageBins(
|
|
97
91
|
feats,
|
|
98
92
|
region,
|
|
@@ -102,7 +96,7 @@ export default class SNPCoverageAdapter extends BaseFeatureDataAdapter {
|
|
|
102
96
|
bins.forEach((bin, index) => {
|
|
103
97
|
observer.next(
|
|
104
98
|
new SimpleFeature({
|
|
105
|
-
id: `${this.id}-${region.start
|
|
99
|
+
id: `${this.id}-${region.start + index}`,
|
|
106
100
|
data: {
|
|
107
101
|
score: bin.total,
|
|
108
102
|
snpinfo: bin,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|