@gmod/cram 1.6.3 → 1.7.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/CHANGELOG.md +9 -0
- package/dist/craiIndex.d.ts +19 -12
- package/dist/craiIndex.js +63 -123
- package/dist/craiIndex.js.map +1 -1
- package/dist/cram-bundle.js +2 -17
- package/dist/cram-bundle.js.LICENSE.txt +17 -0
- package/dist/cramFile/codecs/_base.d.ts +26 -5
- package/dist/cramFile/codecs/_base.js +3 -39
- package/dist/cramFile/codecs/_base.js.map +1 -1
- package/dist/cramFile/codecs/beta.d.ts +7 -3
- package/dist/cramFile/codecs/beta.js +13 -31
- package/dist/cramFile/codecs/beta.js.map +1 -1
- package/dist/cramFile/codecs/byteArrayLength.d.ts +13 -7
- package/dist/cramFile/codecs/byteArrayLength.js +22 -41
- package/dist/cramFile/codecs/byteArrayLength.js.map +1 -1
- package/dist/cramFile/codecs/byteArrayStop.d.ts +9 -5
- package/dist/cramFile/codecs/byteArrayStop.js +25 -46
- package/dist/cramFile/codecs/byteArrayStop.js.map +1 -1
- package/dist/cramFile/codecs/dataSeriesTypes.d.ts +4 -0
- package/dist/cramFile/codecs/dataSeriesTypes.js +3 -0
- package/dist/cramFile/codecs/dataSeriesTypes.js.map +1 -0
- package/dist/cramFile/codecs/external.d.ts +10 -6
- package/dist/cramFile/codecs/external.js +26 -44
- package/dist/cramFile/codecs/external.js.map +1 -1
- package/dist/cramFile/codecs/gamma.d.ts +7 -3
- package/dist/cramFile/codecs/gamma.js +16 -34
- package/dist/cramFile/codecs/gamma.js.map +1 -1
- package/dist/cramFile/codecs/getBits.d.ts +7 -0
- package/dist/cramFile/codecs/getBits.js +26 -0
- package/dist/cramFile/codecs/getBits.js.map +1 -0
- package/dist/cramFile/codecs/huffman.d.ts +17 -13
- package/dist/cramFile/codecs/huffman.js +76 -85
- package/dist/cramFile/codecs/huffman.js.map +1 -1
- package/dist/cramFile/codecs/index.d.ts +4 -2
- package/dist/cramFile/codecs/index.js +12 -13
- package/dist/cramFile/codecs/index.js.map +1 -1
- package/dist/cramFile/codecs/subexp.d.ts +7 -3
- package/dist/cramFile/codecs/subexp.js +19 -36
- package/dist/cramFile/codecs/subexp.js.map +1 -1
- package/dist/cramFile/constants.d.ts +35 -35
- package/dist/cramFile/constants.js +1 -1
- package/dist/cramFile/constants.js.map +1 -1
- package/dist/cramFile/container/compressionScheme.d.ts +57 -11
- package/dist/cramFile/container/compressionScheme.js +37 -32
- package/dist/cramFile/container/compressionScheme.js.map +1 -1
- package/dist/cramFile/container/index.d.ts +23 -9
- package/dist/cramFile/container/index.js +74 -144
- package/dist/cramFile/container/index.js.map +1 -1
- package/dist/cramFile/encoding.d.ts +78 -0
- package/dist/cramFile/encoding.js +3 -0
- package/dist/cramFile/encoding.js.map +1 -0
- package/dist/cramFile/file.d.ts +91 -41
- package/dist/cramFile/file.js +234 -368
- package/dist/cramFile/file.js.map +1 -1
- package/dist/cramFile/filehandle.d.ts +2 -0
- package/dist/cramFile/filehandle.js +3 -0
- package/dist/cramFile/filehandle.js.map +1 -0
- package/dist/cramFile/index.d.ts +1 -1
- package/dist/cramFile/index.js +1 -1
- package/dist/cramFile/index.js.map +1 -1
- package/dist/cramFile/record.d.ts +61 -17
- package/dist/cramFile/record.js +153 -77
- package/dist/cramFile/record.js.map +1 -1
- package/dist/cramFile/sectionParsers.d.ts +99 -8
- package/dist/cramFile/sectionParsers.js +70 -80
- package/dist/cramFile/sectionParsers.js.map +1 -1
- package/dist/cramFile/slice/decodeRecord.d.ts +30 -2
- package/dist/cramFile/slice/decodeRecord.js +148 -118
- package/dist/cramFile/slice/decodeRecord.js.map +1 -1
- package/dist/cramFile/slice/index.d.ts +21 -14
- package/dist/cramFile/slice/index.js +286 -381
- package/dist/cramFile/slice/index.js.map +1 -1
- package/dist/cramFile/util.d.ts +11 -5
- package/dist/cramFile/util.js +19 -97
- package/dist/cramFile/util.js.map +1 -1
- package/dist/errors.d.ts +5 -10
- package/dist/errors.js +11 -62
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/indexedCramFile.d.ts +37 -12
- package/dist/indexedCramFile.js +114 -154
- package/dist/indexedCramFile.js.map +1 -1
- package/dist/io/index.d.ts +5 -5
- package/dist/io/index.js +9 -9
- package/dist/io/index.js.map +1 -1
- package/dist/rans/constants.js +3 -3
- package/dist/rans/constants.js.map +1 -1
- package/dist/rans/d04.js +15 -15
- package/dist/rans/d04.js.map +1 -1
- package/dist/rans/d14.js +21 -21
- package/dist/rans/d14.js.map +1 -1
- package/dist/rans/decoding.js +27 -30
- package/dist/rans/decoding.js.map +1 -1
- package/dist/rans/frequencies.js +11 -11
- package/dist/rans/frequencies.js.map +1 -1
- package/dist/rans/index.js +46 -49
- package/dist/rans/index.js.map +1 -1
- package/dist/sam.d.ts +8 -1
- package/dist/sam.js +7 -7
- package/dist/sam.js.map +1 -1
- package/dist/typescript.d.ts +3 -0
- package/dist/typescript.js +11 -0
- package/dist/typescript.js.map +1 -0
- package/dist/unzip-pako.js +1 -1
- package/dist/unzip-pako.js.map +1 -1
- package/dist/unzip.js +1 -1
- package/dist/unzip.js.map +1 -1
- package/errors.js +11 -62
- package/esm/craiIndex.d.ts +19 -12
- package/esm/craiIndex.js +8 -24
- package/esm/craiIndex.js.map +1 -1
- package/esm/cramFile/codecs/_base.d.ts +26 -5
- package/esm/cramFile/codecs/_base.js +1 -35
- package/esm/cramFile/codecs/_base.js.map +1 -1
- package/esm/cramFile/codecs/beta.d.ts +7 -3
- package/esm/cramFile/codecs/beta.js +4 -3
- package/esm/cramFile/codecs/beta.js.map +1 -1
- package/esm/cramFile/codecs/byteArrayLength.d.ts +13 -7
- package/esm/cramFile/codecs/byteArrayLength.js +1 -1
- package/esm/cramFile/codecs/byteArrayLength.js.map +1 -1
- package/esm/cramFile/codecs/byteArrayStop.d.ts +9 -5
- package/esm/cramFile/codecs/byteArrayStop.js +7 -9
- package/esm/cramFile/codecs/byteArrayStop.js.map +1 -1
- package/esm/cramFile/codecs/dataSeriesTypes.d.ts +4 -0
- package/esm/cramFile/codecs/dataSeriesTypes.js +2 -0
- package/esm/cramFile/codecs/dataSeriesTypes.js.map +1 -0
- package/esm/cramFile/codecs/external.d.ts +10 -6
- package/esm/cramFile/codecs/external.js +4 -3
- package/esm/cramFile/codecs/external.js.map +1 -1
- package/esm/cramFile/codecs/gamma.d.ts +7 -3
- package/esm/cramFile/codecs/gamma.js +5 -4
- package/esm/cramFile/codecs/gamma.js.map +1 -1
- package/esm/cramFile/codecs/getBits.d.ts +7 -0
- package/esm/cramFile/codecs/getBits.js +21 -0
- package/esm/cramFile/codecs/getBits.js.map +1 -0
- package/esm/cramFile/codecs/huffman.d.ts +17 -13
- package/esm/cramFile/codecs/huffman.js +22 -9
- package/esm/cramFile/codecs/huffman.js.map +1 -1
- package/esm/cramFile/codecs/index.d.ts +4 -2
- package/esm/cramFile/codecs/index.js +1 -1
- package/esm/cramFile/codecs/index.js.map +1 -1
- package/esm/cramFile/codecs/subexp.d.ts +7 -3
- package/esm/cramFile/codecs/subexp.js +7 -5
- package/esm/cramFile/codecs/subexp.js.map +1 -1
- package/esm/cramFile/constants.d.ts +35 -35
- package/esm/cramFile/constants.js.map +1 -1
- package/esm/cramFile/container/compressionScheme.d.ts +57 -11
- package/esm/cramFile/container/compressionScheme.js +15 -8
- package/esm/cramFile/container/compressionScheme.js.map +1 -1
- package/esm/cramFile/container/index.d.ts +23 -9
- package/esm/cramFile/container/index.js +11 -9
- package/esm/cramFile/container/index.js.map +1 -1
- package/esm/cramFile/encoding.d.ts +78 -0
- package/esm/cramFile/encoding.js +2 -0
- package/esm/cramFile/encoding.js.map +1 -0
- package/esm/cramFile/file.d.ts +91 -41
- package/esm/cramFile/file.js +59 -47
- package/esm/cramFile/file.js.map +1 -1
- package/esm/cramFile/filehandle.d.ts +2 -0
- package/esm/cramFile/filehandle.js +2 -0
- package/esm/cramFile/filehandle.js.map +1 -0
- package/esm/cramFile/index.d.ts +1 -1
- package/esm/cramFile/index.js.map +1 -1
- package/esm/cramFile/record.d.ts +61 -17
- package/esm/cramFile/record.js +83 -5
- package/esm/cramFile/record.js.map +1 -1
- package/esm/cramFile/sectionParsers.d.ts +99 -8
- package/esm/cramFile/sectionParsers.js +7 -17
- package/esm/cramFile/sectionParsers.js.map +1 -1
- package/esm/cramFile/slice/decodeRecord.d.ts +30 -2
- package/esm/cramFile/slice/decodeRecord.js +102 -70
- package/esm/cramFile/slice/decodeRecord.js.map +1 -1
- package/esm/cramFile/slice/index.d.ts +21 -14
- package/esm/cramFile/slice/index.js +77 -38
- package/esm/cramFile/slice/index.js.map +1 -1
- package/esm/cramFile/util.d.ts +11 -5
- package/esm/cramFile/util.js +11 -82
- package/esm/cramFile/util.js.map +1 -1
- package/esm/errors.d.ts +5 -10
- package/esm/errors.js +0 -5
- package/esm/errors.js.map +1 -1
- package/esm/index.d.ts +3 -3
- package/esm/index.js.map +1 -1
- package/esm/indexedCramFile.d.ts +37 -12
- package/esm/indexedCramFile.js +19 -8
- package/esm/indexedCramFile.js.map +1 -1
- package/esm/io/index.d.ts +5 -5
- package/esm/io/index.js +3 -3
- package/esm/io/index.js.map +1 -1
- package/esm/sam.d.ts +8 -1
- package/esm/sam.js.map +1 -1
- package/esm/typescript.d.ts +3 -0
- package/esm/typescript.js +7 -0
- package/esm/typescript.js.map +1 -0
- package/package.json +18 -11
- package/src/{craiIndex.js → craiIndex.ts} +37 -31
- package/src/cramFile/codecs/_base.ts +45 -0
- package/src/cramFile/codecs/beta.ts +34 -0
- package/src/cramFile/codecs/{byteArrayLength.js → byteArrayLength.ts} +27 -5
- package/src/cramFile/codecs/{byteArrayStop.js → byteArrayStop.ts} +25 -12
- package/src/cramFile/codecs/dataSeriesTypes.ts +39 -0
- package/src/cramFile/codecs/{external.js → external.ts} +28 -12
- package/src/cramFile/codecs/gamma.ts +42 -0
- package/src/cramFile/codecs/getBits.ts +28 -0
- package/src/cramFile/codecs/{huffman.js → huffman.ts} +48 -15
- package/src/cramFile/codecs/{index.js → index.ts} +9 -3
- package/src/cramFile/codecs/subexp.ts +45 -0
- package/src/cramFile/{constants.js → constants.ts} +0 -0
- package/src/cramFile/container/{compressionScheme.js → compressionScheme.ts} +50 -18
- package/src/cramFile/container/{index.js → index.ts} +13 -13
- package/src/cramFile/encoding.ts +98 -0
- package/src/cramFile/{file.js → file.ts} +136 -62
- package/src/cramFile/filehandle.ts +3 -0
- package/src/cramFile/{index.js → index.ts} +0 -0
- package/src/cramFile/{record.js → record.ts} +185 -14
- package/src/cramFile/{sectionParsers.js → sectionParsers.ts} +148 -20
- package/src/cramFile/slice/{decodeRecord.js → decodeRecord.ts} +158 -105
- package/src/cramFile/slice/{index.js → index.ts} +138 -63
- package/src/cramFile/{util.js → util.ts} +28 -17
- package/src/{errors.js → errors.ts} +0 -5
- package/src/{index.js → index.ts} +0 -0
- package/src/{indexedCramFile.js → indexedCramFile.ts} +79 -19
- package/src/io/{index.js → index.ts} +10 -5
- package/src/{sam.js → sam.ts} +7 -2
- package/src/typescript.ts +17 -0
- package/src/typings/binary-parser.d.ts +44 -0
- package/src/typings/bzip2.d.ts +7 -0
- package/src/typings/htscodecs.d.ts +6 -0
- package/dist/io/bufferCache.d.ts +0 -12
- package/dist/io/bufferCache.js +0 -112
- package/dist/io/bufferCache.js.map +0 -1
- package/dist/io/localFile.d.ts +0 -10
- package/dist/io/localFile.js +0 -108
- package/dist/io/localFile.js.map +0 -1
- package/dist/io/remoteFile.d.ts +0 -16
- package/dist/io/remoteFile.js +0 -143
- package/dist/io/remoteFile.js.map +0 -1
- package/esm/io/bufferCache.d.ts +0 -12
- package/esm/io/bufferCache.js +0 -54
- package/esm/io/bufferCache.js.map +0 -1
- package/esm/io/localFile.d.ts +0 -10
- package/esm/io/localFile.js +0 -31
- package/esm/io/localFile.js.map +0 -1
- package/esm/io/remoteFile.d.ts +0 -16
- package/esm/io/remoteFile.js +0 -64
- package/esm/io/remoteFile.js.map +0 -1
- package/src/cramFile/codecs/_base.js +0 -49
- package/src/cramFile/codecs/beta.js +0 -23
- package/src/cramFile/codecs/gamma.js +0 -30
- package/src/cramFile/codecs/subexp.js +0 -32
- package/src/io/bufferCache.js +0 -66
- package/src/io/localFile.js +0 -35
- package/src/io/remoteFile.js +0 -71
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/cramFile/file.
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/cramFile/file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filehandle.js","sourceRoot":"","sources":["../../src/cramFile/filehandle.ts"],"names":[],"mappings":""}
|
package/dist/cramFile/index.d.ts
CHANGED
package/dist/cramFile/index.js
CHANGED
|
@@ -3,6 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
6
|
+
const file_1 = __importDefault(require("./file"));
|
|
7
7
|
exports.default = file_1.default;
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cramFile/index.
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cramFile/index.ts"],"names":[],"mappings":";;;;;AAAA,kDAA6B;AAE7B,kBAAe,cAAQ,CAAA"}
|
|
@@ -1,8 +1,63 @@
|
|
|
1
|
+
import CramContainerCompressionScheme from './container/compressionScheme';
|
|
2
|
+
import decodeRecord from './slice/decodeRecord';
|
|
3
|
+
export declare type RefRegion = {
|
|
4
|
+
start: number;
|
|
5
|
+
end: number;
|
|
6
|
+
seq: string;
|
|
7
|
+
};
|
|
8
|
+
export declare type ReadFeature = {
|
|
9
|
+
code: string;
|
|
10
|
+
pos: number;
|
|
11
|
+
refPos: number;
|
|
12
|
+
data: any;
|
|
13
|
+
ref?: string;
|
|
14
|
+
sub?: string;
|
|
15
|
+
};
|
|
16
|
+
export declare type MateRecord = {
|
|
17
|
+
readName?: string;
|
|
18
|
+
sequenceId: number;
|
|
19
|
+
alignmentStart: number;
|
|
20
|
+
flags?: number;
|
|
21
|
+
uniqueId?: number;
|
|
22
|
+
};
|
|
23
|
+
export declare const BamFlags: readonly [readonly [1, "Paired"], readonly [2, "ProperlyPaired"], readonly [4, "SegmentUnmapped"], readonly [8, "MateUnmapped"], readonly [16, "ReverseComplemented"], readonly [32, "MateReverseComplemented"], readonly [64, "Read1"], readonly [128, "Read2"], readonly [256, "Secondary"], readonly [512, "FailedQc"], readonly [1024, "Duplicate"], readonly [2048, "Supplementary"]];
|
|
24
|
+
export declare const CramFlags: readonly [readonly [1, "PreservingQualityScores"], readonly [2, "Detached"], readonly [4, "WithMateDownstream"], readonly [8, "DecodeSequenceAsStar"]];
|
|
25
|
+
export declare const MateFlags: readonly [readonly [1, "OnNegativeStrand"], readonly [2, "Unmapped"]];
|
|
26
|
+
declare type FlagsDecoder<Type> = {
|
|
27
|
+
[Property in Type as `is${Capitalize<string & Property>}`]: (flags: number) => boolean;
|
|
28
|
+
};
|
|
29
|
+
declare type FlagsEncoder<Type> = {
|
|
30
|
+
[Property in Type as `set${Capitalize<string & Property>}`]: (flags: number) => number;
|
|
31
|
+
};
|
|
32
|
+
export declare const BamFlagsDecoder: FlagsDecoder<"Paired" | "ProperlyPaired" | "SegmentUnmapped" | "MateUnmapped" | "ReverseComplemented" | "MateReverseComplemented" | "Read1" | "Read2" | "Secondary" | "FailedQc" | "Duplicate" | "Supplementary"> & FlagsEncoder<"Paired" | "ProperlyPaired" | "SegmentUnmapped" | "MateUnmapped" | "ReverseComplemented" | "MateReverseComplemented" | "Read1" | "Read2" | "Secondary" | "FailedQc" | "Duplicate" | "Supplementary">;
|
|
33
|
+
export declare const CramFlagsDecoder: FlagsDecoder<"PreservingQualityScores" | "Detached" | "WithMateDownstream" | "DecodeSequenceAsStar"> & FlagsEncoder<"PreservingQualityScores" | "Detached" | "WithMateDownstream" | "DecodeSequenceAsStar">;
|
|
34
|
+
export declare const MateFlagsDecoder: FlagsDecoder<"OnNegativeStrand" | "Unmapped"> & FlagsEncoder<"OnNegativeStrand" | "Unmapped">;
|
|
1
35
|
/**
|
|
2
36
|
* Class of each CRAM record returned by this API.
|
|
3
37
|
*/
|
|
4
38
|
export default class CramRecord {
|
|
5
|
-
tags:
|
|
39
|
+
tags: Record<string, string>;
|
|
40
|
+
flags: number;
|
|
41
|
+
cramFlags: number;
|
|
42
|
+
readBases?: string | null;
|
|
43
|
+
_refRegion?: RefRegion;
|
|
44
|
+
readFeatures?: ReadFeature[];
|
|
45
|
+
alignmentStart: number;
|
|
46
|
+
lengthOnRef: number | undefined;
|
|
47
|
+
readLength: number;
|
|
48
|
+
templateLength?: number;
|
|
49
|
+
templateSize?: number;
|
|
50
|
+
readName?: string;
|
|
51
|
+
mateRecordNumber?: number;
|
|
52
|
+
mate?: MateRecord;
|
|
53
|
+
uniqueId: number;
|
|
54
|
+
sequenceId: number;
|
|
55
|
+
readGroupId: number;
|
|
56
|
+
mappingQuality: number | undefined;
|
|
57
|
+
qualityScores: number[] | null | undefined;
|
|
58
|
+
constructor({ flags, cramFlags, readLength, mappingQuality, lengthOnRef, qualityScores, mateRecordNumber, readBases, readFeatures, mateToUse, readGroupId, readName, sequenceId, uniqueId, templateSize, alignmentStart, tags, }: ReturnType<typeof decodeRecord> & {
|
|
59
|
+
uniqueId: number;
|
|
60
|
+
});
|
|
6
61
|
/**
|
|
7
62
|
* @returns {boolean} true if the read is paired, regardless of whether both segments are mapped
|
|
8
63
|
*/
|
|
@@ -43,13 +98,12 @@ export default class CramRecord {
|
|
|
43
98
|
* Get the original sequence of this read.
|
|
44
99
|
* @returns {String} sequence basepairs
|
|
45
100
|
*/
|
|
46
|
-
getReadBases(): string;
|
|
47
|
-
readBases: any;
|
|
101
|
+
getReadBases(): string | null | undefined;
|
|
48
102
|
/**
|
|
49
103
|
* Get the pair orientation of a paired read. Adapted from igv.js
|
|
50
104
|
* @returns {String} of paired orientatin
|
|
51
105
|
*/
|
|
52
|
-
getPairOrientation(): string;
|
|
106
|
+
getPairOrientation(): string | null;
|
|
53
107
|
/**
|
|
54
108
|
* Annotates this feature with the given reference sequence basepair
|
|
55
109
|
* information. This will add a `sub` and a `ref` item to base
|
|
@@ -63,17 +117,7 @@ export default class CramRecord {
|
|
|
63
117
|
* @param {CramContainerCompressionScheme} compressionScheme
|
|
64
118
|
* @returns {undefined} nothing
|
|
65
119
|
*/
|
|
66
|
-
addReferenceSequence(refRegion:
|
|
67
|
-
|
|
68
|
-
end: number;
|
|
69
|
-
seq: string;
|
|
70
|
-
}, compressionScheme: CramContainerCompressionScheme): undefined;
|
|
71
|
-
_refRegion: {
|
|
72
|
-
start: number;
|
|
73
|
-
end: number;
|
|
74
|
-
seq: string;
|
|
75
|
-
} | undefined;
|
|
76
|
-
toJSON(): {
|
|
77
|
-
readBases: string;
|
|
78
|
-
};
|
|
120
|
+
addReferenceSequence(refRegion: RefRegion, compressionScheme: CramContainerCompressionScheme): void;
|
|
121
|
+
toJSON(): any;
|
|
79
122
|
}
|
|
123
|
+
export {};
|
package/dist/cramFile/record.js
CHANGED
|
@@ -3,28 +3,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
6
|
+
exports.MateFlagsDecoder = exports.CramFlagsDecoder = exports.BamFlagsDecoder = exports.MateFlags = exports.CramFlags = exports.BamFlags = void 0;
|
|
7
|
+
const constants_1 = __importDefault(require("./constants"));
|
|
7
8
|
function decodeReadSequence(cramRecord, refRegion) {
|
|
8
9
|
// if it has no length, it has no sequence
|
|
9
10
|
if (!cramRecord.lengthOnRef && !cramRecord.readLength) {
|
|
10
|
-
return
|
|
11
|
+
return null;
|
|
11
12
|
}
|
|
12
13
|
if (cramRecord.isUnknownBases()) {
|
|
13
|
-
return
|
|
14
|
+
return null;
|
|
14
15
|
}
|
|
15
16
|
// remember: all coordinates are 1-based closed
|
|
16
|
-
|
|
17
|
+
const regionSeqOffset = cramRecord.alignmentStart - refRegion.start;
|
|
17
18
|
if (!cramRecord.readFeatures) {
|
|
18
19
|
return refRegion.seq
|
|
19
20
|
.substr(regionSeqOffset, cramRecord.lengthOnRef)
|
|
20
21
|
.toUpperCase();
|
|
21
22
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
let bases = '';
|
|
24
|
+
let regionPos = regionSeqOffset;
|
|
25
|
+
let currentReadFeature = 0;
|
|
25
26
|
while (bases.length < cramRecord.readLength) {
|
|
26
27
|
if (currentReadFeature < cramRecord.readFeatures.length) {
|
|
27
|
-
|
|
28
|
+
const feature = cramRecord.readFeatures[currentReadFeature];
|
|
28
29
|
if (feature.code === 'Q' || feature.code === 'q') {
|
|
29
30
|
currentReadFeature += 1;
|
|
30
31
|
}
|
|
@@ -33,8 +34,8 @@ function decodeReadSequence(cramRecord, refRegion) {
|
|
|
33
34
|
currentReadFeature += 1;
|
|
34
35
|
if (feature.code === 'b') {
|
|
35
36
|
// specify a base pair for some reason
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
const ret = feature.data.split(',');
|
|
38
|
+
const added = String.fromCharCode(...ret);
|
|
38
39
|
bases += added;
|
|
39
40
|
regionPos += added.length;
|
|
40
41
|
}
|
|
@@ -81,21 +82,21 @@ function decodeReadSequence(cramRecord, refRegion) {
|
|
|
81
82
|
}
|
|
82
83
|
else if (currentReadFeature < cramRecord.readFeatures.length) {
|
|
83
84
|
// put down a chunk of sequence up to the next read feature
|
|
84
|
-
|
|
85
|
+
const chunk = refRegion.seq.substr(regionPos, cramRecord.readFeatures[currentReadFeature].pos - bases.length - 1);
|
|
85
86
|
bases += chunk;
|
|
86
87
|
regionPos += chunk.length;
|
|
87
88
|
}
|
|
88
89
|
}
|
|
89
90
|
else {
|
|
90
91
|
// put down a chunk of reference up to the full read length
|
|
91
|
-
|
|
92
|
+
const chunk = refRegion.seq.substr(regionPos, cramRecord.readLength - bases.length);
|
|
92
93
|
bases += chunk;
|
|
93
94
|
regionPos += chunk.length;
|
|
94
95
|
}
|
|
95
96
|
}
|
|
96
97
|
return bases.toUpperCase();
|
|
97
98
|
}
|
|
98
|
-
|
|
99
|
+
const baseNumbers = {
|
|
99
100
|
a: 0,
|
|
100
101
|
A: 0,
|
|
101
102
|
c: 1,
|
|
@@ -112,120 +113,195 @@ function decodeBaseSubstitution(cramRecord, refRegion, compressionScheme, readFe
|
|
|
112
113
|
return;
|
|
113
114
|
}
|
|
114
115
|
// decode base substitution code using the substitution matrix
|
|
115
|
-
|
|
116
|
-
|
|
116
|
+
const refCoord = readFeature.refPos - refRegion.start;
|
|
117
|
+
const refBase = refRegion.seq.charAt(refCoord);
|
|
117
118
|
if (refBase) {
|
|
118
119
|
readFeature.ref = refBase;
|
|
119
120
|
}
|
|
120
|
-
|
|
121
|
+
let baseNumber = baseNumbers[refBase];
|
|
121
122
|
if (baseNumber === undefined) {
|
|
122
123
|
baseNumber = 4;
|
|
123
124
|
}
|
|
124
|
-
|
|
125
|
-
|
|
125
|
+
const substitutionScheme = compressionScheme.substitutionMatrix[baseNumber];
|
|
126
|
+
const base = substitutionScheme[readFeature.data];
|
|
126
127
|
if (base) {
|
|
127
128
|
readFeature.sub = base;
|
|
128
129
|
}
|
|
129
130
|
}
|
|
131
|
+
exports.BamFlags = [
|
|
132
|
+
[0x1, 'Paired'],
|
|
133
|
+
[0x2, 'ProperlyPaired'],
|
|
134
|
+
[0x4, 'SegmentUnmapped'],
|
|
135
|
+
[0x8, 'MateUnmapped'],
|
|
136
|
+
[0x10, 'ReverseComplemented'],
|
|
137
|
+
// the mate is mapped to the reverse strand
|
|
138
|
+
[0x20, 'MateReverseComplemented'],
|
|
139
|
+
// this is read1
|
|
140
|
+
[0x40, 'Read1'],
|
|
141
|
+
// this is read2
|
|
142
|
+
[0x80, 'Read2'],
|
|
143
|
+
// not primary alignment
|
|
144
|
+
[0x100, 'Secondary'],
|
|
145
|
+
// QC failure
|
|
146
|
+
[0x200, 'FailedQc'],
|
|
147
|
+
// optical or PCR duplicate
|
|
148
|
+
[0x400, 'Duplicate'],
|
|
149
|
+
// supplementary alignment
|
|
150
|
+
[0x800, 'Supplementary'],
|
|
151
|
+
];
|
|
152
|
+
exports.CramFlags = [
|
|
153
|
+
[0x1, 'PreservingQualityScores'],
|
|
154
|
+
[0x2, 'Detached'],
|
|
155
|
+
[0x4, 'WithMateDownstream'],
|
|
156
|
+
[0x8, 'DecodeSequenceAsStar'],
|
|
157
|
+
];
|
|
158
|
+
exports.MateFlags = [
|
|
159
|
+
[0x1, 'OnNegativeStrand'],
|
|
160
|
+
[0x2, 'Unmapped'],
|
|
161
|
+
];
|
|
162
|
+
function makeFlagsHelper(x) {
|
|
163
|
+
const r = {};
|
|
164
|
+
for (const [code, name] of x) {
|
|
165
|
+
r['is' + name] = (flags) => !!(flags & code);
|
|
166
|
+
r['set' + name] = (flags) => flags | code;
|
|
167
|
+
}
|
|
168
|
+
return r;
|
|
169
|
+
}
|
|
170
|
+
exports.BamFlagsDecoder = makeFlagsHelper(exports.BamFlags);
|
|
171
|
+
exports.CramFlagsDecoder = makeFlagsHelper(exports.CramFlags);
|
|
172
|
+
exports.MateFlagsDecoder = makeFlagsHelper(exports.MateFlags);
|
|
130
173
|
/**
|
|
131
174
|
* Class of each CRAM record returned by this API.
|
|
132
175
|
*/
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
this.
|
|
176
|
+
class CramRecord {
|
|
177
|
+
constructor({ flags, cramFlags, readLength, mappingQuality, lengthOnRef, qualityScores, mateRecordNumber, readBases, readFeatures, mateToUse, readGroupId, readName, sequenceId, uniqueId, templateSize, alignmentStart, tags, }) {
|
|
178
|
+
this.flags = flags;
|
|
179
|
+
this.cramFlags = cramFlags;
|
|
180
|
+
this.readLength = readLength;
|
|
181
|
+
this.mappingQuality = mappingQuality;
|
|
182
|
+
this.lengthOnRef = lengthOnRef;
|
|
183
|
+
this.qualityScores = qualityScores;
|
|
184
|
+
if (readBases) {
|
|
185
|
+
this.readBases = readBases;
|
|
186
|
+
}
|
|
187
|
+
this.readGroupId = readGroupId;
|
|
188
|
+
this.readName = readName;
|
|
189
|
+
this.sequenceId = sequenceId;
|
|
190
|
+
this.uniqueId = uniqueId;
|
|
191
|
+
this.templateSize = templateSize;
|
|
192
|
+
this.alignmentStart = alignmentStart;
|
|
193
|
+
this.tags = tags;
|
|
194
|
+
// backwards compatibility
|
|
195
|
+
if (readFeatures) {
|
|
196
|
+
this.readFeatures = readFeatures;
|
|
197
|
+
}
|
|
198
|
+
if (mateToUse) {
|
|
199
|
+
this.mate = {
|
|
200
|
+
flags: mateToUse.mateFlags,
|
|
201
|
+
readName: mateToUse.mateReadName,
|
|
202
|
+
sequenceId: mateToUse.mateSequenceId,
|
|
203
|
+
alignmentStart: mateToUse.mateAlignmentStart,
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
if (mateRecordNumber) {
|
|
207
|
+
this.mateRecordNumber = mateRecordNumber;
|
|
208
|
+
}
|
|
136
209
|
}
|
|
137
210
|
/**
|
|
138
211
|
* @returns {boolean} true if the read is paired, regardless of whether both segments are mapped
|
|
139
212
|
*/
|
|
140
|
-
|
|
213
|
+
isPaired() {
|
|
141
214
|
return !!(this.flags & constants_1.default.BAM_FPAIRED);
|
|
142
|
-
}
|
|
215
|
+
}
|
|
143
216
|
/** @returns {boolean} true if the read is paired, and both segments are mapped */
|
|
144
|
-
|
|
217
|
+
isProperlyPaired() {
|
|
145
218
|
return !!(this.flags & constants_1.default.BAM_FPROPER_PAIR);
|
|
146
|
-
}
|
|
219
|
+
}
|
|
147
220
|
/** @returns {boolean} true if the read itself is unmapped; conflictive with isProperlyPaired */
|
|
148
|
-
|
|
221
|
+
isSegmentUnmapped() {
|
|
149
222
|
return !!(this.flags & constants_1.default.BAM_FUNMAP);
|
|
150
|
-
}
|
|
223
|
+
}
|
|
151
224
|
/** @returns {boolean} true if the read itself is unmapped; conflictive with isProperlyPaired */
|
|
152
|
-
|
|
225
|
+
isMateUnmapped() {
|
|
153
226
|
return !!(this.flags & constants_1.default.BAM_FMUNMAP);
|
|
154
|
-
}
|
|
227
|
+
}
|
|
155
228
|
/** @returns {boolean} true if the read is mapped to the reverse strand */
|
|
156
|
-
|
|
229
|
+
isReverseComplemented() {
|
|
157
230
|
return !!(this.flags & constants_1.default.BAM_FREVERSE);
|
|
158
|
-
}
|
|
231
|
+
}
|
|
159
232
|
/** @returns {boolean} true if the mate is mapped to the reverse strand */
|
|
160
|
-
|
|
233
|
+
isMateReverseComplemented() {
|
|
161
234
|
return !!(this.flags & constants_1.default.BAM_FMREVERSE);
|
|
162
|
-
}
|
|
235
|
+
}
|
|
163
236
|
/** @returns {boolean} true if this is read number 1 in a pair */
|
|
164
|
-
|
|
237
|
+
isRead1() {
|
|
165
238
|
return !!(this.flags & constants_1.default.BAM_FREAD1);
|
|
166
|
-
}
|
|
239
|
+
}
|
|
167
240
|
/** @returns {boolean} true if this is read number 2 in a pair */
|
|
168
|
-
|
|
241
|
+
isRead2() {
|
|
169
242
|
return !!(this.flags & constants_1.default.BAM_FREAD2);
|
|
170
|
-
}
|
|
243
|
+
}
|
|
171
244
|
/** @returns {boolean} true if this is a secondary alignment */
|
|
172
|
-
|
|
245
|
+
isSecondary() {
|
|
173
246
|
return !!(this.flags & constants_1.default.BAM_FSECONDARY);
|
|
174
|
-
}
|
|
247
|
+
}
|
|
175
248
|
/** @returns {boolean} true if this read has failed QC checks */
|
|
176
|
-
|
|
249
|
+
isFailedQc() {
|
|
177
250
|
return !!(this.flags & constants_1.default.BAM_FQCFAIL);
|
|
178
|
-
}
|
|
251
|
+
}
|
|
179
252
|
/** @returns {boolean} true if the read is an optical or PCR duplicate */
|
|
180
|
-
|
|
253
|
+
isDuplicate() {
|
|
181
254
|
return !!(this.flags & constants_1.default.BAM_FDUP);
|
|
182
|
-
}
|
|
255
|
+
}
|
|
183
256
|
/** @returns {boolean} true if this is a supplementary alignment */
|
|
184
|
-
|
|
257
|
+
isSupplementary() {
|
|
185
258
|
return !!(this.flags & constants_1.default.BAM_FSUPPLEMENTARY);
|
|
186
|
-
}
|
|
259
|
+
}
|
|
187
260
|
/**
|
|
188
261
|
* @returns {boolean} true if the read is detached
|
|
189
262
|
*/
|
|
190
|
-
|
|
263
|
+
isDetached() {
|
|
191
264
|
return !!(this.cramFlags & constants_1.default.CRAM_FLAG_DETACHED);
|
|
192
|
-
}
|
|
265
|
+
}
|
|
193
266
|
/** @returns {boolean} true if the read has a mate in this same CRAM segment */
|
|
194
|
-
|
|
267
|
+
hasMateDownStream() {
|
|
195
268
|
return !!(this.cramFlags & constants_1.default.CRAM_FLAG_MATE_DOWNSTREAM);
|
|
196
|
-
}
|
|
269
|
+
}
|
|
197
270
|
/** @returns {boolean} true if the read contains qual scores */
|
|
198
|
-
|
|
271
|
+
isPreservingQualityScores() {
|
|
199
272
|
return !!(this.cramFlags & constants_1.default.CRAM_FLAG_PRESERVE_QUAL_SCORES);
|
|
200
|
-
}
|
|
273
|
+
}
|
|
201
274
|
/** @returns {boolean} true if the read has no sequence bases */
|
|
202
|
-
|
|
275
|
+
isUnknownBases() {
|
|
203
276
|
return !!(this.cramFlags & constants_1.default.CRAM_FLAG_NO_SEQ);
|
|
204
|
-
}
|
|
277
|
+
}
|
|
205
278
|
/**
|
|
206
279
|
* Get the original sequence of this read.
|
|
207
280
|
* @returns {String} sequence basepairs
|
|
208
281
|
*/
|
|
209
|
-
|
|
282
|
+
getReadBases() {
|
|
210
283
|
if (!this.readBases && this._refRegion) {
|
|
211
|
-
|
|
284
|
+
const decoded = decodeReadSequence(this, this._refRegion);
|
|
285
|
+
if (decoded) {
|
|
286
|
+
this.readBases = decoded;
|
|
287
|
+
}
|
|
212
288
|
}
|
|
213
289
|
return this.readBases;
|
|
214
|
-
}
|
|
290
|
+
}
|
|
215
291
|
/**
|
|
216
292
|
* Get the pair orientation of a paired read. Adapted from igv.js
|
|
217
293
|
* @returns {String} of paired orientatin
|
|
218
294
|
*/
|
|
219
|
-
|
|
295
|
+
getPairOrientation() {
|
|
220
296
|
if (!this.isSegmentUnmapped() &&
|
|
221
297
|
this.isPaired() &&
|
|
222
298
|
!this.isMateUnmapped() &&
|
|
223
299
|
this.mate &&
|
|
224
300
|
this.sequenceId === this.mate.sequenceId) {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
301
|
+
const s1 = this.isReverseComplemented() ? 'R' : 'F';
|
|
302
|
+
const s2 = this.isMateReverseComplemented() ? 'R' : 'F';
|
|
303
|
+
let o1 = ' ';
|
|
304
|
+
let o2 = ' ';
|
|
229
305
|
if (this.isRead1()) {
|
|
230
306
|
o1 = '1';
|
|
231
307
|
o2 = '2';
|
|
@@ -234,8 +310,11 @@ var CramRecord = /** @class */ (function () {
|
|
|
234
310
|
o1 = '2';
|
|
235
311
|
o2 = '1';
|
|
236
312
|
}
|
|
237
|
-
|
|
238
|
-
|
|
313
|
+
const tmp = [];
|
|
314
|
+
let isize = this.templateLength || this.templateSize;
|
|
315
|
+
if (isize === undefined) {
|
|
316
|
+
throw new Error('One of templateSize and templateLength must be set');
|
|
317
|
+
}
|
|
239
318
|
if (this.alignmentStart > this.mate.alignmentStart && isize > 0) {
|
|
240
319
|
isize = -isize;
|
|
241
320
|
}
|
|
@@ -254,7 +333,7 @@ var CramRecord = /** @class */ (function () {
|
|
|
254
333
|
return tmp.join('');
|
|
255
334
|
}
|
|
256
335
|
return null;
|
|
257
|
-
}
|
|
336
|
+
}
|
|
258
337
|
/**
|
|
259
338
|
* Annotates this feature with the given reference sequence basepair
|
|
260
339
|
* information. This will add a `sub` and a `ref` item to base
|
|
@@ -268,14 +347,13 @@ var CramRecord = /** @class */ (function () {
|
|
|
268
347
|
* @param {CramContainerCompressionScheme} compressionScheme
|
|
269
348
|
* @returns {undefined} nothing
|
|
270
349
|
*/
|
|
271
|
-
|
|
272
|
-
var _this = this;
|
|
350
|
+
addReferenceSequence(refRegion, compressionScheme) {
|
|
273
351
|
if (this.readFeatures) {
|
|
274
352
|
// use the reference bases to decode the bases
|
|
275
353
|
// substituted in each base substitution
|
|
276
|
-
this.readFeatures.forEach(
|
|
354
|
+
this.readFeatures.forEach(readFeature => {
|
|
277
355
|
if (readFeature.code === 'X') {
|
|
278
|
-
decodeBaseSubstitution(
|
|
356
|
+
decodeBaseSubstitution(this, refRegion, compressionScheme, readFeature);
|
|
279
357
|
}
|
|
280
358
|
});
|
|
281
359
|
}
|
|
@@ -287,20 +365,18 @@ var CramRecord = /** @class */ (function () {
|
|
|
287
365
|
this.alignmentStart + (this.lengthOnRef || this.readLength) - 1) {
|
|
288
366
|
this._refRegion = refRegion;
|
|
289
367
|
}
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
Object.keys(this).forEach(function (k) {
|
|
368
|
+
}
|
|
369
|
+
toJSON() {
|
|
370
|
+
const data = {};
|
|
371
|
+
Object.keys(this).forEach(k => {
|
|
295
372
|
if (k.charAt(0) === '_') {
|
|
296
373
|
return;
|
|
297
374
|
}
|
|
298
|
-
data[k] =
|
|
375
|
+
data[k] = this[k];
|
|
299
376
|
});
|
|
300
377
|
data.readBases = this.getReadBases();
|
|
301
378
|
return data;
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
}());
|
|
379
|
+
}
|
|
380
|
+
}
|
|
305
381
|
exports.default = CramRecord;
|
|
306
382
|
//# sourceMappingURL=record.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record.js","sourceRoot":"","sources":["../../src/cramFile/record.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"record.js","sourceRoot":"","sources":["../../src/cramFile/record.ts"],"names":[],"mappings":"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"}
|