@databio/gtars 0.7.1 → 0.8.1

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/gtars_js.d.ts CHANGED
@@ -57,6 +57,70 @@ export class GeneModel {
57
57
  constructor(genes: any, exons: any, three_utr: any, five_utr: any);
58
58
  }
59
59
 
60
+ export class GenomicDistAnnotation {
61
+ private constructor();
62
+ free(): void;
63
+ [Symbol.dispose](): void;
64
+ /**
65
+ * Load a GenomicDistAnnotation from GDA binary bytes.
66
+ */
67
+ static fromBin(bytes: Uint8Array): GenomicDistAnnotation;
68
+ /**
69
+ * Get the gene model as a JsGeneModel.
70
+ *
71
+ * Note: this clones the gene model data since WASM ownership requires it.
72
+ */
73
+ geneModel(): GeneModel;
74
+ /**
75
+ * Build a PartitionList from the gene model and provided chrom sizes.
76
+ *
77
+ * `chrom_sizes` should be a JS object like `{"chr1": 249250621, ...}`.
78
+ */
79
+ partitionList(core_prom_size: number, prox_prom_size: number, chrom_sizes: any): PartitionList;
80
+ /**
81
+ * Derive a TssIndex from gene starts + strand.
82
+ *
83
+ * Plus/Unstranded genes → TSS at start, Minus genes → TSS at end.
84
+ */
85
+ tssIndex(): TssIndex;
86
+ }
87
+
88
+ /**
89
+ * A LOLA region database for enrichment testing.
90
+ *
91
+ * Built in-memory from region data — no filesystem needed.
92
+ */
93
+ export class LolaRegionDB {
94
+ free(): void;
95
+ [Symbol.dispose](): void;
96
+ /**
97
+ * Extract region sets by 0-based indices as a RegionSetList.
98
+ *
99
+ * @param indices - Optional array of 0-based indices. If omitted, returns all.
100
+ */
101
+ getRegionSets(indices?: Uint32Array | null): RegionSetList;
102
+ /**
103
+ * List region set filenames.
104
+ */
105
+ listRegionSets(): string[];
106
+ /**
107
+ * Create a LolaRegionDB from an array of {regions, name} objects.
108
+ *
109
+ * @param entries - Array of { regions: [["chr1", 100, 200], ...], name: "filename.bed" }
110
+ */
111
+ constructor(entries: any);
112
+ /**
113
+ * Collection-level annotations from the RegionDB.
114
+ *
115
+ * @returns Array of objects with keys: collectionname, collector, date, source, description
116
+ */
117
+ readonly collectionAnno: any;
118
+ /**
119
+ * Number of region sets in this database.
120
+ */
121
+ readonly numRegionSets: number;
122
+ }
123
+
60
124
  export class Overlapper {
61
125
  free(): void;
62
126
  [Symbol.dispose](): void;
@@ -92,13 +156,20 @@ export class RegionSet {
92
156
  calcWidths(): Uint32Array;
93
157
  chromosomeStatistics(): any;
94
158
  concat(other: RegionSet): RegionSet;
159
+ disjoin(): RegionSet;
160
+ flank(width: number, use_start: boolean, both: boolean): RegionSet;
161
+ gaps(): RegionSet;
162
+ intersect(other: RegionSet): RegionSet;
95
163
  jaccard(other: RegionSet): number;
164
+ narrow(start?: number | null, end?: number | null, width?: number | null): RegionSet;
96
165
  constructor(regions: any);
97
166
  pintersect(other: RegionSet): RegionSet;
98
167
  promoters(upstream: number, downstream: number): RegionSet;
99
168
  reduce(): RegionSet;
100
169
  regionDistribution(n_bins: number): any;
170
+ resize(width: number, fix: string): RegionSet;
101
171
  setdiff(other: RegionSet): RegionSet;
172
+ shift(offset: bigint): RegionSet;
102
173
  trim(chrom_sizes: any): RegionSet;
103
174
  union(other: RegionSet): RegionSet;
104
175
  readonly classify: BedClassificationOutput;
@@ -109,9 +180,95 @@ export class RegionSet {
109
180
  readonly numberOfRegions: number;
110
181
  }
111
182
 
183
+ /**
184
+ * A collection of RegionSets — the gtars equivalent of GRangesList.
185
+ */
186
+ export class RegionSetList {
187
+ free(): void;
188
+ [Symbol.dispose](): void;
189
+ /**
190
+ * Add a RegionSet to this list, with an optional name.
191
+ */
192
+ add(set: RegionSet, name?: string | null): void;
193
+ /**
194
+ * Compute all N union-except results in O(n) via prefix/suffix.
195
+ * Returns { union: RegionSet, excepts: RegionSet[] }.
196
+ */
197
+ bulkUnionExcept(): any;
198
+ /**
199
+ * Flatten all region sets into a single RegionSet (no merging).
200
+ */
201
+ concat(): RegionSet;
202
+ /**
203
+ * Build a RegionSetList directly from arrays of BED entries.
204
+ *
205
+ * @param entries - Array of arrays: [[[chr, start, end, rest], ...], ...]
206
+ * @param names - Optional array of names, one per set
207
+ */
208
+ static fromEntries(entries: any, names: any): RegionSetList;
209
+ /**
210
+ * Get a region set by 0-based index.
211
+ */
212
+ get(index: number): RegionSet;
213
+ /**
214
+ * Intersection of all sets.
215
+ */
216
+ intersectAll(): RegionSet;
217
+ /**
218
+ * Jaccard similarity between two sets by index.
219
+ */
220
+ jaccardAt(i: number, j: number): number;
221
+ /**
222
+ * Create an empty RegionSetList. Use `add()` to populate it.
223
+ */
224
+ constructor();
225
+ /**
226
+ * Compute pairwise Jaccard similarity for all pairs of region sets.
227
+ *
228
+ * Returns { matrix: number[][], names: string[] | null }.
229
+ */
230
+ pairwiseJaccard(): any;
231
+ /**
232
+ * Number of overlapping regions between two sets by index.
233
+ */
234
+ pintersectCount(i: number, j: number): number;
235
+ /**
236
+ * Number of regions in the set at the given index.
237
+ */
238
+ regionCount(index: number): number;
239
+ /**
240
+ * Setdiff of two sets by index (set[i] minus set[j]).
241
+ */
242
+ setdiffAt(i: number, j: number): RegionSet;
243
+ /**
244
+ * Union of all sets.
245
+ */
246
+ unionAll(): RegionSet;
247
+ /**
248
+ * Union of two sets by index.
249
+ */
250
+ unionAt(i: number, j: number): RegionSet;
251
+ /**
252
+ * Union of all sets except the one at the given index.
253
+ */
254
+ unionExcept(skip: number): RegionSet;
255
+ /**
256
+ * Number of region sets in this list.
257
+ */
258
+ readonly length: number;
259
+ /**
260
+ * Get the names of the region sets, or null if unnamed.
261
+ */
262
+ readonly names: any;
263
+ }
264
+
112
265
  export class SignalMatrix {
113
266
  free(): void;
114
267
  [Symbol.dispose](): void;
268
+ /**
269
+ * Load a SignalMatrix from packed binary bytes.
270
+ */
271
+ static fromBin(bytes: Uint8Array): SignalMatrix;
115
272
  /**
116
273
  * Construct a SignalMatrix from JS data.
117
274
  *
@@ -206,6 +363,15 @@ export function calcSummarySignal(region_set: RegionSet, signal_matrix: SignalMa
206
363
  */
207
364
  export function canonicalizeJsonString(json_str: string): string;
208
365
 
366
+ /**
367
+ * Check whether the universe is appropriate for the given user sets.
368
+ *
369
+ * @param userSets - Array of arrays of [chr, start, end] tuples
370
+ * @param universe - Array of [chr, start, end] tuples
371
+ * @returns Object with column arrays: userSet, totalRegions, regionsInUniverse, coverage, manyToMany, warnings
372
+ */
373
+ export function checkUniverseAppropriateness(user_sets: any, universe_regions: any): any;
374
+
209
375
  /**
210
376
  * Compute the MD5 digest of a string.
211
377
  *
@@ -354,7 +520,17 @@ export function fastaHasherProgress(handle: number): any;
354
520
  */
355
521
  export function fastaHasherUpdate(handle: number, chunk: Uint8Array): void;
356
522
 
357
- export function greet(name: string): void;
523
+ /**
524
+ * Run LOLA enrichment analysis.
525
+ *
526
+ * @param userSets - Array of arrays of [chr, start, end] tuples
527
+ * @param universe - Array of [chr, start, end] tuples
528
+ * @param regionDb - A LolaRegionDB object
529
+ * @param minOverlap - Minimum bp overlap (default 1)
530
+ * @param direction - "enrichment" or "depletion" (default "enrichment")
531
+ * @returns Object with column arrays: userSet, dbSet, pValueLog, oddsRatio, support, etc.
532
+ */
533
+ export function runLOLA(user_sets: any, universe_regions: any, region_db: LolaRegionDB, min_overlap?: number | null, direction?: string | null): any;
358
534
 
359
535
  /**
360
536
  * Compute a sequence digest (sha512t24u) from raw sequence data.
@@ -398,6 +574,7 @@ export interface InitOutput {
398
574
  readonly __wbg_consensusbuilder_free: (a: number, b: number) => void;
399
575
  readonly __wbg_regiondistribution_free: (a: number, b: number) => void;
400
576
  readonly __wbg_regionset_free: (a: number, b: number) => void;
577
+ readonly __wbg_regionsetlist_free: (a: number, b: number) => void;
401
578
  readonly bedclassificationoutput_bed_compliance: (a: number) => [number, number];
402
579
  readonly bedclassificationoutput_compliant_columns: (a: number) => number;
403
580
  readonly bedclassificationoutput_data_format: (a: number) => [number, number];
@@ -416,12 +593,17 @@ export interface InitOutput {
416
593
  readonly regionset_calcNeighborDistances: (a: number) => [number, number, number];
417
594
  readonly regionset_calcWidths: (a: number) => [number, number];
418
595
  readonly regionset_chromosomeStatistics: (a: number) => [number, number, number];
419
- readonly regionset_classify: (a: number) => number;
596
+ readonly regionset_classify: (a: number) => [number, number, number];
420
597
  readonly regionset_concat: (a: number, b: number) => number;
598
+ readonly regionset_disjoin: (a: number) => number;
421
599
  readonly regionset_firstRegion: (a: number) => [number, number];
600
+ readonly regionset_flank: (a: number, b: number, c: number, d: number) => number;
601
+ readonly regionset_gaps: (a: number) => number;
422
602
  readonly regionset_identifier: (a: number) => [number, number];
603
+ readonly regionset_intersect: (a: number, b: number) => number;
423
604
  readonly regionset_jaccard: (a: number, b: number) => number;
424
605
  readonly regionset_meanRegionWidth: (a: number) => number;
606
+ readonly regionset_narrow: (a: number, b: number, c: number, d: number) => number;
425
607
  readonly regionset_new: (a: any) => [number, number, number];
426
608
  readonly regionset_nucleotidesLength: (a: number) => number;
427
609
  readonly regionset_numberOfRegions: (a: number) => number;
@@ -429,13 +611,38 @@ export interface InitOutput {
429
611
  readonly regionset_promoters: (a: number, b: number, c: number) => number;
430
612
  readonly regionset_reduce: (a: number) => number;
431
613
  readonly regionset_regionDistribution: (a: number, b: number) => [number, number, number];
614
+ readonly regionset_resize: (a: number, b: number, c: number, d: number) => number;
432
615
  readonly regionset_setdiff: (a: number, b: number) => number;
616
+ readonly regionset_shift: (a: number, b: bigint) => number;
433
617
  readonly regionset_trim: (a: number, b: any) => [number, number, number];
434
618
  readonly regionset_union: (a: number, b: number) => number;
619
+ readonly regionsetlist_add: (a: number, b: number, c: number, d: number) => void;
620
+ readonly regionsetlist_bulkUnionExcept: (a: number) => [number, number, number];
621
+ readonly regionsetlist_concat: (a: number) => number;
622
+ readonly regionsetlist_fromEntries: (a: any, b: any) => [number, number, number];
623
+ readonly regionsetlist_get: (a: number, b: number) => [number, number, number];
624
+ readonly regionsetlist_intersectAll: (a: number) => [number, number, number];
625
+ readonly regionsetlist_jaccardAt: (a: number, b: number, c: number) => [number, number, number];
626
+ readonly regionsetlist_length: (a: number) => number;
627
+ readonly regionsetlist_names: (a: number) => any;
628
+ readonly regionsetlist_new: () => number;
629
+ readonly regionsetlist_pairwiseJaccard: (a: number) => [number, number, number];
630
+ readonly regionsetlist_pintersectCount: (a: number, b: number, c: number) => [number, number, number];
631
+ readonly regionsetlist_regionCount: (a: number, b: number) => [number, number, number];
632
+ readonly regionsetlist_setdiffAt: (a: number, b: number, c: number) => [number, number, number];
633
+ readonly regionsetlist_unionAll: (a: number) => [number, number, number];
634
+ readonly regionsetlist_unionAt: (a: number, b: number, c: number) => [number, number, number];
635
+ readonly regionsetlist_unionExcept: (a: number, b: number) => [number, number, number];
435
636
  readonly chromosomestatistics_minimum_region_length: (a: number) => number;
436
- readonly __wbg_signalmatrix_free: (a: number, b: number) => void;
437
- readonly calcSummarySignal: (a: number, b: number) => [number, number, number];
438
- readonly signalmatrix_new: (a: any, b: any, c: number, d: number, e: number, f: number) => [number, number, number];
637
+ readonly __wbg_lolaregiondb_free: (a: number, b: number) => void;
638
+ readonly checkUniverseAppropriateness: (a: any, b: any) => [number, number, number];
639
+ readonly lolaregiondb_collectionAnno: (a: number) => [number, number, number];
640
+ readonly lolaregiondb_getRegionSets: (a: number, b: number, c: number) => number;
641
+ readonly lolaregiondb_listRegionSets: (a: number) => [number, number];
642
+ readonly lolaregiondb_new: (a: any) => [number, number, number];
643
+ readonly lolaregiondb_numRegionSets: (a: number) => number;
644
+ readonly runLOLA: (a: any, b: any, c: number, d: number, e: number, f: number) => [number, number, number];
645
+ readonly __wbg_genomicdistannotation_free: (a: number, b: number) => void;
439
646
  readonly canonicalizeJsonString: (a: number, b: number) => [number, number, number, number];
440
647
  readonly computeMd5: (a: number, b: number) => [number, number];
441
648
  readonly computeSha512t24u: (a: number, b: number) => [number, number];
@@ -445,12 +652,12 @@ export interface InitOutput {
445
652
  readonly fastaHasherNew: () => number;
446
653
  readonly fastaHasherProgress: (a: number) => [number, number, number];
447
654
  readonly fastaHasherUpdate: (a: number, b: number, c: number) => [number, number];
655
+ readonly genomicdistannotation_fromBin: (a: number, b: number) => [number, number, number];
656
+ readonly genomicdistannotation_geneModel: (a: number) => number;
657
+ readonly genomicdistannotation_partitionList: (a: number, b: number, c: number, d: any) => [number, number, number];
658
+ readonly genomicdistannotation_tssIndex: (a: number) => [number, number, number];
448
659
  readonly sequenceDigest: (a: number, b: number) => [number, number];
449
660
  readonly sequenceMd5: (a: number, b: number) => [number, number];
450
- readonly __wbg_overlapper_free: (a: number, b: number) => void;
451
- readonly overlapper_find: (a: number, b: any) => [number, number, number];
452
- readonly overlapper_get_backend: (a: number) => [number, number];
453
- readonly overlapper_new: (a: any, b: number, c: number) => [number, number, number];
454
661
  readonly __wbg_genemodel_free: (a: number, b: number) => void;
455
662
  readonly __wbg_partitionlist_free: (a: number, b: number) => void;
456
663
  readonly __wbg_tssindex_free: (a: number, b: number) => void;
@@ -461,8 +668,15 @@ export interface InitOutput {
461
668
  readonly tssindex_calcFeatureDistances: (a: number, b: number) => [number, number, number];
462
669
  readonly tssindex_calcTssDistances: (a: number, b: number) => [number, number, number];
463
670
  readonly tssindex_new: (a: number) => [number, number, number];
671
+ readonly __wbg_signalmatrix_free: (a: number, b: number) => void;
672
+ readonly calcSummarySignal: (a: number, b: number) => [number, number, number];
673
+ readonly signalmatrix_fromBin: (a: number, b: number) => [number, number, number];
674
+ readonly signalmatrix_new: (a: any, b: any, c: number, d: number, e: number, f: number) => [number, number, number];
675
+ readonly __wbg_overlapper_free: (a: number, b: number) => void;
676
+ readonly overlapper_find: (a: number, b: any) => [number, number, number];
677
+ readonly overlapper_get_backend: (a: number) => [number, number];
678
+ readonly overlapper_new: (a: any, b: number, c: number) => [number, number, number];
464
679
  readonly __wbg_tokenizer_free: (a: number, b: number) => void;
465
- readonly greet: (a: number, b: number) => void;
466
680
  readonly tokenizer_bosToken: (a: number) => [number, number];
467
681
  readonly tokenizer_bosTokenId: (a: number) => number;
468
682
  readonly tokenizer_clsToken: (a: number) => [number, number];
@@ -492,6 +706,7 @@ export interface InitOutput {
492
706
  readonly __wbindgen_externrefs: WebAssembly.Table;
493
707
  readonly __wbindgen_free: (a: number, b: number, c: number) => void;
494
708
  readonly __externref_table_dealloc: (a: number) => void;
709
+ readonly __externref_drop_slice: (a: number, b: number) => void;
495
710
  readonly __wbindgen_start: () => void;
496
711
  }
497
712
 
package/gtars_js.js CHANGED
@@ -193,6 +193,13 @@ export class ConsensusBuilder {
193
193
  if (Symbol.dispose) ConsensusBuilder.prototype[Symbol.dispose] = ConsensusBuilder.prototype.free;
194
194
 
195
195
  export class GeneModel {
196
+ static __wrap(ptr) {
197
+ ptr = ptr >>> 0;
198
+ const obj = Object.create(GeneModel.prototype);
199
+ obj.__wbg_ptr = ptr;
200
+ GeneModelFinalization.register(obj, obj.__wbg_ptr, obj);
201
+ return obj;
202
+ }
196
203
  __destroy_into_raw() {
197
204
  const ptr = this.__wbg_ptr;
198
205
  this.__wbg_ptr = 0;
@@ -225,6 +232,158 @@ export class GeneModel {
225
232
  }
226
233
  if (Symbol.dispose) GeneModel.prototype[Symbol.dispose] = GeneModel.prototype.free;
227
234
 
235
+ export class GenomicDistAnnotation {
236
+ static __wrap(ptr) {
237
+ ptr = ptr >>> 0;
238
+ const obj = Object.create(GenomicDistAnnotation.prototype);
239
+ obj.__wbg_ptr = ptr;
240
+ GenomicDistAnnotationFinalization.register(obj, obj.__wbg_ptr, obj);
241
+ return obj;
242
+ }
243
+ __destroy_into_raw() {
244
+ const ptr = this.__wbg_ptr;
245
+ this.__wbg_ptr = 0;
246
+ GenomicDistAnnotationFinalization.unregister(this);
247
+ return ptr;
248
+ }
249
+ free() {
250
+ const ptr = this.__destroy_into_raw();
251
+ wasm.__wbg_genomicdistannotation_free(ptr, 0);
252
+ }
253
+ /**
254
+ * Load a GenomicDistAnnotation from GDA binary bytes.
255
+ * @param {Uint8Array} bytes
256
+ * @returns {GenomicDistAnnotation}
257
+ */
258
+ static fromBin(bytes) {
259
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
260
+ const len0 = WASM_VECTOR_LEN;
261
+ const ret = wasm.genomicdistannotation_fromBin(ptr0, len0);
262
+ if (ret[2]) {
263
+ throw takeFromExternrefTable0(ret[1]);
264
+ }
265
+ return GenomicDistAnnotation.__wrap(ret[0]);
266
+ }
267
+ /**
268
+ * Get the gene model as a JsGeneModel.
269
+ *
270
+ * Note: this clones the gene model data since WASM ownership requires it.
271
+ * @returns {GeneModel}
272
+ */
273
+ geneModel() {
274
+ const ret = wasm.genomicdistannotation_geneModel(this.__wbg_ptr);
275
+ return GeneModel.__wrap(ret);
276
+ }
277
+ /**
278
+ * Build a PartitionList from the gene model and provided chrom sizes.
279
+ *
280
+ * `chrom_sizes` should be a JS object like `{"chr1": 249250621, ...}`.
281
+ * @param {number} core_prom_size
282
+ * @param {number} prox_prom_size
283
+ * @param {any} chrom_sizes
284
+ * @returns {PartitionList}
285
+ */
286
+ partitionList(core_prom_size, prox_prom_size, chrom_sizes) {
287
+ const ret = wasm.genomicdistannotation_partitionList(this.__wbg_ptr, core_prom_size, prox_prom_size, chrom_sizes);
288
+ if (ret[2]) {
289
+ throw takeFromExternrefTable0(ret[1]);
290
+ }
291
+ return PartitionList.__wrap(ret[0]);
292
+ }
293
+ /**
294
+ * Derive a TssIndex from gene starts + strand.
295
+ *
296
+ * Plus/Unstranded genes → TSS at start, Minus genes → TSS at end.
297
+ * @returns {TssIndex}
298
+ */
299
+ tssIndex() {
300
+ const ret = wasm.genomicdistannotation_tssIndex(this.__wbg_ptr);
301
+ if (ret[2]) {
302
+ throw takeFromExternrefTable0(ret[1]);
303
+ }
304
+ return TssIndex.__wrap(ret[0]);
305
+ }
306
+ }
307
+ if (Symbol.dispose) GenomicDistAnnotation.prototype[Symbol.dispose] = GenomicDistAnnotation.prototype.free;
308
+
309
+ /**
310
+ * A LOLA region database for enrichment testing.
311
+ *
312
+ * Built in-memory from region data — no filesystem needed.
313
+ */
314
+ export class LolaRegionDB {
315
+ __destroy_into_raw() {
316
+ const ptr = this.__wbg_ptr;
317
+ this.__wbg_ptr = 0;
318
+ LolaRegionDBFinalization.unregister(this);
319
+ return ptr;
320
+ }
321
+ free() {
322
+ const ptr = this.__destroy_into_raw();
323
+ wasm.__wbg_lolaregiondb_free(ptr, 0);
324
+ }
325
+ /**
326
+ * Collection-level annotations from the RegionDB.
327
+ *
328
+ * @returns Array of objects with keys: collectionname, collector, date, source, description
329
+ * @returns {any}
330
+ */
331
+ get collectionAnno() {
332
+ const ret = wasm.lolaregiondb_collectionAnno(this.__wbg_ptr);
333
+ if (ret[2]) {
334
+ throw takeFromExternrefTable0(ret[1]);
335
+ }
336
+ return takeFromExternrefTable0(ret[0]);
337
+ }
338
+ /**
339
+ * Extract region sets by 0-based indices as a RegionSetList.
340
+ *
341
+ * @param indices - Optional array of 0-based indices. If omitted, returns all.
342
+ * @param {Uint32Array | null} [indices]
343
+ * @returns {RegionSetList}
344
+ */
345
+ getRegionSets(indices) {
346
+ var ptr0 = isLikeNone(indices) ? 0 : passArray32ToWasm0(indices, wasm.__wbindgen_malloc);
347
+ var len0 = WASM_VECTOR_LEN;
348
+ const ret = wasm.lolaregiondb_getRegionSets(this.__wbg_ptr, ptr0, len0);
349
+ return RegionSetList.__wrap(ret);
350
+ }
351
+ /**
352
+ * List region set filenames.
353
+ * @returns {string[]}
354
+ */
355
+ listRegionSets() {
356
+ const ret = wasm.lolaregiondb_listRegionSets(this.__wbg_ptr);
357
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
358
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
359
+ return v1;
360
+ }
361
+ /**
362
+ * Create a LolaRegionDB from an array of {regions, name} objects.
363
+ *
364
+ * @param entries - Array of { regions: [["chr1", 100, 200], ...], name: "filename.bed" }
365
+ * @param {any} entries
366
+ */
367
+ constructor(entries) {
368
+ const ret = wasm.lolaregiondb_new(entries);
369
+ if (ret[2]) {
370
+ throw takeFromExternrefTable0(ret[1]);
371
+ }
372
+ this.__wbg_ptr = ret[0] >>> 0;
373
+ LolaRegionDBFinalization.register(this, this.__wbg_ptr, this);
374
+ return this;
375
+ }
376
+ /**
377
+ * Number of region sets in this database.
378
+ * @returns {number}
379
+ */
380
+ get numRegionSets() {
381
+ const ret = wasm.lolaregiondb_numRegionSets(this.__wbg_ptr);
382
+ return ret >>> 0;
383
+ }
384
+ }
385
+ if (Symbol.dispose) LolaRegionDB.prototype[Symbol.dispose] = LolaRegionDB.prototype.free;
386
+
228
387
  export class Overlapper {
229
388
  __destroy_into_raw() {
230
389
  const ptr = this.__wbg_ptr;
@@ -396,7 +555,10 @@ export class RegionSet {
396
555
  */
397
556
  get classify() {
398
557
  const ret = wasm.regionset_classify(this.__wbg_ptr);
399
- return BedClassificationOutput.__wrap(ret);
558
+ if (ret[2]) {
559
+ throw takeFromExternrefTable0(ret[1]);
560
+ }
561
+ return BedClassificationOutput.__wrap(ret[0]);
400
562
  }
401
563
  /**
402
564
  * @param {RegionSet} other
@@ -407,6 +569,13 @@ export class RegionSet {
407
569
  const ret = wasm.regionset_concat(this.__wbg_ptr, other.__wbg_ptr);
408
570
  return RegionSet.__wrap(ret);
409
571
  }
572
+ /**
573
+ * @returns {RegionSet}
574
+ */
575
+ disjoin() {
576
+ const ret = wasm.regionset_disjoin(this.__wbg_ptr);
577
+ return RegionSet.__wrap(ret);
578
+ }
410
579
  /**
411
580
  * @returns {string}
412
581
  */
@@ -422,6 +591,23 @@ export class RegionSet {
422
591
  wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
423
592
  }
424
593
  }
594
+ /**
595
+ * @param {number} width
596
+ * @param {boolean} use_start
597
+ * @param {boolean} both
598
+ * @returns {RegionSet}
599
+ */
600
+ flank(width, use_start, both) {
601
+ const ret = wasm.regionset_flank(this.__wbg_ptr, width, use_start, both);
602
+ return RegionSet.__wrap(ret);
603
+ }
604
+ /**
605
+ * @returns {RegionSet}
606
+ */
607
+ gaps() {
608
+ const ret = wasm.regionset_gaps(this.__wbg_ptr);
609
+ return RegionSet.__wrap(ret);
610
+ }
425
611
  /**
426
612
  * @returns {string}
427
613
  */
@@ -437,6 +623,15 @@ export class RegionSet {
437
623
  wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
438
624
  }
439
625
  }
626
+ /**
627
+ * @param {RegionSet} other
628
+ * @returns {RegionSet}
629
+ */
630
+ intersect(other) {
631
+ _assertClass(other, RegionSet);
632
+ const ret = wasm.regionset_intersect(this.__wbg_ptr, other.__wbg_ptr);
633
+ return RegionSet.__wrap(ret);
634
+ }
440
635
  /**
441
636
  * @param {RegionSet} other
442
637
  * @returns {number}
@@ -453,6 +648,16 @@ export class RegionSet {
453
648
  const ret = wasm.regionset_meanRegionWidth(this.__wbg_ptr);
454
649
  return ret;
455
650
  }
651
+ /**
652
+ * @param {number | null} [start]
653
+ * @param {number | null} [end]
654
+ * @param {number | null} [width]
655
+ * @returns {RegionSet}
656
+ */
657
+ narrow(start, end, width) {
658
+ const ret = wasm.regionset_narrow(this.__wbg_ptr, isLikeNone(start) ? 0x100000001 : (start) >>> 0, isLikeNone(end) ? 0x100000001 : (end) >>> 0, isLikeNone(width) ? 0x100000001 : (width) >>> 0);
659
+ return RegionSet.__wrap(ret);
660
+ }
456
661
  /**
457
662
  * @param {any} regions
458
663
  */
@@ -515,6 +720,17 @@ export class RegionSet {
515
720
  }
516
721
  return takeFromExternrefTable0(ret[0]);
517
722
  }
723
+ /**
724
+ * @param {number} width
725
+ * @param {string} fix
726
+ * @returns {RegionSet}
727
+ */
728
+ resize(width, fix) {
729
+ const ptr0 = passStringToWasm0(fix, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
730
+ const len0 = WASM_VECTOR_LEN;
731
+ const ret = wasm.regionset_resize(this.__wbg_ptr, width, ptr0, len0);
732
+ return RegionSet.__wrap(ret);
733
+ }
518
734
  /**
519
735
  * @param {RegionSet} other
520
736
  * @returns {RegionSet}
@@ -524,6 +740,14 @@ export class RegionSet {
524
740
  const ret = wasm.regionset_setdiff(this.__wbg_ptr, other.__wbg_ptr);
525
741
  return RegionSet.__wrap(ret);
526
742
  }
743
+ /**
744
+ * @param {bigint} offset
745
+ * @returns {RegionSet}
746
+ */
747
+ shift(offset) {
748
+ const ret = wasm.regionset_shift(this.__wbg_ptr, offset);
749
+ return RegionSet.__wrap(ret);
750
+ }
527
751
  /**
528
752
  * @param {any} chrom_sizes
529
753
  * @returns {RegionSet}
@@ -547,7 +771,233 @@ export class RegionSet {
547
771
  }
548
772
  if (Symbol.dispose) RegionSet.prototype[Symbol.dispose] = RegionSet.prototype.free;
549
773
 
774
+ /**
775
+ * A collection of RegionSets — the gtars equivalent of GRangesList.
776
+ */
777
+ export class RegionSetList {
778
+ static __wrap(ptr) {
779
+ ptr = ptr >>> 0;
780
+ const obj = Object.create(RegionSetList.prototype);
781
+ obj.__wbg_ptr = ptr;
782
+ RegionSetListFinalization.register(obj, obj.__wbg_ptr, obj);
783
+ return obj;
784
+ }
785
+ __destroy_into_raw() {
786
+ const ptr = this.__wbg_ptr;
787
+ this.__wbg_ptr = 0;
788
+ RegionSetListFinalization.unregister(this);
789
+ return ptr;
790
+ }
791
+ free() {
792
+ const ptr = this.__destroy_into_raw();
793
+ wasm.__wbg_regionsetlist_free(ptr, 0);
794
+ }
795
+ /**
796
+ * Add a RegionSet to this list, with an optional name.
797
+ * @param {RegionSet} set
798
+ * @param {string | null} [name]
799
+ */
800
+ add(set, name) {
801
+ _assertClass(set, RegionSet);
802
+ var ptr0 = isLikeNone(name) ? 0 : passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
803
+ var len0 = WASM_VECTOR_LEN;
804
+ wasm.regionsetlist_add(this.__wbg_ptr, set.__wbg_ptr, ptr0, len0);
805
+ }
806
+ /**
807
+ * Compute all N union-except results in O(n) via prefix/suffix.
808
+ * Returns { union: RegionSet, excepts: RegionSet[] }.
809
+ * @returns {any}
810
+ */
811
+ bulkUnionExcept() {
812
+ const ret = wasm.regionsetlist_bulkUnionExcept(this.__wbg_ptr);
813
+ if (ret[2]) {
814
+ throw takeFromExternrefTable0(ret[1]);
815
+ }
816
+ return takeFromExternrefTable0(ret[0]);
817
+ }
818
+ /**
819
+ * Flatten all region sets into a single RegionSet (no merging).
820
+ * @returns {RegionSet}
821
+ */
822
+ concat() {
823
+ const ret = wasm.regionsetlist_concat(this.__wbg_ptr);
824
+ return RegionSet.__wrap(ret);
825
+ }
826
+ /**
827
+ * Build a RegionSetList directly from arrays of BED entries.
828
+ *
829
+ * @param entries - Array of arrays: [[[chr, start, end, rest], ...], ...]
830
+ * @param names - Optional array of names, one per set
831
+ * @param {any} entries
832
+ * @param {any} names
833
+ * @returns {RegionSetList}
834
+ */
835
+ static fromEntries(entries, names) {
836
+ const ret = wasm.regionsetlist_fromEntries(entries, names);
837
+ if (ret[2]) {
838
+ throw takeFromExternrefTable0(ret[1]);
839
+ }
840
+ return RegionSetList.__wrap(ret[0]);
841
+ }
842
+ /**
843
+ * Get a region set by 0-based index.
844
+ * @param {number} index
845
+ * @returns {RegionSet}
846
+ */
847
+ get(index) {
848
+ const ret = wasm.regionsetlist_get(this.__wbg_ptr, index);
849
+ if (ret[2]) {
850
+ throw takeFromExternrefTable0(ret[1]);
851
+ }
852
+ return RegionSet.__wrap(ret[0]);
853
+ }
854
+ /**
855
+ * Intersection of all sets.
856
+ * @returns {RegionSet}
857
+ */
858
+ intersectAll() {
859
+ const ret = wasm.regionsetlist_intersectAll(this.__wbg_ptr);
860
+ if (ret[2]) {
861
+ throw takeFromExternrefTable0(ret[1]);
862
+ }
863
+ return RegionSet.__wrap(ret[0]);
864
+ }
865
+ /**
866
+ * Jaccard similarity between two sets by index.
867
+ * @param {number} i
868
+ * @param {number} j
869
+ * @returns {number}
870
+ */
871
+ jaccardAt(i, j) {
872
+ const ret = wasm.regionsetlist_jaccardAt(this.__wbg_ptr, i, j);
873
+ if (ret[2]) {
874
+ throw takeFromExternrefTable0(ret[1]);
875
+ }
876
+ return ret[0];
877
+ }
878
+ /**
879
+ * Number of region sets in this list.
880
+ * @returns {number}
881
+ */
882
+ get length() {
883
+ const ret = wasm.regionsetlist_length(this.__wbg_ptr);
884
+ return ret >>> 0;
885
+ }
886
+ /**
887
+ * Get the names of the region sets, or null if unnamed.
888
+ * @returns {any}
889
+ */
890
+ get names() {
891
+ const ret = wasm.regionsetlist_names(this.__wbg_ptr);
892
+ return ret;
893
+ }
894
+ /**
895
+ * Create an empty RegionSetList. Use `add()` to populate it.
896
+ */
897
+ constructor() {
898
+ const ret = wasm.regionsetlist_new();
899
+ this.__wbg_ptr = ret >>> 0;
900
+ RegionSetListFinalization.register(this, this.__wbg_ptr, this);
901
+ return this;
902
+ }
903
+ /**
904
+ * Compute pairwise Jaccard similarity for all pairs of region sets.
905
+ *
906
+ * Returns { matrix: number[][], names: string[] | null }.
907
+ * @returns {any}
908
+ */
909
+ pairwiseJaccard() {
910
+ const ret = wasm.regionsetlist_pairwiseJaccard(this.__wbg_ptr);
911
+ if (ret[2]) {
912
+ throw takeFromExternrefTable0(ret[1]);
913
+ }
914
+ return takeFromExternrefTable0(ret[0]);
915
+ }
916
+ /**
917
+ * Number of overlapping regions between two sets by index.
918
+ * @param {number} i
919
+ * @param {number} j
920
+ * @returns {number}
921
+ */
922
+ pintersectCount(i, j) {
923
+ const ret = wasm.regionsetlist_pintersectCount(this.__wbg_ptr, i, j);
924
+ if (ret[2]) {
925
+ throw takeFromExternrefTable0(ret[1]);
926
+ }
927
+ return ret[0] >>> 0;
928
+ }
929
+ /**
930
+ * Number of regions in the set at the given index.
931
+ * @param {number} index
932
+ * @returns {number}
933
+ */
934
+ regionCount(index) {
935
+ const ret = wasm.regionsetlist_regionCount(this.__wbg_ptr, index);
936
+ if (ret[2]) {
937
+ throw takeFromExternrefTable0(ret[1]);
938
+ }
939
+ return ret[0] >>> 0;
940
+ }
941
+ /**
942
+ * Setdiff of two sets by index (set[i] minus set[j]).
943
+ * @param {number} i
944
+ * @param {number} j
945
+ * @returns {RegionSet}
946
+ */
947
+ setdiffAt(i, j) {
948
+ const ret = wasm.regionsetlist_setdiffAt(this.__wbg_ptr, i, j);
949
+ if (ret[2]) {
950
+ throw takeFromExternrefTable0(ret[1]);
951
+ }
952
+ return RegionSet.__wrap(ret[0]);
953
+ }
954
+ /**
955
+ * Union of all sets.
956
+ * @returns {RegionSet}
957
+ */
958
+ unionAll() {
959
+ const ret = wasm.regionsetlist_unionAll(this.__wbg_ptr);
960
+ if (ret[2]) {
961
+ throw takeFromExternrefTable0(ret[1]);
962
+ }
963
+ return RegionSet.__wrap(ret[0]);
964
+ }
965
+ /**
966
+ * Union of two sets by index.
967
+ * @param {number} i
968
+ * @param {number} j
969
+ * @returns {RegionSet}
970
+ */
971
+ unionAt(i, j) {
972
+ const ret = wasm.regionsetlist_unionAt(this.__wbg_ptr, i, j);
973
+ if (ret[2]) {
974
+ throw takeFromExternrefTable0(ret[1]);
975
+ }
976
+ return RegionSet.__wrap(ret[0]);
977
+ }
978
+ /**
979
+ * Union of all sets except the one at the given index.
980
+ * @param {number} skip
981
+ * @returns {RegionSet}
982
+ */
983
+ unionExcept(skip) {
984
+ const ret = wasm.regionsetlist_unionExcept(this.__wbg_ptr, skip);
985
+ if (ret[2]) {
986
+ throw takeFromExternrefTable0(ret[1]);
987
+ }
988
+ return RegionSet.__wrap(ret[0]);
989
+ }
990
+ }
991
+ if (Symbol.dispose) RegionSetList.prototype[Symbol.dispose] = RegionSetList.prototype.free;
992
+
550
993
  export class SignalMatrix {
994
+ static __wrap(ptr) {
995
+ ptr = ptr >>> 0;
996
+ const obj = Object.create(SignalMatrix.prototype);
997
+ obj.__wbg_ptr = ptr;
998
+ SignalMatrixFinalization.register(obj, obj.__wbg_ptr, obj);
999
+ return obj;
1000
+ }
551
1001
  __destroy_into_raw() {
552
1002
  const ptr = this.__wbg_ptr;
553
1003
  this.__wbg_ptr = 0;
@@ -558,6 +1008,20 @@ export class SignalMatrix {
558
1008
  const ptr = this.__destroy_into_raw();
559
1009
  wasm.__wbg_signalmatrix_free(ptr, 0);
560
1010
  }
1011
+ /**
1012
+ * Load a SignalMatrix from packed binary bytes.
1013
+ * @param {Uint8Array} bytes
1014
+ * @returns {SignalMatrix}
1015
+ */
1016
+ static fromBin(bytes) {
1017
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
1018
+ const len0 = WASM_VECTOR_LEN;
1019
+ const ret = wasm.signalmatrix_fromBin(ptr0, len0);
1020
+ if (ret[2]) {
1021
+ throw takeFromExternrefTable0(ret[1]);
1022
+ }
1023
+ return SignalMatrix.__wrap(ret[0]);
1024
+ }
561
1025
  /**
562
1026
  * Construct a SignalMatrix from JS data.
563
1027
  *
@@ -837,6 +1301,13 @@ export class Tokenizer {
837
1301
  if (Symbol.dispose) Tokenizer.prototype[Symbol.dispose] = Tokenizer.prototype.free;
838
1302
 
839
1303
  export class TssIndex {
1304
+ static __wrap(ptr) {
1305
+ ptr = ptr >>> 0;
1306
+ const obj = Object.create(TssIndex.prototype);
1307
+ obj.__wbg_ptr = ptr;
1308
+ TssIndexFinalization.register(obj, obj.__wbg_ptr, obj);
1309
+ return obj;
1310
+ }
840
1311
  __destroy_into_raw() {
841
1312
  const ptr = this.__wbg_ptr;
842
1313
  this.__wbg_ptr = 0;
@@ -985,6 +1456,24 @@ export function canonicalizeJsonString(json_str) {
985
1456
  }
986
1457
  }
987
1458
 
1459
+ /**
1460
+ * Check whether the universe is appropriate for the given user sets.
1461
+ *
1462
+ * @param userSets - Array of arrays of [chr, start, end] tuples
1463
+ * @param universe - Array of [chr, start, end] tuples
1464
+ * @returns Object with column arrays: userSet, totalRegions, regionsInUniverse, coverage, manyToMany, warnings
1465
+ * @param {any} user_sets
1466
+ * @param {any} universe_regions
1467
+ * @returns {any}
1468
+ */
1469
+ export function checkUniverseAppropriateness(user_sets, universe_regions) {
1470
+ const ret = wasm.checkUniverseAppropriateness(user_sets, universe_regions);
1471
+ if (ret[2]) {
1472
+ throw takeFromExternrefTable0(ret[1]);
1473
+ }
1474
+ return takeFromExternrefTable0(ret[0]);
1475
+ }
1476
+
988
1477
  /**
989
1478
  * Compute the MD5 digest of a string.
990
1479
  *
@@ -1208,12 +1697,30 @@ export function fastaHasherUpdate(handle, chunk) {
1208
1697
  }
1209
1698
 
1210
1699
  /**
1211
- * @param {string} name
1700
+ * Run LOLA enrichment analysis.
1701
+ *
1702
+ * @param userSets - Array of arrays of [chr, start, end] tuples
1703
+ * @param universe - Array of [chr, start, end] tuples
1704
+ * @param regionDb - A LolaRegionDB object
1705
+ * @param minOverlap - Minimum bp overlap (default 1)
1706
+ * @param direction - "enrichment" or "depletion" (default "enrichment")
1707
+ * @returns Object with column arrays: userSet, dbSet, pValueLog, oddsRatio, support, etc.
1708
+ * @param {any} user_sets
1709
+ * @param {any} universe_regions
1710
+ * @param {LolaRegionDB} region_db
1711
+ * @param {number | null} [min_overlap]
1712
+ * @param {string | null} [direction]
1713
+ * @returns {any}
1212
1714
  */
1213
- export function greet(name) {
1214
- const ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1215
- const len0 = WASM_VECTOR_LEN;
1216
- wasm.greet(ptr0, len0);
1715
+ export function runLOLA(user_sets, universe_regions, region_db, min_overlap, direction) {
1716
+ _assertClass(region_db, LolaRegionDB);
1717
+ var ptr0 = isLikeNone(direction) ? 0 : passStringToWasm0(direction, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1718
+ var len0 = WASM_VECTOR_LEN;
1719
+ const ret = wasm.runLOLA(user_sets, universe_regions, region_db.__wbg_ptr, isLikeNone(min_overlap) ? 0x100000001 : (min_overlap) >> 0, ptr0, len0);
1720
+ if (ret[2]) {
1721
+ throw takeFromExternrefTable0(ret[1]);
1722
+ }
1723
+ return takeFromExternrefTable0(ret[0]);
1217
1724
  }
1218
1725
 
1219
1726
  /**
@@ -1282,7 +1789,7 @@ export function sequenceMd5(sequence) {
1282
1789
  function __wbg_get_imports() {
1283
1790
  const import0 = {
1284
1791
  __proto__: null,
1285
- __wbg_Error_dbcd8782dbb273a2: function(arg0, arg1) {
1792
+ __wbg_Error_83742b46f01ce22d: function(arg0, arg1) {
1286
1793
  const ret = Error(getStringFromWasm0(arg0, arg1));
1287
1794
  return ret;
1288
1795
  },
@@ -1293,68 +1800,68 @@ function __wbg_get_imports() {
1293
1800
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1294
1801
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1295
1802
  },
1296
- __wbg___wbindgen_bigint_get_as_i64_25c638f64ce0e2e0: function(arg0, arg1) {
1803
+ __wbg___wbindgen_bigint_get_as_i64_447a76b5c6ef7bda: function(arg0, arg1) {
1297
1804
  const v = arg1;
1298
1805
  const ret = typeof(v) === 'bigint' ? v : undefined;
1299
1806
  getDataViewMemory0().setBigInt64(arg0 + 8 * 1, isLikeNone(ret) ? BigInt(0) : ret, true);
1300
1807
  getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
1301
1808
  },
1302
- __wbg___wbindgen_boolean_get_7f1c4dd217655ab6: function(arg0) {
1809
+ __wbg___wbindgen_boolean_get_c0f3f60bac5a78d1: function(arg0) {
1303
1810
  const v = arg0;
1304
1811
  const ret = typeof(v) === 'boolean' ? v : undefined;
1305
1812
  return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0;
1306
1813
  },
1307
- __wbg___wbindgen_debug_string_6cf0badf0b90f6ef: function(arg0, arg1) {
1814
+ __wbg___wbindgen_debug_string_5398f5bb970e0daa: function(arg0, arg1) {
1308
1815
  const ret = debugString(arg1);
1309
1816
  const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1310
1817
  const len1 = WASM_VECTOR_LEN;
1311
1818
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1312
1819
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1313
1820
  },
1314
- __wbg___wbindgen_in_e32cbbbf71fdc915: function(arg0, arg1) {
1821
+ __wbg___wbindgen_in_41dbb8413020e076: function(arg0, arg1) {
1315
1822
  const ret = arg0 in arg1;
1316
1823
  return ret;
1317
1824
  },
1318
- __wbg___wbindgen_is_bigint_95f22c948ca1bbe1: function(arg0) {
1825
+ __wbg___wbindgen_is_bigint_e2141d4f045b7eda: function(arg0) {
1319
1826
  const ret = typeof(arg0) === 'bigint';
1320
1827
  return ret;
1321
1828
  },
1322
- __wbg___wbindgen_is_function_4500d4795b15e70b: function(arg0) {
1829
+ __wbg___wbindgen_is_function_3c846841762788c1: function(arg0) {
1323
1830
  const ret = typeof(arg0) === 'function';
1324
1831
  return ret;
1325
1832
  },
1326
- __wbg___wbindgen_is_null_5467e07e008308e7: function(arg0) {
1833
+ __wbg___wbindgen_is_null_0b605fc6b167c56f: function(arg0) {
1327
1834
  const ret = arg0 === null;
1328
1835
  return ret;
1329
1836
  },
1330
- __wbg___wbindgen_is_object_f8b6723c60349a13: function(arg0) {
1837
+ __wbg___wbindgen_is_object_781bc9f159099513: function(arg0) {
1331
1838
  const val = arg0;
1332
1839
  const ret = typeof(val) === 'object' && val !== null;
1333
1840
  return ret;
1334
1841
  },
1335
- __wbg___wbindgen_is_string_89134e23eba104e4: function(arg0) {
1842
+ __wbg___wbindgen_is_string_7ef6b97b02428fae: function(arg0) {
1336
1843
  const ret = typeof(arg0) === 'string';
1337
1844
  return ret;
1338
1845
  },
1339
- __wbg___wbindgen_is_undefined_1296fcc83c2da07a: function(arg0) {
1846
+ __wbg___wbindgen_is_undefined_52709e72fb9f179c: function(arg0) {
1340
1847
  const ret = arg0 === undefined;
1341
1848
  return ret;
1342
1849
  },
1343
- __wbg___wbindgen_jsval_eq_39cab0b49f8188e9: function(arg0, arg1) {
1850
+ __wbg___wbindgen_jsval_eq_ee31bfad3e536463: function(arg0, arg1) {
1344
1851
  const ret = arg0 === arg1;
1345
1852
  return ret;
1346
1853
  },
1347
- __wbg___wbindgen_jsval_loose_eq_3173dea557396a92: function(arg0, arg1) {
1854
+ __wbg___wbindgen_jsval_loose_eq_5bcc3bed3c69e72b: function(arg0, arg1) {
1348
1855
  const ret = arg0 == arg1;
1349
1856
  return ret;
1350
1857
  },
1351
- __wbg___wbindgen_number_get_3330675b4e5c3680: function(arg0, arg1) {
1858
+ __wbg___wbindgen_number_get_34bb9d9dcfa21373: function(arg0, arg1) {
1352
1859
  const obj = arg1;
1353
1860
  const ret = typeof(obj) === 'number' ? obj : undefined;
1354
1861
  getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true);
1355
1862
  getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true);
1356
1863
  },
1357
- __wbg___wbindgen_string_get_7b8bc463f6cbeefe: function(arg0, arg1) {
1864
+ __wbg___wbindgen_string_get_395e606bd0ee4427: function(arg0, arg1) {
1358
1865
  const obj = arg1;
1359
1866
  const ret = typeof(obj) === 'string' ? obj : undefined;
1360
1867
  var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
@@ -1362,37 +1869,38 @@ function __wbg_get_imports() {
1362
1869
  getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);
1363
1870
  getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);
1364
1871
  },
1365
- __wbg___wbindgen_throw_89ca9e2c67795ec1: function(arg0, arg1) {
1872
+ __wbg___wbindgen_throw_6ddd609b62940d55: function(arg0, arg1) {
1366
1873
  throw new Error(getStringFromWasm0(arg0, arg1));
1367
1874
  },
1368
- __wbg_alert_54562c808bfe0277: function(arg0, arg1) {
1369
- alert(getStringFromWasm0(arg0, arg1));
1370
- },
1371
- __wbg_call_eb691bc2f5533064: function() { return handleError(function (arg0, arg1) {
1875
+ __wbg_call_e133b57c9155d22c: function() { return handleError(function (arg0, arg1) {
1372
1876
  const ret = arg0.call(arg1);
1373
1877
  return ret;
1374
1878
  }, arguments); },
1375
- __wbg_done_82b14aeb31e98db6: function(arg0) {
1879
+ __wbg_done_08ce71ee07e3bd17: function(arg0) {
1376
1880
  const ret = arg0.done;
1377
1881
  return ret;
1378
1882
  },
1379
- __wbg_entries_46c64fadfaa3b525: function(arg0) {
1883
+ __wbg_entries_e8a20ff8c9757101: function(arg0) {
1380
1884
  const ret = Object.entries(arg0);
1381
1885
  return ret;
1382
1886
  },
1383
- __wbg_get_229657ec2da079cd: function(arg0, arg1) {
1384
- const ret = arg0[arg1 >>> 0];
1385
- return ret;
1386
- },
1387
- __wbg_get_ed44f5f876f22351: function() { return handleError(function (arg0, arg1) {
1887
+ __wbg_get_326e41e095fb2575: function() { return handleError(function (arg0, arg1) {
1388
1888
  const ret = Reflect.get(arg0, arg1);
1389
1889
  return ret;
1390
1890
  }, arguments); },
1391
- __wbg_get_unchecked_ae4d1600970be7c3: function(arg0, arg1) {
1891
+ __wbg_get_a8ee5c45dabc1b3b: function(arg0, arg1) {
1392
1892
  const ret = arg0[arg1 >>> 0];
1393
1893
  return ret;
1394
1894
  },
1395
- __wbg_instanceof_ArrayBuffer_4f2b9b5ed416155d: function(arg0) {
1895
+ __wbg_get_unchecked_329cfe50afab7352: function(arg0, arg1) {
1896
+ const ret = arg0[arg1 >>> 0];
1897
+ return ret;
1898
+ },
1899
+ __wbg_get_with_ref_key_f38bf27dc398d91b: function(arg0, arg1) {
1900
+ const ret = arg0[arg1];
1901
+ return ret;
1902
+ },
1903
+ __wbg_instanceof_ArrayBuffer_101e2bf31071a9f6: function(arg0) {
1396
1904
  let result;
1397
1905
  try {
1398
1906
  result = arg0 instanceof ArrayBuffer;
@@ -1402,7 +1910,7 @@ function __wbg_get_imports() {
1402
1910
  const ret = result;
1403
1911
  return ret;
1404
1912
  },
1405
- __wbg_instanceof_Uint8Array_6482c66fce35827d: function(arg0) {
1913
+ __wbg_instanceof_Uint8Array_740438561a5b956d: function(arg0) {
1406
1914
  let result;
1407
1915
  try {
1408
1916
  result = arg0 instanceof Uint8Array;
@@ -1412,64 +1920,64 @@ function __wbg_get_imports() {
1412
1920
  const ret = result;
1413
1921
  return ret;
1414
1922
  },
1415
- __wbg_isArray_fe5201bfdab7e39d: function(arg0) {
1923
+ __wbg_isArray_33b91feb269ff46e: function(arg0) {
1416
1924
  const ret = Array.isArray(arg0);
1417
1925
  return ret;
1418
1926
  },
1419
- __wbg_isSafeInteger_d6215c7562dbc4db: function(arg0) {
1927
+ __wbg_isSafeInteger_ecd6a7f9c3e053cd: function(arg0) {
1420
1928
  const ret = Number.isSafeInteger(arg0);
1421
1929
  return ret;
1422
1930
  },
1423
- __wbg_iterator_63c3a1857203cf2f: function() {
1931
+ __wbg_iterator_d8f549ec8fb061b1: function() {
1424
1932
  const ret = Symbol.iterator;
1425
1933
  return ret;
1426
1934
  },
1427
- __wbg_length_f875d3a041bab91a: function(arg0) {
1935
+ __wbg_length_b3416cf66a5452c8: function(arg0) {
1428
1936
  const ret = arg0.length;
1429
1937
  return ret;
1430
1938
  },
1431
- __wbg_length_feaf2a40e5f9755a: function(arg0) {
1939
+ __wbg_length_ea16607d7b61445b: function(arg0) {
1432
1940
  const ret = arg0.length;
1433
1941
  return ret;
1434
1942
  },
1435
- __wbg_new_5947ca72f3fee3e6: function() {
1943
+ __wbg_new_49d5571bd3f0c4d4: function() {
1436
1944
  const ret = new Map();
1437
1945
  return ret;
1438
1946
  },
1439
- __wbg_new_6e7681a5f6f98ceb: function(arg0) {
1947
+ __wbg_new_5f486cdf45a04d78: function(arg0) {
1440
1948
  const ret = new Uint8Array(arg0);
1441
1949
  return ret;
1442
1950
  },
1443
- __wbg_new_6feff3e11e4d0799: function() {
1444
- const ret = new Object();
1951
+ __wbg_new_a70fbab9066b301f: function() {
1952
+ const ret = new Array();
1445
1953
  return ret;
1446
1954
  },
1447
- __wbg_new_ff7f9cc4c9a4a0cf: function() {
1448
- const ret = new Array();
1955
+ __wbg_new_ab79df5bd7c26067: function() {
1956
+ const ret = new Object();
1449
1957
  return ret;
1450
1958
  },
1451
- __wbg_next_ae5b710aea83f41e: function() { return handleError(function (arg0) {
1959
+ __wbg_next_11b99ee6237339e3: function() { return handleError(function (arg0) {
1452
1960
  const ret = arg0.next();
1453
1961
  return ret;
1454
1962
  }, arguments); },
1455
- __wbg_next_f577b3e02c9be709: function(arg0) {
1963
+ __wbg_next_e01a967809d1aa68: function(arg0) {
1456
1964
  const ret = arg0.next;
1457
1965
  return ret;
1458
1966
  },
1459
- __wbg_prototypesetcall_37f00e1be5c4015a: function(arg0, arg1, arg2) {
1967
+ __wbg_prototypesetcall_d62e5099504357e6: function(arg0, arg1, arg2) {
1460
1968
  Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), arg2);
1461
1969
  },
1462
- __wbg_set_601f3e1d081df3ac: function(arg0, arg1, arg2) {
1970
+ __wbg_set_282384002438957f: function(arg0, arg1, arg2) {
1463
1971
  arg0[arg1 >>> 0] = arg2;
1464
1972
  },
1465
- __wbg_set_b1226382f10be917: function(arg0, arg1, arg2) {
1973
+ __wbg_set_bf7251625df30a02: function(arg0, arg1, arg2) {
1466
1974
  const ret = arg0.set(arg1, arg2);
1467
1975
  return ret;
1468
1976
  },
1469
1977
  __wbg_set_d1cb61e9f39c870f: function(arg0, arg1, arg2) {
1470
1978
  arg0[arg1] = arg2;
1471
1979
  },
1472
- __wbg_value_3e1fdb73e1353fb3: function(arg0) {
1980
+ __wbg_value_21fc78aab0322612: function(arg0) {
1473
1981
  const ret = arg0.value;
1474
1982
  return ret;
1475
1983
  },
@@ -1521,6 +2029,12 @@ const ConsensusBuilderFinalization = (typeof FinalizationRegistry === 'undefined
1521
2029
  const GeneModelFinalization = (typeof FinalizationRegistry === 'undefined')
1522
2030
  ? { register: () => {}, unregister: () => {} }
1523
2031
  : new FinalizationRegistry(ptr => wasm.__wbg_genemodel_free(ptr >>> 0, 1));
2032
+ const GenomicDistAnnotationFinalization = (typeof FinalizationRegistry === 'undefined')
2033
+ ? { register: () => {}, unregister: () => {} }
2034
+ : new FinalizationRegistry(ptr => wasm.__wbg_genomicdistannotation_free(ptr >>> 0, 1));
2035
+ const LolaRegionDBFinalization = (typeof FinalizationRegistry === 'undefined')
2036
+ ? { register: () => {}, unregister: () => {} }
2037
+ : new FinalizationRegistry(ptr => wasm.__wbg_lolaregiondb_free(ptr >>> 0, 1));
1524
2038
  const OverlapperFinalization = (typeof FinalizationRegistry === 'undefined')
1525
2039
  ? { register: () => {}, unregister: () => {} }
1526
2040
  : new FinalizationRegistry(ptr => wasm.__wbg_overlapper_free(ptr >>> 0, 1));
@@ -1533,6 +2047,9 @@ const RegionDistributionFinalization = (typeof FinalizationRegistry === 'undefin
1533
2047
  const RegionSetFinalization = (typeof FinalizationRegistry === 'undefined')
1534
2048
  ? { register: () => {}, unregister: () => {} }
1535
2049
  : new FinalizationRegistry(ptr => wasm.__wbg_regionset_free(ptr >>> 0, 1));
2050
+ const RegionSetListFinalization = (typeof FinalizationRegistry === 'undefined')
2051
+ ? { register: () => {}, unregister: () => {} }
2052
+ : new FinalizationRegistry(ptr => wasm.__wbg_regionsetlist_free(ptr >>> 0, 1));
1536
2053
  const SignalMatrixFinalization = (typeof FinalizationRegistry === 'undefined')
1537
2054
  ? { register: () => {}, unregister: () => {} }
1538
2055
  : new FinalizationRegistry(ptr => wasm.__wbg_signalmatrix_free(ptr >>> 0, 1));
@@ -1620,6 +2137,17 @@ function debugString(val) {
1620
2137
  return className;
1621
2138
  }
1622
2139
 
2140
+ function getArrayJsValueFromWasm0(ptr, len) {
2141
+ ptr = ptr >>> 0;
2142
+ const mem = getDataViewMemory0();
2143
+ const result = [];
2144
+ for (let i = ptr; i < ptr + 4 * len; i += 4) {
2145
+ result.push(wasm.__wbindgen_externrefs.get(mem.getUint32(i, true)));
2146
+ }
2147
+ wasm.__externref_drop_slice(ptr, len);
2148
+ return result;
2149
+ }
2150
+
1623
2151
  function getArrayU32FromWasm0(ptr, len) {
1624
2152
  ptr = ptr >>> 0;
1625
2153
  return getUint32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);
@@ -1680,6 +2208,13 @@ function isLikeNone(x) {
1680
2208
  return x === undefined || x === null;
1681
2209
  }
1682
2210
 
2211
+ function passArray32ToWasm0(arg, malloc) {
2212
+ const ptr = malloc(arg.length * 4, 4) >>> 0;
2213
+ getUint32ArrayMemory0().set(arg, ptr / 4);
2214
+ WASM_VECTOR_LEN = arg.length;
2215
+ return ptr;
2216
+ }
2217
+
1683
2218
  function passArray8ToWasm0(arg, malloc) {
1684
2219
  const ptr = malloc(arg.length * 1, 1) >>> 0;
1685
2220
  getUint8ArrayMemory0().set(arg, ptr / 1);
package/gtars_js_bg.wasm CHANGED
Binary file
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "collaborators": [
5
5
  "Nathan LeRoy <NLeRoy917@gmail.com>"
6
6
  ],
7
- "version": "0.7.1",
7
+ "version": "0.8.1",
8
8
  "files": [
9
9
  "gtars_js_bg.wasm",
10
10
  "gtars_js.js",