@gmod/tabix 1.6.1 → 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/CHANGELOG.md +3 -3
- package/dist/csi.d.ts +3 -4
- package/dist/csi.js +56 -38
- package/dist/csi.js.map +1 -1
- package/dist/indexFile.d.ts +1 -1
- package/dist/indexFile.js +1 -2
- package/dist/indexFile.js.map +1 -1
- package/dist/tabix-bundle.js +1 -2
- package/dist/tabixIndexedFile.d.ts +3 -5
- package/dist/tabixIndexedFile.js +24 -32
- package/dist/tabixIndexedFile.js.map +1 -1
- package/dist/tbi.d.ts +2 -3
- package/dist/tbi.js +46 -33
- package/dist/tbi.js.map +1 -1
- package/dist/virtualOffset.d.ts +1 -2
- package/dist/virtualOffset.js +1 -4
- package/dist/virtualOffset.js.map +1 -1
- package/esm/csi.d.ts +3 -4
- package/esm/csi.js +39 -31
- package/esm/csi.js.map +1 -1
- package/esm/indexFile.d.ts +1 -1
- package/esm/indexFile.js +1 -2
- package/esm/indexFile.js.map +1 -1
- package/esm/tabixIndexedFile.d.ts +3 -5
- package/esm/tabixIndexedFile.js +16 -24
- package/esm/tabixIndexedFile.js.map +1 -1
- package/esm/tbi.d.ts +2 -3
- package/esm/tbi.js +29 -26
- package/esm/tbi.js.map +1 -1
- package/esm/virtualOffset.d.ts +1 -2
- package/esm/virtualOffset.js +1 -4
- package/esm/virtualOffset.js.map +1 -1
- package/package.json +4 -7
- package/src/csi.ts +49 -40
- package/src/indexFile.ts +1 -1
- package/src/tabixIndexedFile.ts +15 -33
- package/src/tbi.ts +33 -29
- package/src/virtualOffset.ts +1 -6
- package/dist/tabix-bundle.js.LICENSE.txt +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
# [2.0.0](https://github.com/GMOD/tabix-js/compare/v1.6.1...v2.0.0) (2024-12-12)
|
|
3
2
|
|
|
4
3
|
|
|
5
|
-
# [1.6.0](https://github.com/GMOD/tabix-js/compare/v1.5.15...v1.6.0) (2024-11-30)
|
|
6
4
|
|
|
5
|
+
## [1.6.1](https://github.com/GMOD/tabix-js/compare/v1.6.0...v1.6.1) (2024-12-07)
|
|
7
6
|
|
|
7
|
+
# [1.6.0](https://github.com/GMOD/tabix-js/compare/v1.5.15...v1.6.0) (2024-11-30)
|
|
8
8
|
|
|
9
9
|
## [1.5.15](https://github.com/GMOD/tabix-js/compare/v1.5.14...v1.5.15) (2024-08-30)
|
|
10
10
|
|
package/dist/csi.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Buffer } from 'buffer';
|
|
2
1
|
import VirtualOffset from './virtualOffset';
|
|
3
2
|
import Chunk from './chunk';
|
|
4
3
|
import IndexFile, { Options } from './indexFile';
|
|
@@ -9,7 +8,7 @@ export default class CSI extends IndexFile {
|
|
|
9
8
|
constructor(args: any);
|
|
10
9
|
lineCount(refName: string, opts?: Options): Promise<number>;
|
|
11
10
|
indexCov(): void;
|
|
12
|
-
parseAuxData(bytes:
|
|
11
|
+
parseAuxData(bytes: Uint8Array, offset: number): {
|
|
13
12
|
refIdToName: string[];
|
|
14
13
|
refNameToId: Record<string, number>;
|
|
15
14
|
skipLines: number;
|
|
@@ -22,7 +21,7 @@ export default class CSI extends IndexFile {
|
|
|
22
21
|
format: string;
|
|
23
22
|
coordinateType: string;
|
|
24
23
|
};
|
|
25
|
-
_parseNameBytes(namesBytes:
|
|
24
|
+
_parseNameBytes(namesBytes: Uint8Array): {
|
|
26
25
|
refNameToId: Record<string, number>;
|
|
27
26
|
refIdToName: string[];
|
|
28
27
|
};
|
|
@@ -78,7 +77,7 @@ export default class CSI extends IndexFile {
|
|
|
78
77
|
coordinateType: string;
|
|
79
78
|
format: string;
|
|
80
79
|
}>;
|
|
81
|
-
parsePseudoBin(bytes:
|
|
80
|
+
parsePseudoBin(bytes: Uint8Array, offset: number): {
|
|
82
81
|
lineCount: number;
|
|
83
82
|
};
|
|
84
83
|
blocksForRange(refName: string, min: number, max: number, opts?: Options): Promise<Chunk[]>;
|
package/dist/csi.js
CHANGED
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
|
@@ -34,6 +44,11 @@ const util_1 = require("./util");
|
|
|
34
44
|
const indexFile_1 = __importDefault(require("./indexFile"));
|
|
35
45
|
const CSI1_MAGIC = 21582659; // CSI\1
|
|
36
46
|
const CSI2_MAGIC = 38359875; // CSI\2
|
|
47
|
+
const formats = {
|
|
48
|
+
0: 'generic',
|
|
49
|
+
1: 'SAM',
|
|
50
|
+
2: 'VCF',
|
|
51
|
+
};
|
|
37
52
|
function lshift(num, bits) {
|
|
38
53
|
return num * 2 ** bits;
|
|
39
54
|
}
|
|
@@ -67,22 +82,23 @@ class CSI extends indexFile_1.default {
|
|
|
67
82
|
throw new Error('CSI indexes do not support indexcov');
|
|
68
83
|
}
|
|
69
84
|
parseAuxData(bytes, offset) {
|
|
70
|
-
const
|
|
85
|
+
const dataView = new DataView(bytes.buffer);
|
|
86
|
+
const formatFlags = dataView.getInt32(offset, true);
|
|
71
87
|
const coordinateType = formatFlags & 0x10000 ? 'zero-based-half-open' : '1-based-closed';
|
|
72
|
-
const format =
|
|
88
|
+
const format = formats[(formatFlags & 0xf)];
|
|
73
89
|
if (!format) {
|
|
74
90
|
throw new Error(`invalid Tabix preset format flags ${formatFlags}`);
|
|
75
91
|
}
|
|
76
92
|
const columnNumbers = {
|
|
77
|
-
ref:
|
|
78
|
-
start:
|
|
79
|
-
end:
|
|
93
|
+
ref: dataView.getInt32(offset + 4, true),
|
|
94
|
+
start: dataView.getInt32(offset + 8, true),
|
|
95
|
+
end: dataView.getInt32(offset + 12, true),
|
|
80
96
|
};
|
|
81
|
-
const metaValue =
|
|
97
|
+
const metaValue = dataView.getInt32(offset + 16, true);
|
|
82
98
|
const metaChar = metaValue ? String.fromCharCode(metaValue) : null;
|
|
83
|
-
const skipLines =
|
|
84
|
-
const nameSectionLength =
|
|
85
|
-
const { refIdToName, refNameToId } = this._parseNameBytes(bytes.
|
|
99
|
+
const skipLines = dataView.getInt32(offset + 20, true);
|
|
100
|
+
const nameSectionLength = dataView.getInt32(offset + 24, true);
|
|
101
|
+
const { refIdToName, refNameToId } = this._parseNameBytes(bytes.subarray(offset + 28, offset + 28 + nameSectionLength));
|
|
86
102
|
return {
|
|
87
103
|
refIdToName,
|
|
88
104
|
refNameToId,
|
|
@@ -98,11 +114,11 @@ class CSI extends indexFile_1.default {
|
|
|
98
114
|
let currNameStart = 0;
|
|
99
115
|
const refIdToName = [];
|
|
100
116
|
const refNameToId = {};
|
|
117
|
+
const decoder = new TextDecoder('utf8');
|
|
101
118
|
for (let i = 0; i < namesBytes.length; i += 1) {
|
|
102
119
|
if (!namesBytes[i]) {
|
|
103
120
|
if (currNameStart < i) {
|
|
104
|
-
|
|
105
|
-
refName = this.renameRefSeq(refName);
|
|
121
|
+
const refName = this.renameRefSeq(decoder.decode(namesBytes.subarray(currNameStart, i)));
|
|
106
122
|
refIdToName[currRefId] = refName;
|
|
107
123
|
refNameToId[refName] = currRefId;
|
|
108
124
|
}
|
|
@@ -110,28 +126,31 @@ class CSI extends indexFile_1.default {
|
|
|
110
126
|
currRefId += 1;
|
|
111
127
|
}
|
|
112
128
|
}
|
|
113
|
-
return {
|
|
129
|
+
return {
|
|
130
|
+
refNameToId,
|
|
131
|
+
refIdToName,
|
|
132
|
+
};
|
|
114
133
|
}
|
|
115
134
|
// fetch and parse the index
|
|
116
135
|
async _parse(opts = {}) {
|
|
117
136
|
const bytes = await (0, bgzf_filehandle_1.unzip)(await this.filehandle.readFile(opts));
|
|
137
|
+
const dataView = new DataView(bytes.buffer);
|
|
118
138
|
// check TBI magic numbers
|
|
119
139
|
let csiVersion;
|
|
120
|
-
if (
|
|
140
|
+
if (dataView.getUint32(0, true) === CSI1_MAGIC) {
|
|
121
141
|
csiVersion = 1;
|
|
122
142
|
}
|
|
123
|
-
else if (
|
|
143
|
+
else if (dataView.getUint32(0, true) === CSI2_MAGIC) {
|
|
124
144
|
csiVersion = 2;
|
|
125
145
|
}
|
|
126
146
|
else {
|
|
127
147
|
throw new Error('Not a CSI file');
|
|
128
|
-
// TODO: do we need to support big-endian CSI files?
|
|
129
148
|
}
|
|
130
|
-
this.minShift =
|
|
131
|
-
this.depth =
|
|
149
|
+
this.minShift = dataView.getInt32(4, true);
|
|
150
|
+
this.depth = dataView.getInt32(8, true);
|
|
132
151
|
this.maxBinNumber = ((1 << ((this.depth + 1) * 3)) - 1) / 7;
|
|
133
152
|
const maxRefLength = 2 ** (this.minShift + this.depth * 3);
|
|
134
|
-
const auxLength =
|
|
153
|
+
const auxLength = dataView.getInt32(12, true);
|
|
135
154
|
const aux = auxLength && auxLength >= 30
|
|
136
155
|
? this.parseAuxData(bytes, 16)
|
|
137
156
|
: {
|
|
@@ -142,35 +161,33 @@ class CSI extends indexFile_1.default {
|
|
|
142
161
|
coordinateType: 'zero-based-half-open',
|
|
143
162
|
format: 'generic',
|
|
144
163
|
};
|
|
145
|
-
const refCount =
|
|
164
|
+
const refCount = dataView.getInt32(16 + auxLength, true);
|
|
146
165
|
// read the indexes for each reference sequence
|
|
147
166
|
let firstDataLine;
|
|
148
167
|
let currOffset = 16 + auxLength + 4;
|
|
149
168
|
const indices = new Array(refCount).fill(0).map(() => {
|
|
150
|
-
|
|
151
|
-
const binCount = bytes.readInt32LE(currOffset);
|
|
169
|
+
const binCount = dataView.getInt32(currOffset, true);
|
|
152
170
|
currOffset += 4;
|
|
153
171
|
const binIndex = {};
|
|
154
|
-
let stats;
|
|
172
|
+
let stats;
|
|
155
173
|
for (let j = 0; j < binCount; j += 1) {
|
|
156
|
-
const bin =
|
|
174
|
+
const bin = dataView.getUint32(currOffset, true);
|
|
157
175
|
if (bin > this.maxBinNumber) {
|
|
158
|
-
// this is a fake bin that actually has stats information
|
|
159
|
-
//
|
|
176
|
+
// this is a fake bin that actually has stats information about the
|
|
177
|
+
// reference sequence in it
|
|
160
178
|
stats = this.parsePseudoBin(bytes, currOffset + 4);
|
|
161
179
|
currOffset += 4 + 8 + 4 + 16 + 16;
|
|
162
180
|
}
|
|
163
181
|
else {
|
|
164
182
|
const loffset = (0, virtualOffset_1.fromBytes)(bytes, currOffset + 4);
|
|
165
183
|
firstDataLine = this._findFirstData(firstDataLine, loffset);
|
|
166
|
-
const chunkCount =
|
|
184
|
+
const chunkCount = dataView.getInt32(currOffset + 12, true);
|
|
167
185
|
currOffset += 16;
|
|
168
186
|
const chunks = new Array(chunkCount);
|
|
169
187
|
for (let k = 0; k < chunkCount; k += 1) {
|
|
170
188
|
const u = (0, virtualOffset_1.fromBytes)(bytes, currOffset);
|
|
171
189
|
const v = (0, virtualOffset_1.fromBytes)(bytes, currOffset + 8);
|
|
172
190
|
currOffset += 16;
|
|
173
|
-
// this._findFirstData(data, u)
|
|
174
191
|
chunks[k] = new chunk_1.default(u, v, bin);
|
|
175
192
|
}
|
|
176
193
|
binIndex[bin] = chunks;
|
|
@@ -192,8 +209,9 @@ class CSI extends indexFile_1.default {
|
|
|
192
209
|
};
|
|
193
210
|
}
|
|
194
211
|
parsePseudoBin(bytes, offset) {
|
|
195
|
-
|
|
196
|
-
|
|
212
|
+
return {
|
|
213
|
+
lineCount: (0, util_1.longToNumber)(long_1.default.fromBytesLE(bytes.subarray(offset + 28, offset + 36), true)),
|
|
214
|
+
};
|
|
197
215
|
}
|
|
198
216
|
async blocksForRange(refName, min, max, opts = {}) {
|
|
199
217
|
if (min < 0) {
|
|
@@ -208,8 +226,8 @@ class CSI extends indexFile_1.default {
|
|
|
208
226
|
if (!ba) {
|
|
209
227
|
return [];
|
|
210
228
|
}
|
|
211
|
-
//
|
|
212
|
-
const overlappingBins = this.reg2bins(min, max);
|
|
229
|
+
// List of bin #s that overlap min, max
|
|
230
|
+
const overlappingBins = this.reg2bins(min, max);
|
|
213
231
|
const chunks = [];
|
|
214
232
|
// Find chunks in overlapping bins. Leaf bins (< 4681) are not pruned
|
|
215
233
|
for (const [start, end] of overlappingBins) {
|
package/dist/csi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"csi.js","sourceRoot":"","sources":["../src/csi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"csi.js","sourceRoot":"","sources":["../src/csi.ts"],"names":[],"mappings":"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"}
|
package/dist/indexFile.d.ts
CHANGED
package/dist/indexFile.js
CHANGED
|
@@ -29,9 +29,8 @@ class IndexFile {
|
|
|
29
29
|
return this.parseP;
|
|
30
30
|
}
|
|
31
31
|
async hasRefSeq(seqId, opts = {}) {
|
|
32
|
-
var _a;
|
|
33
32
|
const idx = await this.parse(opts);
|
|
34
|
-
return !!
|
|
33
|
+
return !!idx.indices[seqId]?.binIndex;
|
|
35
34
|
}
|
|
36
35
|
}
|
|
37
36
|
exports.default = IndexFile;
|
package/dist/indexFile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexFile.js","sourceRoot":"","sources":["../src/indexFile.ts"],"names":[],"mappings":";;AAoBA,MAA8B,SAAS;IAKrC,YAAY,EACV,UAAU,EACV,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAIjC;QACC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,YAAY,GAAG,aAAa,CAAA;IACnC,CAAC;IAMM,KAAK,CAAC,WAAW,CAAC,OAAgB,EAAE;QACzC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAA;IACb,CAAC;IASD,cAAc,CACZ,UAAqC,EACrC,aAA4B;QAE5B,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC;gBAC5C,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,UAAU,CAAA;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,aAAa,CAAA;QACtB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;gBACnD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;gBACvB,MAAM,CAAC,CAAA;YACT,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,OAAgB,EAAE
|
|
1
|
+
{"version":3,"file":"indexFile.js","sourceRoot":"","sources":["../src/indexFile.ts"],"names":[],"mappings":";;AAoBA,MAA8B,SAAS;IAKrC,YAAY,EACV,UAAU,EACV,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAIjC;QACC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,YAAY,GAAG,aAAa,CAAA;IACnC,CAAC;IAMM,KAAK,CAAC,WAAW,CAAC,OAAgB,EAAE;QACzC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAA;IACb,CAAC;IASD,cAAc,CACZ,UAAqC,EACrC,aAA4B;QAE5B,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC;gBAC5C,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,UAAU,CAAA;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,aAAa,CAAA;QACtB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;gBACnD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;gBACvB,MAAM,CAAC,CAAA;YACT,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,OAAgB,EAAE;QAC/C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;IACvC,CAAC;CACF;AA3DD,4BA2DC"}
|