@gmod/bbi 4.0.5 → 5.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.
Files changed (58) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/bbi.d.ts +20 -4
  3. package/dist/bbi.js +124 -104
  4. package/dist/bbi.js.map +1 -1
  5. package/dist/bigbed.d.ts +1 -1
  6. package/dist/bigbed.js +91 -72
  7. package/dist/bigbed.js.map +1 -1
  8. package/dist/bigint-polyfill/polyfill.js +0 -10
  9. package/dist/bigint-polyfill/polyfill.js.map +1 -1
  10. package/dist/bigint-polyfill/pure.d.ts +0 -2
  11. package/dist/bigint-polyfill/pure.js +2 -29
  12. package/dist/bigint-polyfill/pure.js.map +1 -1
  13. package/dist/bigwig.js +3 -8
  14. package/dist/bigwig.js.map +1 -1
  15. package/dist/block-view.d.ts +4 -6
  16. package/dist/block-view.js +123 -132
  17. package/dist/block-view.js.map +1 -1
  18. package/dist/range.js +1 -1
  19. package/dist/range.js.map +1 -1
  20. package/dist/unzip-pako.d.ts +0 -1
  21. package/dist/unzip-pako.js +1 -2
  22. package/dist/unzip-pako.js.map +1 -1
  23. package/dist/unzip.d.ts +0 -1
  24. package/dist/util.d.ts +12 -14
  25. package/dist/util.js +12 -18
  26. package/dist/util.js.map +1 -1
  27. package/esm/bbi.d.ts +20 -4
  28. package/esm/bbi.js +124 -104
  29. package/esm/bbi.js.map +1 -1
  30. package/esm/bigbed.d.ts +1 -1
  31. package/esm/bigbed.js +89 -70
  32. package/esm/bigbed.js.map +1 -1
  33. package/esm/bigint-polyfill/polyfill.js +1 -11
  34. package/esm/bigint-polyfill/polyfill.js.map +1 -1
  35. package/esm/bigint-polyfill/pure.d.ts +0 -2
  36. package/esm/bigint-polyfill/pure.js +0 -24
  37. package/esm/bigint-polyfill/pure.js.map +1 -1
  38. package/esm/bigwig.js +3 -8
  39. package/esm/bigwig.js.map +1 -1
  40. package/esm/block-view.d.ts +4 -6
  41. package/esm/block-view.js +123 -132
  42. package/esm/block-view.js.map +1 -1
  43. package/esm/range.js +1 -1
  44. package/esm/range.js.map +1 -1
  45. package/esm/unzip-pako.d.ts +0 -1
  46. package/esm/unzip.d.ts +0 -1
  47. package/esm/util.d.ts +12 -14
  48. package/esm/util.js +8 -14
  49. package/esm/util.js.map +1 -1
  50. package/package.json +6 -7
  51. package/src/bbi.ts +151 -115
  52. package/src/bigbed.ts +100 -81
  53. package/src/bigint-polyfill/polyfill.ts +1 -13
  54. package/src/bigint-polyfill/pure.ts +0 -36
  55. package/src/bigwig.ts +3 -9
  56. package/src/block-view.ts +134 -169
  57. package/src/range.ts +1 -1
  58. package/src/util.ts +16 -21
package/dist/bigbed.js CHANGED
@@ -23,18 +23,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
23
23
  return (mod && mod.__esModule) ? mod : { "default": mod };
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.BigBed = exports.filterUndef = void 0;
26
+ exports.BigBed = void 0;
27
+ exports.filterUndef = filterUndef;
27
28
  const buffer_1 = require("buffer");
28
- const binary_parser_1 = require("binary-parser");
29
29
  const rxjs_1 = require("rxjs");
30
30
  const operators_1 = require("rxjs/operators");
31
- const abortable_promise_cache_1 = __importDefault(require("abortable-promise-cache"));
31
+ const abortable_promise_cache_1 = __importDefault(require("@gmod/abortable-promise-cache"));
32
32
  const quick_lru_1 = __importDefault(require("quick-lru"));
33
+ // locals
33
34
  const bbi_1 = require("./bbi");
34
35
  function filterUndef(ts) {
35
36
  return ts.filter((t) => !!t);
36
37
  }
37
- exports.filterUndef = filterUndef;
38
38
  class BigBed extends bbi_1.BBI {
39
39
  constructor() {
40
40
  super(...arguments);
@@ -57,45 +57,52 @@ class BigBed extends bbi_1.BBI {
57
57
  }
58
58
  /*
59
59
  * parse the bigbed extraIndex fields
60
- * @param abortSignal to abort operation
61
- * @return a Promise for an array of Index data structure since there can be multiple extraIndexes in a bigbed, see bedToBigBed documentation
60
+ *
61
+ *
62
+ * @return a Promise for an array of Index data structure since there can be
63
+ * multiple extraIndexes in a bigbed, see bedToBigBed documentation
62
64
  */
63
65
  _readIndices(opts) {
64
66
  return __awaiter(this, void 0, void 0, function* () {
65
67
  const { extHeaderOffset, isBigEndian } = yield this.getHeader(opts);
66
68
  const { buffer: data } = yield this.bbi.read(buffer_1.Buffer.alloc(64), 0, 64, Number(extHeaderOffset));
67
- const le = isBigEndian ? 'big' : 'little';
68
- const ret = new binary_parser_1.Parser()
69
- .endianess(le)
70
- .uint16('size')
71
- .uint16('count')
72
- .uint64('offset')
73
- .parse(data);
74
- const { count, offset } = ret;
69
+ const le = !isBigEndian;
70
+ const b = data;
71
+ const dataView = new DataView(b.buffer, b.byteOffset, b.length);
72
+ let offset = 0;
73
+ // const _size = dataView.getUint16(offset, le)
74
+ offset += 2;
75
+ const count = dataView.getUint16(offset, le);
76
+ offset += 2;
77
+ const dataOffset = Number(dataView.getBigUint64(offset, le));
78
+ offset += 8;
75
79
  // no extra index is defined if count==0
76
80
  if (count === 0) {
77
81
  return [];
78
82
  }
79
83
  const blocklen = 20;
80
84
  const len = blocklen * count;
81
- const { buffer } = yield this.bbi.read(buffer_1.Buffer.alloc(len), 0, len, Number(offset));
82
- const extParser = new binary_parser_1.Parser()
83
- .endianess(le)
84
- .int16('type')
85
- .int16('fieldcount')
86
- .uint64('offset')
87
- .skip(4)
88
- .int16('field');
85
+ const { buffer } = yield this.bbi.read(buffer_1.Buffer.alloc(len), 0, len, Number(dataOffset));
89
86
  const indices = [];
90
87
  for (let i = 0; i < count; i += 1) {
91
- indices.push(extParser.parse(buffer.subarray(i * blocklen)));
88
+ const b = buffer.subarray(i * blocklen);
89
+ const dataView = new DataView(b.buffer, b.byteOffset, b.length);
90
+ let offset = 0;
91
+ const type = dataView.getInt16(offset, le);
92
+ offset += 2;
93
+ const fieldcount = dataView.getInt16(offset, le);
94
+ offset += 2;
95
+ const dataOffset = Number(dataView.getBigUint64(offset, le));
96
+ offset += 8 + 4; //4 skip
97
+ const field = dataView.getInt16(offset, le);
98
+ indices.push({ type, fieldcount, offset: Number(dataOffset), field });
92
99
  }
93
100
  return indices;
94
101
  });
95
102
  }
96
103
  /*
97
- * perform a search in the bigbed extraIndex to find which blocks in the bigbed data to look for the
98
- * actual feature data
104
+ * perform a search in the bigbed extraIndex to find which blocks in the
105
+ * bigbed data to look for the actual feature data
99
106
  *
100
107
  * @param name - the name to search for
101
108
  * @param opts - a SearchOptions argument with optional signal
@@ -109,52 +116,48 @@ class BigBed extends bbi_1.BBI {
109
116
  return [];
110
117
  }
111
118
  const locs = indices.map((index) => __awaiter(this, void 0, void 0, function* () {
112
- const { offset, field } = index;
113
- const { buffer: data } = yield this.bbi.read(buffer_1.Buffer.alloc(32), 0, 32, Number(offset), opts);
114
- const le = isBigEndian ? 'big' : 'little';
115
- const p = new binary_parser_1.Parser()
116
- .endianess(le)
117
- .int32('magic')
118
- .int32('blockSize')
119
- .int32('keySize')
120
- .int32('valSize')
121
- .uint64('itemCount');
122
- const { blockSize, keySize, valSize } = p.parse(data);
123
- // console.log({blockSize,keySize,valSize})
124
- const bpt = new binary_parser_1.Parser()
125
- .endianess(le)
126
- .int8('nodeType')
127
- .skip(1)
128
- .int16('cnt')
129
- .choice({
130
- tag: 'nodeType',
131
- choices: {
132
- 0: new binary_parser_1.Parser().array('leafkeys', {
133
- length: 'cnt',
134
- type: new binary_parser_1.Parser()
135
- .endianess(le)
136
- .string('key', { length: keySize, stripNull: true })
137
- .uint64('offset'),
138
- }),
139
- 1: new binary_parser_1.Parser().array('keys', {
140
- length: 'cnt',
141
- type: new binary_parser_1.Parser()
142
- .endianess(le)
143
- .string('key', { length: keySize, stripNull: true })
144
- .uint64('offset')
145
- .uint32('length')
146
- .uint32('reserved'),
147
- }),
148
- },
149
- });
119
+ const { offset: offset2, field } = index;
120
+ const { buffer: data } = yield this.bbi.read(buffer_1.Buffer.alloc(32), 0, 32, offset2, opts);
121
+ const le = !isBigEndian;
122
+ const b = data;
123
+ const dataView = new DataView(b.buffer, b.byteOffset, b.length);
124
+ let offset = 0;
125
+ // const _magic = dataView.getInt32(offset, le)
126
+ offset += 4;
127
+ const blockSize = dataView.getInt32(offset, le);
128
+ offset += 4;
129
+ const keySize = dataView.getInt32(offset, le);
130
+ offset += 4;
131
+ const valSize = dataView.getInt32(offset, le);
132
+ offset += 4;
133
+ // const _itemCount = Number(dataView.getBigUint64(offset, le))
134
+ offset += 8;
150
135
  const bptReadNode = (nodeOffset) => __awaiter(this, void 0, void 0, function* () {
151
136
  const val = Number(nodeOffset);
152
137
  const len = 4 + blockSize * (keySize + valSize);
153
138
  const { buffer } = yield this.bbi.read(buffer_1.Buffer.alloc(len), 0, len, val, opts);
154
- const node = bpt.parse(buffer);
155
- if (node.leafkeys) {
156
- let lastOffset;
157
- for (const { key, offset } of node.leafkeys) {
139
+ const b = buffer;
140
+ const dataView = new DataView(b.buffer, b.byteOffset, b.length);
141
+ let offset = 0;
142
+ const nodeType = dataView.getInt8(offset);
143
+ offset += 2; //skip 1
144
+ const cnt = dataView.getInt16(offset, le);
145
+ offset += 2;
146
+ const keys = [];
147
+ if (nodeType === 0) {
148
+ const leafkeys = [];
149
+ for (let i = 0; i < cnt; i++) {
150
+ const key = b
151
+ .subarray(offset, offset + keySize)
152
+ .toString()
153
+ .replaceAll('\0', '');
154
+ offset += keySize;
155
+ const dataOffset = Number(dataView.getBigUint64(offset, le));
156
+ offset += 8;
157
+ leafkeys.push({ key, offset: dataOffset });
158
+ }
159
+ let lastOffset = 0;
160
+ for (const { key, offset } of leafkeys) {
158
161
  if (name.localeCompare(key) < 0 && lastOffset) {
159
162
  return bptReadNode(lastOffset);
160
163
  }
@@ -162,15 +165,31 @@ class BigBed extends bbi_1.BBI {
162
165
  }
163
166
  return bptReadNode(lastOffset);
164
167
  }
165
- for (const n of node.keys) {
166
- if (n.key === name) {
167
- return Object.assign(Object.assign({}, n), { field });
168
+ else if (nodeType === 1) {
169
+ for (let i = 0; i < cnt; i++) {
170
+ const key = b
171
+ .subarray(offset, offset + keySize)
172
+ .toString()
173
+ .replaceAll('\0', '');
174
+ offset += keySize;
175
+ const dataOffset = Number(dataView.getBigUint64(offset, le));
176
+ offset += 8;
177
+ const length = dataView.getUint32(offset, le);
178
+ offset += 4;
179
+ const reserved = dataView.getUint32(offset, le);
180
+ offset += 4;
181
+ keys.push({ key, offset: dataOffset, length, reserved });
182
+ }
183
+ for (const n of keys) {
184
+ if (n.key === name) {
185
+ return Object.assign(Object.assign({}, n), { field });
186
+ }
168
187
  }
188
+ return undefined;
169
189
  }
170
- return undefined;
171
190
  });
172
191
  const rootNodeOffset = 32;
173
- return bptReadNode(Number(offset) + rootNodeOffset);
192
+ return bptReadNode(offset2 + rootNodeOffset);
174
193
  }));
175
194
  return filterUndef(yield Promise.all(locs));
176
195
  });
@@ -1 +1 @@
1
- {"version":3,"file":"bigbed.js","sourceRoot":"","sources":["../src/bigbed.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAA+B;AAC/B,iDAAsC;AACtC,+BAAwD;AACxD,8CAA4C;AAC5C,sFAA2D;AAC3D,0DAAgC;AAEhC,+BAAoD;AAgBpD,SAAgB,WAAW,CAAI,EAAqB;IAClD,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAgB,EAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACrD,CAAC;AAFD,kCAEC;AAED,MAAa,MAAO,SAAQ,SAAG;IAA/B;;QACS,qBAAgB,GAAG,IAAI,iCAAqB,CAA0B;YAC3E,KAAK,EAAE,IAAI,mBAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YACnC,IAAI,EAAE,CAAC,IAAoB,EAAE,MAAoB,EAAE,EAAE,CACnD,IAAI,CAAC,YAAY,iCAAM,IAAI,KAAE,MAAM,IAAG;SACzC,CAAC,CAAA;IAqMJ,CAAC;IAnMQ,WAAW,CAAC,OAAuB,EAAE;QAC1C,MAAM,EAAE,MAAM,KAAc,IAAI,EAAb,IAAI,UAAK,IAAI,EAA1B,UAAmB,CAAO,CAAA;QAChC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IACtE,CAAC;IAED;;OAEG;IACa,OAAO,CAAC,MAAc,EAAE,IAAqB;;YAC3D,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC;KAAA;IAED;;;;OAIG;IACW,YAAY,CAAC,IAAoB;;YAC7C,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YACnE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAC1C,eAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAChB,CAAC,EACD,EAAE,EACF,MAAM,CAAC,eAAe,CAAC,CACxB,CAAA;YACD,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;YACzC,MAAM,GAAG,GAAG,IAAI,sBAAM,EAAE;iBACrB,SAAS,CAAC,EAAE,CAAC;iBACb,MAAM,CAAC,MAAM,CAAC;iBACd,MAAM,CAAC,OAAO,CAAC;iBACf,MAAM,CAAC,QAAQ,CAAC;iBAChB,KAAK,CAAC,IAAI,CAAC,CAAA;YAEd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;YAE7B,wCAAwC;YACxC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,OAAO,EAAE,CAAA;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,EAAE,CAAA;YACnB,MAAM,GAAG,GAAG,QAAQ,GAAG,KAAK,CAAA;YAC5B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CACpC,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EACjB,CAAC,EACD,GAAG,EACH,MAAM,CAAC,MAAM,CAAC,CACf,CAAA;YACD,MAAM,SAAS,GAAG,IAAI,sBAAM,EAAE;iBAC3B,SAAS,CAAC,EAAE,CAAC;iBACb,KAAK,CAAC,MAAM,CAAC;iBACb,KAAK,CAAC,YAAY,CAAC;iBACnB,MAAM,CAAC,QAAQ,CAAC;iBAChB,IAAI,CAAC,CAAC,CAAC;iBACP,KAAK,CAAC,OAAO,CAAC,CAAA;YACjB,MAAM,OAAO,GAAG,EAAa,CAAA;YAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC9D,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;KAAA;IAED;;;;;;;OAOG;IACW,sBAAsB;6DAClC,IAAY,EACZ,OAAuB,EAAE;YAEzB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,EAAE,CAAA;YACX,CAAC;YACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAO,KAAU,EAA4B,EAAE;gBACtE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;gBAC/B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAC1C,eAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAChB,CAAC,EACD,EAAE,EACF,MAAM,CAAC,MAAM,CAAC,EACd,IAAI,CACL,CAAA;gBACD,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;gBACzC,MAAM,CAAC,GAAG,IAAI,sBAAM,EAAE;qBACnB,SAAS,CAAC,EAAE,CAAC;qBACb,KAAK,CAAC,OAAO,CAAC;qBACd,KAAK,CAAC,WAAW,CAAC;qBAClB,KAAK,CAAC,SAAS,CAAC;qBAChB,KAAK,CAAC,SAAS,CAAC;qBAChB,MAAM,CAAC,WAAW,CAAC,CAAA;gBAEtB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACrD,2CAA2C;gBAC3C,MAAM,GAAG,GAAG,IAAI,sBAAM,EAAE;qBACrB,SAAS,CAAC,EAAE,CAAC;qBACb,IAAI,CAAC,UAAU,CAAC;qBAChB,IAAI,CAAC,CAAC,CAAC;qBACP,KAAK,CAAC,KAAK,CAAC;qBACZ,MAAM,CAAC;oBACN,GAAG,EAAE,UAAU;oBACf,OAAO,EAAE;wBACP,CAAC,EAAE,IAAI,sBAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE;4BAChC,MAAM,EAAE,KAAK;4BACb,IAAI,EAAE,IAAI,sBAAM,EAAE;iCACf,SAAS,CAAC,EAAE,CAAC;iCACb,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;iCACnD,MAAM,CAAC,QAAQ,CAAC;yBACpB,CAAC;wBACF,CAAC,EAAE,IAAI,sBAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE;4BAC5B,MAAM,EAAE,KAAK;4BACb,IAAI,EAAE,IAAI,sBAAM,EAAE;iCACf,SAAS,CAAC,EAAE,CAAC;iCACb,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;iCACnD,MAAM,CAAC,QAAQ,CAAC;iCAChB,MAAM,CAAC,QAAQ,CAAC;iCAChB,MAAM,CAAC,UAAU,CAAC;yBACtB,CAAC;qBACH;iBACF,CAAC,CAAA;gBAEJ,MAAM,WAAW,GAAG,CAClB,UAAkB,EACQ,EAAE;oBAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;oBAC9B,MAAM,GAAG,GAAG,CAAC,GAAG,SAAS,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,CAAA;oBAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CACpC,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EACjB,CAAC,EACD,GAAG,EACH,GAAG,EACH,IAAI,CACL,CAAA;oBACD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;oBAC9B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAClB,IAAI,UAAU,CAAA;wBACd,KAAK,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;4BAC5C,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;gCAC9C,OAAO,WAAW,CAAC,UAAU,CAAC,CAAA;4BAChC,CAAC;4BACD,UAAU,GAAG,MAAM,CAAA;wBACrB,CAAC;wBACD,OAAO,WAAW,CAAC,UAAU,CAAC,CAAA;oBAChC,CAAC;oBACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBAC1B,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;4BACnB,uCAAY,CAAC,KAAE,KAAK,IAAE;wBACxB,CAAC;oBACH,CAAC;oBAED,OAAO,SAAS,CAAA;gBAClB,CAAC,CAAA,CAAA;gBACD,MAAM,cAAc,GAAG,EAAE,CAAA;gBACzB,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,CAAA;YACrD,CAAC,CAAA,CAAC,CAAA;YACF,OAAO,WAAW,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7C,CAAC;KAAA;IAED;;;;;;;;OAQG;IACU,gBAAgB;6DAAC,IAAY,EAAE,OAAuB,EAAE;YACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC5D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAA;YACX,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;YAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC7B,OAAO,IAAI,iBAAU,CAAY,QAAQ,CAAC,EAAE;oBAC1C,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1E,CAAC,CAAC,CAAC,IAAI,CACL,IAAA,kBAAM,EAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EACvC,IAAA,eAAG,EAAC,CAAC,CAAC,EAAE;oBACN,KAAK,MAAM,OAAO,IAAI,CAAC,EAAE,CAAC;wBACxB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;oBAC7B,CAAC;oBACD,OAAO,CAAC,CAAA;gBACV,CAAC,CAAC,CACH,CAAA;YACH,CAAC,CAAC,CAAA;YACF,MAAM,GAAG,GAAG,MAAM,IAAA,qBAAc,EAAC,IAAA,YAAK,EAAC,GAAG,GAAG,CAAC,CAAC,CAAA;YAC/C,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAK,IAAI,CAAA,EAAA,CAAC,CAAA;QAC1E,CAAC;KAAA;CACF;AA1MD,wBA0MC"}
1
+ {"version":3,"file":"bigbed.js","sourceRoot":"","sources":["../src/bigbed.ts"],"names":[],"mappings":"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"}
@@ -11,14 +11,4 @@ if (!('getBigUint64' in DataView)) {
11
11
  return (0, pure_1.getBigUint64)(this, byteOffset, littleEndian);
12
12
  };
13
13
  }
14
- if (!('setBigInt64' in DataView)) {
15
- DataView.prototype.setBigInt64 = function (byteOffset, value, littleEndian) {
16
- (0, pure_1.setBigInt64)(this, byteOffset, value, littleEndian);
17
- };
18
- }
19
- if (!('setBigUint64' in DataView)) {
20
- DataView.prototype.setBigUint64 = function (byteOffset, value, littleEndian) {
21
- (0, pure_1.setBigUint64)(this, byteOffset, value, littleEndian);
22
- };
23
- }
24
14
  //# sourceMappingURL=polyfill.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polyfill.js","sourceRoot":"","sources":["../../src/bigint-polyfill/polyfill.ts"],"names":[],"mappings":";;AAAA,iCAA6E;AAE7E,IAAI,CAAC,CAAC,aAAa,IAAI,QAAQ,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,WAAW,GAAG,UAAU,UAAU,EAAE,YAAY;QACjE,OAAO,IAAA,kBAAW,EAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;IACpD,CAAC,CAAA;AACH,CAAC;AAED,IAAI,CAAC,CAAC,cAAc,IAAI,QAAQ,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,UAAU,UAAU,EAAE,YAAY;QAClE,OAAO,IAAA,mBAAY,EAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;IACrD,CAAC,CAAA;AACH,CAAC;AAED,IAAI,CAAC,CAAC,aAAa,IAAI,QAAQ,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,WAAW,GAAG,UAAU,UAAU,EAAE,KAAK,EAAE,YAAY;QACxE,IAAA,kBAAW,EAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;IACpD,CAAC,CAAA;AACH,CAAC;AAED,IAAI,CAAC,CAAC,cAAc,IAAI,QAAQ,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,UAAU,UAAU,EAAE,KAAK,EAAE,YAAY;QACzE,IAAA,mBAAY,EAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;IACrD,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"polyfill.js","sourceRoot":"","sources":["../../src/bigint-polyfill/polyfill.ts"],"names":[],"mappings":";;AAAA,iCAAkD;AAElD,IAAI,CAAC,CAAC,aAAa,IAAI,QAAQ,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,WAAW,GAAG,UAAU,UAAU,EAAE,YAAY;QACjE,OAAO,IAAA,kBAAW,EAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;IACpD,CAAC,CAAA;AACH,CAAC;AAED,IAAI,CAAC,CAAC,cAAc,IAAI,QAAQ,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,UAAU,UAAU,EAAE,YAAY;QAClE,OAAO,IAAA,mBAAY,EAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;IACrD,CAAC,CAAA;AACH,CAAC"}
@@ -1,4 +1,2 @@
1
1
  export declare function getBigInt64(dataView: DataView, byteOffset: number, littleEndian: boolean | undefined): bigint;
2
2
  export declare function getBigUint64(dataView: DataView, byteOffset: number, littleEndian: boolean | undefined): bigint;
3
- export declare function setBigInt64(dataView: DataView, byteOffset: number, value: bigint, littleEndian: boolean | undefined): void;
4
- export declare function setBigUint64(dataView: DataView, byteOffset: number, value: bigint, littleEndian: boolean | undefined): void;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setBigUint64 = exports.setBigInt64 = exports.getBigUint64 = exports.getBigInt64 = void 0;
3
+ exports.getBigInt64 = getBigInt64;
4
+ exports.getBigUint64 = getBigUint64;
4
5
  const BigInt32 = BigInt(32);
5
6
  function getBigInt64(dataView, byteOffset, littleEndian) {
6
7
  const littleEndianMask = Number(!!littleEndian);
@@ -11,7 +12,6 @@ function getBigInt64(dataView, byteOffset, littleEndian) {
11
12
  BigInt(dataView.getUint32(byteOffset, littleEndian) * littleEndianMask +
12
13
  dataView.getUint32(byteOffset + 4, littleEndian) * bigEndianMask));
13
14
  }
14
- exports.getBigInt64 = getBigInt64;
15
15
  function getBigUint64(dataView, byteOffset, littleEndian) {
16
16
  const a = dataView.getUint32(byteOffset, littleEndian);
17
17
  const b = dataView.getUint32(byteOffset + 4, littleEndian);
@@ -23,31 +23,4 @@ function getBigUint64(dataView, byteOffset, littleEndian) {
23
23
  return ((BigInt(a * bigEndianMask + b * littleEndianMask) << BigInt32) |
24
24
  BigInt(a * littleEndianMask + b * bigEndianMask));
25
25
  }
26
- exports.getBigUint64 = getBigUint64;
27
- function setBigInt64(dataView, byteOffset, value, littleEndian) {
28
- const hi = Number(value >> BigInt32);
29
- const lo = Number(value & BigInt(0xffffffff));
30
- if (littleEndian) {
31
- dataView.setInt32(byteOffset + 4, hi, littleEndian);
32
- dataView.setUint32(byteOffset, lo, littleEndian);
33
- }
34
- else {
35
- dataView.setInt32(byteOffset, hi, littleEndian);
36
- dataView.setUint32(byteOffset + 4, lo, littleEndian);
37
- }
38
- }
39
- exports.setBigInt64 = setBigInt64;
40
- function setBigUint64(dataView, byteOffset, value, littleEndian) {
41
- const hi = Number(value >> BigInt32);
42
- const lo = Number(value & BigInt(0xffffffff));
43
- if (littleEndian) {
44
- dataView.setUint32(byteOffset + 4, hi, littleEndian);
45
- dataView.setUint32(byteOffset, lo, littleEndian);
46
- }
47
- else {
48
- dataView.setUint32(byteOffset, hi, littleEndian);
49
- dataView.setUint32(byteOffset + 4, lo, littleEndian);
50
- }
51
- }
52
- exports.setBigUint64 = setBigUint64;
53
26
  //# sourceMappingURL=pure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pure.js","sourceRoot":"","sources":["../../src/bigint-polyfill/pure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pure.js","sourceRoot":"","sources":["../../src/bigint-polyfill/pure.ts"],"names":[],"mappings":";;AAEA,kCAmBC;AAED,oCAkBC;AAzCD,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,CAAA;AAE3B,SAAgB,WAAW,CACzB,QAAkB,EAClB,UAAkB,EAClB,YAAiC;IAEjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,YAAY,CAAC,CAAA;IAE3C,OAAO,CACL,CAAC,MAAM,CACL,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,aAAa;QACzD,QAAQ,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,EAAE,YAAY,CAAC,GAAG,gBAAgB,CACrE;QACC,QAAQ,CAAC;QACX,MAAM,CACJ,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,gBAAgB;YAC7D,QAAQ,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,EAAE,YAAY,CAAC,GAAG,aAAa,CACnE,CACF,CAAA;AACH,CAAC;AAED,SAAgB,YAAY,CAC1B,QAAkB,EAClB,UAAkB,EAClB,YAAiC;IAEjC,MAAM,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;IACtD,MAAM,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,EAAE,YAAY,CAAC,CAAA;IAE1D,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,YAAY,CAAC,CAAA;IAE3C,4EAA4E;IAC5E,gDAAgD;IAChD,kCAAkC;IAClC,OAAO,CACL,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa,GAAG,CAAC,GAAG,gBAAgB,CAAC,IAAI,QAAQ,CAAC;QAC9D,MAAM,CAAC,CAAC,GAAG,gBAAgB,GAAG,CAAC,GAAG,aAAa,CAAC,CACjD,CAAA;AACH,CAAC"}
package/dist/bigwig.js CHANGED
@@ -23,18 +23,13 @@ class BigWig extends bbi_1.BBI {
23
23
  */
24
24
  getView(scale, opts) {
25
25
  return __awaiter(this, void 0, void 0, function* () {
26
- const { zoomLevels, refsByName, fileSize, isBigEndian, uncompressBufSize } = yield this.getHeader(opts);
26
+ const { zoomLevels, refsByName, isBigEndian, uncompressBufSize } = yield this.getHeader(opts);
27
27
  const basesPerPx = 1 / scale;
28
- let maxLevel = zoomLevels.length;
29
- if (!fileSize) {
30
- // if we don't know the file size, we can't fetch the highest zoom level :-(
31
- maxLevel -= 1;
32
- }
28
+ const maxLevel = zoomLevels.length - 1;
33
29
  for (let i = maxLevel; i >= 0; i -= 1) {
34
30
  const zh = zoomLevels[i];
35
31
  if (zh && zh.reductionLevel <= 2 * basesPerPx) {
36
- const indexOffset = Number(zh.indexOffset);
37
- return new block_view_1.BlockView(this.bbi, refsByName, indexOffset, isBigEndian, uncompressBufSize > 0, 'summary');
32
+ return new block_view_1.BlockView(this.bbi, refsByName, zh.indexOffset, isBigEndian, uncompressBufSize > 0, 'summary');
38
33
  }
39
34
  }
40
35
  return this.getUnzoomedView(opts);
@@ -1 +1 @@
1
- {"version":3,"file":"bigwig.js","sourceRoot":"","sources":["../src/bigwig.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAwC;AACxC,+BAA2C;AAE3C,MAAa,MAAO,SAAQ,SAAG;IAC7B;;;;;;;OAOG;IACa,OAAO,CAAC,KAAa,EAAE,IAAoB;;YACzD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,GACxE,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAC5B,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAA;YAC5B,IAAI,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAA;YAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,4EAA4E;gBAC5E,QAAQ,IAAI,CAAC,CAAA;YACf,CAAC;YAED,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;gBACxB,IAAI,EAAE,IAAI,EAAE,CAAC,cAAc,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC;oBAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;oBAE1C,OAAO,IAAI,sBAAS,CAClB,IAAI,CAAC,GAAG,EACR,UAAU,EACV,WAAW,EACX,WAAW,EACX,iBAAiB,GAAG,CAAC,EACrB,SAAS,CACV,CAAA;gBACH,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC;KAAA;CACF;AApCD,wBAoCC"}
1
+ {"version":3,"file":"bigwig.js","sourceRoot":"","sources":["../src/bigwig.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAwC;AACxC,+BAA2C;AAE3C,MAAa,MAAO,SAAQ,SAAG;IAC7B;;;;;;;OAOG;IACa,OAAO,CAAC,KAAa,EAAE,IAAoB;;YACzD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAC9D,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAC5B,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAA;YAC5B,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAA;YAEtC,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;gBACxB,IAAI,EAAE,IAAI,EAAE,CAAC,cAAc,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC;oBAC9C,OAAO,IAAI,sBAAS,CAClB,IAAI,CAAC,GAAG,EACR,UAAU,EACV,EAAE,CAAC,WAAW,EACd,WAAW,EACX,iBAAiB,GAAG,CAAC,EACrB,SAAS,CACV,CAAA;gBACH,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC;KAAA;CACF;AA9BD,wBA8BC"}
@@ -13,8 +13,8 @@ interface Options {
13
13
  /**
14
14
  * View into a subset of the data in a BigWig file.
15
15
  *
16
- * Adapted by Robert Buels and Colin Diesh from bigwig.js in the Dalliance Genome
17
- * Explorer by Thomas Down.
16
+ * Adapted by Robert Buels and Colin Diesh from bigwig.js in the Dalliance
17
+ * Genome Explorer by Thomas Down.
18
18
  * @constructs
19
19
  */
20
20
  export declare class BlockView {
@@ -26,16 +26,14 @@ export declare class BlockView {
26
26
  private blockType;
27
27
  private cirTreePromise?;
28
28
  private featureCache;
29
- private leafParser;
30
- private bigBedParser;
31
29
  constructor(bbi: GenericFilehandle, refsByName: any, cirTreeOffset: number, isBigEndian: boolean, isCompressed: boolean, blockType: string);
32
30
  readWigData(chrName: string, start: number, end: number, observer: Observer<Feature[]>, opts?: Options): Promise<void>;
33
31
  private parseSummaryBlock;
34
32
  private parseBigBedBlock;
35
33
  private parseBigWigBlock;
36
34
  readFeatures(observer: Observer<Feature[]>, blocks: {
37
- offset: bigint;
38
- length: bigint;
35
+ offset: number;
36
+ length: number;
39
37
  }[], opts?: Options): Promise<void>;
40
38
  }
41
39
  export {};