@gmod/bbi 8.0.1 → 8.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## [8.0.3](https://github.com/GMOD/bbi-js/compare/v8.0.2...v8.0.3) (2025-12-16)
2
+
3
+
4
+
5
+ ## [8.0.2](https://github.com/GMOD/bbi-js/compare/v8.0.1...v8.0.2) (2025-12-16)
6
+
7
+
8
+
1
9
  ## [8.0.1](https://github.com/GMOD/bbi-js/compare/v8.0.0...v8.0.1) (2025-12-16)
2
10
 
3
11
 
package/README.md CHANGED
@@ -151,14 +151,14 @@ for (let i = 0; i < starts.length; i++) {
151
151
  console.log(`Feature at ${starts[i]}-${ends[i]} with score ${scores[i]}`)
152
152
  }
153
153
 
154
- // Check if it's summary data
154
+ // Check if it's summary data using the isSummary discriminant
155
155
  const result = await bigwig.getFeaturesAsArrays('chr1', 0, 100000, {
156
156
  scale: 0.01,
157
157
  })
158
- if ('minScores' in result) {
158
+ if (result.isSummary) {
159
159
  // Summary data with min/max scores
160
160
  const { minScores, maxScores } = result
161
- for (let i = 0; i < starts.length; i++) {
161
+ for (let i = 0; i < result.starts.length; i++) {
162
162
  console.log(`Range: ${minScores[i]} - ${maxScores[i]}`)
163
163
  }
164
164
  }
@@ -171,6 +171,7 @@ interface BigWigFeatureArrays {
171
171
  starts: Int32Array
172
172
  ends: Int32Array
173
173
  scores: Float32Array
174
+ isSummary: false
174
175
  }
175
176
 
176
177
  interface SummaryFeatureArrays {
@@ -179,9 +180,14 @@ interface SummaryFeatureArrays {
179
180
  scores: Float32Array
180
181
  minScores: Float32Array
181
182
  maxScores: Float32Array
183
+ isSummary: true
182
184
  }
183
185
  ```
184
186
 
187
+ The `isSummary` discriminant allows TypeScript to properly narrow the union
188
+ type, making it easier to safely access `minScores` and `maxScores` only when
189
+ they exist.
190
+
185
191
  ### BigBed
186
192
 
187
193
  #### getFeatures(refName, start, end, opts)
package/dist/bbi.js CHANGED
@@ -307,6 +307,7 @@ class BBI {
307
307
  starts: new Int32Array(0),
308
308
  ends: new Int32Array(0),
309
309
  scores: new Float32Array(0),
310
+ isSummary: false,
310
311
  };
311
312
  }
312
313
  const hasSummary = features[0]?.summary === true;
@@ -324,7 +325,14 @@ class BBI {
324
325
  minScores[i] = f.minScore ?? 0;
325
326
  maxScores[i] = f.maxScore ?? 0;
326
327
  }
327
- return { starts, ends, scores, minScores, maxScores };
328
+ return {
329
+ starts,
330
+ ends,
331
+ scores,
332
+ minScores,
333
+ maxScores,
334
+ isSummary: true,
335
+ };
328
336
  }
329
337
  const starts = new Int32Array(count);
330
338
  const ends = new Int32Array(count);
@@ -335,7 +343,7 @@ class BBI {
335
343
  ends[i] = f.end;
336
344
  scores[i] = f.score ?? 0;
337
345
  }
338
- return { starts, ends, scores };
346
+ return { starts, ends, scores, isSummary: false };
339
347
  }
340
348
  }
341
349
  exports.BBI = BBI;
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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"}
@@ -30,6 +30,7 @@ export declare class BlockView {
30
30
  private parseSummaryBlock;
31
31
  private parseBigBedBlock;
32
32
  private parseBigWigBlock;
33
+ private parseBigWigBlockAsArrays;
33
34
  readFeatures(observer: Observer<Feature[]>, blocks: {
34
35
  offset: number;
35
36
  length: number;
@@ -335,6 +335,112 @@ class BlockView {
335
335
  }
336
336
  return items;
337
337
  }
338
+ parseBigWigBlockAsArrays(buffer, startOffset, req) {
339
+ const dataView = new DataView(buffer.buffer, buffer.byteOffset + startOffset, buffer.length - startOffset);
340
+ const blockStart = dataView.getInt32(4, true);
341
+ const itemStep = dataView.getUint32(12, true);
342
+ const itemSpan = dataView.getUint32(16, true);
343
+ const blockType = dataView.getUint8(20);
344
+ const itemCount = dataView.getUint16(22, true);
345
+ const starts = new Int32Array(itemCount);
346
+ const ends = new Int32Array(itemCount);
347
+ const scores = new Float32Array(itemCount);
348
+ if (!req) {
349
+ switch (blockType) {
350
+ case 1: {
351
+ let offset = 24;
352
+ for (let i = 0; i < itemCount; i++) {
353
+ starts[i] = dataView.getInt32(offset, true);
354
+ ends[i] = dataView.getInt32(offset + 4, true);
355
+ scores[i] = dataView.getFloat32(offset + 8, true);
356
+ offset += 12;
357
+ }
358
+ return { starts, ends, scores };
359
+ }
360
+ case 2: {
361
+ let offset = 24;
362
+ for (let i = 0; i < itemCount; i++) {
363
+ const start = dataView.getInt32(offset, true);
364
+ starts[i] = start;
365
+ ends[i] = start + itemSpan;
366
+ scores[i] = dataView.getFloat32(offset + 4, true);
367
+ offset += 8;
368
+ }
369
+ return { starts, ends, scores };
370
+ }
371
+ case 3: {
372
+ let offset = 24;
373
+ for (let i = 0; i < itemCount; i++) {
374
+ const start = blockStart + i * itemStep;
375
+ starts[i] = start;
376
+ ends[i] = start + itemSpan;
377
+ scores[i] = dataView.getFloat32(offset, true);
378
+ offset += 4;
379
+ }
380
+ return { starts, ends, scores };
381
+ }
382
+ }
383
+ return { starts, ends, scores };
384
+ }
385
+ const reqStart = req.start;
386
+ const reqEnd = req.end;
387
+ let idx = 0;
388
+ switch (blockType) {
389
+ case 1: {
390
+ let offset = 24;
391
+ for (let i = 0; i < itemCount; i++) {
392
+ const start = dataView.getInt32(offset, true);
393
+ const end = dataView.getInt32(offset + 4, true);
394
+ if (start < reqEnd && end >= reqStart) {
395
+ starts[idx] = start;
396
+ ends[idx] = end;
397
+ scores[idx] = dataView.getFloat32(offset + 8, true);
398
+ idx++;
399
+ }
400
+ offset += 12;
401
+ }
402
+ break;
403
+ }
404
+ case 2: {
405
+ let offset = 24;
406
+ for (let i = 0; i < itemCount; i++) {
407
+ const start = dataView.getInt32(offset, true);
408
+ const end = start + itemSpan;
409
+ if (start < reqEnd && end >= reqStart) {
410
+ starts[idx] = start;
411
+ ends[idx] = end;
412
+ scores[idx] = dataView.getFloat32(offset + 4, true);
413
+ idx++;
414
+ }
415
+ offset += 8;
416
+ }
417
+ break;
418
+ }
419
+ case 3: {
420
+ let offset = 24;
421
+ for (let i = 0; i < itemCount; i++) {
422
+ const start = blockStart + i * itemStep;
423
+ const end = start + itemSpan;
424
+ if (start < reqEnd && end >= reqStart) {
425
+ starts[idx] = start;
426
+ ends[idx] = end;
427
+ scores[idx] = dataView.getFloat32(offset, true);
428
+ idx++;
429
+ }
430
+ offset += 4;
431
+ }
432
+ break;
433
+ }
434
+ }
435
+ if (idx < itemCount) {
436
+ return {
437
+ starts: starts.subarray(0, idx),
438
+ ends: ends.subarray(0, idx),
439
+ scores: scores.subarray(0, idx),
440
+ };
441
+ }
442
+ return { starts, ends, scores };
443
+ }
338
444
  async readFeatures(observer, blocks, opts = {}) {
339
445
  try {
340
446
  const { blockType, uncompressBufSize } = this;
@@ -416,21 +522,12 @@ class BlockView {
416
522
  else {
417
523
  for (const block of localBlocks) {
418
524
  const blockData = data.subarray(block.offset, block.offset + block.length);
419
- const features = this.parseBigWigBlock(blockData, 0, request);
420
- if (features.length > 0) {
421
- const starts = new Int32Array(features.length);
422
- const ends = new Int32Array(features.length);
423
- const scores = new Float32Array(features.length);
424
- for (let i = 0; i < features.length; i++) {
425
- const f = features[i];
426
- starts[i] = f.start;
427
- ends[i] = f.end;
428
- scores[i] = f.score;
429
- }
430
- allStarts.push(starts);
431
- allEnds.push(ends);
432
- allScores.push(scores);
433
- totalCount += features.length;
525
+ const result = this.parseBigWigBlockAsArrays(blockData, 0, request);
526
+ if (result.starts.length > 0) {
527
+ allStarts.push(result.starts);
528
+ allEnds.push(result.ends);
529
+ allScores.push(result.scores);
530
+ totalCount += result.starts.length;
434
531
  }
435
532
  }
436
533
  }
@@ -440,6 +537,7 @@ class BlockView {
440
537
  starts: new Int32Array(0),
441
538
  ends: new Int32Array(0),
442
539
  scores: new Float32Array(0),
540
+ isSummary: false,
443
541
  };
444
542
  }
445
543
  if (allStarts.length === 1) {
@@ -447,6 +545,7 @@ class BlockView {
447
545
  starts: allStarts[0],
448
546
  ends: allEnds[0],
449
547
  scores: allScores[0],
548
+ isSummary: false,
450
549
  };
451
550
  }
452
551
  const starts = new Int32Array(totalCount);
@@ -459,7 +558,7 @@ class BlockView {
459
558
  scores.set(allScores[i], offset);
460
559
  offset += allStarts[i].length;
461
560
  }
462
- return { starts, ends, scores };
561
+ return { starts, ends, scores, isSummary: false };
463
562
  }
464
563
  async readSummaryFeaturesAsArrays(blocks, opts = {}) {
465
564
  const { uncompressBufSize } = this;
@@ -524,6 +623,7 @@ class BlockView {
524
623
  scores: new Float32Array(0),
525
624
  minScores: new Float32Array(0),
526
625
  maxScores: new Float32Array(0),
626
+ isSummary: true,
527
627
  };
528
628
  }
529
629
  if (allStarts.length === 1) {
@@ -533,6 +633,7 @@ class BlockView {
533
633
  scores: allScores[0],
534
634
  minScores: allMinScores[0],
535
635
  maxScores: allMaxScores[0],
636
+ isSummary: true,
536
637
  };
537
638
  }
538
639
  const starts = new Int32Array(totalCount);
@@ -549,7 +650,14 @@ class BlockView {
549
650
  maxScores.set(allMaxScores[i], offset);
550
651
  offset += allStarts[i].length;
551
652
  }
552
- return { starts, ends, scores, minScores, maxScores };
653
+ return {
654
+ starts,
655
+ ends,
656
+ scores,
657
+ minScores,
658
+ maxScores,
659
+ isSummary: true,
660
+ };
553
661
  }
554
662
  }
555
663
  exports.BlockView = BlockView;
@@ -1 +1 @@
1
- {"version":3,"file":"block-view.js","sourceRoot":"","sources":["../src/block-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block-view.js","sourceRoot":"","sources":["../src/block-view.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -63,6 +63,7 @@ export interface BigWigFeatureArrays {
63
63
  starts: Int32Array;
64
64
  ends: Int32Array;
65
65
  scores: Float32Array;
66
+ isSummary: false;
66
67
  }
67
68
  export interface SummaryFeatureArrays {
68
69
  starts: Int32Array;
@@ -70,4 +71,5 @@ export interface SummaryFeatureArrays {
70
71
  scores: Float32Array;
71
72
  minScores: Float32Array;
72
73
  maxScores: Float32Array;
74
+ isSummary: true;
73
75
  }
package/dist/unzip.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { BigWigFeatureArrays, SummaryFeatureArrays } from './wasm/inflate-wasm-inlined.js';
1
+ import type { BigWigFeatureArrays as WasmBigWigFeatureArrays, SummaryFeatureArrays as WasmSummaryFeatureArrays } from './wasm/inflate-wasm-inlined.js';
2
2
  export interface UnzipBatchResult {
3
3
  data: Uint8Array;
4
4
  offsets: number[];
@@ -10,9 +10,9 @@ export declare function unzipBatch(data: Uint8Array, blocks: {
10
10
  export declare function decompressAndParseBigWigBlocks(data: Uint8Array, blocks: {
11
11
  offset: number;
12
12
  length: number;
13
- }[], maxOutputSize: number, reqStart: number, reqEnd: number): Promise<BigWigFeatureArrays>;
13
+ }[], maxOutputSize: number, reqStart: number, reqEnd: number): Promise<WasmBigWigFeatureArrays>;
14
14
  export declare function decompressAndParseSummaryBlocks(data: Uint8Array, blocks: {
15
15
  offset: number;
16
16
  length: number;
17
- }[], maxOutputSize: number, reqChrId: number, reqStart: number, reqEnd: number): Promise<SummaryFeatureArrays>;
17
+ }[], maxOutputSize: number, reqChrId: number, reqStart: number, reqEnd: number): Promise<WasmSummaryFeatureArrays>;
18
18
  export type { BigWigFeatureArrays, SummaryFeatureArrays } from './types.ts';
package/esm/bbi.js CHANGED
@@ -304,6 +304,7 @@ export class BBI {
304
304
  starts: new Int32Array(0),
305
305
  ends: new Int32Array(0),
306
306
  scores: new Float32Array(0),
307
+ isSummary: false,
307
308
  };
308
309
  }
309
310
  const hasSummary = features[0]?.summary === true;
@@ -321,7 +322,14 @@ export class BBI {
321
322
  minScores[i] = f.minScore ?? 0;
322
323
  maxScores[i] = f.maxScore ?? 0;
323
324
  }
324
- return { starts, ends, scores, minScores, maxScores };
325
+ return {
326
+ starts,
327
+ ends,
328
+ scores,
329
+ minScores,
330
+ maxScores,
331
+ isSummary: true,
332
+ };
325
333
  }
326
334
  const starts = new Int32Array(count);
327
335
  const ends = new Int32Array(count);
@@ -332,7 +340,7 @@ export class BBI {
332
340
  ends[i] = f.end;
333
341
  scores[i] = f.score ?? 0;
334
342
  }
335
- return { starts, ends, scores };
343
+ return { starts, ends, scores, isSummary: false };
336
344
  }
337
345
  }
338
346
  //# sourceMappingURL=bbi.js.map
package/esm/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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"}
@@ -30,6 +30,7 @@ export declare class BlockView {
30
30
  private parseSummaryBlock;
31
31
  private parseBigBedBlock;
32
32
  private parseBigWigBlock;
33
+ private parseBigWigBlockAsArrays;
33
34
  readFeatures(observer: Observer<Feature[]>, blocks: {
34
35
  offset: number;
35
36
  length: number;
package/esm/block-view.js CHANGED
@@ -329,6 +329,112 @@ export class BlockView {
329
329
  }
330
330
  return items;
331
331
  }
332
+ parseBigWigBlockAsArrays(buffer, startOffset, req) {
333
+ const dataView = new DataView(buffer.buffer, buffer.byteOffset + startOffset, buffer.length - startOffset);
334
+ const blockStart = dataView.getInt32(4, true);
335
+ const itemStep = dataView.getUint32(12, true);
336
+ const itemSpan = dataView.getUint32(16, true);
337
+ const blockType = dataView.getUint8(20);
338
+ const itemCount = dataView.getUint16(22, true);
339
+ const starts = new Int32Array(itemCount);
340
+ const ends = new Int32Array(itemCount);
341
+ const scores = new Float32Array(itemCount);
342
+ if (!req) {
343
+ switch (blockType) {
344
+ case 1: {
345
+ let offset = 24;
346
+ for (let i = 0; i < itemCount; i++) {
347
+ starts[i] = dataView.getInt32(offset, true);
348
+ ends[i] = dataView.getInt32(offset + 4, true);
349
+ scores[i] = dataView.getFloat32(offset + 8, true);
350
+ offset += 12;
351
+ }
352
+ return { starts, ends, scores };
353
+ }
354
+ case 2: {
355
+ let offset = 24;
356
+ for (let i = 0; i < itemCount; i++) {
357
+ const start = dataView.getInt32(offset, true);
358
+ starts[i] = start;
359
+ ends[i] = start + itemSpan;
360
+ scores[i] = dataView.getFloat32(offset + 4, true);
361
+ offset += 8;
362
+ }
363
+ return { starts, ends, scores };
364
+ }
365
+ case 3: {
366
+ let offset = 24;
367
+ for (let i = 0; i < itemCount; i++) {
368
+ const start = blockStart + i * itemStep;
369
+ starts[i] = start;
370
+ ends[i] = start + itemSpan;
371
+ scores[i] = dataView.getFloat32(offset, true);
372
+ offset += 4;
373
+ }
374
+ return { starts, ends, scores };
375
+ }
376
+ }
377
+ return { starts, ends, scores };
378
+ }
379
+ const reqStart = req.start;
380
+ const reqEnd = req.end;
381
+ let idx = 0;
382
+ switch (blockType) {
383
+ case 1: {
384
+ let offset = 24;
385
+ for (let i = 0; i < itemCount; i++) {
386
+ const start = dataView.getInt32(offset, true);
387
+ const end = dataView.getInt32(offset + 4, true);
388
+ if (start < reqEnd && end >= reqStart) {
389
+ starts[idx] = start;
390
+ ends[idx] = end;
391
+ scores[idx] = dataView.getFloat32(offset + 8, true);
392
+ idx++;
393
+ }
394
+ offset += 12;
395
+ }
396
+ break;
397
+ }
398
+ case 2: {
399
+ let offset = 24;
400
+ for (let i = 0; i < itemCount; i++) {
401
+ const start = dataView.getInt32(offset, true);
402
+ const end = start + itemSpan;
403
+ if (start < reqEnd && end >= reqStart) {
404
+ starts[idx] = start;
405
+ ends[idx] = end;
406
+ scores[idx] = dataView.getFloat32(offset + 4, true);
407
+ idx++;
408
+ }
409
+ offset += 8;
410
+ }
411
+ break;
412
+ }
413
+ case 3: {
414
+ let offset = 24;
415
+ for (let i = 0; i < itemCount; i++) {
416
+ const start = blockStart + i * itemStep;
417
+ const end = start + itemSpan;
418
+ if (start < reqEnd && end >= reqStart) {
419
+ starts[idx] = start;
420
+ ends[idx] = end;
421
+ scores[idx] = dataView.getFloat32(offset, true);
422
+ idx++;
423
+ }
424
+ offset += 4;
425
+ }
426
+ break;
427
+ }
428
+ }
429
+ if (idx < itemCount) {
430
+ return {
431
+ starts: starts.subarray(0, idx),
432
+ ends: ends.subarray(0, idx),
433
+ scores: scores.subarray(0, idx),
434
+ };
435
+ }
436
+ return { starts, ends, scores };
437
+ }
332
438
  async readFeatures(observer, blocks, opts = {}) {
333
439
  try {
334
440
  const { blockType, uncompressBufSize } = this;
@@ -410,21 +516,12 @@ export class BlockView {
410
516
  else {
411
517
  for (const block of localBlocks) {
412
518
  const blockData = data.subarray(block.offset, block.offset + block.length);
413
- const features = this.parseBigWigBlock(blockData, 0, request);
414
- if (features.length > 0) {
415
- const starts = new Int32Array(features.length);
416
- const ends = new Int32Array(features.length);
417
- const scores = new Float32Array(features.length);
418
- for (let i = 0; i < features.length; i++) {
419
- const f = features[i];
420
- starts[i] = f.start;
421
- ends[i] = f.end;
422
- scores[i] = f.score;
423
- }
424
- allStarts.push(starts);
425
- allEnds.push(ends);
426
- allScores.push(scores);
427
- totalCount += features.length;
519
+ const result = this.parseBigWigBlockAsArrays(blockData, 0, request);
520
+ if (result.starts.length > 0) {
521
+ allStarts.push(result.starts);
522
+ allEnds.push(result.ends);
523
+ allScores.push(result.scores);
524
+ totalCount += result.starts.length;
428
525
  }
429
526
  }
430
527
  }
@@ -434,6 +531,7 @@ export class BlockView {
434
531
  starts: new Int32Array(0),
435
532
  ends: new Int32Array(0),
436
533
  scores: new Float32Array(0),
534
+ isSummary: false,
437
535
  };
438
536
  }
439
537
  if (allStarts.length === 1) {
@@ -441,6 +539,7 @@ export class BlockView {
441
539
  starts: allStarts[0],
442
540
  ends: allEnds[0],
443
541
  scores: allScores[0],
542
+ isSummary: false,
444
543
  };
445
544
  }
446
545
  const starts = new Int32Array(totalCount);
@@ -453,7 +552,7 @@ export class BlockView {
453
552
  scores.set(allScores[i], offset);
454
553
  offset += allStarts[i].length;
455
554
  }
456
- return { starts, ends, scores };
555
+ return { starts, ends, scores, isSummary: false };
457
556
  }
458
557
  async readSummaryFeaturesAsArrays(blocks, opts = {}) {
459
558
  const { uncompressBufSize } = this;
@@ -518,6 +617,7 @@ export class BlockView {
518
617
  scores: new Float32Array(0),
519
618
  minScores: new Float32Array(0),
520
619
  maxScores: new Float32Array(0),
620
+ isSummary: true,
521
621
  };
522
622
  }
523
623
  if (allStarts.length === 1) {
@@ -527,6 +627,7 @@ export class BlockView {
527
627
  scores: allScores[0],
528
628
  minScores: allMinScores[0],
529
629
  maxScores: allMaxScores[0],
630
+ isSummary: true,
530
631
  };
531
632
  }
532
633
  const starts = new Int32Array(totalCount);
@@ -543,7 +644,14 @@ export class BlockView {
543
644
  maxScores.set(allMaxScores[i], offset);
544
645
  offset += allStarts[i].length;
545
646
  }
546
- return { starts, ends, scores, minScores, maxScores };
647
+ return {
648
+ starts,
649
+ ends,
650
+ scores,
651
+ minScores,
652
+ maxScores,
653
+ isSummary: true,
654
+ };
547
655
  }
548
656
  }
549
657
  //# sourceMappingURL=block-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"block-view.js","sourceRoot":"","sources":["../src/block-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block-view.js","sourceRoot":"","sources":["../src/block-view.ts"],"names":[],"mappings":"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"}
package/esm/types.d.ts CHANGED
@@ -63,6 +63,7 @@ export interface BigWigFeatureArrays {
63
63
  starts: Int32Array;
64
64
  ends: Int32Array;
65
65
  scores: Float32Array;
66
+ isSummary: false;
66
67
  }
67
68
  export interface SummaryFeatureArrays {
68
69
  starts: Int32Array;
@@ -70,4 +71,5 @@ export interface SummaryFeatureArrays {
70
71
  scores: Float32Array;
71
72
  minScores: Float32Array;
72
73
  maxScores: Float32Array;
74
+ isSummary: true;
73
75
  }
package/esm/unzip.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { BigWigFeatureArrays, SummaryFeatureArrays } from './wasm/inflate-wasm-inlined.js';
1
+ import type { BigWigFeatureArrays as WasmBigWigFeatureArrays, SummaryFeatureArrays as WasmSummaryFeatureArrays } from './wasm/inflate-wasm-inlined.js';
2
2
  export interface UnzipBatchResult {
3
3
  data: Uint8Array;
4
4
  offsets: number[];
@@ -10,9 +10,9 @@ export declare function unzipBatch(data: Uint8Array, blocks: {
10
10
  export declare function decompressAndParseBigWigBlocks(data: Uint8Array, blocks: {
11
11
  offset: number;
12
12
  length: number;
13
- }[], maxOutputSize: number, reqStart: number, reqEnd: number): Promise<BigWigFeatureArrays>;
13
+ }[], maxOutputSize: number, reqStart: number, reqEnd: number): Promise<WasmBigWigFeatureArrays>;
14
14
  export declare function decompressAndParseSummaryBlocks(data: Uint8Array, blocks: {
15
15
  offset: number;
16
16
  length: number;
17
- }[], maxOutputSize: number, reqChrId: number, reqStart: number, reqEnd: number): Promise<SummaryFeatureArrays>;
17
+ }[], maxOutputSize: number, reqChrId: number, reqStart: number, reqEnd: number): Promise<WasmSummaryFeatureArrays>;
18
18
  export type { BigWigFeatureArrays, SummaryFeatureArrays } from './types.ts';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gmod/bbi",
3
- "version": "8.0.1",
3
+ "version": "8.0.3",
4
4
  "description": "Parser for BigWig/BigBed files",
5
5
  "license": "MIT",
6
6
  "repository": "GMOD/bbi-js",
@@ -60,7 +60,7 @@
60
60
  "@types/node": "^24.10.0",
61
61
  "@typescript-eslint/eslint-plugin": "^8.50.0",
62
62
  "@typescript-eslint/parser": "^8.50.0",
63
- "@vitest/coverage-v8": "^4.0.15",
63
+ "@vitest/coverage-v8": "^4.0.16",
64
64
  "eslint": "^9.39.2",
65
65
  "eslint-plugin-import": "^2.31.0",
66
66
  "eslint-plugin-unicorn": "^62.0.0",
@@ -69,7 +69,7 @@
69
69
  "standard-changelog": "^7.0.1",
70
70
  "typescript": "^5.1.6",
71
71
  "typescript-eslint": "^8.50.0",
72
- "vitest": "^4.0.15",
72
+ "vitest": "^4.0.16",
73
73
  "webpack": "^5.104.0",
74
74
  "webpack-cli": "^6.0.1"
75
75
  },
package/src/bbi.ts CHANGED
@@ -393,6 +393,7 @@ export abstract class BBI {
393
393
  starts: new Int32Array(0),
394
394
  ends: new Int32Array(0),
395
395
  scores: new Float32Array(0),
396
+ isSummary: false as const,
396
397
  }
397
398
  }
398
399
 
@@ -414,7 +415,14 @@ export abstract class BBI {
414
415
  maxScores[i] = f.maxScore ?? 0
415
416
  }
416
417
 
417
- return { starts, ends, scores, minScores, maxScores }
418
+ return {
419
+ starts,
420
+ ends,
421
+ scores,
422
+ minScores,
423
+ maxScores,
424
+ isSummary: true as const,
425
+ }
418
426
  }
419
427
 
420
428
  const starts = new Int32Array(count)
@@ -428,6 +436,6 @@ export abstract class BBI {
428
436
  scores[i] = f.score ?? 0
429
437
  }
430
438
 
431
- return { starts, ends, scores }
439
+ return { starts, ends, scores, isSummary: false as const }
432
440
  }
433
441
  }
package/src/block-view.ts CHANGED
@@ -438,6 +438,126 @@ export class BlockView {
438
438
  return items
439
439
  }
440
440
 
441
+ private parseBigWigBlockAsArrays(
442
+ buffer: Uint8Array,
443
+ startOffset: number,
444
+ req?: CoordRequest,
445
+ ): { starts: Int32Array; ends: Int32Array; scores: Float32Array } {
446
+ const dataView = new DataView(
447
+ buffer.buffer,
448
+ buffer.byteOffset + startOffset,
449
+ buffer.length - startOffset,
450
+ )
451
+ const blockStart = dataView.getInt32(4, true)
452
+ const itemStep = dataView.getUint32(12, true)
453
+ const itemSpan = dataView.getUint32(16, true)
454
+ const blockType = dataView.getUint8(20)
455
+ const itemCount = dataView.getUint16(22, true)
456
+
457
+ const starts = new Int32Array(itemCount)
458
+ const ends = new Int32Array(itemCount)
459
+ const scores = new Float32Array(itemCount)
460
+
461
+ if (!req) {
462
+ switch (blockType) {
463
+ case 1: {
464
+ let offset = 24
465
+ for (let i = 0; i < itemCount; i++) {
466
+ starts[i] = dataView.getInt32(offset, true)
467
+ ends[i] = dataView.getInt32(offset + 4, true)
468
+ scores[i] = dataView.getFloat32(offset + 8, true)
469
+ offset += 12
470
+ }
471
+ return { starts, ends, scores }
472
+ }
473
+ case 2: {
474
+ let offset = 24
475
+ for (let i = 0; i < itemCount; i++) {
476
+ const start = dataView.getInt32(offset, true)
477
+ starts[i] = start
478
+ ends[i] = start + itemSpan
479
+ scores[i] = dataView.getFloat32(offset + 4, true)
480
+ offset += 8
481
+ }
482
+ return { starts, ends, scores }
483
+ }
484
+ case 3: {
485
+ let offset = 24
486
+ for (let i = 0; i < itemCount; i++) {
487
+ const start = blockStart + i * itemStep
488
+ starts[i] = start
489
+ ends[i] = start + itemSpan
490
+ scores[i] = dataView.getFloat32(offset, true)
491
+ offset += 4
492
+ }
493
+ return { starts, ends, scores }
494
+ }
495
+ }
496
+ return { starts, ends, scores }
497
+ }
498
+
499
+ const reqStart = req.start
500
+ const reqEnd = req.end
501
+ let idx = 0
502
+
503
+ switch (blockType) {
504
+ case 1: {
505
+ let offset = 24
506
+ for (let i = 0; i < itemCount; i++) {
507
+ const start = dataView.getInt32(offset, true)
508
+ const end = dataView.getInt32(offset + 4, true)
509
+ if (start < reqEnd && end >= reqStart) {
510
+ starts[idx] = start
511
+ ends[idx] = end
512
+ scores[idx] = dataView.getFloat32(offset + 8, true)
513
+ idx++
514
+ }
515
+ offset += 12
516
+ }
517
+ break
518
+ }
519
+ case 2: {
520
+ let offset = 24
521
+ for (let i = 0; i < itemCount; i++) {
522
+ const start = dataView.getInt32(offset, true)
523
+ const end = start + itemSpan
524
+ if (start < reqEnd && end >= reqStart) {
525
+ starts[idx] = start
526
+ ends[idx] = end
527
+ scores[idx] = dataView.getFloat32(offset + 4, true)
528
+ idx++
529
+ }
530
+ offset += 8
531
+ }
532
+ break
533
+ }
534
+ case 3: {
535
+ let offset = 24
536
+ for (let i = 0; i < itemCount; i++) {
537
+ const start = blockStart + i * itemStep
538
+ const end = start + itemSpan
539
+ if (start < reqEnd && end >= reqStart) {
540
+ starts[idx] = start
541
+ ends[idx] = end
542
+ scores[idx] = dataView.getFloat32(offset, true)
543
+ idx++
544
+ }
545
+ offset += 4
546
+ }
547
+ break
548
+ }
549
+ }
550
+
551
+ if (idx < itemCount) {
552
+ return {
553
+ starts: starts.subarray(0, idx),
554
+ ends: ends.subarray(0, idx),
555
+ scores: scores.subarray(0, idx),
556
+ }
557
+ }
558
+ return { starts, ends, scores }
559
+ }
560
+
441
561
  public async readFeatures(
442
562
  observer: Observer<Feature[]>,
443
563
  blocks: { offset: number; length: number }[],
@@ -564,21 +684,12 @@ export class BlockView {
564
684
  block.offset,
565
685
  block.offset + block.length,
566
686
  )
567
- const features = this.parseBigWigBlock(blockData, 0, request)
568
- if (features.length > 0) {
569
- const starts = new Int32Array(features.length)
570
- const ends = new Int32Array(features.length)
571
- const scores = new Float32Array(features.length)
572
- for (let i = 0; i < features.length; i++) {
573
- const f = features[i]!
574
- starts[i] = f.start
575
- ends[i] = f.end
576
- scores[i] = f.score
577
- }
578
- allStarts.push(starts)
579
- allEnds.push(ends)
580
- allScores.push(scores)
581
- totalCount += features.length
687
+ const result = this.parseBigWigBlockAsArrays(blockData, 0, request)
688
+ if (result.starts.length > 0) {
689
+ allStarts.push(result.starts)
690
+ allEnds.push(result.ends)
691
+ allScores.push(result.scores)
692
+ totalCount += result.starts.length
582
693
  }
583
694
  }
584
695
  }
@@ -590,6 +701,7 @@ export class BlockView {
590
701
  starts: new Int32Array(0),
591
702
  ends: new Int32Array(0),
592
703
  scores: new Float32Array(0),
704
+ isSummary: false as const,
593
705
  }
594
706
  }
595
707
 
@@ -598,6 +710,7 @@ export class BlockView {
598
710
  starts: allStarts[0]!,
599
711
  ends: allEnds[0]!,
600
712
  scores: allScores[0]!,
713
+ isSummary: false as const,
601
714
  }
602
715
  }
603
716
 
@@ -612,7 +725,7 @@ export class BlockView {
612
725
  offset += allStarts[i]!.length
613
726
  }
614
727
 
615
- return { starts, ends, scores }
728
+ return { starts, ends, scores, isSummary: false as const }
616
729
  }
617
730
 
618
731
  public async readSummaryFeaturesAsArrays(
@@ -701,6 +814,7 @@ export class BlockView {
701
814
  scores: new Float32Array(0),
702
815
  minScores: new Float32Array(0),
703
816
  maxScores: new Float32Array(0),
817
+ isSummary: true as const,
704
818
  }
705
819
  }
706
820
 
@@ -711,6 +825,7 @@ export class BlockView {
711
825
  scores: allScores[0]!,
712
826
  minScores: allMinScores[0]!,
713
827
  maxScores: allMaxScores[0]!,
828
+ isSummary: true as const,
714
829
  }
715
830
  }
716
831
 
@@ -729,6 +844,13 @@ export class BlockView {
729
844
  offset += allStarts[i]!.length
730
845
  }
731
846
 
732
- return { starts, ends, scores, minScores, maxScores }
847
+ return {
848
+ starts,
849
+ ends,
850
+ scores,
851
+ minScores,
852
+ maxScores,
853
+ isSummary: true as const,
854
+ }
733
855
  }
734
856
  }
package/src/types.ts CHANGED
@@ -72,6 +72,7 @@ export interface BigWigFeatureArrays {
72
72
  starts: Int32Array
73
73
  ends: Int32Array
74
74
  scores: Float32Array
75
+ isSummary: false
75
76
  }
76
77
 
77
78
  export interface SummaryFeatureArrays {
@@ -80,4 +81,5 @@ export interface SummaryFeatureArrays {
80
81
  scores: Float32Array
81
82
  minScores: Float32Array
82
83
  maxScores: Float32Array
84
+ isSummary: true
83
85
  }
package/src/unzip.ts CHANGED
@@ -5,8 +5,8 @@ import {
5
5
  } from './wasm/inflate-wasm-inlined.js'
6
6
 
7
7
  import type {
8
- BigWigFeatureArrays,
9
- SummaryFeatureArrays,
8
+ BigWigFeatureArrays as WasmBigWigFeatureArrays,
9
+ SummaryFeatureArrays as WasmSummaryFeatureArrays,
10
10
  } from './wasm/inflate-wasm-inlined.js'
11
11
 
12
12
  export interface UnzipBatchResult {
@@ -37,7 +37,7 @@ export async function decompressAndParseBigWigBlocks(
37
37
  maxOutputSize: number,
38
38
  reqStart: number,
39
39
  reqEnd: number,
40
- ): Promise<BigWigFeatureArrays> {
40
+ ): Promise<WasmBigWigFeatureArrays> {
41
41
  const inputOffsets = new Uint32Array(blocks.length)
42
42
  const inputLengths = new Uint32Array(blocks.length)
43
43
 
@@ -64,7 +64,7 @@ export async function decompressAndParseSummaryBlocks(
64
64
  reqChrId: number,
65
65
  reqStart: number,
66
66
  reqEnd: number,
67
- ): Promise<SummaryFeatureArrays> {
67
+ ): Promise<WasmSummaryFeatureArrays> {
68
68
  const inputOffsets = new Uint32Array(blocks.length)
69
69
  const inputLengths = new Uint32Array(blocks.length)
70
70
 
@@ -29,6 +29,15 @@ export interface SummaryFeatureArrays {
29
29
  maxScores: Float32Array
30
30
  }
31
31
 
32
+ // Discriminated union types for consumers
33
+ export interface BigWigFeatureArraysWithFlag extends BigWigFeatureArrays {
34
+ isSummary: false
35
+ }
36
+
37
+ export interface SummaryFeatureArraysWithFlag extends SummaryFeatureArrays {
38
+ isSummary: true
39
+ }
40
+
32
41
  export function decompressAndParseBigWig(
33
42
  inputs: Uint8Array,
34
43
  inputOffsets: Uint32Array,