@aztec/bb.js 0.85.0-nightly.20250421 → 0.85.0-nightly.20250423

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.
Files changed (129) hide show
  1. package/dest/browser/262.5e9f6950be638d202cbf.js +1085 -0
  2. package/dest/browser/520.d29c6c890f635d938fd0.js +948 -0
  3. package/dest/browser/733.655674bbbb79bdf168c4.js +7 -0
  4. package/dest/browser/barretenberg/index.d.ts +3 -1
  5. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  6. package/dest/browser/barretenberg-threads.js +2 -29
  7. package/dest/browser/barretenberg.js +2 -29
  8. package/dest/browser/barretenberg_api/index.d.ts +5 -6
  9. package/dest/browser/barretenberg_api/index.d.ts.map +1 -1
  10. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  11. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  12. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
  13. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
  14. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  15. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  16. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  17. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  18. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
  19. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
  20. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  21. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  22. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
  23. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  24. package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts +1 -1
  25. package/dest/browser/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  26. package/dest/browser/barretenberg_wasm/index.d.ts +0 -13
  27. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
  28. package/dest/browser/index.d.ts +2 -2
  29. package/dest/browser/index.d.ts.map +1 -1
  30. package/dest/browser/index.js +10556 -9991
  31. package/dest/node/barretenberg/index.d.ts +3 -1
  32. package/dest/node/barretenberg/index.d.ts.map +1 -1
  33. package/dest/node/barretenberg/index.js +6 -3
  34. package/dest/node/barretenberg_api/index.d.ts +5 -6
  35. package/dest/node/barretenberg_api/index.d.ts.map +1 -1
  36. package/dest/node/barretenberg_api/index.js +1 -1
  37. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  38. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  39. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  40. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
  41. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
  42. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
  43. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
  44. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  45. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  46. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
  47. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  48. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  49. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
  50. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
  51. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
  52. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
  53. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  54. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  55. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
  56. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
  57. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  58. package/dest/node/barretenberg_wasm/helpers/browser/index.js +15 -2
  59. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +1 -1
  60. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  61. package/dest/node/barretenberg_wasm/helpers/node/index.js +1 -1
  62. package/dest/node/barretenberg_wasm/index.d.ts +0 -13
  63. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  64. package/dest/node/barretenberg_wasm/index.js +2 -18
  65. package/dest/node/barretenberg_wasm/index.test.js +6 -6
  66. package/dest/node/bindgen/typescript.d.ts.map +1 -1
  67. package/dest/node/bindgen/typescript.js +5 -6
  68. package/dest/node/index.d.ts +2 -2
  69. package/dest/node/index.d.ts.map +1 -1
  70. package/dest/node/index.js +1 -1
  71. package/dest/node-cjs/barretenberg/index.d.ts +3 -1
  72. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  73. package/dest/node-cjs/barretenberg/index.js +12 -9
  74. package/dest/node-cjs/barretenberg_api/index.d.ts +5 -6
  75. package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
  76. package/dest/node-cjs/barretenberg_api/index.js +1 -1
  77. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  78. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  79. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  80. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +9 -4
  81. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -2
  82. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -1
  83. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -5
  84. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  85. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  86. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -2
  87. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  88. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  89. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +9 -4
  90. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -2
  91. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -1
  92. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -5
  93. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  94. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  95. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -2
  96. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +7 -1
  97. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  98. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +17 -3
  99. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +1 -1
  100. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  101. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +1 -1
  102. package/dest/node-cjs/barretenberg_wasm/index.d.ts +0 -13
  103. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
  104. package/dest/node-cjs/barretenberg_wasm/index.js +6 -23
  105. package/dest/node-cjs/barretenberg_wasm/index.test.js +6 -6
  106. package/dest/node-cjs/bindgen/typescript.d.ts.map +1 -1
  107. package/dest/node-cjs/bindgen/typescript.js +5 -6
  108. package/dest/node-cjs/index.d.ts +2 -2
  109. package/dest/node-cjs/index.d.ts.map +1 -1
  110. package/dest/node-cjs/index.js +1 -1
  111. package/package.json +6 -9
  112. package/src/barretenberg/index.ts +7 -3
  113. package/src/barretenberg_api/index.ts +4 -5
  114. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +8 -3
  115. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +4 -6
  116. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +1 -1
  117. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +8 -3
  118. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +4 -6
  119. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +1 -1
  120. package/src/barretenberg_wasm/helpers/browser/index.ts +18 -2
  121. package/src/barretenberg_wasm/helpers/node/index.ts +2 -2
  122. package/src/barretenberg_wasm/index.test.ts +7 -7
  123. package/src/barretenberg_wasm/index.ts +1 -24
  124. package/src/bindgen/typescript.ts +4 -5
  125. package/src/index.ts +2 -2
  126. package/dest/browser/522.6386c00ebfb22619e11b.js +0 -3
  127. package/dest/browser/thread.worker.worker.worker.js.LICENSE.txt +0 -5
  128. /package/dest/browser/{main.worker.worker.js.LICENSE.txt → 262.5e9f6950be638d202cbf.js.LICENSE.txt} +0 -0
  129. /package/dest/browser/{thread.worker.worker.js.LICENSE.txt → 520.d29c6c890f635d938fd0.js.LICENSE.txt} +0 -0
@@ -1,20 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BarretenbergWasm = exports.fetchModuleAndThreads = void 0;
3
+ exports.fetchModuleAndThreads = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const comlink_1 = require("comlink");
6
5
  const debug_1 = tslib_1.__importDefault(require("debug"));
7
- const index_js_1 = require("./barretenberg_wasm_main/factory/node/index.js");
8
- const index_js_2 = require("./helpers/node/index.js");
9
- const index_js_3 = require("./barretenberg_wasm_main/index.js");
10
- const index_js_4 = require("./fetch_code/index.js");
6
+ const index_js_1 = require("./helpers/node/index.js");
7
+ const index_js_2 = require("./fetch_code/index.js");
11
8
  async function fetchModuleAndThreads(desiredThreads = 32, wasmPath, logger = (0, debug_1.default)('bb.js:fetch_mat')) {
12
- const shared = (0, index_js_2.getSharedMemoryAvailable)();
9
+ const shared = (0, index_js_1.getSharedMemoryAvailable)();
13
10
  const availableThreads = shared ? await getAvailableThreads(logger) : 1;
14
11
  // We limit the number of threads to 32 as we do not benefit from greater numbers.
15
12
  const limitedThreads = Math.min(desiredThreads, availableThreads, 32);
16
13
  logger(`Fetching bb wasm from ${wasmPath ?? 'default location'}`);
17
- const code = await (0, index_js_4.fetchCode)(shared, wasmPath);
14
+ const code = await (0, index_js_2.fetchCode)(shared, wasmPath);
18
15
  logger(`Compiling bb wasm of ${code.byteLength} bytes`);
19
16
  const module = await WebAssembly.compile(code);
20
17
  logger('Compilation of bb wasm complete');
@@ -36,18 +33,4 @@ async function getAvailableThreads(logger) {
36
33
  }
37
34
  }
38
35
  }
39
- class BarretenbergWasm extends index_js_3.BarretenbergWasmMain {
40
- /**
41
- * Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
42
- * Used when running in the browser, because we can't block the main thread.
43
- */
44
- static async new(desiredThreads, wasmPath, logger = (0, debug_1.default)('bb.js:bb_wasm_main')) {
45
- const worker = (0, index_js_1.createMainWorker)();
46
- const wasm = (0, index_js_2.getRemoteBarretenbergWasm)(worker);
47
- const { module, threads } = await fetchModuleAndThreads(desiredThreads, wasmPath, logger);
48
- await wasm.init(module, threads, (0, comlink_1.proxy)(logger));
49
- return { worker, wasm };
50
- }
51
- }
52
- exports.BarretenbergWasm = BarretenbergWasm;
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHFDQUFnQztBQUNoQywwREFBZ0M7QUFDaEMsNkVBQWtGO0FBQ2xGLHNEQUE4RjtBQUM5RixnRUFBcUc7QUFDckcsb0RBQWtEO0FBRTNDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsY0FBYyxHQUFHLEVBQUUsRUFDbkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsaUJBQWlCLENBQUM7SUFFOUQsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO0lBRTFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEUsa0ZBQWtGO0lBQ2xGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sQ0FBQyx5QkFBeUIsUUFBUSxJQUFJLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUEsb0JBQVMsRUFBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLHdCQUF3QixJQUFJLENBQUMsVUFBVSxRQUFRLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQWpCRCxzREFpQkM7QUFFRCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsTUFBNkI7SUFDOUQsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdEUsT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUM7SUFDdkMsQ0FBQztTQUFNLENBQUM7UUFDTixJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsR0FBRyxnRUFBYSxJQUFJLEdBQUMsQ0FBQztZQUM5QixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDMUIsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsTUFBTSxDQUNKLCtGQUErRixDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1lBQ0YsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFhLGdCQUFpQixTQUFRLCtCQUFvQjtJQUN4RDs7O09BR0c7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDckIsY0FBdUIsRUFDdkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsb0JBQW9CLENBQUM7UUFFakUsTUFBTSxNQUFNLEdBQUcsSUFBQSwyQkFBZ0IsR0FBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0NBQXlCLEVBQTZCLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFGLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUFoQkQsNENBZ0JDIn0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDBEQUFnQztBQUNoQyxzREFBbUU7QUFDbkUsb0RBQWtEO0FBRTNDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsY0FBYyxHQUFHLEVBQUUsRUFDbkIsUUFBaUIsRUFDakIsU0FBZ0MsSUFBQSxlQUFXLEVBQUMsaUJBQWlCLENBQUM7SUFFOUQsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQ0FBd0IsR0FBRSxDQUFDO0lBRTFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEUsa0ZBQWtGO0lBQ2xGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sQ0FBQyx5QkFBeUIsUUFBUSxJQUFJLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUNsRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUEsb0JBQVMsRUFBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLHdCQUF3QixJQUFJLENBQUMsVUFBVSxRQUFRLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsTUFBTSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQWpCRCxzREFpQkM7QUFFRCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsTUFBNkI7SUFDOUQsSUFBSSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdEUsT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUM7SUFDdkMsQ0FBQztTQUFNLENBQUM7UUFDTixJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsR0FBRyxnRUFBYSxJQUFJLEdBQUMsQ0FBQztZQUM5QixPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDMUIsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsTUFBTSxDQUNKLCtGQUErRixDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUNoSCxDQUFDO1lBQ0YsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMifQ==
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_js_1 = require("./index.js");
3
+ const index_js_1 = require("../index.js");
4
4
  describe('barretenberg wasm', () => {
5
- let worker;
5
+ let api;
6
6
  let wasm;
7
7
  beforeAll(async () => {
8
- ({ wasm, worker } = await index_js_1.BarretenbergWasm.new(2));
8
+ api = await index_js_1.Barretenberg.new({ threads: 2 });
9
+ wasm = api.getWasm();
9
10
  }, 20000);
10
11
  afterAll(async () => {
11
- await wasm.destroy();
12
- await worker.terminate();
12
+ await api.destroy();
13
13
  });
14
14
  it('should new malloc, transfer and slice mem', async () => {
15
15
  const length = 1024;
@@ -37,4 +37,4 @@ describe('barretenberg wasm', () => {
37
37
  expect(result).toStrictEqual(buf);
38
38
  });
39
39
  });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfd2FzbS9pbmRleC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EseUNBQXNFO0FBRXRFLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7SUFDakMsSUFBSSxNQUFlLENBQUM7SUFDcEIsSUFBSSxJQUE2QixDQUFDO0lBRWxDLFNBQVMsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNuQixDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sMkJBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRVYsUUFBUSxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE1BQU0sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3JCLE1BQU0sTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDJDQUEyQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQztRQUNwQixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsWUFBWSxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQzFCLE1BQU0sTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDeEMsbUdBQW1HO1FBQ25HLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDJDQUEyQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQztRQUNwQixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN6RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmdfd2FzbS9pbmRleC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsMENBQTJDO0FBRTNDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7SUFDakMsSUFBSSxHQUFpQixDQUFDO0lBQ3RCLElBQUksSUFBZ0MsQ0FBQztJQUVyQyxTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbkIsR0FBRyxHQUFHLE1BQU0sdUJBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVWLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNsQixNQUFNLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekUsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLFlBQVksRUFBRSxLQUFLLElBQUksRUFBRTtRQUMxQixNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDBCQUEwQixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3hDLG1HQUFtRztRQUNuRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDcEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN0QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDekUsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/bindgen/typescript.ts"],"names":[],"mappings":"AAKA,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,UAiBtD"}
1
+ {"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/bindgen/typescript.ts"],"names":[],"mappings":"AAKA,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,UAgBtD"}
@@ -10,10 +10,9 @@ function generateTypeScriptCode(filename) {
10
10
  const functionDeclarations = JSON.parse(fileContent);
11
11
  let output = `// WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
12
12
  /* eslint-disable @typescript-eslint/no-unused-vars */
13
- import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
14
- import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
13
+ import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
15
14
  import { BufferDeserializer, NumberDeserializer, VectorDeserializer, BoolDeserializer, StringDeserializer, serializeBufferable, OutputType } from '../serialize/index.js';
16
- import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
15
+ import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
17
16
 
18
17
  `;
19
18
  output += generateClass(functionDeclarations);
@@ -24,7 +23,7 @@ exports.generateTypeScriptCode = generateTypeScriptCode;
24
23
  function generateClass(functionDeclarations) {
25
24
  let output = `
26
25
  export class BarretenbergApi {
27
- constructor(protected wasm: BarretenbergWasmWorker | BarretenbergWasmMain) {}
26
+ constructor(protected wasm: BarretenbergWasmMainWorker) {}
28
27
 
29
28
  `;
30
29
  for (const { functionName, inArgs, outArgs } of functionDeclarations) {
@@ -65,7 +64,7 @@ export class BarretenbergApi {
65
64
  function generateSyncClass(functionDeclarations) {
66
65
  let output = `
67
66
  export class BarretenbergApiSync {
68
- constructor(protected wasm: BarretenbergWasm) {}
67
+ constructor(protected wasm: BarretenbergWasmMain) {}
69
68
 
70
69
  `;
71
70
  for (const { functionName, inArgs, outArgs } of functionDeclarations) {
@@ -103,4 +102,4 @@ export class BarretenbergApiSync {
103
102
  output += `}`;
104
103
  return output;
105
104
  }
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW5kZ2VuL3R5cGVzY3JpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9EQUFvQjtBQUNwQiwrQ0FBeUQ7QUFDekQseURBQWlEO0FBR2pELFNBQWdCLHNCQUFzQixDQUFDLFFBQWdCO0lBQ3JELE1BQU0sV0FBVyxHQUFHLFlBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sb0JBQW9CLEdBQTBCLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFNUUsSUFBSSxNQUFNLEdBQUc7Ozs7Ozs7Q0FPZCxDQUFDO0lBRUEsTUFBTSxJQUFJLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sSUFBSSxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRWxELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFqQkQsd0RBaUJDO0FBRUQsU0FBUyxhQUFhLENBQUMsb0JBQTJDO0lBQ2hFLElBQUksTUFBTSxHQUFHOzs7O0NBSWQsQ0FBQztJQUVBLEtBQUssTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUNyRSxJQUFJLENBQUM7WUFDSCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBQSw4QkFBVyxFQUFDLElBQUksQ0FBQyxLQUFLLElBQUEscUJBQU8sRUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZHLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixNQUFNO2lCQUN4QyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFB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
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW5kZ2VuL3R5cGVzY3JpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9EQUFvQjtBQUNwQiwrQ0FBeUQ7QUFDekQseURBQWlEO0FBR2pELFNBQWdCLHNCQUFzQixDQUFDLFFBQWdCO0lBQ3JELE1BQU0sV0FBVyxHQUFHLFlBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sb0JBQW9CLEdBQTBCLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFNUUsSUFBSSxNQUFNLEdBQUc7Ozs7OztDQU1kLENBQUM7SUFFQSxNQUFNLElBQUksYUFBYSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDOUMsTUFBTSxJQUFJLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFFbEQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQWhCRCx3REFnQkM7QUFFRCxTQUFTLGFBQWEsQ0FBQyxvQkFBMkM7SUFDaEUsSUFBSSxNQUFNLEdBQUc7Ozs7Q0FJZCxDQUFDO0lBRUEsS0FBSyxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1FBQ3JFLElBQUksQ0FBQztZQUNILE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFBLDhCQUFXLEVBQUMsSUFBSSxDQUFDLEtBQUssSUFBQSxxQkFBTyxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkcsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLE1BQU07aUJBQ3hDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUEs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
@@ -1,5 +1,5 @@
1
1
  export { Crs, GrumpkinCrs } from './crs/index.js';
2
- export { BackendOptions, Barretenberg, BarretenbergSync, BarretenbergVerifier, UltraPlonkBackend, UltraHonkBackend, AztecClientBackend, } from './barretenberg/index.js';
2
+ export { type BackendOptions, Barretenberg, BarretenbergSync, BarretenbergVerifier, UltraPlonkBackend, UltraHonkBackend, AztecClientBackend, } from './barretenberg/index.js';
3
3
  export { RawBuffer, Fr } from './types/index.js';
4
- export { splitHonkProof, reconstructHonkProof, deflattenFields, ProofData } from './proof/index.js';
4
+ export { splitHonkProof, reconstructHonkProof, deflattenFields, type ProofData } from './proof/index.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,KAAK,cAAc,EACnB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC"}
@@ -18,4 +18,4 @@ var index_js_4 = require("./proof/index.js");
18
18
  Object.defineProperty(exports, "splitHonkProof", { enumerable: true, get: function () { return index_js_4.splitHonkProof; } });
19
19
  Object.defineProperty(exports, "reconstructHonkProof", { enumerable: true, get: function () { return index_js_4.reconstructHonkProof; } });
20
20
  Object.defineProperty(exports, "deflattenFields", { enumerable: true, get: function () { return index_js_4.deflattenFields; } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQWtEO0FBQXpDLCtGQUFBLEdBQUcsT0FBQTtBQUFFLHVHQUFBLFdBQVcsT0FBQTtBQUN6QixvREFRaUM7QUFOL0Isd0dBQUEsWUFBWSxPQUFBO0FBQ1osNEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsZ0hBQUEsb0JBQW9CLE9BQUE7QUFDcEIsNkdBQUEsaUJBQWlCLE9BQUE7QUFDakIsNEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsOEdBQUEsa0JBQWtCLE9BQUE7QUFHcEIsNkNBQWlEO0FBQXhDLHFHQUFBLFNBQVMsT0FBQTtBQUFFLDhGQUFBLEVBQUUsT0FBQTtBQUN0Qiw2Q0FBb0c7QUFBM0YsMEdBQUEsY0FBYyxPQUFBO0FBQUUsZ0hBQUEsb0JBQW9CLE9BQUE7QUFBRSwyR0FBQSxlQUFlLE9BQUEifQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQWtEO0FBQXpDLCtGQUFBLEdBQUcsT0FBQTtBQUFFLHVHQUFBLFdBQVcsT0FBQTtBQUN6QixvREFRaUM7QUFOL0Isd0dBQUEsWUFBWSxPQUFBO0FBQ1osNEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsZ0hBQUEsb0JBQW9CLE9BQUE7QUFDcEIsNkdBQUEsaUJBQWlCLE9BQUE7QUFDakIsNEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsOEdBQUEsa0JBQWtCLE9BQUE7QUFHcEIsNkNBQWlEO0FBQXhDLHFHQUFBLFNBQVMsT0FBQTtBQUFFLDhGQUFBLEVBQUUsT0FBQTtBQUN0Qiw2Q0FBeUc7QUFBaEcsMEdBQUEsY0FBYyxPQUFBO0FBQUUsZ0hBQUEsb0JBQW9CLE9BQUE7QUFBRSwyR0FBQSxlQUFlLE9BQUEifQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aztec/bb.js",
3
3
  "packageManager": "yarn@4.5.2",
4
- "version": "0.85.0-nightly.20250421",
4
+ "version": "0.85.0-nightly.20250423",
5
5
  "homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/barretenberg/ts",
6
6
  "license": "MIT",
7
7
  "type": "module",
@@ -85,21 +85,18 @@
85
85
  "buffer": "^6.0.3",
86
86
  "eslint": "^8.35.0",
87
87
  "eslint-config-prettier": "^8.8.0",
88
- "html-webpack-plugin": "^5.5.1",
88
+ "html-webpack-plugin": "^5.6.3",
89
89
  "idb-keyval": "^6.2.1",
90
90
  "jest": "^29.5.0",
91
91
  "msgpackr": "^1.11.2",
92
92
  "prettier": "^2.8.4",
93
- "resolve-typescript-plugin": "^2.0.1",
94
- "source-map-support": "^0.5.21",
95
- "terser-webpack-plugin": "^5.3.11",
93
+ "terser-webpack-plugin": "^5.3.14",
96
94
  "ts-jest": "^29.1.0",
97
95
  "ts-loader": "^9.4.2",
98
96
  "ts-node": "^10.9.1",
99
97
  "typescript": "5.4.5",
100
- "webpack": "^5.82.1",
101
- "webpack-cli": "^5.1.1",
102
- "webpack-dev-server": "^5.2.0",
103
- "worker-loader": "^3.0.8"
98
+ "webpack": "^5.99.6",
99
+ "webpack-cli": "^6.0.1",
100
+ "webpack-dev-server": "^5.2.1"
104
101
  }
105
102
  }
@@ -3,10 +3,10 @@ import { BarretenbergApi, BarretenbergApiSync } from '../barretenberg_api/index.
3
3
  import { createMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js';
4
4
  import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
5
5
  import { getRemoteBarretenbergWasm } from '../barretenberg_wasm/helpers/index.js';
6
- import { BarretenbergWasmWorker, fetchModuleAndThreads } from '../barretenberg_wasm/index.js';
7
6
  import createDebug from 'debug';
8
7
  import { Crs, GrumpkinCrs } from '../crs/index.js';
9
8
  import { RawBuffer } from '../types/raw_buffer.js';
9
+ import { fetchModuleAndThreads } from '../barretenberg_wasm/index.js';
10
10
 
11
11
  export { BarretenbergVerifier } from './verifier.js';
12
12
  export { UltraPlonkBackend, UltraHonkBackend, AztecClientBackend } from './backend.js';
@@ -40,7 +40,7 @@ export type CircuitOptions = {
40
40
  export class Barretenberg extends BarretenbergApi {
41
41
  private options: BackendOptions;
42
42
 
43
- private constructor(private worker: any, wasm: BarretenbergWasmWorker, options: BackendOptions) {
43
+ private constructor(private worker: any, wasm: BarretenbergWasmMainWorker, options: BackendOptions) {
44
44
  super(wasm);
45
45
  this.options = options;
46
46
  }
@@ -52,7 +52,7 @@ export class Barretenberg extends BarretenbergApi {
52
52
  * It threads > 1 (defaults to hardware availability), child threads will be created on their own workers.
53
53
  */
54
54
  static async new(options: BackendOptions = {}) {
55
- const worker = createMainWorker();
55
+ const worker = await createMainWorker();
56
56
  const wasm = getRemoteBarretenbergWasm<BarretenbergWasmMainWorker>(worker);
57
57
  const { module, threads } = await fetchModuleAndThreads(options.threads, options.wasmPath, options.logger);
58
58
  await wasm.init(
@@ -97,6 +97,10 @@ export class Barretenberg extends BarretenbergApi {
97
97
  await this.wasm.destroy();
98
98
  await this.worker.terminate();
99
99
  }
100
+
101
+ getWasm() {
102
+ return this.wasm;
103
+ }
100
104
  }
101
105
 
102
106
  let barrentenbergSyncSingletonPromise: Promise<BarretenbergSync>;
@@ -1,7 +1,6 @@
1
1
  // WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
2
2
  /* eslint-disable @typescript-eslint/no-unused-vars */
3
- import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
4
- import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
3
+ import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
5
4
  import {
6
5
  BufferDeserializer,
7
6
  NumberDeserializer,
@@ -11,10 +10,10 @@ import {
11
10
  serializeBufferable,
12
11
  OutputType,
13
12
  } from '../serialize/index.js';
14
- import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
13
+ import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
15
14
 
16
15
  export class BarretenbergApi {
17
- constructor(protected wasm: BarretenbergWasmWorker | BarretenbergWasmMain) {}
16
+ constructor(protected wasm: BarretenbergWasmMainWorker) {}
18
17
 
19
18
  async pedersenCommit(inputsBuffer: Fr[], ctxIndex: number): Promise<Point> {
20
19
  const inArgs = [inputsBuffer, ctxIndex].map(serializeBufferable);
@@ -606,7 +605,7 @@ export class BarretenbergApi {
606
605
  }
607
606
  }
608
607
  export class BarretenbergApiSync {
609
- constructor(protected wasm: BarretenbergWasm) {}
608
+ constructor(protected wasm: BarretenbergWasmMain) {}
610
609
 
611
610
  pedersenCommit(inputsBuffer: Fr[], ctxIndex: number): Point {
612
611
  const inArgs = [inputsBuffer, ctxIndex].map(serializeBufferable);
@@ -1,10 +1,15 @@
1
1
  import debug from 'debug';
2
- import MainWorker from './main.worker.js';
2
+ import { readinessListener } from '../../../helpers/browser/index.js';
3
3
 
4
- export function createMainWorker() {
5
- const worker = new MainWorker();
4
+ export async function createMainWorker() {
5
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
+ // @ts-ignore
7
+ const worker = new Worker(new URL('./main.worker.js', import.meta.url), {
8
+ type: 'module',
9
+ });
6
10
  const debugStr = debug.disable();
7
11
  debug.enable(debugStr);
8
12
  worker.postMessage({ debug: debugStr });
13
+ await new Promise<void>(resolve => readinessListener(worker, resolve));
9
14
  return worker;
10
15
  }
@@ -1,15 +1,13 @@
1
1
  import { expose } from 'comlink';
2
2
  import { BarretenbergWasmMain } from '../../index.js';
3
3
  import debug from 'debug';
4
+ import { Ready } from '../../../helpers/browser/index.js';
4
5
 
5
- self.onmessage = function (e) {
6
+ addEventListener('message', e => {
6
7
  if (e.data.debug) {
7
8
  debug.enable(e.data.debug);
8
9
  }
9
- };
10
+ });
10
11
 
11
12
  expose(new BarretenbergWasmMain());
12
-
13
- self.postMessage({ ready: true });
14
-
15
- export default null as any;
13
+ postMessage(Ready);
@@ -14,5 +14,5 @@ function getCurrentDir() {
14
14
 
15
15
  export function createMainWorker() {
16
16
  const __dirname = getCurrentDir();
17
- return new Worker(__dirname + `/main.worker.js`);
17
+ return Promise.resolve(new Worker(__dirname + `/main.worker.js`));
18
18
  }
@@ -1,10 +1,15 @@
1
1
  import debug from 'debug';
2
- import ThreadWorker from './thread.worker.js';
2
+ import { readinessListener } from '../../../helpers/browser/index.js';
3
3
 
4
- export function createThreadWorker() {
5
- const worker = new ThreadWorker();
4
+ export async function createThreadWorker() {
5
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
+ // @ts-ignore
7
+ const worker = new Worker(new URL('./thread.worker.js', import.meta.url), {
8
+ type: 'module',
9
+ });
6
10
  const debugStr = debug.disable();
7
11
  debug.enable(debugStr);
8
12
  worker.postMessage({ debug: debugStr });
13
+ await new Promise<void>(resolve => readinessListener(worker, resolve));
9
14
  return worker;
10
15
  }
@@ -1,15 +1,13 @@
1
1
  import { expose } from 'comlink';
2
2
  import { BarretenbergWasmThread } from '../../index.js';
3
3
  import debug from 'debug';
4
+ import { Ready } from '../../../helpers/browser/index.js';
4
5
 
5
- self.onmessage = function (e) {
6
+ addEventListener('message', e => {
6
7
  if (e.data.debug) {
7
8
  debug.enable(e.data.debug);
8
9
  }
9
- };
10
+ });
10
11
 
11
12
  expose(new BarretenbergWasmThread());
12
-
13
- self.postMessage({ ready: true });
14
-
15
- export default null as any;
13
+ postMessage(Ready);
@@ -14,5 +14,5 @@ function getCurrentDir() {
14
14
 
15
15
  export function createThreadWorker() {
16
16
  const __dirname = getCurrentDir();
17
- return new Worker(__dirname + `/thread.worker.js`);
17
+ return Promise.resolve(new Worker(__dirname + `/thread.worker.js`));
18
18
  }
@@ -6,7 +6,7 @@ export function getSharedMemoryAvailable() {
6
6
  }
7
7
 
8
8
  export function getRemoteBarretenbergWasm<T>(worker: Worker) {
9
- return wrap(worker) as T;
9
+ return wrap<T>(worker);
10
10
  }
11
11
 
12
12
  export function getNumCpu() {
@@ -14,9 +14,25 @@ export function getNumCpu() {
14
14
  }
15
15
 
16
16
  export function threadLogger(): ((msg: string) => void) | undefined {
17
- return undefined;
17
+ return console.log;
18
18
  }
19
19
 
20
20
  export function killSelf() {
21
21
  self.close();
22
22
  }
23
+
24
+ // Solution to async initialization of workers, taken from
25
+ // https://github.com/GoogleChromeLabs/comlink/issues/635#issuecomment-1598913044
26
+
27
+ /** The message expected by the `readinessListener`. */
28
+ export const Ready = { ready: true };
29
+
30
+ /** Listen for the readiness message from the Worker and call the `callback` once. */
31
+ export function readinessListener(worker: Worker, callback: () => void) {
32
+ worker.addEventListener('message', function ready(event: MessageEvent<typeof Ready>) {
33
+ if (!!event.data && event.data.ready === true) {
34
+ worker.removeEventListener('message', ready);
35
+ callback();
36
+ }
37
+ });
38
+ }
@@ -13,8 +13,8 @@ export function getSharedMemoryAvailable() {
13
13
  * Note we give it the type information it needs so the returned Proxy object looks like that type.
14
14
  * Node has a different implementation, needing this nodeEndpoint wrapper, hence this function exists here.
15
15
  */
16
- export function getRemoteBarretenbergWasm<T>(worker: Worker): T {
17
- return wrap(nodeEndpoint(worker)) as T;
16
+ export function getRemoteBarretenbergWasm<T>(worker: Worker) {
17
+ return wrap<T>(nodeEndpoint(worker));
18
18
  }
19
19
 
20
20
  /**
@@ -1,17 +1,17 @@
1
- import { type Worker } from 'worker_threads';
2
- import { BarretenbergWasm, BarretenbergWasmWorker } from './index.js';
1
+ import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from './barretenberg_wasm_main/index.js';
2
+ import { Barretenberg } from '../index.js';
3
3
 
4
4
  describe('barretenberg wasm', () => {
5
- let worker!: Worker;
6
- let wasm!: BarretenbergWasmWorker;
5
+ let api: Barretenberg;
6
+ let wasm: BarretenbergWasmMainWorker;
7
7
 
8
8
  beforeAll(async () => {
9
- ({ wasm, worker } = await BarretenbergWasm.new(2));
9
+ api = await Barretenberg.new({ threads: 2 });
10
+ wasm = api.getWasm();
10
11
  }, 20000);
11
12
 
12
13
  afterAll(async () => {
13
- await wasm.destroy();
14
- await worker.terminate();
14
+ await api.destroy();
15
15
  });
16
16
 
17
17
  it('should new malloc, transfer and slice mem', async () => {
@@ -1,8 +1,5 @@
1
- import { proxy } from 'comlink';
2
1
  import createDebug from 'debug';
3
- import { createMainWorker } from './barretenberg_wasm_main/factory/node/index.js';
4
- import { getRemoteBarretenbergWasm, getSharedMemoryAvailable } from './helpers/node/index.js';
5
- import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from './barretenberg_wasm_main/index.js';
2
+ import { getSharedMemoryAvailable } from './helpers/node/index.js';
6
3
  import { fetchCode } from './fetch_code/index.js';
7
4
 
8
5
  export async function fetchModuleAndThreads(
@@ -39,23 +36,3 @@ async function getAvailableThreads(logger: (msg: string) => void): Promise<numbe
39
36
  }
40
37
  }
41
38
  }
42
-
43
- export class BarretenbergWasm extends BarretenbergWasmMain {
44
- /**
45
- * Construct and initialize BarretenbergWasm within a Worker. Return both the worker and the wasm proxy.
46
- * Used when running in the browser, because we can't block the main thread.
47
- */
48
- public static async new(
49
- desiredThreads?: number,
50
- wasmPath?: string,
51
- logger: (msg: string) => void = createDebug('bb.js:bb_wasm_main'),
52
- ) {
53
- const worker = createMainWorker();
54
- const wasm = getRemoteBarretenbergWasm<BarretenbergWasmMainWorker>(worker);
55
- const { module, threads } = await fetchModuleAndThreads(desiredThreads, wasmPath, logger);
56
- await wasm.init(module, threads, proxy(logger));
57
- return { worker, wasm };
58
- }
59
- }
60
-
61
- export type BarretenbergWasmWorker = BarretenbergWasmMainWorker;
@@ -9,10 +9,9 @@ export function generateTypeScriptCode(filename: string) {
9
9
 
10
10
  let output = `// WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
11
11
  /* eslint-disable @typescript-eslint/no-unused-vars */
12
- import { BarretenbergWasmMain } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
13
- import { BarretenbergWasmWorker, BarretenbergWasm } from '../barretenberg_wasm/index.js';
12
+ import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
14
13
  import { BufferDeserializer, NumberDeserializer, VectorDeserializer, BoolDeserializer, StringDeserializer, serializeBufferable, OutputType } from '../serialize/index.js';
15
- import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
14
+ import { Fr, Point, Buffer32, Ptr } from '../types/index.js';
16
15
 
17
16
  `;
18
17
 
@@ -25,7 +24,7 @@ import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
25
24
  function generateClass(functionDeclarations: FunctionDeclaration[]) {
26
25
  let output = `
27
26
  export class BarretenbergApi {
28
- constructor(protected wasm: BarretenbergWasmWorker | BarretenbergWasmMain) {}
27
+ constructor(protected wasm: BarretenbergWasmMainWorker) {}
29
28
 
30
29
  `;
31
30
 
@@ -72,7 +71,7 @@ export class BarretenbergApi {
72
71
  function generateSyncClass(functionDeclarations: FunctionDeclaration[]) {
73
72
  let output = `
74
73
  export class BarretenbergApiSync {
75
- constructor(protected wasm: BarretenbergWasm) {}
74
+ constructor(protected wasm: BarretenbergWasmMain) {}
76
75
 
77
76
  `;
78
77
 
package/src/index.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { Crs, GrumpkinCrs } from './crs/index.js';
2
2
  export {
3
- BackendOptions,
3
+ type BackendOptions,
4
4
  Barretenberg,
5
5
  BarretenbergSync,
6
6
  BarretenbergVerifier,
@@ -10,4 +10,4 @@ export {
10
10
  } from './barretenberg/index.js';
11
11
 
12
12
  export { RawBuffer, Fr } from './types/index.js';
13
- export { splitHonkProof, reconstructHonkProof, deflattenFields, ProofData } from './proof/index.js';
13
+ export { splitHonkProof, reconstructHonkProof, deflattenFields, type ProofData } from './proof/index.js';
@@ -1,3 +0,0 @@
1
- (globalThis["webpackChunk_aztec_bb_js"] = globalThis["webpackChunk_aztec_bb_js"] || []).push([ [ 522 ], {
2
- 522: () => {}
3
- } ]);
@@ -1,5 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2019 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */