@aztec/foundation 0.32.1 → 0.34.0

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 (52) hide show
  1. package/dest/abi/abi.d.ts +38 -27
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +1 -1
  4. package/dest/abi/decoder.d.ts +1 -0
  5. package/dest/abi/decoder.d.ts.map +1 -1
  6. package/dest/abi/decoder.js +1 -1
  7. package/dest/abi/utils.d.ts +6 -6
  8. package/dest/array/array.d.ts +1 -1
  9. package/dest/array/array.d.ts.map +1 -1
  10. package/dest/array/array.js +3 -3
  11. package/dest/crypto/random/randomness_singleton.js +3 -3
  12. package/dest/fifo/bounded_serial_queue.d.ts +1 -1
  13. package/dest/fifo/bounded_serial_queue.d.ts.map +1 -1
  14. package/dest/fifo/memory_fifo.d.ts +1 -1
  15. package/dest/fifo/memory_fifo.d.ts.map +1 -1
  16. package/dest/json-rpc/client/json_rpc_client.d.ts +1 -1
  17. package/dest/json-rpc/client/json_rpc_client.js +8 -8
  18. package/dest/json-rpc/server/json_proxy.js +5 -5
  19. package/dest/json-rpc/server/json_rpc_server.d.ts +2 -2
  20. package/dest/json-rpc/server/json_rpc_server.d.ts.map +1 -1
  21. package/dest/log/logger.d.ts +2 -2
  22. package/dest/log/logger.d.ts.map +1 -1
  23. package/dest/log/logger.js +4 -5
  24. package/dest/retry/index.d.ts +1 -1
  25. package/dest/retry/index.d.ts.map +1 -1
  26. package/dest/retry/index.js +2 -2
  27. package/dest/sleep/index.d.ts +2 -1
  28. package/dest/sleep/index.d.ts.map +1 -1
  29. package/dest/sleep/index.js +4 -3
  30. package/dest/transport/dispatch/create_dispatch_fn.d.ts +2 -2
  31. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +1 -1
  32. package/dest/transport/dispatch/create_dispatch_fn.js +4 -4
  33. package/dest/transport/transport_client.js +4 -4
  34. package/dest/types/index.d.ts +4 -0
  35. package/dest/types/index.d.ts.map +1 -1
  36. package/dest/worker/worker_pool.js +4 -4
  37. package/package.json +14 -8
  38. package/src/abi/abi.ts +47 -28
  39. package/src/abi/decoder.ts +4 -3
  40. package/src/abi/encoder.ts +3 -3
  41. package/src/abi/utils.ts +6 -6
  42. package/src/array/array.ts +7 -2
  43. package/src/crypto/random/randomness_singleton.ts +2 -2
  44. package/src/json-rpc/client/json_rpc_client.ts +7 -7
  45. package/src/json-rpc/server/json_proxy.ts +4 -4
  46. package/src/log/logger.ts +4 -5
  47. package/src/retry/index.ts +1 -1
  48. package/src/sleep/index.ts +3 -2
  49. package/src/transport/dispatch/create_dispatch_fn.ts +3 -3
  50. package/src/transport/transport_client.ts +3 -3
  51. package/src/types/index.ts +6 -0
  52. package/src/worker/worker_pool.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/retry/index.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,qBAAa,YAAa,SAAQ,KAAK;CAAG;AAE1C;;;;;;;GAOG;AACH,wBAAiB,gBAAgB,qCAMhC;AAED;;;;GAIG;AACH,wBAAiB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,oCAI7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAChC,EAAE,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EACzB,IAAI,SAAc,EAClB,OAAO,mCAAqB,EAC5B,GAAG,yCAA8C,EACjD,YAAY,UAAQ,mBAoBrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,IAAI,SAAK,EAAE,OAAO,SAAI,EAAE,QAAQ,SAAI,oCAczG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/retry/index.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,qBAAa,YAAa,SAAQ,KAAK;CAAG;AAE1C;;;;;;;GAOG;AACH,wBAAiB,gBAAgB,qCAMhC;AAED;;;;GAIG;AACH,wBAAiB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,oCAI7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAChC,EAAE,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EACzB,IAAI,SAAc,EAClB,OAAO,mCAAqB,EAC5B,GAAG,oCAA8C,EACjD,YAAY,UAAQ,mBAoBrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,IAAI,SAAK,EAAE,OAAO,SAAI,EAAE,QAAQ,SAAI,oCAczG"}
@@ -55,7 +55,7 @@ export async function retry(fn, name = 'Operation', backoff = backoffGenerator()
55
55
  if (s === undefined) {
56
56
  throw err;
57
57
  }
58
- log(`${name} failed. Will retry in ${s}s...`);
58
+ log.verbose(`${name} failed. Will retry in ${s}s...`);
59
59
  !failSilently && log.error(err);
60
60
  await sleep(s * 1000);
61
61
  continue;
@@ -86,4 +86,4 @@ export async function retryUntil(fn, name = '', timeout = 0, interval = 1) {
86
86
  }
87
87
  }
88
88
  }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmV0cnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxQyx3RUFBd0U7QUFDeEUsTUFBTSxPQUFPLFlBQWEsU0FBUSxLQUFLO0NBQUc7QUFFMUM7Ozs7Ozs7R0FPRztBQUNILE1BQU0sU0FBUyxDQUFDLENBQUMsZ0JBQWdCO0lBQy9CLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDVixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztBQUNILENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxTQUFTLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBaUI7SUFDNUMsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM1QixNQUFNLEtBQUssQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLEtBQUssQ0FDekIsRUFBeUIsRUFDekIsSUFBSSxHQUFHLFdBQVcsRUFDbEIsT0FBTyxHQUFHLGdCQUFnQixFQUFFLEVBQzVCLEdBQUcsR0FBRyxpQkFBaUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUNqRCxZQUFZLEdBQUcsS0FBSztJQUVwQixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFBQyxPQUFPLEdBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksR0FBRyxZQUFZLFlBQVksRUFBRSxDQUFDO2dCQUNoQyx1RkFBdUY7Z0JBQ3ZGLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDL0IsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELEdBQUcsQ0FBQyxHQUFHLElBQUksMEJBQTBCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDOUMsQ0FBQyxZQUFZLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNoQyxNQUFNLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDdEIsU0FBUztRQUNYLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFVBQVUsQ0FBSSxFQUFnQyxFQUFFLElBQUksR0FBRyxFQUFFLEVBQUUsT0FBTyxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsQ0FBQztJQUN4RyxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO0lBQzFCLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDWixNQUFNLE1BQU0sR0FBRyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQzFCLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO1FBRUQsTUFBTSxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBRTdCLElBQUksT0FBTyxJQUFJLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsb0JBQW9CLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqRSxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMifQ==
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmV0cnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxQyx3RUFBd0U7QUFDeEUsTUFBTSxPQUFPLFlBQWEsU0FBUSxLQUFLO0NBQUc7QUFFMUM7Ozs7Ozs7R0FPRztBQUNILE1BQU0sU0FBUyxDQUFDLENBQUMsZ0JBQWdCO0lBQy9CLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDVixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztBQUNILENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxTQUFTLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBaUI7SUFDNUMsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM1QixNQUFNLEtBQUssQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLEtBQUssQ0FDekIsRUFBeUIsRUFDekIsSUFBSSxHQUFHLFdBQVcsRUFDbEIsT0FBTyxHQUFHLGdCQUFnQixFQUFFLEVBQzVCLEdBQUcsR0FBRyxpQkFBaUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUNqRCxZQUFZLEdBQUcsS0FBSztJQUVwQixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFBQyxPQUFPLEdBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksR0FBRyxZQUFZLFlBQVksRUFBRSxDQUFDO2dCQUNoQyx1RkFBdUY7Z0JBQ3ZGLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDL0IsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3RELENBQUMsWUFBWSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEMsTUFBTSxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ3RCLFNBQVM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxVQUFVLENBQUksRUFBZ0MsRUFBRSxJQUFJLEdBQUcsRUFBRSxFQUFFLE9BQU8sR0FBRyxDQUFDLEVBQUUsUUFBUSxHQUFHLENBQUM7SUFDeEcsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUMxQixPQUFPLElBQUksRUFBRSxDQUFDO1FBQ1osTUFBTSxNQUFNLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztRQUMxQixJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUVELE1BQU0sS0FBSyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUU3QixJQUFJLE9BQU8sSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakUsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDIn0=
@@ -44,7 +44,8 @@ export declare class InterruptibleSleep {
44
44
  * The sleep function can be interrupted by the 'interrupt' method of the InterruptibleSleep class.
45
45
  *
46
46
  * @param ms - The duration in milliseconds for which the sleep operation should last.
47
+ * @param returnValue - The return value of the promise.
47
48
  * @returns A Promise that resolves after the specified duration, allowing the use of 'await' to pause execution.
48
49
  */
49
- export declare function sleep(ms: number): Promise<unknown>;
50
+ export declare function sleep<T>(ms: number, returnValue?: T): Promise<T | undefined>;
50
51
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sleep/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAA6C;IAE/D;;;;;;;OAOG;IACU,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7C;;;;;;OAMG;IACI,SAAS,CAAC,gBAAgB,UAAQ,GAAG,IAAI;CAIjD;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sleep/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAA6C;IAE/D;;;;;;;OAOG;IACU,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7C;;;;;;OAMG;IACI,SAAS,CAAC,gBAAgB,UAAQ,GAAG,IAAI;CAIjD;AAED;;;;;;;;GAQG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAE5E"}
@@ -62,9 +62,10 @@ export class InterruptibleSleep {
62
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
+ * @param returnValue - The return value of the promise.
65
66
  * @returns A Promise that resolves after the specified duration, allowing the use of 'await' to pause execution.
66
67
  */
67
- export function sleep(ms) {
68
- return new Promise(resolve => setTimeout(resolve, ms));
68
+ export function sleep(ms, returnValue) {
69
+ return new Promise(resolve => setTimeout(() => resolve(returnValue), ms));
69
70
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xlZXAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQUEvQjtRQUNVLGVBQVUsR0FBMEMsRUFBRSxDQUFDO0lBc0NqRSxDQUFDO0lBcENDOzs7Ozs7O09BT0c7SUFDSSxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQVU7UUFDM0IsSUFBSSxnQkFBZ0QsQ0FBQztRQUNyRCxNQUFNLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFVLE9BQU8sQ0FBQyxFQUFFO1lBQ3RELGdCQUFnQixHQUFHLE9BQU8sQ0FBQztZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sY0FBYyxHQUFHLElBQUksT0FBTyxDQUFVLE9BQU8sQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdGLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFFM0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTFFLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsTUFBTSxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFNBQVMsQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FBQyxFQUFVO0lBQzlCLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDekQsQ0FBQyJ9
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xlZXAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXBEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQUEvQjtRQUNVLGVBQVUsR0FBMEMsRUFBRSxDQUFDO0lBc0NqRSxDQUFDO0lBcENDOzs7Ozs7O09BT0c7SUFDSSxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQVU7UUFDM0IsSUFBSSxnQkFBZ0QsQ0FBQztRQUNyRCxNQUFNLGdCQUFnQixHQUFHLElBQUksT0FBTyxDQUFVLE9BQU8sQ0FBQyxFQUFFO1lBQ3RELGdCQUFnQixHQUFHLE9BQU8sQ0FBQztZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sY0FBYyxHQUFHLElBQUksT0FBTyxDQUFVLE9BQU8sQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdGLE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFFM0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTFFLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsTUFBTSxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLFNBQVMsQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQUksRUFBVSxFQUFFLFdBQWU7SUFDbEQsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUM1RSxDQUFDIn0=
@@ -18,8 +18,8 @@ export interface DispatchMsg {
18
18
  * the method to be called ('fn') and an array of arguments to be passed to the method ('args').
19
19
  *
20
20
  * @param targetFn - A function that returns the target object containing the methods to be dispatched.
21
- * @param debug - Optional logging function for debugging purposes.
21
+ * @param log - Optional logging function for debugging purposes.
22
22
  * @returns A dispatch function that accepts a DispatchMsg object and calls the target's method with provided arguments.
23
23
  */
24
- export declare function createDispatchFn(targetFn: () => any, debug?: import("../../log/logger.js").DebugLogger): ({ fn, args }: DispatchMsg) => Promise<any>;
24
+ export declare function createDispatchFn(targetFn: () => any, log?: import("../../log/logger.js").Logger): ({ fn, args }: DispatchMsg) => Promise<any>;
25
25
  //# sourceMappingURL=create_dispatch_fn.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create_dispatch_fn.d.ts","sourceRoot":"","sources":["../../../src/transport/dispatch/create_dispatch_fn.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,IAAI,EAAE,GAAG,EAAE,CAAC;CACb;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,KAAK,4CAAiD,kBAC9E,WAAW,kBAKxC"}
1
+ {"version":3,"file":"create_dispatch_fn.d.ts","sourceRoot":"","sources":["../../../src/transport/dispatch/create_dispatch_fn.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,IAAI,EAAE,GAAG,EAAE,CAAC;CACb;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,EAAE,GAAG,uCAAiD,kBAC5E,WAAW,kBAKxC"}
@@ -6,14 +6,14 @@ import { createDebugLogger } from '../../log/index.js';
6
6
  * the method to be called ('fn') and an array of arguments to be passed to the method ('args').
7
7
  *
8
8
  * @param targetFn - A function that returns the target object containing the methods to be dispatched.
9
- * @param debug - Optional logging function for debugging purposes.
9
+ * @param log - Optional logging function for debugging purposes.
10
10
  * @returns A dispatch function that accepts a DispatchMsg object and calls the target's method with provided arguments.
11
11
  */
12
- export function createDispatchFn(targetFn, debug = createDebugLogger('aztec:foundation:dispatch')) {
12
+ export function createDispatchFn(targetFn, log = createDebugLogger('aztec:foundation:dispatch')) {
13
13
  return async ({ fn, args }) => {
14
14
  const target = targetFn();
15
- debug(format(`dispatching to ${target}: ${fn}`, args));
15
+ log.debug(format(`dispatching to ${target}: ${fn}`, args));
16
16
  return await target[fn](...args);
17
17
  };
18
18
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlX2Rpc3BhdGNoX2ZuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyYW5zcG9ydC9kaXNwYXRjaC9jcmVhdGVfZGlzcGF0Y2hfZm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU5QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQWlCdkQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsUUFBbUIsRUFBRSxLQUFLLEdBQUcsaUJBQWlCLENBQUMsMkJBQTJCLENBQUM7SUFDMUcsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFlLEVBQUUsRUFBRTtRQUN6QyxNQUFNLE1BQU0sR0FBRyxRQUFRLEVBQUUsQ0FBQztRQUMxQixLQUFLLENBQUMsTUFBTSxDQUFDLGtCQUFrQixNQUFNLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RCxPQUFPLE1BQU0sTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlX2Rpc3BhdGNoX2ZuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyYW5zcG9ydC9kaXNwYXRjaC9jcmVhdGVfZGlzcGF0Y2hfZm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU5QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQWlCdkQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsUUFBbUIsRUFBRSxHQUFHLEdBQUcsaUJBQWlCLENBQUMsMkJBQTJCLENBQUM7SUFDeEcsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFlLEVBQUUsRUFBRTtRQUN6QyxNQUFNLE1BQU0sR0FBRyxRQUFRLEVBQUUsQ0FBQztRQUMxQixHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsTUFBTSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDM0QsT0FBTyxNQUFNLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUMsQ0FBQztBQUNKLENBQUMifQ==
@@ -2,7 +2,7 @@ import EventEmitter from 'events';
2
2
  import { format } from 'util';
3
3
  import { createDebugLogger } from '../log/index.js';
4
4
  import { isEventMessage } from './dispatch/messages.js';
5
- const debug = createDebugLogger('aztec:transport_client');
5
+ const log = createDebugLogger('aztec:transport_client');
6
6
  /**
7
7
  * A TransportClient provides a request/response and event api to a corresponding TransportServer.
8
8
  * If `broadcast` is called on TransportServer, TransportClients will emit an `event_msg`.
@@ -55,7 +55,7 @@ export class TransportClient extends EventEmitter {
55
55
  }
56
56
  const msgId = this.msgId++;
57
57
  const msg = { msgId, payload };
58
- debug(format(`->`, msg));
58
+ log.debug(format(`->`, msg));
59
59
  return new Promise((resolve, reject) => {
60
60
  this.pendingRequests.push({ resolve, reject, msgId });
61
61
  this.socket.send(msg, transfer).catch(reject);
@@ -74,7 +74,7 @@ export class TransportClient extends EventEmitter {
74
74
  this.close();
75
75
  return;
76
76
  }
77
- debug(format(`<-`, msg));
77
+ log.debug(format(`<-`, msg));
78
78
  if (isEventMessage(msg)) {
79
79
  this.emit('event_msg', msg.payload);
80
80
  return;
@@ -92,4 +92,4 @@ export class TransportClient extends EventEmitter {
92
92
  }
93
93
  }
94
94
  }
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3J0X2NsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc3BvcnQvdHJhbnNwb3J0X2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFlBQVksTUFBTSxRQUFRLENBQUM7QUFDbEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU5QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQTJDLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBSWpHLE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLHdCQUF3QixDQUFDLENBQUM7QUE4QjFEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLGVBQXlCLFNBQVEsWUFBWTtJQUt4RCxZQUFvQixnQkFBMkI7UUFDN0MsS0FBSyxFQUFFLENBQUM7UUFEVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQVc7UUFKdkMsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLG9CQUFlLEdBQXFCLEVBQUUsQ0FBQztJQUsvQyxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsSUFBSTtRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztRQUN4QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxPQUFPLENBQUMsT0FBZ0IsRUFBRSxRQUF5QjtRQUNqRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLE1BQU0sR0FBRyxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQy9CLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDekIsT0FBTyxJQUFJLE9BQU8sQ0FBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUMxQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsTUFBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLG1CQUFtQixDQUFDLEdBQWlFO1FBQzNGLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3RCLDRCQUE0QjtZQUM1QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDYixPQUFPO1FBQ1QsQ0FBQztRQUNELEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDekIsSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEMsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVFLElBQUksUUFBUSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDcEIsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzNELElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0NBQ0YifQ==
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3J0X2NsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc3BvcnQvdHJhbnNwb3J0X2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFlBQVksTUFBTSxRQUFRLENBQUM7QUFDbEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU5QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQTJDLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBSWpHLE1BQU0sR0FBRyxHQUFHLGlCQUFpQixDQUFDLHdCQUF3QixDQUFDLENBQUM7QUE4QnhEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLGVBQXlCLFNBQVEsWUFBWTtJQUt4RCxZQUFvQixnQkFBMkI7UUFDN0MsS0FBSyxFQUFFLENBQUM7UUFEVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQVc7UUFKdkMsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLG9CQUFlLEdBQXFCLEVBQUUsQ0FBQztJQUsvQyxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsSUFBSTtRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztRQUN4QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxPQUFPLENBQUMsT0FBZ0IsRUFBRSxRQUF5QjtRQUNqRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLE1BQU0sR0FBRyxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQy9CLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sSUFBSSxPQUFPLENBQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDMUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLE1BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxtQkFBbUIsQ0FBQyxHQUFpRTtRQUMzRixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0Qiw0QkFBNEI7WUFDNUIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2IsT0FBTztRQUNULENBQUM7UUFDRCxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM3QixJQUFJLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNwQyxPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUUsSUFBSSxRQUFRLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0QsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZCxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNILENBQUM7Q0FDRiJ9
@@ -2,6 +2,10 @@
2
2
  export type FieldsOf<T> = {
3
3
  [P in keyof T as T[P] extends Function ? never : P]: T[P];
4
4
  };
5
+ /** Extracts methods of a type. */
6
+ export type FunctionsOf<T> = {
7
+ [P in keyof T as T[P] extends Function ? P : never]: T[P];
8
+ };
5
9
  /** Marks a set of properties of a type as optional. */
6
10
  export type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
7
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAEvB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,uDAAuD;AACvD,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAEvB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,kCAAkC;AAClC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,uDAAuD;AACvD,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { createDebugLogger } from '../log/index.js';
2
- const debug = createDebugLogger('bb:worker_pool');
2
+ const log = createDebugLogger('bb:worker_pool');
3
3
  /**
4
4
  * Allocates a pool of WasmWorker's.
5
5
  * Worker 0 is allocated MAX_PAGES memory pages. This is because worker 0 will need to hold the proving key
@@ -30,12 +30,12 @@ export class WorkerPool {
30
30
  * @param maxMem - Max memory pages.
31
31
  */
32
32
  async init(createWorker, poolSize, maxMem = WorkerPool.MAX_PAGES) {
33
- debug(`creating ${poolSize} workers...`);
33
+ log.debug(`creating ${poolSize} workers...`);
34
34
  const start = new Date().getTime();
35
35
  this.workers = await Promise.all(Array(poolSize)
36
36
  .fill(0)
37
37
  .map((_, i) => createWorker(`${i}`, i === 0 ? Math.min(WorkerPool.MAX_PAGES, maxMem) : 768, maxMem)));
38
- debug(`created workers: ${new Date().getTime() - start}ms`);
38
+ log.debug(`created workers: ${new Date().getTime() - start}ms`);
39
39
  }
40
40
  /**
41
41
  * Tell all workers in the pool to stop processing.
@@ -59,4 +59,4 @@ export class WorkerPool {
59
59
  * The maximum number of memory pages to be used by the webassembly.
60
60
  */
61
61
  WorkerPool.MAX_PAGES = 8192;
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyX3Bvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd29ya2VyL3dvcmtlcl9wb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3BELE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFPbEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBQXZCO1FBZ0JFOztXQUVHO1FBQ0ssWUFBTyxHQUFpQixFQUFFLENBQUM7SUFzQ3JDLENBQUM7SUFwQ0M7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUEwQixFQUFFLFFBQWdCO1FBQzNELE1BQU0sSUFBSSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDOUIsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBMEIsRUFBRSxRQUFnQixFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUMsU0FBUztRQUMzRixLQUFLLENBQUMsWUFBWSxRQUFRLGFBQWEsQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQzlCLEtBQUssQ0FBQyxRQUFRLENBQUM7YUFDWixJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ1AsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FDdkcsQ0FBQztRQUVGLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7QUF2REQsdURBQXVEO0FBQ3ZELEtBQUs7QUFDTCxzSEFBc0g7QUFDdEgsZ0hBQWdIO0FBQ2hILGlIQUFpSDtBQUNqSCxxR0FBcUc7QUFDckcsNERBQTREO0FBQzVELGtHQUFrRztBQUNsRywwRkFBMEY7QUFDMUYsNkdBQTZHO0FBQzdHLGtDQUFrQztBQUNsQzs7R0FFRztBQUNXLG9CQUFTLEdBQUcsSUFBSSxBQUFQLENBQVEifQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyX3Bvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd29ya2VyL3dvcmtlcl9wb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3BELE1BQU0sR0FBRyxHQUFHLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFPaEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBQXZCO1FBZ0JFOztXQUVHO1FBQ0ssWUFBTyxHQUFpQixFQUFFLENBQUM7SUFzQ3JDLENBQUM7SUFwQ0M7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUEwQixFQUFFLFFBQWdCO1FBQzNELE1BQU0sSUFBSSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDOUIsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBMEIsRUFBRSxRQUFnQixFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUMsU0FBUztRQUMzRixHQUFHLENBQUMsS0FBSyxDQUFDLFlBQVksUUFBUSxhQUFhLENBQUMsQ0FBQztRQUM3QyxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUM5QixLQUFLLENBQUMsUUFBUSxDQUFDO2FBQ1osSUFBSSxDQUFDLENBQUMsQ0FBQzthQUNQLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQ3ZHLENBQUM7UUFFRixHQUFHLENBQUMsS0FBSyxDQUFDLG9CQUFvQixJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDOztBQXZERCx1REFBdUQ7QUFDdkQsS0FBSztBQUNMLHNIQUFzSDtBQUN0SCxnSEFBZ0g7QUFDaEgsaUhBQWlIO0FBQ2pILHFHQUFxRztBQUNyRyw0REFBNEQ7QUFDNUQsa0dBQWtHO0FBQ2xHLDBGQUEwRjtBQUMxRiw2R0FBNkc7QUFDN0csa0NBQWtDO0FBQ2xDOztHQUVHO0FBQ1csb0JBQVMsR0FBRyxJQUFJLEFBQVAsQ0FBUSJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/foundation",
3
- "version": "0.32.1",
3
+ "version": "0.34.0",
4
4
  "packageManager": "yarn@3.4.1",
5
5
  "type": "module",
6
6
  "main": "./dest/index.js",
@@ -45,25 +45,32 @@
45
45
  "build": "yarn clean && tsc -b",
46
46
  "build:dev": "tsc -b --watch",
47
47
  "clean": "rm -rf ./dest .tsbuildinfo",
48
+ "generate": "true",
48
49
  "formatting": "run -T prettier --check ./src && run -T eslint ./src",
49
50
  "formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
50
- "test:light": "NODE_NO_WARNINGS=1 node --experimental-vm-modules $(yarn bin jest) --passWithNoTests",
51
- "test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules $(yarn bin jest) --passWithNoTests"
51
+ "test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests"
52
52
  },
53
53
  "inherits": [
54
54
  "../package.common.json"
55
55
  ],
56
56
  "jest": {
57
- "preset": "ts-jest/presets/default-esm",
57
+ "transform": {
58
+ "^.+\\.tsx?$": [
59
+ "@swc/jest"
60
+ ]
61
+ },
58
62
  "moduleNameMapper": {
59
63
  "^(\\.{1,2}/.*)\\.[cm]?js$": "$1"
60
64
  },
61
65
  "testRegex": "./src/.*\\.test\\.(js|mjs|ts)$",
62
- "rootDir": "./src"
66
+ "rootDir": "./src",
67
+ "extensionsToTreatAsEsm": [
68
+ ".ts"
69
+ ]
63
70
  },
64
71
  "dependencies": {
65
- "@aztec/bb.js": "0.32.1",
66
- "@koa/cors": "^4.0.0",
72
+ "@aztec/bb.js": "0.34.0",
73
+ "@koa/cors": "^5.0.0",
67
74
  "@noble/curves": "^1.2.0",
68
75
  "bn.js": "^5.2.1",
69
76
  "debug": "^4.3.4",
@@ -115,7 +122,6 @@
115
122
  "jest": "^29.5.0",
116
123
  "prettier": "^2.7.1",
117
124
  "supertest": "^6.3.3",
118
- "ts-jest": "^29.1.0",
119
125
  "ts-node": "^10.9.1",
120
126
  "typescript": "^5.0.4"
121
127
  },
package/src/abi/abi.ts CHANGED
@@ -2,6 +2,44 @@ import { inflate } from 'pako';
2
2
 
3
3
  import { type FunctionSelector } from './function_selector.js';
4
4
 
5
+ /**
6
+ * A basic value.
7
+ */
8
+ export interface BasicValue<T extends string, V> {
9
+ /**
10
+ * The kind of the value.
11
+ */
12
+ kind: T;
13
+ value: V;
14
+ }
15
+
16
+ /**
17
+ * An exported value.
18
+ */
19
+ export type AbiValue =
20
+ | BasicValue<'boolean', boolean>
21
+ | BasicValue<'string', string>
22
+ | BasicValue<'array', AbiValue[]>
23
+ | TupleValue
24
+ | IntegerValue
25
+ | StructValue;
26
+
27
+ export type TypedStructFieldValue<T> = { name: string; value: T };
28
+
29
+ export interface StructValue {
30
+ kind: 'struct';
31
+ fields: TypedStructFieldValue<AbiValue>[];
32
+ }
33
+
34
+ export interface TupleValue {
35
+ kind: 'tuple';
36
+ fields: AbiValue[];
37
+ }
38
+
39
+ export interface IntegerValue extends BasicValue<'integer', string> {
40
+ sign: boolean;
41
+ }
42
+
5
43
  /**
6
44
  * A named type.
7
45
  */
@@ -13,7 +51,7 @@ export interface ABIVariable {
13
51
  /**
14
52
  * The type of the variable.
15
53
  */
16
- type: ABIType;
54
+ type: AbiType;
17
55
  }
18
56
 
19
57
  /**
@@ -47,7 +85,7 @@ export interface BasicType<T extends string> {
47
85
  /**
48
86
  * A variable type.
49
87
  */
50
- export type ABIType = BasicType<'field'> | BasicType<'boolean'> | IntegerType | ArrayType | StringType | StructType;
88
+ export type AbiType = BasicType<'field'> | BasicType<'boolean'> | IntegerType | ArrayType | StringType | StructType;
51
89
 
52
90
  /**
53
91
  * An integer type.
@@ -74,7 +112,7 @@ export interface ArrayType extends BasicType<'array'> {
74
112
  /**
75
113
  * The type of the array elements.
76
114
  */
77
- type: ABIType;
115
+ type: AbiType;
78
116
  }
79
117
 
80
118
  /**
@@ -101,24 +139,6 @@ export interface StructType extends BasicType<'struct'> {
101
139
  path: string;
102
140
  }
103
141
 
104
- /**
105
- * A contract event.
106
- */
107
- export interface EventAbi {
108
- /**
109
- * The event name.
110
- */
111
- name: string;
112
- /**
113
- * Fully qualified name of the event.
114
- */
115
- path: string;
116
- /**
117
- * The fields of the event.
118
- */
119
- fields: ABIVariable[];
120
- }
121
-
122
142
  /**
123
143
  * Aztec.nr function types.
124
144
  */
@@ -151,15 +171,11 @@ export interface FunctionAbi {
151
171
  /**
152
172
  * The types of the return values.
153
173
  */
154
- returnTypes: ABIType[];
174
+ returnTypes: AbiType[];
155
175
  /**
156
176
  * Whether the function is flagged as an initializer.
157
177
  */
158
178
  isInitializer: boolean;
159
- /**
160
- * Transitional: whether the function is an AVM function.
161
- */
162
- isTranspiled?: boolean;
163
179
  }
164
180
 
165
181
  /**
@@ -260,9 +276,12 @@ export interface ContractArtifact {
260
276
  */
261
277
  functions: FunctionArtifact[];
262
278
  /**
263
- * The events of the contract.
279
+ * The outputs of the contract.
264
280
  */
265
- events: EventAbi[];
281
+ outputs: {
282
+ structs: Record<string, AbiType[]>;
283
+ globals: Record<string, AbiValue[]>;
284
+ };
266
285
 
267
286
  /**
268
287
  * The map of file ID to the source code and path of the file.
@@ -1,12 +1,13 @@
1
1
  import { AztecAddress } from '../aztec-address/index.js';
2
2
  import { type Fr } from '../fields/index.js';
3
- import { type ABIParameter, type ABIType, type ABIVariable, type FunctionArtifact } from './abi.js';
3
+ import { type ABIParameter, type ABIVariable, type AbiType, type FunctionArtifact } from './abi.js';
4
4
  import { isAztecAddressStruct } from './utils.js';
5
5
 
6
6
  /**
7
7
  * The type of our decoded ABI.
8
8
  */
9
9
  export type DecodedReturn = bigint | boolean | AztecAddress | DecodedReturn[] | { [key: string]: DecodedReturn };
10
+ export type ProcessReturnValues = (DecodedReturn | undefined)[] | undefined;
10
11
 
11
12
  /**
12
13
  * Decodes return values from a function call.
@@ -20,7 +21,7 @@ class ReturnValuesDecoder {
20
21
  * @param abiType - The type of the return value.
21
22
  * @returns The decoded return value.
22
23
  */
23
- private decodeReturn(abiType: ABIType): DecodedReturn {
24
+ private decodeReturn(abiType: AbiType): DecodedReturn {
24
25
  switch (abiType.kind) {
25
26
  case 'field':
26
27
  return this.getNextField().toBigInt();
@@ -114,7 +115,7 @@ export class FunctionSignatureDecoder {
114
115
  * @param param - The parameter type to decode.
115
116
  * @returns A string representing the parameter type.
116
117
  */
117
- private getParameterType(param: ABIType): string {
118
+ private getParameterType(param: AbiType): string {
118
119
  switch (param.kind) {
119
120
  case 'field':
120
121
  return 'Field';
@@ -1,5 +1,5 @@
1
1
  import { Fr } from '../fields/index.js';
2
- import { type ABIType, type FunctionAbi } from './abi.js';
2
+ import { type AbiType, type FunctionAbi } from './abi.js';
3
3
  import { isAddressStruct, isFunctionSelectorStruct, isWrappedFieldStruct } from './utils.js';
4
4
 
5
5
  /**
@@ -11,7 +11,7 @@ class ArgumentEncoder {
11
11
 
12
12
  constructor(private abi: FunctionAbi, private args: any[]) {}
13
13
 
14
- static typeSize(abiType: ABIType): number {
14
+ static typeSize(abiType: AbiType): number {
15
15
  switch (abiType.kind) {
16
16
  case 'field':
17
17
  case 'boolean':
@@ -36,7 +36,7 @@ class ArgumentEncoder {
36
36
  * @param arg - The value to encode.
37
37
  * @param name - Name.
38
38
  */
39
- private encodeArgument(abiType: ABIType, arg: any, name?: string) {
39
+ private encodeArgument(abiType: AbiType, arg: any, name?: string) {
40
40
  if (arg === undefined || arg == null) {
41
41
  throw new Error(`Undefined argument ${name ?? 'unnamed'} of type ${abiType.kind}`);
42
42
  }
package/src/abi/utils.ts CHANGED
@@ -1,11 +1,11 @@
1
- import { type ABIType } from './abi.js';
1
+ import { type AbiType } from './abi.js';
2
2
 
3
3
  /**
4
4
  * Returns whether the ABI type is an Aztec or Ethereum Address defined in Aztec.nr.
5
5
  * @param abiType - Type to check.
6
6
  * @returns Boolean.
7
7
  */
8
- export function isAddressStruct(abiType: ABIType) {
8
+ export function isAddressStruct(abiType: AbiType) {
9
9
  return isEthAddressStruct(abiType) || isAztecAddressStruct(abiType);
10
10
  }
11
11
 
@@ -14,7 +14,7 @@ export function isAddressStruct(abiType: ABIType) {
14
14
  * @param abiType - Type to check.
15
15
  * @returns Boolean.
16
16
  */
17
- export function isEthAddressStruct(abiType: ABIType) {
17
+ export function isEthAddressStruct(abiType: AbiType) {
18
18
  return abiType.kind === 'struct' && abiType.path.endsWith('address::EthAddress');
19
19
  }
20
20
 
@@ -23,7 +23,7 @@ export function isEthAddressStruct(abiType: ABIType) {
23
23
  * @param abiType - Type to check.
24
24
  * @returns Boolean.
25
25
  */
26
- export function isAztecAddressStruct(abiType: ABIType) {
26
+ export function isAztecAddressStruct(abiType: AbiType) {
27
27
  return abiType.kind === 'struct' && abiType.path.endsWith('address::AztecAddress');
28
28
  }
29
29
 
@@ -32,7 +32,7 @@ export function isAztecAddressStruct(abiType: ABIType) {
32
32
  * @param abiType - Type to check.
33
33
  * @returns Boolean.
34
34
  */
35
- export function isFunctionSelectorStruct(abiType: ABIType) {
35
+ export function isFunctionSelectorStruct(abiType: AbiType) {
36
36
  return abiType.kind === 'struct' && abiType.path.endsWith('types::abis::function_selector::FunctionSelector');
37
37
  }
38
38
 
@@ -40,7 +40,7 @@ export function isFunctionSelectorStruct(abiType: ABIType) {
40
40
  * Returns whether the ABI type is a struct with a single `inner` field.
41
41
  * @param abiType - Type to check.
42
42
  */
43
- export function isWrappedFieldStruct(abiType: ABIType) {
43
+ export function isWrappedFieldStruct(abiType: AbiType) {
44
44
  return (
45
45
  abiType.kind === 'struct' &&
46
46
  abiType.fields.length === 1 &&
@@ -34,8 +34,13 @@ export function makeTuple<T, N extends number>(length: N, fn: (i: number) => T,
34
34
  * @param fn - The generator function.
35
35
  * @returns The array of numbers.
36
36
  */
37
- export function makeHalfFullTuple<T, N extends number>(length: N, fn: (i: number) => T, offset = 0) {
38
- return Array.from({ length }, (v: any, i: number) => (i < length / 2 ? fn(i + offset) : fn(0))) as Tuple<T, N>;
37
+ export function makeHalfFullTuple<T, N extends number>(
38
+ length: N,
39
+ fn: (i: number) => T,
40
+ offset = 0,
41
+ makeEmpty: () => T,
42
+ ) {
43
+ return Array.from({ length }, (v: any, i: number) => (i < length / 2 ? fn(i + offset) : makeEmpty())) as Tuple<T, N>;
39
44
  }
40
45
 
41
46
  /**
@@ -18,10 +18,10 @@ export class RandomnessSingleton {
18
18
  private readonly log = createDebugLogger('aztec:randomness_singleton'),
19
19
  ) {
20
20
  if (seed !== undefined) {
21
- this.log(`Using pseudo-randomness with seed: ${seed}`);
21
+ this.log.info(`Using pseudo-randomness with seed: ${seed}`);
22
22
  this.counter = seed;
23
23
  } else {
24
- this.log('Using true randomness');
24
+ this.log.info('Using true randomness');
25
25
  }
26
26
  }
27
27
 
@@ -12,14 +12,14 @@ import { JsonStringify, convertFromJsonObj, convertToJsonObj } from '../convert.
12
12
 
13
13
  export { JsonStringify } from '../convert.js';
14
14
 
15
- const debug = createDebugLogger('json-rpc:json_rpc_client');
15
+ const log = createDebugLogger('json-rpc:json_rpc_client');
16
16
  /**
17
17
  * A normal fetch function that does not retry.
18
18
  * Alternatives are a fetch function with retries, or a mocked fetch.
19
19
  * @param host - The host URL.
20
20
  * @param method - The RPC method name.
21
21
  * @param body - The RPC payload.
22
- * @param noRetry - Whether to throw a `NoRetryError` in case the response is not ok and the body contains an error
22
+ * @param noRetry - Whether to throw a `NoRetryError` in case the response is a 5xx error and the body contains an error
23
23
  * message (see `retry` function for more details).
24
24
  * @returns The parsed JSON response, or throws an error.
25
25
  */
@@ -30,7 +30,7 @@ export async function defaultFetch(
30
30
  useApiEndpoints: boolean,
31
31
  noRetry = false,
32
32
  ) {
33
- debug(format(`JsonRpcClient.fetch`, host, rpcMethod, '->', body));
33
+ log.debug(format(`JsonRpcClient.fetch`, host, rpcMethod, '->', body));
34
34
  let resp: Response;
35
35
  if (useApiEndpoints) {
36
36
  resp = await fetch(`${host}/${rpcMethod}`, {
@@ -56,7 +56,7 @@ export async function defaultFetch(
56
56
  throw new Error(`Failed to parse body as JSON: ${resp.text()}`);
57
57
  }
58
58
  if (!resp.ok) {
59
- if (noRetry) {
59
+ if (noRetry || (resp.status >= 400 && resp.status < 500)) {
60
60
  throw new NoRetryError('(JSON-RPC PROPAGATED) ' + responseJson.error.message);
61
61
  } else {
62
62
  throw new Error('(JSON-RPC PROPAGATED) ' + responseJson.error.message);
@@ -112,9 +112,9 @@ export function createJsonRpcClient<T extends object>(
112
112
  method,
113
113
  params: params.map(param => convertToJsonObj(classConverter, param)),
114
114
  };
115
- debug(format(`JsonRpcClient.request`, method, '<-', params));
115
+ log.debug(format(`JsonRpcClient.request`, method, '<-', params));
116
116
  const res = await fetch(host, method, body, useApiEndpoints);
117
- debug(format(`JsonRpcClient.result`, method, '->', res));
117
+ log.debug(format(`JsonRpcClient.result`, method, '->', res));
118
118
  if (res.error) {
119
119
  throw res.error;
120
120
  }
@@ -138,7 +138,7 @@ export function createJsonRpcClient<T extends object>(
138
138
  return Reflect.get(target, method);
139
139
  }
140
140
  return (...params: any[]) => {
141
- debug(format(`JsonRpcClient.constructor`, 'proxy', rpcMethod, '<-', params));
141
+ log.debug(format(`JsonRpcClient.constructor`, 'proxy', rpcMethod, '<-', params));
142
142
  return request(rpcMethod, params);
143
143
  };
144
144
  },
@@ -5,7 +5,7 @@ import { ClassConverter, type JsonClassConverterInput, type StringClassConverter
5
5
  import { convertFromJsonObj, convertToJsonObj } from '../convert.js';
6
6
  import { assert, hasOwnProperty } from '../js_utils.js';
7
7
 
8
- const debug = createDebugLogger('json-rpc:json_proxy');
8
+ const log = createDebugLogger('json-rpc:json_proxy');
9
9
 
10
10
  /**
11
11
  * A map of class names to class constructors.
@@ -38,7 +38,7 @@ export class JsonProxy {
38
38
  * @returns The remote result.
39
39
  */
40
40
  public async call(methodName: string, jsonParams: any[] = [], skipConversion = false) {
41
- debug(format(`JsonProxy:call`, methodName, jsonParams));
41
+ log.debug(format(`JsonProxy:call`, methodName, jsonParams));
42
42
  // Get access to our class members
43
43
  const proto = Object.getPrototypeOf(this.handler);
44
44
  assert(hasOwnProperty(proto, methodName), `JsonProxy: Method ${methodName} not found!`);
@@ -48,13 +48,13 @@ export class JsonProxy {
48
48
  if (!skipConversion) {
49
49
  convertedParams = jsonParams.map(param => convertFromJsonObj(this.classConverter, param));
50
50
  }
51
- debug(format('JsonProxy:call', methodName, '<-', convertedParams));
51
+ log.debug(format('JsonProxy:call', methodName, '<-', convertedParams));
52
52
  const rawRet = await (this.handler as any)[methodName](...convertedParams);
53
53
  let ret = rawRet;
54
54
  if (!skipConversion) {
55
55
  ret = convertToJsonObj(this.classConverter, rawRet);
56
56
  }
57
- debug(format('JsonProxy:call', methodName, '->', ret));
57
+ log.debug(format('JsonProxy:call', methodName, '->', ret));
58
58
  return ret;
59
59
  }
60
60
  }