@walletmesh/aztec-rpc-wallet 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
}
|