@gmod/cram 2.0.4 → 3.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/CHANGELOG.md +10 -0
- package/dist/cram-bundle.js +1 -1
- package/dist/cramFile/codecs/byteArrayLength.js +1 -1
- package/dist/cramFile/codecs/byteArrayLength.js.map +1 -1
- package/dist/cramFile/codecs/external.js +1 -1
- package/dist/cramFile/codecs/external.js.map +1 -1
- package/dist/cramFile/codecs/huffman.js +2 -1
- package/dist/cramFile/codecs/huffman.js.map +1 -1
- package/dist/cramFile/container/compressionScheme.d.ts +0 -3
- package/dist/cramFile/container/compressionScheme.js +0 -4
- package/dist/cramFile/container/compressionScheme.js.map +1 -1
- package/dist/cramFile/container/index.d.ts +56 -3
- package/dist/cramFile/container/index.js +15 -9
- package/dist/cramFile/container/index.js.map +1 -1
- package/dist/cramFile/file.d.ts +24 -59
- package/dist/cramFile/file.js +21 -26
- package/dist/cramFile/file.js.map +1 -1
- package/dist/cramFile/record.d.ts +1 -1
- package/dist/cramFile/sectionParsers.d.ts +195 -48
- package/dist/cramFile/sectionParsers.js +621 -303
- package/dist/cramFile/sectionParsers.js.map +1 -1
- package/dist/cramFile/slice/index.d.ts +23 -1
- package/dist/cramFile/slice/index.js +9 -6
- package/dist/cramFile/slice/index.js.map +1 -1
- package/dist/cramFile/util.d.ts +6 -4
- package/dist/cramFile/util.js +88 -6
- package/dist/cramFile/util.js.map +1 -1
- package/esm/cramFile/codecs/byteArrayLength.js +1 -1
- package/esm/cramFile/codecs/byteArrayLength.js.map +1 -1
- package/esm/cramFile/codecs/external.js +1 -1
- package/esm/cramFile/codecs/external.js.map +1 -1
- package/esm/cramFile/codecs/huffman.js +2 -1
- package/esm/cramFile/codecs/huffman.js.map +1 -1
- package/esm/cramFile/container/compressionScheme.d.ts +0 -3
- package/esm/cramFile/container/compressionScheme.js +0 -4
- package/esm/cramFile/container/compressionScheme.js.map +1 -1
- package/esm/cramFile/container/index.d.ts +56 -3
- package/esm/cramFile/container/index.js +15 -9
- package/esm/cramFile/container/index.js.map +1 -1
- package/esm/cramFile/file.d.ts +24 -59
- package/esm/cramFile/file.js +22 -25
- package/esm/cramFile/file.js.map +1 -1
- package/esm/cramFile/record.d.ts +1 -1
- package/esm/cramFile/sectionParsers.d.ts +195 -48
- package/esm/cramFile/sectionParsers.js +620 -303
- package/esm/cramFile/sectionParsers.js.map +1 -1
- package/esm/cramFile/slice/index.d.ts +23 -1
- package/esm/cramFile/slice/index.js +10 -7
- package/esm/cramFile/slice/index.js.map +1 -1
- package/esm/cramFile/util.d.ts +6 -4
- package/esm/cramFile/util.js +87 -6
- package/esm/cramFile/util.js.map +1 -1
- package/package.json +7 -8
- package/src/cramFile/codecs/byteArrayLength.ts +1 -2
- package/src/cramFile/codecs/external.ts +1 -1
- package/src/cramFile/codecs/huffman.ts +2 -1
- package/src/cramFile/container/compressionScheme.ts +1 -8
- package/src/cramFile/container/index.ts +21 -10
- package/src/cramFile/file.ts +28 -43
- package/src/cramFile/record.ts +1 -1
- package/src/cramFile/sectionParsers.ts +668 -390
- package/src/cramFile/slice/index.ts +11 -5
- package/src/cramFile/util.ts +90 -91
- package/src/typings/binary-parser.d.ts +0 -44
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sectionParsers.js","sourceRoot":"","sources":["../../src/cramFile/sectionParsers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sectionParsers.js","sourceRoot":"","sources":["../../src/cramFile/sectionParsers.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,29 @@ export default class CramSlice {
|
|
|
10
10
|
containerPosition: number;
|
|
11
11
|
private file;
|
|
12
12
|
constructor(container: CramContainer, containerPosition: number, _unused: number);
|
|
13
|
-
getHeader(): Promise<
|
|
13
|
+
getHeader(): Promise<{
|
|
14
|
+
parsedContent: {
|
|
15
|
+
recordCounter: number;
|
|
16
|
+
md5: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number] | undefined;
|
|
17
|
+
contentIds: number[];
|
|
18
|
+
numContentIds: number;
|
|
19
|
+
numBlocks: number;
|
|
20
|
+
numRecords: number;
|
|
21
|
+
} & {
|
|
22
|
+
_endPosition: number;
|
|
23
|
+
_size: number;
|
|
24
|
+
};
|
|
25
|
+
compressionMethod: import("../sectionParsers").CompressionMethod;
|
|
26
|
+
contentType: "FILE_HEADER" | "COMPRESSION_HEADER" | "MAPPED_SLICE_HEADER" | "UNMAPPED_SLICE_HEADER" | "EXTERNAL_DATA" | "CORE_DATA";
|
|
27
|
+
contentId: number;
|
|
28
|
+
compressedSize: number;
|
|
29
|
+
uncompressedSize: number;
|
|
30
|
+
_endPosition: number;
|
|
31
|
+
contentPosition: number;
|
|
32
|
+
_size: number;
|
|
33
|
+
content: Buffer;
|
|
34
|
+
crc32?: number;
|
|
35
|
+
}>;
|
|
14
36
|
getBlocks(): Promise<CramFileBlock[]>;
|
|
15
37
|
getCoreDataBlock(): Promise<CramFileBlock>;
|
|
16
38
|
_getBlocksContentIdIndex(): Promise<Record<number, CramFileBlock>>;
|
|
@@ -3,7 +3,7 @@ import { parseItem, sequenceMD5, tinyMemoize } from '../util';
|
|
|
3
3
|
import Constants from '../constants';
|
|
4
4
|
import decodeRecord from './decodeRecord';
|
|
5
5
|
import CramRecord from '../record';
|
|
6
|
-
import { isMappedSliceHeader, } from '../sectionParsers';
|
|
6
|
+
import { getSectionParsers, isMappedSliceHeader, } from '../sectionParsers';
|
|
7
7
|
import { CramBufferOverrunError } from '../codecs/getBits';
|
|
8
8
|
/**
|
|
9
9
|
* @private
|
|
@@ -132,8 +132,12 @@ export default class CramSlice {
|
|
|
132
132
|
// memoize
|
|
133
133
|
async getHeader() {
|
|
134
134
|
// fetch and parse the slice header
|
|
135
|
-
const
|
|
135
|
+
const { majorVersion } = await this.file.getDefinition();
|
|
136
|
+
const sectionParsers = getSectionParsers(majorVersion);
|
|
136
137
|
const containerHeader = await this.container.getHeader();
|
|
138
|
+
if (!containerHeader) {
|
|
139
|
+
throw new Error('no container header detected');
|
|
140
|
+
}
|
|
137
141
|
const header = await this.file.readBlock(containerHeader._endPosition + this.containerPosition);
|
|
138
142
|
if (header === undefined) {
|
|
139
143
|
throw new Error('block header undefined');
|
|
@@ -156,7 +160,7 @@ export default class CramSlice {
|
|
|
156
160
|
// read all the blocks into memory and store them
|
|
157
161
|
let blockPosition = header._endPosition;
|
|
158
162
|
const blocks = new Array(header.parsedContent.numBlocks);
|
|
159
|
-
for (let i = 0; i < blocks.length; i
|
|
163
|
+
for (let i = 0; i < blocks.length; i++) {
|
|
160
164
|
const block = await this.file.readBlock(blockPosition);
|
|
161
165
|
if (block === undefined) {
|
|
162
166
|
throw new Error('block undefined');
|
|
@@ -239,6 +243,7 @@ export default class CramSlice {
|
|
|
239
243
|
return this.getRecords(() => true);
|
|
240
244
|
}
|
|
241
245
|
async _fetchRecords() {
|
|
246
|
+
var _a, _b;
|
|
242
247
|
const { majorVersion } = await this.file.getDefinition();
|
|
243
248
|
const compressionScheme = await this.container.getCompressionScheme();
|
|
244
249
|
if (compressionScheme === undefined) {
|
|
@@ -254,14 +259,12 @@ export default class CramSlice {
|
|
|
254
259
|
this.file.options.checkSequenceMD5 &&
|
|
255
260
|
isMappedSliceHeader(sliceHeader.parsedContent) &&
|
|
256
261
|
sliceHeader.parsedContent.refSeqId >= 0 &&
|
|
257
|
-
sliceHeader.parsedContent.md5.join('') !== '0000000000000000') {
|
|
262
|
+
((_a = sliceHeader.parsedContent.md5) === null || _a === void 0 ? void 0 : _a.join('')) !== '0000000000000000') {
|
|
258
263
|
const refRegion = await this.getReferenceRegion();
|
|
259
264
|
if (refRegion) {
|
|
260
265
|
const { seq, start, end } = refRegion;
|
|
261
266
|
const seqMd5 = sequenceMD5(seq);
|
|
262
|
-
const storedMd5 = sliceHeader.parsedContent.md5
|
|
263
|
-
.map(byte => (byte < 16 ? '0' : '') + byte.toString(16))
|
|
264
|
-
.join('');
|
|
267
|
+
const storedMd5 = (_b = sliceHeader.parsedContent.md5) === null || _b === void 0 ? void 0 : _b.map(byte => (byte < 16 ? '0' : '') + byte.toString(16)).join('');
|
|
265
268
|
if (seqMd5 !== storedMd5) {
|
|
266
269
|
throw new CramMalformedError(`MD5 checksum reference mismatch for ref ${sliceHeader.parsedContent.refSeqId} pos ${start}..${end}. recorded MD5: ${storedMd5}, calculated MD5: ${seqMd5}`);
|
|
267
270
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cramFile/slice/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cramFile/slice/index.ts"],"names":[],"mappings":"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"}
|
package/esm/cramFile/util.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { Parser } from '@gmod/binary-parser';
|
|
2
1
|
export declare function itf8Size(v: number): 1 | 2 | 3 | 4 | 5;
|
|
3
|
-
export declare function parseItf8(buffer: Uint8Array, initialOffset: number): [number, number];
|
|
4
|
-
export
|
|
2
|
+
export declare function parseItf8(buffer: Uint8Array, initialOffset: number): readonly [number, number];
|
|
3
|
+
export declare function parseLtf8(buffer: Buffer, initialOffset: number): readonly [number, number];
|
|
4
|
+
export declare function parseItem<T>(buffer: Buffer, parser: (buffer: Buffer, offset: number) => {
|
|
5
|
+
offset: number;
|
|
6
|
+
value: T;
|
|
7
|
+
}, startBufferPosition?: number, startFilePosition?: number): T & {
|
|
5
8
|
_endPosition: number;
|
|
6
9
|
_size: number;
|
|
7
10
|
};
|
|
8
|
-
export declare function parseItem<T>(buffer: Buffer, parser: Parser<T>, startBufferPosition?: number, startFilePosition?: number): ParsedItem<T>;
|
|
9
11
|
export declare function tinyMemoize(_class: any, methodName: any): void;
|
|
10
12
|
export declare function sequenceMD5(seq: string): string;
|
package/esm/cramFile/util.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import md5 from 'md5';
|
|
2
|
+
import Long from 'long';
|
|
2
3
|
import { CramBufferOverrunError } from './codecs/getBits';
|
|
3
4
|
export function itf8Size(v) {
|
|
4
5
|
if (!(v & ~0x7f)) {
|
|
@@ -58,18 +59,98 @@ export function parseItf8(buffer, initialOffset) {
|
|
|
58
59
|
}
|
|
59
60
|
return [result, offset - initialOffset];
|
|
60
61
|
}
|
|
62
|
+
export function parseLtf8(buffer, initialOffset) {
|
|
63
|
+
let offset = initialOffset;
|
|
64
|
+
const countFlags = buffer[offset];
|
|
65
|
+
let n;
|
|
66
|
+
if (countFlags < 0x80) {
|
|
67
|
+
n = countFlags;
|
|
68
|
+
offset += 1;
|
|
69
|
+
}
|
|
70
|
+
else if (countFlags < 0xc0) {
|
|
71
|
+
n = ((buffer[offset] << 8) | buffer[offset + 1]) & 0x3fff;
|
|
72
|
+
offset += 2;
|
|
73
|
+
}
|
|
74
|
+
else if (countFlags < 0xe0) {
|
|
75
|
+
n =
|
|
76
|
+
((buffer[offset] << 16) |
|
|
77
|
+
(buffer[offset + 1] << 8) |
|
|
78
|
+
buffer[offset + 2]) &
|
|
79
|
+
0x1fffff;
|
|
80
|
+
n = ((countFlags & 63) << 16) | buffer.readUInt16LE(offset + 1);
|
|
81
|
+
offset += 3;
|
|
82
|
+
}
|
|
83
|
+
else if (countFlags < 0xf0) {
|
|
84
|
+
n =
|
|
85
|
+
((buffer[offset] << 24) |
|
|
86
|
+
(buffer[offset + 1] << 16) |
|
|
87
|
+
(buffer[offset + 2] << 8) |
|
|
88
|
+
buffer[offset + 3]) &
|
|
89
|
+
0x0fffffff;
|
|
90
|
+
offset += 4;
|
|
91
|
+
}
|
|
92
|
+
else if (countFlags < 0xf8) {
|
|
93
|
+
n =
|
|
94
|
+
((buffer[offset] & 15) * Math.pow(2, 32) + (buffer[offset + 1] << 24)) |
|
|
95
|
+
((buffer[offset + 2] << 16) |
|
|
96
|
+
(buffer[offset + 3] << 8) |
|
|
97
|
+
buffer[offset + 4]);
|
|
98
|
+
// TODO *val_p = uv < 0x80000000UL ? uv : -((int32_t) (0xffffffffUL - uv)) - 1;
|
|
99
|
+
offset += 5;
|
|
100
|
+
}
|
|
101
|
+
else if (countFlags < 0xfc) {
|
|
102
|
+
n =
|
|
103
|
+
((((buffer[offset] & 7) << 8) | buffer[offset + 1]) * Math.pow(2, 32) +
|
|
104
|
+
(buffer[offset + 2] << 24)) |
|
|
105
|
+
((buffer[offset + 3] << 16) |
|
|
106
|
+
(buffer[offset + 4] << 8) |
|
|
107
|
+
buffer[offset + 5]);
|
|
108
|
+
offset += 6;
|
|
109
|
+
}
|
|
110
|
+
else if (countFlags < 0xfe) {
|
|
111
|
+
n =
|
|
112
|
+
((((buffer[offset] & 3) << 16) |
|
|
113
|
+
(buffer[offset + 1] << 8) |
|
|
114
|
+
buffer[offset + 2]) *
|
|
115
|
+
Math.pow(2, 32) +
|
|
116
|
+
(buffer[offset + 3] << 24)) |
|
|
117
|
+
((buffer[offset + 4] << 16) |
|
|
118
|
+
(buffer[offset + 5] << 8) |
|
|
119
|
+
buffer[offset + 6]);
|
|
120
|
+
offset += 7;
|
|
121
|
+
}
|
|
122
|
+
else if (countFlags < 0xff) {
|
|
123
|
+
n = Long.fromBytesBE(buffer.slice(offset + 1, offset + 8));
|
|
124
|
+
if (n.greaterThan(Number.MAX_SAFE_INTEGER) ||
|
|
125
|
+
n.lessThan(Number.MIN_SAFE_INTEGER)) {
|
|
126
|
+
throw new Error('integer overflow');
|
|
127
|
+
}
|
|
128
|
+
n = n.toNumber();
|
|
129
|
+
offset += 8;
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
n = Long.fromBytesBE(buffer.slice(offset + 1, offset + 9));
|
|
133
|
+
if (n.greaterThan(Number.MAX_SAFE_INTEGER) ||
|
|
134
|
+
n.lessThan(Number.MIN_SAFE_INTEGER)) {
|
|
135
|
+
throw new Error('integer overflow');
|
|
136
|
+
}
|
|
137
|
+
n = n.toNumber();
|
|
138
|
+
offset += 9;
|
|
139
|
+
}
|
|
140
|
+
return [n, offset - initialOffset];
|
|
141
|
+
}
|
|
61
142
|
export function parseItem(buffer, parser, startBufferPosition = 0, startFilePosition = 0) {
|
|
62
|
-
const { offset,
|
|
143
|
+
const { offset, value } = parser(buffer, startBufferPosition);
|
|
63
144
|
return {
|
|
64
|
-
...
|
|
145
|
+
...value,
|
|
65
146
|
_endPosition: offset + startFilePosition,
|
|
66
147
|
_size: offset - startBufferPosition,
|
|
67
148
|
};
|
|
68
149
|
}
|
|
69
|
-
// this would be nice as a decorator, but i'm a little worried about
|
|
70
|
-
//
|
|
71
|
-
//
|
|
72
|
-
//
|
|
150
|
+
// this would be nice as a decorator, but i'm a little worried about babel
|
|
151
|
+
// support for it going away or changing. memoizes a method in the stupidest
|
|
152
|
+
// possible way, with no regard for the arguments. actually, this only works
|
|
153
|
+
// on methods that take no arguments
|
|
73
154
|
export function tinyMemoize(_class, methodName) {
|
|
74
155
|
const method = _class.prototype[methodName];
|
|
75
156
|
const memoAttrName = `_memo_${methodName}`;
|
package/esm/cramFile/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/cramFile/util.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/cramFile/util.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gmod/cram",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "read CRAM files with pure Javascript",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "GMOD/cram-js",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
],
|
|
23
23
|
"scripts": {
|
|
24
24
|
"test": "jest",
|
|
25
|
-
"lint": "eslint src test",
|
|
25
|
+
"lint": "eslint --report-unused-disable-directives --max-warnings 0 src test",
|
|
26
26
|
"docs": "documentation readme --shallow src/indexedCramFile.ts --section=IndexedCramFile; documentation readme --shallow src/cramFile/file.ts --section=CramFile; documentation readme --shallow src/craiIndex.ts --section=CraiIndex; documentation readme --shallow errors.ts '--section=Exception Classes'; documentation readme --shallow src/cramFile/file.ts --section=CramFile; documentation readme --shallow src/cramFile/record.ts --section=CramRecord",
|
|
27
27
|
"prebuild": "npm run clean",
|
|
28
28
|
"clean": "rimraf dist esm",
|
|
@@ -43,7 +43,6 @@
|
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"@gmod/abortable-promise-cache": "^2.0.0",
|
|
46
|
-
"@gmod/binary-parser": "^1.3.5",
|
|
47
46
|
"@jkbonfield/htscodecs": "^0.5.1",
|
|
48
47
|
"buffer-crc32": "^1.0.0",
|
|
49
48
|
"bzip2": "^0.1.1",
|
|
@@ -59,18 +58,18 @@
|
|
|
59
58
|
"@types/long": "^4.0.0",
|
|
60
59
|
"@types/md5": "^2.3.2",
|
|
61
60
|
"@types/pako": "^1.0.3",
|
|
62
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
63
|
-
"@typescript-eslint/parser": "^
|
|
61
|
+
"@typescript-eslint/eslint-plugin": "^8.0.0",
|
|
62
|
+
"@typescript-eslint/parser": "^8.0.0",
|
|
64
63
|
"buffer": "^6.0.3",
|
|
65
64
|
"documentation": "^14.0.3",
|
|
66
|
-
"eslint": "^9.
|
|
65
|
+
"eslint": "^9.8.0",
|
|
67
66
|
"eslint-config-prettier": "^9.0.0",
|
|
68
67
|
"eslint-plugin-prettier": "^5.1.3",
|
|
69
|
-
"eslint-plugin-unicorn": "^
|
|
68
|
+
"eslint-plugin-unicorn": "^55.0.0",
|
|
70
69
|
"jest": "^29.3.1",
|
|
71
70
|
"mock-fs": "^5.2.0",
|
|
72
71
|
"prettier": "^3.2.5",
|
|
73
|
-
"rimraf": "^
|
|
72
|
+
"rimraf": "^6.0.1",
|
|
74
73
|
"ts-jest": "^29.1.2",
|
|
75
74
|
"typescript": "^5.0.3",
|
|
76
75
|
"webpack": "^5.90.3",
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { tinyMemoize } from '../util'
|
|
2
|
-
|
|
3
1
|
import CramCodec, { Cursors } from './_base'
|
|
4
2
|
import { ByteArrayLengthEncoding, CramEncoding } from '../encoding'
|
|
5
3
|
import CramSlice from '../slice'
|
|
6
4
|
import { CramFileBlock } from '../file'
|
|
7
5
|
import { DataType } from './dataSeriesTypes'
|
|
6
|
+
import { tinyMemoize } from '../util'
|
|
8
7
|
|
|
9
8
|
type CramCodecFactory = <TData extends DataType = DataType>(
|
|
10
9
|
encodingData: CramEncoding,
|
|
@@ -42,7 +42,7 @@ export default class ExternalCodec extends CramCodec<
|
|
|
42
42
|
const contentBlock = blocksByContentId[blockContentId]
|
|
43
43
|
if (!contentBlock) {
|
|
44
44
|
throw new CramMalformedError(
|
|
45
|
-
`no block found with content ID ${blockContentId}`,
|
|
45
|
+
`no block found with content ID ${blockContentId}}`,
|
|
46
46
|
)
|
|
47
47
|
}
|
|
48
48
|
const cursor = cursors.externalBlocks.getCursor(blockContentId)
|
|
@@ -46,7 +46,8 @@ export default class HuffmanIntCodec extends CramCodec<
|
|
|
46
46
|
this.buildCodes()
|
|
47
47
|
this.buildCaches()
|
|
48
48
|
|
|
49
|
-
// if this is a degenerate zero-length huffman code, special-case the
|
|
49
|
+
// if this is a degenerate zero-length huffman code, special-case the
|
|
50
|
+
// decoding
|
|
50
51
|
if (this.sortedCodes[0].bitLength === 0) {
|
|
51
52
|
this._decode = this._decodeZeroLengthCode
|
|
52
53
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { instantiateCodec } from '../codecs'
|
|
2
2
|
import CramCodec from '../codecs/_base'
|
|
3
|
-
import { CramCompressionHeader
|
|
3
|
+
import { CramCompressionHeader } from '../sectionParsers'
|
|
4
4
|
import { CramEncoding } from '../encoding'
|
|
5
5
|
import { CramMalformedError } from '../../errors'
|
|
6
6
|
import {
|
|
@@ -95,12 +95,8 @@ export default class CramContainerCompressionScheme {
|
|
|
95
95
|
public tagCodecCache: Record<string, CramCodec> = {}
|
|
96
96
|
public tagEncoding: Record<string, CramEncoding> = {}
|
|
97
97
|
public dataSeriesEncoding: DataSeriesEncodingMap
|
|
98
|
-
private preservation: CramPreservationMap
|
|
99
|
-
private _endPosition: number
|
|
100
|
-
private _size: number
|
|
101
98
|
|
|
102
99
|
constructor(content: CramCompressionHeader) {
|
|
103
|
-
// Object.assign(this, content)
|
|
104
100
|
// interpret some of the preservation map tags for convenient use
|
|
105
101
|
this.readNamesIncluded = content.preservation.RN
|
|
106
102
|
this.APdelta = content.preservation.AP
|
|
@@ -109,9 +105,6 @@ export default class CramContainerCompressionScheme {
|
|
|
109
105
|
this.substitutionMatrix = parseSubstitutionMatrix(content.preservation.SM)
|
|
110
106
|
this.dataSeriesEncoding = content.dataSeriesEncoding
|
|
111
107
|
this.tagEncoding = content.tagEncoding
|
|
112
|
-
this.preservation = content.preservation
|
|
113
|
-
this._size = content._size
|
|
114
|
-
this._endPosition = content._endPosition
|
|
115
108
|
}
|
|
116
109
|
|
|
117
110
|
/**
|
|
@@ -4,6 +4,7 @@ import { itf8Size, parseItem, tinyMemoize } from '../util'
|
|
|
4
4
|
import CramSlice from '../slice'
|
|
5
5
|
import CramContainerCompressionScheme from './compressionScheme'
|
|
6
6
|
import CramFile from '../file'
|
|
7
|
+
import { getSectionParsers } from '../sectionParsers'
|
|
7
8
|
|
|
8
9
|
export default class CramContainer {
|
|
9
10
|
constructor(
|
|
@@ -11,20 +12,21 @@ export default class CramContainer {
|
|
|
11
12
|
public filePosition: number,
|
|
12
13
|
) {}
|
|
13
14
|
|
|
14
|
-
// memoize
|
|
15
15
|
getHeader() {
|
|
16
16
|
return this._readContainerHeader(this.filePosition)
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
// memoize
|
|
20
19
|
async getCompressionHeaderBlock() {
|
|
21
20
|
const containerHeader = await this.getHeader()
|
|
22
21
|
|
|
23
|
-
// if there are no records in the container, there will be no compression
|
|
24
|
-
|
|
22
|
+
// if there are no records in the container, there will be no compression
|
|
23
|
+
// header
|
|
24
|
+
if (!containerHeader?.numRecords) {
|
|
25
25
|
return null
|
|
26
26
|
}
|
|
27
|
-
const
|
|
27
|
+
const { majorVersion } = await this.file.getDefinition()
|
|
28
|
+
const sectionParsers = getSectionParsers(majorVersion)
|
|
29
|
+
|
|
28
30
|
const block = await this.getFirstBlock()
|
|
29
31
|
if (block === undefined) {
|
|
30
32
|
return undefined
|
|
@@ -34,6 +36,7 @@ export default class CramContainer {
|
|
|
34
36
|
`invalid content type ${block.contentType} in what is supposed to be the compression header block`,
|
|
35
37
|
)
|
|
36
38
|
}
|
|
39
|
+
|
|
37
40
|
const content = parseItem(
|
|
38
41
|
block.content,
|
|
39
42
|
sectionParsers.cramCompressionHeader.parser,
|
|
@@ -48,16 +51,20 @@ export default class CramContainer {
|
|
|
48
51
|
|
|
49
52
|
async getFirstBlock() {
|
|
50
53
|
const containerHeader = await this.getHeader()
|
|
54
|
+
if (!containerHeader) {
|
|
55
|
+
return undefined
|
|
56
|
+
}
|
|
51
57
|
return this.file.readBlock(containerHeader._endPosition)
|
|
52
58
|
}
|
|
53
59
|
|
|
54
|
-
// parses the compression header data into a CramContainerCompressionScheme
|
|
55
|
-
//
|
|
60
|
+
// parses the compression header data into a CramContainerCompressionScheme
|
|
61
|
+
// object
|
|
56
62
|
async getCompressionScheme() {
|
|
57
63
|
const header = await this.getCompressionHeaderBlock()
|
|
58
64
|
if (!header) {
|
|
59
65
|
return undefined
|
|
60
66
|
}
|
|
67
|
+
|
|
61
68
|
return new CramContainerCompressionScheme(header.parsedContent)
|
|
62
69
|
}
|
|
63
70
|
|
|
@@ -68,11 +75,15 @@ export default class CramContainer {
|
|
|
68
75
|
}
|
|
69
76
|
|
|
70
77
|
async _readContainerHeader(position: number) {
|
|
71
|
-
const
|
|
78
|
+
const { majorVersion } = await this.file.getDefinition()
|
|
79
|
+
const sectionParsers = getSectionParsers(majorVersion)
|
|
72
80
|
const { cramContainerHeader1, cramContainerHeader2 } = sectionParsers
|
|
73
81
|
const { size: fileSize } = await this.file.stat()
|
|
74
82
|
|
|
75
83
|
if (position >= fileSize) {
|
|
84
|
+
console.warn(
|
|
85
|
+
`position:${position}>=fileSize:${fileSize} in cram container`,
|
|
86
|
+
)
|
|
76
87
|
return undefined
|
|
77
88
|
}
|
|
78
89
|
|
|
@@ -80,11 +91,11 @@ export default class CramContainer {
|
|
|
80
91
|
// how much to buffer until you read numLandmarks
|
|
81
92
|
const bytes1 = Buffer.allocUnsafe(cramContainerHeader1.maxLength)
|
|
82
93
|
await this.file.read(bytes1, 0, cramContainerHeader1.maxLength, position)
|
|
83
|
-
const header1 = parseItem(bytes1, cramContainerHeader1.parser)
|
|
94
|
+
const header1 = parseItem(bytes1, cramContainerHeader1.parser)
|
|
84
95
|
const numLandmarksSize = itf8Size(header1.numLandmarks)
|
|
85
96
|
if (position + header1.length >= fileSize) {
|
|
86
97
|
console.warn(
|
|
87
|
-
|
|
98
|
+
`container header at ${position} indicates that the container has length ${header1.length}, which extends beyond the length of the file. Skipping this container.`,
|
|
88
99
|
)
|
|
89
100
|
return undefined
|
|
90
101
|
}
|