@aztec/foundation 0.8.9 → 0.8.11

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 (45) hide show
  1. package/dest/abi/abi.d.ts +31 -10
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +8 -8
  4. package/dest/abi/decoder.d.ts +2 -2
  5. package/dest/abi/decoder.d.ts.map +1 -1
  6. package/dest/abi/decoder.js +6 -6
  7. package/dest/abi/encoder.d.ts +2 -2
  8. package/dest/abi/encoder.d.ts.map +1 -1
  9. package/dest/abi/encoder.js +1 -1
  10. package/dest/abi/function_selector.d.ts +9 -0
  11. package/dest/abi/function_selector.d.ts.map +1 -1
  12. package/dest/abi/function_selector.js +16 -1
  13. package/dest/eth-address/index.d.ts +1 -1
  14. package/dest/eth-address/index.js +3 -3
  15. package/dest/fields/coordinate.d.ts +1 -1
  16. package/dest/fields/coordinate.js +1 -1
  17. package/dest/fields/point.d.ts +1 -1
  18. package/dest/fields/point.js +1 -1
  19. package/dest/fifo/bounded_serial_queue.d.ts +3 -3
  20. package/dest/fifo/bounded_serial_queue.js +3 -3
  21. package/dest/fifo/serial_queue.d.ts +1 -1
  22. package/dest/fifo/serial_queue.js +1 -1
  23. package/dest/json-rpc/convert.js +1 -1
  24. package/dest/running-promise/index.d.ts +2 -2
  25. package/dest/running-promise/index.js +3 -3
  26. package/dest/sleep/index.d.ts +4 -4
  27. package/dest/sleep/index.js +4 -4
  28. package/dest/timer/elapsed.d.ts +4 -5
  29. package/dest/timer/elapsed.d.ts.map +1 -1
  30. package/dest/timer/elapsed.js +5 -5
  31. package/package.json +1 -1
  32. package/src/abi/abi.ts +39 -14
  33. package/src/abi/decoder.ts +6 -6
  34. package/src/abi/encoder.ts +3 -3
  35. package/src/abi/function_selector.ts +16 -0
  36. package/src/eth-address/index.ts +2 -2
  37. package/src/fields/coordinate.ts +1 -1
  38. package/src/fields/point.ts +1 -1
  39. package/src/fifo/bounded_serial_queue.ts +3 -3
  40. package/src/fifo/serial_queue.ts +1 -1
  41. package/src/json-rpc/README.md +1 -1
  42. package/src/json-rpc/convert.ts +1 -1
  43. package/src/running-promise/index.ts +3 -3
  44. package/src/sleep/index.ts +4 -4
  45. package/src/timer/elapsed.ts +6 -6
package/dest/abi/abi.d.ts CHANGED
@@ -88,6 +88,23 @@ export interface StructType extends BasicType<'struct'> {
88
88
  */
89
89
  path: string;
90
90
  }
91
+ /**
92
+ * A contract event.
93
+ */
94
+ export interface EventAbi {
95
+ /**
96
+ * The event name.
97
+ */
98
+ name: string;
99
+ /**
100
+ * Fully qualified name of the event.
101
+ */
102
+ path: string;
103
+ /**
104
+ * The fields of the event.
105
+ */
106
+ fields: ABIVariable[];
107
+ }
91
108
  /**
92
109
  * Aztec.nr function types.
93
110
  */
@@ -97,9 +114,9 @@ export declare enum FunctionType {
97
114
  UNCONSTRAINED = "unconstrained"
98
115
  }
99
116
  /**
100
- * The ABI entry of a function without including bytecode and verification key.
117
+ * The abi entry of a function.
101
118
  */
102
- export interface FunctionAbiHeader {
119
+ export interface FunctionAbi {
103
120
  /**
104
121
  * The name of the function.
105
122
  */
@@ -122,9 +139,9 @@ export interface FunctionAbiHeader {
122
139
  returnTypes: ABIType[];
123
140
  }
124
141
  /**
125
- * The ABI entry of a function.
142
+ * The artifact entry of a function.
126
143
  */
127
- export interface FunctionAbi extends FunctionAbiHeader {
144
+ export interface FunctionArtifact extends FunctionAbi {
128
145
  /**
129
146
  * The ACIR bytecode of the function.
130
147
  */
@@ -201,9 +218,9 @@ export interface DebugMetadata {
201
218
  fileMap: DebugFileMap;
202
219
  }
203
220
  /**
204
- * Defines ABI of a contract.
221
+ * Defines artifact of a contract.
205
222
  */
206
- export interface ContractAbi {
223
+ export interface ContractArtifact {
207
224
  /**
208
225
  * The name of the contract.
209
226
  */
@@ -211,7 +228,11 @@ export interface ContractAbi {
211
228
  /**
212
229
  * The functions of the contract.
213
230
  */
214
- functions: FunctionAbi[];
231
+ functions: FunctionArtifact[];
232
+ /**
233
+ * The events of the contract.
234
+ */
235
+ events: EventAbi[];
215
236
  /**
216
237
  * The debug metadata of the contract.
217
238
  * It's used to include the relevant source code section when a constraint is not met during simulation.
@@ -232,10 +253,10 @@ export interface FunctionDebugMetadata {
232
253
  files: DebugFileMap;
233
254
  }
234
255
  /**
235
- * Gets the debug metadata of a given function from the contract abi
236
- * @param abi - The contract abi
256
+ * Gets the debug metadata of a given function from the contract artifact
257
+ * @param artifact - The contract build artifact
237
258
  * @param functionName - The name of the function
238
259
  * @returns The debug metadata of the function
239
260
  */
240
- export declare function getFunctionDebugMetadata(abi: ContractAbi, functionName: string): FunctionDebugMetadata | undefined;
261
+ export declare function getFunctionDebugMetadata(artifact: ContractArtifact, functionName: string): FunctionDebugMetadata | undefined;
241
262
  //# sourceMappingURL=abi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/abi/abi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/abi/abi.ts"],"names":[],"mappings":"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"}
package/dest/abi/abi.js CHANGED
@@ -17,16 +17,16 @@ export var FunctionType;
17
17
  FunctionType["UNCONSTRAINED"] = "unconstrained";
18
18
  })(FunctionType || (FunctionType = {}));
19
19
  /**
20
- * Gets the debug metadata of a given function from the contract abi
21
- * @param abi - The contract abi
20
+ * Gets the debug metadata of a given function from the contract artifact
21
+ * @param artifact - The contract build artifact
22
22
  * @param functionName - The name of the function
23
23
  * @returns The debug metadata of the function
24
24
  */
25
- export function getFunctionDebugMetadata(abi, functionName) {
26
- const functionIndex = abi.functions.findIndex(f => f.name === functionName);
27
- if (abi.debug && functionIndex !== -1) {
28
- const debugSymbols = JSON.parse(inflate(Buffer.from(abi.debug.debugSymbols[functionIndex], 'base64'), { to: 'string' }));
29
- const files = abi.debug.fileMap;
25
+ export function getFunctionDebugMetadata(artifact, functionName) {
26
+ const functionIndex = artifact.functions.findIndex(f => f.name === functionName);
27
+ if (artifact.debug && functionIndex !== -1) {
28
+ const debugSymbols = JSON.parse(inflate(Buffer.from(artifact.debug.debugSymbols[functionIndex], 'base64'), { to: 'string' }));
29
+ const files = artifact.debug.fileMap;
30
30
  return {
31
31
  debugSymbols,
32
32
  files,
@@ -34,4 +34,4 @@ export function getFunctionDebugMetadata(abi, functionName) {
34
34
  }
35
35
  return undefined;
36
36
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWdCL0I7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxzQkFHWDtBQUhELFdBQVksc0JBQXNCO0lBQ2hDLDJDQUFpQixDQUFBO0lBQ2pCLDJDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFIVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBR2pDO0FBK0VEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksWUFJWDtBQUpELFdBQVksWUFBWTtJQUN0QixpQ0FBaUIsQ0FBQTtJQUNqQiw2QkFBYSxDQUFBO0lBQ2IsK0NBQStCLENBQUE7QUFDakMsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCO0FBdUpEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEdBQWdCLEVBQUUsWUFBb0I7SUFDN0UsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDO0lBQzVFLElBQUksR0FBRyxDQUFDLEtBQUssSUFBSSxhQUFhLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDckMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDN0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FDeEYsQ0FBQztRQUNGLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2hDLE9BQU87WUFDTCxZQUFZO1lBQ1osS0FBSztTQUNOLENBQUM7S0FDSDtJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMifQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWdCL0I7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxzQkFHWDtBQUhELFdBQVksc0JBQXNCO0lBQ2hDLDJDQUFpQixDQUFBO0lBQ2pCLDJDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFIVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBR2pDO0FBaUdEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksWUFJWDtBQUpELFdBQVksWUFBWTtJQUN0QixpQ0FBaUIsQ0FBQTtJQUNqQiw2QkFBYSxDQUFBO0lBQ2IsK0NBQStCLENBQUE7QUFDakMsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCO0FBMkpEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUN0QyxRQUEwQixFQUMxQixZQUFvQjtJQUVwQixNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUM7SUFDakYsSUFBSSxRQUFRLENBQUMsS0FBSyxJQUFJLGFBQWEsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUMxQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUM3QixPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUM3RixDQUFDO1FBQ0YsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDckMsT0FBTztZQUNMLFlBQVk7WUFDWixLQUFLO1NBQ04sQ0FBQztLQUNIO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyJ9
@@ -1,4 +1,4 @@
1
- import { ABIParameter, FunctionAbi } from '@aztec/foundation/abi';
1
+ import { ABIParameter, FunctionArtifact } from '@aztec/foundation/abi';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
3
  /**
4
4
  * The type of our decoded ABI.
@@ -12,7 +12,7 @@ export type DecodedReturn = bigint | boolean | DecodedReturn[] | {
12
12
  * @param returnValues - The decoded return values.
13
13
  * @returns
14
14
  */
15
- export declare function decodeReturnValues(abi: FunctionAbi, returnValues: Fr[]): DecodedReturn;
15
+ export declare function decodeReturnValues(abi: FunctionArtifact, returnValues: Fr[]): DecodedReturn;
16
16
  /**
17
17
  * Decodes the signature of a function from the name and parameters.
18
18
  */
@@ -1 +1 @@
1
- {"version":3,"file":"decoder.d.ts","sourceRoot":"","sources":["../../src/abi/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAwB,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,CAAC;AAyElG;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,EAAE,iBAEtE;AAED;;GAEG;AACH,qBAAa,wBAAwB;IAEvB,OAAO,CAAC,IAAI;IAAU,OAAO,CAAC,UAAU;IAAkB,OAAO,CAAC,YAAY;IAD1F,OAAO,CAAC,SAAS,CAAS;gBACN,IAAI,EAAE,MAAM,EAAU,UAAU,EAAE,YAAY,EAAE,EAAU,YAAY,UAAQ;IAIlG;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAKvB;;;OAGG;IACI,MAAM,IAAI,MAAM;CAGxB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAE/E;AAED;;;;;GAKG;AACH,wBAAgB,yCAAyC,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAEjG"}
1
+ {"version":3,"file":"decoder.d.ts","sourceRoot":"","sources":["../../src/abi/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAwB,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,CAAC;AAyElG;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,EAAE,iBAE3E;AAED;;GAEG;AACH,qBAAa,wBAAwB;IAEvB,OAAO,CAAC,IAAI;IAAU,OAAO,CAAC,UAAU;IAAkB,OAAO,CAAC,YAAY;IAD1F,OAAO,CAAC,SAAS,CAAS;gBACN,IAAI,EAAE,MAAM,EAAU,UAAU,EAAE,YAAY,EAAE,EAAU,YAAY,UAAQ;IAIlG;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAKvB;;;OAGG;IACI,MAAM,IAAI,MAAM;CAGxB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAE/E;AAED;;;;;GAKG;AACH,wBAAgB,yCAAyC,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAEjG"}
@@ -3,8 +3,8 @@
3
3
  * Missing support for integer and string.
4
4
  */
5
5
  class ReturnValuesDecoder {
6
- constructor(abi, flattened) {
7
- this.abi = abi;
6
+ constructor(artifact, flattened) {
7
+ this.artifact = artifact;
8
8
  this.flattened = flattened;
9
9
  }
10
10
  /**
@@ -59,13 +59,13 @@ class ReturnValuesDecoder {
59
59
  * @returns The decoded return values.
60
60
  */
61
61
  decode() {
62
- if (this.abi.returnTypes.length > 1) {
62
+ if (this.artifact.returnTypes.length > 1) {
63
63
  throw new Error('Multiple return values not supported');
64
64
  }
65
- if (this.abi.returnTypes.length === 0) {
65
+ if (this.artifact.returnTypes.length === 0) {
66
66
  return [];
67
67
  }
68
- return this.decodeReturn(this.abi.returnTypes[0]);
68
+ return this.decodeReturn(this.artifact.returnTypes[0]);
69
69
  }
70
70
  }
71
71
  /**
@@ -146,4 +146,4 @@ export function decodeFunctionSignature(name, parameters) {
146
146
  export function decodeFunctionSignatureWithParameterNames(name, parameters) {
147
147
  return new FunctionSignatureDecoder(name, parameters, true).decode();
148
148
  }
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvZGVjb2Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQTs7O0dBR0c7QUFDSCxNQUFNLG1CQUFtQjtJQUN2QixZQUFvQixHQUFnQixFQUFVLFNBQWU7UUFBekMsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQU07SUFBRyxDQUFDO0lBRWpFOzs7O09BSUc7SUFDSyxZQUFZLENBQUMsT0FBZ0I7UUFDbkMsUUFBUSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ3BCLEtBQUssT0FBTztnQkFDVixPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDbkMsS0FBSyxTQUFTO2dCQUNaLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7b0JBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztpQkFDckQ7Z0JBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ25DLEtBQUssU0FBUztnQkFDWixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3ZDLEtBQUssT0FBTyxDQUFDLENBQUM7Z0JBQ1osTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO2dCQUNqQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUMxQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQzdDO2dCQUNELE9BQU8sS0FBSyxDQUFDO2FBQ2Q7WUFDRCxLQUFLLFFBQVEsQ0FBQyxDQUFDO2dCQUNiLE1BQU0sTUFBTSxHQUFxQyxFQUFFLENBQUM7Z0JBQ3BE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
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvZGVjb2Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQTs7O0dBR0c7QUFDSCxNQUFNLG1CQUFtQjtJQUN2QixZQUFvQixRQUEwQixFQUFVLFNBQWU7UUFBbkQsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFNO0lBQUcsQ0FBQztJQUUzRTs7OztPQUlHO0lBQ0ssWUFBWSxDQUFDLE9BQWdCO1FBQ25DLFFBQVEsT0FBTyxDQUFDLElBQUksRUFBRTtZQUNwQixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ25DLEtBQUssU0FBUztnQkFDWixJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO29CQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7aUJBQ3JEO2dCQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNuQyxLQUFLLFNBQVM7Z0JBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN2QyxLQUFLLE9BQU8sQ0FBQyxDQUFDO2dCQUNaLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDMUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUM3QztnQkFDRCxPQUFPLEtBQUssQ0FBQzthQUNkO1lBQ0QsS0FBSyxRQUFRLENBQUMsQ0FBQztnQkFDYixNQUFNLE1BQU0sR0FBcUMsRUFBRSxDQUFDO2dCQUNw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
@@ -1,4 +1,4 @@
1
- import { FunctionAbiHeader } from '@aztec/foundation/abi';
1
+ import { FunctionAbi } from '@aztec/foundation/abi';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
3
  /**
4
4
  * Encodes all the arguments for a function call.
@@ -6,5 +6,5 @@ import { Fr } from '@aztec/foundation/fields';
6
6
  * @param args - The arguments to encode.
7
7
  * @returns The encoded arguments.
8
8
  */
9
- export declare function encodeArguments(abi: FunctionAbiHeader, args: any[]): Fr[];
9
+ export declare function encodeArguments(abi: FunctionAbi, args: any[]): Fr[];
10
10
  //# sourceMappingURL=encoder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../src/abi/encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAmB,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAiF9C;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,QAElE"}
1
+ {"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../src/abi/encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAmB,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAiF9C;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,QAE5D"}
@@ -93,4 +93,4 @@ class ArgumentEncoder {
93
93
  export function encodeArguments(abi, args) {
94
94
  return new ArgumentEncoder(abi, args).encode();
95
95
  }
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvZW5jb2Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQThCLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5Qzs7O0dBR0c7QUFDSCxNQUFNLGVBQWU7SUFHbkIsWUFBb0IsR0FBc0IsRUFBVSxJQUFXO1FBQTNDLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBTztRQUZ2RCxjQUFTLEdBQVMsRUFBRSxDQUFDO0lBRXFDLENBQUM7SUFFbkU7Ozs7O09BS0c7SUFDSyxjQUFjLENBQUMsT0FBZ0IsRUFBRSxHQUFRLEVBQUUsSUFBYTtRQUM5RCxJQUFJLEdBQUcsS0FBSyxTQUFTLElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtZQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixJQUFJLElBQUksU0FBUyxZQUFZLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3BGO1FBQ0QsUUFBUSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ3BCLEtBQUssT0FBTztnQkFDVixJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtvQkFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDMUM7cUJBQU0sSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7b0JBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQ2xDO3FCQUFNLElBQUksT0FBTyxHQUFHLEtBQUssU0FBUyxFQUFFO29CQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FB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
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvZW5jb2Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5Qzs7O0dBR0c7QUFDSCxNQUFNLGVBQWU7SUFHbkIsWUFBb0IsR0FBZ0IsRUFBVSxJQUFXO1FBQXJDLFFBQUcsR0FBSCxHQUFHLENBQWE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFPO1FBRmpELGNBQVMsR0FBUyxFQUFFLENBQUM7SUFFK0IsQ0FBQztJQUU3RDs7Ozs7T0FLRztJQUNLLGNBQWMsQ0FBQyxPQUFnQixFQUFFLEdBQVEsRUFBRSxJQUFhO1FBQzlELElBQUksR0FBRyxLQUFLLFNBQVMsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFO1lBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLElBQUksSUFBSSxTQUFTLFlBQVksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7U0FDcEY7UUFDRCxRQUFRLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDcEIsS0FBSyxPQUFPO2dCQUNWLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO29CQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUMxQztxQkFBTSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtvQkFDbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztpQkFDbEM7cUJBQU0sSUFBSSxPQUFPLEdBQUcsS0FBSyxTQUFTLEVBQUU7b0JBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFD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
@@ -64,6 +64,15 @@ export declare class FunctionSelector {
64
64
  * @returns A Buffer containing the 4-byte function selector.
65
65
  */
66
66
  static fromNameAndParameters(name: string, parameters: ABIParameter[]): FunctionSelector;
67
+ /**
68
+ * Create an AztecAddress instance from a hex-encoded string.
69
+ * The input 'address' should be prefixed with '0x' or not, and have exactly 64 hex characters.
70
+ * Throws an error if the input length is invalid or address value is out of range.
71
+ *
72
+ * @param selector - The hex-encoded string representing the Aztec address.
73
+ * @returns An AztecAddress instance.
74
+ */
75
+ static fromString(selector: string): FunctionSelector;
67
76
  /**
68
77
  * Creates an empty function selector.
69
78
  * @returns An empty function selector.
@@ -1 +1 @@
1
- {"version":3,"file":"function_selector.d.ts","sourceRoot":"","sources":["../../src/abi/function_selector.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAA2B,MAAM,uBAAuB,CAAC;AAG9E,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D;;GAEG;AACH,qBAAa,gBAAgB;IAMyC,KAAK,EAAE,MAAM;IALjF;;OAEG;IACH,OAAc,IAAI,SAAK;gBAEX,gDAAgD,CAAQ,KAAK,EAAE,MAAM;IAMjF;;;OAGG;IACI,OAAO,IAAI,OAAO;IAIzB;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAIxC;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB;IAMlE;;;;OAIG;IACI,OAAO;IAId;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,gBAAgB;IAI1C;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAIzD;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE;IAQrE;;;OAGG;IACH,MAAM,CAAC,KAAK,IAAI,gBAAgB;CAGjC"}
1
+ {"version":3,"file":"function_selector.d.ts","sourceRoot":"","sources":["../../src/abi/function_selector.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAA2B,MAAM,uBAAuB,CAAC;AAG9E,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D;;GAEG;AACH,qBAAa,gBAAgB;IAMyC,KAAK,EAAE,MAAM;IALjF;;OAEG;IACH,OAAc,IAAI,SAAK;gBAEX,gDAAgD,CAAQ,KAAK,EAAE,MAAM;IAMjF;;;OAGG;IACI,OAAO,IAAI,OAAO;IAIzB;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAIxC;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB;IAMlE;;;;OAIG;IACI,OAAO;IAId;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,gBAAgB;IAI1C;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAIzD;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE;IAQrE;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM;IAQlC;;;OAGG;IACH,MAAM,CAAC,KAAK,IAAI,gBAAgB;CAGjC"}
@@ -89,6 +89,21 @@ export class FunctionSelector {
89
89
  // console.log(`Function selector for ${signature} is ${selector}`);
90
90
  return selector;
91
91
  }
92
+ /**
93
+ * Create an AztecAddress instance from a hex-encoded string.
94
+ * The input 'address' should be prefixed with '0x' or not, and have exactly 64 hex characters.
95
+ * Throws an error if the input length is invalid or address value is out of range.
96
+ *
97
+ * @param selector - The hex-encoded string representing the Aztec address.
98
+ * @returns An AztecAddress instance.
99
+ */
100
+ static fromString(selector) {
101
+ const buf = Buffer.from(selector.replace(/^0x/i, ''), 'hex');
102
+ if (buf.length !== FunctionSelector.SIZE) {
103
+ throw new Error(`Invalid length ${buf.length}.`);
104
+ }
105
+ return FunctionSelector.fromBuffer(buf);
106
+ }
92
107
  /**
93
108
  * Creates an empty function selector.
94
109
  * @returns An empty function selector.
@@ -101,4 +116,4 @@ export class FunctionSelector {
101
116
  * The size of the function selector in bytes.
102
117
  */
103
118
  FunctionSelector.SIZE = 4;
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25fc2VsZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWJpL2Z1bmN0aW9uX3NlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsdUJBQXVCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQU0zQixZQUFZLGdEQUFnRCxDQUFRLEtBQWE7UUFBYixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQy9FLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsZ0JBQWdCLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQztTQUNsRjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUTtRQUNOLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7T0FHRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQTZCO1FBQzdDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRSxPQUFPLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxPQUFPO1FBQ1osT0FBTyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQU07UUFDckIsT0FBTyxJQUFJLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBaUI7UUFDcEMsT0FBTyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLHFCQUFxQixDQUFDLElBQVksRUFBRSxVQUEwQjtRQUNuRSxNQUFNLFNBQVMsR0FBRyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUQsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzNELDZHQUE2RztRQUM3RyxvRUFBb0U7UUFDcEUsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxLQUFLO1FBQ1YsT0FBTyxJQUFJLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O0FBdEdEOztHQUVHO0FBQ1cscUJBQUksR0FBRyxDQUFDLENBQUMifQ==
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25fc2VsZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWJpL2Z1bmN0aW9uX3NlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsdUJBQXVCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQU0zQixZQUFZLGdEQUFnRCxDQUFRLEtBQWE7UUFBYixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQy9FLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsZ0JBQWdCLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQztTQUNsRjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUTtRQUNOLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7T0FHRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQTZCO1FBQzdDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRSxPQUFPLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxPQUFPO1FBQ1osT0FBTyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQU07UUFDckIsT0FBTyxJQUFJLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBaUI7UUFDcEMsT0FBTyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLHFCQUFxQixDQUFDLElBQVksRUFBRSxVQUEwQjtRQUNuRSxNQUFNLFNBQVMsR0FBRyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUQsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzNELDZHQUE2RztRQUM3RyxvRUFBb0U7UUFDcEUsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQWdCO1FBQ2hDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDN0QsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLGdCQUFnQixDQUFDLElBQUksRUFBRTtZQUN4QyxNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUNsRDtRQUNELE9BQU8sZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsS0FBSztRQUNWLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDOztBQXRIRDs7R0FFRztBQUNXLHFCQUFJLEdBQUcsQ0FBQyxDQUFDIn0=
@@ -132,7 +132,7 @@ export declare class EthAddress {
132
132
  /**
133
133
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
134
134
  * @param buffer - Buffer to read from.
135
- * @returns The EthAdress.
135
+ * @returns The EthAddress.
136
136
  */
137
137
  static fromBuffer(buffer: Buffer | BufferReader): EthAddress;
138
138
  /**
@@ -61,7 +61,7 @@ export class EthAddress {
61
61
  return false;
62
62
  }
63
63
  else if (/^(0x|0X)?[0-9a-f]{40}$/.test(address) || /^(0x|0X)?[0-9A-F]{40}$/.test(address)) {
64
- // It's ALL lowercase or ALL upppercase.
64
+ // It's ALL lowercase or ALL uppercase.
65
65
  return true;
66
66
  }
67
67
  else {
@@ -203,7 +203,7 @@ export class EthAddress {
203
203
  /**
204
204
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
205
205
  * @param buffer - Buffer to read from.
206
- * @returns The EthAdress.
206
+ * @returns The EthAddress.
207
207
  */
208
208
  static fromBuffer(buffer) {
209
209
  const reader = BufferReader.asReader(buffer);
@@ -225,4 +225,4 @@ EthAddress.SIZE_IN_BYTES = 20;
225
225
  * Represents a zero Ethereum address with 20 bytes filled with zeros.
226
226
  */
227
227
  EthAddress.ZERO = new EthAddress(Buffer.alloc(EthAddress.SIZE_IN_BYTES));
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXRoLWFkZHJlc3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFVckIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDaEMsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtnQkFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDdEU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ2hDO1NBQ0Y7YUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLGFBQWEsRUFBRTtZQUNyRCxNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixVQUFVLENBQUMsYUFBYSxTQUFTLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ2hHO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQWU7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbEMsTUFB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
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXRoLWFkZHJlc3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFVckIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDaEMsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtnQkFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDdEU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ2hDO1NBQ0Y7YUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLGFBQWEsRUFBRTtZQUNyRCxNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixVQUFVLENBQUMsYUFBYSxTQUFTLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQ2hHO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQWU7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUN2RDtRQUNELE9BQU8sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsTUFBTTtRQUNsQixPQUFPLElBQUksVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBZTtRQUNyQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3pDLHNEQUFzRDtZQUN0RCxPQUFPLEtBQUssQ0FBQztTQUNkO2FBQU0sSUFBSSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzNGLHVDQUF1QztZQUN2QyxPQUFPLElBQUksQ0FBQztTQUNiO2FBQU07WUFDTCxPQUFPLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNqRDtJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLG9CQUFvQixDQUFDLE9BQWU7UUFDaEQsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sV0FBVyxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUUzRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzNCLHVFQUF1RTtZQUN2RSxJQUNFLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDN0UsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzlFO2dCQUNBLE9BQU8sS0FBSyxDQUFDO2FBQ2Q7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxPQUFlO1FBQzdDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ2xDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztTQUM1QztRQUVELE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNwRCxNQUFNLFdBQVcsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBRTNCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3ZDLHFEQUFxRDtZQUNyRCxJQUFJLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQyxlQUFlLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQzdDO2lCQUFNO2dCQUNMLGVBQWUsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDL0I7U0FDRjtRQUNELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsR0FBZTtRQUMzQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksUUFBUTtRQUNiLE9BQU8sS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBbUIsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZ0JBQWdCO1FBQ3JCLE9BQU8sVUFBVSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksVUFBVTtRQUNmLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksT0FBTztRQUNaLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBTTtRQUNyQixPQUFPLElBQUksVUFBVSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBNkI7UUFDN0MsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QyxPQUFPLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekIsQ0FBQzs7QUF2T0Q7O0dBRUc7QUFDVyx3QkFBYSxHQUFHLEVBQUUsQ0FBQztBQUNqQzs7R0FFRztBQUNXLGVBQUksR0FBRyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDIn0=
@@ -31,7 +31,7 @@ export declare class Coordinate {
31
31
  */
32
32
  static random(): Coordinate;
33
33
  /**
34
- * serializes the oblect to buffer of 2 fields.
34
+ * serializes the object to buffer of 2 fields.
35
35
  * @returns A buffer serialization of the object.
36
36
  */
37
37
  toFieldsBuffer(): Buffer;
@@ -31,7 +31,7 @@ export class Coordinate {
31
31
  return this.fromField(Fr.random());
32
32
  }
33
33
  /**
34
- * serializes the oblect to buffer of 2 fields.
34
+ * serializes the object to buffer of 2 fields.
35
35
  * @returns A buffer serialization of the object.
36
36
  */
37
37
  toFieldsBuffer() {
@@ -65,7 +65,7 @@ export declare class Point {
65
65
  y: bigint;
66
66
  };
67
67
  /**
68
- * Converts the Point instance to a Buffer representaion of the coordinates.
68
+ * Converts the Point instance to a Buffer representation of the coordinates.
69
69
  * The outputs buffer length will be 64, the length of both coordinates not represented as fields.
70
70
  * @returns A Buffer representation of the Point instance.
71
71
  */
@@ -69,7 +69,7 @@ export class Point {
69
69
  };
70
70
  }
71
71
  /**
72
- * Converts the Point instance to a Buffer representaion of the coordinates.
72
+ * Converts the Point instance to a Buffer representation of the coordinates.
73
73
  * The outputs buffer length will be 64, the length of both coordinates not represented as fields.
74
74
  * @returns A Buffer representation of the Point instance.
75
75
  */
@@ -36,8 +36,8 @@ export declare class BoundedSerialQueue {
36
36
  */
37
37
  end(): Promise<void>;
38
38
  /**
39
- * The caller will block until fn is succesfully enqueued.
40
- * The fn itself is execute asyncronously and its result discarded.
39
+ * The caller will block until fn is successfully enqueued.
40
+ * The fn itself is execute asynchronously and its result discarded.
41
41
  * TODO(AD) do we need this if we have exec()?
42
42
  * @param fn - The function to call once unblocked.
43
43
  */
@@ -45,7 +45,7 @@ export declare class BoundedSerialQueue {
45
45
  /**
46
46
  * The caller will block until fn is successfully executed, and it's result returned.
47
47
  * @param fn - The function.
48
- * @returns A promise that resolves with the result once exceuted.
48
+ * @returns A promise that resolves with the result once executed.
49
49
  */
50
50
  exec<T>(fn: () => Promise<T>): Promise<T>;
51
51
  /**
@@ -48,8 +48,8 @@ export class BoundedSerialQueue {
48
48
  return this.queue.end();
49
49
  }
50
50
  /**
51
- * The caller will block until fn is succesfully enqueued.
52
- * The fn itself is execute asyncronously and its result discarded.
51
+ * The caller will block until fn is successfully enqueued.
52
+ * The fn itself is execute asynchronously and its result discarded.
53
53
  * TODO(AD) do we need this if we have exec()?
54
54
  * @param fn - The function to call once unblocked.
55
55
  */
@@ -71,7 +71,7 @@ export class BoundedSerialQueue {
71
71
  /**
72
72
  * The caller will block until fn is successfully executed, and it's result returned.
73
73
  * @param fn - The function.
74
- * @returns A promise that resolves with the result once exceuted.
74
+ * @returns A promise that resolves with the result once executed.
75
75
  */
76
76
  async exec(fn) {
77
77
  await this.semaphore.acquire();
@@ -1,5 +1,5 @@
1
1
  /**
2
- * A more specialised fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
2
+ * A more specialized fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
3
3
  */
4
4
  export declare class SerialQueue {
5
5
  private readonly queue;
@@ -1,6 +1,6 @@
1
1
  import { MemoryFifo } from './memory_fifo.js';
2
2
  /**
3
- * A more specialised fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
3
+ * A more specialized fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
4
4
  */
5
5
  export class SerialQueue {
6
6
  constructor() {
@@ -98,7 +98,7 @@ export function convertFromJsonObj(cc, obj) {
98
98
  * @returns The encoded object.
99
99
  */
100
100
  export function convertToJsonObj(cc, obj) {
101
- // Bigint is a primitive type that needs special handling since it's not serialisable
101
+ // Bigint is a primitive type that needs special handling since it's not serializable
102
102
  if (typeof obj === 'bigint') {
103
103
  return {
104
104
  type: 'bigint',
@@ -16,7 +16,7 @@ export declare class RunningPromise {
16
16
  */
17
17
  start(): void;
18
18
  /**
19
- * Stops the running promise, resolves any pending interruptable sleep,
19
+ * Stops the running promise, resolves any pending interruptible sleep,
20
20
  * and waits for the currently executing function to complete.
21
21
  */
22
22
  stop(): Promise<void>;
@@ -25,7 +25,7 @@ export declare class RunningPromise {
25
25
  * The sleep duration is determined by 'timeInMs', and it can be terminated early if the 'interruptPromise' is resolved.
26
26
  * @param timeInMs - The time in milliseconds.
27
27
  */
28
- private interruptableSleep;
28
+ private interruptibleSleep;
29
29
  /**
30
30
  * Checks if the running promise is currently active.
31
31
  * @returns True if the promise is running.
@@ -21,13 +21,13 @@ export class RunningPromise {
21
21
  const poll = async () => {
22
22
  while (this.running) {
23
23
  await this.fn();
24
- await this.interruptableSleep(this.pollingInterval);
24
+ await this.interruptibleSleep(this.pollingInterval);
25
25
  }
26
26
  };
27
27
  this.runningPromise = poll();
28
28
  }
29
29
  /**
30
- * Stops the running promise, resolves any pending interruptable sleep,
30
+ * Stops the running promise, resolves any pending interruptible sleep,
31
31
  * and waits for the currently executing function to complete.
32
32
  */
33
33
  async stop() {
@@ -40,7 +40,7 @@ export class RunningPromise {
40
40
  * The sleep duration is determined by 'timeInMs', and it can be terminated early if the 'interruptPromise' is resolved.
41
41
  * @param timeInMs - The time in milliseconds.
42
42
  */
43
- async interruptableSleep(timeInMs) {
43
+ async interruptibleSleep(timeInMs) {
44
44
  let timeout;
45
45
  const sleepPromise = new Promise(resolve => {
46
46
  timeout = setTimeout(resolve, timeInMs);
@@ -1,11 +1,11 @@
1
1
  /**
2
- * InterruptableSleep is a utility class that allows you to create an interruptible sleep function.
2
+ * InterruptibleSleep is a utility class that allows you to create an interruptible sleep function.
3
3
  * The sleep function can be interrupted at any time by calling the `interrupt` method, which can
4
4
  * also specify whether the sleep should throw an error or just return. This is useful when you need
5
5
  * to terminate long-running processes or perform cleanup tasks in response to external events.
6
6
  *
7
7
  * @example
8
- * const sleeper = new InterruptableSleep();
8
+ * const sleeper = new InterruptibleSleep();
9
9
  *
10
10
  * async function longRunningTask() \{
11
11
  * try \{
@@ -18,7 +18,7 @@
18
18
  *
19
19
  * setTimeout(() =\> sleeper.interrupt(true), 1500); // Interrupt the sleep after 1.5 seconds
20
20
  */
21
- export declare class InterruptableSleep {
21
+ export declare class InterruptibleSleep {
22
22
  private interruptResolve;
23
23
  private interruptPromise;
24
24
  private timeouts;
@@ -43,7 +43,7 @@ export declare class InterruptableSleep {
43
43
  /**
44
44
  * Puts the current execution context to sleep for a specified duration.
45
45
  * This simulates a blocking sleep operation by using an asynchronous function and a Promise that resolves after the given duration.
46
- * The sleep function can be interrupted by the 'interrupt' method of the InterruptableSleep class.
46
+ * The sleep function can be interrupted by the 'interrupt' method of the InterruptibleSleep class.
47
47
  *
48
48
  * @param ms - The duration in milliseconds for which the sleep operation should last.
49
49
  * @returns A Promise that resolves after the specified duration, allowing the use of 'await' to pause execution.
@@ -1,12 +1,12 @@
1
1
  import { InterruptError } from '../errors/index.js';
2
2
  /**
3
- * InterruptableSleep is a utility class that allows you to create an interruptible sleep function.
3
+ * InterruptibleSleep is a utility class that allows you to create an interruptible sleep function.
4
4
  * The sleep function can be interrupted at any time by calling the `interrupt` method, which can
5
5
  * also specify whether the sleep should throw an error or just return. This is useful when you need
6
6
  * to terminate long-running processes or perform cleanup tasks in response to external events.
7
7
  *
8
8
  * @example
9
- * const sleeper = new InterruptableSleep();
9
+ * const sleeper = new InterruptibleSleep();
10
10
  *
11
11
  * async function longRunningTask() \{
12
12
  * try \{
@@ -19,7 +19,7 @@ import { InterruptError } from '../errors/index.js';
19
19
  *
20
20
  * setTimeout(() =\> sleeper.interrupt(true), 1500); // Interrupt the sleep after 1.5 seconds
21
21
  */
22
- export class InterruptableSleep {
22
+ export class InterruptibleSleep {
23
23
  constructor() {
24
24
  this.interruptResolve = () => { };
25
25
  this.interruptPromise = new Promise(resolve => (this.interruptResolve = resolve));
@@ -59,7 +59,7 @@ export class InterruptableSleep {
59
59
  /**
60
60
  * Puts the current execution context to sleep for a specified duration.
61
61
  * This simulates a blocking sleep operation by using an asynchronous function and a Promise that resolves after the given duration.
62
- * The sleep function can be interrupted by the 'interrupt' method of the InterruptableSleep class.
62
+ * The sleep function can be interrupted by the 'interrupt' method of the InterruptibleSleep class.
63
63
  *
64
64
  * @param ms - The duration in milliseconds for which the sleep operation should last.
65
65
  * @returns A Promise that resolves after the specified duration, allowing the use of 'await' to pause execution.
@@ -1,14 +1,13 @@
1
- import { Timer } from './timer.js';
2
1
  /**
3
2
  * Measures the elapsed execution time of a function call or promise once it is awaited.
4
3
  * @param fn - Function or promise.
5
- * @returns A timer object and the result.
4
+ * @returns The number of ms and the result.
6
5
  */
7
- export declare function elapsed<T>(fn: Promise<T> | (() => T | Promise<T>)): Promise<[Timer, T]>;
6
+ export declare function elapsed<T>(fn: Promise<T> | (() => T | Promise<T>)): Promise<[number, T]>;
8
7
  /**
9
8
  * Measures the elapsed execution time of a synchronous function call once it is awaited.
10
9
  * @param fn - Function.
11
- * @returns A timer object and the result.
10
+ * @returns The number of ms and the result.
12
11
  */
13
- export declare function elapsedSync<T>(fn: () => T): [Timer, T];
12
+ export declare function elapsedSync<T>(fn: () => T): [number, T];
14
13
  //# sourceMappingURL=elapsed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"elapsed.d.ts","sourceRoot":"","sources":["../../src/timer/elapsed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAI7F;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAItD"}
1
+ {"version":3,"file":"elapsed.d.ts","sourceRoot":"","sources":["../../src/timer/elapsed.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAI9F;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAIvD"}
@@ -2,21 +2,21 @@ import { Timer } from './timer.js';
2
2
  /**
3
3
  * Measures the elapsed execution time of a function call or promise once it is awaited.
4
4
  * @param fn - Function or promise.
5
- * @returns A timer object and the result.
5
+ * @returns The number of ms and the result.
6
6
  */
7
7
  export async function elapsed(fn) {
8
8
  const timer = new Timer();
9
9
  const result = await (typeof fn === 'function' ? fn() : fn);
10
- return [timer, result];
10
+ return [timer.ms(), result];
11
11
  }
12
12
  /**
13
13
  * Measures the elapsed execution time of a synchronous function call once it is awaited.
14
14
  * @param fn - Function.
15
- * @returns A timer object and the result.
15
+ * @returns The number of ms and the result.
16
16
  */
17
17
  export function elapsedSync(fn) {
18
18
  const timer = new Timer();
19
19
  const result = fn();
20
- return [timer, result];
20
+ return [timer.ms(), result];
21
21
  }
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxhcHNlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aW1lci9lbGFwc2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFbkM7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsT0FBTyxDQUFJLEVBQXVDO0lBQ3RFLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7SUFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVELE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDekIsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFJLEVBQVc7SUFDeEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUMxQixNQUFNLE1BQU0sR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNwQixPQUFPLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3pCLENBQUMifQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxhcHNlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aW1lci9lbGFwc2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFbkM7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsT0FBTyxDQUFJLEVBQXVDO0lBQ3RFLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7SUFDMUIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVELE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFJLEVBQVc7SUFDeEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUMxQixNQUFNLE1BQU0sR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzlCLENBQUMifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/foundation",
3
- "version": "0.8.9",
3
+ "version": "0.8.11",
4
4
  "packageManager": "yarn@3.4.1",
5
5
  "type": "module",
6
6
  "main": "./dest/index.js",
package/src/abi/abi.ts CHANGED
@@ -99,6 +99,24 @@ export interface StructType extends BasicType<'struct'> {
99
99
  path: string;
100
100
  }
101
101
 
102
+ /**
103
+ * A contract event.
104
+ */
105
+ export interface EventAbi {
106
+ /**
107
+ * The event name.
108
+ */
109
+ name: string;
110
+ /**
111
+ * Fully qualified name of the event.
112
+ */
113
+ path: string;
114
+ /**
115
+ * The fields of the event.
116
+ */
117
+ fields: ABIVariable[];
118
+ }
119
+
102
120
  /**
103
121
  * Aztec.nr function types.
104
122
  */
@@ -109,9 +127,9 @@ export enum FunctionType {
109
127
  }
110
128
 
111
129
  /**
112
- * The ABI entry of a function without including bytecode and verification key.
130
+ * The abi entry of a function.
113
131
  */
114
- export interface FunctionAbiHeader {
132
+ export interface FunctionAbi {
115
133
  /**
116
134
  * The name of the function.
117
135
  */
@@ -135,9 +153,9 @@ export interface FunctionAbiHeader {
135
153
  }
136
154
 
137
155
  /**
138
- * The ABI entry of a function.
156
+ * The artifact entry of a function.
139
157
  */
140
- export interface FunctionAbi extends FunctionAbiHeader {
158
+ export interface FunctionArtifact extends FunctionAbi {
141
159
  /**
142
160
  * The ACIR bytecode of the function.
143
161
  */
@@ -224,9 +242,9 @@ export interface DebugMetadata {
224
242
  }
225
243
 
226
244
  /**
227
- * Defines ABI of a contract.
245
+ * Defines artifact of a contract.
228
246
  */
229
- export interface ContractAbi {
247
+ export interface ContractArtifact {
230
248
  /**
231
249
  * The name of the contract.
232
250
  */
@@ -234,7 +252,11 @@ export interface ContractAbi {
234
252
  /**
235
253
  * The functions of the contract.
236
254
  */
237
- functions: FunctionAbi[];
255
+ functions: FunctionArtifact[];
256
+ /**
257
+ * The events of the contract.
258
+ */
259
+ events: EventAbi[];
238
260
 
239
261
  /**
240
262
  * The debug metadata of the contract.
@@ -258,18 +280,21 @@ export interface FunctionDebugMetadata {
258
280
  }
259
281
 
260
282
  /**
261
- * Gets the debug metadata of a given function from the contract abi
262
- * @param abi - The contract abi
283
+ * Gets the debug metadata of a given function from the contract artifact
284
+ * @param artifact - The contract build artifact
263
285
  * @param functionName - The name of the function
264
286
  * @returns The debug metadata of the function
265
287
  */
266
- export function getFunctionDebugMetadata(abi: ContractAbi, functionName: string): FunctionDebugMetadata | undefined {
267
- const functionIndex = abi.functions.findIndex(f => f.name === functionName);
268
- if (abi.debug && functionIndex !== -1) {
288
+ export function getFunctionDebugMetadata(
289
+ artifact: ContractArtifact,
290
+ functionName: string,
291
+ ): FunctionDebugMetadata | undefined {
292
+ const functionIndex = artifact.functions.findIndex(f => f.name === functionName);
293
+ if (artifact.debug && functionIndex !== -1) {
269
294
  const debugSymbols = JSON.parse(
270
- inflate(Buffer.from(abi.debug.debugSymbols[functionIndex], 'base64'), { to: 'string' }),
295
+ inflate(Buffer.from(artifact.debug.debugSymbols[functionIndex], 'base64'), { to: 'string' }),
271
296
  );
272
- const files = abi.debug.fileMap;
297
+ const files = artifact.debug.fileMap;
273
298
  return {
274
299
  debugSymbols,
275
300
  files,
@@ -1,4 +1,4 @@
1
- import { ABIParameter, ABIType, ABIVariable, FunctionAbi } from '@aztec/foundation/abi';
1
+ import { ABIParameter, ABIType, ABIVariable, FunctionArtifact } from '@aztec/foundation/abi';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
3
 
4
4
  /**
@@ -11,7 +11,7 @@ export type DecodedReturn = bigint | boolean | DecodedReturn[] | { [key: string]
11
11
  * Missing support for integer and string.
12
12
  */
13
13
  class ReturnValuesDecoder {
14
- constructor(private abi: FunctionAbi, private flattened: Fr[]) {}
14
+ constructor(private artifact: FunctionArtifact, private flattened: Fr[]) {}
15
15
 
16
16
  /**
17
17
  * Decodes a single return value from field to the given type.
@@ -67,13 +67,13 @@ class ReturnValuesDecoder {
67
67
  * @returns The decoded return values.
68
68
  */
69
69
  public decode(): DecodedReturn {
70
- if (this.abi.returnTypes.length > 1) {
70
+ if (this.artifact.returnTypes.length > 1) {
71
71
  throw new Error('Multiple return values not supported');
72
72
  }
73
- if (this.abi.returnTypes.length === 0) {
73
+ if (this.artifact.returnTypes.length === 0) {
74
74
  return [];
75
75
  }
76
- return this.decodeReturn(this.abi.returnTypes[0]);
76
+ return this.decodeReturn(this.artifact.returnTypes[0]);
77
77
  }
78
78
  }
79
79
 
@@ -83,7 +83,7 @@ class ReturnValuesDecoder {
83
83
  * @param returnValues - The decoded return values.
84
84
  * @returns
85
85
  */
86
- export function decodeReturnValues(abi: FunctionAbi, returnValues: Fr[]) {
86
+ export function decodeReturnValues(abi: FunctionArtifact, returnValues: Fr[]) {
87
87
  return new ReturnValuesDecoder(abi, returnValues.slice()).decode();
88
88
  }
89
89
 
@@ -1,4 +1,4 @@
1
- import { ABIType, FunctionAbiHeader, isAddressStruct } from '@aztec/foundation/abi';
1
+ import { ABIType, FunctionAbi, isAddressStruct } from '@aztec/foundation/abi';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
3
 
4
4
  /**
@@ -8,7 +8,7 @@ import { Fr } from '@aztec/foundation/fields';
8
8
  class ArgumentEncoder {
9
9
  private flattened: Fr[] = [];
10
10
 
11
- constructor(private abi: FunctionAbiHeader, private args: any[]) {}
11
+ constructor(private abi: FunctionAbi, private args: any[]) {}
12
12
 
13
13
  /**
14
14
  * Encodes a single argument from the given type to field.
@@ -86,6 +86,6 @@ class ArgumentEncoder {
86
86
  * @param args - The arguments to encode.
87
87
  * @returns The encoded arguments.
88
88
  */
89
- export function encodeArguments(abi: FunctionAbiHeader, args: any[]) {
89
+ export function encodeArguments(abi: FunctionAbi, args: any[]) {
90
90
  return new ArgumentEncoder(abi, args).encode();
91
91
  }
@@ -104,6 +104,22 @@ export class FunctionSelector {
104
104
  return selector;
105
105
  }
106
106
 
107
+ /**
108
+ * Create an AztecAddress instance from a hex-encoded string.
109
+ * The input 'address' should be prefixed with '0x' or not, and have exactly 64 hex characters.
110
+ * Throws an error if the input length is invalid or address value is out of range.
111
+ *
112
+ * @param selector - The hex-encoded string representing the Aztec address.
113
+ * @returns An AztecAddress instance.
114
+ */
115
+ static fromString(selector: string) {
116
+ const buf = Buffer.from(selector.replace(/^0x/i, ''), 'hex');
117
+ if (buf.length !== FunctionSelector.SIZE) {
118
+ throw new Error(`Invalid length ${buf.length}.`);
119
+ }
120
+ return FunctionSelector.fromBuffer(buf);
121
+ }
122
+
107
123
  /**
108
124
  * Creates an empty function selector.
109
125
  * @returns An empty function selector.
@@ -70,7 +70,7 @@ export class EthAddress {
70
70
  // Does not have the basic requirements of an address.
71
71
  return false;
72
72
  } else if (/^(0x|0X)?[0-9a-f]{40}$/.test(address) || /^(0x|0X)?[0-9A-F]{40}$/.test(address)) {
73
- // It's ALL lowercase or ALL upppercase.
73
+ // It's ALL lowercase or ALL uppercase.
74
74
  return true;
75
75
  } else {
76
76
  return EthAddress.checkAddressChecksum(address);
@@ -227,7 +227,7 @@ export class EthAddress {
227
227
  /**
228
228
  * Deserializes from a buffer or reader, corresponding to a write in cpp.
229
229
  * @param buffer - Buffer to read from.
230
- * @returns The EthAdress.
230
+ * @returns The EthAddress.
231
231
  */
232
232
  static fromBuffer(buffer: Buffer | BufferReader): EthAddress {
233
233
  const reader = BufferReader.asReader(buffer);
@@ -37,7 +37,7 @@ export class Coordinate {
37
37
  }
38
38
 
39
39
  /**
40
- * serializes the oblect to buffer of 2 fields.
40
+ * serializes the object to buffer of 2 fields.
41
41
  * @returns A buffer serialization of the object.
42
42
  */
43
43
  toFieldsBuffer(): Buffer {
@@ -78,7 +78,7 @@ export class Point {
78
78
  }
79
79
 
80
80
  /**
81
- * Converts the Point instance to a Buffer representaion of the coordinates.
81
+ * Converts the Point instance to a Buffer representation of the coordinates.
82
82
  * The outputs buffer length will be 64, the length of both coordinates not represented as fields.
83
83
  * @returns A Buffer representation of the Point instance.
84
84
  */
@@ -55,8 +55,8 @@ export class BoundedSerialQueue {
55
55
  }
56
56
 
57
57
  /**
58
- * The caller will block until fn is succesfully enqueued.
59
- * The fn itself is execute asyncronously and its result discarded.
58
+ * The caller will block until fn is successfully enqueued.
59
+ * The fn itself is execute asynchronously and its result discarded.
60
60
  * TODO(AD) do we need this if we have exec()?
61
61
  * @param fn - The function to call once unblocked.
62
62
  */
@@ -78,7 +78,7 @@ export class BoundedSerialQueue {
78
78
  /**
79
79
  * The caller will block until fn is successfully executed, and it's result returned.
80
80
  * @param fn - The function.
81
- * @returns A promise that resolves with the result once exceuted.
81
+ * @returns A promise that resolves with the result once executed.
82
82
  */
83
83
  public async exec<T>(fn: () => Promise<T>): Promise<T> {
84
84
  await this.semaphore.acquire();
@@ -1,7 +1,7 @@
1
1
  import { MemoryFifo } from './memory_fifo.js';
2
2
 
3
3
  /**
4
- * A more specialised fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
4
+ * A more specialized fifo queue that enqueues functions to execute. Enqueued functions are executed in serial.
5
5
  */
6
6
  export class SerialQueue {
7
7
  private readonly queue = new MemoryFifo<() => Promise<void>>();
@@ -12,7 +12,7 @@ json-rpc
12
12
  ```
13
13
 
14
14
  Each createJsonRpcClient and JsonRpcServer call needs a map of classes that will be translated in input and output values.
15
- By default, Buffer is handled, but other usermade classes need to define toString() and static fromString() like so:
15
+ By default, Buffer is handled, but other user-made classes need to define toString() and static fromString() like so:
16
16
 
17
17
  ```
18
18
  class PublicKey {
@@ -117,7 +117,7 @@ export function convertFromJsonObj(cc: ClassConverter, obj: any): any {
117
117
  * @returns The encoded object.
118
118
  */
119
119
  export function convertToJsonObj(cc: ClassConverter, obj: any): any {
120
- // Bigint is a primitive type that needs special handling since it's not serialisable
120
+ // Bigint is a primitive type that needs special handling since it's not serializable
121
121
  if (typeof obj === 'bigint') {
122
122
  return {
123
123
  type: 'bigint',
@@ -20,14 +20,14 @@ export class RunningPromise {
20
20
  const poll = async () => {
21
21
  while (this.running) {
22
22
  await this.fn();
23
- await this.interruptableSleep(this.pollingInterval);
23
+ await this.interruptibleSleep(this.pollingInterval);
24
24
  }
25
25
  };
26
26
  this.runningPromise = poll();
27
27
  }
28
28
 
29
29
  /**
30
- * Stops the running promise, resolves any pending interruptable sleep,
30
+ * Stops the running promise, resolves any pending interruptible sleep,
31
31
  * and waits for the currently executing function to complete.
32
32
  */
33
33
  async stop(): Promise<void> {
@@ -41,7 +41,7 @@ export class RunningPromise {
41
41
  * The sleep duration is determined by 'timeInMs', and it can be terminated early if the 'interruptPromise' is resolved.
42
42
  * @param timeInMs - The time in milliseconds.
43
43
  */
44
- private async interruptableSleep(timeInMs: number) {
44
+ private async interruptibleSleep(timeInMs: number) {
45
45
  let timeout!: NodeJS.Timeout;
46
46
  const sleepPromise = new Promise(resolve => {
47
47
  timeout = setTimeout(resolve, timeInMs);
@@ -1,13 +1,13 @@
1
1
  import { InterruptError } from '../errors/index.js';
2
2
 
3
3
  /**
4
- * InterruptableSleep is a utility class that allows you to create an interruptible sleep function.
4
+ * InterruptibleSleep is a utility class that allows you to create an interruptible sleep function.
5
5
  * The sleep function can be interrupted at any time by calling the `interrupt` method, which can
6
6
  * also specify whether the sleep should throw an error or just return. This is useful when you need
7
7
  * to terminate long-running processes or perform cleanup tasks in response to external events.
8
8
  *
9
9
  * @example
10
- * const sleeper = new InterruptableSleep();
10
+ * const sleeper = new InterruptibleSleep();
11
11
  *
12
12
  * async function longRunningTask() \{
13
13
  * try \{
@@ -20,7 +20,7 @@ import { InterruptError } from '../errors/index.js';
20
20
  *
21
21
  * setTimeout(() =\> sleeper.interrupt(true), 1500); // Interrupt the sleep after 1.5 seconds
22
22
  */
23
- export class InterruptableSleep {
23
+ export class InterruptibleSleep {
24
24
  private interruptResolve: (shouldThrow: boolean) => void = () => {};
25
25
  private interruptPromise = new Promise<boolean>(resolve => (this.interruptResolve = resolve));
26
26
  private timeouts: NodeJS.Timeout[] = [];
@@ -61,7 +61,7 @@ export class InterruptableSleep {
61
61
  /**
62
62
  * Puts the current execution context to sleep for a specified duration.
63
63
  * This simulates a blocking sleep operation by using an asynchronous function and a Promise that resolves after the given duration.
64
- * The sleep function can be interrupted by the 'interrupt' method of the InterruptableSleep class.
64
+ * The sleep function can be interrupted by the 'interrupt' method of the InterruptibleSleep class.
65
65
  *
66
66
  * @param ms - The duration in milliseconds for which the sleep operation should last.
67
67
  * @returns A Promise that resolves after the specified duration, allowing the use of 'await' to pause execution.
@@ -3,21 +3,21 @@ import { Timer } from './timer.js';
3
3
  /**
4
4
  * Measures the elapsed execution time of a function call or promise once it is awaited.
5
5
  * @param fn - Function or promise.
6
- * @returns A timer object and the result.
6
+ * @returns The number of ms and the result.
7
7
  */
8
- export async function elapsed<T>(fn: Promise<T> | (() => T | Promise<T>)): Promise<[Timer, T]> {
8
+ export async function elapsed<T>(fn: Promise<T> | (() => T | Promise<T>)): Promise<[number, T]> {
9
9
  const timer = new Timer();
10
10
  const result = await (typeof fn === 'function' ? fn() : fn);
11
- return [timer, result];
11
+ return [timer.ms(), result];
12
12
  }
13
13
 
14
14
  /**
15
15
  * Measures the elapsed execution time of a synchronous function call once it is awaited.
16
16
  * @param fn - Function.
17
- * @returns A timer object and the result.
17
+ * @returns The number of ms and the result.
18
18
  */
19
- export function elapsedSync<T>(fn: () => T): [Timer, T] {
19
+ export function elapsedSync<T>(fn: () => T): [number, T] {
20
20
  const timer = new Timer();
21
21
  const result = fn();
22
- return [timer, result];
22
+ return [timer.ms(), result];
23
23
  }