@aztec/bb.js 3.0.0-nightly.20251114 → 3.0.0-nightly.20251118

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 (149) hide show
  1. package/build/amd64-linux/bb +0 -0
  2. package/build/amd64-linux/nodejs_module.node +0 -0
  3. package/build/amd64-macos/bb +0 -0
  4. package/build/amd64-macos/nodejs_module.node +0 -0
  5. package/build/arm64-linux/bb +0 -0
  6. package/build/arm64-linux/nodejs_module.node +0 -0
  7. package/build/arm64-macos/bb +0 -0
  8. package/build/arm64-macos/nodejs_module.node +0 -0
  9. package/dest/browser/barretenberg/backend.d.ts +9 -23
  10. package/dest/browser/barretenberg/backend.d.ts.map +1 -1
  11. package/dest/browser/barretenberg/backend.js +24 -84
  12. package/dest/browser/barretenberg/index.d.ts +1 -3
  13. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  14. package/dest/browser/barretenberg/index.js +15 -24
  15. package/dest/browser/{bigint-array/index.d.ts → barretenberg/testing/bigint-buffer.d.ts} +1 -1
  16. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  17. package/dest/browser/barretenberg/testing/bigint-buffer.js +37 -0
  18. package/dest/browser/barretenberg/testing/fields.d.ts +16 -0
  19. package/dest/browser/barretenberg/testing/fields.d.ts.map +1 -0
  20. package/dest/browser/barretenberg/testing/fields.js +48 -0
  21. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  22. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  23. package/dest/browser/bb_backends/index.d.ts +8 -5
  24. package/dest/browser/bb_backends/index.d.ts.map +1 -1
  25. package/dest/browser/bb_backends/index.js +5 -5
  26. package/dest/node/barretenberg/backend.d.ts +9 -23
  27. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  28. package/dest/node/barretenberg/backend.js +24 -84
  29. package/dest/node/barretenberg/blake2s.test.js +2 -2
  30. package/dest/node/barretenberg/index.d.ts +1 -3
  31. package/dest/node/barretenberg/index.d.ts.map +1 -1
  32. package/dest/node/barretenberg/index.js +15 -24
  33. package/dest/node/barretenberg/pedersen.test.js +2 -2
  34. package/dest/node/barretenberg/poseidon.bench.test.js +27 -68
  35. package/dest/node/barretenberg/poseidon.test.js +2 -2
  36. package/dest/node/{bigint-array/index.d.ts → barretenberg/testing/bigint-buffer.d.ts} +1 -1
  37. package/dest/node/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  38. package/dest/node/barretenberg/testing/bigint-buffer.js +37 -0
  39. package/dest/node/barretenberg/testing/fields.d.ts +16 -0
  40. package/dest/node/barretenberg/testing/fields.d.ts.map +1 -0
  41. package/dest/node/barretenberg/testing/fields.js +48 -0
  42. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  43. package/dest/node/bb_backends/index.d.ts +8 -5
  44. package/dest/node/bb_backends/index.d.ts.map +1 -1
  45. package/dest/node/bb_backends/index.js +5 -5
  46. package/dest/node/bb_backends/node/index.d.ts.map +1 -1
  47. package/dest/node/bb_backends/node/index.js +12 -4
  48. package/dest/node/bb_backends/node/native_shm.d.ts +2 -1
  49. package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -1
  50. package/dest/node/bb_backends/node/native_shm.js +50 -15
  51. package/dest/node/bb_backends/node/native_socket.d.ts +1 -1
  52. package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -1
  53. package/dest/node/bb_backends/node/native_socket.js +28 -19
  54. package/dest/node-cjs/barretenberg/backend.d.ts +9 -23
  55. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  56. package/dest/node-cjs/barretenberg/backend.js +30 -90
  57. package/dest/node-cjs/barretenberg/blake2s.test.js +6 -6
  58. package/dest/node-cjs/barretenberg/index.d.ts +1 -3
  59. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  60. package/dest/node-cjs/barretenberg/index.js +15 -24
  61. package/dest/node-cjs/barretenberg/pedersen.test.js +9 -9
  62. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +36 -77
  63. package/dest/node-cjs/barretenberg/poseidon.test.js +4 -4
  64. package/dest/node-cjs/{bigint-array/index.d.ts → barretenberg/testing/bigint-buffer.d.ts} +1 -1
  65. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  66. package/dest/node-cjs/barretenberg/testing/bigint-buffer.js +43 -0
  67. package/dest/node-cjs/barretenberg/testing/fields.d.ts +16 -0
  68. package/dest/node-cjs/barretenberg/testing/fields.d.ts.map +1 -0
  69. package/dest/node-cjs/barretenberg/testing/fields.js +52 -0
  70. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  71. package/dest/node-cjs/bb_backends/index.d.ts +8 -5
  72. package/dest/node-cjs/bb_backends/index.d.ts.map +1 -1
  73. package/dest/node-cjs/bb_backends/index.js +5 -5
  74. package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -1
  75. package/dest/node-cjs/bb_backends/node/index.js +12 -4
  76. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +2 -1
  77. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -1
  78. package/dest/node-cjs/bb_backends/node/native_shm.js +50 -15
  79. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +1 -1
  80. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -1
  81. package/dest/node-cjs/bb_backends/node/native_socket.js +28 -19
  82. package/package.json +1 -1
  83. package/src/barretenberg/backend.ts +19 -97
  84. package/src/barretenberg/blake2s.test.ts +1 -1
  85. package/src/barretenberg/index.ts +14 -24
  86. package/src/barretenberg/pedersen.test.ts +1 -1
  87. package/src/barretenberg/poseidon.bench.test.ts +109 -156
  88. package/src/barretenberg/poseidon.test.ts +1 -1
  89. package/src/{types → barretenberg/testing}/fields.ts +12 -26
  90. package/src/bb_backends/index.ts +8 -5
  91. package/src/bb_backends/node/index.ts +23 -3
  92. package/src/bb_backends/node/native_shm.ts +51 -14
  93. package/src/bb_backends/node/native_socket.ts +31 -17
  94. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  95. package/dest/browser/bigint-array/index.js +0 -37
  96. package/dest/browser/serialize/index.d.ts +0 -2
  97. package/dest/browser/serialize/index.d.ts.map +0 -1
  98. package/dest/browser/serialize/index.js +0 -2
  99. package/dest/browser/serialize/serialize.d.ts +0 -18
  100. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  101. package/dest/browser/serialize/serialize.js +0 -72
  102. package/dest/browser/types/fields.d.ts +0 -23
  103. package/dest/browser/types/fields.d.ts.map +0 -1
  104. package/dest/browser/types/fields.js +0 -61
  105. package/dest/browser/types/index.d.ts +0 -3
  106. package/dest/browser/types/index.d.ts.map +0 -1
  107. package/dest/browser/types/index.js +0 -3
  108. package/dest/browser/types/point.d.ts +0 -18
  109. package/dest/browser/types/point.d.ts.map +0 -1
  110. package/dest/browser/types/point.js +0 -28
  111. package/dest/node/bigint-array/index.d.ts.map +0 -1
  112. package/dest/node/bigint-array/index.js +0 -37
  113. package/dest/node/serialize/index.d.ts +0 -2
  114. package/dest/node/serialize/index.d.ts.map +0 -1
  115. package/dest/node/serialize/index.js +0 -2
  116. package/dest/node/serialize/serialize.d.ts +0 -18
  117. package/dest/node/serialize/serialize.d.ts.map +0 -1
  118. package/dest/node/serialize/serialize.js +0 -72
  119. package/dest/node/types/fields.d.ts +0 -23
  120. package/dest/node/types/fields.d.ts.map +0 -1
  121. package/dest/node/types/fields.js +0 -61
  122. package/dest/node/types/index.d.ts +0 -3
  123. package/dest/node/types/index.d.ts.map +0 -1
  124. package/dest/node/types/index.js +0 -3
  125. package/dest/node/types/point.d.ts +0 -18
  126. package/dest/node/types/point.d.ts.map +0 -1
  127. package/dest/node/types/point.js +0 -28
  128. package/dest/node-cjs/bigint-array/index.d.ts.map +0 -1
  129. package/dest/node-cjs/bigint-array/index.js +0 -43
  130. package/dest/node-cjs/serialize/index.d.ts +0 -2
  131. package/dest/node-cjs/serialize/index.d.ts.map +0 -1
  132. package/dest/node-cjs/serialize/index.js +0 -5
  133. package/dest/node-cjs/serialize/serialize.d.ts +0 -18
  134. package/dest/node-cjs/serialize/serialize.d.ts.map +0 -1
  135. package/dest/node-cjs/serialize/serialize.js +0 -82
  136. package/dest/node-cjs/types/fields.d.ts +0 -23
  137. package/dest/node-cjs/types/fields.d.ts.map +0 -1
  138. package/dest/node-cjs/types/fields.js +0 -65
  139. package/dest/node-cjs/types/index.d.ts +0 -3
  140. package/dest/node-cjs/types/index.d.ts.map +0 -1
  141. package/dest/node-cjs/types/index.js +0 -6
  142. package/dest/node-cjs/types/point.d.ts +0 -18
  143. package/dest/node-cjs/types/point.d.ts.map +0 -1
  144. package/dest/node-cjs/types/point.js +0 -32
  145. package/src/serialize/index.ts +0 -1
  146. package/src/serialize/serialize.ts +0 -75
  147. package/src/types/index.ts +0 -2
  148. package/src/types/point.ts +0 -32
  149. /package/src/{bigint-array/index.ts → barretenberg/testing/bigint-buffer.ts} +0 -0
@@ -1,75 +0,0 @@
1
- // For serializing bool.
2
- export function boolToBuffer(b: boolean) {
3
- const buf = new Uint8Array(1);
4
- buf[0] = b ? 1 : 0;
5
- return buf;
6
- }
7
-
8
- // For serializing numbers to 32 bit big-endian form.
9
- export function numToUInt32BE(n: number, bufferSize = 4) {
10
- const buf = new Uint8Array(bufferSize);
11
- new DataView(buf.buffer).setUint32(buf.byteLength - 4, n, false);
12
- return buf;
13
- }
14
-
15
- // For serializing signed numbers to 32 bit big-endian form.
16
- export function numToInt32BE(n: number, bufferSize = 4) {
17
- const buf = new Uint8Array(bufferSize);
18
- new DataView(buf.buffer).setInt32(buf.byteLength - 4, n, false);
19
- return buf;
20
- }
21
-
22
- export function concatenateUint8Arrays(arrayOfUint8Arrays: Uint8Array[]) {
23
- const totalLength = arrayOfUint8Arrays.reduce((prev, curr) => prev + curr.length, 0);
24
- const result = new Uint8Array(totalLength);
25
- let length = 0;
26
- for (const array of arrayOfUint8Arrays) {
27
- result.set(array, length);
28
- length += array.length;
29
- }
30
- return result;
31
- }
32
-
33
- // For serializing a buffer as a vector.
34
- export function serializeBufferToVector(buf: Uint8Array) {
35
- return concatenateUint8Arrays([numToInt32BE(buf.length), buf]);
36
- }
37
-
38
- export function serializeBigInt(n: bigint, width = 32) {
39
- const buf = new Uint8Array(width);
40
- for (let i = 0; i < width; i++) {
41
- buf[width - i - 1] = Number((n >> BigInt(i * 8)) & 0xffn);
42
- }
43
- return buf;
44
- }
45
-
46
- // For serializing an array of fixed length elements.
47
- export function serializeBufferArrayToVector(arr: Uint8Array[]) {
48
- return concatenateUint8Arrays([numToUInt32BE(arr.length), ...arr.flat()]);
49
- }
50
-
51
- /** A type that can be written to a buffer. */
52
- export type Bufferable = boolean | Uint8Array | number | string | { toBuffer: () => Uint8Array } | Bufferable[];
53
-
54
- /**
55
- * Serializes a list of objects contiguously for calling into wasm.
56
- * @param objs - Objects to serialize.
57
- * @returns A buffer list with the concatenation of all fields.
58
- */
59
- export function serializeBufferable(obj: Bufferable): Uint8Array {
60
- if (Array.isArray(obj)) {
61
- return serializeBufferArrayToVector(obj.map(serializeBufferable));
62
- } else if (obj instanceof Uint8Array) {
63
- return serializeBufferToVector(obj);
64
- } else if (typeof obj === 'boolean') {
65
- return boolToBuffer(obj);
66
- } else if (typeof obj === 'number') {
67
- return numToUInt32BE(obj);
68
- } else if (typeof obj === 'bigint') {
69
- return serializeBigInt(obj);
70
- } else if (typeof obj === 'string') {
71
- return serializeBufferToVector(new TextEncoder().encode(obj));
72
- } else {
73
- return obj.toBuffer();
74
- }
75
- }
@@ -1,2 +0,0 @@
1
- export * from './fields.js';
2
- export * from './point.js';
@@ -1,32 +0,0 @@
1
- import { Fr } from './fields.js';
2
-
3
- /**
4
- * Internal Point class for tests.
5
- * @dev This minimal implementation is provided for testing barretenberg directly.
6
- * Projects using bb.js should create their own point abstraction using the curve point
7
- * types and operations exported from the barretenberg API.
8
- */
9
- export class Point {
10
- static SIZE_IN_BYTES = 64;
11
- static EMPTY = new Point(Fr.ZERO, Fr.ZERO);
12
-
13
- constructor(
14
- public readonly x: Fr,
15
- public readonly y: Fr,
16
- ) {}
17
-
18
- static fromBuffer(buffer: Uint8Array) {
19
- if (buffer.length !== this.SIZE_IN_BYTES) {
20
- throw new Error(`Expected ${this.SIZE_IN_BYTES} bytes, got ${buffer.length}`);
21
- }
22
- return new this(Fr.fromBuffer(buffer.subarray(0, 32)), Fr.fromBuffer(buffer.subarray(32, 64)));
23
- }
24
-
25
- toBuffer() {
26
- return Buffer.concat([this.x.toBuffer(), this.y.toBuffer()]);
27
- }
28
-
29
- equals(rhs: Point) {
30
- return this.x.equals(rhs.x) && this.y.equals(rhs.y);
31
- }
32
- }