@walletmesh/aztec-rpc-wallet 0.2.0 → 0.3.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.
- package/CHANGELOG.md +12 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/aztecRemoteWallet.d.ts +4 -8
- package/dist/aztecRemoteWallet.d.ts.map +1 -1
- package/dist/aztecRemoteWallet.js +5 -29
- package/dist/contractArtifactCache.d.ts.map +1 -1
- package/dist/contractArtifactCache.js +20 -9
- package/dist/handlers/aztecAccountWallet.d.ts.map +1 -1
- package/dist/handlers/aztecAccountWallet.js +11 -44
- package/dist/serializers/account.d.ts +16 -16
- package/dist/serializers/account.d.ts.map +1 -1
- package/dist/serializers/account.js +43 -43
- package/dist/serializers/contract.d.ts +22 -76
- package/dist/serializers/contract.d.ts.map +1 -1
- package/dist/serializers/contract.js +68 -120
- package/dist/serializers/index.d.ts +0 -4
- package/dist/serializers/index.d.ts.map +1 -1
- package/dist/serializers/index.js +15 -20
- package/dist/serializers/log.d.ts +16 -16
- package/dist/serializers/log.d.ts.map +1 -1
- package/dist/serializers/log.js +43 -43
- package/dist/serializers/note.d.ts +12 -12
- package/dist/serializers/note.d.ts.map +1 -1
- package/dist/serializers/note.js +32 -32
- package/dist/serializers/transaction.d.ts +25 -26
- package/dist/serializers/transaction.d.ts.map +1 -1
- package/dist/serializers/transaction.js +92 -44
- package/dist/types.d.ts +7 -30
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/docs/README.md +264 -0
- package/docs/classes/AztecChainProvider.md +553 -0
- package/docs/classes/AztecChainWallet.md +409 -0
- package/docs/classes/AztecProvider.md +1112 -0
- package/docs/classes/AztecWalletError.md +213 -0
- package/docs/classes/ContractArtifactCache.md +81 -0
- package/docs/globals.md +34 -0
- package/docs/interfaces/AztecWalletBaseMethodMap.md +135 -0
- package/docs/interfaces/AztecWalletEventMap.md +17 -0
- package/docs/interfaces/AztecWalletMethodMap.md +1012 -0
- package/docs/type-aliases/AztecChainId.md +11 -0
- package/docs/type-aliases/AztecChainWalletMiddleware.md +13 -0
- package/docs/type-aliases/AztecWalletContext.md +29 -0
- package/docs/type-aliases/AztecWalletMethodHandler.md +37 -0
- package/docs/type-aliases/AztecWalletMiddleware.md +13 -0
- package/docs/type-aliases/AztecWalletRouterClient.md +13 -0
- package/docs/type-aliases/TransactionFunctionCall.md +33 -0
- package/docs/type-aliases/TransactionParams.md +27 -0
- package/docs/variables/AztecWalletErrorMap.md +13 -0
- package/package.json +9 -9
- package/src/aztecRemoteWallet.test.ts +22 -61
- package/src/aztecRemoteWallet.ts +8 -35
- package/src/chainProvider.test.ts +117 -38
- package/src/contractArtifactCache.test.ts +28 -45
- package/src/contractArtifactCache.ts +20 -10
- package/src/handlers/aztecAccountWallet.test.ts +12 -86
- package/src/handlers/aztecAccountWallet.ts +19 -77
- package/src/provider.test.ts +0 -2
- package/src/serializers/account.test.ts +19 -20
- package/src/serializers/account.ts +52 -52
- package/src/serializers/contract.test.ts +4 -140
- package/src/serializers/contract.ts +93 -166
- package/src/serializers/index.test.ts +30 -28
- package/src/serializers/index.ts +15 -21
- package/src/serializers/log.test.ts +42 -48
- package/src/serializers/log.ts +54 -54
- package/src/serializers/note.test.ts +43 -16
- package/src/serializers/note.ts +39 -39
- package/src/serializers/transaction.test.ts +48 -41
- package/src/serializers/transaction.ts +146 -58
- package/src/types.ts +7 -7
- package/src/wallet.test.ts +3 -3
- package/dist/serializers/transaction-utils.d.ts +0 -51
- package/dist/serializers/transaction-utils.d.ts.map +0 -1
- package/dist/serializers/transaction-utils.js +0 -103
- package/src/serializers/transaction-utils.ts +0 -174
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { AccountWallet } from '@aztec/aztec.js';
|
1
|
+
import type { AccountWallet, PXE } from '@aztec/aztec.js';
|
2
2
|
import { AztecWalletError } from '../errors.js';
|
3
3
|
import type { AztecWalletContext, AztecWalletMethodMap } from '../types.js';
|
4
4
|
|
@@ -25,14 +25,10 @@ export const AZTEC_WALLET_METHODS: (keyof AztecWalletMethodMap)[] = [
|
|
25
25
|
'aztec_getSenders',
|
26
26
|
'aztec_removeSender',
|
27
27
|
'aztec_getContracts',
|
28
|
-
'aztec_getContractInstance',
|
29
|
-
'aztec_getContractClass',
|
30
|
-
'aztec_getContractArtifact',
|
31
|
-
'aztec_isContractClassPubliclyRegistered',
|
32
|
-
'aztec_isContractPubliclyDeployed',
|
33
|
-
'aztec_isContractInitialized',
|
34
28
|
'aztec_registerContract',
|
35
29
|
'aztec_registerContractClass',
|
30
|
+
'aztec_getContractMetadata',
|
31
|
+
'aztec_getContractClassMetadata',
|
36
32
|
'aztec_getPublicStorageAt',
|
37
33
|
'aztec_createTxExecutionRequest',
|
38
34
|
'aztec_proveTx',
|
@@ -196,52 +192,18 @@ async function handleGetContracts(
|
|
196
192
|
return await wallet.getContracts();
|
197
193
|
}
|
198
194
|
|
199
|
-
async function
|
200
|
-
|
201
|
-
params: AztecWalletMethodMap['
|
202
|
-
): Promise<AztecWalletMethodMap['
|
203
|
-
|
204
|
-
if (!instance) throw new AztecWalletError('contractInstanceNotRegistered', 'aztec_getContractInstance');
|
205
|
-
return instance;
|
206
|
-
}
|
207
|
-
|
208
|
-
async function handleGetContractClass(
|
209
|
-
wallet: AccountWallet,
|
210
|
-
params: AztecWalletMethodMap['aztec_getContractClass']['params'],
|
211
|
-
): Promise<AztecWalletMethodMap['aztec_getContractClass']['result']> {
|
212
|
-
const contractClass = await wallet.getContractClass(params.id);
|
213
|
-
if (!contractClass) throw new AztecWalletError('contractClassNotRegistered', 'aztec_getContractClass');
|
214
|
-
return contractClass;
|
215
|
-
}
|
216
|
-
|
217
|
-
async function handleGetContractArtifact(
|
218
|
-
wallet: AccountWallet,
|
219
|
-
params: AztecWalletMethodMap['aztec_getContractArtifact']['params'],
|
220
|
-
): Promise<AztecWalletMethodMap['aztec_getContractArtifact']['result']> {
|
221
|
-
const artifact = await wallet.getContractArtifact(params.id);
|
222
|
-
if (!artifact) throw new AztecWalletError('contractClassNotRegistered', 'aztec_getContractArtifact');
|
223
|
-
return artifact;
|
224
|
-
}
|
225
|
-
|
226
|
-
async function handleIsContractClassPubliclyRegistered(
|
227
|
-
wallet: AccountWallet,
|
228
|
-
params: AztecWalletMethodMap['aztec_isContractClassPubliclyRegistered']['params'],
|
229
|
-
): Promise<AztecWalletMethodMap['aztec_isContractClassPubliclyRegistered']['result']> {
|
230
|
-
return await wallet.isContractClassPubliclyRegistered(params.id);
|
231
|
-
}
|
232
|
-
|
233
|
-
async function handleIsContractPubliclyDeployed(
|
234
|
-
wallet: AccountWallet,
|
235
|
-
params: AztecWalletMethodMap['aztec_isContractPubliclyDeployed']['params'],
|
236
|
-
): Promise<AztecWalletMethodMap['aztec_isContractPubliclyDeployed']['result']> {
|
237
|
-
return await wallet.isContractPubliclyDeployed(params.address);
|
195
|
+
async function handleGetContractMetadata(
|
196
|
+
pxe: PXE,
|
197
|
+
params: AztecWalletMethodMap['aztec_getContractMetadata']['params'],
|
198
|
+
): Promise<AztecWalletMethodMap['aztec_getContractMetadata']['result']> {
|
199
|
+
return await pxe.getContractMetadata(params.address);
|
238
200
|
}
|
239
201
|
|
240
|
-
async function
|
241
|
-
|
242
|
-
params: AztecWalletMethodMap['
|
243
|
-
): Promise<AztecWalletMethodMap['
|
244
|
-
return await
|
202
|
+
async function handleGetContractClassMetadata(
|
203
|
+
pxe: PXE,
|
204
|
+
params: AztecWalletMethodMap['aztec_getContractClassMetadata']['params'],
|
205
|
+
): Promise<AztecWalletMethodMap['aztec_getContractClassMetadata']['result']> {
|
206
|
+
return await pxe.getContractClassMetadata(params.id, params.includeArtifact);
|
245
207
|
}
|
246
208
|
|
247
209
|
async function handleRegisterContract(
|
@@ -481,35 +443,15 @@ export async function aztecWalletHandler<M extends keyof AztecWalletMethodMap>(
|
|
481
443
|
// Contracts methods
|
482
444
|
case 'aztec_getContracts':
|
483
445
|
return handleGetContracts(context.wallet);
|
484
|
-
case '
|
485
|
-
return
|
486
|
-
context.wallet,
|
487
|
-
params as AztecWalletMethodMap['aztec_getContractInstance']['params'],
|
488
|
-
);
|
489
|
-
case 'aztec_getContractClass':
|
490
|
-
return handleGetContractClass(
|
491
|
-
context.wallet,
|
492
|
-
params as AztecWalletMethodMap['aztec_getContractClass']['params'],
|
493
|
-
);
|
494
|
-
case 'aztec_getContractArtifact':
|
495
|
-
return handleGetContractArtifact(
|
496
|
-
context.wallet,
|
497
|
-
params as AztecWalletMethodMap['aztec_getContractArtifact']['params'],
|
498
|
-
);
|
499
|
-
case 'aztec_isContractClassPubliclyRegistered':
|
500
|
-
return handleIsContractClassPubliclyRegistered(
|
501
|
-
context.wallet,
|
502
|
-
params as AztecWalletMethodMap['aztec_isContractClassPubliclyRegistered']['params'],
|
503
|
-
);
|
504
|
-
case 'aztec_isContractPubliclyDeployed':
|
505
|
-
return handleIsContractPubliclyDeployed(
|
446
|
+
case 'aztec_getContractMetadata':
|
447
|
+
return handleGetContractMetadata(
|
506
448
|
context.wallet,
|
507
|
-
params as AztecWalletMethodMap['
|
449
|
+
params as AztecWalletMethodMap['aztec_getContractMetadata']['params'],
|
508
450
|
);
|
509
|
-
case '
|
510
|
-
return
|
451
|
+
case 'aztec_getContractClassMetadata':
|
452
|
+
return handleGetContractClassMetadata(
|
511
453
|
context.wallet,
|
512
|
-
params as AztecWalletMethodMap['
|
454
|
+
params as AztecWalletMethodMap['aztec_getContractClassMetadata']['params'],
|
513
455
|
);
|
514
456
|
case 'aztec_registerContract':
|
515
457
|
return handleRegisterContract(
|
package/src/provider.test.ts
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
import { describe, test, expect, vi, beforeEach } from 'vitest';
|
2
2
|
import { AztecProvider } from './provider.js';
|
3
3
|
import { AztecWalletError, AztecWalletErrorType } from './errors.js';
|
4
|
-
import type { JSONRPCTransport } from '@walletmesh/jsonrpc';
|
5
4
|
import type { ContractInstanceWithAddress, AztecAddress, ContractArtifact } from '@aztec/aztec.js';
|
6
5
|
import { WalletRouterProvider } from '@walletmesh/router';
|
7
6
|
import type { OperationBuilder } from '@walletmesh/router';
|
@@ -65,7 +64,6 @@ describe('AztecProvider', () => {
|
|
65
64
|
test('registers event handlers', () => {
|
66
65
|
// Create a spy on the on method before creating provider
|
67
66
|
const onSpy = vi.spyOn(WalletRouterProvider.prototype, 'on');
|
68
|
-
const provider = new AztecProvider(mockTransport);
|
69
67
|
|
70
68
|
expect(onSpy).toHaveBeenCalledWith('wm_walletStateChanged', expect.any(Function));
|
71
69
|
expect(onSpy).toHaveBeenCalledWith('wm_sessionTerminated', expect.any(Function));
|
@@ -6,7 +6,6 @@ import {
|
|
6
6
|
aztecAddAuthWitnessSerializer,
|
7
7
|
aztecGetAuthWitnessSerializer,
|
8
8
|
} from './account.js';
|
9
|
-
import { decodeBase64 } from './types.js';
|
10
9
|
import { schemas } from '@aztec/foundation/schemas';
|
11
10
|
|
12
11
|
describe('Account Serializers', () => {
|
@@ -17,20 +16,20 @@ describe('Account Serializers', () => {
|
|
17
16
|
const scopes = [await AztecAddress.random(), await AztecAddress.random()];
|
18
17
|
const params = { scopes };
|
19
18
|
|
20
|
-
const serialized = aztecSetScopesSerializer.params.serialize(METHOD, params);
|
19
|
+
const serialized = await aztecSetScopesSerializer.params.serialize(METHOD, params);
|
21
20
|
expect(serialized.method).toBe(METHOD);
|
22
21
|
|
23
|
-
const deserialized = aztecSetScopesSerializer.params.deserialize(METHOD, serialized);
|
22
|
+
const deserialized = await aztecSetScopesSerializer.params.deserialize(METHOD, serialized);
|
24
23
|
expect(deserialized.scopes.map((s) => s.toString())).toEqual(scopes.map((s) => s.toString()));
|
25
24
|
});
|
26
25
|
|
27
|
-
it('should serialize and deserialize result', () => {
|
26
|
+
it('should serialize and deserialize result', async () => {
|
28
27
|
const result = true;
|
29
28
|
|
30
|
-
const serialized = aztecSetScopesSerializer.result.serialize(METHOD, result);
|
29
|
+
const serialized = await aztecSetScopesSerializer.result.serialize(METHOD, result);
|
31
30
|
expect(serialized.method).toBe(METHOD);
|
32
31
|
|
33
|
-
const deserialized = aztecSetScopesSerializer.result.deserialize(METHOD, serialized);
|
32
|
+
const deserialized = await aztecSetScopesSerializer.result.deserialize(METHOD, serialized);
|
34
33
|
expect(deserialized).toBe(result);
|
35
34
|
});
|
36
35
|
});
|
@@ -43,10 +42,10 @@ describe('Account Serializers', () => {
|
|
43
42
|
const partialAddress = await Fr.random();
|
44
43
|
const params = { secretKey, partialAddress };
|
45
44
|
|
46
|
-
const serialized = aztecRegisterAccountSerializer.params.serialize(METHOD, params);
|
45
|
+
const serialized = await aztecRegisterAccountSerializer.params.serialize(METHOD, params);
|
47
46
|
expect(serialized.method).toBe(METHOD);
|
48
47
|
|
49
|
-
const deserialized = aztecRegisterAccountSerializer.params.deserialize(METHOD, serialized);
|
48
|
+
const deserialized = await aztecRegisterAccountSerializer.params.deserialize(METHOD, serialized);
|
50
49
|
expect(deserialized.secretKey.toString()).toBe(secretKey.toString());
|
51
50
|
expect(deserialized.partialAddress.toString()).toBe(partialAddress.toString());
|
52
51
|
});
|
@@ -54,10 +53,10 @@ describe('Account Serializers', () => {
|
|
54
53
|
it('should serialize and deserialize result', async () => {
|
55
54
|
const result = await CompleteAddress.random();
|
56
55
|
|
57
|
-
const serialized = aztecRegisterAccountSerializer.result.serialize(METHOD, result);
|
56
|
+
const serialized = await aztecRegisterAccountSerializer.result.serialize(METHOD, result);
|
58
57
|
expect(serialized.method).toBe(METHOD);
|
59
58
|
|
60
|
-
const deserialized = aztecRegisterAccountSerializer.result.deserialize(METHOD, serialized);
|
59
|
+
const deserialized = await aztecRegisterAccountSerializer.result.deserialize(METHOD, serialized);
|
61
60
|
expect(deserialized.toString()).toBe(result.toString());
|
62
61
|
});
|
63
62
|
});
|
@@ -69,20 +68,20 @@ describe('Account Serializers', () => {
|
|
69
68
|
const authWitness = await AuthWitness.random();
|
70
69
|
const params = { authWitness };
|
71
70
|
|
72
|
-
const serialized = aztecAddAuthWitnessSerializer.params.serialize(METHOD, params);
|
71
|
+
const serialized = await aztecAddAuthWitnessSerializer.params.serialize(METHOD, params);
|
73
72
|
expect(serialized.method).toBe(METHOD);
|
74
73
|
|
75
|
-
const deserialized = aztecAddAuthWitnessSerializer.params.deserialize(METHOD, serialized);
|
74
|
+
const deserialized = await aztecAddAuthWitnessSerializer.params.deserialize(METHOD, serialized);
|
76
75
|
expect(deserialized.authWitness.toString()).toBe(authWitness.toString());
|
77
76
|
});
|
78
77
|
|
79
|
-
it('should serialize and deserialize result', () => {
|
78
|
+
it('should serialize and deserialize result', async () => {
|
80
79
|
const result = true;
|
81
80
|
|
82
|
-
const serialized = aztecAddAuthWitnessSerializer.result.serialize(METHOD, result);
|
81
|
+
const serialized = await aztecAddAuthWitnessSerializer.result.serialize(METHOD, result);
|
83
82
|
expect(serialized.method).toBe(METHOD);
|
84
83
|
|
85
|
-
const deserialized = aztecAddAuthWitnessSerializer.result.deserialize(METHOD, serialized);
|
84
|
+
const deserialized = await aztecAddAuthWitnessSerializer.result.deserialize(METHOD, serialized);
|
86
85
|
expect(deserialized).toBe(result);
|
87
86
|
});
|
88
87
|
});
|
@@ -94,20 +93,20 @@ describe('Account Serializers', () => {
|
|
94
93
|
const messageHash = await Fr.random();
|
95
94
|
const params = { messageHash };
|
96
95
|
|
97
|
-
const serialized = aztecGetAuthWitnessSerializer.params.serialize(METHOD, params);
|
96
|
+
const serialized = await aztecGetAuthWitnessSerializer.params.serialize(METHOD, params);
|
98
97
|
expect(serialized.method).toBe(METHOD);
|
99
98
|
|
100
|
-
const deserialized = aztecGetAuthWitnessSerializer.params.deserialize(METHOD, serialized);
|
99
|
+
const deserialized = await aztecGetAuthWitnessSerializer.params.deserialize(METHOD, serialized);
|
101
100
|
expect(deserialized.messageHash.toString()).toBe(messageHash.toString());
|
102
101
|
});
|
103
102
|
|
104
103
|
it('should serialize and deserialize result', async () => {
|
105
104
|
const result = [await Fr.random(), await Fr.random()];
|
106
105
|
|
107
|
-
const serialized = aztecGetAuthWitnessSerializer.result.serialize(METHOD, result);
|
106
|
+
const serialized = await aztecGetAuthWitnessSerializer.result.serialize(METHOD, result);
|
108
107
|
expect(serialized.method).toBe(METHOD);
|
109
108
|
|
110
|
-
const deserialized = aztecGetAuthWitnessSerializer.result.deserialize(METHOD, serialized);
|
109
|
+
const deserialized = await aztecGetAuthWitnessSerializer.result.deserialize(METHOD, serialized);
|
111
110
|
expect(deserialized.map((w) => w.toString())).toEqual(result.map((w) => w.toString()));
|
112
111
|
});
|
113
112
|
});
|
@@ -116,7 +115,7 @@ describe('Account Serializers', () => {
|
|
116
115
|
it('should properly encode and decode data', async () => {
|
117
116
|
const messageHash = await Fr.random();
|
118
117
|
|
119
|
-
const serialized = aztecGetAuthWitnessSerializer.params.serialize('aztec_getAuthWitness', {
|
118
|
+
const serialized = await aztecGetAuthWitnessSerializer.params.serialize('aztec_getAuthWitness', {
|
120
119
|
messageHash,
|
121
120
|
});
|
122
121
|
const decoded = schemas.Fr.parse(JSON.parse(serialized.serialized));
|
@@ -21,17 +21,17 @@ export class AztecSetScopesSerializer
|
|
21
21
|
* @param value - The parameters containing an array of Aztec addresses representing scopes
|
22
22
|
* @returns Serialized scope data
|
23
23
|
*/
|
24
|
-
serialize: (
|
24
|
+
serialize: async (
|
25
25
|
method: string,
|
26
26
|
value: AztecWalletMethodMap['aztec_setScopes']['params'],
|
27
|
-
): JSONRPCSerializedData => {
|
27
|
+
): Promise<JSONRPCSerializedData> => {
|
28
28
|
const { scopes } = value;
|
29
|
-
return {
|
29
|
+
return Promise.resolve({
|
30
30
|
method,
|
31
31
|
serialized: JSON.stringify({
|
32
32
|
scopes: scopes.map((s) => s.toString()),
|
33
33
|
}),
|
34
|
-
};
|
34
|
+
});
|
35
35
|
},
|
36
36
|
/**
|
37
37
|
* Deserializes scope setting parameters from RPC transport.
|
@@ -39,14 +39,14 @@ export class AztecSetScopesSerializer
|
|
39
39
|
* @param data - The serialized scope data
|
40
40
|
* @returns Deserialized scope parameters
|
41
41
|
*/
|
42
|
-
deserialize: (
|
42
|
+
deserialize: async (
|
43
43
|
_method: string,
|
44
44
|
data: JSONRPCSerializedData,
|
45
|
-
): AztecWalletMethodMap['aztec_setScopes']['params'] => {
|
45
|
+
): Promise<AztecWalletMethodMap['aztec_setScopes']['params']> => {
|
46
46
|
const { scopes } = JSON.parse(data.serialized);
|
47
|
-
return {
|
47
|
+
return Promise.resolve({
|
48
48
|
scopes: scopes.map((s: string) => AztecAddress.fromString(s)),
|
49
|
-
};
|
49
|
+
});
|
50
50
|
},
|
51
51
|
};
|
52
52
|
|
@@ -57,11 +57,11 @@ export class AztecSetScopesSerializer
|
|
57
57
|
* @param value - Boolean indicating success of the scope setting operation
|
58
58
|
* @returns Serialized result
|
59
59
|
*/
|
60
|
-
serialize: (method: string, value: boolean): JSONRPCSerializedData => {
|
61
|
-
return {
|
60
|
+
serialize: async (method: string, value: boolean): Promise<JSONRPCSerializedData> => {
|
61
|
+
return Promise.resolve({
|
62
62
|
method,
|
63
63
|
serialized: JSON.stringify(value),
|
64
|
-
};
|
64
|
+
});
|
65
65
|
},
|
66
66
|
/**
|
67
67
|
* Deserializes the scope setting result.
|
@@ -69,8 +69,8 @@ export class AztecSetScopesSerializer
|
|
69
69
|
* @param data - The serialized result data
|
70
70
|
* @returns Boolean indicating success
|
71
71
|
*/
|
72
|
-
deserialize: (_method: string, data: JSONRPCSerializedData): boolean => {
|
73
|
-
return JSON.parse(data.serialized);
|
72
|
+
deserialize: async (_method: string, data: JSONRPCSerializedData): Promise<boolean> => {
|
73
|
+
return Promise.resolve(JSON.parse(data.serialized));
|
74
74
|
},
|
75
75
|
};
|
76
76
|
}
|
@@ -93,18 +93,18 @@ export class AztecRegisterAccountSerializer
|
|
93
93
|
* @param value - The parameters containing secret key and partial address
|
94
94
|
* @returns Serialized registration data
|
95
95
|
*/
|
96
|
-
serialize: (
|
96
|
+
serialize: async (
|
97
97
|
method: string,
|
98
98
|
value: AztecWalletMethodMap['aztec_registerAccount']['params'],
|
99
|
-
): JSONRPCSerializedData => {
|
99
|
+
): Promise<JSONRPCSerializedData> => {
|
100
100
|
const { secretKey, partialAddress } = value;
|
101
|
-
return {
|
101
|
+
return Promise.resolve({
|
102
102
|
method,
|
103
103
|
serialized: JSON.stringify({
|
104
104
|
secretKey: secretKey.toString(),
|
105
105
|
partialAddress: partialAddress.toString(),
|
106
106
|
}),
|
107
|
-
};
|
107
|
+
});
|
108
108
|
},
|
109
109
|
/**
|
110
110
|
* Deserializes account registration parameters from RPC transport.
|
@@ -112,15 +112,15 @@ export class AztecRegisterAccountSerializer
|
|
112
112
|
* @param data - The serialized registration data
|
113
113
|
* @returns Deserialized registration parameters
|
114
114
|
*/
|
115
|
-
deserialize: (
|
115
|
+
deserialize: async (
|
116
116
|
_method: string,
|
117
117
|
data: JSONRPCSerializedData,
|
118
|
-
): AztecWalletMethodMap['aztec_registerAccount']['params'] => {
|
118
|
+
): Promise<AztecWalletMethodMap['aztec_registerAccount']['params']> => {
|
119
119
|
const { secretKey, partialAddress } = JSON.parse(data.serialized);
|
120
|
-
return {
|
120
|
+
return Promise.resolve({
|
121
121
|
secretKey: Fr.fromString(secretKey),
|
122
122
|
partialAddress: Fr.fromString(partialAddress) as PartialAddress,
|
123
|
-
};
|
123
|
+
});
|
124
124
|
},
|
125
125
|
};
|
126
126
|
|
@@ -131,11 +131,11 @@ export class AztecRegisterAccountSerializer
|
|
131
131
|
* @param value - The complete address of the registered account
|
132
132
|
* @returns Serialized complete address
|
133
133
|
*/
|
134
|
-
serialize: (method: string, value: CompleteAddress): JSONRPCSerializedData => {
|
135
|
-
return {
|
134
|
+
serialize: async (method: string, value: CompleteAddress): Promise<JSONRPCSerializedData> => {
|
135
|
+
return Promise.resolve({
|
136
136
|
method,
|
137
137
|
serialized: JSON.stringify(value.toString()),
|
138
|
-
};
|
138
|
+
});
|
139
139
|
},
|
140
140
|
/**
|
141
141
|
* Deserializes the account registration result.
|
@@ -143,8 +143,8 @@ export class AztecRegisterAccountSerializer
|
|
143
143
|
* @param data - The serialized complete address
|
144
144
|
* @returns Deserialized complete address
|
145
145
|
*/
|
146
|
-
deserialize: (_method: string, data: JSONRPCSerializedData): CompleteAddress => {
|
147
|
-
return CompleteAddress.fromString(JSON.parse(data.serialized));
|
146
|
+
deserialize: async (_method: string, data: JSONRPCSerializedData): Promise<CompleteAddress> => {
|
147
|
+
return Promise.resolve(CompleteAddress.fromString(JSON.parse(data.serialized)));
|
148
148
|
},
|
149
149
|
};
|
150
150
|
}
|
@@ -167,15 +167,15 @@ export class AztecAddAuthWitnessSerializer
|
|
167
167
|
* @param value - The parameters containing the auth witness to add
|
168
168
|
* @returns Serialized auth witness data
|
169
169
|
*/
|
170
|
-
serialize: (
|
170
|
+
serialize: async (
|
171
171
|
method: string,
|
172
172
|
value: AztecWalletMethodMap['aztec_addAuthWitness']['params'],
|
173
|
-
): JSONRPCSerializedData => {
|
173
|
+
): Promise<JSONRPCSerializedData> => {
|
174
174
|
const { authWitness } = value;
|
175
|
-
return {
|
175
|
+
return Promise.resolve({
|
176
176
|
method,
|
177
177
|
serialized: JSON.stringify(authWitness.toString()),
|
178
|
-
};
|
178
|
+
});
|
179
179
|
},
|
180
180
|
/**
|
181
181
|
* Deserializes auth witness addition parameters from RPC transport.
|
@@ -183,12 +183,12 @@ export class AztecAddAuthWitnessSerializer
|
|
183
183
|
* @param data - The serialized auth witness data
|
184
184
|
* @returns Deserialized auth witness parameters
|
185
185
|
*/
|
186
|
-
deserialize: (
|
186
|
+
deserialize: async (
|
187
187
|
_method: string,
|
188
188
|
data: JSONRPCSerializedData,
|
189
|
-
): AztecWalletMethodMap['aztec_addAuthWitness']['params'] => {
|
189
|
+
): Promise<AztecWalletMethodMap['aztec_addAuthWitness']['params']> => {
|
190
190
|
const authWitness = AuthWitness.fromString(JSON.parse(data.serialized));
|
191
|
-
return { authWitness };
|
191
|
+
return Promise.resolve({ authWitness });
|
192
192
|
},
|
193
193
|
};
|
194
194
|
|
@@ -199,11 +199,11 @@ export class AztecAddAuthWitnessSerializer
|
|
199
199
|
* @param value - Boolean indicating success of the witness addition
|
200
200
|
* @returns Serialized result
|
201
201
|
*/
|
202
|
-
serialize: (method: string, value: boolean): JSONRPCSerializedData => {
|
203
|
-
return {
|
202
|
+
serialize: async (method: string, value: boolean): Promise<JSONRPCSerializedData> => {
|
203
|
+
return Promise.resolve({
|
204
204
|
method,
|
205
205
|
serialized: JSON.stringify(value),
|
206
|
-
};
|
206
|
+
});
|
207
207
|
},
|
208
208
|
/**
|
209
209
|
* Deserializes the auth witness addition result.
|
@@ -211,8 +211,8 @@ export class AztecAddAuthWitnessSerializer
|
|
211
211
|
* @param data - The serialized result data
|
212
212
|
* @returns Boolean indicating success
|
213
213
|
*/
|
214
|
-
deserialize: (_method: string, data: JSONRPCSerializedData): boolean => {
|
215
|
-
return JSON.parse(data.serialized);
|
214
|
+
deserialize: async (_method: string, data: JSONRPCSerializedData): Promise<boolean> => {
|
215
|
+
return Promise.resolve(JSON.parse(data.serialized));
|
216
216
|
},
|
217
217
|
};
|
218
218
|
}
|
@@ -235,15 +235,15 @@ export class AztecGetAuthWitnessSerializer
|
|
235
235
|
* @param value - The parameters containing the message hash to look up
|
236
236
|
* @returns Serialized message hash data
|
237
237
|
*/
|
238
|
-
serialize: (
|
238
|
+
serialize: async (
|
239
239
|
method: string,
|
240
240
|
value: AztecWalletMethodMap['aztec_getAuthWitness']['params'],
|
241
|
-
): JSONRPCSerializedData => {
|
241
|
+
): Promise<JSONRPCSerializedData> => {
|
242
242
|
const { messageHash } = value;
|
243
|
-
return {
|
243
|
+
return Promise.resolve({
|
244
244
|
method,
|
245
245
|
serialized: JSON.stringify(messageHash.toString()),
|
246
|
-
};
|
246
|
+
});
|
247
247
|
},
|
248
248
|
/**
|
249
249
|
* Deserializes auth witness retrieval parameters from RPC transport.
|
@@ -251,12 +251,12 @@ export class AztecGetAuthWitnessSerializer
|
|
251
251
|
* @param data - The serialized message hash data
|
252
252
|
* @returns Deserialized message hash parameters
|
253
253
|
*/
|
254
|
-
deserialize: (
|
254
|
+
deserialize: async (
|
255
255
|
_method: string,
|
256
256
|
data: JSONRPCSerializedData,
|
257
|
-
): AztecWalletMethodMap['aztec_getAuthWitness']['params'] => {
|
257
|
+
): Promise<AztecWalletMethodMap['aztec_getAuthWitness']['params']> => {
|
258
258
|
const messageHash = Fr.fromString(JSON.parse(data.serialized));
|
259
|
-
return { messageHash };
|
259
|
+
return Promise.resolve({ messageHash });
|
260
260
|
},
|
261
261
|
};
|
262
262
|
|
@@ -267,14 +267,14 @@ export class AztecGetAuthWitnessSerializer
|
|
267
267
|
* @param value - Array of field elements representing auth witnesses
|
268
268
|
* @returns Serialized witness array
|
269
269
|
*/
|
270
|
-
serialize: (
|
270
|
+
serialize: async (
|
271
271
|
method: string,
|
272
272
|
value: AztecWalletMethodMap['aztec_getAuthWitness']['result'],
|
273
|
-
): JSONRPCSerializedData => {
|
274
|
-
return {
|
273
|
+
): Promise<JSONRPCSerializedData> => {
|
274
|
+
return Promise.resolve({
|
275
275
|
method,
|
276
276
|
serialized: JSON.stringify(value.map((w) => w.toString())),
|
277
|
-
};
|
277
|
+
});
|
278
278
|
},
|
279
279
|
/**
|
280
280
|
* Deserializes the auth witness retrieval result.
|
@@ -282,11 +282,11 @@ export class AztecGetAuthWitnessSerializer
|
|
282
282
|
* @param data - The serialized witness array data
|
283
283
|
* @returns Array of deserialized field elements
|
284
284
|
*/
|
285
|
-
deserialize: (
|
285
|
+
deserialize: async (
|
286
286
|
_method: string,
|
287
287
|
data: JSONRPCSerializedData,
|
288
|
-
): AztecWalletMethodMap['aztec_getAuthWitness']['result'] => {
|
289
|
-
return JSON.parse(data.serialized).map((w: string) => Fr.fromString(w));
|
288
|
+
): Promise<AztecWalletMethodMap['aztec_getAuthWitness']['result']> => {
|
289
|
+
return Promise.resolve(JSON.parse(data.serialized).map((w: string) => Fr.fromString(w)));
|
290
290
|
},
|
291
291
|
};
|
292
292
|
}
|