@aztec/wallets 0.0.1-commit.21ecf947b → 0.0.1-commit.2448fdb

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 (32) hide show
  1. package/dest/embedded/account-contract-providers/bundle.d.ts +9 -4
  2. package/dest/embedded/account-contract-providers/bundle.d.ts.map +1 -1
  3. package/dest/embedded/account-contract-providers/bundle.js +10 -5
  4. package/dest/embedded/account-contract-providers/lazy.d.ts +9 -4
  5. package/dest/embedded/account-contract-providers/lazy.d.ts.map +1 -1
  6. package/dest/embedded/account-contract-providers/lazy.js +20 -6
  7. package/dest/embedded/account-contract-providers/types.d.ts +9 -4
  8. package/dest/embedded/account-contract-providers/types.d.ts.map +1 -1
  9. package/dest/embedded/embedded_wallet.d.ts +40 -8
  10. package/dest/embedded/embedded_wallet.d.ts.map +1 -1
  11. package/dest/embedded/embedded_wallet.js +164 -50
  12. package/dest/embedded/entrypoints/browser.d.ts +8 -3
  13. package/dest/embedded/entrypoints/browser.d.ts.map +1 -1
  14. package/dest/embedded/entrypoints/browser.js +32 -15
  15. package/dest/embedded/entrypoints/node.d.ts +7 -11
  16. package/dest/embedded/entrypoints/node.d.ts.map +1 -1
  17. package/dest/embedded/entrypoints/node.js +22 -14
  18. package/dest/testing.d.ts +1 -1
  19. package/dest/testing.d.ts.map +1 -1
  20. package/dest/testing.js +2 -2
  21. package/package.json +19 -9
  22. package/src/embedded/account-contract-providers/bundle.ts +13 -6
  23. package/src/embedded/account-contract-providers/lazy.ts +23 -7
  24. package/src/embedded/account-contract-providers/types.ts +6 -3
  25. package/src/embedded/embedded_wallet.ts +211 -60
  26. package/src/embedded/entrypoints/browser.ts +46 -19
  27. package/src/embedded/entrypoints/node.ts +34 -30
  28. package/src/testing.ts +2 -1
  29. package/dest/embedded/embedded_wallet_browser.d.ts +0 -5
  30. package/dest/embedded/embedded_wallet_browser.d.ts.map +0 -1
  31. package/dest/embedded/embedded_wallet_browser.js +0 -31
  32. package/src/embedded/embedded_wallet_browser.ts +0 -40
@@ -4,31 +4,48 @@ import { createStore, openTmpStore } from '@aztec/kv-store/indexeddb';
4
4
  import { createPXE } from '@aztec/pxe/client/lazy';
5
5
  import { getPXEConfig } from '@aztec/pxe/config';
6
6
  import { LazyAccountContractsProvider } from '../account-contract-providers/lazy.js';
7
- import { EmbeddedWallet } from '../embedded_wallet.js';
7
+ import { EmbeddedWallet, splitPxeOptions } from '../embedded_wallet.js';
8
8
  import { WalletDB } from '../wallet_db.js';
9
9
  export class BrowserEmbeddedWallet extends EmbeddedWallet {
10
- static async create(nodeUrl, options = {}) {
10
+ static async create(nodeOrUrl, options = {}) {
11
11
  const rootLogger = options.logger ?? createLogger('embedded-wallet');
12
- const aztecNode = createAztecNodeClient(nodeUrl);
12
+ const aztecNode = typeof nodeOrUrl === 'string' ? createAztecNodeClient(nodeOrUrl) : nodeOrUrl;
13
13
  const l1Contracts = await aztecNode.getL1ContractAddresses();
14
- const rollupAddress = l1Contracts.rollupAddress;
15
- const config = getPXEConfig();
16
- if (!options.ephemeral) {
17
- config.dataDirectory = `pxe-${rollupAddress}`;
14
+ // Support both the new unified `pxe` option and the deprecated `pxeConfig`/`pxeOptions`.
15
+ const { config: pxeConfigFromPxe, creation: pxeCreationFromPxe } = splitPxeOptions(options.pxe);
16
+ const mergedConfigOverrides = {
17
+ ...options.pxeConfig,
18
+ ...pxeConfigFromPxe
19
+ };
20
+ const mergedCreationOverrides = {
21
+ ...options.pxeOptions,
22
+ ...pxeCreationFromPxe
23
+ };
24
+ const pxeConfig = Object.assign(getPXEConfig(), {
25
+ proverEnabled: mergedConfigOverrides.proverEnabled ?? false,
26
+ dataDirectory: `pxe_data_${l1Contracts.rollupAddress}`,
27
+ ...mergedConfigOverrides
28
+ });
29
+ if (options.ephemeral) {
30
+ delete pxeConfig.dataDirectory;
18
31
  }
19
- const pxe = await createPXE(aztecNode, config, {
32
+ const pxeOptions = {
33
+ ...mergedCreationOverrides,
20
34
  loggers: {
21
35
  store: rootLogger.createChild('pxe:data'),
22
36
  pxe: rootLogger.createChild('pxe:service'),
23
- prover: rootLogger.createChild('pxe:prover')
37
+ prover: rootLogger.createChild('pxe:prover'),
38
+ ...mergedCreationOverrides.loggers
24
39
  }
25
- });
26
- const walletDBStore = options.ephemeral ? await openTmpStore(true) : await createStore(`wallet-${rollupAddress}`, {
27
- dataDirectory: 'wallet',
28
- dataStoreMapSizeKb: 2e10
29
- }, undefined, rootLogger.createChild('wallet:data'));
40
+ };
41
+ const pxe = await createPXE(aztecNode, pxeConfig, pxeOptions);
42
+ const walletDBStore = options.ephemeral ? await openTmpStore(true) : await createStore('wallet_data', {
43
+ dataDirectory: `wallet_data_${l1Contracts.rollupAddress}`,
44
+ dataStoreMapSizeKb: pxeConfig.dataStoreMapSizeKb,
45
+ l1Contracts
46
+ }, 1, rootLogger.createChild('wallet:data'));
30
47
  const walletDB = WalletDB.init(walletDBStore, rootLogger.createChild('wallet:db').info);
31
- return new BrowserEmbeddedWallet(pxe, aztecNode, walletDB, new LazyAccountContractsProvider(), rootLogger);
48
+ return new this(pxe, aztecNode, walletDB, new LazyAccountContractsProvider(), rootLogger);
32
49
  }
33
50
  }
34
51
  export { BrowserEmbeddedWallet as EmbeddedWallet };
@@ -1,18 +1,14 @@
1
- import type { PXEConfig } from '@aztec/pxe/config';
2
- import { type PXECreationOptions } from '@aztec/pxe/server';
1
+ import { type Logger } from '@aztec/foundation/log';
2
+ import { type PXE } from '@aztec/pxe/server';
3
3
  import type { AztecNode } from '@aztec/stdlib/interfaces/client';
4
+ import type { AccountContractsProvider } from '../account-contract-providers/types.js';
4
5
  import { EmbeddedWallet, type EmbeddedWalletOptions } from '../embedded_wallet.js';
5
- export type NodeEmbeddedWalletOptions = EmbeddedWalletOptions & {
6
- /** Override PXE configuration. */
7
- pxeConfig?: Partial<PXEConfig>;
8
- /** Advanced PXE creation options (custom store, prover, simulator). */
9
- pxeOptions?: PXECreationOptions;
10
- };
6
+ import { WalletDB } from '../wallet_db.js';
11
7
  export declare class NodeEmbeddedWallet extends EmbeddedWallet {
12
- static create(nodeOrUrl: string | AztecNode, options?: NodeEmbeddedWalletOptions): Promise<NodeEmbeddedWallet>;
8
+ static create<T extends NodeEmbeddedWallet = NodeEmbeddedWallet>(this: new (pxe: PXE, aztecNode: AztecNode, walletDB: WalletDB, accountContracts: AccountContractsProvider, log?: Logger) => T, nodeOrUrl: string | AztecNode, options?: EmbeddedWalletOptions): Promise<T>;
13
9
  }
14
10
  export { NodeEmbeddedWallet as EmbeddedWallet };
15
- export type { EmbeddedWalletOptions } from '../embedded_wallet.js';
11
+ export type { EmbeddedWalletOptions, EmbeddedWalletPXEOptions } from '../embedded_wallet.js';
16
12
  export { WalletDB } from '../wallet_db.js';
17
13
  export type { AccountType } from '../wallet_db.js';
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VtYmVkZGVkL2VudHJ5cG9pbnRzL25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQWEsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUsscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUduRixNQUFNLE1BQU0seUJBQXlCLEdBQUcscUJBQXFCLEdBQUc7SUFDOUQsa0NBQWtDO0lBQ2xDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQix1RUFBdUU7SUFDdkUsVUFBVSxDQUFDLEVBQUUsa0JBQWtCLENBQUM7Q0FDakMsQ0FBQztBQUVGLHFCQUFhLGtCQUFtQixTQUFRLGNBQWM7SUFDcEQsT0FBYSxNQUFNLENBQ2pCLFNBQVMsRUFBRSxNQUFNLEdBQUcsU0FBUyxFQUM3QixPQUFPLEdBQUUseUJBQThCLEdBQ3RDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQWtEN0I7Q0FDRjtBQUVELE9BQU8sRUFBRSxrQkFBa0IsSUFBSSxjQUFjLEVBQUUsQ0FBQztBQUNoRCxZQUFZLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDIn0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VtYmVkZGVkL2VudHJ5cG9pbnRzL25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBR2xFLE9BQU8sRUFBRSxLQUFLLEdBQUcsRUFBc0MsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUdqRSxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxjQUFjLEVBQUUsS0FBSyxxQkFBcUIsRUFBbUIsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MscUJBQWEsa0JBQW1CLFNBQVEsY0FBYztJQUNwRCxPQUFhLE1BQU0sQ0FBQyxDQUFDLFNBQVMsa0JBQWtCLEdBQUcsa0JBQWtCLEVBQ25FLElBQUksRUFBRSxLQUNKLEdBQUcsRUFBRSxHQUFHLEVBQ1IsU0FBUyxFQUFFLFNBQVMsRUFDcEIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsZ0JBQWdCLEVBQUUsd0JBQXdCLEVBQzFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sS0FDVCxDQUFDLEVBQ04sU0FBUyxFQUFFLE1BQU0sR0FBRyxTQUFTLEVBQzdCLE9BQU8sR0FBRSxxQkFBMEIsR0FDbEMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQXNEWjtDQUNGO0FBRUQsT0FBTyxFQUFFLGtCQUFrQixJQUFJLGNBQWMsRUFBRSxDQUFDO0FBQ2hELFlBQVksRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/embedded/entrypoints/node.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,mBAAmB,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGnF,MAAM,MAAM,yBAAyB,GAAG,qBAAqB,GAAG;IAC9D,kCAAkC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC/B,uEAAuE;IACvE,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC,CAAC;AAEF,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,OAAa,MAAM,CACjB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,kBAAkB,CAAC,CAkD7B;CACF;AAED,OAAO,EAAE,kBAAkB,IAAI,cAAc,EAAE,CAAC;AAChD,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/embedded/entrypoints/node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,KAAK,GAAG,EAAsC,MAAM,mBAAmB,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAmB,MAAM,uBAAuB,CAAC;AACpG,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,OAAa,MAAM,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,EACnE,IAAI,EAAE,KACJ,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,wBAAwB,EAC1C,GAAG,CAAC,EAAE,MAAM,KACT,CAAC,EACN,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,CAAC,CAAC,CAsDZ;CACF;AAED,OAAO,EAAE,kBAAkB,IAAI,cAAc,EAAE,CAAC;AAChD,YAAY,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,43 +1,51 @@
1
1
  import { createAztecNodeClient } from '@aztec/aztec.js/node';
2
2
  import { createLogger } from '@aztec/foundation/log';
3
- import { createStore as createWalletStore, openTmpStore } from '@aztec/kv-store/lmdb-v2';
3
+ import { createStore, openTmpStore } from '@aztec/kv-store/lmdb-v2';
4
4
  import { getPXEConfig } from '@aztec/pxe/config';
5
5
  import { createPXE } from '@aztec/pxe/server';
6
6
  import { BundleAccountContractsProvider } from '../account-contract-providers/bundle.js';
7
- import { EmbeddedWallet } from '../embedded_wallet.js';
7
+ import { EmbeddedWallet, splitPxeOptions } from '../embedded_wallet.js';
8
8
  import { WalletDB } from '../wallet_db.js';
9
9
  export class NodeEmbeddedWallet extends EmbeddedWallet {
10
10
  static async create(nodeOrUrl, options = {}) {
11
11
  const rootLogger = options.logger ?? createLogger('embedded-wallet');
12
12
  const aztecNode = typeof nodeOrUrl === 'string' ? createAztecNodeClient(nodeOrUrl) : nodeOrUrl;
13
+ const l1Contracts = await aztecNode.getL1ContractAddresses();
14
+ // Support both the new unified `pxe` option and the deprecated `pxeConfig`/`pxeOptions`.
15
+ const { config: pxeConfigFromPxe, creation: pxeCreationFromPxe } = splitPxeOptions(options.pxe);
16
+ const mergedConfigOverrides = {
17
+ ...options.pxeConfig,
18
+ ...pxeConfigFromPxe
19
+ };
20
+ const mergedCreationOverrides = {
21
+ ...options.pxeOptions,
22
+ ...pxeCreationFromPxe
23
+ };
13
24
  const pxeConfig = Object.assign(getPXEConfig(), {
14
- proverEnabled: options.pxeConfig?.proverEnabled ?? false,
15
- ...options.pxeConfig
25
+ proverEnabled: mergedConfigOverrides.proverEnabled ?? false,
26
+ dataDirectory: `pxe_data_${l1Contracts.rollupAddress}`,
27
+ ...mergedConfigOverrides
16
28
  });
17
29
  if (options.ephemeral) {
18
30
  delete pxeConfig.dataDirectory;
19
31
  }
20
32
  const pxeOptions = {
21
- ...options.pxeOptions,
33
+ ...mergedCreationOverrides,
22
34
  loggers: {
23
35
  store: rootLogger.createChild('pxe:data'),
24
36
  pxe: rootLogger.createChild('pxe:service'),
25
37
  prover: rootLogger.createChild('pxe:prover'),
26
- ...options.pxeOptions?.loggers
38
+ ...mergedCreationOverrides.loggers
27
39
  }
28
40
  };
29
41
  const pxe = await createPXE(aztecNode, pxeConfig, pxeOptions);
30
- const l1Contracts = await aztecNode.getL1ContractAddresses();
31
- const rollupAddress = l1Contracts.rollupAddress;
32
- const walletDBStore = options.ephemeral ? await openTmpStore('wallet_data', true, undefined, undefined, rootLogger.createChild('wallet:data').getBindings()) : await createWalletStore('wallet_data', 1, {
33
- dataDirectory: pxeConfig.dataDirectory,
42
+ const walletDBStore = options.ephemeral ? await openTmpStore(`wallet_data_${l1Contracts.rollupAddress}`, true, undefined, undefined, rootLogger.createChild('wallet:data').getBindings()) : await createStore('wallet_data', 1, {
43
+ dataDirectory: `wallet_data_${l1Contracts.rollupAddress}`,
34
44
  dataStoreMapSizeKb: pxeConfig.dataStoreMapSizeKb,
35
- l1Contracts: {
36
- rollupAddress
37
- }
45
+ l1Contracts
38
46
  }, rootLogger.createChild('wallet:data').getBindings());
39
47
  const walletDB = WalletDB.init(walletDBStore, rootLogger.createChild('wallet:db').info);
40
- return new NodeEmbeddedWallet(pxe, aztecNode, walletDB, new BundleAccountContractsProvider(), rootLogger);
48
+ return new this(pxe, aztecNode, walletDB, new BundleAccountContractsProvider(), rootLogger);
41
49
  }
42
50
  }
43
51
  export { NodeEmbeddedWallet as EmbeddedWallet };
package/dest/testing.d.ts CHANGED
@@ -9,4 +9,4 @@ interface WalletWithSchnorrAccounts {
9
9
  export declare function deployFundedSchnorrAccounts(wallet: WalletWithSchnorrAccounts, accountsData: InitialAccountData[], waitOptions?: WaitOpts): Promise<AccountManager[]>;
10
10
  export declare function registerInitialLocalNetworkAccountsInWallet(wallet: WalletWithSchnorrAccounts): Promise<AztecAddress[]>;
11
11
  export {};
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGluZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Rlc3RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELFVBQVUseUJBQXlCO0lBQ2pDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztDQUN0RztBQUVELHdCQUFzQiwyQkFBMkIsQ0FDL0MsTUFBTSxFQUFFLHlCQUF5QixFQUNqQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsRUFDbEMsV0FBVyxDQUFDLEVBQUUsUUFBUSw2QkFnQnZCO0FBRUQsd0JBQXNCLDJDQUEyQyxDQUMvRCxNQUFNLEVBQUUseUJBQXlCLEdBQ2hDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQU96QiJ9
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGluZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Rlc3RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUdsRSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELFVBQVUseUJBQXlCO0lBQ2pDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztDQUN0RztBQUVELHdCQUFzQiwyQkFBMkIsQ0FDL0MsTUFBTSxFQUFFLHlCQUF5QixFQUNqQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsRUFDbEMsV0FBVyxDQUFDLEVBQUUsUUFBUSw2QkFnQnZCO0FBRUQsd0JBQXNCLDJDQUEyQyxDQUMvRCxNQUFNLEVBQUUseUJBQXlCLEdBQ2hDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQU96QiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,UAAU,yBAAyB;IACjC,oBAAoB,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACtG;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,yBAAyB,EACjC,YAAY,EAAE,kBAAkB,EAAE,EAClC,WAAW,CAAC,EAAE,QAAQ,6BAgBvB;AAED,wBAAsB,2CAA2C,CAC/D,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAOzB"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,UAAU,yBAAyB;IACjC,oBAAoB,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACtG;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,yBAAyB,EACjC,YAAY,EAAE,kBAAkB,EAAE,EAClC,WAAW,CAAC,EAAE,QAAQ,6BAgBvB;AAED,wBAAsB,2CAA2C,CAC/D,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAOzB"}
package/dest/testing.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { getInitialTestAccountsData } from '@aztec/accounts/testing/lazy';
2
- import { AztecAddress } from '@aztec/stdlib/aztec-address';
2
+ import { NO_FROM } from '@aztec/aztec.js/account';
3
3
  export async function deployFundedSchnorrAccounts(wallet, accountsData, waitOptions) {
4
4
  const accountManagers = [];
5
5
  // Serial due to https://github.com/AztecProtocol/aztec-packages/issues/12045
@@ -8,7 +8,7 @@ export async function deployFundedSchnorrAccounts(wallet, accountsData, waitOpti
8
8
  const accountManager = await wallet.createSchnorrAccount(secret, salt, signingKey);
9
9
  const deployMethod = await accountManager.getDeployMethod();
10
10
  await deployMethod.send({
11
- from: AztecAddress.ZERO,
11
+ from: NO_FROM,
12
12
  skipClassPublication: i !== 0,
13
13
  wait: waitOptions
14
14
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aztec/wallets",
3
3
  "homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/yarn-project/wallets",
4
- "version": "0.0.1-commit.21ecf947b",
4
+ "version": "0.0.1-commit.2448fdb",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  "./embedded": {
@@ -27,14 +27,15 @@
27
27
  "../package.common.json"
28
28
  ],
29
29
  "dependencies": {
30
- "@aztec/accounts": "0.0.1-commit.21ecf947b",
31
- "@aztec/aztec.js": "0.0.1-commit.21ecf947b",
32
- "@aztec/entrypoints": "0.0.1-commit.21ecf947b",
33
- "@aztec/foundation": "0.0.1-commit.21ecf947b",
34
- "@aztec/kv-store": "0.0.1-commit.21ecf947b",
35
- "@aztec/pxe": "0.0.1-commit.21ecf947b",
36
- "@aztec/stdlib": "0.0.1-commit.21ecf947b",
37
- "@aztec/wallet-sdk": "0.0.1-commit.21ecf947b"
30
+ "@aztec/accounts": "0.0.1-commit.2448fdb",
31
+ "@aztec/aztec.js": "0.0.1-commit.2448fdb",
32
+ "@aztec/entrypoints": "0.0.1-commit.2448fdb",
33
+ "@aztec/foundation": "0.0.1-commit.2448fdb",
34
+ "@aztec/kv-store": "0.0.1-commit.2448fdb",
35
+ "@aztec/protocol-contracts": "0.0.1-commit.2448fdb",
36
+ "@aztec/pxe": "0.0.1-commit.2448fdb",
37
+ "@aztec/stdlib": "0.0.1-commit.2448fdb",
38
+ "@aztec/wallet-sdk": "0.0.1-commit.2448fdb"
38
39
  },
39
40
  "devDependencies": {
40
41
  "@jest/globals": "^30.0.0",
@@ -48,6 +49,15 @@
48
49
  "src",
49
50
  "!*.test.*"
50
51
  ],
52
+ "typedocOptions": {
53
+ "entryPoints": [
54
+ "./src/embedded/entrypoints/browser.ts",
55
+ "./src/embedded/entrypoints/node.ts",
56
+ "./src/testing.ts"
57
+ ],
58
+ "name": "Wallets",
59
+ "tsconfig": "./tsconfig.json"
60
+ },
51
61
  "engines": {
52
62
  "node": ">=20.10"
53
63
  },
@@ -1,11 +1,14 @@
1
1
  import { EcdsaKAccountContract, EcdsaRAccountContract } from '@aztec/accounts/ecdsa';
2
2
  import { SchnorrAccountContract } from '@aztec/accounts/schnorr';
3
- import { StubAccountContractArtifact, createStubAccount } from '@aztec/accounts/stub';
3
+ import { StubEcdsaAccountContractArtifact, createStubEcdsaAccount } from '@aztec/accounts/stub/ecdsa';
4
+ import { StubSchnorrAccountContractArtifact, createStubSchnorrAccount } from '@aztec/accounts/stub/schnorr';
4
5
  import type { Account, AccountContract } from '@aztec/aztec.js/account';
5
6
  import type { Fq } from '@aztec/foundation/curves/bn254';
7
+ import { getCanonicalMultiCallEntrypoint } from '@aztec/protocol-contracts/multi-call-entrypoint';
6
8
  import type { ContractArtifact } from '@aztec/stdlib/abi';
7
- import type { CompleteAddress } from '@aztec/stdlib/contract';
9
+ import type { CompleteAddress, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
8
10
 
11
+ import type { AccountType } from '../wallet_db.js';
9
12
  import type { AccountContractsProvider } from './types.js';
10
13
 
11
14
  /**
@@ -25,11 +28,15 @@ export class BundleAccountContractsProvider implements AccountContractsProvider
25
28
  return Promise.resolve(new EcdsaKAccountContract(signingKey));
26
29
  }
27
30
 
28
- getStubAccountContractArtifact(): Promise<ContractArtifact> {
29
- return Promise.resolve(StubAccountContractArtifact);
31
+ getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact> {
32
+ return Promise.resolve(type === 'schnorr' ? StubSchnorrAccountContractArtifact : StubEcdsaAccountContractArtifact);
30
33
  }
31
34
 
32
- createStubAccount(address: CompleteAddress): Promise<Account> {
33
- return Promise.resolve(createStubAccount(address));
35
+ createStubAccount(address: CompleteAddress, type: AccountType): Promise<Account> {
36
+ return Promise.resolve(type === 'schnorr' ? createStubSchnorrAccount(address) : createStubEcdsaAccount(address));
37
+ }
38
+
39
+ getMulticallContract(): Promise<{ instance: ContractInstanceWithAddress; artifact: ContractArtifact }> {
40
+ return getCanonicalMultiCallEntrypoint();
34
41
  }
35
42
  }
@@ -1,8 +1,10 @@
1
1
  import type { Account, AccountContract } from '@aztec/aztec.js/account';
2
2
  import type { Fq } from '@aztec/foundation/curves/bn254';
3
+ import { getCanonicalMultiCallEntrypoint } from '@aztec/protocol-contracts/multi-call-entrypoint/lazy';
3
4
  import type { ContractArtifact } from '@aztec/stdlib/abi';
4
- import type { CompleteAddress } from '@aztec/stdlib/contract';
5
+ import type { CompleteAddress, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
5
6
 
7
+ import type { AccountType } from '../wallet_db.js';
6
8
  import type { AccountContractsProvider } from './types.js';
7
9
 
8
10
  /**
@@ -25,13 +27,27 @@ export class LazyAccountContractsProvider implements AccountContractsProvider {
25
27
  return new EcdsaKAccountContract(signingKey);
26
28
  }
27
29
 
28
- async getStubAccountContractArtifact(): Promise<ContractArtifact> {
29
- const { getStubAccountContractArtifact } = await import('@aztec/accounts/stub/lazy');
30
- return getStubAccountContractArtifact();
30
+ async getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact> {
31
+ if (type === 'schnorr') {
32
+ const { getStubSchnorrAccountContractArtifact } = await import('@aztec/accounts/stub/schnorr/lazy');
33
+ return getStubSchnorrAccountContractArtifact();
34
+ } else {
35
+ const { getStubEcdsaAccountContractArtifact } = await import('@aztec/accounts/stub/ecdsa/lazy');
36
+ return getStubEcdsaAccountContractArtifact();
37
+ }
31
38
  }
32
39
 
33
- async createStubAccount(address: CompleteAddress): Promise<Account> {
34
- const { createStubAccount } = await import('@aztec/accounts/stub/lazy');
35
- return createStubAccount(address);
40
+ async createStubAccount(address: CompleteAddress, type: AccountType): Promise<Account> {
41
+ if (type === 'schnorr') {
42
+ const { createStubSchnorrAccount } = await import('@aztec/accounts/stub/schnorr/lazy');
43
+ return createStubSchnorrAccount(address);
44
+ } else {
45
+ const { createStubEcdsaAccount } = await import('@aztec/accounts/stub/ecdsa/lazy');
46
+ return createStubEcdsaAccount(address);
47
+ }
48
+ }
49
+
50
+ getMulticallContract(): Promise<{ instance: ContractInstanceWithAddress; artifact: ContractArtifact }> {
51
+ return getCanonicalMultiCallEntrypoint();
36
52
  }
37
53
  }
@@ -1,7 +1,9 @@
1
1
  import type { Account, AccountContract } from '@aztec/aztec.js/account';
2
2
  import type { Fq } from '@aztec/foundation/curves/bn254';
3
3
  import type { ContractArtifact } from '@aztec/stdlib/abi';
4
- import type { CompleteAddress } from '@aztec/stdlib/contract';
4
+ import type { CompleteAddress, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
5
+
6
+ import type { AccountType } from '../wallet_db.js';
5
7
 
6
8
  /**
7
9
  * Provides account contract implementations and stub accounts for the EmbeddedWallet.
@@ -13,6 +15,7 @@ export interface AccountContractsProvider {
13
15
  getSchnorrAccountContract(signingKey: Fq): Promise<AccountContract>;
14
16
  getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract>;
15
17
  getEcdsaKAccountContract(signingKey: Buffer): Promise<AccountContract>;
16
- getStubAccountContractArtifact(): Promise<ContractArtifact>;
17
- createStubAccount(address: CompleteAddress): Promise<Account>;
18
+ getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact>;
19
+ getMulticallContract(): Promise<{ instance: ContractInstanceWithAddress; artifact: ContractArtifact }>;
20
+ createStubAccount(address: CompleteAddress, type: AccountType): Promise<Account>;
18
21
  }