@aztec/bb.js 0.7.9 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/README.md +1 -10
  2. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  3. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  4. package/dest/browser/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
  5. package/dest/browser/crs/node/ignition_files_crs.d.ts.map +1 -1
  6. package/dest/browser/index.js +1 -1
  7. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm +0 -0
  8. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  9. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +12 -2
  10. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  11. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +12 -2
  12. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +3 -3
  13. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
  14. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +12 -2
  15. package/dest/node/bindgen/index.js +3 -3
  16. package/dest/node/bindgen/typescript.js +1 -1
  17. package/dest/node/crs/node/ignition_files_crs.d.ts.map +1 -1
  18. package/dest/node/crs/node/ignition_files_crs.js +12 -2
  19. package/dest/node/info.d.ts +9 -0
  20. package/dest/node/info.d.ts.map +1 -0
  21. package/dest/node/info.js +24 -0
  22. package/dest/node/main.d.ts.map +1 -1
  23. package/dest/node/main.js +9 -3
  24. package/dest/node-cjs/async_map/index.d.ts +10 -0
  25. package/dest/node-cjs/async_map/index.d.ts.map +1 -0
  26. package/dest/node-cjs/async_map/index.js +20 -0
  27. package/dest/node-cjs/barretenberg/index.d.ts +20 -0
  28. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -0
  29. package/dest/node-cjs/barretenberg/index.js +43 -0
  30. package/dest/node-cjs/barretenberg_api/blake2s.test.d.ts +2 -0
  31. package/dest/node-cjs/barretenberg_api/blake2s.test.d.ts.map +1 -0
  32. package/dest/node-cjs/barretenberg_api/blake2s.test.js +32 -0
  33. package/dest/node-cjs/barretenberg_api/common.test.d.ts +2 -0
  34. package/dest/node-cjs/barretenberg_api/common.test.d.ts.map +1 -0
  35. package/dest/node-cjs/barretenberg_api/common.test.js +20 -0
  36. package/dest/node-cjs/barretenberg_api/index.d.ts +53 -0
  37. package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -0
  38. package/dest/node-cjs/barretenberg_api/index.js +195 -0
  39. package/dest/node-cjs/barretenberg_api/pedersen.test.d.ts +2 -0
  40. package/dest/node-cjs/barretenberg_api/pedersen.test.d.ts.map +1 -0
  41. package/dest/node-cjs/barretenberg_api/pedersen.test.js +71 -0
  42. package/dest/node-cjs/barretenberg_api/schnorr.test.d.ts +2 -0
  43. package/dest/node-cjs/barretenberg_api/schnorr.test.d.ts.map +1 -0
  44. package/dest/node-cjs/barretenberg_api/schnorr.test.js +116 -0
  45. package/dest/node-cjs/barretenberg_binder/heap_allocator.d.ts +22 -0
  46. package/dest/node-cjs/barretenberg_binder/heap_allocator.d.ts.map +1 -0
  47. package/dest/node-cjs/barretenberg_binder/heap_allocator.js +63 -0
  48. package/dest/node-cjs/barretenberg_binder/index.d.ts +26 -0
  49. package/dest/node-cjs/barretenberg_binder/index.d.ts.map +1 -0
  50. package/dest/node-cjs/barretenberg_binder/index.js +57 -0
  51. package/dest/{node → node-cjs/barretenberg_wasm}/barretenberg-threads.wasm +0 -0
  52. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +40 -0
  53. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -0
  54. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +128 -0
  55. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +2 -0
  56. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -0
  57. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +15 -0
  58. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +3 -0
  59. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +1 -0
  60. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +15 -0
  61. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +4 -0
  62. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -0
  63. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +22 -0
  64. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +2 -0
  65. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +1 -0
  66. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +11 -0
  67. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +37 -0
  68. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -0
  69. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +87 -0
  70. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +2 -0
  71. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -0
  72. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +15 -0
  73. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +3 -0
  74. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +1 -0
  75. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +15 -0
  76. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +4 -0
  77. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -0
  78. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +22 -0
  79. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +2 -0
  80. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +1 -0
  81. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +11 -0
  82. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +28 -0
  83. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -0
  84. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +44 -0
  85. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +2 -0
  86. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -0
  87. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +14 -0
  88. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +2 -0
  89. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts.map +1 -0
  90. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.js +5 -0
  91. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +3 -0
  92. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -0
  93. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +23 -0
  94. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +6 -0
  95. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -0
  96. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +26 -0
  97. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +2 -0
  98. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts.map +1 -0
  99. package/dest/node-cjs/barretenberg_wasm/helpers/index.js +5 -0
  100. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +19 -0
  101. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -0
  102. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +45 -0
  103. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +8 -0
  104. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -0
  105. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +32 -0
  106. package/dest/node-cjs/barretenberg_wasm/index.d.ts +14 -0
  107. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -0
  108. package/dest/node-cjs/barretenberg_wasm/index.js +24 -0
  109. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +2 -0
  110. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts.map +1 -0
  111. package/dest/node-cjs/barretenberg_wasm/index.test.js +40 -0
  112. package/dest/node-cjs/bigint-array/index.d.ts +3 -0
  113. package/dest/node-cjs/bigint-array/index.d.ts.map +1 -0
  114. package/dest/node-cjs/bigint-array/index.js +26 -0
  115. package/dest/node-cjs/bindgen/function_declaration.d.ts +11 -0
  116. package/dest/node-cjs/bindgen/function_declaration.d.ts.map +1 -0
  117. package/dest/node-cjs/bindgen/function_declaration.js +3 -0
  118. package/dest/node-cjs/bindgen/index.d.ts +2 -0
  119. package/dest/node-cjs/bindgen/index.d.ts.map +1 -0
  120. package/dest/node-cjs/bindgen/index.js +17 -0
  121. package/dest/node-cjs/bindgen/mappings.d.ts +4 -0
  122. package/dest/node-cjs/bindgen/mappings.d.ts.map +1 -0
  123. package/dest/node-cjs/bindgen/mappings.js +68 -0
  124. package/dest/node-cjs/bindgen/rust.d.ts +2 -0
  125. package/dest/node-cjs/bindgen/rust.d.ts.map +1 -0
  126. package/dest/node-cjs/bindgen/rust.js +48 -0
  127. package/dest/node-cjs/bindgen/to_camel_case.d.ts +2 -0
  128. package/dest/node-cjs/bindgen/to_camel_case.d.ts.map +1 -0
  129. package/dest/node-cjs/bindgen/to_camel_case.js +15 -0
  130. package/dest/node-cjs/bindgen/typescript.d.ts +2 -0
  131. package/dest/node-cjs/bindgen/typescript.d.ts.map +1 -0
  132. package/dest/node-cjs/bindgen/typescript.js +52 -0
  133. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +25 -0
  134. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -0
  135. package/dest/node-cjs/crs/browser/cached_net_crs.js +58 -0
  136. package/dest/node-cjs/crs/browser/index.d.ts +2 -0
  137. package/dest/node-cjs/crs/browser/index.d.ts.map +1 -0
  138. package/dest/node-cjs/crs/browser/index.js +6 -0
  139. package/dest/node-cjs/crs/index.d.ts +2 -0
  140. package/dest/node-cjs/crs/index.d.ts.map +1 -0
  141. package/dest/node-cjs/crs/index.js +6 -0
  142. package/dest/node-cjs/crs/net_crs.d.ts +36 -0
  143. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -0
  144. package/dest/node-cjs/crs/net_crs.js +63 -0
  145. package/dest/node-cjs/crs/node/ignition_files_crs.d.ts +37 -0
  146. package/dest/node-cjs/crs/node/ignition_files_crs.d.ts.map +1 -0
  147. package/dest/node-cjs/crs/node/ignition_files_crs.js +65 -0
  148. package/dest/node-cjs/crs/node/index.d.ts +21 -0
  149. package/dest/node-cjs/crs/node/index.d.ts.map +1 -0
  150. package/dest/node-cjs/crs/node/index.js +59 -0
  151. package/dest/node-cjs/examples/simple.rawtest.d.ts +2 -0
  152. package/dest/node-cjs/examples/simple.rawtest.d.ts.map +1 -0
  153. package/dest/node-cjs/examples/simple.rawtest.js +32 -0
  154. package/dest/node-cjs/examples/simple.test.d.ts +2 -0
  155. package/dest/node-cjs/examples/simple.test.d.ts.map +1 -0
  156. package/dest/node-cjs/examples/simple.test.js +24 -0
  157. package/dest/node-cjs/index.d.ts +4 -0
  158. package/dest/node-cjs/index.d.ts.map +1 -0
  159. package/dest/node-cjs/index.js +10 -0
  160. package/dest/node-cjs/info.d.ts +9 -0
  161. package/dest/node-cjs/info.d.ts.map +1 -0
  162. package/dest/node-cjs/info.js +27 -0
  163. package/dest/node-cjs/main.d.ts +11 -0
  164. package/dest/node-cjs/main.d.ts.map +1 -0
  165. package/dest/node-cjs/main.js +332 -0
  166. package/dest/node-cjs/package.json +3 -0
  167. package/dest/node-cjs/random/browser/index.d.ts +2 -0
  168. package/dest/node-cjs/random/browser/index.d.ts.map +1 -0
  169. package/dest/node-cjs/random/browser/index.js +35 -0
  170. package/dest/node-cjs/random/index.d.ts +2 -0
  171. package/dest/node-cjs/random/index.d.ts.map +1 -0
  172. package/dest/node-cjs/random/index.js +5 -0
  173. package/dest/node-cjs/random/node/index.d.ts +2 -0
  174. package/dest/node-cjs/random/node/index.d.ts.map +1 -0
  175. package/dest/node-cjs/random/node/index.js +9 -0
  176. package/dest/node-cjs/serialize/buffer_reader.d.ts +28 -0
  177. package/dest/node-cjs/serialize/buffer_reader.d.ts.map +1 -0
  178. package/dest/node-cjs/serialize/buffer_reader.js +70 -0
  179. package/dest/node-cjs/serialize/index.d.ts +4 -0
  180. package/dest/node-cjs/serialize/index.d.ts.map +1 -0
  181. package/dest/node-cjs/serialize/index.js +7 -0
  182. package/dest/node-cjs/serialize/output_type.d.ts +11 -0
  183. package/dest/node-cjs/serialize/output_type.d.ts.map +1 -0
  184. package/dest/node-cjs/serialize/output_type.js +52 -0
  185. package/dest/node-cjs/serialize/serialize.d.ts +53 -0
  186. package/dest/node-cjs/serialize/serialize.d.ts.map +1 -0
  187. package/dest/node-cjs/serialize/serialize.js +161 -0
  188. package/dest/node-cjs/types/fields.d.ts +33 -0
  189. package/dest/node-cjs/types/fields.d.ts.map +1 -0
  190. package/dest/node-cjs/types/fields.js +89 -0
  191. package/dest/node-cjs/types/fixed_size_buffer.d.ts +26 -0
  192. package/dest/node-cjs/types/fixed_size_buffer.d.ts.map +1 -0
  193. package/dest/node-cjs/types/fixed_size_buffer.js +57 -0
  194. package/dest/node-cjs/types/index.d.ts +6 -0
  195. package/dest/node-cjs/types/index.d.ts.map +1 -0
  196. package/dest/node-cjs/types/index.js +9 -0
  197. package/dest/node-cjs/types/point.d.ts +17 -0
  198. package/dest/node-cjs/types/point.d.ts.map +1 -0
  199. package/dest/node-cjs/types/point.js +35 -0
  200. package/dest/node-cjs/types/ptr.d.ts +13 -0
  201. package/dest/node-cjs/types/ptr.d.ts.map +1 -0
  202. package/dest/node-cjs/types/ptr.js +23 -0
  203. package/dest/node-cjs/types/raw_buffer.d.ts +3 -0
  204. package/dest/node-cjs/types/raw_buffer.d.ts.map +1 -0
  205. package/dest/node-cjs/types/raw_buffer.js +9 -0
  206. package/package.json +9 -8
  207. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +11 -1
  208. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +11 -1
  209. package/src/barretenberg_wasm/fetch_code/browser/index.ts +2 -2
  210. package/src/barretenberg_wasm/fetch_code/node/index.ts +11 -1
  211. package/src/bindgen/index.ts +2 -2
  212. package/src/bindgen/typescript.ts +1 -1
  213. package/src/crs/node/ignition_files_crs.ts +11 -1
  214. package/src/info.ts +23 -0
  215. package/src/main.ts +10 -2
  216. package/cjs-entry/index.cjs +0 -10
  217. package/cjs-entry/index.d.ts +0 -1
  218. package/dest/node/info.json +0 -22
  219. package/src/info.json +0 -22
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateTypeScriptCode = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const fs_1 = tslib_1.__importDefault(require("fs"));
6
+ const mappings_js_1 = require("./mappings.js");
7
+ const to_camel_case_js_1 = require("./to_camel_case.js");
8
+ function generateTypeScriptCode(filename) {
9
+ const fileContent = fs_1.default.readFileSync(filename, 'utf-8');
10
+ const functionDeclarations = JSON.parse(fileContent);
11
+ let output = `// WARNING: FILE CODE GENERATED BY BINDGEN UTILITY. DO NOT EDIT!
12
+ /* eslint-disable @typescript-eslint/no-unused-vars */
13
+ import { BarretenbergBinder } from '../barretenberg_binder/index.js';
14
+ import { BufferDeserializer, NumberDeserializer, VectorDeserializer, BoolDeserializer, StringDeserializer } from '../serialize/index.js';
15
+ import { Fr, Fq, Point, Buffer32, Buffer128, Ptr } from '../types/index.js';
16
+
17
+ export class BarretenbergApi {
18
+ constructor(public binder: BarretenbergBinder) {}
19
+
20
+ async destroy() {
21
+ await this.binder.wasm.destroy();
22
+ }
23
+ `;
24
+ for (const { functionName, inArgs, outArgs } of functionDeclarations) {
25
+ try {
26
+ const parameters = inArgs.map(({ name, type }) => `${(0, to_camel_case_js_1.toCamelCase)(name)}: ${(0, mappings_js_1.mapType)(type)}`).join(', ');
27
+ const inArgsVar = `[${inArgs.map(arg => (0, to_camel_case_js_1.toCamelCase)(arg.name)).join(', ')}]`;
28
+ const outTypesVar = `[${outArgs.map(arg => (0, mappings_js_1.mapDeserializer)(arg.type)).join(', ')}]`;
29
+ const wasmCall = `const result = await this.binder.callWasmExport('${functionName}', ${inArgsVar}, ${outTypesVar});`;
30
+ const n = outArgs.length;
31
+ const returnStmt = n === 0 ? 'return;' : n === 1 ? 'return result[0];' : 'return result as any;';
32
+ const returnType = outArgs.length === 0
33
+ ? 'void'
34
+ : outArgs.length === 1
35
+ ? `${(0, mappings_js_1.mapType)(outArgs[0].type)}`
36
+ : `[${outArgs.map(a => (0, mappings_js_1.mapType)(a.type)).join(', ')}]`;
37
+ output += `
38
+ async ${(0, to_camel_case_js_1.toCamelCase)(functionName)}(${parameters}): Promise<${returnType}> {
39
+ ${wasmCall}
40
+ ${returnStmt}
41
+ }
42
+ `;
43
+ }
44
+ catch (err) {
45
+ throw new Error(`Function ${functionName}: ${err.message}`);
46
+ }
47
+ }
48
+ output += `}`;
49
+ return output;
50
+ }
51
+ exports.generateTypeScriptCode = generateTypeScriptCode;
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW5kZ2VuL3R5cGVzY3JpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9EQUFvQjtBQUNwQiwrQ0FBeUQ7QUFDekQseURBQWlEO0FBR2pELFNBQWdCLHNCQUFzQixDQUFDLFFBQWdCO0lBQ3JELE1BQU0sV0FBVyxHQUFHLFlBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sb0JBQW9CLEdBQTBCLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFNUUsSUFBSSxNQUFNLEdBQUc7Ozs7Ozs7Ozs7OztDQVlkLENBQUM7SUFFQSxLQUFLLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLG9CQUFvQixFQUFFO1FBQ3BFLElBQUk7WUFDRixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBQSw4QkFBVyxFQUFDLElBQUksQ0FBQyxLQUFLLElBQUEscUJBQU8sRUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZHLE1BQU0sU0FBUyxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUEsOEJBQVcsRUFBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUM3RSxNQUFNLFdBQVcsR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFBLDZCQUFlLEVBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDcEYsTUFBTSxRQUFRLEdBQUcsb0RBQW9ELFlBQVksTUFBTSxTQUFTLEtBQUssV0FBVyxJQUFJLENBQUM7WUFFckgsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUN6QixNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztZQUNqRyxNQUFNLFVBQVUsR0FDZCxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQ2xCLENBQUMsQ0FBQyxNQUFNO2dCQUNSLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUM7b0JBQ3RCLENBQUMsQ0FBQyxHQUFHLElBQUEscUJBQU8sRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQy9CLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFBLHFCQUFPLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFFMUQsTUFBTSxJQUFJO1VBQ04sSUFBQSw4QkFBVyxFQUFDLFlBQVksQ0FBQyxJQUFJLFVBQVUsY0FBYyxVQUFVO01BQ25FLFFBQVE7TUFDUixVQUFVOztDQUVmLENBQUM7U0FDRztRQUFDLE9BQU8sR0FBUSxFQUFFO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsWUFBWSxZQUFZLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7U0FDN0Q7S0FDRjtJQUVELE1BQU0sSUFBSSxHQUFHLENBQUM7SUFFZCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBaERELHdEQWdEQyJ9
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Downloader for CRS from the web or local.
3
+ */
4
+ export declare class CachedNetCrs {
5
+ readonly numPoints: number;
6
+ private g1Data;
7
+ private g2Data;
8
+ constructor(numPoints: number);
9
+ static new(numPoints: number): Promise<CachedNetCrs>;
10
+ /**
11
+ * Download the data.
12
+ */
13
+ init(): Promise<void>;
14
+ /**
15
+ * G1 points data for prover key.
16
+ * @returns The points data.
17
+ */
18
+ getG1Data(): Uint8Array;
19
+ /**
20
+ * G2 points data for verification key.
21
+ * @returns The points data.
22
+ */
23
+ getG2Data(): Uint8Array;
24
+ }
25
+ //# sourceMappingURL=cached_net_crs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cached_net_crs.d.ts","sourceRoot":"","sources":["../../../../src/crs/browser/cached_net_crs.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,qBAAa,YAAY;aAIK,SAAS,EAAE,MAAM;IAH7C,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAc;gBAEA,SAAS,EAAE,MAAM;WAEhC,GAAG,CAAC,SAAS,EAAE,MAAM;IAMlC;;OAEG;IACG,IAAI;IAsBV;;;OAGG;IACH,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CachedNetCrs = void 0;
4
+ const net_crs_js_1 = require("../net_crs.js");
5
+ const idb_keyval_1 = require("idb-keyval");
6
+ /**
7
+ * Downloader for CRS from the web or local.
8
+ */
9
+ class CachedNetCrs {
10
+ constructor(numPoints) {
11
+ this.numPoints = numPoints;
12
+ }
13
+ static async new(numPoints) {
14
+ const crs = new CachedNetCrs(numPoints);
15
+ await crs.init();
16
+ return crs;
17
+ }
18
+ /**
19
+ * Download the data.
20
+ */
21
+ async init() {
22
+ // Check if data is in IndexedDB
23
+ const g1Data = await (0, idb_keyval_1.get)('g1Data');
24
+ const g2Data = await (0, idb_keyval_1.get)('g2Data');
25
+ const netCrs = new net_crs_js_1.NetCrs(this.numPoints);
26
+ const g1DataLength = this.numPoints * 64;
27
+ if (!g1Data || g1Data.length < g1DataLength) {
28
+ this.g1Data = await netCrs.downloadG1Data();
29
+ await (0, idb_keyval_1.set)('g1Data', this.g1Data);
30
+ }
31
+ else {
32
+ this.g1Data = g1Data;
33
+ }
34
+ if (!g2Data) {
35
+ this.g2Data = await netCrs.downloadG2Data();
36
+ await (0, idb_keyval_1.set)('g2Data', this.g2Data);
37
+ }
38
+ else {
39
+ this.g2Data = g2Data;
40
+ }
41
+ }
42
+ /**
43
+ * G1 points data for prover key.
44
+ * @returns The points data.
45
+ */
46
+ getG1Data() {
47
+ return this.g1Data;
48
+ }
49
+ /**
50
+ * G2 points data for verification key.
51
+ * @returns The points data.
52
+ */
53
+ getG2Data() {
54
+ return this.g2Data;
55
+ }
56
+ }
57
+ exports.CachedNetCrs = CachedNetCrs;
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkX25ldF9jcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3JzL2Jyb3dzZXIvY2FjaGVkX25ldF9jcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQXVDO0FBQ3ZDLDJDQUFzQztBQUV0Qzs7R0FFRztBQUNILE1BQWEsWUFBWTtJQUl2QixZQUE0QixTQUFpQjtRQUFqQixjQUFTLEdBQVQsU0FBUyxDQUFRO0lBQUcsQ0FBQztJQUVqRCxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxTQUFpQjtRQUNoQyxNQUFNLEdBQUcsR0FBRyxJQUFJLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJO1FBQ1IsZ0NBQWdDO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSxnQkFBRyxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25DLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSxnQkFBRyxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksbUJBQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFFekMsSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLFlBQVksRUFBRTtZQUMzQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzVDLE1BQU0sSUFBQSxnQkFBRyxFQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDbEM7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1NBQ3RCO1FBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDNUMsTUFBTSxJQUFBLGdCQUFHLEVBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNsQzthQUFNO1lBQ0wsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0NBQ0Y7QUFwREQsb0NBb0RDIn0=
@@ -0,0 +1,2 @@
1
+ export { CachedNetCrs as Crs } from './cached_net_crs.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crs/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,GAAG,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Crs = void 0;
4
+ var cached_net_crs_js_1 = require("./cached_net_crs.js");
5
+ Object.defineProperty(exports, "Crs", { enumerable: true, get: function () { return cached_net_crs_js_1.CachedNetCrs; } });
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3JzL2Jyb3dzZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseURBQTBEO0FBQWpELHdHQUFBLFlBQVksT0FBTyJ9
@@ -0,0 +1,2 @@
1
+ export { Crs } from './node/index.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Crs = void 0;
4
+ var index_js_1 = require("./node/index.js");
5
+ Object.defineProperty(exports, "Crs", { enumerable: true, get: function () { return index_js_1.Crs; } });
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRDQUFzQztBQUE3QiwrRkFBQSxHQUFHLE9BQUEifQ==
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Downloader for CRS from the web or local.
3
+ */
4
+ export declare class NetCrs {
5
+ /**
6
+ * The number of circuit gates.
7
+ */
8
+ readonly numPoints: number;
9
+ private data;
10
+ private g2Data;
11
+ constructor(
12
+ /**
13
+ * The number of circuit gates.
14
+ */
15
+ numPoints: number);
16
+ /**
17
+ * Download the data.
18
+ */
19
+ init(): Promise<void>;
20
+ downloadG1Data(): Promise<Uint8Array>;
21
+ /**
22
+ * Download the G2 points data.
23
+ */
24
+ downloadG2Data(): Promise<Uint8Array>;
25
+ /**
26
+ * G1 points data for prover key.
27
+ * @returns The points data.
28
+ */
29
+ getG1Data(): Uint8Array;
30
+ /**
31
+ * G2 points data for verification key.
32
+ * @returns The points data.
33
+ */
34
+ getG2Data(): Uint8Array;
35
+ }
36
+ //# sourceMappingURL=net_crs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"net_crs.d.ts","sourceRoot":"","sources":["../../../src/crs/net_crs.ts"],"names":[],"mappings":"AAAA;;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;IAcpB;;OAEG;IACG,cAAc;IAcpB;;;OAGG;IACH,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NetCrs = void 0;
4
+ /**
5
+ * Downloader for CRS from the web or local.
6
+ */
7
+ class NetCrs {
8
+ constructor(
9
+ /**
10
+ * The number of circuit gates.
11
+ */
12
+ numPoints) {
13
+ this.numPoints = numPoints;
14
+ }
15
+ /**
16
+ * Download the data.
17
+ */
18
+ async init() {
19
+ await this.downloadG1Data();
20
+ await this.downloadG2Data();
21
+ }
22
+ async downloadG1Data() {
23
+ const g1Start = 28;
24
+ const g1End = g1Start + this.numPoints * 64 - 1;
25
+ const response = await fetch('https://aztec-ignition.s3.amazonaws.com/MAIN%20IGNITION/monomial/transcript00.dat', {
26
+ headers: {
27
+ Range: `bytes=${g1Start}-${g1End}`,
28
+ },
29
+ cache: 'force-cache',
30
+ });
31
+ return (this.data = new Uint8Array(await response.arrayBuffer()));
32
+ }
33
+ /**
34
+ * Download the G2 points data.
35
+ */
36
+ async downloadG2Data() {
37
+ const g2Start = 28 + 5040001 * 64;
38
+ const g2End = g2Start + 128 - 1;
39
+ const response2 = await fetch('https://aztec-ignition.s3.amazonaws.com/MAIN%20IGNITION/monomial/transcript00.dat', {
40
+ headers: {
41
+ Range: `bytes=${g2Start}-${g2End}`,
42
+ },
43
+ cache: 'force-cache',
44
+ });
45
+ return (this.g2Data = new Uint8Array(await response2.arrayBuffer()));
46
+ }
47
+ /**
48
+ * G1 points data for prover key.
49
+ * @returns The points data.
50
+ */
51
+ getG1Data() {
52
+ return this.data;
53
+ }
54
+ /**
55
+ * G2 points data for verification key.
56
+ * @returns The points data.
57
+ */
58
+ getG2Data() {
59
+ return this.g2Data;
60
+ }
61
+ }
62
+ exports.NetCrs = NetCrs;
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0X2Nycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnMvbmV0X2Nycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILE1BQWEsTUFBTTtJQUlqQjtJQUNFOztPQUVHO0lBQ2EsU0FBaUI7UUFBakIsY0FBUyxHQUFULFNBQVMsQ0FBUTtJQUNoQyxDQUFDO0lBRUo7O09BRUc7SUFDSCxLQUFLLENBQUMsSUFBSTtRQUNSLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzVCLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxLQUFLLEdBQUcsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVoRCxNQUFNLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxtRkFBbUYsRUFBRTtZQUNoSCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLFNBQVMsT0FBTyxJQUFJLEtBQUssRUFBRTthQUNuQztZQUNELEtBQUssRUFBRSxhQUFhO1NBQ3JCLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsY0FBYztRQUNsQixNQUFNLE9BQU8sR0FBRyxFQUFFLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQyxNQUFNLEtBQUssR0FBRyxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUVoQyxNQUFNLFNBQVMsR0FBRyxNQUFNLEtBQUssQ0FBQyxtRkFBbUYsRUFBRTtZQUNqSCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLFNBQVMsT0FBTyxJQUFJLEtBQUssRUFBRTthQUNuQztZQUNELEtBQUssRUFBRSxhQUFhO1NBQ3JCLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0NBQ0Y7QUFqRUQsd0JBaUVDIn0=
@@ -0,0 +1,37 @@
1
+ /**
2
+ * The path to our SRS object, assuming that we are in barretenberg/ts folder.
3
+ */
4
+ export declare const SRS_DEV_PATH: string;
5
+ /**
6
+ * Downloader for CRS from a local file (for Node).
7
+ */
8
+ export declare class IgnitionFilesCrs {
9
+ /**
10
+ * The number of circuit gates.
11
+ */
12
+ readonly numPoints: number;
13
+ private path;
14
+ private data;
15
+ private g2Data;
16
+ constructor(
17
+ /**
18
+ * The number of circuit gates.
19
+ */
20
+ numPoints: number, path?: string);
21
+ static defaultExists(): boolean;
22
+ /**
23
+ * Read the data file.
24
+ */
25
+ init(): Promise<void>;
26
+ /**
27
+ * G1 points data for prover key.
28
+ * @returns The points data.
29
+ */
30
+ getG1Data(): Uint8Array;
31
+ /**
32
+ * G2 points data for verification key.
33
+ * @returns The points data.
34
+ */
35
+ getG2Data(): Uint8Array;
36
+ }
37
+ //# sourceMappingURL=ignition_files_crs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ignition_files_crs.d.ts","sourceRoot":"","sources":["../../../../src/crs/node/ignition_files_crs.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,eAAO,MAAM,YAAY,QAA6D,CAAC;AAEvF;;GAEG;AACH,qBAAa,gBAAgB;IAKzB;;OAEG;aACa,SAAS,EAAE,MAAM;IACjC,OAAO,CAAC,IAAI;IARd,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,MAAM,CAAc;;IAG1B;;OAEG;IACa,SAAS,EAAE,MAAM,EACzB,IAAI,SAAe;IAG7B,MAAM,CAAC,aAAa;IAIpB;;OAEG;IACG,IAAI;IAYV;;;OAGG;IACH,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IgnitionFilesCrs = exports.SRS_DEV_PATH = void 0;
4
+ const fs_1 = require("fs");
5
+ const promises_1 = require("fs/promises");
6
+ const path_1 = require("path");
7
+ const url_1 = require("url");
8
+ function getCurrentDir() {
9
+ if (typeof __dirname !== 'undefined') {
10
+ return __dirname;
11
+ }
12
+ else {
13
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
14
+ // @ts-ignore
15
+ return (0, path_1.dirname)((0, url_1.fileURLToPath)(""));
16
+ }
17
+ }
18
+ /**
19
+ * The path to our SRS object, assuming that we are in barretenberg/ts folder.
20
+ */
21
+ exports.SRS_DEV_PATH = getCurrentDir() + '/../../../cpp/srs_db/ignition/monomial';
22
+ /**
23
+ * Downloader for CRS from a local file (for Node).
24
+ */
25
+ class IgnitionFilesCrs {
26
+ constructor(
27
+ /**
28
+ * The number of circuit gates.
29
+ */
30
+ numPoints, path = exports.SRS_DEV_PATH) {
31
+ this.numPoints = numPoints;
32
+ this.path = path;
33
+ }
34
+ static defaultExists() {
35
+ return (0, fs_1.existsSync)(exports.SRS_DEV_PATH);
36
+ }
37
+ /**
38
+ * Read the data file.
39
+ */
40
+ async init() {
41
+ // We need this.numPoints number of g1 points.
42
+ // numPoints should be circuitSize + 1.
43
+ const g1Start = 28;
44
+ const g1End = g1Start + this.numPoints * 64;
45
+ const data = await (0, promises_1.readFile)(this.path + '/transcript00.dat');
46
+ this.data = data.subarray(g1Start, g1End);
47
+ this.g2Data = await (0, promises_1.readFile)(this.path + '/g2.dat');
48
+ }
49
+ /**
50
+ * G1 points data for prover key.
51
+ * @returns The points data.
52
+ */
53
+ getG1Data() {
54
+ return this.data;
55
+ }
56
+ /**
57
+ * G2 points data for verification key.
58
+ * @returns The points data.
59
+ */
60
+ getG2Data() {
61
+ return this.g2Data;
62
+ }
63
+ }
64
+ exports.IgnitionFilesCrs = IgnitionFilesCrs;
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWduaXRpb25fZmlsZXNfY3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nycy9ub2RlL2lnbml0aW9uX2ZpbGVzX2Nycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQkFBZ0M7QUFDaEMsMENBQXVDO0FBQ3ZDLCtCQUErQjtBQUMvQiw2QkFBb0M7QUFFcEMsU0FBUyxhQUFhO0lBQ3BCLElBQUksT0FBTyxTQUFTLEtBQUssV0FBVyxFQUFFO1FBQ3BDLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO1NBQU07UUFDTCw2REFBNkQ7UUFDN0QsYUFBYTtRQUNiLE9BQU8sSUFBQSxjQUFPLEVBQUMsSUFBQSxtQkFBYSxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztLQUNoRDtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNVLFFBQUEsWUFBWSxHQUFHLGFBQWEsRUFBRSxHQUFHLHdDQUF3QyxDQUFDO0FBRXZGOztHQUVHO0FBQ0gsTUFBYSxnQkFBZ0I7SUFJM0I7SUFDRTs7T0FFRztJQUNhLFNBQWlCLEVBQ3pCLE9BQU8sb0JBQVk7UUFEWCxjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ3pCLFNBQUksR0FBSixJQUFJLENBQWU7SUFDMUIsQ0FBQztJQUVKLE1BQU0sQ0FBQyxhQUFhO1FBQ2xCLE9BQU8sSUFBQSxlQUFVLEVBQUMsb0JBQVksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJO1FBQ1IsOENBQThDO1FBQzlDLHVDQUF1QztRQUN2QyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxLQUFLLEdBQUcsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBRTVDLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBQSxtQkFBUSxFQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsbUJBQW1CLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxJQUFBLG1CQUFRLEVBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0NBQ0Y7QUE5Q0QsNENBOENDIn0=
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Generic CRS finder utility class.
3
+ */
4
+ export declare class Crs {
5
+ readonly numPoints: number;
6
+ readonly path: string;
7
+ constructor(numPoints: number, path: string);
8
+ static new(numPoints: number, crsPath?: string): Promise<Crs>;
9
+ init(): Promise<void>;
10
+ /**
11
+ * G1 points data for prover key.
12
+ * @returns The points data.
13
+ */
14
+ getG1Data(): Uint8Array;
15
+ /**
16
+ * G2 points data for verification key.
17
+ * @returns The points data.
18
+ */
19
+ getG2Data(): Uint8Array;
20
+ }
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crs/node/index.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,qBAAa,GAAG;aACc,SAAS,EAAE,MAAM;aAAkB,IAAI,EAAE,MAAM;gBAA/C,SAAS,EAAE,MAAM,EAAkB,IAAI,EAAE,MAAM;WAE9D,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,SAAU;IAM/C,IAAI;IAoBV;;;OAGG;IACH,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,SAAS,IAAI,UAAU;CAGxB"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Crs = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const net_crs_js_1 = require("../net_crs.js");
6
+ const ignition_files_crs_js_1 = require("./ignition_files_crs.js");
7
+ const fs_1 = require("fs");
8
+ const promises_1 = require("fs/promises");
9
+ const debug_1 = tslib_1.__importDefault(require("debug"));
10
+ const debug = (0, debug_1.default)('bb.js:crs');
11
+ /**
12
+ * Generic CRS finder utility class.
13
+ */
14
+ class Crs {
15
+ constructor(numPoints, path) {
16
+ this.numPoints = numPoints;
17
+ this.path = path;
18
+ }
19
+ static async new(numPoints, crsPath = './crs') {
20
+ const crs = new Crs(numPoints, crsPath);
21
+ await crs.init();
22
+ return crs;
23
+ }
24
+ async init() {
25
+ (0, fs_1.mkdirSync)(this.path, { recursive: true });
26
+ const size = await (0, promises_1.readFile)(this.path + '/size', 'ascii').catch(() => undefined);
27
+ if (size && +size >= this.numPoints) {
28
+ debug(`using cached crs of size: ${size}`);
29
+ return;
30
+ }
31
+ const crs = ignition_files_crs_js_1.IgnitionFilesCrs.defaultExists() ? new ignition_files_crs_js_1.IgnitionFilesCrs(this.numPoints) : new net_crs_js_1.NetCrs(this.numPoints);
32
+ if (crs instanceof net_crs_js_1.NetCrs) {
33
+ debug(`downloading crs of size: ${this.numPoints}`);
34
+ }
35
+ else {
36
+ debug(`loading igntion file crs of size: ${this.numPoints}`);
37
+ }
38
+ await crs.init();
39
+ (0, fs_1.writeFileSync)(this.path + '/size', this.numPoints.toString());
40
+ (0, fs_1.writeFileSync)(this.path + '/g1.dat', crs.getG1Data());
41
+ (0, fs_1.writeFileSync)(this.path + '/g2.dat', crs.getG2Data());
42
+ }
43
+ /**
44
+ * G1 points data for prover key.
45
+ * @returns The points data.
46
+ */
47
+ getG1Data() {
48
+ return (0, fs_1.readFileSync)(this.path + '/g1.dat');
49
+ }
50
+ /**
51
+ * G2 points data for verification key.
52
+ * @returns The points data.
53
+ */
54
+ getG2Data() {
55
+ return (0, fs_1.readFileSync)(this.path + '/g2.dat');
56
+ }
57
+ }
58
+ exports.Crs = Crs;
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3JzL25vZGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDhDQUF1QztBQUN2QyxtRUFBMkQ7QUFDM0QsMkJBQTREO0FBQzVELDBDQUF1QztBQUN2QywwREFBZ0M7QUFFaEMsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFXLEVBQUMsV0FBVyxDQUFDLENBQUM7QUFFdkM7O0dBRUc7QUFDSCxNQUFhLEdBQUc7SUFDZCxZQUE0QixTQUFpQixFQUFrQixJQUFZO1FBQS9DLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFBa0IsU0FBSSxHQUFKLElBQUksQ0FBUTtJQUFHLENBQUM7SUFFL0UsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBaUIsRUFBRSxPQUFPLEdBQUcsT0FBTztRQUNuRCxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEMsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUk7UUFDUixJQUFBLGNBQVMsRUFBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFBLG1CQUFRLEVBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pGLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkMsS0FBSyxDQUFDLDZCQUE2QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLE9BQU87U0FDUjtRQUVELE1BQU0sR0FBRyxHQUFHLHdDQUFnQixDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLHdDQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxtQkFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqSCxJQUFJLEdBQUcsWUFBWSxtQkFBTSxFQUFFO1lBQ3pCLEtBQUssQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDckQ7YUFBTTtZQUNMLEtBQUssQ0FBQyxxQ0FBcUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDOUQ7UUFDRCxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixJQUFBLGtCQUFhLEVBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzlELElBQUEsa0JBQWEsRUFBQyxJQUFJLENBQUMsSUFBSSxHQUFHLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFBLGtCQUFhLEVBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUEsaUJBQVksRUFBQyxJQUFJLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFBLGlCQUFZLEVBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0Y7QUE1Q0Qsa0JBNENDIn0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=simple.rawtest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple.rawtest.d.ts","sourceRoot":"","sources":["../../../src/examples/simple.rawtest.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const index_js_1 = require("../crs/index.js");
5
+ const debug_1 = tslib_1.__importDefault(require("debug"));
6
+ const index_js_2 = require("../barretenberg/index.js");
7
+ const index_js_3 = require("../types/index.js");
8
+ debug_1.default.enable('*');
9
+ const debug = (0, debug_1.default)('simple_test');
10
+ async function main() {
11
+ const CIRCUIT_SIZE = 2 ** 19;
12
+ debug('starting test...');
13
+ const api = await index_js_2.Barretenberg.new();
14
+ // Important to init slab allocator as first thing, to ensure maximum memory efficiency.
15
+ await api.commonInitSlabAllocator(CIRCUIT_SIZE);
16
+ // Plus 1 needed!
17
+ const crs = await index_js_1.Crs.new(CIRCUIT_SIZE + 1);
18
+ await api.srsInitSrs(new index_js_3.RawBuffer(crs.getG1Data()), crs.numPoints, new index_js_3.RawBuffer(crs.getG2Data()));
19
+ const iterations = 10;
20
+ let totalTime = 0;
21
+ for (let i = 0; i < iterations; ++i) {
22
+ const start = new Date().getTime();
23
+ debug(`iteration ${i} starting...`);
24
+ await api.examplesSimpleCreateAndVerifyProof();
25
+ totalTime += new Date().getTime() - start;
26
+ }
27
+ await api.destroy();
28
+ debug(`avg iteration time: ${totalTime / iterations}ms`);
29
+ debug('test complete.');
30
+ }
31
+ void main();
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLnJhd3Rlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXhhbXBsZXMvc2ltcGxlLnJhd3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQXNDO0FBQ3RDLDBEQUFnQztBQUNoQyx1REFBd0Q7QUFDeEQsZ0RBQThDO0FBRTlDLGVBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDeEIsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFXLEVBQUMsYUFBYSxDQUFDLENBQUM7QUFFekMsS0FBSyxVQUFVLElBQUk7SUFDakIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUU3QixLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMxQixNQUFNLEdBQUcsR0FBRyxNQUFNLHVCQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7SUFFckMsd0ZBQXdGO0lBQ3hGLE1BQU0sR0FBRyxDQUFDLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRWhELGlCQUFpQjtJQUNqQixNQUFNLEdBQUcsR0FBRyxNQUFNLGNBQUcsQ0FBQyxHQUFHLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLG9CQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLG9CQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVwRyxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDdEIsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ2xCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsRUFBRSxDQUFDLEVBQUU7UUFDbkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQyxLQUFLLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sR0FBRyxDQUFDLGtDQUFrQyxFQUFFLENBQUM7UUFDL0MsU0FBUyxJQUFJLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO0tBQzNDO0lBRUQsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFcEIsS0FBSyxDQUFDLHVCQUF1QixTQUFTLEdBQUcsVUFBVSxJQUFJLENBQUMsQ0FBQztJQUN6RCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRUQsS0FBSyxJQUFJLEVBQUUsQ0FBQyJ9
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=simple.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple.test.d.ts","sourceRoot":"","sources":["../../../src/examples/simple.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const index_js_1 = require("../crs/index.js");
4
+ const index_js_2 = require("../barretenberg/index.js");
5
+ const index_js_3 = require("../types/index.js");
6
+ describe('simple', () => {
7
+ let api;
8
+ beforeAll(async () => {
9
+ api = await index_js_2.Barretenberg.new();
10
+ // Important to init slab allocator as first thing, to ensure maximum memory efficiency.
11
+ const CIRCUIT_SIZE = 2 ** 19;
12
+ await api.commonInitSlabAllocator(CIRCUIT_SIZE);
13
+ const crs = await index_js_1.Crs.new(2 ** 19 + 1);
14
+ await api.srsInitSrs(new index_js_3.RawBuffer(crs.getG1Data()), crs.numPoints, new index_js_3.RawBuffer(crs.getG2Data()));
15
+ }, 30000);
16
+ afterAll(async () => {
17
+ await api.destroy();
18
+ });
19
+ it('should construct 512k gate proof', async () => {
20
+ const valid = await api.examplesSimpleCreateAndVerifyProof();
21
+ expect(valid).toBe(true);
22
+ }, 300000);
23
+ });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXhhbXBsZXMvc2ltcGxlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw4Q0FBc0M7QUFDdEMsdURBQXdEO0FBQ3hELGdEQUE4QztBQUU5QyxRQUFRLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtJQUN0QixJQUFJLEdBQWlCLENBQUM7SUFFdEIsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ25CLEdBQUcsR0FBRyxNQUFNLHVCQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFL0Isd0ZBQXdGO1FBQ3hGLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsTUFBTSxHQUFHLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFaEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxjQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdkMsTUFBTSxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksb0JBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksb0JBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVWLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNsQixNQUFNLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxrQ0FBa0MsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNoRCxNQUFNLEtBQUssR0FBRyxNQUFNLEdBQUcsQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO1FBQzdELE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ2IsQ0FBQyxDQUFDLENBQUMifQ==
@@ -0,0 +1,4 @@
1
+ export { Crs } from './crs/index.js';
2
+ export { Barretenberg } from './barretenberg/index.js';
3
+ export { RawBuffer } from './types/index.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RawBuffer = exports.Barretenberg = exports.Crs = void 0;
4
+ var index_js_1 = require("./crs/index.js");
5
+ Object.defineProperty(exports, "Crs", { enumerable: true, get: function () { return index_js_1.Crs; } });
6
+ var index_js_2 = require("./barretenberg/index.js");
7
+ Object.defineProperty(exports, "Barretenberg", { enumerable: true, get: function () { return index_js_2.Barretenberg; } });
8
+ var index_js_3 = require("./types/index.js");
9
+ Object.defineProperty(exports, "RawBuffer", { enumerable: true, get: function () { return index_js_3.RawBuffer; } });
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXFDO0FBQTVCLCtGQUFBLEdBQUcsT0FBQTtBQUNaLG9EQUF1RDtBQUE5Qyx3R0FBQSxZQUFZLE9BQUE7QUFDckIsNkNBQTZDO0FBQXBDLHFHQUFBLFNBQVMsT0FBQSJ9
@@ -0,0 +1,9 @@
1
+ export declare const acvmInfoJson: {
2
+ language: {
3
+ name: string;
4
+ width: number;
5
+ };
6
+ opcodes_supported: string[];
7
+ black_box_functions_supported: string[];
8
+ };
9
+ //# sourceMappingURL=info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/info.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY;;;;;;;CAqBxB,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.acvmInfoJson = void 0;
4
+ /* eslint-disable camelcase */
5
+ exports.acvmInfoJson = {
6
+ language: {
7
+ name: 'PLONK-CSAT',
8
+ width: 3,
9
+ },
10
+ opcodes_supported: ['arithmetic', 'directive', 'brillig', 'memory_init', 'memory_op'],
11
+ black_box_functions_supported: [
12
+ 'and',
13
+ 'xor',
14
+ 'range',
15
+ 'sha256',
16
+ 'blake2s',
17
+ 'keccak256',
18
+ 'schnorr_verify',
19
+ 'pedersen',
20
+ 'hash_to_field_128_security',
21
+ 'ecdsa_secp256k1',
22
+ 'ecdsa_secp256r1',
23
+ 'fixed_base_scalar_mul',
24
+ 'recursive_aggregation',
25
+ ],
26
+ };
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhCQUE4QjtBQUNqQixRQUFBLFlBQVksR0FBRztJQUMxQixRQUFRLEVBQUU7UUFDUixJQUFJLEVBQUUsWUFBWTtRQUNsQixLQUFLLEVBQUUsQ0FBQztLQUNUO0lBQ0QsaUJBQWlCLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDO0lBQ3JGLDZCQUE2QixFQUFFO1FBQzdCLEtBQUs7UUFDTCxLQUFLO1FBQ0wsT0FBTztRQUNQLFFBQVE7UUFDUixTQUFTO1FBQ1QsV0FBVztRQUNYLGdCQUFnQjtRQUNoQixVQUFVO1FBQ1YsNEJBQTRCO1FBQzVCLGlCQUFpQjtRQUNqQixpQkFBaUI7UUFDakIsdUJBQXVCO1FBQ3ZCLHVCQUF1QjtLQUN4QjtDQUNGLENBQUMifQ==
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env node
2
+ export declare function proveAndVerify(bytecodePath: string, witnessPath: string, crsPath: string, isRecursive: boolean): Promise<boolean>;
3
+ export declare function prove(bytecodePath: string, witnessPath: string, crsPath: string, isRecursive: boolean, outputPath: string): Promise<void>;
4
+ export declare function gateCount(bytecodePath: string): Promise<void>;
5
+ export declare function acvmInfo(outputPath: string): void;
6
+ export declare function verify(proofPath: string, isRecursive: boolean, vkPath: string): Promise<boolean>;
7
+ export declare function contract(outputPath: string, vkPath: string): Promise<void>;
8
+ export declare function writeVk(bytecodePath: string, crsPath: string, outputPath: string): Promise<void>;
9
+ export declare function proofAsFields(proofPath: string, vkPath: string, outputPath: string): Promise<void>;
10
+ export declare function vkAsFields(vkPath: string, vkeyOutputPath: string): Promise<void>;
11
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAiFA,wBAAsB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,oBAepH;AAED,wBAAsB,KAAK,CACzB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,iBAoBnB;AAED,wBAAsB,SAAS,CAAC,YAAY,EAAE,MAAM,iBAenD;AAED,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,QAS1C;AAED,wBAAsB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAUnF;AAED,wBAAsB,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAgBhE;AAED,wBAAsB,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,iBAoBtF;AAED,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,iBAyBxF;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,iBAsBtE"}