@walletmesh/aztec-rpc-wallet 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/LICENSE +201 -0
  3. package/README.md +260 -0
  4. package/dist/.tsbuildinfo +1 -0
  5. package/dist/aztecRemoteWallet.d.ts +73 -0
  6. package/dist/aztecRemoteWallet.d.ts.map +1 -0
  7. package/dist/aztecRemoteWallet.js +354 -0
  8. package/dist/chainProvider.d.ts +56 -0
  9. package/dist/chainProvider.d.ts.map +1 -0
  10. package/dist/chainProvider.js +98 -0
  11. package/dist/contractArtifactCache.d.ts +50 -0
  12. package/dist/contractArtifactCache.d.ts.map +1 -0
  13. package/dist/contractArtifactCache.js +66 -0
  14. package/dist/errors.d.ts +50 -0
  15. package/dist/errors.d.ts.map +1 -0
  16. package/dist/errors.js +62 -0
  17. package/dist/handlers/aztecAccountWallet.d.ts +4 -0
  18. package/dist/handlers/aztecAccountWallet.d.ts.map +1 -0
  19. package/dist/handlers/aztecAccountWallet.js +329 -0
  20. package/dist/handlers/transactions.d.ts +21 -0
  21. package/dist/handlers/transactions.d.ts.map +1 -0
  22. package/dist/handlers/transactions.js +90 -0
  23. package/dist/handlers.d.ts +27 -0
  24. package/dist/handlers.d.ts.map +1 -0
  25. package/dist/handlers.js +55 -0
  26. package/dist/index.d.ts +58 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +33 -0
  29. package/dist/provider.d.ts +105 -0
  30. package/dist/provider.d.ts.map +1 -0
  31. package/dist/provider.js +160 -0
  32. package/dist/serializers/account.d.ts +167 -0
  33. package/dist/serializers/account.d.ts.map +1 -0
  34. package/dist/serializers/account.js +245 -0
  35. package/dist/serializers/contract-utils.d.ts +40 -0
  36. package/dist/serializers/contract-utils.d.ts.map +1 -0
  37. package/dist/serializers/contract-utils.js +102 -0
  38. package/dist/serializers/contract.d.ts +168 -0
  39. package/dist/serializers/contract.d.ts.map +1 -0
  40. package/dist/serializers/contract.js +268 -0
  41. package/dist/serializers/core.d.ts +110 -0
  42. package/dist/serializers/core.d.ts.map +1 -0
  43. package/dist/serializers/core.js +130 -0
  44. package/dist/serializers/index.d.ts +28 -0
  45. package/dist/serializers/index.d.ts.map +1 -0
  46. package/dist/serializers/index.js +159 -0
  47. package/dist/serializers/log.d.ts +113 -0
  48. package/dist/serializers/log.d.ts.map +1 -0
  49. package/dist/serializers/log.js +231 -0
  50. package/dist/serializers/note.d.ts +127 -0
  51. package/dist/serializers/note.d.ts.map +1 -0
  52. package/dist/serializers/note.js +182 -0
  53. package/dist/serializers/transaction-utils.d.ts +107 -0
  54. package/dist/serializers/transaction-utils.d.ts.map +1 -0
  55. package/dist/serializers/transaction-utils.js +130 -0
  56. package/dist/serializers/transaction.d.ts +103 -0
  57. package/dist/serializers/transaction.d.ts.map +1 -0
  58. package/dist/serializers/transaction.js +238 -0
  59. package/dist/serializers/types.d.ts +49 -0
  60. package/dist/serializers/types.d.ts.map +1 -0
  61. package/dist/serializers/types.js +22 -0
  62. package/dist/types.d.ts +391 -0
  63. package/dist/types.d.ts.map +1 -0
  64. package/dist/types.js +8 -0
  65. package/dist/wallet.d.ts +62 -0
  66. package/dist/wallet.d.ts.map +1 -0
  67. package/dist/wallet.js +77 -0
  68. package/package.json +44 -0
  69. package/src/aztecRemoteWallet.test.ts +542 -0
  70. package/src/aztecRemoteWallet.ts +484 -0
  71. package/src/chainProvider.test.ts +322 -0
  72. package/src/chainProvider.ts +122 -0
  73. package/src/contractArtifactCache.test.ts +126 -0
  74. package/src/contractArtifactCache.ts +75 -0
  75. package/src/errors.ts +71 -0
  76. package/src/handlers/aztecAccountWallet.test.ts +720 -0
  77. package/src/handlers/aztecAccountWallet.ts +593 -0
  78. package/src/handlers/transactions.ts +110 -0
  79. package/src/handlers.test.ts +270 -0
  80. package/src/handlers.ts +70 -0
  81. package/src/index.test.ts +23 -0
  82. package/src/index.ts +64 -0
  83. package/src/provider.test.ts +276 -0
  84. package/src/provider.ts +189 -0
  85. package/src/serializers/account.test.ts +125 -0
  86. package/src/serializers/account.ts +319 -0
  87. package/src/serializers/contract-utils.ts +104 -0
  88. package/src/serializers/contract.test.ts +162 -0
  89. package/src/serializers/contract.ts +350 -0
  90. package/src/serializers/core.test.ts +56 -0
  91. package/src/serializers/core.ts +141 -0
  92. package/src/serializers/index.test.ts +122 -0
  93. package/src/serializers/index.ts +213 -0
  94. package/src/serializers/log.test.ts +119 -0
  95. package/src/serializers/log.ts +283 -0
  96. package/src/serializers/note.test.ts +100 -0
  97. package/src/serializers/note.ts +227 -0
  98. package/src/serializers/transaction-utils.ts +237 -0
  99. package/src/serializers/transaction.test.ts +153 -0
  100. package/src/serializers/transaction.ts +342 -0
  101. package/src/serializers/types.ts +58 -0
  102. package/src/types.ts +295 -0
  103. package/src/wallet.test.ts +275 -0
  104. package/src/wallet.ts +94 -0
  105. package/tsconfig.build.json +6 -0
  106. package/tsconfig.json +11 -0
  107. package/typedoc.json +15 -0
  108. package/vitest.config.ts +10 -0
@@ -0,0 +1,391 @@
1
+ import type { AuthWitness, AztecAddress, ContractArtifact, ContractClassWithId, ContractInstanceWithAddress, ExtendedNote, Fr, PXE, TxExecutionRequest, TxHash, TxReceipt, L2Block, LogFilter, Point, SiblingPath, PartialAddress, CompleteAddress, NodeInfo, AccountWallet, Tx } from '@aztec/aztec.js';
2
+ import type { IntentAction, IntentInnerHash } from '@aztec/aztec.js/utils';
3
+ import type { ExecutionRequestInit } from '@aztec/aztec.js/entrypoint';
4
+ import type { AbiDecoded } from '@aztec/foundation/abi';
5
+ import type { InBlock, IncomingNotesFilter, EventMetadataDefinition, PrivateExecutionResult, TxEffect, TxProvingResult, UniqueNote, GetUnencryptedLogsResponse, PXEInfo, TxSimulationResult } from '@aztec/circuit-types';
6
+ import type { GasFees, L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/circuits.js';
7
+ import type { JSONRPCEventMap, JSONRPCMiddleware } from '@walletmesh/jsonrpc';
8
+ import type { JSONRPCWalletClient, WalletMethodMap } from '@walletmesh/router';
9
+ import type { ContractArtifactCache } from './contractArtifactCache.js';
10
+ /**
11
+ * Represents a single function call to a contract.
12
+ * @public
13
+ */
14
+ export type TransactionFunctionCall = {
15
+ /** The address of the contract to interact with */
16
+ contractAddress: string;
17
+ /** The name of the function to call */
18
+ functionName: string;
19
+ /** The arguments to pass to the function */
20
+ args: unknown[];
21
+ };
22
+ /**
23
+ * Parameters for sending transactions.
24
+ * @public
25
+ */
26
+ export type TransactionParams = {
27
+ /** Array of function calls to execute */
28
+ functionCalls: TransactionFunctionCall[];
29
+ /** Optional array of authorization witnesses for the transaction */
30
+ authwits?: string[];
31
+ };
32
+ export declare const BASE_WALLET_METHODS: (keyof AztecWalletBaseMethodMap)[];
33
+ /**
34
+ * A mapping of JSON-RPC methods to their parameters and return types for Aztec Wallets.
35
+ *
36
+ * This extends the base WalletMethodMap with Aztec-specific methods.
37
+ * @public
38
+ */
39
+ export interface AztecWalletBaseMethodMap extends WalletMethodMap {
40
+ /**
41
+ * Connects to the Aztec network.
42
+ * @returns A boolean indicating if the connection was successful
43
+ */
44
+ aztec_connect: {
45
+ result: boolean;
46
+ };
47
+ /**
48
+ * Gets the account address from the wallet.
49
+ * @returns The account address as a string
50
+ */
51
+ aztec_getAccount: {
52
+ result: string;
53
+ };
54
+ /**
55
+ * Sends transactions to the Aztec network.
56
+ * @param params - The transactions to execute and optional authorization witnesses
57
+ * @returns The transaction hash as a string
58
+ */
59
+ aztec_sendTransaction: {
60
+ params: TransactionParams;
61
+ result: string;
62
+ };
63
+ /**
64
+ * Simulates a transaction without executing it.
65
+ * @param params - The transaction to simulate
66
+ * @returns The simulation result
67
+ */
68
+ aztec_simulateTransaction: {
69
+ params: TransactionFunctionCall;
70
+ result: unknown;
71
+ };
72
+ /**
73
+ * Returns the list of supported methods for the wallet.
74
+ * @returns An array of supported methods
75
+ */
76
+ wm_getSupportedMethods: {
77
+ result: string[];
78
+ };
79
+ }
80
+ export interface AztecWalletEventMap extends JSONRPCEventMap {
81
+ }
82
+ /**
83
+ * Holds the context passed through RPC middleware.
84
+ * @public
85
+ */
86
+ export type AztecWalletContext = Record<string, unknown> & {
87
+ /** The PXE instance for the wallet */
88
+ pxe: PXE;
89
+ wallet: AccountWallet;
90
+ contractArtifactCache: ContractArtifactCache;
91
+ };
92
+ /**
93
+ * Type for Aztec Router Wallet middleware.
94
+ * @public
95
+ */
96
+ export type AztecWalletMiddleware = JSONRPCMiddleware<AztecWalletBaseMethodMap, AztecWalletContext>;
97
+ /**
98
+ * Type for Aztec Chain Wallet middleware.
99
+ */
100
+ export type AztecChainWalletMiddleware = JSONRPCMiddleware<AztecWalletMethodMap, AztecWalletContext>;
101
+ /**
102
+ * Type for Aztec wallet router client.
103
+ * @public
104
+ */
105
+ export type AztecWalletRouterClient = JSONRPCWalletClient<AztecWalletMethodMap>;
106
+ /**
107
+ * Type for Aztec wallet RPC method map.
108
+ * This extends the AztecWalletBaseMethodMap with the methods used in by Aztec's `AccountWallet`
109
+ */
110
+ export interface AztecWalletMethodMap extends AztecWalletBaseMethodMap {
111
+ aztec_getBlock: {
112
+ params: {
113
+ number: number;
114
+ };
115
+ result: L2Block;
116
+ };
117
+ aztec_getBlockNumber: {
118
+ result: number;
119
+ };
120
+ aztec_getChainId: {
121
+ result: number;
122
+ };
123
+ aztec_getVersion: {
124
+ result: number;
125
+ };
126
+ aztec_getNodeInfo: {
127
+ result: NodeInfo;
128
+ };
129
+ aztec_getProvenBlockNumber: {
130
+ result: number;
131
+ };
132
+ aztec_getPXEInfo: {
133
+ result: PXEInfo;
134
+ };
135
+ aztec_getCurrentBaseFees: {
136
+ result: GasFees;
137
+ };
138
+ aztec_setScopes: {
139
+ params: {
140
+ scopes: AztecAddress[];
141
+ };
142
+ result: boolean;
143
+ };
144
+ aztec_getScopes: {
145
+ result: AztecAddress[];
146
+ };
147
+ aztec_isL1ToL2MessageSynced: {
148
+ params: {
149
+ l1ToL2Message: Fr;
150
+ };
151
+ result: boolean;
152
+ };
153
+ aztec_getL1ToL2MembershipWitness: {
154
+ params: {
155
+ contractAddress: AztecAddress;
156
+ messageHash: Fr;
157
+ secret: Fr;
158
+ };
159
+ result: [bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>];
160
+ };
161
+ aztec_addCapsule: {
162
+ params: {
163
+ capsule: Fr[];
164
+ };
165
+ result: boolean;
166
+ };
167
+ aztec_getAddress: {
168
+ result: AztecAddress;
169
+ };
170
+ aztec_getCompleteAddress: {
171
+ result: CompleteAddress;
172
+ };
173
+ aztec_registerAccount: {
174
+ params: {
175
+ secretKey: Fr;
176
+ partialAddress: PartialAddress;
177
+ };
178
+ result: CompleteAddress;
179
+ };
180
+ aztec_getRegisteredAccounts: {
181
+ result: CompleteAddress[];
182
+ };
183
+ aztec_addAuthWitness: {
184
+ params: {
185
+ authWitness: AuthWitness;
186
+ };
187
+ result: boolean;
188
+ };
189
+ aztec_getAuthWitness: {
190
+ params: {
191
+ messageHash: Fr;
192
+ };
193
+ result: Fr[];
194
+ };
195
+ aztec_createAuthWit: {
196
+ params: {
197
+ intent: Fr | Buffer | IntentAction | IntentInnerHash;
198
+ };
199
+ result: AuthWitness;
200
+ };
201
+ /**
202
+ * Registers a contact in the user's PXE
203
+ * @param params - The sender (contact) address to register
204
+ * @returns True if registration was successful
205
+ */
206
+ aztec_registerSender: {
207
+ params: {
208
+ sender: AztecAddress;
209
+ };
210
+ result: AztecAddress;
211
+ };
212
+ aztec_getSenders: {
213
+ result: AztecAddress[];
214
+ };
215
+ aztec_removeSender: {
216
+ params: {
217
+ sender: AztecAddress;
218
+ };
219
+ result: boolean;
220
+ };
221
+ aztec_getContracts: {
222
+ result: AztecAddress[];
223
+ };
224
+ aztec_getContractInstance: {
225
+ params: {
226
+ address: AztecAddress;
227
+ };
228
+ result: ContractInstanceWithAddress;
229
+ };
230
+ aztec_getContractClass: {
231
+ params: {
232
+ id: Fr;
233
+ };
234
+ result: ContractClassWithId;
235
+ };
236
+ aztec_getContractArtifact: {
237
+ params: {
238
+ id: Fr;
239
+ };
240
+ result: ContractArtifact;
241
+ };
242
+ aztec_isContractClassPubliclyRegistered: {
243
+ params: {
244
+ id: Fr;
245
+ };
246
+ result: boolean;
247
+ };
248
+ aztec_isContractPubliclyDeployed: {
249
+ params: {
250
+ address: AztecAddress;
251
+ };
252
+ result: boolean;
253
+ };
254
+ aztec_isContractInitialized: {
255
+ params: {
256
+ address: AztecAddress;
257
+ };
258
+ result: boolean;
259
+ };
260
+ /**
261
+ * Registers a contract instance in the user's PXE.
262
+ * @param params - The contract details to register
263
+ * @returns True if registration was successful
264
+ */
265
+ aztec_registerContract: {
266
+ params: {
267
+ instance: ContractInstanceWithAddress;
268
+ artifact?: ContractArtifact;
269
+ };
270
+ result: boolean;
271
+ };
272
+ /**
273
+ * Registers a contract class in the user's PXE.
274
+ * @param params - The contract artifact to register
275
+ * @returns True if registration was successful
276
+ */
277
+ aztec_registerContractClass: {
278
+ params: {
279
+ artifact: ContractArtifact;
280
+ };
281
+ result: boolean;
282
+ };
283
+ aztec_getPublicStorageAt: {
284
+ params: {
285
+ contract: AztecAddress;
286
+ storageSlot: Fr;
287
+ };
288
+ result: any;
289
+ };
290
+ aztec_sendTx: {
291
+ params: {
292
+ tx: Tx;
293
+ };
294
+ result: TxHash;
295
+ };
296
+ aztec_createTxExecutionRequest: {
297
+ params: {
298
+ exec: ExecutionRequestInit;
299
+ };
300
+ result: TxExecutionRequest;
301
+ };
302
+ aztec_proveTx: {
303
+ params: {
304
+ txRequest: TxExecutionRequest;
305
+ privateExecutionResult: PrivateExecutionResult;
306
+ };
307
+ result: TxProvingResult;
308
+ };
309
+ aztec_getTxEffect: {
310
+ params: {
311
+ txHash: TxHash;
312
+ };
313
+ result: InBlock<TxEffect>;
314
+ };
315
+ aztec_getTxReceipt: {
316
+ params: {
317
+ txHash: TxHash;
318
+ };
319
+ result: TxReceipt;
320
+ };
321
+ aztec_simulateTx: {
322
+ params: {
323
+ txRequest: TxExecutionRequest;
324
+ simulatePublic: boolean;
325
+ msgSender?: AztecAddress;
326
+ skipTxValidation?: boolean;
327
+ enforceFeePayment?: boolean;
328
+ profile?: boolean;
329
+ };
330
+ result: TxSimulationResult;
331
+ };
332
+ aztec_simulateUnconstrained: {
333
+ params: {
334
+ functionName: string;
335
+ args: unknown[];
336
+ to: AztecAddress;
337
+ from?: AztecAddress;
338
+ };
339
+ result: AbiDecoded;
340
+ };
341
+ aztec_getIncomingNotes: {
342
+ params: {
343
+ filter: IncomingNotesFilter;
344
+ };
345
+ result: UniqueNote[];
346
+ };
347
+ aztec_addNote: {
348
+ params: {
349
+ note: ExtendedNote;
350
+ };
351
+ result: boolean;
352
+ };
353
+ aztec_addNullifiedNote: {
354
+ params: {
355
+ note: ExtendedNote;
356
+ };
357
+ result: boolean;
358
+ };
359
+ aztec_getUnencryptedLogs: {
360
+ params: {
361
+ filter: LogFilter;
362
+ };
363
+ result: GetUnencryptedLogsResponse;
364
+ };
365
+ aztec_getContractClassLogs: {
366
+ params: {
367
+ filter: LogFilter;
368
+ };
369
+ result: GetUnencryptedLogsResponse;
370
+ };
371
+ aztec_getEncryptedEvents: {
372
+ params: {
373
+ event: EventMetadataDefinition;
374
+ from: number;
375
+ limit: number;
376
+ vpks?: Point[];
377
+ };
378
+ result: unknown[];
379
+ };
380
+ aztec_getUnencryptedEvents: {
381
+ params: {
382
+ event: EventMetadataDefinition;
383
+ from: number;
384
+ limit: number;
385
+ };
386
+ result: unknown[];
387
+ };
388
+ }
389
+ export type AztecWalletMethodHandler<T extends AztecWalletMethodMap, M extends keyof T, C extends AztecWalletContext> = (context: C, params: T[M]['params'], accountWallet: AccountWallet) => Promise<T[M]['result']> | T[M]['result'];
390
+ export type AztecChainId = `aztec:${string}`;
391
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,8 @@
1
+ export const BASE_WALLET_METHODS = [
2
+ 'wm_getSupportedMethods',
3
+ 'aztec_connect',
4
+ 'aztec_getAccount',
5
+ 'aztec_sendTransaction',
6
+ 'aztec_simulateTransaction',
7
+ ];
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0VBLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF1QztJQUNyRSx3QkFBd0I7SUFDeEIsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQix1QkFBdUI7SUFDdkIsMkJBQTJCO0NBQ25CLENBQUMifQ==
@@ -0,0 +1,62 @@
1
+ import type { AccountWallet, PXE } from '@aztec/aztec.js';
2
+ import { JSONRPCNode, type JSONRPCTransport } from '@walletmesh/jsonrpc';
3
+ import type { AztecWalletMethodMap, AztecWalletContext, AztecWalletEventMap, AztecWalletRouterClient } from './types.js';
4
+ /**
5
+ * @module wallet
6
+ *
7
+ * This module provides the server-side implementation of the Aztec RPC interface.
8
+ * It handles incoming RPC requests from dApps and executes them using an Aztec wallet instance.
9
+ */
10
+ /**
11
+ * JSON-RPC interface implementation for an Aztec Wallet.
12
+ *
13
+ * This class provides the core wallet functionality exposed through JSON-RPC:
14
+ * - Handles incoming RPC requests from dApps
15
+ * - Manages wallet state and context
16
+ * - Executes operations through the underlying Aztec wallet
17
+ * - Serializes responses back to JSON-RPC format
18
+ *
19
+ * The wallet supports operations like:
20
+ * - Account management
21
+ * - Transaction execution
22
+ * - Contract interaction
23
+ * - Note management
24
+ * - Event logging
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * // Create wallet instance
29
+ * const wallet = new AztecChainWallet(aztecWallet, transport);
30
+ *
31
+ * // Handle incoming RPC requests
32
+ * transport.on('message', async (request) => {
33
+ * const response = await wallet.handleRequest(request);
34
+ * // Send response back to dApp
35
+ * });
36
+ * ```
37
+ *
38
+ * @public
39
+ */
40
+ export declare class AztecChainWallet extends JSONRPCNode<AztecWalletMethodMap, AztecWalletEventMap, AztecWalletContext> {
41
+ /**
42
+ * Creates a new AztecWallet instance.
43
+ *
44
+ * @param pxe - The PXE instance for the Aztec protocol
45
+ * @param wallet - The underlying Aztec wallet instance that executes operations
46
+ * @param transport - Transport layer for sending/receiving JSON-RPC messages
47
+ *
48
+ * The wallet instance sets up:
49
+ * - Contract artifact caching
50
+ * - Default request handlers
51
+ * - Custom serialization for Aztec types
52
+ */
53
+ constructor(pxe: PXE, wallet: AccountWallet, transport: JSONRPCTransport);
54
+ /**
55
+ * Creates a client wrapper for use with WalletMesh router.
56
+ * This enables the wallet to be used as a client in a routing setup.
57
+ *
58
+ * @returns Client interface for the wallet
59
+ */
60
+ asWalletRouterClient(): AztecWalletRouterClient;
61
+ }
62
+ //# sourceMappingURL=wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../src/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGzE,OAAO,KAAK,EACV,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAMpB;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,gBAAiB,SAAQ,WAAW,CAC/C,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,CACnB;IACC;;;;;;;;;;;OAWG;gBACS,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,gBAAgB;IAcxE;;;;;OAKG;IACH,oBAAoB,IAAI,uBAAuB;CAGhD"}
package/dist/wallet.js ADDED
@@ -0,0 +1,77 @@
1
+ import { JSONRPCNode } from '@walletmesh/jsonrpc';
2
+ import { JSONRPCWalletClient } from '@walletmesh/router';
3
+ import { AztecWalletSerializer } from './serializers/index.js';
4
+ import { ContractArtifactCache } from './contractArtifactCache.js';
5
+ import { handler } from './handlers.js';
6
+ /**
7
+ * @module wallet
8
+ *
9
+ * This module provides the server-side implementation of the Aztec RPC interface.
10
+ * It handles incoming RPC requests from dApps and executes them using an Aztec wallet instance.
11
+ */
12
+ /**
13
+ * JSON-RPC interface implementation for an Aztec Wallet.
14
+ *
15
+ * This class provides the core wallet functionality exposed through JSON-RPC:
16
+ * - Handles incoming RPC requests from dApps
17
+ * - Manages wallet state and context
18
+ * - Executes operations through the underlying Aztec wallet
19
+ * - Serializes responses back to JSON-RPC format
20
+ *
21
+ * The wallet supports operations like:
22
+ * - Account management
23
+ * - Transaction execution
24
+ * - Contract interaction
25
+ * - Note management
26
+ * - Event logging
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * // Create wallet instance
31
+ * const wallet = new AztecChainWallet(aztecWallet, transport);
32
+ *
33
+ * // Handle incoming RPC requests
34
+ * transport.on('message', async (request) => {
35
+ * const response = await wallet.handleRequest(request);
36
+ * // Send response back to dApp
37
+ * });
38
+ * ```
39
+ *
40
+ * @public
41
+ */
42
+ export class AztecChainWallet extends JSONRPCNode {
43
+ /**
44
+ * Creates a new AztecWallet instance.
45
+ *
46
+ * @param pxe - The PXE instance for the Aztec protocol
47
+ * @param wallet - The underlying Aztec wallet instance that executes operations
48
+ * @param transport - Transport layer for sending/receiving JSON-RPC messages
49
+ *
50
+ * The wallet instance sets up:
51
+ * - Contract artifact caching
52
+ * - Default request handlers
53
+ * - Custom serialization for Aztec types
54
+ */
55
+ constructor(pxe, wallet, transport) {
56
+ const context = {
57
+ pxe,
58
+ wallet,
59
+ contractArtifactCache: new ContractArtifactCache(wallet),
60
+ };
61
+ super(transport, context);
62
+ this.setFallbackHandler(async (handlerContext, method, params) => {
63
+ return await handler(handlerContext, method, params);
64
+ });
65
+ this.setFallbackSerializer(AztecWalletSerializer);
66
+ }
67
+ /**
68
+ * Creates a client wrapper for use with WalletMesh router.
69
+ * This enables the wallet to be used as a client in a routing setup.
70
+ *
71
+ * @returns Client interface for the wallet
72
+ */
73
+ asWalletRouterClient() {
74
+ return new JSONRPCWalletClient(this);
75
+ }
76
+ }
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3dhbGxldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUF5QixNQUFNLHFCQUFxQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBUXpELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRS9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEM7Ozs7O0dBS0c7QUFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Qkc7QUFDSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsV0FJckM7SUFDQzs7Ozs7Ozs7Ozs7T0FXRztJQUNILFlBQVksR0FBUSxFQUFFLE1BQXFCLEVBQUUsU0FBMkI7UUFDdEUsTUFBTSxPQUFPLEdBQXVCO1lBQ2xDLEdBQUc7WUFDSCxNQUFNO1lBQ04scUJBQXFCLEVBQUUsSUFBSSxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7U0FDekQsQ0FBQztRQUNGLEtBQUssQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFMUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxjQUFrQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNuRixPQUFPLE1BQU0sT0FBTyxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMscUJBQXFCLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRiJ9
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@walletmesh/aztec-rpc-wallet",
3
+ "version": "0.1.0",
4
+ "description": "",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "publishConfig": {
9
+ "access": "public"
10
+ },
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/WalletMesh/aztec.git"
14
+ },
15
+ "homepage": "https://github.com/WalletMesh/aztec/tree/main/packages/aztec-rpc-wallet#readme",
16
+ "keywords": [],
17
+ "author": "",
18
+ "license": "Apache-2.0",
19
+ "devDependencies": {
20
+ "typedoc": "^0.27.2",
21
+ "typedoc-plugin-markdown": "^4.3.1"
22
+ },
23
+ "dependencies": {
24
+ "@aztec/aztec.js": "0.68.2",
25
+ "@aztec/circuit-types": "0.68.2",
26
+ "@aztec/circuits.js": "^0.68.2",
27
+ "@aztec/foundation": "0.68.2",
28
+ "@walletmesh/jsonrpc": "0.2.2",
29
+ "@walletmesh/router": "0.2.7"
30
+ },
31
+ "scripts": {
32
+ "build": "tsc --build tsconfig.build.json",
33
+ "clean": "rimraf dist node_modules",
34
+ "type-check": "tsc --noEmit",
35
+ "test": "vitest run",
36
+ "coverage": "vitest run --coverage",
37
+ "lint": "biome lint",
38
+ "lint:fix": "biome lint --fix",
39
+ "format": "biome format",
40
+ "format:fix": "biome format --fix",
41
+ "doc": "typedoc",
42
+ "version": "pnpm clean && pnpm build && pnpm doc && git add docs/"
43
+ }
44
+ }