@aztec/bb.js 0.0.0-devnet → 0.0.0-test.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/README.md +10 -2
- package/dest/browser/522.6386c00ebfb22619e11b.js +3 -0
- package/dest/browser/barretenberg/backend.d.ts +7 -2
- package/dest/browser/barretenberg/backend.d.ts.map +1 -1
- package/dest/browser/barretenberg/index.d.ts +6 -2
- package/dest/browser/barretenberg/index.d.ts.map +1 -1
- package/dest/browser/barretenberg-threads.js +32 -0
- package/dest/browser/barretenberg.js +32 -0
- package/dest/browser/barretenberg_api/index.d.ts +5 -2
- package/dest/browser/barretenberg_api/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +1 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +3 -0
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +3 -0
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +1 -0
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
- package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
- package/dest/browser/barretenberg_wasm/index.d.ts +2 -2
- package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/browser/bigint-array/index.d.ts +17 -2
- package/dest/browser/bigint-array/index.d.ts.map +1 -1
- package/dest/browser/crs/net_crs.d.ts.map +1 -1
- package/dest/browser/crs/node/index.d.ts +6 -4
- package/dest/browser/crs/node/index.d.ts.map +1 -1
- package/dest/browser/index.d.ts.map +1 -1
- package/dest/browser/index.js +10583 -16082
- package/dest/browser/index.js.LICENSE.txt +16 -0
- package/dest/browser/main.worker.worker.js.LICENSE.txt +5 -0
- package/dest/browser/proof/index.d.ts +10 -0
- package/dest/browser/proof/index.d.ts.map +1 -1
- package/dest/browser/retry/index.d.ts +26 -0
- package/dest/browser/retry/index.d.ts.map +1 -0
- package/dest/browser/thread.worker.worker.js.LICENSE.txt +5 -0
- package/dest/browser/thread.worker.worker.worker.js.LICENSE.txt +5 -0
- package/dest/browser/types/fields.d.ts +6 -5
- package/dest/browser/types/fields.d.ts.map +1 -1
- package/dest/node/barretenberg/__snapshots__/pedersen.test.js.snap +156 -0
- package/dest/node/barretenberg/__snapshots__/poseidon.test.js.snap +40 -0
- package/dest/node/barretenberg/backend.d.ts +7 -2
- package/dest/node/barretenberg/backend.d.ts.map +1 -1
- package/dest/node/barretenberg/backend.js +54 -4
- package/dest/node/barretenberg/blake2s.test.js +2 -2
- package/dest/node/barretenberg/index.d.ts +6 -2
- package/dest/node/barretenberg/index.d.ts.map +1 -1
- package/dest/node/barretenberg/index.js +15 -20
- package/dest/node/barretenberg/pedersen.test.js +2 -2
- package/dest/node/barretenberg/poseidon.test.js +2 -2
- package/dest/node/barretenberg_api/index.d.ts +5 -2
- package/dest/node/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node/barretenberg_api/index.js +32 -2
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +16 -11
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +7 -9
- package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +3 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +3 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +3 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +1 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.js +3 -0
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +31 -8
- package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/node/index.js +3 -3
- package/dest/node/barretenberg_wasm/index.d.ts +2 -2
- package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/index.js +12 -10
- package/dest/node/barretenberg_wasm/index.test.js +3 -3
- package/dest/node/bigint-array/index.d.ts +17 -2
- package/dest/node/bigint-array/index.d.ts.map +1 -1
- package/dest/node/bigint-array/index.js +34 -18
- package/dest/node/crs/net_crs.d.ts.map +1 -1
- package/dest/node/crs/net_crs.js +6 -5
- package/dest/node/crs/node/index.d.ts +6 -4
- package/dest/node/crs/node/index.d.ts.map +1 -1
- package/dest/node/crs/node/index.js +16 -13
- package/dest/node/examples/simple.test.js +2 -2
- package/dest/node/index.d.ts.map +1 -1
- package/dest/node/index.js +1 -1
- package/dest/node/main.d.ts.map +1 -1
- package/dest/node/main.js +57 -65
- package/dest/node/proof/index.d.ts +10 -0
- package/dest/node/proof/index.d.ts.map +1 -1
- package/dest/node/proof/index.js +1 -1
- package/dest/node/retry/index.d.ts +26 -0
- package/dest/node/retry/index.d.ts.map +1 -0
- package/dest/node/retry/index.js +50 -0
- package/dest/node/types/fields.d.ts +6 -5
- package/dest/node/types/fields.d.ts.map +1 -1
- package/dest/node/types/fields.js +15 -10
- package/dest/node-cjs/barretenberg/backend.d.ts +7 -2
- package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/backend.js +56 -5
- package/dest/node-cjs/barretenberg/blake2s.test.js +2 -2
- package/dest/node-cjs/barretenberg/index.d.ts +6 -2
- package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/index.js +15 -19
- package/dest/node-cjs/barretenberg/pedersen.test.js +2 -2
- package/dest/node-cjs/barretenberg/poseidon.test.js +2 -2
- package/dest/node-cjs/barretenberg_api/index.d.ts +5 -2
- package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_api/index.js +32 -2
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +16 -11
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +7 -9
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +3 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +6 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +3 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +1 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +6 -0
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +31 -8
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +3 -3
- package/dest/node-cjs/barretenberg_wasm/index.d.ts +2 -2
- package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/index.js +12 -10
- package/dest/node-cjs/barretenberg_wasm/index.test.js +3 -3
- package/dest/node-cjs/bigint-array/index.d.ts +17 -2
- package/dest/node-cjs/bigint-array/index.d.ts.map +1 -1
- package/dest/node-cjs/bigint-array/index.js +39 -21
- package/dest/node-cjs/crs/net_crs.d.ts.map +1 -1
- package/dest/node-cjs/crs/net_crs.js +6 -5
- package/dest/node-cjs/crs/node/index.d.ts +6 -4
- package/dest/node-cjs/crs/node/index.d.ts.map +1 -1
- package/dest/node-cjs/crs/node/index.js +16 -13
- package/dest/node-cjs/examples/simple.test.js +2 -2
- package/dest/node-cjs/index.d.ts.map +1 -1
- package/dest/node-cjs/index.js +1 -1
- package/dest/node-cjs/main.d.ts.map +1 -1
- package/dest/node-cjs/main.js +57 -65
- package/dest/node-cjs/proof/index.d.ts +10 -0
- package/dest/node-cjs/proof/index.d.ts.map +1 -1
- package/dest/node-cjs/proof/index.js +1 -1
- package/dest/node-cjs/retry/index.d.ts +26 -0
- package/dest/node-cjs/retry/index.d.ts.map +1 -0
- package/dest/node-cjs/retry/index.js +56 -0
- package/dest/node-cjs/types/fields.d.ts +6 -5
- package/dest/node-cjs/types/fields.d.ts.map +1 -1
- package/dest/node-cjs/types/fields.js +14 -9
- package/package.json +5 -5
- package/src/barretenberg/backend.ts +79 -3
- package/src/barretenberg/blake2s.test.ts +1 -1
- package/src/barretenberg/index.ts +27 -21
- package/src/barretenberg/pedersen.test.ts +1 -1
- package/src/barretenberg/poseidon.test.ts +1 -1
- package/src/barretenberg_api/index.ts +49 -2
- package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +4 -6
- package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +14 -10
- package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +7 -10
- package/src/barretenberg_wasm/fetch_code/browser/barretenberg-threads.ts +3 -0
- package/src/barretenberg_wasm/fetch_code/browser/barretenberg.ts +3 -0
- package/src/barretenberg_wasm/fetch_code/browser/index.ts +28 -7
- package/src/barretenberg_wasm/fetch_code/node/index.ts +2 -2
- package/src/barretenberg_wasm/index.test.ts +2 -2
- package/src/barretenberg_wasm/index.ts +22 -11
- package/src/bigint-array/index.ts +39 -17
- package/src/crs/net_crs.ts +18 -9
- package/src/crs/node/index.ts +31 -15
- package/src/examples/simple.test.ts +1 -1
- package/src/index.ts +1 -0
- package/src/main.ts +61 -70
- package/src/proof/index.ts +11 -0
- package/src/retry/index.ts +50 -0
- package/src/types/fields.ts +24 -13
- package/dest/browser/522.index.js +0 -10
- /package/src/barretenberg_wasm/fetch_code/{browser/wasm-module.d.ts → wasm-module.d.ts} +0 -0
|
@@ -37,7 +37,7 @@ export declare class BarretenbergWasmMain extends BarretenbergWasmBase {
|
|
|
37
37
|
proc_exit: () => never;
|
|
38
38
|
};
|
|
39
39
|
};
|
|
40
|
-
callWasmExport(funcName: string, inArgs: Uint8Array[], outLens: (number | undefined)[]): Uint8Array[];
|
|
40
|
+
callWasmExport(funcName: string, inArgs: (Uint8Array | number)[], outLens: (number | undefined)[]): Uint8Array[];
|
|
41
41
|
private getOutputArgs;
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/barretenberg_wasm_main/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/barretenberg_wasm_main/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB;IAC5D,MAAM,CAAC,WAAW,SAAM;IACxB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAK;IAElB,aAAa;IAIpB;;OAEG;IACU,IAAI,CACf,MAAM,EAAE,WAAW,CAAC,MAAM,EAC1B,OAAO,SAA0D,EACjE,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAmC,EAC5D,OAAO,SAAK,EACZ,OAAO,SAAU;IAgCnB;;OAEG;IACU,OAAO;IAIpB,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM;;kCAOrB,MAAM;;;;;;;;;;;;;;;IAsBlC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE;IAUjG,OAAO,CAAC,aAAa;CAkBtB;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC"}
|
|
@@ -7,7 +7,6 @@ const index_js_1 = require("../helpers/index.js");
|
|
|
7
7
|
const index_js_2 = require("../barretenberg_wasm_thread/factory/node/index.js");
|
|
8
8
|
const index_js_3 = require("../barretenberg_wasm_base/index.js");
|
|
9
9
|
const heap_allocator_js_1 = require("./heap_allocator.js");
|
|
10
|
-
const debug = (0, debug_1.default)('bb.js:wasm');
|
|
11
10
|
/**
|
|
12
11
|
* This is the "main thread" implementation of BarretenbergWasm.
|
|
13
12
|
* It spawns a bunch of "child thread" implementations.
|
|
@@ -27,14 +26,14 @@ class BarretenbergWasmMain extends index_js_3.BarretenbergWasmBase {
|
|
|
27
26
|
/**
|
|
28
27
|
* Init as main thread. Spawn child threads.
|
|
29
28
|
*/
|
|
30
|
-
async init(module, threads = Math.min((0, index_js_1.getNumCpu)(), BarretenbergWasmMain.MAX_THREADS), logger =
|
|
29
|
+
async init(module, threads = Math.min((0, index_js_1.getNumCpu)(), BarretenbergWasmMain.MAX_THREADS), logger = (0, debug_1.default)('bb.js:bb_wasm'), initial = 32, maximum = 2 ** 16) {
|
|
31
30
|
this.logger = logger;
|
|
32
31
|
const initialMb = (initial * 2 ** 16) / (1024 * 1024);
|
|
33
32
|
const maxMb = (maximum * 2 ** 16) / (1024 * 1024);
|
|
34
33
|
const shared = (0, index_js_1.getSharedMemoryAvailable)();
|
|
35
|
-
this.logger(`
|
|
36
|
-
`max
|
|
37
|
-
`threads: ${threads}
|
|
34
|
+
this.logger(`Initializing bb wasm: initial memory ${initial} pages ${initialMb}MiB; ` +
|
|
35
|
+
`max memory: ${maximum} pages, ${maxMb}MiB; ` +
|
|
36
|
+
`threads: ${threads}; shared memory: ${shared}`);
|
|
38
37
|
this.memory = new WebAssembly.Memory({ initial, maximum, shared });
|
|
39
38
|
const instance = await WebAssembly.instantiate(module, this.getImportObj(this.memory));
|
|
40
39
|
this.instance = instance;
|
|
@@ -42,12 +41,11 @@ class BarretenbergWasmMain extends index_js_3.BarretenbergWasmBase {
|
|
|
42
41
|
this.call('_initialize');
|
|
43
42
|
// Create worker threads. Create 1 less than requested, as main thread counts as a thread.
|
|
44
43
|
if (threads > 1) {
|
|
45
|
-
this.logger(`
|
|
44
|
+
this.logger(`Creating ${threads} worker threads`);
|
|
46
45
|
this.workers = await Promise.all(Array.from({ length: threads - 1 }).map(index_js_2.createThreadWorker));
|
|
47
46
|
this.remoteWasms = await Promise.all(this.workers.map((index_js_1.getRemoteBarretenbergWasm)));
|
|
48
47
|
await Promise.all(this.remoteWasms.map(w => w.initThread(module, this.memory)));
|
|
49
48
|
}
|
|
50
|
-
this.logger('init complete.');
|
|
51
49
|
}
|
|
52
50
|
/**
|
|
53
51
|
* Called on main thread. Signals child threads to gracefully exit.
|
|
@@ -84,7 +82,7 @@ class BarretenbergWasmMain extends index_js_3.BarretenbergWasmBase {
|
|
|
84
82
|
}
|
|
85
83
|
callWasmExport(funcName, inArgs, outLens) {
|
|
86
84
|
const alloc = new heap_allocator_js_1.HeapAllocator(this);
|
|
87
|
-
const inPtrs = alloc.
|
|
85
|
+
const inPtrs = alloc.getInputs(inArgs);
|
|
88
86
|
const outPtrs = alloc.getOutputPtrs(outLens);
|
|
89
87
|
this.call(funcName, ...inPtrs, ...outPtrs);
|
|
90
88
|
const outArgs = this.getOutputArgs(outLens, outPtrs, alloc);
|
|
@@ -109,4 +107,4 @@ class BarretenbergWasmMain extends index_js_3.BarretenbergWasmBase {
|
|
|
109
107
|
}
|
|
110
108
|
exports.BarretenbergWasmMain = BarretenbergWasmMain;
|
|
111
109
|
BarretenbergWasmMain.MAX_THREADS = 32;
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vYmFycmV0ZW5iZXJnX3dhc21fbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQ0EsMERBQWdDO0FBRWhDLGtEQUFxRztBQUNyRyxnRkFBdUY7QUFFdkYsaUVBQTBFO0FBQzFFLDJEQUFvRDtBQUVwRDs7OztHQUlHO0FBQ0gsTUFBYSxvQkFBcUIsU0FBUSwrQkFBb0I7SUFBOUQ7O1FBRVUsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUN2QixnQkFBVyxHQUFtQyxFQUFFLENBQUM7UUFDakQsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGlCQUFZLEdBQUcsQ0FBQyxDQUFDO0lBOEczQixDQUFDO0lBNUdRLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLElBQUksQ0FDZixNQUEwQixFQUMxQixPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFBLG9CQUFTLEdBQUUsRUFBRSxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsRUFDakUsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsZUFBZSxDQUFDLEVBQzVELE9BQU8sR0FBRyxFQUFFLEVBQ1osT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFO1FBRWpCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBRXJCLE1BQU0sU0FBUyxHQUFHLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN0RCxNQUFNLEtBQUssR0FBRyxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDbEQsTUFBTSxNQUFN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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"barretenberg-threads.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/browser/barretenberg-threads.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,oCAAoC,CAAC;AAE3E,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const barretenberg_threads_wasm_gz_1 = tslib_1.__importDefault(require("../../barretenberg-threads.wasm.gz"));
|
|
5
|
+
exports.default = barretenberg_threads_wasm_gz_1.default;
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFycmV0ZW5iZXJnLXRocmVhZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vZmV0Y2hfY29kZS9icm93c2VyL2JhcnJldGVuYmVyZy10aHJlYWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhHQUEyRTtBQUUzRSxrQkFBZSxzQ0FBeUIsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"barretenberg.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/browser/barretenberg.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAE5D,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const barretenberg_wasm_gz_1 = tslib_1.__importDefault(require("../../barretenberg.wasm.gz"));
|
|
5
|
+
exports.default = barretenberg_wasm_gz_1.default;
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFycmV0ZW5iZXJnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2JhcnJldGVuYmVyZ193YXNtL2ZldGNoX2NvZGUvYnJvd3Nlci9iYXJyZXRlbmJlcmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOEZBQTREO0FBRTVELGtCQUFlLDhCQUFrQixDQUFDIn0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function fetchCode(multithreaded: boolean): Promise<ArrayBufferLike>;
|
|
1
|
+
export declare function fetchCode(multithreaded: boolean, wasmPath?: string): Promise<ArrayBufferLike>;
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/browser/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/browser/index.ts"],"names":[],"mappings":"AAIA,wBAAsB,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,4BA4BxE"}
|
|
@@ -2,16 +2,39 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.fetchCode = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const barretenberg_wasm_gz_1 = tslib_1.__importDefault(require("../../barretenberg.wasm.gz"));
|
|
6
|
-
const barretenberg_threads_wasm_gz_1 = tslib_1.__importDefault(require("../../barretenberg-threads.wasm.gz"));
|
|
7
5
|
const pako_1 = tslib_1.__importDefault(require("pako"));
|
|
8
6
|
// Annoyingly the wasm declares if it's memory is shared or not. So now we need two wasms if we want to be
|
|
9
7
|
// able to fallback on "non shared memory" situations.
|
|
10
|
-
async function fetchCode(multithreaded) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
async function fetchCode(multithreaded, wasmPath) {
|
|
9
|
+
let url;
|
|
10
|
+
if (wasmPath) {
|
|
11
|
+
const suffix = multithreaded ? '-threads' : '';
|
|
12
|
+
const filePath = wasmPath.split('/').slice(0, -1).join('/');
|
|
13
|
+
const fileNameWithExtensions = wasmPath.split('/').pop();
|
|
14
|
+
const [fileName, ...extensions] = fileNameWithExtensions.split('.');
|
|
15
|
+
url = `${filePath}/${fileName}${suffix}.${extensions.join('.')}`;
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
url = multithreaded
|
|
19
|
+
? (await Promise.resolve().then(() => tslib_1.__importStar(require(/* webpackIgnore: true */ './barretenberg-threads.js')))).default
|
|
20
|
+
: (await Promise.resolve().then(() => tslib_1.__importStar(require(/* webpackIgnore: true */ './barretenberg.js')))).default;
|
|
21
|
+
}
|
|
22
|
+
const res = await fetch(url);
|
|
23
|
+
const maybeCompressedData = await res.arrayBuffer();
|
|
24
|
+
const buffer = new Uint8Array(maybeCompressedData);
|
|
25
|
+
const isGzip =
|
|
26
|
+
// Check magic number
|
|
27
|
+
buffer[0] === 0x1f &&
|
|
28
|
+
buffer[1] === 0x8b &&
|
|
29
|
+
// Check compression method:
|
|
30
|
+
buffer[2] === 0x08;
|
|
31
|
+
if (isGzip) {
|
|
32
|
+
const decompressedData = pako_1.default.ungzip(buffer);
|
|
33
|
+
return decompressedData.buffer;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
return buffer;
|
|
37
|
+
}
|
|
15
38
|
}
|
|
16
39
|
exports.fetchCode = fetchCode;
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vZmV0Y2hfY29kZS9icm93c2VyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx3REFBd0I7QUFFeEIsMEdBQTBHO0FBQzFHLHNEQUFzRDtBQUMvQyxLQUFLLFVBQVUsU0FBUyxDQUFDLGFBQXNCLEVBQUUsUUFBaUI7SUFDdkUsSUFBSSxHQUFXLENBQUM7SUFDaEIsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNiLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDL0MsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVELE1BQU0sc0JBQXNCLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN6RCxNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUcsVUFBVSxDQUFDLEdBQUcsc0JBQXVCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JFLEdBQUcsR0FBRyxHQUFHLFFBQVEsSUFBSSxRQUFRLEdBQUcsTUFBTSxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztJQUNuRSxDQUFDO1NBQU0sQ0FBQztRQUNOLEdBQUcsR0FBRyxhQUFhO1lBQ2pCLENBQUMsQ0FBQyxDQUFDLGdFQUFhLHlCQUF5QixDQUFDLDJCQUEyQixHQUFDLENBQUMsQ0FBQyxPQUFPO1lBQy9FLENBQUMsQ0FBQyxDQUFDLGdFQUFhLHlCQUF5QixDQUFDLG1CQUFtQixHQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDNUUsQ0FBQztJQUNELE1BQU0sR0FBRyxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNuRCxNQUFNLE1BQU07SUFDVixxQkFBcUI7SUFDckIsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUk7UUFDbEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUk7UUFDbEIsNEJBQTRCO1FBQzVCLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDckIsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNYLE1BQU0sZ0JBQWdCLEdBQUcsY0FBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QyxPQUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztJQUNqQyxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7QUFDSCxDQUFDO0FBNUJELDhCQTRCQyJ9
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function fetchCode(multithreaded: boolean): Promise<ArrayBufferLike>;
|
|
1
|
+
export declare function fetchCode(multithreaded: boolean, wasmPath?: string): Promise<ArrayBufferLike>;
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/node/index.ts"],"names":[],"mappings":"AAgBA,wBAAsB,SAAS,CAAC,aAAa,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/barretenberg_wasm/fetch_code/node/index.ts"],"names":[],"mappings":"AAgBA,wBAAsB,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,4BAKxE"}
|
|
@@ -17,11 +17,11 @@ function getCurrentDir() {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
20
|
-
async function fetchCode(multithreaded) {
|
|
21
|
-
const path = getCurrentDir() + '/../../barretenberg-threads.wasm.gz';
|
|
20
|
+
async function fetchCode(multithreaded, wasmPath) {
|
|
21
|
+
const path = wasmPath ?? getCurrentDir() + '/../../barretenberg-threads.wasm.gz';
|
|
22
22
|
const compressedData = await (0, promises_1.readFile)(path);
|
|
23
23
|
const decompressedData = pako_1.default.ungzip(new Uint8Array(compressedData));
|
|
24
24
|
return decompressedData.buffer;
|
|
25
25
|
}
|
|
26
26
|
exports.fetchCode = fetchCode;
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vZmV0Y2hfY29kZS9ub2RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwwQ0FBdUM7QUFDdkMsK0JBQStCO0FBQy9CLDZCQUFvQztBQUNwQyx3REFBd0I7QUFFeEIsU0FBUyxhQUFhO0lBQ3BCLElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxFQUFFLENBQUM7UUFDckMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztTQUFNLENBQUM7UUFDTiw2REFBNkQ7UUFDN0QsYUFBYTtRQUNiLE9BQU8sSUFBQSxjQUFPLEVBQUMsSUFBQSxtQkFBYSxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0FBQ0gsQ0FBQztBQUVELDZEQUE2RDtBQUN0RCxLQUFLLFVBQVUsU0FBUyxDQUFDLGFBQXNCLEVBQUUsUUFBaUI7SUFDdkUsTUFBTSxJQUFJLEdBQUcsUUFBUSxJQUFJLGFBQWEsRUFBRSxHQUFHLHFDQUFxQyxDQUFDO0lBQ2pGLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBQSxtQkFBUSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLE1BQU0sZ0JBQWdCLEdBQUcsY0FBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDO0FBQ2pDLENBQUM7QUFMRCw4QkFLQyJ9
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from './barretenberg_wasm_main/index.js';
|
|
3
|
-
export declare function fetchModuleAndThreads(desiredThreads?: number): Promise<{
|
|
3
|
+
export declare function fetchModuleAndThreads(desiredThreads?: number, wasmPath?: string, logger?: (msg: string) => void): Promise<{
|
|
4
4
|
module: WebAssembly.Module;
|
|
5
5
|
threads: number;
|
|
6
6
|
}>;
|
|
@@ -9,7 +9,7 @@ export declare class BarretenbergWasm extends BarretenbergWasmMain {
|
|
|
9
9
|
* Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
|
|
10
10
|
* Used when running in the browser, because we can't block the main thread.
|
|
11
11
|
*/
|
|
12
|
-
static new(desiredThreads?: number): Promise<{
|
|
12
|
+
static new(desiredThreads?: number, wasmPath?: string, logger?: (msg: string) => void): Promise<{
|
|
13
13
|
worker: import("worker_threads").Worker;
|
|
14
14
|
wasm: BarretenbergWasmMainWorker;
|
|
15
15
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_wasm/index.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg_wasm/index.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAGrG,wBAAsB,qBAAqB,CACzC,cAAc,SAAK,EACnB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAqC;;;GAc/D;AAkBD,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD;;;OAGG;WACiB,GAAG,CACrB,cAAc,CAAC,EAAE,MAAM,EACvB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAwC;;;;CAQpE;AAED,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,CAAC"}
|
|
@@ -8,18 +8,20 @@ const index_js_1 = require("./barretenberg_wasm_main/factory/node/index.js");
|
|
|
8
8
|
const index_js_2 = require("./helpers/node/index.js");
|
|
9
9
|
const index_js_3 = require("./barretenberg_wasm_main/index.js");
|
|
10
10
|
const index_js_4 = require("./fetch_code/index.js");
|
|
11
|
-
|
|
12
|
-
async function fetchModuleAndThreads(desiredThreads = 32) {
|
|
11
|
+
async function fetchModuleAndThreads(desiredThreads = 32, wasmPath, logger = (0, debug_1.default)('bb.js:fetch_mat')) {
|
|
13
12
|
const shared = (0, index_js_2.getSharedMemoryAvailable)();
|
|
14
|
-
const availableThreads = shared ? await getAvailableThreads() : 1;
|
|
13
|
+
const availableThreads = shared ? await getAvailableThreads(logger) : 1;
|
|
15
14
|
// We limit the number of threads to 32 as we do not benefit from greater numbers.
|
|
16
15
|
const limitedThreads = Math.min(desiredThreads, availableThreads, 32);
|
|
17
|
-
|
|
16
|
+
logger(`Fetching bb wasm from ${wasmPath ?? 'default location'}`);
|
|
17
|
+
const code = await (0, index_js_4.fetchCode)(shared, wasmPath);
|
|
18
|
+
logger(`Compiling bb wasm of ${code.byteLength} bytes`);
|
|
18
19
|
const module = await WebAssembly.compile(code);
|
|
20
|
+
logger('Compilation of bb wasm complete');
|
|
19
21
|
return { module, threads: limitedThreads };
|
|
20
22
|
}
|
|
21
23
|
exports.fetchModuleAndThreads = fetchModuleAndThreads;
|
|
22
|
-
async function getAvailableThreads() {
|
|
24
|
+
async function getAvailableThreads(logger) {
|
|
23
25
|
if (typeof navigator !== 'undefined' && navigator.hardwareConcurrency) {
|
|
24
26
|
return navigator.hardwareConcurrency;
|
|
25
27
|
}
|
|
@@ -29,7 +31,7 @@ async function getAvailableThreads() {
|
|
|
29
31
|
return os.cpus().length;
|
|
30
32
|
}
|
|
31
33
|
catch (e) {
|
|
32
|
-
|
|
34
|
+
logger(`Could not detect environment to query number of threads. Falling back to one thread. Error: ${e.message ?? e}`);
|
|
33
35
|
return 1;
|
|
34
36
|
}
|
|
35
37
|
}
|
|
@@ -39,13 +41,13 @@ class BarretenbergWasm extends index_js_3.BarretenbergWasmMain {
|
|
|
39
41
|
* Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
|
|
40
42
|
* Used when running in the browser, because we can't block the main thread.
|
|
41
43
|
*/
|
|
42
|
-
static async new(desiredThreads) {
|
|
44
|
+
static async new(desiredThreads, wasmPath, logger = (0, debug_1.default)('bb.js:bb_wasm_main')) {
|
|
43
45
|
const worker = (0, index_js_1.createMainWorker)();
|
|
44
46
|
const wasm = (0, index_js_2.getRemoteBarretenbergWasm)(worker);
|
|
45
|
-
const { module, threads } = await fetchModuleAndThreads(desiredThreads);
|
|
46
|
-
await wasm.init(module, threads, (0, comlink_1.proxy)(
|
|
47
|
+
const { module, threads } = await fetchModuleAndThreads(desiredThreads, wasmPath, logger);
|
|
48
|
+
await wasm.init(module, threads, (0, comlink_1.proxy)(logger));
|
|
47
49
|
return { worker, wasm };
|
|
48
50
|
}
|
|
49
51
|
}
|
|
50
52
|
exports.BarretenbergWasm = BarretenbergWasm;
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHFDQUFnQztBQUNoQywwREFBZ0M7QUFDaEMsNkVBQWtGO0FBQ2xGLHNEQUE4RjtBQUM5RixnRUFBcUc7QUFDckcsb0RBQWtEO0FBRTNDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsY0FBYyxHQUFHLEVBQUUsRUFDbkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsaUJBQWlCLENBQUM7SUFFOUQsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO0lBRTFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEUsa0ZBQWtGO0lBQ2xGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sQ0FBQyx5QkFBeUIsUUFBUSxJQUFJLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUEsb0JBQVMsRUFBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLHdCQUF3QixJQUFJLENBQUMsVUFBVSxRQUFRLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQWpCRCxzREFpQkM7QUFFRCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsTUFBNkI7SUFDOUQsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdEUsT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUM7SUFDdkMsQ0FBQztTQUFNLENBQUM7UUFDTixJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsR0FBRyxnRUFBYSxJQUFJLEdBQUMsQ0FBQztZQUM5QixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDMUIsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsTUFBTSxDQUNKLCtGQUErRixDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1lBQ0YsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFhLGdCQUFpQixTQUFRLCtCQUFvQjtJQUN4RDs7O09BR0c7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDckIsY0FBdUIsRUFDdkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsb0JBQW9CLENBQUM7UUFFakUsTUFBTSxNQUFNLEdBQUcsSUFBQSwyQkFBZ0IsR0FBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0NBQXlCLEVBQTZCLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFGLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUFoQkQsNENBZ0JDIn0=
|
|
@@ -15,7 +15,7 @@ describe('barretenberg wasm', () => {
|
|
|
15
15
|
const length = 1024;
|
|
16
16
|
const ptr = await wasm.call('bbmalloc', length);
|
|
17
17
|
const buf = Buffer.alloc(length, 128);
|
|
18
|
-
await wasm.writeMemory(ptr, buf);
|
|
18
|
+
await wasm.writeMemory(ptr, Uint8Array.from(buf));
|
|
19
19
|
const result = Buffer.from(await wasm.getMemorySlice(ptr, ptr + length));
|
|
20
20
|
await wasm.call('bbfree', ptr);
|
|
21
21
|
expect(result).toStrictEqual(buf);
|
|
@@ -31,10 +31,10 @@ describe('barretenberg wasm', () => {
|
|
|
31
31
|
const length = 1024;
|
|
32
32
|
const ptr = await wasm.call('bbmalloc', length);
|
|
33
33
|
const buf = Buffer.alloc(length, 128);
|
|
34
|
-
await wasm.writeMemory(ptr, buf);
|
|
34
|
+
await wasm.writeMemory(ptr, Uint8Array.from(buf));
|
|
35
35
|
const result = Buffer.from(await wasm.getMemorySlice(ptr, ptr + length));
|
|
36
36
|
await wasm.call('bbfree', ptr);
|
|
37
37
|
expect(result).toStrictEqual(buf);
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfd2FzbS9pbmRleC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EseUNBQXNFO0FBRXRFLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7SUFDakMsSUFBSSxNQUFlLENBQUM7SUFDcEIsSUFBSSxJQUE2QixDQUFDO0lBRWxDLFNBQVMsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNuQixDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sMkJBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRVYsUUFBUSxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE1BQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3JCLE1BQU0sTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDJDQUEyQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQztRQUNwQixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsWUFBWSxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQzFCLE1BQU0sTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDeEMsbUdBQW1HO1FBQ25HLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDJDQUEyQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQztRQUNwQixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/**
|
|
3
|
+
* Convert a 32-byte BE Buffer to a BigInt.
|
|
4
|
+
*/
|
|
5
|
+
export declare function buffer32BytesToBigIntBE(buf: Buffer): bigint;
|
|
6
|
+
/**
|
|
7
|
+
* Convert a BE Uint8Array to a BigInt.
|
|
8
|
+
*/
|
|
9
|
+
export declare function uint8ArrayToBigIntBE(bytes: Uint8Array): bigint;
|
|
10
|
+
/**
|
|
11
|
+
* Convert a BigInt to a 32-byte BE Buffer.
|
|
12
|
+
*/
|
|
13
|
+
export declare function bigIntToBufferBE(value: bigint, byteLength?: number): Buffer;
|
|
14
|
+
/**
|
|
15
|
+
* Convert a BigInt to a 32-byte BE Uint8Array.
|
|
16
|
+
*/
|
|
17
|
+
export declare function bigIntToUint8ArrayBE(value: bigint, byteLength?: number): Uint8Array;
|
|
3
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bigint-array/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bigint-array/index.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO3D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAG9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,SAAK,GAAG,MAAM,CAYvE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,SAAK,GAAG,UAAU,CAE/E"}
|
|
@@ -1,26 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
3
|
+
exports.bigIntToUint8ArrayBE = exports.bigIntToBufferBE = exports.uint8ArrayToBigIntBE = exports.buffer32BytesToBigIntBE = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Convert a 32-byte BE Buffer to a BigInt.
|
|
6
|
+
*/
|
|
7
|
+
function buffer32BytesToBigIntBE(buf) {
|
|
8
|
+
return ((buf.readBigUInt64BE(0) << 192n) +
|
|
9
|
+
(buf.readBigUInt64BE(8) << 128n) +
|
|
10
|
+
(buf.readBigUInt64BE(16) << 64n) +
|
|
11
|
+
buf.readBigUInt64BE(24));
|
|
12
|
+
}
|
|
13
|
+
exports.buffer32BytesToBigIntBE = buffer32BytesToBigIntBE;
|
|
14
|
+
/**
|
|
15
|
+
* Convert a BE Uint8Array to a BigInt.
|
|
16
|
+
*/
|
|
17
|
+
function uint8ArrayToBigIntBE(bytes) {
|
|
18
|
+
const buffer = Buffer.from(bytes);
|
|
19
|
+
return buffer32BytesToBigIntBE(buffer);
|
|
14
20
|
}
|
|
15
|
-
exports.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
exports.uint8ArrayToBigIntBE = uint8ArrayToBigIntBE;
|
|
22
|
+
/**
|
|
23
|
+
* Convert a BigInt to a 32-byte BE Buffer.
|
|
24
|
+
*/
|
|
25
|
+
function bigIntToBufferBE(value, byteLength = 32) {
|
|
26
|
+
if (byteLength != 32) {
|
|
27
|
+
throw new Error(`Only 32 bytes supported for conversion from bigint to buffer, attempted byte length: ${byteLength}`);
|
|
22
28
|
}
|
|
23
|
-
|
|
29
|
+
const buf = Buffer.alloc(byteLength);
|
|
30
|
+
buf.writeBigUInt64BE(value >> 192n, 0);
|
|
31
|
+
buf.writeBigUInt64BE((value >> 128n) & 0xffffffffffffffffn, 8);
|
|
32
|
+
buf.writeBigUInt64BE((value >> 64n) & 0xffffffffffffffffn, 16);
|
|
33
|
+
buf.writeBigUInt64BE(value & 0xffffffffffffffffn, 24);
|
|
34
|
+
return buf;
|
|
35
|
+
}
|
|
36
|
+
exports.bigIntToBufferBE = bigIntToBufferBE;
|
|
37
|
+
/**
|
|
38
|
+
* Convert a BigInt to a 32-byte BE Uint8Array.
|
|
39
|
+
*/
|
|
40
|
+
function bigIntToUint8ArrayBE(value, byteLength = 32) {
|
|
41
|
+
return new Uint8Array(bigIntToBufferBE(value, byteLength));
|
|
24
42
|
}
|
|
25
|
-
exports.
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
exports.bigIntToUint8ArrayBE = bigIntToUint8ArrayBE;
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmlnaW50LWFycmF5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0gsU0FBZ0IsdUJBQXVCLENBQUMsR0FBVztJQUNqRCxPQUFPLENBQ0wsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQztRQUNoQyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO1FBQ2hDLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUM7UUFDaEMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FDeEIsQ0FBQztBQUNKLENBQUM7QUFQRCwwREFPQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsS0FBaUI7SUFDcEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxPQUFPLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFIRCxvREFHQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsS0FBYSxFQUFFLFVBQVUsR0FBRyxFQUFFO0lBQzdELElBQUksVUFBVSxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQ2Isd0ZBQXdGLFVBQVUsRUFBRSxDQUNyRyxDQUFDO0lBQ0osQ0FBQztJQUNELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdkMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxHQUFHLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9ELEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUMsR0FBRyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvRCxHQUFHLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQVpELDRDQVlDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsVUFBVSxHQUFHLEVBQUU7SUFDakUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUM3RCxDQUFDO0FBRkQsb0RBRUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"net_crs.d.ts","sourceRoot":"","sources":["../../../src/crs/net_crs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"net_crs.d.ts","sourceRoot":"","sources":["../../../src/crs/net_crs.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,qBAAa,MAAM;IAKf;;OAEG;aACa,SAAS,EAAE,MAAM;IAPnC,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,MAAM,CAAc;;IAG1B;;OAEG;IACa,SAAS,EAAE,MAAM;IAGnC;;OAEG;IACG,IAAI;IAKJ,cAAc;IAsBpB;;OAEG;IACG,cAAc;IAYpB;;;OAGG;IACH,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB;AAED;;GAEG;AACH,qBAAa,cAAc;IAIvB;;OAEG;aACa,SAAS,EAAE,MAAM;IANnC,OAAO,CAAC,IAAI,CAAc;;IAGxB;;OAEG;IACa,SAAS,EAAE,MAAM;IAGnC;;OAEG;IACG,IAAI;IAIJ,cAAc;IAmBpB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.NetGrumpkinCrs = exports.NetCrs = void 0;
|
|
4
|
+
const index_js_1 = require("../retry/index.js");
|
|
4
5
|
/**
|
|
5
6
|
* Downloader for CRS from the web or local.
|
|
6
7
|
*/
|
|
@@ -25,21 +26,21 @@ class NetCrs {
|
|
|
25
26
|
return (this.data = new Uint8Array([]));
|
|
26
27
|
}
|
|
27
28
|
const g1End = this.numPoints * 64 - 1;
|
|
28
|
-
const response = await fetch('https://aztec-ignition.s3.amazonaws.com/MAIN%20IGNITION/flat/g1.dat', {
|
|
29
|
+
const response = await (0, index_js_1.retry)(() => fetch('https://aztec-ignition.s3.amazonaws.com/MAIN%20IGNITION/flat/g1.dat', {
|
|
29
30
|
headers: {
|
|
30
31
|
Range: `bytes=0-${g1End}`,
|
|
31
32
|
},
|
|
32
33
|
cache: 'force-cache',
|
|
33
|
-
});
|
|
34
|
+
}), (0, index_js_1.makeBackoff)([5, 5, 5]));
|
|
34
35
|
return (this.data = new Uint8Array(await response.arrayBuffer()));
|
|
35
36
|
}
|
|
36
37
|
/**
|
|
37
38
|
* Download the G2 points data.
|
|
38
39
|
*/
|
|
39
40
|
async downloadG2Data() {
|
|
40
|
-
const response2 = await fetch('https://aztec-ignition.s3.amazonaws.com/MAIN%20IGNITION/flat/g2.dat', {
|
|
41
|
+
const response2 = await (0, index_js_1.retry)(() => fetch('https://aztec-ignition.s3.amazonaws.com/MAIN%20IGNITION/flat/g2.dat', {
|
|
41
42
|
cache: 'force-cache',
|
|
42
|
-
});
|
|
43
|
+
}), (0, index_js_1.makeBackoff)([5, 5, 5]));
|
|
43
44
|
return (this.g2Data = new Uint8Array(await response2.arrayBuffer()));
|
|
44
45
|
}
|
|
45
46
|
/**
|
|
@@ -99,4 +100,4 @@ class NetGrumpkinCrs {
|
|
|
99
100
|
}
|
|
100
101
|
}
|
|
101
102
|
exports.NetGrumpkinCrs = NetGrumpkinCrs;
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0X2Nycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnMvbmV0X2Nycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBdUQ7QUFDdkQ7O0dBRUc7QUFDSCxNQUFhLE1BQU07SUFJakI7SUFDRTs7T0FFRztJQUNhLFNBQWlCO1FBQWpCLGNBQVMsR0FBVCxTQUFTLENBQVE7SUFDaEMsQ0FBQztJQUVKOztPQUVHO0lBQ0gsS0FBSyxDQUFDLElBQUk7UUFDUixNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM1QixNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWM7UUFDbEIseUdBQXlHO1FBQ3pHLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFdEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFBLGdCQUFLLEVBQzFCLEdBQUcsRUFBRSxDQUNILEtBQUssQ0FBQyxxRUFBcUUsRUFBRTtZQUMzRSxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLFdBQVcsS0FBSyxFQUFFO2FBQzFCO1lBQ0QsS0FBSyxFQUFFLGFBQWE7U0FDckIsQ0FBQyxFQUNKLElBQUEsc0JBQVcsRUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDdkIsQ0FBQztRQUVGLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsY0FBYztRQUNsQixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUEsZ0JBQUssRUFDM0IsR0FBRyxFQUFFLENBQ0gsS0FBSyxDQUFDLHFFQUFxRSxFQUFFO1lBQzNFLEtBQUssRUFBRSxhQUFhO1NBQ3JCLENBQUMsRUFDSixJQUFBLHNCQUFXLEVBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ3ZCLENBQUM7UUFFRixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxNQUFNLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztDQUNGO0FBdkVELHdCQXVFQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxjQUFjO0lBR3pCO0lBQ0U7O09BRUc7SUFDYSxTQUFpQjtRQUFqQixjQUFTLEdBQVQsU0FBUyxDQUFRO0lBQ2hDLENBQUM7SUFFSjs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJO1FBQ1IsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELEtBQUssQ0FBQyxjQUFjO1FBQ2xCLHlHQUF5RztRQUN6RyxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ25CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUV0QyxNQUFNLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxtRkFBbUYsRUFBRTtZQUNoSCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLFNBQVMsT0FBTyxJQUFJLEtBQUssRUFBRTthQUNuQztZQUNELEtBQUssRUFBRSxhQUFhO1NBQ3JCLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUEzQ0Qsd0NBMkNDIn0=
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
export declare class Crs {
|
|
5
5
|
readonly numPoints: number;
|
|
6
6
|
readonly path: string;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
private readonly logger;
|
|
8
|
+
constructor(numPoints: number, path: string, logger?: (msg: string) => void);
|
|
9
|
+
static new(numPoints: number, crsPath?: string, logger?: (msg: string) => void): Promise<Crs>;
|
|
9
10
|
init(): Promise<void>;
|
|
10
11
|
/**
|
|
11
12
|
* G1 points data for prover key.
|
|
@@ -24,8 +25,9 @@ export declare class Crs {
|
|
|
24
25
|
export declare class GrumpkinCrs {
|
|
25
26
|
readonly numPoints: number;
|
|
26
27
|
readonly path: string;
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
private readonly logger;
|
|
29
|
+
constructor(numPoints: number, path: string, logger?: (msg: string) => void);
|
|
30
|
+
static new(numPoints: number, crsPath?: string, logger?: (msg: string) => void): Promise<GrumpkinCrs>;
|
|
29
31
|
init(): Promise<void>;
|
|
30
32
|
/**
|
|
31
33
|
* G1 points data for prover key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crs/node/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crs/node/index.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,qBAAa,GAAG;aAEI,SAAS,EAAE,MAAM;aACjB,IAAI,EAAE,MAAM;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAFP,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACX,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAA+B;WAG9D,GAAG,CACd,SAAS,EAAE,MAAM,EACjB,OAAO,SAAyB,EAChC,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAA+B;IAOpD,IAAI;IAsBV;;;OAGG;IACH,SAAS,IAAI,UAAU;IAWvB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB;AAED;;GAEG;AACH,qBAAa,WAAW;aAEJ,SAAS,EAAE,MAAM;aACjB,IAAI,EAAE,MAAM;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAFP,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACX,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAA+B;WAG9D,GAAG,CACd,SAAS,EAAE,MAAM,EACjB,OAAO,SAAyB,EAChC,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAA+B;IAOpD,IAAI;IAkBV;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB"}
|