@gmod/cram 4.0.1 → 4.0.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.
@@ -39,7 +39,7 @@ export default class CramSlice {
39
39
  _getBlocksContentIdIndex(): Promise<Record<number, CramFileBlock>>;
40
40
  getBlockByContentId(id: number): Promise<CramFileBlock | undefined>;
41
41
  getReferenceRegion(): Promise<{
42
- seq: any;
42
+ seq: string;
43
43
  start: number;
44
44
  end: number;
45
45
  span: number;
@@ -196,6 +196,7 @@ class CramSlice {
196
196
  }
197
197
  async getReferenceRegion() {
198
198
  // read the slice header
199
+ const decoder = new TextDecoder('utf8');
199
200
  const sliceHeader = (await this.getHeader()).parsedContent;
200
201
  if (!(0, sectionParsers_1.isMappedSliceHeader)(sliceHeader)) {
201
202
  throw new Error('slice header not mapped');
@@ -218,7 +219,8 @@ class CramSlice {
218
219
  // }
219
220
  // TODO verify
220
221
  return {
221
- seq: refBlock.data.toString('utf8'),
222
+ // @ts-expect-error
223
+ seq: decoder.decode(refBlock.data),
222
224
  start: sliceHeader.refSeqStart,
223
225
  end: sliceHeader.refSeqStart + sliceHeader.refSeqSpan - 1,
224
226
  span: sliceHeader.refSeqSpan,
@@ -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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"}
@@ -19,10 +19,17 @@ export default class IndexedCramFile {
19
19
  *
20
20
  * @param {object} args
21
21
  * @param {CramFile} args.cram
22
- * @param {Index-like} args.index object that supports getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
23
- * @param {number} [args.cacheSize] optional maximum number of CRAM records to cache. default 20,000
24
- * @param {boolean} [args.checkSequenceMD5] - default true. if false, disables verifying the MD5
25
- * checksum of the reference sequence underlying a slice. In some applications, this check can cause an inconvenient amount (many megabases) of sequences to be fetched.
22
+ *
23
+ * @param {Index-like} args.index object that supports
24
+ * getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
25
+ *
26
+ * @param {number} [args.cacheSize] optional maximum number of CRAM records
27
+ * to cache. default 20,000
28
+ *
29
+ * @param {boolean} [args.checkSequenceMD5] - default true. if false,
30
+ * disables verifying the MD5 checksum of the reference sequence underlying a
31
+ * slice. In some applications, this check can cause an inconvenient amount
32
+ * (many megabases) of sequences to be fetched.
26
33
  */
27
34
  constructor(args: {
28
35
  index: CramIndexLike;
@@ -36,10 +43,9 @@ export default class IndexedCramFile {
36
43
  } & CramFileSource)));
37
44
  /**
38
45
  *
39
- * @param {number} seq numeric ID of the reference sequence
40
- * @param {number} start start of the range of interest. 1-based closed coordinates.
41
- * @param {number} end end of the range of interest. 1-based closed coordinates.
42
- * @returns {Promise[Array[CramRecord]]}
46
+ * @param seq numeric ID of the reference sequence
47
+ * @param start start of the range of interest. 1-based closed coordinates.
48
+ * @param end end of the range of interest. 1-based closed coordinates.
43
49
  */
44
50
  getRecordsForRange(seq: number, start: number, end: number, opts?: {
45
51
  viewAsPairs?: boolean;
@@ -10,13 +10,19 @@ class IndexedCramFile {
10
10
  *
11
11
  * @param {object} args
12
12
  * @param {CramFile} args.cram
13
- * @param {Index-like} args.index object that supports getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
14
- * @param {number} [args.cacheSize] optional maximum number of CRAM records to cache. default 20,000
15
- * @param {boolean} [args.checkSequenceMD5] - default true. if false, disables verifying the MD5
16
- * checksum of the reference sequence underlying a slice. In some applications, this check can cause an inconvenient amount (many megabases) of sequences to be fetched.
13
+ *
14
+ * @param {Index-like} args.index object that supports
15
+ * getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
16
+ *
17
+ * @param {number} [args.cacheSize] optional maximum number of CRAM records
18
+ * to cache. default 20,000
19
+ *
20
+ * @param {boolean} [args.checkSequenceMD5] - default true. if false,
21
+ * disables verifying the MD5 checksum of the reference sequence underlying a
22
+ * slice. In some applications, this check can cause an inconvenient amount
23
+ * (many megabases) of sequences to be fetched.
17
24
  */
18
25
  constructor(args) {
19
- // { cram, index, seqFetch /* fasta, fastaIndex */ }) {
20
26
  this.cram =
21
27
  args.cram ??
22
28
  new cramFile_1.default({
@@ -34,10 +40,9 @@ class IndexedCramFile {
34
40
  }
35
41
  /**
36
42
  *
37
- * @param {number} seq numeric ID of the reference sequence
38
- * @param {number} start start of the range of interest. 1-based closed coordinates.
39
- * @param {number} end end of the range of interest. 1-based closed coordinates.
40
- * @returns {Promise[Array[CramRecord]]}
43
+ * @param seq numeric ID of the reference sequence
44
+ * @param start start of the range of interest. 1-based closed coordinates.
45
+ * @param end end of the range of interest. 1-based closed coordinates.
41
46
  */
42
47
  async getRecordsForRange(seq, start, end, opts = {}) {
43
48
  opts.viewAsPairs = opts.viewAsPairs || false;
@@ -49,13 +54,11 @@ class IndexedCramFile {
49
54
  }
50
55
  const seqId = seq;
51
56
  const slices = await this.index.getEntriesForRange(seqId, start, end);
52
- // TODO: do we need to merge or de-duplicate the blocks?
53
57
  // fetch all the slices and parse the feature data
54
- const filter = (feature) => feature.sequenceId === seq &&
58
+ const sliceResults = await Promise.all(slices.map(slice => this.getRecordsInSlice(slice, feature => feature.sequenceId === seq &&
55
59
  feature.alignmentStart <= end &&
56
60
  feature.lengthOnRef !== undefined &&
57
- feature.alignmentStart + feature.lengthOnRef - 1 >= start;
58
- const sliceResults = await Promise.all(slices.map(slice => this.getRecordsInSlice(slice, filter)));
61
+ feature.alignmentStart + feature.lengthOnRef - 1 >= start)));
59
62
  let ret = Array.prototype.concat(...sliceResults);
60
63
  if (opts.viewAsPairs) {
61
64
  const readNames = {};
@@ -1 +1 @@
1
- {"version":3,"file":"indexedCramFile.js","sourceRoot":"","sources":["../src/indexedCramFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexedCramFile.js","sourceRoot":"","sources":["../src/indexedCramFile.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@ export default class CramSlice {
39
39
  _getBlocksContentIdIndex(): Promise<Record<number, CramFileBlock>>;
40
40
  getBlockByContentId(id: number): Promise<CramFileBlock | undefined>;
41
41
  getReferenceRegion(): Promise<{
42
- seq: any;
42
+ seq: string;
43
43
  start: number;
44
44
  end: number;
45
45
  span: number;
@@ -191,6 +191,7 @@ export default class CramSlice {
191
191
  }
192
192
  async getReferenceRegion() {
193
193
  // read the slice header
194
+ const decoder = new TextDecoder('utf8');
194
195
  const sliceHeader = (await this.getHeader()).parsedContent;
195
196
  if (!isMappedSliceHeader(sliceHeader)) {
196
197
  throw new Error('slice header not mapped');
@@ -213,7 +214,8 @@ export default class CramSlice {
213
214
  // }
214
215
  // TODO verify
215
216
  return {
216
- seq: refBlock.data.toString('utf8'),
217
+ // @ts-expect-error
218
+ seq: decoder.decode(refBlock.data),
217
219
  start: sliceHeader.refSeqStart,
218
220
  end: sliceHeader.refSeqStart + sliceHeader.refSeqSpan - 1,
219
221
  span: sliceHeader.refSeqSpan,
@@ -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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"}
@@ -19,10 +19,17 @@ export default class IndexedCramFile {
19
19
  *
20
20
  * @param {object} args
21
21
  * @param {CramFile} args.cram
22
- * @param {Index-like} args.index object that supports getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
23
- * @param {number} [args.cacheSize] optional maximum number of CRAM records to cache. default 20,000
24
- * @param {boolean} [args.checkSequenceMD5] - default true. if false, disables verifying the MD5
25
- * checksum of the reference sequence underlying a slice. In some applications, this check can cause an inconvenient amount (many megabases) of sequences to be fetched.
22
+ *
23
+ * @param {Index-like} args.index object that supports
24
+ * getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
25
+ *
26
+ * @param {number} [args.cacheSize] optional maximum number of CRAM records
27
+ * to cache. default 20,000
28
+ *
29
+ * @param {boolean} [args.checkSequenceMD5] - default true. if false,
30
+ * disables verifying the MD5 checksum of the reference sequence underlying a
31
+ * slice. In some applications, this check can cause an inconvenient amount
32
+ * (many megabases) of sequences to be fetched.
26
33
  */
27
34
  constructor(args: {
28
35
  index: CramIndexLike;
@@ -36,10 +43,9 @@ export default class IndexedCramFile {
36
43
  } & CramFileSource)));
37
44
  /**
38
45
  *
39
- * @param {number} seq numeric ID of the reference sequence
40
- * @param {number} start start of the range of interest. 1-based closed coordinates.
41
- * @param {number} end end of the range of interest. 1-based closed coordinates.
42
- * @returns {Promise[Array[CramRecord]]}
46
+ * @param seq numeric ID of the reference sequence
47
+ * @param start start of the range of interest. 1-based closed coordinates.
48
+ * @param end end of the range of interest. 1-based closed coordinates.
43
49
  */
44
50
  getRecordsForRange(seq: number, start: number, end: number, opts?: {
45
51
  viewAsPairs?: boolean;
@@ -5,13 +5,19 @@ export default class IndexedCramFile {
5
5
  *
6
6
  * @param {object} args
7
7
  * @param {CramFile} args.cram
8
- * @param {Index-like} args.index object that supports getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
9
- * @param {number} [args.cacheSize] optional maximum number of CRAM records to cache. default 20,000
10
- * @param {boolean} [args.checkSequenceMD5] - default true. if false, disables verifying the MD5
11
- * checksum of the reference sequence underlying a slice. In some applications, this check can cause an inconvenient amount (many megabases) of sequences to be fetched.
8
+ *
9
+ * @param {Index-like} args.index object that supports
10
+ * getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
11
+ *
12
+ * @param {number} [args.cacheSize] optional maximum number of CRAM records
13
+ * to cache. default 20,000
14
+ *
15
+ * @param {boolean} [args.checkSequenceMD5] - default true. if false,
16
+ * disables verifying the MD5 checksum of the reference sequence underlying a
17
+ * slice. In some applications, this check can cause an inconvenient amount
18
+ * (many megabases) of sequences to be fetched.
12
19
  */
13
20
  constructor(args) {
14
- // { cram, index, seqFetch /* fasta, fastaIndex */ }) {
15
21
  this.cram =
16
22
  args.cram ??
17
23
  new CramFile({
@@ -29,10 +35,9 @@ export default class IndexedCramFile {
29
35
  }
30
36
  /**
31
37
  *
32
- * @param {number} seq numeric ID of the reference sequence
33
- * @param {number} start start of the range of interest. 1-based closed coordinates.
34
- * @param {number} end end of the range of interest. 1-based closed coordinates.
35
- * @returns {Promise[Array[CramRecord]]}
38
+ * @param seq numeric ID of the reference sequence
39
+ * @param start start of the range of interest. 1-based closed coordinates.
40
+ * @param end end of the range of interest. 1-based closed coordinates.
36
41
  */
37
42
  async getRecordsForRange(seq, start, end, opts = {}) {
38
43
  opts.viewAsPairs = opts.viewAsPairs || false;
@@ -44,13 +49,11 @@ export default class IndexedCramFile {
44
49
  }
45
50
  const seqId = seq;
46
51
  const slices = await this.index.getEntriesForRange(seqId, start, end);
47
- // TODO: do we need to merge or de-duplicate the blocks?
48
52
  // fetch all the slices and parse the feature data
49
- const filter = (feature) => feature.sequenceId === seq &&
53
+ const sliceResults = await Promise.all(slices.map(slice => this.getRecordsInSlice(slice, feature => feature.sequenceId === seq &&
50
54
  feature.alignmentStart <= end &&
51
55
  feature.lengthOnRef !== undefined &&
52
- feature.alignmentStart + feature.lengthOnRef - 1 >= start;
53
- const sliceResults = await Promise.all(slices.map(slice => this.getRecordsInSlice(slice, filter)));
56
+ feature.alignmentStart + feature.lengthOnRef - 1 >= start)));
54
57
  let ret = Array.prototype.concat(...sliceResults);
55
58
  if (opts.viewAsPairs) {
56
59
  const readNames = {};
@@ -1 +1 @@
1
- {"version":3,"file":"indexedCramFile.js","sourceRoot":"","sources":["../src/indexedCramFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexedCramFile.js","sourceRoot":"","sources":["../src/indexedCramFile.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gmod/cram",
3
- "version": "4.0.1",
3
+ "version": "4.0.3",
4
4
  "description": "read CRAM files with pure Javascript",
5
5
  "license": "MIT",
6
6
  "repository": "GMOD/cram-js",
@@ -25,13 +25,13 @@
25
25
  "lint": "eslint --report-unused-disable-directives --max-warnings 0",
26
26
  "format": "prettier --write .",
27
27
  "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",
28
- "prebuild": "npm run clean",
28
+ "prebuild": "yarn clean",
29
29
  "clean": "rimraf dist esm",
30
30
  "build:esm": "tsc --outDir esm",
31
31
  "build:es5": "tsc --module commonjs --outDir dist",
32
- "build": "npm run build:esm && npm run build:es5",
32
+ "build": "yarn build:esm && yarn build:es5",
33
33
  "postbuild": "webpack",
34
- "prepack": "npm test run && npm run build && cp dist/errors.js errors.js",
34
+ "preversion": "yarn test --run && yarn build && cp dist/errors.js errors.js",
35
35
  "postpublish": "rm errors.js",
36
36
  "postversion": "git push --follow-tags"
37
37
  },
@@ -44,7 +44,7 @@
44
44
  "dependencies": {
45
45
  "bzip2": "^0.1.1",
46
46
  "crc": "^4.3.2",
47
- "generic-filehandle2": "^0.0.2",
47
+ "generic-filehandle2": "^1.0.0",
48
48
  "long": "^4.0.0",
49
49
  "md5": "^2.2.1",
50
50
  "pako": "^1.0.4",
@@ -52,7 +52,7 @@
52
52
  "xz-decompress": "^0.2.1"
53
53
  },
54
54
  "devDependencies": {
55
- "@gmod/indexedfasta": "^2.1.0",
55
+ "@gmod/indexedfasta": "^3.0.0",
56
56
  "@types/long": "^4.0.0",
57
57
  "@types/md5": "^2.3.2",
58
58
  "@types/pako": "^1.0.3",
@@ -63,7 +63,7 @@
63
63
  "documentation": "^14.0.3",
64
64
  "eslint": "^9.9.0",
65
65
  "eslint-plugin-import": "^2.31.0",
66
- "eslint-plugin-unicorn": "^55.0.0",
66
+ "eslint-plugin-unicorn": "^56.0.1",
67
67
  "mock-fs": "^5.2.0",
68
68
  "prettier": "^3.2.5",
69
69
  "rimraf": "^6.0.1",
@@ -267,6 +267,7 @@ export default class CramSlice {
267
267
 
268
268
  async getReferenceRegion() {
269
269
  // read the slice header
270
+ const decoder = new TextDecoder('utf8')
270
271
  const sliceHeader = (await this.getHeader()).parsedContent
271
272
  if (!isMappedSliceHeader(sliceHeader)) {
272
273
  throw new Error('slice header not mapped')
@@ -298,7 +299,8 @@ export default class CramSlice {
298
299
 
299
300
  // TODO verify
300
301
  return {
301
- seq: (refBlock as any).data.toString('utf8'),
302
+ // @ts-expect-error
303
+ seq: decoder.decode(refBlock.data),
302
304
  start: sliceHeader.refSeqStart,
303
305
  end: sliceHeader.refSeqStart + sliceHeader.refSeqSpan - 1,
304
306
  span: sliceHeader.refSeqSpan,
@@ -29,10 +29,17 @@ export default class IndexedCramFile {
29
29
  *
30
30
  * @param {object} args
31
31
  * @param {CramFile} args.cram
32
- * @param {Index-like} args.index object that supports getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
33
- * @param {number} [args.cacheSize] optional maximum number of CRAM records to cache. default 20,000
34
- * @param {boolean} [args.checkSequenceMD5] - default true. if false, disables verifying the MD5
35
- * checksum of the reference sequence underlying a slice. In some applications, this check can cause an inconvenient amount (many megabases) of sequences to be fetched.
32
+ *
33
+ * @param {Index-like} args.index object that supports
34
+ * getEntriesForRange(seqId,start,end) -> Promise[Array[index entries]]
35
+ *
36
+ * @param {number} [args.cacheSize] optional maximum number of CRAM records
37
+ * to cache. default 20,000
38
+ *
39
+ * @param {boolean} [args.checkSequenceMD5] - default true. if false,
40
+ * disables verifying the MD5 checksum of the reference sequence underlying a
41
+ * slice. In some applications, this check can cause an inconvenient amount
42
+ * (many megabases) of sequences to be fetched.
36
43
  */
37
44
  constructor(
38
45
  args: {
@@ -47,7 +54,6 @@ export default class IndexedCramFile {
47
54
  } & CramFileSource)
48
55
  ),
49
56
  ) {
50
- // { cram, index, seqFetch /* fasta, fastaIndex */ }) {
51
57
  this.cram =
52
58
  args.cram ??
53
59
  new CramFile({
@@ -68,10 +74,9 @@ export default class IndexedCramFile {
68
74
 
69
75
  /**
70
76
  *
71
- * @param {number} seq numeric ID of the reference sequence
72
- * @param {number} start start of the range of interest. 1-based closed coordinates.
73
- * @param {number} end end of the range of interest. 1-based closed coordinates.
74
- * @returns {Promise[Array[CramRecord]]}
77
+ * @param seq numeric ID of the reference sequence
78
+ * @param start start of the range of interest. 1-based closed coordinates.
79
+ * @param end end of the range of interest. 1-based closed coordinates.
75
80
  */
76
81
  async getRecordsForRange(
77
82
  seq: number,
@@ -96,16 +101,18 @@ export default class IndexedCramFile {
96
101
  const seqId = seq
97
102
  const slices = await this.index.getEntriesForRange(seqId, start, end)
98
103
 
99
- // TODO: do we need to merge or de-duplicate the blocks?
100
-
101
104
  // fetch all the slices and parse the feature data
102
- const filter = (feature: CramRecord) =>
103
- feature.sequenceId === seq &&
104
- feature.alignmentStart <= end &&
105
- feature.lengthOnRef !== undefined &&
106
- feature.alignmentStart + feature.lengthOnRef - 1 >= start
107
105
  const sliceResults = await Promise.all(
108
- slices.map(slice => this.getRecordsInSlice(slice, filter)),
106
+ slices.map(slice =>
107
+ this.getRecordsInSlice(
108
+ slice,
109
+ feature =>
110
+ feature.sequenceId === seq &&
111
+ feature.alignmentStart <= end &&
112
+ feature.lengthOnRef !== undefined &&
113
+ feature.alignmentStart + feature.lengthOnRef - 1 >= start,
114
+ ),
115
+ ),
109
116
  )
110
117
 
111
118
  let ret: CramRecord[] = Array.prototype.concat(...sliceResults)