@gmod/bam 1.1.7 → 1.1.11

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.
Files changed (74) hide show
  1. package/CHANGELOG.md +31 -2
  2. package/README.md +2 -3
  3. package/dist/bai.d.ts +2 -0
  4. package/dist/bai.js +300 -548
  5. package/dist/bai.js.map +1 -0
  6. package/dist/bamFile.d.ts +5 -7
  7. package/dist/bamFile.js +670 -1203
  8. package/dist/bamFile.js.map +1 -0
  9. package/dist/chunk.js +34 -69
  10. package/dist/chunk.js.map +1 -0
  11. package/dist/constants.js +27 -35
  12. package/dist/constants.js.map +1 -0
  13. package/dist/csi.js +317 -515
  14. package/dist/csi.js.map +1 -0
  15. package/dist/errors.js +64 -120
  16. package/dist/errors.js.map +1 -0
  17. package/dist/htsget.js +275 -396
  18. package/dist/htsget.js.map +1 -0
  19. package/dist/index.js +16 -54
  20. package/dist/index.js.map +1 -0
  21. package/dist/indexFile.d.ts +2 -2
  22. package/dist/indexFile.js +83 -162
  23. package/dist/indexFile.js.map +1 -0
  24. package/dist/record.d.ts +2 -2
  25. package/dist/record.js +496 -707
  26. package/dist/record.js.map +1 -0
  27. package/dist/sam.js +16 -49
  28. package/dist/sam.js.map +1 -0
  29. package/dist/util.d.ts +0 -1
  30. package/dist/util.js +115 -126
  31. package/dist/util.js.map +1 -0
  32. package/dist/virtualOffset.js +44 -77
  33. package/dist/virtualOffset.js.map +1 -0
  34. package/esm/bai.d.ts +26 -0
  35. package/esm/bai.js +191 -0
  36. package/esm/bai.js.map +1 -0
  37. package/esm/bamFile.d.ts +77 -0
  38. package/esm/bamFile.js +383 -0
  39. package/esm/bamFile.js.map +1 -0
  40. package/esm/chunk.d.ts +18 -0
  41. package/esm/chunk.js +33 -0
  42. package/esm/chunk.js.map +1 -0
  43. package/esm/constants.d.ts +15 -0
  44. package/esm/constants.js +27 -0
  45. package/esm/constants.js.map +1 -0
  46. package/esm/csi.d.ts +35 -0
  47. package/esm/csi.js +209 -0
  48. package/esm/csi.js.map +1 -0
  49. package/esm/errors.d.ts +23 -0
  50. package/esm/errors.js +24 -0
  51. package/esm/errors.js.map +1 -0
  52. package/esm/htsget.d.ts +33 -0
  53. package/esm/htsget.js +100 -0
  54. package/esm/htsget.js.map +1 -0
  55. package/esm/index.d.ts +6 -0
  56. package/esm/index.js +7 -0
  57. package/esm/index.js.map +1 -0
  58. package/esm/indexFile.d.ts +28 -0
  59. package/esm/indexFile.js +33 -0
  60. package/esm/indexFile.js.map +1 -0
  61. package/esm/record.d.ts +88 -0
  62. package/esm/record.js +534 -0
  63. package/esm/record.js.map +1 -0
  64. package/esm/sam.d.ts +7 -0
  65. package/esm/sam.js +16 -0
  66. package/esm/sam.js.map +1 -0
  67. package/esm/util.d.ts +35 -0
  68. package/esm/util.js +92 -0
  69. package/esm/util.js.map +1 -0
  70. package/esm/virtualOffset.d.ts +10 -0
  71. package/esm/virtualOffset.js +37 -0
  72. package/esm/virtualOffset.js.map +1 -0
  73. package/package.json +20 -29
  74. package/dist/declare.d.js +0 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.js","sourceRoot":"","sources":["../src/record.ts"],"names":[],"mappings":"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"}
package/esm/sam.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ export declare function parseHeaderText(text: string): {
2
+ tag: string;
3
+ data: {
4
+ tag: string;
5
+ value: string;
6
+ }[];
7
+ }[];
package/esm/sam.js ADDED
@@ -0,0 +1,16 @@
1
+ export function parseHeaderText(text) {
2
+ const lines = text.split(/\r?\n/);
3
+ const data = [];
4
+ lines.forEach(line => {
5
+ const [tag, ...fields] = line.split(/\t/);
6
+ const parsedFields = fields.map(f => {
7
+ const [fieldTag, value] = f.split(':', 2);
8
+ return { tag: fieldTag, value };
9
+ });
10
+ if (tag) {
11
+ data.push({ tag: tag.substr(1), data: parsedFields });
12
+ }
13
+ });
14
+ return data;
15
+ }
16
+ //# sourceMappingURL=sam.js.map
package/esm/sam.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sam.js","sourceRoot":"","sources":["../src/sam.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACjC,MAAM,IAAI,GAA8D,EAAE,CAAA;IAC1E,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnB,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAClC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YACzC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;QACjC,CAAC,CAAC,CAAA;QACF,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;SACtD;IACH,CAAC,CAAC,CAAA;IACF,OAAO,IAAI,CAAA;AACb,CAAC"}
package/esm/util.d.ts ADDED
@@ -0,0 +1,35 @@
1
+ import Chunk from './chunk';
2
+ import VirtualOffset from './virtualOffset';
3
+ export declare function timeout(ms: number): Promise<unknown>;
4
+ export declare function longToNumber(long: Long): number;
5
+ /**
6
+ * Properly check if the given AbortSignal is aborted.
7
+ * Per the standard, if the signal reads as aborted,
8
+ * this function throws either a DOMException AbortError, or a regular error
9
+ * with a `code` attribute set to `ERR_ABORTED`.
10
+ *
11
+ * For convenience, passing `undefined` is a no-op
12
+ *
13
+ * @param {AbortSignal} [signal] an AbortSignal, or anything with an `aborted` attribute
14
+ * @returns nothing
15
+ */
16
+ export declare function checkAbortSignal(signal?: AbortSignal): void;
17
+ /**
18
+ * Skips to the next tick, then runs `checkAbortSignal`.
19
+ * Await this to inside an otherwise synchronous loop to
20
+ * provide a place to break when an abort signal is received.
21
+ * @param {AbortSignal} signal
22
+ */
23
+ export declare function abortBreakPoint(signal?: AbortSignal): Promise<void>;
24
+ export declare function canMergeBlocks(chunk1: Chunk, chunk2: Chunk): boolean;
25
+ export interface BamOpts {
26
+ viewAsPairs?: boolean;
27
+ pairAcrossChr?: boolean;
28
+ maxInsertSize?: number;
29
+ signal?: AbortSignal;
30
+ }
31
+ export interface BaseOpts {
32
+ signal?: AbortSignal;
33
+ }
34
+ export declare function makeOpts(obj?: AbortSignal | BaseOpts): BaseOpts;
35
+ export declare function optimizeChunks(chunks: Chunk[], lowest: VirtualOffset): Chunk[];
package/esm/util.js ADDED
@@ -0,0 +1,92 @@
1
+ export function timeout(ms) {
2
+ return new Promise(resolve => setTimeout(resolve, ms));
3
+ }
4
+ export function longToNumber(long) {
5
+ if (long.greaterThan(Number.MAX_SAFE_INTEGER) ||
6
+ long.lessThan(Number.MIN_SAFE_INTEGER)) {
7
+ throw new Error('integer overflow');
8
+ }
9
+ return long.toNumber();
10
+ }
11
+ /**
12
+ * Properly check if the given AbortSignal is aborted.
13
+ * Per the standard, if the signal reads as aborted,
14
+ * this function throws either a DOMException AbortError, or a regular error
15
+ * with a `code` attribute set to `ERR_ABORTED`.
16
+ *
17
+ * For convenience, passing `undefined` is a no-op
18
+ *
19
+ * @param {AbortSignal} [signal] an AbortSignal, or anything with an `aborted` attribute
20
+ * @returns nothing
21
+ */
22
+ export function checkAbortSignal(signal) {
23
+ if (!signal) {
24
+ return;
25
+ }
26
+ if (signal.aborted) {
27
+ // console.log('bam aborted!')
28
+ if (typeof DOMException !== 'undefined') {
29
+ throw new DOMException('aborted', 'AbortError');
30
+ }
31
+ else {
32
+ const e = new Error('aborted');
33
+ //@ts-ignore
34
+ e.code = 'ERR_ABORTED';
35
+ throw e;
36
+ }
37
+ }
38
+ }
39
+ /**
40
+ * Skips to the next tick, then runs `checkAbortSignal`.
41
+ * Await this to inside an otherwise synchronous loop to
42
+ * provide a place to break when an abort signal is received.
43
+ * @param {AbortSignal} signal
44
+ */
45
+ export async function abortBreakPoint(signal) {
46
+ await Promise.resolve();
47
+ checkAbortSignal(signal);
48
+ }
49
+ export function canMergeBlocks(chunk1, chunk2) {
50
+ return (chunk2.minv.blockPosition - chunk1.maxv.blockPosition < 65000 &&
51
+ chunk2.maxv.blockPosition - chunk1.minv.blockPosition < 5000000);
52
+ }
53
+ export function makeOpts(obj = {}) {
54
+ return 'aborted' in obj ? { signal: obj } : obj;
55
+ }
56
+ export function optimizeChunks(chunks, lowest) {
57
+ const mergedChunks = [];
58
+ let lastChunk = null;
59
+ if (chunks.length === 0) {
60
+ return chunks;
61
+ }
62
+ chunks.sort((c0, c1) => {
63
+ const dif = c0.minv.blockPosition - c1.minv.blockPosition;
64
+ if (dif !== 0) {
65
+ return dif;
66
+ }
67
+ else {
68
+ return c0.minv.dataPosition - c1.minv.dataPosition;
69
+ }
70
+ });
71
+ chunks.forEach(chunk => {
72
+ if (!lowest || chunk.maxv.compareTo(lowest) > 0) {
73
+ if (lastChunk === null) {
74
+ mergedChunks.push(chunk);
75
+ lastChunk = chunk;
76
+ }
77
+ else {
78
+ if (canMergeBlocks(lastChunk, chunk)) {
79
+ if (chunk.maxv.compareTo(lastChunk.maxv) > 0) {
80
+ lastChunk.maxv = chunk.maxv;
81
+ }
82
+ }
83
+ else {
84
+ mergedChunks.push(chunk);
85
+ lastChunk = chunk;
86
+ }
87
+ }
88
+ }
89
+ });
90
+ return mergedChunks;
91
+ }
92
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ export default class VirtualOffset {
3
+ blockPosition: number;
4
+ dataPosition: number;
5
+ constructor(blockPosition: number, dataPosition: number);
6
+ toString(): string;
7
+ compareTo(b: VirtualOffset): number;
8
+ static min(...args: VirtualOffset[]): VirtualOffset;
9
+ }
10
+ export declare function fromBytes(bytes: Buffer, offset?: number, bigendian?: boolean): VirtualOffset;
@@ -0,0 +1,37 @@
1
+ export default class VirtualOffset {
2
+ constructor(blockPosition, dataPosition) {
3
+ this.blockPosition = blockPosition; // < offset of the compressed data block
4
+ this.dataPosition = dataPosition; // < offset into the uncompressed data
5
+ }
6
+ toString() {
7
+ return `${this.blockPosition}:${this.dataPosition}`;
8
+ }
9
+ compareTo(b) {
10
+ return (this.blockPosition - b.blockPosition || this.dataPosition - b.dataPosition);
11
+ }
12
+ static min(...args) {
13
+ let min;
14
+ let i = 0;
15
+ for (; !min; i += 1) {
16
+ min = args[i];
17
+ }
18
+ for (; i < args.length; i += 1) {
19
+ if (min.compareTo(args[i]) > 0) {
20
+ min = args[i];
21
+ }
22
+ }
23
+ return min;
24
+ }
25
+ }
26
+ export function fromBytes(bytes, offset = 0, bigendian = false) {
27
+ if (bigendian) {
28
+ throw new Error('big-endian virtual file offsets not implemented');
29
+ }
30
+ return new VirtualOffset(bytes[offset + 7] * 0x10000000000 +
31
+ bytes[offset + 6] * 0x100000000 +
32
+ bytes[offset + 5] * 0x1000000 +
33
+ bytes[offset + 4] * 0x10000 +
34
+ bytes[offset + 3] * 0x100 +
35
+ bytes[offset + 2], (bytes[offset + 1] << 8) | bytes[offset]);
36
+ }
37
+ //# sourceMappingURL=virtualOffset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtualOffset.js","sourceRoot":"","sources":["../src/virtualOffset.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,aAAa;IAGhC,YAAY,aAAqB,EAAE,YAAoB;QACrD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA,CAAC,wCAAwC;QAC3E,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA,CAAC,sCAAsC;IACzE,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,EAAE,CAAA;IACrD,CAAC;IAED,SAAS,CAAC,CAAgB;QACxB,OAAO,CACL,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAC3E,CAAA;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,GAAG,IAAqB;QACjC,IAAI,GAAG,CAAA;QACP,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE;YACnB,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;SACd;QACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC9B,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBAC9B,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;aACd;SACF;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AACD,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,MAAM,GAAG,CAAC,EAAE,SAAS,GAAG,KAAK;IACpE,IAAI,SAAS,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;KACnE;IAED,OAAO,IAAI,aAAa,CACtB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,aAAa;QAC/B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,WAAW;QAC/B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS;QAC7B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,OAAO;QAC3B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK;QACzB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EACnB,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CACzC,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "@gmod/bam",
3
- "version": "1.1.7",
3
+ "version": "1.1.11",
4
4
  "description": "Parser for BAM and BAM index (bai) files",
5
5
  "license": "MIT",
6
6
  "repository": "GMOD/bam-js",
7
7
  "main": "dist/index.js",
8
+ "module": "esm/index.js",
8
9
  "author": {
9
10
  "name": "Colin Diesh",
10
11
  "email": "colin.diesh@gmail.com",
@@ -14,24 +15,22 @@
14
15
  "node": ">=6"
15
16
  },
16
17
  "files": [
17
- "dist"
18
+ "dist",
19
+ "esm"
18
20
  ],
19
21
  "scripts": {
20
22
  "test": "jest",
21
23
  "coverage": "npm test -- --coverage",
22
24
  "lint": "eslint --report-unused-disable-directives --max-warnings 0 --ext .js,.ts src test",
23
- "clean": "rimraf dist",
25
+ "clean": "rimraf dist esm",
26
+ "build:esm": "tsc --target es2018 --outDir esm",
27
+ "build:es5": "tsc --target es5 --outDir dist",
28
+ "build": "npm run build:esm && npm run build:es5",
24
29
  "prebuild": "npm run clean && npm run lint",
25
- "build:types": "tsc --emitDeclarationOnly",
26
- "build:js": "babel src --out-dir dist --extensions \".ts,.tsx\" --source-maps inline",
27
- "build": "npm run build:types && npm run build:js",
28
30
  "preversion": "npm run lint && npm test && npm run build",
29
31
  "version": "standard-changelog && git add CHANGELOG.md",
30
32
  "postversion": "git push --follow-tags"
31
33
  },
32
- "jest": {
33
- "testEnvironment": "node"
34
- },
35
34
  "keywords": [
36
35
  "bionode",
37
36
  "biojs",
@@ -39,7 +38,6 @@
39
38
  "genomics"
40
39
  ],
41
40
  "dependencies": {
42
- "@babel/runtime-corejs3": "^7.5.5",
43
41
  "@gmod/bgzf-filehandle": "^1.3.3",
44
42
  "abortable-promise-cache": "^1.4.0",
45
43
  "buffer-crc32": "^0.2.13",
@@ -52,30 +50,23 @@
52
50
  "range-parser": "^1.2.1"
53
51
  },
54
52
  "devDependencies": {
55
- "@babel/cli": "^7.2.3",
56
- "@babel/core": "^7.3.3",
57
- "@babel/plugin-proposal-class-properties": "^7.5.5",
58
- "@babel/plugin-transform-runtime": "^7.2.0",
59
- "@babel/preset-env": "^7.3.1",
60
- "@babel/preset-typescript": "^7.6.0",
61
53
  "@types/buffer-crc32": "^0.2.0",
54
+ "@types/jest": "^27.0.2",
62
55
  "@types/long": "^4.0.0",
63
56
  "@types/node": "^12.7.8",
64
57
  "@types/range-parser": "^1.2.3",
65
- "@typescript-eslint/eslint-plugin": "^2.3.1",
66
- "@typescript-eslint/parser": "^2.3.1",
67
- "babel-jest": "^24.1.0",
68
- "eslint": "^5.12.0",
69
- "eslint-config-airbnb-base": "^13.1.0",
70
- "eslint-config-prettier": "^4.1.0",
71
- "eslint-plugin-import": "^2.10.0",
72
- "eslint-plugin-jest": "^22.17.0",
73
- "eslint-plugin-prettier": "^3.0.1",
74
- "jest": "^24.3.1",
75
- "prettier": "^1.11.1",
76
- "rimraf": "^2.6.2",
58
+ "@typescript-eslint/eslint-plugin": "^5.7.0",
59
+ "@typescript-eslint/parser": "^5.7.0",
60
+ "eslint": "^7.0.0",
61
+ "eslint-config-prettier": "^8.3.0",
62
+ "eslint-plugin-import": "^2.25.3",
63
+ "eslint-plugin-prettier": "^4.0.0",
64
+ "jest": "^27.3.1",
65
+ "prettier": "^2.4.1",
66
+ "rimraf": "^3.0.2",
77
67
  "standard-changelog": "^1.0.0",
78
- "typescript": "^3.6.3"
68
+ "ts-jest": "^27.0.7",
69
+ "typescript": "^4.4.4"
79
70
  },
80
71
  "publishConfig": {
81
72
  "access": "public"
package/dist/declare.d.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbXX0=