@aztec/bb.js 0.16.2 → 0.16.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.
@@ -19,7 +19,8 @@ export declare class Barretenberg extends BarretenbergApi {
19
19
  export declare class BarretenbergSync extends BarretenbergApiSync {
20
20
  private constructor();
21
21
  static new(): Promise<BarretenbergSync>;
22
- static getSingleton(): Promise<BarretenbergSync>;
22
+ static initSingleton(): Promise<BarretenbergSync>;
23
+ static getSingleton(): BarretenbergSync;
23
24
  getWasm(): import("../barretenberg_wasm/index.js").BarretenbergWasm;
24
25
  }
25
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AASpF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC3B,OAAO,CAAC,MAAM;IAAlC,OAAO;IAIP;;;;;OAKG;WACU,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM;IAQlC,aAAa;IAIb,OAAO;CAId;AAID,qBAAa,gBAAiB,SAAQ,mBAAmB;IACvD,OAAO;WAIM,GAAG;IAOhB,MAAM,CAAC,YAAY;IAOnB,OAAO;CAGR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AASpF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC3B,OAAO,CAAC,MAAM;IAAlC,OAAO;IAIP;;;;;OAKG;WACU,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM;IAQlC,aAAa;IAIb,OAAO;CAId;AAKD,qBAAa,gBAAiB,SAAQ,mBAAmB;IACvD,OAAO;WAIM,GAAG;IAOhB,MAAM,CAAC,aAAa;IAOpB,MAAM,CAAC,YAAY;IAOnB,OAAO;CAGR"}
@@ -37,6 +37,7 @@ export class Barretenberg extends BarretenbergApi {
37
37
  }
38
38
  }
39
39
  let barretenbergSyncSingleton;
40
+ let barretenbergSyncSingletonPromise;
40
41
  export class BarretenbergSync extends BarretenbergApiSync {
41
42
  constructor(wasm) {
42
43
  super(wasm);
@@ -47,9 +48,15 @@ export class BarretenbergSync extends BarretenbergApiSync {
47
48
  await wasm.init(module, threads);
48
49
  return new BarretenbergSync(wasm);
49
50
  }
51
+ static initSingleton() {
52
+ if (!barretenbergSyncSingletonPromise) {
53
+ barretenbergSyncSingletonPromise = BarretenbergSync.new().then(s => (barretenbergSyncSingleton = s));
54
+ }
55
+ return barretenbergSyncSingletonPromise;
56
+ }
50
57
  static getSingleton() {
51
58
  if (!barretenbergSyncSingleton) {
52
- barretenbergSyncSingleton = BarretenbergSync.new();
59
+ throw new Error('Initialise first via initSingleton().');
53
60
  }
54
61
  return barretenbergSyncSingleton;
55
62
  }
@@ -57,4 +64,11 @@ export class BarretenbergSync extends BarretenbergApiSync {
57
64
  return this.wasm;
58
65
  }
59
66
  }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxvQkFBb0IsRUFBOEIsTUFBTSxzREFBc0QsQ0FBQztBQUN4SCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNsRixPQUFPLEVBQTBCLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUYsT0FBTyxXQUFXLE1BQU0sT0FBTyxDQUFDO0FBRWhDLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUV4Qzs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sWUFBYSxTQUFRLGVBQWU7SUFDL0MsWUFBNEIsTUFBVyxFQUFFLElBQTRCO1FBQ25FLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQURjLFdBQU0sR0FBTixNQUFNLENBQUs7SUFFdkMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsY0FBdUI7UUFDdEMsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNsQyxNQUFNLElBQUksR0FBRyx5QkFBeUIsQ0FBNkIsTUFBTSxDQUFDLENBQUM7UUFDM0UsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxLQUFLLENBQUMsYUFBYTtRQUNqQixPQUFPLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDWCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hDLENBQUM7Q0FDRjtBQUVELElBQUkseUJBQW9ELENBQUM7QUFFekQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLG1CQUFtQjtJQUN2RCxZQUFvQixJQUEwQjtRQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHO1FBQ2QsTUFBTSxJQUFJLEdBQUcsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVk7UUFDakIsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7WUFDL0IseUJBQXlCLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDckQsQ0FBQztRQUNELE9BQU8seUJBQXlCLENBQUM7SUFDbkMsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGIn0=
67
+ // If we're loading this module in a test environment, just init the singleton immediately for convienience.
68
+ if (process.env.NODE_ENV === 'test') {
69
+ // Need to ignore for cjs build.
70
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
71
+ // @ts-ignore
72
+ await BarretenbergSync.initSingleton();
73
+ }
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxvQkFBb0IsRUFBOEIsTUFBTSxzREFBc0QsQ0FBQztBQUN4SCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNsRixPQUFPLEVBQTBCLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUYsT0FBTyxXQUFXLE1BQU0sT0FBTyxDQUFDO0FBRWhDLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUV4Qzs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sWUFBYSxTQUFRLGVBQWU7SUFDL0MsWUFBNEIsTUFBVyxFQUFFLElBQTRCO1FBQ25FLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQURjLFdBQU0sR0FBTixNQUFNLENBQUs7SUFFdkMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsY0FBdUI7UUFDdEMsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNsQyxNQUFNLElBQUksR0FBRyx5QkFBeUIsQ0FBNkIsTUFBTSxDQUFDLENBQUM7UUFDM0UsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxLQUFLLENBQUMsYUFBYTtRQUNqQixPQUFPLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDWCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hDLENBQUM7Q0FDRjtBQUVELElBQUkseUJBQTJDLENBQUM7QUFDaEQsSUFBSSxnQ0FBMkQsQ0FBQztBQUVoRSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsbUJBQW1CO0lBQ3ZELFlBQW9CLElBQTBCO1FBQzVDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUc7UUFDZCxNQUFNLElBQUksR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDeEMsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNELE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDakMsT0FBTyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYTtRQUNsQixJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztZQUN0QyxnQ0FBZ0MsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkcsQ0FBQztRQUNELE9BQU8sZ0NBQWdDLENBQUM7SUFDMUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZO1FBQ2pCLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsdUNBQXVDLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBQ0QsT0FBTyx5QkFBeUIsQ0FBQztJQUNuQyxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUFFRCw0R0FBNEc7QUFDNUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNwQyxnQ0FBZ0M7SUFDaEMsNkRBQTZEO0lBQzdELGFBQWE7SUFDYixNQUFNLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxDQUFDO0FBQ3pDLENBQUMifQ==
@@ -19,7 +19,8 @@ export declare class Barretenberg extends BarretenbergApi {
19
19
  export declare class BarretenbergSync extends BarretenbergApiSync {
20
20
  private constructor();
21
21
  static new(): Promise<BarretenbergSync>;
22
- static getSingleton(): Promise<BarretenbergSync>;
22
+ static initSingleton(): Promise<BarretenbergSync>;
23
+ static getSingleton(): BarretenbergSync;
23
24
  getWasm(): import("../barretenberg_wasm/index.js").BarretenbergWasm;
24
25
  }
25
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AASpF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC3B,OAAO,CAAC,MAAM;IAAlC,OAAO;IAIP;;;;;OAKG;WACU,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM;IAQlC,aAAa;IAIb,OAAO;CAId;AAID,qBAAa,gBAAiB,SAAQ,mBAAmB;IACvD,OAAO;WAIM,GAAG;IAOhB,MAAM,CAAC,YAAY;IAOnB,OAAO;CAGR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AASpF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC3B,OAAO,CAAC,MAAM;IAAlC,OAAO;IAIP;;;;;OAKG;WACU,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM;IAQlC,aAAa;IAIb,OAAO;CAId;AAKD,qBAAa,gBAAiB,SAAQ,mBAAmB;IACvD,OAAO;WAIM,GAAG;IAOhB,MAAM,CAAC,aAAa;IAOpB,MAAM,CAAC,YAAY;IAOnB,OAAO;CAGR"}
@@ -42,6 +42,7 @@ class Barretenberg extends index_js_1.BarretenbergApi {
42
42
  }
43
43
  exports.Barretenberg = Barretenberg;
44
44
  let barretenbergSyncSingleton;
45
+ let barretenbergSyncSingletonPromise;
45
46
  class BarretenbergSync extends index_js_1.BarretenbergApiSync {
46
47
  constructor(wasm) {
47
48
  super(wasm);
@@ -52,9 +53,15 @@ class BarretenbergSync extends index_js_1.BarretenbergApiSync {
52
53
  await wasm.init(module, threads);
53
54
  return new BarretenbergSync(wasm);
54
55
  }
56
+ static initSingleton() {
57
+ if (!barretenbergSyncSingletonPromise) {
58
+ barretenbergSyncSingletonPromise = BarretenbergSync.new().then(s => (barretenbergSyncSingleton = s));
59
+ }
60
+ return barretenbergSyncSingletonPromise;
61
+ }
55
62
  static getSingleton() {
56
63
  if (!barretenbergSyncSingleton) {
57
- barretenbergSyncSingleton = BarretenbergSync.new();
64
+ throw new Error('Initialise first via initSingleton().');
58
65
  }
59
66
  return barretenbergSyncSingleton;
60
67
  }
@@ -63,4 +70,11 @@ class BarretenbergSync extends index_js_1.BarretenbergApiSync {
63
70
  }
64
71
  }
65
72
  exports.BarretenbergSync = BarretenbergSync;
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxxQ0FBZ0M7QUFDaEMsMkRBQW9GO0FBQ3BGLGdHQUFxRztBQUNyRyxtRkFBd0g7QUFDeEgsb0VBQWtGO0FBQ2xGLDREQUE4RjtBQUM5RiwwREFBZ0M7QUFFaEMsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFXLEVBQUMsWUFBWSxDQUFDLENBQUM7QUFFeEM7OztHQUdHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsMEJBQWU7SUFDL0MsWUFBNEIsTUFBVyxFQUFFLElBQTRCO1FBQ25FLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQURjLFdBQU0sR0FBTixNQUFNLENBQUs7SUFFdkMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsY0FBdUI7UUFDdEMsTUFBTSxNQUFNLEdBQUcsSUFBQSwyQkFBZ0IsR0FBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0NBQXlCLEVBQTZCLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFBLGdDQUFxQixFQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUEsZUFBSyxFQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0MsT0FBTyxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhO1FBQ2pCLE9BQU8sTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTztRQUNYLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEMsQ0FBQztDQUNGO0FBM0JELG9DQTJCQztBQUVELElBQUkseUJBQW9ELENBQUM7QUFFekQsTUFBYSxnQkFBaUIsU0FBUSw4QkFBbUI7SUFDdkQsWUFBb0IsSUFBMEI7UUFDNUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRztRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksK0JBQW9CLEVBQUUsQ0FBQztRQUN4QyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE1BQU0sSUFBQSxnQ0FBcUIsRUFBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVk7UUFDakIsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7WUFDL0IseUJBQXlCLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDckQsQ0FBQztRQUNELE9BQU8seUJBQXlCLENBQUM7SUFDbkMsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBdEJELDRDQXNCQyJ9
73
+ // If we're loading this module in a test environment, just init the singleton immediately for convienience.
74
+ if (process.env.NODE_ENV === 'test') {
75
+ // Need to ignore for cjs build.
76
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
77
+ // @ts-ignore
78
+ await BarretenbergSync.initSingleton();
79
+ }
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxxQ0FBZ0M7QUFDaEMsMkRBQW9GO0FBQ3BGLGdHQUFxRztBQUNyRyxtRkFBd0g7QUFDeEgsb0VBQWtGO0FBQ2xGLDREQUE4RjtBQUM5RiwwREFBZ0M7QUFFaEMsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFXLEVBQUMsWUFBWSxDQUFDLENBQUM7QUFFeEM7OztHQUdHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsMEJBQWU7SUFDL0MsWUFBNEIsTUFBVyxFQUFFLElBQTRCO1FBQ25FLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQURjLFdBQU0sR0FBTixNQUFNLENBQUs7SUFFdkMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsY0FBdUI7UUFDdEMsTUFBTSxNQUFNLEdBQUcsSUFBQSwyQkFBZ0IsR0FBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0NBQXlCLEVBQTZCLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFBLGdDQUFxQixFQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUEsZUFBSyxFQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDL0MsT0FBTyxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhO1FBQ2pCLE9BQU8sTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTztRQUNYLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEMsQ0FBQztDQUNGO0FBM0JELG9DQTJCQztBQUVELElBQUkseUJBQTJDLENBQUM7QUFDaEQsSUFBSSxnQ0FBMkQsQ0FBQztBQUVoRSxNQUFhLGdCQUFpQixTQUFRLDhCQUFtQjtJQUN2RCxZQUFvQixJQUEwQjtRQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHO1FBQ2QsTUFBTSxJQUFJLEdBQUcsSUFBSSwrQkFBb0IsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFBLGdDQUFxQixFQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNELE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDakMsT0FBTyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYTtRQUNsQixJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztZQUN0QyxnQ0FBZ0MsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkcsQ0FBQztRQUNELE9BQU8sZ0NBQWdDLENBQUM7SUFDMUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZO1FBQ2pCLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsdUNBQXVDLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBQ0QsT0FBTyx5QkFBeUIsQ0FBQztJQUNuQyxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUE3QkQsNENBNkJDO0FBRUQsNEdBQTRHO0FBQzVHLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDcEMsZ0NBQWdDO0lBQ2hDLDZEQUE2RDtJQUM3RCxhQUFhO0lBQ2IsTUFBTSxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztBQUN6QyxDQUFDIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/bb.js",
3
- "version": "0.16.2",
3
+ "version": "0.16.3",
4
4
  "homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/barretenberg/ts",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -20,14 +20,13 @@
20
20
  "README.md"
21
21
  ],
22
22
  "scripts": {
23
- "clean": "rm -rf ./dest .tsbuildinfo .tsbuildinfo.cjs package.tgz package",
24
- "build": "yarn clean && yarn build:wasm && yarn build:esm && yarn build:cjs && yarn build:browser && yarn build:package",
23
+ "clean": "rm -rf ./dest .tsbuildinfo .tsbuildinfo.cjs",
24
+ "build": "yarn clean && yarn build:wasm && yarn build:esm && yarn build:cjs && yarn build:browser",
25
25
  "build:wasm": "./scripts/build_wasm.sh",
26
26
  "build:esm": "tsc -b && chmod +x ./dest/node/main.js",
27
27
  "build:cjs": "tsc -b tsconfig.cjs.json && ./scripts/cjs_postprocess.sh",
28
28
  "build:browser": "webpack",
29
29
  "build:bindings": "cd .. && ./scripts/bindgen.sh",
30
- "build:package": "yarn pack && tar zxf package.tgz && rm -f package.tgz",
31
30
  "formatting": "prettier --check ./src && eslint --max-warnings 0 ./src",
32
31
  "formatting:fix": "prettier -w ./src",
33
32
  "test": "NODE_OPTIONS='--loader ts-node/esm' NODE_NO_WARNINGS=1 node --experimental-vm-modules $(yarn bin jest) --no-cache --passWithNoTests",
@@ -41,7 +41,8 @@ export class Barretenberg extends BarretenbergApi {
41
41
  }
42
42
  }
43
43
 
44
- let barretenbergSyncSingleton: Promise<BarretenbergSync>;
44
+ let barretenbergSyncSingleton: BarretenbergSync;
45
+ let barretenbergSyncSingletonPromise: Promise<BarretenbergSync>;
45
46
 
46
47
  export class BarretenbergSync extends BarretenbergApiSync {
47
48
  private constructor(wasm: BarretenbergWasmMain) {
@@ -55,9 +56,16 @@ export class BarretenbergSync extends BarretenbergApiSync {
55
56
  return new BarretenbergSync(wasm);
56
57
  }
57
58
 
59
+ static initSingleton() {
60
+ if (!barretenbergSyncSingletonPromise) {
61
+ barretenbergSyncSingletonPromise = BarretenbergSync.new().then(s => (barretenbergSyncSingleton = s));
62
+ }
63
+ return barretenbergSyncSingletonPromise;
64
+ }
65
+
58
66
  static getSingleton() {
59
67
  if (!barretenbergSyncSingleton) {
60
- barretenbergSyncSingleton = BarretenbergSync.new();
68
+ throw new Error('Initialise first via initSingleton().');
61
69
  }
62
70
  return barretenbergSyncSingleton;
63
71
  }
@@ -66,3 +74,11 @@ export class BarretenbergSync extends BarretenbergApiSync {
66
74
  return this.wasm;
67
75
  }
68
76
  }
77
+
78
+ // If we're loading this module in a test environment, just init the singleton immediately for convienience.
79
+ if (process.env.NODE_ENV === 'test') {
80
+ // Need to ignore for cjs build.
81
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
82
+ // @ts-ignore
83
+ await BarretenbergSync.initSingleton();
84
+ }