@aztec/foundation 0.1.0-alpha42 → 0.1.0-alpha44

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 (34) hide show
  1. package/.tsbuildinfo +1 -1
  2. package/dest/abi/abi.d.ts +91 -0
  3. package/dest/abi/abi.d.ts.map +1 -1
  4. package/dest/abi/abi.js +19 -1
  5. package/dest/committable/committable.d.ts +28 -0
  6. package/dest/committable/committable.d.ts.map +1 -0
  7. package/dest/committable/committable.js +41 -0
  8. package/dest/committable/committable.test.d.ts +2 -0
  9. package/dest/committable/committable.test.d.ts.map +1 -0
  10. package/dest/committable/committable.test.js +26 -0
  11. package/dest/committable/index.d.ts +2 -0
  12. package/dest/committable/index.d.ts.map +1 -0
  13. package/dest/committable/index.js +2 -0
  14. package/dest/json-rpc/client/index.d.ts +1 -1
  15. package/dest/json-rpc/client/index.d.ts.map +1 -1
  16. package/dest/json-rpc/client/index.js +2 -2
  17. package/dest/json-rpc/client/json_rpc_client.d.ts +0 -8
  18. package/dest/json-rpc/client/json_rpc_client.d.ts.map +1 -1
  19. package/dest/json-rpc/client/json_rpc_client.js +1 -14
  20. package/dest/json-rpc/convert.d.ts.map +1 -1
  21. package/dest/json-rpc/convert.js +6 -12
  22. package/dest/json-rpc/convert.test.js +11 -2
  23. package/dest/json-rpc/server/json_rpc_server.d.ts.map +1 -1
  24. package/dest/json-rpc/server/json_rpc_server.js +5 -3
  25. package/package.json +4 -2
  26. package/src/abi/abi.ts +114 -0
  27. package/src/committable/committable.test.ts +32 -0
  28. package/src/committable/committable.ts +46 -0
  29. package/src/committable/index.ts +1 -0
  30. package/src/json-rpc/client/index.ts +1 -7
  31. package/src/json-rpc/client/json_rpc_client.ts +0 -20
  32. package/src/json-rpc/convert.test.ts +12 -1
  33. package/src/json-rpc/convert.ts +5 -10
  34. package/src/json-rpc/server/json_rpc_server.ts +6 -3
@@ -0,0 +1,28 @@
1
+ /**
2
+ * A class that allows for a value to be committed or rolled back.
3
+ */
4
+ export declare class Committable<T> {
5
+ private currentValue;
6
+ private nextValue;
7
+ constructor(initialValue: T);
8
+ /**
9
+ * Commits the uncommitted value.
10
+ */
11
+ commit(): void;
12
+ /**
13
+ * Rolls back the uncommitted value.
14
+ */
15
+ rollback(): void;
16
+ /**
17
+ * Gets the current value.
18
+ * @param includeUncommitted - Whether to include the uncommitted value.
19
+ * @returns The current value if includeUncommitted is false, otherwise the uncommitted value.
20
+ */
21
+ get(includeUncommitted?: boolean): T;
22
+ /**
23
+ * Sets the next value to be committed to.
24
+ * @param value - The new value to be set.
25
+ */
26
+ set(value: T): void;
27
+ }
28
+ //# sourceMappingURL=committable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"committable.d.ts","sourceRoot":"","sources":["../../src/committable/committable.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,WAAW,CAAC,CAAC;IACxB,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,SAAS,CAA4B;gBAEjC,YAAY,EAAE,CAAC;IAI3B;;OAEG;IACI,MAAM;IAQb;;OAEG;IACI,QAAQ;IAIf;;;;OAIG;IACI,GAAG,CAAC,kBAAkB,GAAE,OAAe,GAAG,CAAC;IAIlD;;;OAGG;IACI,GAAG,CAAC,KAAK,EAAE,CAAC;CAGpB"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * A class that allows for a value to be committed or rolled back.
3
+ */
4
+ export class Committable {
5
+ constructor(initialValue) {
6
+ this.nextValue = undefined;
7
+ this.currentValue = initialValue;
8
+ }
9
+ /**
10
+ * Commits the uncommitted value.
11
+ */
12
+ commit() {
13
+ if (this.nextValue === undefined) {
14
+ return;
15
+ }
16
+ this.currentValue = this.nextValue;
17
+ this.nextValue = undefined;
18
+ }
19
+ /**
20
+ * Rolls back the uncommitted value.
21
+ */
22
+ rollback() {
23
+ this.nextValue === undefined;
24
+ }
25
+ /**
26
+ * Gets the current value.
27
+ * @param includeUncommitted - Whether to include the uncommitted value.
28
+ * @returns The current value if includeUncommitted is false, otherwise the uncommitted value.
29
+ */
30
+ get(includeUncommitted = false) {
31
+ return includeUncommitted && this.nextValue ? this.nextValue : this.currentValue;
32
+ }
33
+ /**
34
+ * Sets the next value to be committed to.
35
+ * @param value - The new value to be set.
36
+ */
37
+ set(value) {
38
+ this.nextValue = value;
39
+ }
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWl0dGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWl0dGFibGUvY29tbWl0dGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBVztJQUl0QixZQUFZLFlBQWU7UUFGbkIsY0FBUyxHQUFrQixTQUFTLENBQUM7UUFHM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTTtRQUNYLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDaEMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEdBQUcsQ0FBQyxxQkFBOEIsS0FBSztRQUM1QyxPQUFPLGtCQUFrQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDbkYsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEdBQUcsQ0FBQyxLQUFRO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7Q0FDRiJ9
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=committable.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"committable.test.d.ts","sourceRoot":"","sources":["../../src/committable/committable.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ import { Committable } from './committable.js';
2
+ describe('committable', () => {
3
+ it('include uncommitted should work as expected', () => {
4
+ const committableNumber = new Committable(0);
5
+ // Check the initial value is 0
6
+ expect(committableNumber.get(true)).toBe(0);
7
+ // Update the value to 1
8
+ committableNumber.set(1);
9
+ committableNumber.commit();
10
+ // Check the value is 1
11
+ expect(committableNumber.get()).toBe(1);
12
+ // Test include uncommitted
13
+ committableNumber.set(2);
14
+ expect(committableNumber.get(true)).toBe(2);
15
+ expect(committableNumber.get(false)).toBe(1);
16
+ committableNumber.commit();
17
+ expect(committableNumber.get()).toBe(2);
18
+ // Test rollback
19
+ committableNumber.set(3);
20
+ expect(committableNumber.get(true)).toBe(3);
21
+ expect(committableNumber.get(false)).toBe(2);
22
+ committableNumber.rollback();
23
+ expect(committableNumber.get()).toBe(2);
24
+ });
25
+ });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWl0dGFibGUudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21taXR0YWJsZS9jb21taXR0YWJsZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvQyxRQUFRLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRTtJQUMzQixFQUFFLENBQUMsNkNBQTZDLEVBQUUsR0FBRyxFQUFFO1FBQ3JELE1BQU0saUJBQWlCLEdBQXdCLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxFLCtCQUErQjtRQUMvQixNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTVDLHdCQUF3QjtRQUN4QixpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekIsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFM0IsdUJBQXVCO1FBQ3ZCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV4QywyQkFBMkI7UUFDM0IsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU3QyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFeEMsZ0JBQWdCO1FBQ2hCLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6QixNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0MsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDN0IsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
@@ -0,0 +1,2 @@
1
+ export * from './committable.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/committable/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './committable.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWl0dGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyJ9
@@ -1,2 +1,2 @@
1
- export { createJsonRpcClient, mustSucceedFetch, mustSucceedFetchUnlessNoRetry, defaultFetch, makeFetch, } from './json_rpc_client.js';
1
+ export { createJsonRpcClient, defaultFetch, makeFetch } from './json_rpc_client.js';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,6BAA6B,EAC7B,YAAY,EACZ,SAAS,GACV,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,2 +1,2 @@
1
- export { createJsonRpcClient, mustSucceedFetch, mustSucceedFetchUnlessNoRetry, defaultFetch, makeFetch, } from './json_rpc_client.js';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvanNvbi1ycGMvY2xpZW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLDZCQUE2QixFQUM3QixZQUFZLEVBQ1osU0FBUyxHQUNWLE1BQU0sc0JBQXNCLENBQUMifQ==
1
+ export { createJsonRpcClient, defaultFetch, makeFetch } from './json_rpc_client.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvanNvbi1ycGMvY2xpZW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUMifQ==
@@ -13,10 +13,6 @@ export { JsonStringify } from '../convert.js';
13
13
  * @returns The parsed JSON response, or throws an error.
14
14
  */
15
15
  export declare function defaultFetch(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean, noRetry?: boolean): Promise<any>;
16
- /**
17
- * A fetch function with retries.
18
- */
19
- export declare function mustSucceedFetch(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean): Promise<any>;
20
16
  /**
21
17
  * Makes a fetch function that retries based on the given attempts.
22
18
  * @param retries - Sequence of intervals (in seconds) to retry.
@@ -25,10 +21,6 @@ export declare function mustSucceedFetch(host: string, rpcMethod: string, body:
25
21
  * @returns A fetch function.
26
22
  */
27
23
  export declare function makeFetch(retries: number[], noRetry: boolean, log?: DebugLogger): (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) => Promise<any>;
28
- /**
29
- * A fetch function with retries unless the error is a NoRetryError.
30
- */
31
- export declare function mustSucceedFetchUnlessNoRetry(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean): Promise<any>;
32
24
  /**
33
25
  * Creates a Proxy object that delegates over RPC and satisfies RemoteObject<T>.
34
26
  * The server should have ran new JsonRpcServer().
@@ -1 +1 @@
1
- {"version":3,"file":"json_rpc_client.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/json_rpc_client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EAAkB,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAG3G,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,GAAG,EACT,eAAe,EAAE,OAAO,EACxB,OAAO,UAAQ,gBAoChB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,gBAE1G;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,WAAW,UAC1D,MAAM,aAAa,MAAM,QAAQ,GAAG,mBAAmB,OAAO,kBAQnF;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,GAAG,EACT,eAAe,EAAE,OAAO,gBAIzB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,yBAAyB,EACzC,cAAc,EAAE,uBAAuB,EACvC,eAAe,EAAE,OAAO,EACxB,KAAK,sBAAe,mBAqCrB"}
1
+ {"version":3,"file":"json_rpc_client.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/json_rpc_client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EAAkB,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAG3G,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,GAAG,EACT,eAAe,EAAE,OAAO,EACxB,OAAO,UAAQ,gBAoChB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,WAAW,UAC1D,MAAM,aAAa,MAAM,QAAQ,GAAG,mBAAmB,OAAO,kBAQnF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,yBAAyB,EACzC,cAAc,EAAE,uBAAuB,EACvC,eAAe,EAAE,OAAO,EACxB,KAAK,sBAAe,mBAqCrB"}
@@ -51,12 +51,6 @@ export async function defaultFetch(host, rpcMethod, body, useApiEndpoints, noRet
51
51
  }
52
52
  return responseJson;
53
53
  }
54
- /**
55
- * A fetch function with retries.
56
- */
57
- export async function mustSucceedFetch(host, rpcMethod, body, useApiEndpoints) {
58
- return await retry(() => defaultFetch(host, rpcMethod, body, useApiEndpoints), 'JsonRpcClient request');
59
- }
60
54
  /**
61
55
  * Makes a fetch function that retries based on the given attempts.
62
56
  * @param retries - Sequence of intervals (in seconds) to retry.
@@ -69,13 +63,6 @@ export function makeFetch(retries, noRetry, log) {
69
63
  return await retry(() => defaultFetch(host, rpcMethod, body, useApiEndpoints, noRetry), 'JsonRpcClient request', makeBackoff(retries), log);
70
64
  };
71
65
  }
72
- /**
73
- * A fetch function with retries unless the error is a NoRetryError.
74
- */
75
- export async function mustSucceedFetchUnlessNoRetry(host, rpcMethod, body, useApiEndpoints) {
76
- const noRetry = true;
77
- return await retry(() => defaultFetch(host, rpcMethod, body, useApiEndpoints, noRetry), 'JsonRpcClient request');
78
- }
79
66
  /**
80
67
  * Creates a Proxy object that delegates over RPC and satisfies RemoteObject<T>.
81
68
  * The server should have ran new JsonRpcServer().
@@ -114,4 +101,4 @@ export function createJsonRpcClient(host, stringClassMap, objectClassMap, useApi
114
101
  },
115
102
  });
116
103
  }
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9ycGNfY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL2NsaWVudC9qc29uX3JwY19jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBc0QsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRyxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUMsTUFBTSxLQUFLLEdBQUcsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztBQUM1RDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FDaEMsSUFBWSxFQUNaLFNBQWlCLEVBQ2pCLElBQVMsRUFDVCxlQUF3QixFQUN4QixPQUFPLEdBQUcsS0FBSztJQUVmLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxRCxJQUFJLElBQWMsQ0FBQztJQUNuQixJQUFJLGVBQWUsRUFBRTtRQUNuQixJQUFJLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxJQUFJLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDekMsTUFBTSxFQUFFLE1BQU07WUFDZCxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN6QixPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUU7U0FDaEQsQ0FBQyxDQUFDO0tBQ0o7U0FBTTtRQUNMLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxJQUFJLEVB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
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9ycGNfY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL2NsaWVudC9qc29uX3JwY19jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBc0QsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRyxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUMsTUFBTSxLQUFLLEdBQUcsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztBQUM1RDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FDaEMsSUFBWSxFQUNaLFNBQWlCLEVBQ2pCLElBQVMsRUFDVCxlQUF3QixFQUN4QixPQUFPLEdBQUcsS0FBSztJQUVmLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxRCxJQUFJLElBQWMsQ0FBQztJQUNuQixJQUFJLGVBQWUsRUFBRTtRQUNuQixJQUFJLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxJQUFJLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDekMsTUFBTSxFQUFFLE1BQU07WUFDZCxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN6QixPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUU7U0FDaEQsQ0FBQyxDQUFDO0tBQ0o7U0FBTTtRQUNMLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxJQUFJLEVB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
@@ -1 +1 @@
1
- {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/json-rpc/convert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAS,GAAG,QAY3C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAYrE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAqCpE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAmClE"}
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/json-rpc/convert.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAS,GAAG,QAM3C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAYrE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAqCpE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAmClE"}
@@ -1,22 +1,16 @@
1
1
  import { Buffer } from 'buffer';
2
+ import cloneDeepWith from 'lodash.clonedeepwith';
2
3
  /**
3
4
  * Recursively looks through an object for bigints and converts them to object format.
4
5
  * @param obj - The object to convert.
5
6
  * @returns The converted object with stringified bigints.
6
7
  */
7
8
  export const convertBigintsInObj = (obj) => {
8
- for (const i in obj) {
9
- if (typeof obj[i] === 'bigint') {
10
- obj[i] = {
11
- type: 'bigint',
12
- data: obj[i].toString(),
13
- };
9
+ return cloneDeepWith(obj, (value) => {
10
+ if (typeof value === 'bigint') {
11
+ return { type: 'bigint', data: value.toString() };
14
12
  }
15
- else if (typeof obj[i] === 'object') {
16
- convertBigintsInObj(obj[i]);
17
- }
18
- }
19
- return obj;
13
+ });
20
14
  };
21
15
  /**
22
16
  * JSON.stringify helper that handles bigints.
@@ -109,4 +103,4 @@ export function convertToJsonObj(cc, obj) {
109
103
  // Leave alone, assume JSON primitive
110
104
  return obj;
111
105
  }
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9qc29uLXJwYy9jb252ZXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFJaEM7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsR0FBUSxFQUFFLEVBQUU7SUFDOUMsS0FBSyxNQUFNLENBQUMsSUFBSSxHQUFHLEVBQUU7UUFDbkIsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLEVBQUU7WUFDOUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHO2dCQUNQLElBQUksRUFBRSxRQUFRO2dCQUNkLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO2FBQ3hCLENBQUM7U0FDSDthQUFNLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFO1lBQ3JDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzdCO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLEdBQVcsRUFBRSxRQUFrQjtJQUMzRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQ25CLEdBQUcsRUFDSCxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUNiLE9BQU8sS0FBSyxLQUFLLFFBQVE7UUFDdkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDYixJQUFJLEVBQUUsUUFBUTtZQUNkLElBQUksRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFO1NBQ3ZCLENBQUM7UUFDSixDQUFDLENBQUMsS0FBSyxFQUNYLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2pC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
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9qc29uLXJwYy9jb252ZXJ0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxhQUFhLE1BQU0sc0JBQXNCLENBQUM7QUFJakQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsR0FBUSxFQUFFLEVBQUU7SUFDOUMsT0FBTyxhQUFhLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7UUFDdkMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDN0IsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1NBQ25EO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxHQUFXLEVBQUUsUUFBa0I7SUFDM0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUNuQixHQUFHLEVBQ0gsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FDYixPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2IsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRTtTQUN2QixDQUFDO1FBQ0osQ0FBQyxDQUFDLEtBQUssRUFDWCxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNqQixDQUFDO0FBQ0osQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEVBQWtCLEVBQUUsR0FBUTtJQUM3RCxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUU7UUFDaEIsT0FBTyxTQUFTLENBQUMsQ0FBQyx5Q0FBeUM7S0FDNUQ7SUFFRCxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1IsT0FBTyxHQUFHLENBQUMsQ0FBQyxpQkFBaUI7S0FDOUI7SUFDRCxvQ0FBb0M7SUFDcEMsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxPQUFPLEdBQUcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1FBQ3pELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0tBQ3hDO0lBRUQsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxPQUFPLEdBQUcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1FBQ3pELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUN6QjtJQUVELDhCQUE4QjtJQUM5QixJQUFJLE9BQU8sR0FBRyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksRUFBRSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0RSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDM0I7SUFFRCxvQkFBb0I7SUFDcEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDdkQ7SUFDRCx3QkFBd0I7SUFDeEIsSUFBSSxHQUFHLENBQUMsV0FBVyxLQUFLLE1BQU0sRUFBRTtRQUM5QixNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFDdkIsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2xDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDaEQ7UUFDRCxPQUFPLE1BQU0sQ0FBQztLQUNmO0lBRUQscUNBQXFDO0lBQ3JDLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQWtCLEVBQUUsR0FBUTtJQUMzRCxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1IsT0FBTyxHQUFHLENBQUMsQ0FBQyxpQkFBaUI7S0FDOUI7SUFDRCx5QkFBeUI7SUFDekIsSUFBSSxHQUFHLFlBQVksTUFBTSxFQUFFO1FBQ3pCLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7S0FDekQ7SUFFRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtRQUMzQixPQUFPO1lBQ0wsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsR0FBRyxDQUFDLFFBQVEsRUFBRTtTQUNyQixDQUFDO0tBQ0g7SUFFRCw4QkFBOEI7SUFDOUIsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQ3pDLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUMxQjtJQUNELG9CQUFvQjtJQUNwQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdEIsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRDtJQUNELHdCQUF3QjtJQUN4QixJQUFJLEdBQUcsQ0FBQyxXQUFXLEtBQUssTUFBTSxFQUFFO1FBQzlCLE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUN2QixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUM5QztRQUNELE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxxQ0FBcUM7SUFDckMsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDIn0=
@@ -1,6 +1,6 @@
1
1
  import { Buffer } from 'buffer';
2
2
  import { ClassConverter } from './class_converter.js';
3
- import { convertFromJsonObj, convertToJsonObj } from './convert.js';
3
+ import { convertBigintsInObj, convertFromJsonObj, convertToJsonObj } from './convert.js';
4
4
  import { TestNote } from './fixtures/test_state.js';
5
5
  const TEST_BASE64 = 'YmFzZTY0IGRlY29kZXI=';
6
6
  test('test an RPC function over client', () => {
@@ -11,4 +11,13 @@ test('test an RPC function over client', () => {
11
11
  expect(convertFromJsonObj(cc, convertToJsonObj(cc, note))).toBeInstanceOf(TestNote);
12
12
  expect(convertFromJsonObj(cc, convertToJsonObj(cc, note)).toString()).toBe('1');
13
13
  });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2pzb24tcnBjL2NvbnZlcnQudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWhDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXBELE1BQU0sV0FBVyxHQUFHLHNCQUFzQixDQUFDO0FBQzNDLElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxHQUFHLEVBQUU7SUFDNUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxjQUFjLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xHLE1BQU0sSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEYsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsRixDQUFDLENBQUMsQ0FBQyJ9
14
+ test('converts a bigint', () => {
15
+ expect(convertBigintsInObj(10n)).toEqual({ type: 'bigint', data: '10' });
16
+ expect(convertBigintsInObj({ value: 10n })).toEqual({ value: { type: 'bigint', data: '10' } });
17
+ expect(convertBigintsInObj([10n])).toEqual([{ type: 'bigint', data: '10' }]);
18
+ });
19
+ test('does not convert a string', () => {
20
+ expect(convertBigintsInObj('hello')).toEqual('hello');
21
+ expect(convertBigintsInObj({ msg: 'hello' })).toEqual({ msg: 'hello' });
22
+ });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2pzb24tcnBjL2NvbnZlcnQudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWhDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXBELE1BQU0sV0FBVyxHQUFHLHNCQUFzQixDQUFDO0FBQzNDLElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxHQUFHLEVBQUU7SUFDNUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxjQUFjLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xHLE1BQU0sSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEYsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsRixDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7SUFDN0IsTUFBTSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RSxNQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMvRixNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDL0UsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO0lBQ3JDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0RCxNQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0FBQzFFLENBQUMsQ0FBQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"json_rpc_server.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/server/json_rpc_server.ts"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAMtB,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE3F,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,qBAAa,aAAa;IAGtB,OAAO,CAAC,OAAO;IAGf,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,GAAG;IAPb,KAAK,EAAE,SAAS,CAAC;gBAEP,OAAO,EAAE,MAAM,EACvB,cAAc,EAAE,yBAAyB,EACzC,cAAc,EAAE,uBAAuB,EAC/B,SAAS,EAAE,OAAO,EAClB,iBAAiB,GAAE,MAAM,EAAO,EAChC,GAAG,4CAAwD;IAKrE;;;;OAIG;IACI,MAAM,CAAC,MAAM,SAAK;IAyBzB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAqEjB;;;;OAIG;IACI,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAK;CAIvC"}
1
+ {"version":3,"file":"json_rpc_server.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/server/json_rpc_server.ts"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAMtB,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE3F,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,qBAAa,aAAa;IAGtB,OAAO,CAAC,OAAO;IAGf,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,GAAG;IAPb,KAAK,EAAE,SAAS,CAAC;gBAEP,OAAO,EAAE,MAAM,EACvB,cAAc,EAAE,yBAAyB,EACzC,cAAc,EAAE,uBAAuB,EAC/B,SAAS,EAAE,OAAO,EAClB,iBAAiB,GAAE,MAAM,EAAO,EAChC,GAAG,4CAAwD;IAKrE;;;;OAIG;IACI,MAAM,CAAC,MAAM,SAAK;IA6BzB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAoEjB;;;;OAIG;IACI,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAK;CAIvC"}
@@ -38,10 +38,12 @@ export class JsonRpcServer {
38
38
  };
39
39
  const app = new Koa();
40
40
  app.on('error', error => {
41
- this.log.error(`KOA app-level error. ${JSON.stringify({ error })}`);
41
+ this.log.error(`Error on API handler: ${error}`);
42
42
  });
43
43
  app.use(compress({ br: false }));
44
- app.use(bodyParser());
44
+ app.use(bodyParser({
45
+ jsonLimit: '10mb',
46
+ }));
45
47
  app.use(cors());
46
48
  app.use(exceptionHandler);
47
49
  app.use(router.routes());
@@ -128,4 +130,4 @@ export class JsonRpcServer {
128
130
  httpServer.listen(port);
129
131
  }
130
132
  }
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9ycGNfc2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL3NlcnZlci9qc29uX3JwY19zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUN4QixPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxVQUFVLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxRQUFRLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sTUFBTSxNQUFNLFlBQVksQ0FBQztBQUVoQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDOzs7R0FHRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBRXhCLFlBQ1UsT0FBZSxFQUN2QixjQUF5QyxFQUN6QyxjQUF1QyxFQUMvQixTQUFrQixFQUNsQixvQkFBOEIsRUFBRSxFQUNoQyxNQUFNLGlCQUFpQixDQUFDLGtDQUFrQyxDQUFDO1FBTDNELFlBQU8sR0FBUCxPQUFPLENBQVE7UUFHZixjQUFTLEdBQVQsU0FBUyxDQUFTO1FBQ2xCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBZTtRQUNoQyxRQUFHLEdBQUgsR0FBRyxDQUF3RDtRQUVuRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsTUFBTSxHQUFHLEVBQUU7UUFDdkIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QyxN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
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9ycGNfc2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL3NlcnZlci9qc29uX3JwY19zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUN4QixPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxVQUFVLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxRQUFRLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sTUFBTSxNQUFNLFlBQVksQ0FBQztBQUVoQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTVDOzs7R0FHRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBRXhCLFlBQ1UsT0FBZSxFQUN2QixjQUF5QyxFQUN6QyxjQUF1QyxFQUMvQixTQUFrQixFQUNsQixvQkFBOEIsRUFBRSxFQUNoQyxNQUFNLGlCQUFpQixDQUFDLGtDQUFrQyxDQUFDO1FBTDNELFlBQU8sR0FBUCxPQUFPLENBQVE7UUFHZixjQUFTLEdBQVQsU0FBUyxDQUFTO1FBQ2xCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBZTtRQUNoQyxRQUFHLEdBQUgsR0FBRyxDQUF3RDtRQUVuRSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsTUFBTSxHQUFHLEVBQUU7UUFDdkIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QyxN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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/foundation",
3
- "version": "0.1.0-alpha42",
3
+ "version": "0.1.0-alpha44",
4
4
  "exports": {
5
5
  "./eslint": "./.eslintrc.cjs",
6
6
  "./prettier": "./.prettierrc.json",
@@ -27,7 +27,8 @@
27
27
  "./wasm": "./dest/wasm/index.js",
28
28
  "./worker": "./dest/worker/index.js",
29
29
  "./bigint-buffer": "./dest/bigint-buffer/index.js",
30
- "./types": "./dest/types/index.js"
30
+ "./types": "./dest/types/index.js",
31
+ "./committable": "./dest/committable/index.js"
31
32
  },
32
33
  "type": "module",
33
34
  "dependencies": {
@@ -41,6 +42,7 @@
41
42
  "koa-router": "^12.0.0",
42
43
  "leveldown": "^6.1.1",
43
44
  "levelup": "^5.1.1",
45
+ "lodash.clonedeepwith": "^4.5.0",
44
46
  "memdown": "^6.1.1",
45
47
  "sha3": "^2.1.4"
46
48
  }
package/src/abi/abi.ts CHANGED
@@ -136,6 +136,81 @@ export interface FunctionAbi {
136
136
  verificationKey?: string;
137
137
  }
138
138
 
139
+ /**
140
+ * A file ID. It's assigned during compilation.
141
+ */
142
+ export type FileId = number;
143
+
144
+ /**
145
+ * A pointer to a specific section of the source code.
146
+ */
147
+ export interface SourceCodeLocation {
148
+ /**
149
+ * The section of the source code.
150
+ */
151
+ span: {
152
+ /**
153
+ * The byte where the section starts.
154
+ */
155
+ start: number;
156
+ /**
157
+ * The byte where the section ends.
158
+ */
159
+ end: number;
160
+ };
161
+ /**
162
+ * The source code file pointed to.
163
+ */
164
+ file: FileId;
165
+ }
166
+
167
+ /**
168
+ * The location of an opcode in the bytecode.
169
+ * It's a string of the form `{acirIndex}` or `{acirIndex}:{brilligIndex}`.
170
+ */
171
+ export type OpcodeLocation = string;
172
+
173
+ /**
174
+ * The debug information for a given function.
175
+ */
176
+ export interface DebugInfo {
177
+ /**
178
+ * A map of the opcode location to the source code location.
179
+ */
180
+ locations: Record<OpcodeLocation, SourceCodeLocation[]>;
181
+ }
182
+
183
+ /**
184
+ * Maps a file ID to its metadata for debugging purposes.
185
+ */
186
+ export type DebugFileMap = Record<
187
+ FileId,
188
+ {
189
+ /**
190
+ * The source code of the file.
191
+ */
192
+ source: string;
193
+ /**
194
+ * The path of the file.
195
+ */
196
+ path: string;
197
+ }
198
+ >;
199
+
200
+ /**
201
+ * The debug metadata of an ABI.
202
+ */
203
+ export interface DebugMetadata {
204
+ /**
205
+ * The debug information for each function.
206
+ */
207
+ debugSymbols: DebugInfo[];
208
+ /**
209
+ * The map of file ID to the source code and path of the file.
210
+ */
211
+ fileMap: DebugFileMap;
212
+ }
213
+
139
214
  /**
140
215
  * Defines ABI of a contract.
141
216
  */
@@ -148,4 +223,43 @@ export interface ContractAbi {
148
223
  * The functions of the contract.
149
224
  */
150
225
  functions: FunctionAbi[];
226
+
227
+ /**
228
+ * The debug metadata of the contract.
229
+ * It's used to include the relevant source code section when a constraint is not met during simulation.
230
+ */
231
+ debug?: DebugMetadata;
232
+ }
233
+
234
+ /**
235
+ * Debug metadata for a function.
236
+ */
237
+ export interface FunctionDebugMetadata {
238
+ /**
239
+ * Maps opcodes to source code pointers
240
+ */
241
+ debugSymbols: DebugInfo;
242
+ /**
243
+ * Maps the file IDs to the file contents to resolve pointers
244
+ */
245
+ files: DebugFileMap;
246
+ }
247
+
248
+ /**
249
+ * Gets the debug metadata of a given function from the contract abi
250
+ * @param abi - The contract abi
251
+ * @param functionName - The name of the function
252
+ * @returns The debug metadata of the function
253
+ */
254
+ export function getFunctionDebugMetadata(abi: ContractAbi, functionName: string): FunctionDebugMetadata | undefined {
255
+ const functionIndex = abi.functions.findIndex(f => f.name === functionName);
256
+ if (abi.debug && functionIndex !== -1) {
257
+ const debugSymbols = abi.debug.debugSymbols[functionIndex];
258
+ const files = abi.debug.fileMap;
259
+ return {
260
+ debugSymbols,
261
+ files,
262
+ };
263
+ }
264
+ return undefined;
151
265
  }
@@ -0,0 +1,32 @@
1
+ import { Committable } from './committable.js';
2
+
3
+ describe('committable', () => {
4
+ it('include uncommitted should work as expected', () => {
5
+ const committableNumber: Committable<number> = new Committable(0);
6
+
7
+ // Check the initial value is 0
8
+ expect(committableNumber.get(true)).toBe(0);
9
+
10
+ // Update the value to 1
11
+ committableNumber.set(1);
12
+ committableNumber.commit();
13
+
14
+ // Check the value is 1
15
+ expect(committableNumber.get()).toBe(1);
16
+
17
+ // Test include uncommitted
18
+ committableNumber.set(2);
19
+ expect(committableNumber.get(true)).toBe(2);
20
+ expect(committableNumber.get(false)).toBe(1);
21
+
22
+ committableNumber.commit();
23
+ expect(committableNumber.get()).toBe(2);
24
+
25
+ // Test rollback
26
+ committableNumber.set(3);
27
+ expect(committableNumber.get(true)).toBe(3);
28
+ expect(committableNumber.get(false)).toBe(2);
29
+ committableNumber.rollback();
30
+ expect(committableNumber.get()).toBe(2);
31
+ });
32
+ });
@@ -0,0 +1,46 @@
1
+ /**
2
+ * A class that allows for a value to be committed or rolled back.
3
+ */
4
+ export class Committable<T> {
5
+ private currentValue: T;
6
+ private nextValue: T | undefined = undefined;
7
+
8
+ constructor(initialValue: T) {
9
+ this.currentValue = initialValue;
10
+ }
11
+
12
+ /**
13
+ * Commits the uncommitted value.
14
+ */
15
+ public commit() {
16
+ if (this.nextValue === undefined) {
17
+ return;
18
+ }
19
+ this.currentValue = this.nextValue;
20
+ this.nextValue = undefined;
21
+ }
22
+
23
+ /**
24
+ * Rolls back the uncommitted value.
25
+ */
26
+ public rollback() {
27
+ this.nextValue === undefined;
28
+ }
29
+
30
+ /**
31
+ * Gets the current value.
32
+ * @param includeUncommitted - Whether to include the uncommitted value.
33
+ * @returns The current value if includeUncommitted is false, otherwise the uncommitted value.
34
+ */
35
+ public get(includeUncommitted: boolean = false): T {
36
+ return includeUncommitted && this.nextValue ? this.nextValue : this.currentValue;
37
+ }
38
+
39
+ /**
40
+ * Sets the next value to be committed to.
41
+ * @param value - The new value to be set.
42
+ */
43
+ public set(value: T) {
44
+ this.nextValue = value;
45
+ }
46
+ }
@@ -0,0 +1 @@
1
+ export * from './committable.js';
@@ -1,7 +1 @@
1
- export {
2
- createJsonRpcClient,
3
- mustSucceedFetch,
4
- mustSucceedFetchUnlessNoRetry,
5
- defaultFetch,
6
- makeFetch,
7
- } from './json_rpc_client.js';
1
+ export { createJsonRpcClient, defaultFetch, makeFetch } from './json_rpc_client.js';
@@ -65,13 +65,6 @@ export async function defaultFetch(
65
65
  return responseJson;
66
66
  }
67
67
 
68
- /**
69
- * A fetch function with retries.
70
- */
71
- export async function mustSucceedFetch(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) {
72
- return await retry(() => defaultFetch(host, rpcMethod, body, useApiEndpoints), 'JsonRpcClient request');
73
- }
74
-
75
68
  /**
76
69
  * Makes a fetch function that retries based on the given attempts.
77
70
  * @param retries - Sequence of intervals (in seconds) to retry.
@@ -90,19 +83,6 @@ export function makeFetch(retries: number[], noRetry: boolean, log?: DebugLogger
90
83
  };
91
84
  }
92
85
 
93
- /**
94
- * A fetch function with retries unless the error is a NoRetryError.
95
- */
96
- export async function mustSucceedFetchUnlessNoRetry(
97
- host: string,
98
- rpcMethod: string,
99
- body: any,
100
- useApiEndpoints: boolean,
101
- ) {
102
- const noRetry = true;
103
- return await retry(() => defaultFetch(host, rpcMethod, body, useApiEndpoints, noRetry), 'JsonRpcClient request');
104
- }
105
-
106
86
  /**
107
87
  * Creates a Proxy object that delegates over RPC and satisfies RemoteObject<T>.
108
88
  * The server should have ran new JsonRpcServer().