@gmod/bbi 1.0.35 → 2.0.2

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 CHANGED
@@ -1,6 +1,19 @@
1
- ## [1.0.35](https://github.com/GMOD/bbi-js/compare/v1.0.34...v1.0.35) (2022-04-22)
1
+ ## [2.0.2](https://github.com/GMOD/bbi-js/compare/v2.0.1...v2.0.2) (2022-07-18)
2
+
3
+
4
+
5
+ - Make basesCovered a number instead of BigInt
2
6
 
7
+ ## [2.0.1](https://github.com/GMOD/bbi-js/compare/v2.0.0...v2.0.1) (2022-07-18)
3
8
 
9
+ - Bump generic-filehandle 2->3
10
+
11
+ # [2.0.0](https://github.com/GMOD/bbi-js/compare/v1.0.35...v2.0.0) (2022-07-18)
12
+
13
+ - Use binary-parser instead of @gmod/binary-parser, with some optimizations.
14
+ This uses BigInt and TextDecoder, so requires a major version bump
15
+
16
+ ## [1.0.35](https://github.com/GMOD/bbi-js/compare/v1.0.34...v1.0.35) (2022-04-22)
4
17
 
5
18
  - Produce actual ESM module for the "module" field in package.json, was commonJS
6
19
  - Add sourceMap:true to tsconfig
package/dist/bbi.d.ts CHANGED
@@ -49,9 +49,9 @@ export interface RequestOptions {
49
49
  }
50
50
  export declare abstract class BBI {
51
51
  protected bbi: GenericFilehandle;
52
- protected headerCache: any;
52
+ private headerP?;
53
53
  protected renameRefSeqs: (a: string) => string;
54
- getHeader(opts?: RequestOptions | AbortSignal): any;
54
+ getHeader(opts?: RequestOptions | AbortSignal): Promise<Header>;
55
55
  constructor(options?: {
56
56
  filehandle?: GenericFilehandle;
57
57
  path?: string;
package/dist/bbi.js CHANGED
@@ -46,17 +46,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
46
46
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
47
  }
48
48
  };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
49
  Object.defineProperty(exports, "__esModule", { value: true });
53
50
  exports.BBI = void 0;
54
- var binary_parser_1 = require("@gmod/binary-parser");
51
+ var binary_parser_1 = require("binary-parser");
55
52
  var generic_filehandle_1 = require("generic-filehandle");
56
53
  var rxjs_1 = require("rxjs");
57
54
  var operators_1 = require("rxjs/operators");
58
- var abortable_promise_cache_1 = __importDefault(require("abortable-promise-cache"));
59
- var quick_lru_1 = __importDefault(require("quick-lru"));
60
55
  var blockView_1 = require("./blockView");
61
56
  var BIG_WIG_MAGIC = -2003829722;
62
57
  var BIG_BED_MAGIC = -2021002517;
@@ -84,6 +79,7 @@ function getParsers(isBE) {
84
79
  .array('zoomLevels', {
85
80
  length: 'numZoomLevels',
86
81
  type: new binary_parser_1.Parser()
82
+ .endianess(le)
87
83
  .uint32('reductionLevel')
88
84
  .uint32('reserved')
89
85
  .uint64('dataOffset')
@@ -92,10 +88,10 @@ function getParsers(isBE) {
92
88
  var totalSummaryParser = new binary_parser_1.Parser()
93
89
  .endianess(le)
94
90
  .uint64('basesCovered')
95
- .double('scoreMin')
96
- .double('scoreMax')
97
- .double('scoreSum')
98
- .double('scoreSumSquares');
91
+ .doublele('scoreMin')
92
+ .doublele('scoreMax')
93
+ .doublele('scoreSum')
94
+ .doublele('scoreSumSquares');
99
95
  var chromTreeParser = new binary_parser_1.Parser()
100
96
  .endianess(le)
101
97
  .uint32('magic')
@@ -107,7 +103,8 @@ function getParsers(isBE) {
107
103
  .endianess(le)
108
104
  .uint8('isLeafNode')
109
105
  .skip(1)
110
- .uint16('cnt');
106
+ .uint16('cnt')
107
+ .saveOffset('offset');
111
108
  return {
112
109
  chromTreeParser: chromTreeParser,
113
110
  totalSummaryParser: totalSummaryParser,
@@ -124,17 +121,8 @@ var BBI = /** @class */ (function () {
124
121
  */
125
122
  function BBI(options) {
126
123
  if (options === void 0) { options = {}; }
127
- var _this = this;
128
- this.headerCache = new abortable_promise_cache_1.default({
129
- cache: new quick_lru_1.default({ maxSize: 1 }),
130
- fill: function (params, signal) { return __awaiter(_this, void 0, void 0, function () {
131
- return __generator(this, function (_a) {
132
- return [2 /*return*/, this._getHeader(__assign(__assign({}, params), { signal: signal }))];
133
- });
134
- }); },
135
- });
136
- var filehandle = options.filehandle, renameRefSeqs = options.renameRefSeqs, path = options.path, url = options.url;
137
- this.renameRefSeqs = renameRefSeqs || (function (s) { return s; });
124
+ var filehandle = options.filehandle, _a = options.renameRefSeqs, renameRefSeqs = _a === void 0 ? function (s) { return s; } : _a, path = options.path, url = options.url;
125
+ this.renameRefSeqs = renameRefSeqs;
138
126
  if (filehandle) {
139
127
  this.bbi = filehandle;
140
128
  }
@@ -153,9 +141,16 @@ var BBI = /** @class */ (function () {
153
141
  * @return a Header object
154
142
  */
155
143
  BBI.prototype.getHeader = function (opts) {
144
+ var _this = this;
156
145
  if (opts === void 0) { opts = {}; }
157
146
  var options = 'aborted' in opts ? { signal: opts } : opts;
158
- return this.headerCache.get(JSON.stringify(options), options, options.signal);
147
+ if (!this.headerP) {
148
+ this.headerP = this._getHeader(options).catch(function (e) {
149
+ _this.headerP = undefined;
150
+ throw e;
151
+ });
152
+ }
153
+ return this.headerP;
159
154
  };
160
155
  BBI.prototype._getHeader = function (opts) {
161
156
  return __awaiter(this, void 0, void 0, function () {
@@ -176,7 +171,7 @@ var BBI = /** @class */ (function () {
176
171
  BBI.prototype._getMainHeader = function (opts, requestSize) {
177
172
  if (requestSize === void 0) { requestSize = 2000; }
178
173
  return __awaiter(this, void 0, void 0, function () {
179
- var buffer, isBigEndian, ret, header, tail;
174
+ var buffer, isBigEndian, ret, header, magic, asOffset, totalSummaryOffset, off, tail, sum;
180
175
  return __generator(this, function (_a) {
181
176
  switch (_a.label) {
182
177
  case 0: return [4 /*yield*/, this.bbi.read(Buffer.alloc(requestSize), 0, requestSize, 0, opts)];
@@ -184,23 +179,25 @@ var BBI = /** @class */ (function () {
184
179
  buffer = (_a.sent()).buffer;
185
180
  isBigEndian = this._isBigEndian(buffer);
186
181
  ret = getParsers(isBigEndian);
187
- header = ret.headerParser.parse(buffer).result;
188
- header.fileType = header.magic === BIG_BED_MAGIC ? 'bigbed' : 'bigwig';
189
- if (header.asOffset > requestSize ||
190
- header.totalSummaryOffset > requestSize) {
182
+ header = ret.headerParser.parse(buffer);
183
+ magic = header.magic, asOffset = header.asOffset, totalSummaryOffset = header.totalSummaryOffset;
184
+ header.fileType = magic === BIG_BED_MAGIC ? 'bigbed' : 'bigwig';
185
+ if (asOffset > requestSize || totalSummaryOffset > requestSize) {
191
186
  return [2 /*return*/, this._getMainHeader(opts, requestSize * 2)];
192
187
  }
193
- if (header.asOffset) {
188
+ if (asOffset) {
189
+ off = Number(header.asOffset);
194
190
  header.autoSql = buffer
195
- .slice(header.asOffset, buffer.indexOf(0, header.asOffset))
191
+ .subarray(off, buffer.indexOf(0, off))
196
192
  .toString('utf8');
197
193
  }
198
194
  if (header.totalSummaryOffset > requestSize) {
199
195
  return [2 /*return*/, this._getMainHeader(opts, requestSize * 2)];
200
196
  }
201
197
  if (header.totalSummaryOffset) {
202
- tail = buffer.slice(header.totalSummaryOffset);
203
- header.totalSummary = ret.totalSummaryParser.parse(tail).result;
198
+ tail = buffer.subarray(Number(header.totalSummaryOffset));
199
+ sum = ret.totalSummaryParser.parse(tail);
200
+ header.totalSummary = __assign(__assign({}, sum), { basesCovered: Number(sum.basesCovered) });
204
201
  }
205
202
  return [2 /*return*/, __assign(__assign({}, header), { isBigEndian: isBigEndian })];
206
203
  }
@@ -221,7 +218,7 @@ var BBI = /** @class */ (function () {
221
218
  // todo: add progress if long running
222
219
  BBI.prototype._readChromTree = function (header, opts) {
223
220
  return __awaiter(this, void 0, void 0, function () {
224
- var isBE, le, refsByNumber, refsByName, chromTreeOffset, unzoomedDataOffset, data, p, keySize, leafNodeParser, nonleafNodeParser, rootNodeOffset, bptReadNode;
221
+ var isBE, le, refsByNumber, refsByName, unzoomedDataOffset, chromTreeOffset, off, buffer, p, keySize, leafNodeParser, nonleafNodeParser, rootNodeOffset, bptReadNode;
225
222
  var _this = this;
226
223
  return __generator(this, function (_a) {
227
224
  switch (_a.label) {
@@ -230,43 +227,46 @@ var BBI = /** @class */ (function () {
230
227
  le = isBE ? 'big' : 'little';
231
228
  refsByNumber = [];
232
229
  refsByName = {};
233
- chromTreeOffset = header.chromTreeOffset;
234
- unzoomedDataOffset = header.unzoomedDataOffset;
230
+ unzoomedDataOffset = Number(header.unzoomedDataOffset);
231
+ chromTreeOffset = Number(header.chromTreeOffset);
235
232
  while (unzoomedDataOffset % 4 !== 0) {
236
233
  unzoomedDataOffset += 1;
237
234
  }
238
- return [4 /*yield*/, this.bbi.read(Buffer.alloc(unzoomedDataOffset - chromTreeOffset), 0, unzoomedDataOffset - chromTreeOffset, chromTreeOffset, opts)];
235
+ off = unzoomedDataOffset - chromTreeOffset;
236
+ return [4 /*yield*/, this.bbi.read(Buffer.alloc(off), 0, off, Number(chromTreeOffset), opts)];
239
237
  case 1:
240
- data = (_a.sent()).buffer;
238
+ buffer = (_a.sent()).buffer;
241
239
  p = getParsers(isBE);
242
- keySize = p.chromTreeParser.parse(data).result.keySize;
240
+ keySize = p.chromTreeParser.parse(buffer).keySize;
243
241
  leafNodeParser = new binary_parser_1.Parser()
244
242
  .endianess(le)
245
243
  .string('key', { stripNull: true, length: keySize })
246
244
  .uint32('refId')
247
- .uint32('refSize');
245
+ .uint32('refSize')
246
+ .saveOffset('offset');
248
247
  nonleafNodeParser = new binary_parser_1.Parser()
249
248
  .endianess(le)
250
249
  .skip(keySize)
251
- .uint64('childOffset');
250
+ .uint64('childOffset')
251
+ .saveOffset('offset');
252
252
  rootNodeOffset = 32;
253
253
  bptReadNode = function (currentOffset) { return __awaiter(_this, void 0, void 0, function () {
254
- var offset, ret, _a, isLeafNode, cnt, n, leafRet, _b, key, refId, refSize, refRec, nextNodes, n, nonleafRet, childOffset;
255
- return __generator(this, function (_c) {
256
- switch (_c.label) {
254
+ var offset, ret, isLeafNode, cnt, n, leafRet, key, refId, refSize, refRec, nextNodes, n, nonleafRet, childOffset;
255
+ return __generator(this, function (_a) {
256
+ switch (_a.label) {
257
257
  case 0:
258
258
  offset = currentOffset;
259
- if (offset >= data.length) {
259
+ if (offset >= buffer.length) {
260
260
  throw new Error('reading beyond end of buffer');
261
261
  }
262
- ret = p.isLeafNode.parse(data.slice(offset));
263
- _a = ret.result, isLeafNode = _a.isLeafNode, cnt = _a.cnt;
262
+ ret = p.isLeafNode.parse(buffer.subarray(offset));
263
+ isLeafNode = ret.isLeafNode, cnt = ret.cnt;
264
264
  offset += ret.offset;
265
265
  if (!isLeafNode) return [3 /*break*/, 1];
266
266
  for (n = 0; n < cnt; n += 1) {
267
- leafRet = leafNodeParser.parse(data.slice(offset));
267
+ leafRet = leafNodeParser.parse(buffer.subarray(offset));
268
268
  offset += leafRet.offset;
269
- _b = leafRet.result, key = _b.key, refId = _b.refId, refSize = _b.refSize;
269
+ key = leafRet.key, refId = leafRet.refId, refSize = leafRet.refSize;
270
270
  refRec = { name: key, id: refId, length: refSize };
271
271
  refsByName[this.renameRefSeqs(key)] = refId;
272
272
  refsByNumber[refId] = refRec;
@@ -275,16 +275,15 @@ var BBI = /** @class */ (function () {
275
275
  case 1:
276
276
  nextNodes = [];
277
277
  for (n = 0; n < cnt; n += 1) {
278
- nonleafRet = nonleafNodeParser.parse(data.slice(offset));
279
- childOffset = nonleafRet.result.childOffset;
278
+ nonleafRet = nonleafNodeParser.parse(buffer.subarray(offset));
279
+ childOffset = nonleafRet.childOffset;
280
280
  offset += nonleafRet.offset;
281
- childOffset -= chromTreeOffset;
282
- nextNodes.push(bptReadNode(childOffset));
281
+ nextNodes.push(bptReadNode(Number(childOffset) - Number(chromTreeOffset)));
283
282
  }
284
283
  return [4 /*yield*/, Promise.all(nextNodes)];
285
284
  case 2:
286
- _c.sent();
287
- _c.label = 3;
285
+ _a.sent();
286
+ _a.label = 3;
288
287
  case 3: return [2 /*return*/];
289
288
  }
290
289
  });
@@ -306,15 +305,13 @@ var BBI = /** @class */ (function () {
306
305
  */
307
306
  BBI.prototype.getUnzoomedView = function (opts) {
308
307
  return __awaiter(this, void 0, void 0, function () {
309
- var _a, unzoomedIndexOffset, zoomLevels, refsByName, uncompressBufSize, isBigEndian, fileType, nzl, cirLen;
308
+ var _a, unzoomedIndexOffset, refsByName, uncompressBufSize, isBigEndian, fileType;
310
309
  return __generator(this, function (_b) {
311
310
  switch (_b.label) {
312
311
  case 0: return [4 /*yield*/, this.getHeader(opts)];
313
312
  case 1:
314
- _a = _b.sent(), unzoomedIndexOffset = _a.unzoomedIndexOffset, zoomLevels = _a.zoomLevels, refsByName = _a.refsByName, uncompressBufSize = _a.uncompressBufSize, isBigEndian = _a.isBigEndian, fileType = _a.fileType;
315
- nzl = zoomLevels[0];
316
- cirLen = nzl ? nzl.dataOffset - unzoomedIndexOffset : 4000;
317
- return [2 /*return*/, new blockView_1.BlockView(this.bbi, refsByName, unzoomedIndexOffset, cirLen, isBigEndian, uncompressBufSize > 0, fileType)];
313
+ _a = _b.sent(), unzoomedIndexOffset = _a.unzoomedIndexOffset, refsByName = _a.refsByName, uncompressBufSize = _a.uncompressBufSize, isBigEndian = _a.isBigEndian, fileType = _a.fileType;
314
+ return [2 /*return*/, new blockView_1.BlockView(this.bbi, refsByName, unzoomedIndexOffset, isBigEndian, uncompressBufSize > 0, fileType)];
318
315
  }
319
316
  });
320
317
  });
package/dist/bbi.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bbi.js","sourceRoot":"","sources":["../src/bbi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bbi.js","sourceRoot":"","sources":["../src/bbi.ts"],"names":[],"mappings":"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"}
package/dist/bigbed.d.ts CHANGED
@@ -3,9 +3,8 @@ import { BlockView } from './blockView';
3
3
  export declare function filterUndef<T>(ts: (T | undefined)[]): T[];
4
4
  export declare class BigBed extends BBI {
5
5
  readIndicesCache: any;
6
- constructor(opts?: any);
7
6
  readIndices(opts?: AbortSignal | RequestOptions): any;
8
- protected getView(scale: number, opts: RequestOptions): Promise<BlockView>;
7
+ protected getView(_scale: number, opts: RequestOptions): Promise<BlockView>;
9
8
  private _readIndices;
10
9
  private searchExtraIndexBlocks;
11
10
  searchExtraIndex(name: string, opts?: RequestOptions): Promise<Feature[]>;
package/dist/bigbed.js CHANGED
@@ -66,7 +66,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
66
66
  };
67
67
  Object.defineProperty(exports, "__esModule", { value: true });
68
68
  exports.BigBed = exports.filterUndef = void 0;
69
- var binary_parser_1 = require("@gmod/binary-parser");
69
+ var binary_parser_1 = require("binary-parser");
70
70
  var rxjs_1 = require("rxjs");
71
71
  var operators_1 = require("rxjs/operators");
72
72
  var abortable_promise_cache_1 = __importDefault(require("abortable-promise-cache"));
@@ -78,8 +78,8 @@ function filterUndef(ts) {
78
78
  exports.filterUndef = filterUndef;
79
79
  var BigBed = /** @class */ (function (_super) {
80
80
  __extends(BigBed, _super);
81
- function BigBed(opts) {
82
- var _this = _super.call(this, opts) || this;
81
+ function BigBed() {
82
+ var _this = _super !== null && _super.apply(this, arguments) || this;
83
83
  _this.readIndicesCache = new abortable_promise_cache_1.default({
84
84
  cache: new quick_lru_1.default({ maxSize: 1 }),
85
85
  fill: function (args, signal) { return __awaiter(_this, void 0, void 0, function () {
@@ -101,7 +101,7 @@ var BigBed = /** @class */ (function (_super) {
101
101
  * @param abortSignal - an optional AbortSignal to kill operation
102
102
  * @return promise for a BlockView
103
103
  */
104
- BigBed.prototype.getView = function (scale, opts) {
104
+ BigBed.prototype.getView = function (_scale, opts) {
105
105
  return __awaiter(this, void 0, void 0, function () {
106
106
  return __generator(this, function (_a) {
107
107
  return [2 /*return*/, this.getUnzoomedView(opts)];
@@ -121,7 +121,7 @@ var BigBed = /** @class */ (function (_super) {
121
121
  case 0: return [4 /*yield*/, this.getHeader(opts)];
122
122
  case 1:
123
123
  _a = _b.sent(), extHeaderOffset = _a.extHeaderOffset, isBigEndian = _a.isBigEndian;
124
- return [4 /*yield*/, this.bbi.read(Buffer.alloc(64), 0, 64, extHeaderOffset)];
124
+ return [4 /*yield*/, this.bbi.read(Buffer.alloc(64), 0, 64, Number(extHeaderOffset))];
125
125
  case 2:
126
126
  data = (_b.sent()).buffer;
127
127
  le = isBigEndian ? 'big' : 'little';
@@ -130,7 +130,7 @@ var BigBed = /** @class */ (function (_super) {
130
130
  .uint16('size')
131
131
  .uint16('count')
132
132
  .uint64('offset')
133
- .parse(data).result;
133
+ .parse(data);
134
134
  count = ret.count, offset = ret.offset;
135
135
  // no extra index is defined if count==0
136
136
  if (count === 0) {
@@ -138,7 +138,7 @@ var BigBed = /** @class */ (function (_super) {
138
138
  }
139
139
  blocklen = 20;
140
140
  len = blocklen * count;
141
- return [4 /*yield*/, this.bbi.read(Buffer.alloc(len), 0, len, offset)];
141
+ return [4 /*yield*/, this.bbi.read(Buffer.alloc(len), 0, len, Number(offset))];
142
142
  case 3:
143
143
  buffer = (_b.sent()).buffer;
144
144
  extParser = new binary_parser_1.Parser()
@@ -150,7 +150,7 @@ var BigBed = /** @class */ (function (_super) {
150
150
  .int16('field');
151
151
  indices = [];
152
152
  for (i = 0; i < count; i += 1) {
153
- indices.push(extParser.parse(buffer.slice(i * blocklen)).result);
153
+ indices.push(extParser.parse(buffer.subarray(i * blocklen)));
154
154
  }
155
155
  return [2 /*return*/, indices];
156
156
  }
@@ -182,25 +182,26 @@ var BigBed = /** @class */ (function (_super) {
182
182
  return [2 /*return*/, []];
183
183
  }
184
184
  locs = indices.map(function (index) { return __awaiter(_this, void 0, void 0, function () {
185
- var offset, field, data, p, _a, blockSize, keySize, valSize, bpt, bptReadNode, rootNodeOffset;
185
+ var offset, field, data, le, p, _a, blockSize, keySize, valSize, bpt, bptReadNode, rootNodeOffset;
186
186
  var _this = this;
187
187
  return __generator(this, function (_b) {
188
188
  switch (_b.label) {
189
189
  case 0:
190
190
  offset = index.offset, field = index.field;
191
- return [4 /*yield*/, this.bbi.read(Buffer.alloc(32), 0, 32, offset, opts)];
191
+ return [4 /*yield*/, this.bbi.read(Buffer.alloc(32), 0, 32, Number(offset), opts)];
192
192
  case 1:
193
193
  data = (_b.sent()).buffer;
194
+ le = isBigEndian ? 'big' : 'little';
194
195
  p = new binary_parser_1.Parser()
195
- .endianess(isBigEndian ? 'big' : 'little')
196
+ .endianess(le)
196
197
  .int32('magic')
197
198
  .int32('blockSize')
198
199
  .int32('keySize')
199
200
  .int32('valSize')
200
201
  .uint64('itemCount');
201
- _a = p.parse(data).result, blockSize = _a.blockSize, keySize = _a.keySize, valSize = _a.valSize;
202
+ _a = p.parse(data), blockSize = _a.blockSize, keySize = _a.keySize, valSize = _a.valSize;
202
203
  bpt = new binary_parser_1.Parser()
203
- .endianess(isBigEndian ? 'big' : 'little')
204
+ .endianess(le)
204
205
  .int8('nodeType')
205
206
  .skip(1)
206
207
  .int16('cnt')
@@ -210,12 +211,14 @@ var BigBed = /** @class */ (function (_super) {
210
211
  0: new binary_parser_1.Parser().array('leafkeys', {
211
212
  length: 'cnt',
212
213
  type: new binary_parser_1.Parser()
214
+ .endianess(le)
213
215
  .string('key', { length: keySize, stripNull: true })
214
216
  .uint64('offset'),
215
217
  }),
216
218
  1: new binary_parser_1.Parser().array('keys', {
217
219
  length: 'cnt',
218
220
  type: new binary_parser_1.Parser()
221
+ .endianess(le)
219
222
  .string('key', { length: keySize, stripNull: true })
220
223
  .uint64('offset')
221
224
  .uint32('length')
@@ -224,15 +227,16 @@ var BigBed = /** @class */ (function (_super) {
224
227
  },
225
228
  });
226
229
  bptReadNode = function (nodeOffset) { return __awaiter(_this, void 0, void 0, function () {
227
- var len, buffer, node, lastOffset, i, key, i;
230
+ var val, len, buffer, node, lastOffset, i, key, i;
228
231
  return __generator(this, function (_a) {
229
232
  switch (_a.label) {
230
233
  case 0:
234
+ val = Number(nodeOffset);
231
235
  len = 4 + blockSize * (keySize + valSize);
232
- return [4 /*yield*/, this.bbi.read(Buffer.alloc(len), 0, len, nodeOffset, opts)];
236
+ return [4 /*yield*/, this.bbi.read(Buffer.alloc(len), 0, len, val, opts)];
233
237
  case 1:
234
238
  buffer = (_a.sent()).buffer;
235
- node = bpt.parse(buffer).result;
239
+ node = bpt.parse(buffer);
236
240
  if (node.leafkeys) {
237
241
  lastOffset = void 0;
238
242
  for (i = 0; i < node.leafkeys.length; i += 1) {
@@ -254,7 +258,7 @@ var BigBed = /** @class */ (function (_super) {
254
258
  });
255
259
  }); };
256
260
  rootNodeOffset = 32;
257
- return [2 /*return*/, bptReadNode(offset + rootNodeOffset)];
261
+ return [2 /*return*/, bptReadNode(Number(offset) + rootNodeOffset)];
258
262
  }
259
263
  });
260
264
  }); });
@@ -301,9 +305,7 @@ var BigBed = /** @class */ (function (_super) {
301
305
  return [4 /*yield*/, rxjs_1.merge.apply(void 0, res).toPromise()];
302
306
  case 3:
303
307
  ret = _a.sent();
304
- return [2 /*return*/, ret.filter(function (f) {
305
- return f.rest.split('\t')[f.field - 3] === name;
306
- })];
308
+ return [2 /*return*/, ret.filter(function (f) { var _a; return ((_a = f.rest) === null || _a === void 0 ? void 0 : _a.split('\t')[(f.field || 0) - 3]) === name; })];
307
309
  }
308
310
  });
309
311
  });
@@ -1 +1 @@
1
- {"version":3,"file":"bigbed.js","sourceRoot":"","sources":["../src/bigbed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bigbed.js","sourceRoot":"","sources":["../src/bigbed.ts"],"names":[],"mappings":"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"}
package/dist/bigwig.d.ts CHANGED
@@ -4,9 +4,7 @@ export declare class BigWig extends BBI {
4
4
  /**
5
5
  * Retrieves a BlockView of a specific zoomLevel
6
6
  *
7
- * @param refName - The chromosome name
8
- * @param start - The start of a region
9
- * @param end - The end of a region
7
+ * @param scale - number
10
8
  * @param opts - An object containing basesPerSpan (e.g. pixels per basepair) or scale used to infer the zoomLevel to use
11
9
  */
12
10
  protected getView(scale: number, opts: RequestOptions): Promise<BlockView>;
package/dist/bigwig.js CHANGED
@@ -62,14 +62,12 @@ var BigWig = /** @class */ (function (_super) {
62
62
  /**
63
63
  * Retrieves a BlockView of a specific zoomLevel
64
64
  *
65
- * @param refName - The chromosome name
66
- * @param start - The start of a region
67
- * @param end - The end of a region
65
+ * @param scale - number
68
66
  * @param opts - An object containing basesPerSpan (e.g. pixels per basepair) or scale used to infer the zoomLevel to use
69
67
  */
70
68
  BigWig.prototype.getView = function (scale, opts) {
71
69
  return __awaiter(this, void 0, void 0, function () {
72
- var _a, zoomLevels, refsByName, fileSize, isBigEndian, uncompressBufSize, basesPerPx, maxLevel, i, zh, indexLength;
70
+ var _a, zoomLevels, refsByName, fileSize, isBigEndian, uncompressBufSize, basesPerPx, maxLevel, i, zh, indexOffset;
73
71
  return __generator(this, function (_b) {
74
72
  switch (_b.label) {
75
73
  case 0: return [4 /*yield*/, this.getHeader(opts)];
@@ -84,10 +82,8 @@ var BigWig = /** @class */ (function (_super) {
84
82
  for (i = maxLevel; i >= 0; i -= 1) {
85
83
  zh = zoomLevels[i];
86
84
  if (zh && zh.reductionLevel <= 2 * basesPerPx) {
87
- indexLength = i < zoomLevels.length - 1
88
- ? zoomLevels[i + 1].dataOffset - zh.indexOffset
89
- : fileSize - 4 - zh.indexOffset;
90
- return [2 /*return*/, new blockView_1.BlockView(this.bbi, refsByName, zh.indexOffset, indexLength, isBigEndian, uncompressBufSize > 0, 'summary')];
85
+ indexOffset = Number(zh.indexOffset);
86
+ return [2 /*return*/, new blockView_1.BlockView(this.bbi, refsByName, indexOffset, isBigEndian, uncompressBufSize > 0, 'summary')];
91
87
  }
92
88
  }
93
89
  return [2 /*return*/, this.getUnzoomedView(opts)];
@@ -1 +1 @@
1
- {"version":3,"file":"bigwig.js","sourceRoot":"","sources":["../src/bigwig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAuC;AACvC,6BAA2C;AAE3C;IAA4B,0BAAG;IAA/B;;IA0CA,CAAC;IAzCC;;;;;;;OAOG;IACa,wBAAO,GAAvB,UACE,KAAa,EACb,IAAoB;;;;;4BAGlB,qBAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAA;;wBADtB,KACJ,SAA0B,EADpB,UAAU,gBAAA,EAAE,UAAU,gBAAA,EAAE,QAAQ,cAAA,EAAE,WAAW,iBAAA,EAAE,iBAAiB,uBAAA;wBAElE,UAAU,GAAG,CAAC,GAAG,KAAK,CAAA;wBACxB,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAA;wBAChC,IAAI,CAAC,QAAQ,EAAE;4BACb,4EAA4E;4BAC5E,QAAQ,IAAI,CAAC,CAAA;yBACd;wBAED,KAAS,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;4BAC/B,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;4BACxB,IAAI,EAAE,IAAI,EAAE,CAAC,cAAc,IAAI,CAAC,GAAG,UAAU,EAAE;gCACvC,WAAW,GACf,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC;oCACvB,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW;oCAC/C,CAAC,CAAC,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAC,WAAW,CAAA;gCACnC,sBAAO,IAAI,qBAAS,CAClB,IAAI,CAAC,GAAG,EACR,UAAU,EACV,EAAE,CAAC,WAAW,EACd,WAAW,EACX,WAAW,EACX,iBAAiB,GAAG,CAAC,EACrB,SAAS,CACV,EAAA;6BACF;yBACF;wBACD,sBAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAA;;;;KAClC;IACH,aAAC;AAAD,CAAC,AA1CD,CAA4B,SAAG,GA0C9B;AA1CY,wBAAM"}
1
+ {"version":3,"file":"bigwig.js","sourceRoot":"","sources":["../src/bigwig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAuC;AACvC,6BAA2C;AAE3C;IAA4B,0BAAG;IAA/B;;IAkCA,CAAC;IAjCC;;;;;OAKG;IACa,wBAAO,GAAvB,UAAwB,KAAa,EAAE,IAAoB;;;;;4BAEvD,qBAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAA;;wBADtB,KACJ,SAA0B,EADpB,UAAU,gBAAA,EAAE,UAAU,gBAAA,EAAE,QAAQ,cAAA,EAAE,WAAW,iBAAA,EAAE,iBAAiB,uBAAA;wBAElE,UAAU,GAAG,CAAC,GAAG,KAAK,CAAA;wBACxB,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAA;wBAChC,IAAI,CAAC,QAAQ,EAAE;4BACb,4EAA4E;4BAC5E,QAAQ,IAAI,CAAC,CAAA;yBACd;wBAED,KAAS,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;4BAC/B,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;4BACxB,IAAI,EAAE,IAAI,EAAE,CAAC,cAAc,IAAI,CAAC,GAAG,UAAU,EAAE;gCACvC,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;gCAE1C,sBAAO,IAAI,qBAAS,CAClB,IAAI,CAAC,GAAG,EACR,UAAU,EACV,WAAW,EACX,WAAW,EACX,iBAAiB,GAAG,CAAC,EACrB,SAAS,CACV,EAAA;6BACF;yBACF;wBACD,sBAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAA;;;;KAClC;IACH,aAAC;AAAD,CAAC,AAlCD,CAA4B,SAAG,GAkC9B;AAlCY,wBAAM"}
@@ -18,25 +18,24 @@ interface Options {
18
18
  * @constructs
19
19
  */
20
20
  export declare class BlockView {
21
- private cirTreeOffset;
22
- private cirTreeLength;
23
21
  private bbi;
24
- private isCompressed;
25
- private isBigEndian;
26
22
  private refsByName;
23
+ private cirTreeOffset;
24
+ private isBigEndian;
25
+ private isCompressed;
27
26
  private blockType;
28
27
  private cirTreePromise?;
29
28
  private featureCache;
30
29
  private leafParser;
31
- private bigWigParser;
32
30
  private bigBedParser;
33
- private summaryParser;
34
- constructor(bbi: GenericFilehandle, refsByName: any, cirTreeOffset: number, cirTreeLength: number, isBigEndian: boolean, isCompressed: boolean, blockType: string);
31
+ constructor(bbi: GenericFilehandle, refsByName: any, cirTreeOffset: number, isBigEndian: boolean, isCompressed: boolean, blockType: string);
35
32
  readWigData(chrName: string, start: number, end: number, observer: Observer<Feature[]>, opts: Options): Promise<void>;
36
33
  private parseSummaryBlock;
37
34
  private parseBigBedBlock;
38
35
  private parseBigWigBlock;
39
- private static coordFilter;
40
- readFeatures(observer: Observer<Feature[]>, blocks: any, opts?: Options): Promise<void>;
36
+ readFeatures(observer: Observer<Feature[]>, blocks: {
37
+ offset: bigint;
38
+ length: bigint;
39
+ }[], opts?: Options): Promise<void>;
41
40
  }
42
41
  export {};