@gmod/bam 2.0.4 → 3.0.1

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/esm/record.js CHANGED
@@ -1,156 +1,70 @@
1
1
  import Constants from './constants';
2
2
  const SEQRET_DECODER = '=ACMGRSVTWYHKDBN'.split('');
3
3
  const CIGAR_DECODER = 'MIDNSHP=X???????'.split('');
4
- /**
5
- * Class of each BAM record returned by this API.
6
- */
7
4
  export default class BamRecord {
8
5
  constructor(args) {
9
- this.data = {};
10
- this._tagList = [];
11
- this._allTagsParsed = false;
12
- const { bytes, fileOffset } = args;
13
- const { byteArray, start } = bytes;
14
- this.data = { start: byteArray.readInt32LE(start + 8) };
15
- this.bytes = bytes;
16
- this._id = fileOffset;
17
- this._refID = byteArray.readInt32LE(start + 4);
18
- this.flags = (byteArray.readInt32LE(start + 16) & 0xffff0000) >> 16;
19
- }
20
- get(field) {
21
- //@ts-ignore
22
- if (this[field]) {
23
- //@ts-ignore
24
- if (this.data[field]) {
25
- return this.data[field];
26
- }
27
- //@ts-ignore
28
- this.data[field] = this[field]();
29
- return this.data[field];
30
- }
31
- return this._get(field.toLowerCase());
6
+ this.bytes = args.bytes;
7
+ this.fileOffset = args.fileOffset;
32
8
  }
33
- end() {
34
- return this.get('start') + this.get('length_on_ref');
9
+ get byteArray() {
10
+ return this.bytes.byteArray;
35
11
  }
36
- seq_id() {
37
- return this._refID;
12
+ get flags() {
13
+ return ((this.byteArray.readInt32LE(this.bytes.start + 16) & 0xffff0000) >> 16);
38
14
  }
39
- // same as get(), except requires lower-case arguments. used
40
- // internally to save lots of calls to field.toLowerCase()
41
- _get(field) {
42
- if (field in this.data) {
43
- return this.data[field];
44
- }
45
- this.data[field] = this._parseTag(field);
46
- return this.data[field];
47
- }
48
- _tags() {
49
- this._parseAllTags();
50
- let tags = ['seq'];
51
- if (!this.isSegmentUnmapped()) {
52
- tags.push('start', 'end', 'strand', 'score', 'qual', 'MQ', 'CIGAR', 'length_on_ref', 'template_length');
53
- }
54
- if (this.isPaired()) {
55
- tags.push('next_segment_position', 'pair_orientation');
56
- }
57
- tags = tags.concat(this._tagList || []);
58
- for (const k of Object.keys(this.data)) {
59
- if (!k.startsWith('_') && k !== 'next_seq_id') {
60
- tags.push(k);
61
- }
62
- }
63
- const seen = {};
64
- return tags.filter(t => {
65
- if ((t in this.data && this.data[t] === undefined) ||
66
- t === 'CG' ||
67
- t === 'cg') {
68
- return false;
69
- }
70
- const lt = t.toLowerCase();
71
- const s = seen[lt];
72
- seen[lt] = true;
73
- return !s;
74
- });
15
+ get ref_id() {
16
+ return this.byteArray.readInt32LE(this.bytes.start + 4);
75
17
  }
76
- parent() {
77
- return;
18
+ get start() {
19
+ return this.byteArray.readInt32LE(this.bytes.start + 8);
78
20
  }
79
- children() {
80
- return this.get('subfeatures');
21
+ get end() {
22
+ return this.start + this.length_on_ref;
81
23
  }
82
- id() {
83
- return this._id;
24
+ get id() {
25
+ return this.fileOffset;
84
26
  }
85
- // special parsers
86
- /**
87
- * Mapping quality score.
88
- */
89
- mq() {
90
- const mq = (this.get('_bin_mq_nl') & 0xff00) >> 8;
27
+ get mq() {
28
+ const mq = (this.bin_mq_nl & 0xff00) >> 8;
91
29
  return mq === 255 ? undefined : mq;
92
30
  }
93
- score() {
94
- return this.get('mq');
31
+ get score() {
32
+ return this.mq;
95
33
  }
96
- qual() {
34
+ get qual() {
97
35
  var _a;
98
- return (_a = this.qualRaw()) === null || _a === void 0 ? void 0 : _a.join(' ');
36
+ return (_a = this.qualRaw) === null || _a === void 0 ? void 0 : _a.join(' ');
99
37
  }
100
- qualRaw() {
38
+ get qualRaw() {
101
39
  if (this.isSegmentUnmapped()) {
102
40
  return;
103
41
  }
104
- const { start, byteArray } = this.bytes;
105
- const p = start +
106
- 36 +
107
- this.get('_l_read_name') +
108
- this.get('_n_cigar_op') * 4 +
109
- this.get('_seq_bytes');
110
- const lseq = this.get('seq_length');
111
- return byteArray.subarray(p, p + lseq);
112
- }
113
- strand() {
114
- return this.isReverseComplemented() ? -1 : 1;
42
+ const p = this.b0 +
43
+ this.read_name_length +
44
+ this.num_cigar_ops * 4 +
45
+ this.num_seq_bytes;
46
+ return this.byteArray.subarray(p, p + this.seq_length);
115
47
  }
116
- multi_segment_next_segment_strand() {
117
- if (this.isMateUnmapped()) {
118
- return;
119
- }
120
- return this.isMateReverseComplemented() ? -1 : 1;
48
+ get strand() {
49
+ return this.isReverseComplemented() ? -1 : 1;
121
50
  }
122
- name() {
123
- return this.get('_read_name');
51
+ get b0() {
52
+ return this.bytes.start + 36;
124
53
  }
125
- _read_name() {
126
- const nl = this.get('_l_read_name');
127
- const { byteArray, start } = this.bytes;
128
- return byteArray.toString('ascii', start + 36, start + 36 + nl - 1);
54
+ get name() {
55
+ return this.byteArray.toString('ascii', this.b0, this.b0 + this.read_name_length - 1);
129
56
  }
130
- /**
131
- * Get the value of a tag, parsing the tags as far as necessary.
132
- * Only called if we have not already parsed that field.
133
- */
134
- _parseTag(tagName) {
135
- // if all of the tags have been parsed and we're still being
136
- // called, we already know that we have no such tag, because
137
- // it would already have been cached.
138
- if (this._allTagsParsed) {
139
- return;
140
- }
141
- const { byteArray, start } = this.bytes;
142
- let p = this._tagOffset ||
143
- start +
144
- 36 +
145
- this.get('_l_read_name') +
146
- this.get('_n_cigar_op') * 4 +
147
- this.get('_seq_bytes') +
148
- this.get('seq_length');
57
+ get tags() {
58
+ const { byteArray } = this.bytes;
59
+ let p = this.b0 +
60
+ this.read_name_length +
61
+ this.num_cigar_ops * 4 +
62
+ this.num_seq_bytes +
63
+ this.seq_length;
149
64
  const blockEnd = this.bytes.end;
150
- let lcTag;
151
- while (p < blockEnd && lcTag !== tagName) {
65
+ const tags = {};
66
+ while (p < blockEnd) {
152
67
  const tag = String.fromCharCode(byteArray[p], byteArray[p + 1]);
153
- lcTag = tag.toLowerCase();
154
68
  const type = String.fromCharCode(byteArray[p + 2]);
155
69
  p += 3;
156
70
  let value;
@@ -308,26 +222,9 @@ export default class BamRecord {
308
222
  p = blockEnd;
309
223
  } // stop parsing tags
310
224
  }
311
- this._tagOffset = p;
312
- this._tagList.push(tag);
313
- if (lcTag === tagName) {
314
- return value;
315
- }
316
- this.data[lcTag] = value;
225
+ tags[tag] = value;
317
226
  }
318
- this._allTagsParsed = true;
319
- return;
320
- }
321
- _parseAllTags() {
322
- this._parseTag('');
323
- }
324
- _parseCigar(cigar) {
325
- return (
326
- //@ts-ignore
327
- cigar
328
- .match(/\d+\D/g)
329
- //@ts-ignore
330
- .map(op => [/\D/.exec(op)[0].toUpperCase(), Number.parseInt(op, 10)]));
227
+ return tags;
331
228
  }
332
229
  /**
333
230
  * @returns {boolean} true if the read is paired, regardless of whether both
@@ -380,40 +277,43 @@ export default class BamRecord {
380
277
  isSupplementary() {
381
278
  return !!(this.flags & Constants.BAM_FSUPPLEMENTARY);
382
279
  }
383
- cigar() {
280
+ get cigarAndLength() {
384
281
  if (this.isSegmentUnmapped()) {
385
- return;
282
+ return {
283
+ length_on_ref: 0,
284
+ CIGAR: '',
285
+ };
386
286
  }
387
- const { byteArray, start } = this.bytes;
388
- const numCigarOps = this.get('_n_cigar_op');
389
- let p = start + 36 + this.get('_l_read_name');
390
- const seqLen = this.get('seq_length');
391
- let cigar = '';
392
- let lref = 0;
393
- // check for CG tag by inspecting whether the CIGAR field
394
- // contains a clip that consumes entire seqLen
395
- let cigop = byteArray.readInt32LE(p);
287
+ const numCigarOps = this.num_cigar_ops;
288
+ let p = this.b0 + this.read_name_length;
289
+ let CIGAR = '';
290
+ // check for CG tag by inspecting whether the CIGAR field contains a clip
291
+ // that consumes entire seqLen
292
+ let cigop = this.byteArray.readInt32LE(p);
396
293
  let lop = cigop >> 4;
397
294
  let op = CIGAR_DECODER[cigop & 0xf];
398
- if (op === 'S' && lop === seqLen) {
399
- // if there is a CG the second CIGAR field will
400
- // be a N tag the represents the length on ref
295
+ if (op === 'S' && lop === this.seq_length) {
296
+ // if there is a CG the second CIGAR field will be a N tag the represents
297
+ // the length on ref
401
298
  p += 4;
402
- cigop = byteArray.readInt32LE(p);
299
+ cigop = this.byteArray.readInt32LE(p);
403
300
  lop = cigop >> 4;
404
301
  op = CIGAR_DECODER[cigop & 0xf];
405
302
  if (op !== 'N') {
406
303
  console.warn('CG tag with no N tag');
407
304
  }
408
- this.data.length_on_ref = lop;
409
- return this.get('CG');
305
+ return {
306
+ CIGAR: this.tags.CG,
307
+ length_on_ref: lop,
308
+ };
410
309
  }
411
310
  else {
311
+ let lref = 0;
412
312
  for (let c = 0; c < numCigarOps; ++c) {
413
- cigop = byteArray.readInt32LE(p);
313
+ cigop = this.byteArray.readInt32LE(p);
414
314
  lop = cigop >> 4;
415
315
  op = CIGAR_DECODER[cigop & 0xf];
416
- cigar += lop + op;
316
+ CIGAR += lop + op;
417
317
  // soft clip, hard clip, and insertion don't count toward
418
318
  // the length on the reference
419
319
  if (op !== 'H' && op !== 'S' && op !== 'I') {
@@ -421,39 +321,32 @@ export default class BamRecord {
421
321
  }
422
322
  p += 4;
423
323
  }
424
- this.data.length_on_ref = lref;
425
- return cigar;
324
+ return {
325
+ CIGAR,
326
+ length_on_ref: lref,
327
+ };
426
328
  }
427
329
  }
428
- length_on_ref() {
429
- if (this.data.length_on_ref) {
430
- return this.data.length_on_ref;
431
- }
432
- else {
433
- this.get('cigar'); // the length_on_ref is set as a side effect
434
- return this.data.length_on_ref;
435
- }
330
+ get length_on_ref() {
331
+ return this.cigarAndLength.length_on_ref;
436
332
  }
437
- _n_cigar_op() {
438
- return this.get('_flag_nc') & 0xffff;
333
+ get CIGAR() {
334
+ return this.cigarAndLength.CIGAR;
439
335
  }
440
- _l_read_name() {
441
- return this.get('_bin_mq_nl') & 0xff;
336
+ get num_cigar_ops() {
337
+ return this.flag_nc & 0xffff;
442
338
  }
443
- /**
444
- * number of bytes in the sequence field
445
- */
446
- _seq_bytes() {
447
- return (this.get('seq_length') + 1) >> 1;
339
+ get read_name_length() {
340
+ return this.bin_mq_nl & 0xff;
448
341
  }
449
- getReadBases() {
450
- return this.seq();
342
+ get num_seq_bytes() {
343
+ return (this.seq_length + 1) >> 1;
451
344
  }
452
- seq() {
453
- const { byteArray, start } = this.bytes;
454
- const p = start + 36 + this.get('_l_read_name') + this.get('_n_cigar_op') * 4;
455
- const seqBytes = this.get('_seq_bytes');
456
- const len = this.get('seq_length');
345
+ get seq() {
346
+ const { byteArray } = this.bytes;
347
+ const p = this.b0 + this.read_name_length + this.num_cigar_ops * 4;
348
+ const seqBytes = this.num_seq_bytes;
349
+ const len = this.seq_length;
457
350
  let buf = '';
458
351
  let i = 0;
459
352
  for (let j = 0; j < seqBytes; ++j) {
@@ -468,10 +361,10 @@ export default class BamRecord {
468
361
  return buf;
469
362
  }
470
363
  // adapted from igv.js
471
- getPairOrientation() {
364
+ get pair_orientation() {
472
365
  if (!this.isSegmentUnmapped() &&
473
366
  !this.isMateUnmapped() &&
474
- this._refID === this._next_refid()) {
367
+ this.ref_id === this.next_refid) {
475
368
  const s1 = this.isReverseComplemented() ? 'R' : 'F';
476
369
  const s2 = this.isMateReverseComplemented() ? 'R' : 'F';
477
370
  let o1 = ' ';
@@ -485,7 +378,7 @@ export default class BamRecord {
485
378
  o2 = '1';
486
379
  }
487
380
  const tmp = [];
488
- const isize = this.template_length();
381
+ const isize = this.template_length;
489
382
  if (isize > 0) {
490
383
  tmp[0] = s1;
491
384
  tmp[1] = o1;
@@ -502,23 +395,23 @@ export default class BamRecord {
502
395
  }
503
396
  return '';
504
397
  }
505
- _bin_mq_nl() {
506
- return this.bytes.byteArray.readInt32LE(this.bytes.start + 12);
398
+ get bin_mq_nl() {
399
+ return this.byteArray.readInt32LE(this.bytes.start + 12);
507
400
  }
508
- _flag_nc() {
509
- return this.bytes.byteArray.readInt32LE(this.bytes.start + 16);
401
+ get flag_nc() {
402
+ return this.byteArray.readInt32LE(this.bytes.start + 16);
510
403
  }
511
- seq_length() {
512
- return this.bytes.byteArray.readInt32LE(this.bytes.start + 20);
404
+ get seq_length() {
405
+ return this.byteArray.readInt32LE(this.bytes.start + 20);
513
406
  }
514
- _next_refid() {
515
- return this.bytes.byteArray.readInt32LE(this.bytes.start + 24);
407
+ get next_refid() {
408
+ return this.byteArray.readInt32LE(this.bytes.start + 24);
516
409
  }
517
- _next_pos() {
518
- return this.bytes.byteArray.readInt32LE(this.bytes.start + 28);
410
+ get next_pos() {
411
+ return this.byteArray.readInt32LE(this.bytes.start + 28);
519
412
  }
520
- template_length() {
521
- return this.bytes.byteArray.readInt32LE(this.bytes.start + 32);
413
+ get template_length() {
414
+ return this.byteArray.readInt32LE(this.bytes.start + 32);
522
415
  }
523
416
  toJSON() {
524
417
  const data = {};
@@ -532,4 +425,26 @@ export default class BamRecord {
532
425
  return data;
533
426
  }
534
427
  }
428
+ function cacheGetter(ctor, prop) {
429
+ const desc = Object.getOwnPropertyDescriptor(ctor.prototype, prop);
430
+ if (!desc) {
431
+ throw new Error('OH NO, NO PROPERTY DESCRIPTOR');
432
+ }
433
+ // eslint-disable-next-line @typescript-eslint/unbound-method
434
+ const getter = desc.get;
435
+ if (!getter) {
436
+ throw new Error('OH NO, NOT A GETTER');
437
+ }
438
+ Object.defineProperty(ctor.prototype, prop, {
439
+ get() {
440
+ const ret = getter.call(this);
441
+ Object.defineProperty(this, prop, { value: ret });
442
+ return ret;
443
+ },
444
+ });
445
+ }
446
+ cacheGetter(BamRecord, 'tags');
447
+ cacheGetter(BamRecord, 'cigarAndLength');
448
+ cacheGetter(BamRecord, 'seq');
449
+ cacheGetter(BamRecord, 'qual');
535
450
  //# sourceMappingURL=record.js.map
package/esm/record.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"record.js","sourceRoot":"","sources":["../src/record.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record.js","sourceRoot":"","sources":["../src/record.ts"],"names":[],"mappings":"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"}
package/esm/util.d.ts CHANGED
@@ -1,8 +1,6 @@
1
- import Long from 'long';
2
1
  import Chunk from './chunk';
3
2
  import VirtualOffset from './virtualOffset';
4
3
  export declare function timeout(ms: number): Promise<unknown>;
5
- export declare function longToNumber(long: Long): number;
6
4
  /**
7
5
  * Properly check if the given AbortSignal is aborted.
8
6
  * Per the standard, if the signal reads as aborted,
package/esm/util.js CHANGED
@@ -2,13 +2,6 @@ import Long from 'long';
2
2
  export function timeout(ms) {
3
3
  return new Promise(resolve => setTimeout(resolve, ms));
4
4
  }
5
- export function longToNumber(long) {
6
- if (long.greaterThan(Number.MAX_SAFE_INTEGER) ||
7
- long.lessThan(Number.MIN_SAFE_INTEGER)) {
8
- throw new Error('integer overflow');
9
- }
10
- return long.toNumber();
11
- }
12
5
  /**
13
6
  * Properly check if the given AbortSignal is aborted.
14
7
  * Per the standard, if the signal reads as aborted,
@@ -86,8 +79,9 @@ export function optimizeChunks(chunks, lowest) {
86
79
  return mergedChunks;
87
80
  }
88
81
  export function parsePseudoBin(bytes, offset) {
89
- const lineCount = longToNumber(Long.fromBytesLE(Array.prototype.slice.call(bytes, offset, offset + 8), true));
90
- return { lineCount };
82
+ return {
83
+ lineCount: Long.fromBytesLE(Array.prototype.slice.call(bytes, offset, offset + 8), true).toNumber(),
84
+ };
91
85
  }
92
86
  export function findFirstData(firstDataLine, virtualOffset) {
93
87
  return firstDataLine
package/esm/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gmod/bam",
3
- "version": "2.0.4",
3
+ "version": "3.0.1",
4
4
  "description": "Parser for BAM and BAM index (bai) files",
5
5
  "license": "MIT",
6
6
  "repository": "GMOD/bam-js",
@@ -20,15 +20,14 @@
20
20
  "src"
21
21
  ],
22
22
  "scripts": {
23
- "test": "jest",
24
- "coverage": "npm test -- --coverage",
25
- "lint": "eslint --report-unused-disable-directives --max-warnings 0 src test",
23
+ "test": "vitest",
24
+ "lint": "eslint --report-unused-disable-directives --max-warnings 0",
26
25
  "clean": "rimraf dist esm",
27
26
  "build:esm": "tsc --target es2018 --outDir esm",
28
27
  "build:es5": "tsc --target es2015 --module commonjs --outDir dist",
29
28
  "build": "npm run build:esm && npm run build:es5",
30
29
  "prebuild": "npm run clean && npm run lint",
31
- "preversion": "npm run lint && npm test && npm run build",
30
+ "preversion": "npm run lint && npm test run && npm run build",
32
31
  "version": "standard-changelog && git add CHANGELOG.md",
33
32
  "postversion": "git push --follow-tags"
34
33
  },
@@ -41,28 +40,28 @@
41
40
  "dependencies": {
42
41
  "@gmod/abortable-promise-cache": "^2.0.0",
43
42
  "@gmod/bgzf-filehandle": "^1.4.4",
43
+ "buffer": "^6.0.3",
44
44
  "crc": "^4.3.2",
45
45
  "generic-filehandle": "^3.0.0",
46
46
  "long": "^4.0.0",
47
47
  "quick-lru": "^4.0.0"
48
48
  },
49
49
  "devDependencies": {
50
- "@types/jest": "^29.5.1",
51
50
  "@types/long": "^4.0.0",
52
51
  "@types/node": "^20.11.19",
53
- "@typescript-eslint/eslint-plugin": "^8.0.1",
54
- "@typescript-eslint/parser": "^8.0.1",
55
- "eslint": "^9.8.0",
52
+ "@typescript-eslint/eslint-plugin": "^8.1.0",
53
+ "@typescript-eslint/parser": "^8.1.0",
54
+ "@vitest/coverage-v8": "^2.0.5",
55
+ "eslint": "^9.9.0",
56
56
  "eslint-config-prettier": "^9.1.0",
57
57
  "eslint-plugin-prettier": "^5.1.3",
58
- "eslint-plugin-unicorn": "^55.0.0",
59
- "jest": "^29.5.0",
60
- "jest-fetch-mock": "^3.0.3",
61
- "prettier": "^3.2.5",
58
+ "eslint-plugin-unicorn": "^56.0.0",
59
+ "prettier": "^3.3.3",
62
60
  "rimraf": "^6.0.1",
63
61
  "standard-changelog": "^6.0.0",
64
- "ts-jest": "^29.2.4",
65
- "typescript": "^5.0.4"
62
+ "typescript": "^5.0.4",
63
+ "typescript-eslint": "^8.1.0",
64
+ "vitest": "^2.0.5"
66
65
  },
67
66
  "publishConfig": {
68
67
  "access": "public"