@aztec/wallets 5.0.0-nightly.20260611 → 5.0.0-nightly.20260613
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/dest/embedded/account-contract-providers/bundle.d.ts +2 -1
- package/dest/embedded/account-contract-providers/bundle.d.ts.map +1 -1
- package/dest/embedded/account-contract-providers/bundle.js +4 -1
- package/dest/embedded/account-contract-providers/lazy.d.ts +2 -1
- package/dest/embedded/account-contract-providers/lazy.d.ts.map +1 -1
- package/dest/embedded/account-contract-providers/lazy.js +4 -0
- package/dest/embedded/account-contract-providers/types.d.ts +2 -1
- package/dest/embedded/account-contract-providers/types.d.ts.map +1 -1
- package/dest/embedded/embedded_wallet.d.ts +3 -2
- package/dest/embedded/embedded_wallet.d.ts.map +1 -1
- package/dest/embedded/embedded_wallet.js +39 -4
- package/dest/embedded/entrypoints/node.js +3 -3
- package/dest/embedded/wallet_db.d.ts +3 -3
- package/dest/embedded/wallet_db.d.ts.map +1 -1
- package/dest/embedded/wallet_db.js +1 -0
- package/dest/testing.d.ts +8 -4
- package/dest/testing.d.ts.map +1 -1
- package/dest/testing.js +8 -14
- package/package.json +11 -11
- package/src/embedded/account-contract-providers/bundle.ts +5 -1
- package/src/embedded/account-contract-providers/lazy.ts +5 -0
- package/src/embedded/account-contract-providers/types.ts +1 -0
- package/src/embedded/embedded_wallet.ts +33 -4
- package/src/embedded/entrypoints/node.ts +3 -3
- package/src/embedded/wallet_db.ts +1 -1
- package/src/testing.ts +11 -17
|
@@ -10,9 +10,10 @@ import type { AccountContractsProvider } from './types.js';
|
|
|
10
10
|
*/
|
|
11
11
|
export declare class BundleAccountContractsProvider implements AccountContractsProvider {
|
|
12
12
|
getSchnorrAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
13
|
+
getSchnorrInitializerlessAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
13
14
|
getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
14
15
|
getEcdsaKAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
15
16
|
getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact>;
|
|
16
17
|
createStubAccount(address: CompleteAddress, type: AccountType): Promise<Account>;
|
|
17
18
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZW1iZWRkZWQvYWNjb3VudC1jb250cmFjdC1wcm92aWRlcnMvYnVuZGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTNEOzs7R0FHRztBQUNILHFCQUFhLDhCQUErQixZQUFXLHdCQUF3QjtJQUM3RSx5QkFBeUIsQ0FBQyxVQUFVLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FFbEU7SUFFRCx3Q0FBd0MsQ0FBQyxVQUFVLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FFakY7SUFFRCx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FFckU7SUFFRCx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FFckU7SUFFRCw4QkFBOEIsQ0FBQyxJQUFJLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUUzRTtJQUVELGlCQUFpQixDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBRS9FO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/embedded/account-contract-providers/bundle.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,qBAAa,8BAA+B,YAAW,wBAAwB;IAC7E,yBAAyB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAElE;IAED,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAErE;IAED,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAErE;IAED,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAE3E;IAED,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;CACF"}
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/embedded/account-contract-providers/bundle.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,qBAAa,8BAA+B,YAAW,wBAAwB;IAC7E,yBAAyB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAElE;IAED,wCAAwC,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAEjF;IAED,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAErE;IAED,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAErE;IAED,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAE3E;IAED,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;CACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EcdsaKAccountContract, EcdsaRAccountContract } from '@aztec/accounts/ecdsa';
|
|
2
2
|
import { StubEcdsaAccountContractArtifact, createStubEcdsaAccount } from '@aztec/accounts/ecdsa/stub';
|
|
3
|
-
import { SchnorrAccountContract } from '@aztec/accounts/schnorr';
|
|
3
|
+
import { SchnorrAccountContract, SchnorrInitializerlessAccountContract } from '@aztec/accounts/schnorr';
|
|
4
4
|
import { StubSchnorrAccountContractArtifact, createStubSchnorrAccount } from '@aztec/accounts/schnorr/stub';
|
|
5
5
|
/**
|
|
6
6
|
* Loads account contract artifacts eagerly via static imports.
|
|
@@ -9,6 +9,9 @@ import { StubSchnorrAccountContractArtifact, createStubSchnorrAccount } from '@a
|
|
|
9
9
|
getSchnorrAccountContract(signingKey) {
|
|
10
10
|
return Promise.resolve(new SchnorrAccountContract(signingKey));
|
|
11
11
|
}
|
|
12
|
+
getSchnorrInitializerlessAccountContract(signingKey) {
|
|
13
|
+
return Promise.resolve(new SchnorrInitializerlessAccountContract(signingKey));
|
|
14
|
+
}
|
|
12
15
|
getEcdsaRAccountContract(signingKey) {
|
|
13
16
|
return Promise.resolve(new EcdsaRAccountContract(signingKey));
|
|
14
17
|
}
|
|
@@ -10,9 +10,10 @@ import type { AccountContractsProvider } from './types.js';
|
|
|
10
10
|
*/
|
|
11
11
|
export declare class LazyAccountContractsProvider implements AccountContractsProvider {
|
|
12
12
|
getSchnorrAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
13
|
+
getSchnorrInitializerlessAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
13
14
|
getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
14
15
|
getEcdsaKAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
15
16
|
getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact>;
|
|
16
17
|
createStubAccount(address: CompleteAddress, type: AccountType): Promise<Account>;
|
|
17
18
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VtYmVkZGVkL2FjY291bnQtY29udHJhY3QtcHJvdmlkZXJzL2xhenkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hFLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFM0Q7OztHQUdHO0FBQ0gscUJBQWEsNEJBQTZCLFlBQVcsd0JBQXdCO0lBQ3JFLHlCQUF5QixDQUFDLFVBQVUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUd4RTtJQUVLLHdDQUF3QyxDQUFDLFVBQVUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUd2RjtJQUVLLHdCQUF3QixDQUFDLFVBQVUsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUczRTtJQUVLLHdCQUF3QixDQUFDLFVBQVUsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUczRTtJQUVLLDhCQUE4QixDQUFDLElBQUksRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBUWpGO0lBRUssaUJBQWlCLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FRckY7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../src/embedded/account-contract-providers/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,qBAAa,4BAA6B,YAAW,wBAAwB;IACrE,yBAAyB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAGxE;IAEK,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAG3E;IAEK,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAG3E;IAEK,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAQjF;IAEK,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAQrF;CACF"}
|
|
1
|
+
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../src/embedded/account-contract-providers/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D;;;GAGG;AACH,qBAAa,4BAA6B,YAAW,wBAAwB;IACrE,yBAAyB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAGxE;IAEK,wCAAwC,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAGvF;IAEK,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAG3E;IAEK,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAG3E;IAEK,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAQjF;IAEK,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAQrF;CACF"}
|
|
@@ -6,6 +6,10 @@
|
|
|
6
6
|
const { SchnorrAccountContract } = await import('@aztec/accounts/schnorr/lazy');
|
|
7
7
|
return new SchnorrAccountContract(signingKey);
|
|
8
8
|
}
|
|
9
|
+
async getSchnorrInitializerlessAccountContract(signingKey) {
|
|
10
|
+
const { SchnorrInitializerlessAccountContract } = await import('@aztec/accounts/schnorr/lazy');
|
|
11
|
+
return new SchnorrInitializerlessAccountContract(signingKey);
|
|
12
|
+
}
|
|
9
13
|
async getEcdsaRAccountContract(signingKey) {
|
|
10
14
|
const { EcdsaRAccountContract } = await import('@aztec/accounts/ecdsa/lazy');
|
|
11
15
|
return new EcdsaRAccountContract(signingKey);
|
|
@@ -11,9 +11,10 @@ import type { AccountType } from '../wallet_db.js';
|
|
|
11
11
|
*/
|
|
12
12
|
export interface AccountContractsProvider {
|
|
13
13
|
getSchnorrAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
14
|
+
getSchnorrInitializerlessAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
14
15
|
getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
15
16
|
getEcdsaKAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
16
17
|
getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact>;
|
|
17
18
|
createStubAccount(address: CompleteAddress, type: AccountType): Promise<Account>;
|
|
18
19
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbWJlZGRlZC9hY2NvdW50LWNvbnRyYWN0LXByb3ZpZGVycy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEUsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU5RCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVuRDs7Ozs7R0FLRztBQUNILE1BQU0sV0FBVyx3QkFBd0I7SUFDdkMseUJBQXlCLENBQUMsVUFBVSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDcEUsd0NBQXdDLENBQUMsVUFBVSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbkYsd0JBQXdCLENBQUMsVUFBVSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDdkUsd0JBQXdCLENBQUMsVUFBVSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDdkUsOEJBQThCLENBQUMsSUFBSSxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM3RSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0NBQ2xGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/embedded/account-contract-providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,yBAAyB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACpE,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7E,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClF"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/embedded/account-contract-providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,yBAAyB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACpE,wCAAwC,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACnF,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7E,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClF"}
|
|
@@ -51,7 +51,7 @@ export declare class EmbeddedWallet extends BaseWallet {
|
|
|
51
51
|
protected walletDB: WalletDB;
|
|
52
52
|
protected accountContracts: AccountContractsProvider;
|
|
53
53
|
protected estimatedGasPadding: number;
|
|
54
|
-
protected stubClassIds: Map<"ecdsasecp256k1" | "ecdsasecp256r1" | "schnorr", Fr>;
|
|
54
|
+
protected stubClassIds: Map<"ecdsasecp256k1" | "ecdsasecp256r1" | "schnorr" | "schnorr_initializerless", Fr>;
|
|
55
55
|
constructor(pxe: PXE, aztecNode: AztecNode, walletDB: WalletDB, accountContracts: AccountContractsProvider, log?: Logger);
|
|
56
56
|
protected getAccountFromAddress(address: AztecAddress): Promise<Account>;
|
|
57
57
|
getAccounts(): Promise<Aliased<AztecAddress>[]>;
|
|
@@ -92,10 +92,11 @@ export declare class EmbeddedWallet extends BaseWallet {
|
|
|
92
92
|
protected createAccountInternal(type: AccountType, secret: Fr, salt: Fr, signingKey: Buffer): Promise<AccountManager>;
|
|
93
93
|
createAndStoreAccount(alias: string, type: AccountType, secret: Fr, salt: Fr, signingKey: Buffer): Promise<AccountManager>;
|
|
94
94
|
createSchnorrAccount(secret: Fr, salt: Fr, signingKey?: Fq, alias?: string): Promise<AccountManager>;
|
|
95
|
+
createSchnorrInitializerlessAccount(secret: Fr, salt: Fr, signingKey?: Fq, alias?: string): Promise<AccountManager>;
|
|
95
96
|
createECDSARAccount(secret: Fr, salt: Fr, signingKey: Buffer, alias?: string): Promise<AccountManager>;
|
|
96
97
|
createECDSAKAccount(secret: Fr, salt: Fr, signingKey: Buffer, alias?: string): Promise<AccountManager>;
|
|
97
98
|
setMinFeePadding(value?: number): void;
|
|
98
99
|
setEstimatedGasPadding(value?: number): void;
|
|
99
100
|
stop(): Promise<void>;
|
|
100
101
|
}
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1iZWRkZWRfd2FsbGV0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW1iZWRkZWQvZW1iZWRkZWRfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE9BQU8sRUFBVyxNQUFNLHlCQUF5QixDQUFDO0FBRWhFLE9BQU8sRUFFTCxLQUFLLHNCQUFzQixFQUUzQixLQUFLLFVBQVUsRUFFaEIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEtBQUssRUFDVixPQUFPLEVBQ1AscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLFdBQVcsRUFDWCxlQUFlLEVBQ2hCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLGNBQWMsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBS3pGLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RSxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3QyxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEtBQUssMkJBQTJCLEVBQWdDLE1BQU0sd0JBQXdCLENBQUM7QUFFeEcsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFakUsT0FB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded_wallet.d.ts","sourceRoot":"","sources":["../../src/embedded/embedded_wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAW,MAAM,yBAAyB,CAAC;AAEhE,OAAO,
|
|
1
|
+
{"version":3,"file":"embedded_wallet.d.ts","sourceRoot":"","sources":["../../src/embedded/embedded_wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { NO_FROM } from '@aztec/aztec.js/account';
|
|
2
2
|
import { CallAuthorizationRequest } from '@aztec/aztec.js/authorization';
|
|
3
|
-
import {
|
|
3
|
+
import { ContractFunctionInteraction, NO_WAIT } from '@aztec/aztec.js/contracts';
|
|
4
4
|
import { AccountManager, TxSimulationResultWithAppOffset } from '@aztec/aztec.js/wallet';
|
|
5
5
|
import { DefaultEntrypoint } from '@aztec/entrypoints/default';
|
|
6
|
+
import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
|
|
7
|
+
import { Schnorr } from '@aztec/foundation/crypto/schnorr';
|
|
6
8
|
import { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
7
9
|
import { getContractClassFromArtifact } from '@aztec/stdlib/contract';
|
|
8
10
|
import { GasSettings } from '@aztec/stdlib/gas';
|
|
9
11
|
import { deriveSigningKey } from '@aztec/stdlib/keys';
|
|
10
12
|
import { SimulationOverrides, TxStatus, collectOffchainEffects, mergeExecutionPayloads } from '@aztec/stdlib/tx';
|
|
11
|
-
import { BaseWallet } from '@aztec/wallet-sdk/base-wallet';
|
|
13
|
+
import { BaseWallet, getGasLimits } from '@aztec/wallet-sdk/base-wallet';
|
|
12
14
|
/** Splits a unified EmbeddedWalletPXEOptions into PXEConfig overrides and PXECreationOptions. */ export function splitPxeOptions(pxe) {
|
|
13
15
|
if (!pxe) {
|
|
14
16
|
return {
|
|
@@ -107,7 +109,8 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
107
109
|
executionPayload.authWitnesses.push(authwit);
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
|
-
const
|
|
112
|
+
const maxTxGasLimits = await this.getMaxTxGasLimits();
|
|
113
|
+
const estimated = getGasLimits(simulationResult.gasUsed, maxTxGasLimits, this.estimatedGasPadding);
|
|
111
114
|
this.log.verbose(`Estimated gas limits for tx: DA=${estimated.gasLimits.daGas} L2=${estimated.gasLimits.l2Gas} teardownDA=${estimated.teardownGasLimits.daGas} teardownL2=${estimated.teardownGasLimits.l2Gas}`);
|
|
112
115
|
const gasSettings = GasSettings.from({
|
|
113
116
|
...opts.fee?.gasSettings,
|
|
@@ -178,6 +181,7 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
178
181
|
const { id: ecdsaClassId } = await getContractClassFromArtifact(ecdsaArtifact);
|
|
179
182
|
await this.pxe.registerContractClass(ecdsaArtifact);
|
|
180
183
|
this.stubClassIds.set('schnorr', schnorrClassId);
|
|
184
|
+
this.stubClassIds.set('schnorr_initializerless', schnorrClassId);
|
|
181
185
|
this.stubClassIds.set('ecdsasecp256k1', ecdsaClassId);
|
|
182
186
|
this.stubClassIds.set('ecdsasecp256r1', ecdsaClassId);
|
|
183
187
|
}
|
|
@@ -257,12 +261,24 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
257
261
|
}
|
|
258
262
|
async createAccountInternal(type, secret, salt, signingKey) {
|
|
259
263
|
let contract;
|
|
264
|
+
let immutablesHash;
|
|
265
|
+
let publicKey;
|
|
260
266
|
switch(type){
|
|
261
267
|
case 'schnorr':
|
|
262
268
|
{
|
|
263
269
|
contract = await this.accountContracts.getSchnorrAccountContract(Fq.fromBuffer(signingKey));
|
|
264
270
|
break;
|
|
265
271
|
}
|
|
272
|
+
case 'schnorr_initializerless':
|
|
273
|
+
{
|
|
274
|
+
contract = await this.accountContracts.getSchnorrInitializerlessAccountContract(Fq.fromBuffer(signingKey));
|
|
275
|
+
publicKey = await new Schnorr().computePublicKey(Fq.fromBuffer(signingKey));
|
|
276
|
+
immutablesHash = await poseidon2Hash([
|
|
277
|
+
publicKey.x,
|
|
278
|
+
publicKey.y
|
|
279
|
+
]);
|
|
280
|
+
break;
|
|
281
|
+
}
|
|
266
282
|
case 'ecdsasecp256k1':
|
|
267
283
|
{
|
|
268
284
|
contract = await this.accountContracts.getEcdsaKAccountContract(signingKey);
|
|
@@ -279,13 +295,28 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
279
295
|
}
|
|
280
296
|
}
|
|
281
297
|
const accountManager = await AccountManager.create(this, secret, contract, {
|
|
282
|
-
salt
|
|
298
|
+
salt,
|
|
299
|
+
immutablesHash
|
|
283
300
|
});
|
|
284
301
|
const instance = accountManager.getInstance();
|
|
285
302
|
const existingInstance = await this.pxe.getContractInstance(instance.address);
|
|
286
303
|
if (!existingInstance) {
|
|
287
304
|
const existingArtifact = await this.pxe.getContractArtifact(instance.currentContractClassId);
|
|
305
|
+
const artifact = existingArtifact ?? await accountManager.getAccountContract().getContractArtifact();
|
|
288
306
|
await this.registerContract(instance, !existingArtifact ? await accountManager.getAccountContract().getContractArtifact() : undefined, accountManager.getSecretKey());
|
|
307
|
+
if (type === 'schnorr_initializerless') {
|
|
308
|
+
const constructor = artifact.functions.find((f)=>f.name === 'constructor');
|
|
309
|
+
if (!constructor) {
|
|
310
|
+
throw new Error('Could not create SchnorrInitializerlessAccountContract: constructor ABI not found');
|
|
311
|
+
}
|
|
312
|
+
const storeCall = new ContractFunctionInteraction(this, instance.address, constructor, [
|
|
313
|
+
publicKey.x,
|
|
314
|
+
publicKey.y
|
|
315
|
+
]);
|
|
316
|
+
await storeCall.simulate({
|
|
317
|
+
from: instance.address
|
|
318
|
+
});
|
|
319
|
+
}
|
|
289
320
|
}
|
|
290
321
|
return accountManager;
|
|
291
322
|
}
|
|
@@ -304,6 +335,10 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
304
335
|
const sk = signingKey ?? deriveSigningKey(secret);
|
|
305
336
|
return this.createAndStoreAccount(alias ?? '', 'schnorr', secret, salt, sk.toBuffer());
|
|
306
337
|
}
|
|
338
|
+
createSchnorrInitializerlessAccount(secret, salt, signingKey, alias) {
|
|
339
|
+
const sk = signingKey ?? deriveSigningKey(secret);
|
|
340
|
+
return this.createAndStoreAccount(alias ?? '', 'schnorr_initializerless', secret, salt, sk.toBuffer());
|
|
341
|
+
}
|
|
307
342
|
createECDSARAccount(secret, salt, signingKey, alias) {
|
|
308
343
|
return this.createAndStoreAccount(alias ?? '', 'ecdsasecp256r1', secret, salt, signingKey);
|
|
309
344
|
}
|
|
@@ -3,9 +3,9 @@ import { createLogger } from '@aztec/foundation/log';
|
|
|
3
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
|
-
import { getStandardAuthRegistry } from '@aztec/standard-contracts/auth-registry
|
|
7
|
-
import { getStandardHandshakeRegistry } from '@aztec/standard-contracts/handshake-registry
|
|
8
|
-
import { getStandardMultiCallEntrypoint } from '@aztec/standard-contracts/multi-call-entrypoint
|
|
6
|
+
import { getStandardAuthRegistry } from '@aztec/standard-contracts/auth-registry';
|
|
7
|
+
import { getStandardHandshakeRegistry } from '@aztec/standard-contracts/handshake-registry';
|
|
8
|
+
import { getStandardMultiCallEntrypoint } from '@aztec/standard-contracts/multi-call-entrypoint';
|
|
9
9
|
import { BundleAccountContractsProvider } from '../account-contract-providers/bundle.js';
|
|
10
10
|
import { EmbeddedWallet, splitPxeOptions } from '../embedded_wallet.js';
|
|
11
11
|
import { WalletDB } from '../wallet_db.js';
|
|
@@ -3,7 +3,7 @@ import { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
|
3
3
|
import type { LogFn } from '@aztec/foundation/log';
|
|
4
4
|
import type { AztecAsyncKVStore } from '@aztec/kv-store';
|
|
5
5
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
|
-
export declare const AccountTypes: readonly ["schnorr", "ecdsasecp256r1", "ecdsasecp256k1"];
|
|
6
|
+
export declare const AccountTypes: readonly ["schnorr", "schnorr_initializerless", "ecdsasecp256r1", "ecdsasecp256k1"];
|
|
7
7
|
export type AccountType = (typeof AccountTypes)[number];
|
|
8
8
|
export declare class WalletDB {
|
|
9
9
|
#private;
|
|
@@ -24,7 +24,7 @@ export declare class WalletDB {
|
|
|
24
24
|
address: string | AztecAddress;
|
|
25
25
|
secretKey: Fr;
|
|
26
26
|
salt: Fr;
|
|
27
|
-
type: "ecdsasecp256k1" | "ecdsasecp256r1" | "schnorr";
|
|
27
|
+
type: "ecdsasecp256k1" | "ecdsasecp256r1" | "schnorr" | "schnorr_initializerless";
|
|
28
28
|
signingKey: Buffer<ArrayBufferLike>;
|
|
29
29
|
}>;
|
|
30
30
|
listAccounts(): Promise<Aliased<AztecAddress>[]>;
|
|
@@ -32,4 +32,4 @@ export declare class WalletDB {
|
|
|
32
32
|
deleteAccount(address: AztecAddress): Promise<void>;
|
|
33
33
|
close(): Promise<void>;
|
|
34
34
|
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0X2RiLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW1iZWRkZWQvd2FsbGV0X2RiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0saUJBQWlCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELGVBQU8sTUFBTSxZQUFZLHFGQUFzRixDQUFDO0FBQ2hILE1BQU0sTUFBTSxXQUFXLEdBQUcsQ0FBQyxPQUFPLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBTXhELHFCQUFhLFFBQVE7O0lBS2pCLE9BQU8sQ0FBQyxLQUFLO0lBQ2IsT0FBTyxDQUFDLE9BQU87SUFMakIsT0FBTyxDQUFDLFFBQVEsQ0FBZ0M7SUFDaEQsT0FBTyxDQUFDLE9BQU8sQ0FBZ0M7SUFFL0MsWUFDVSxLQUFLLEVBQUUsaUJBQWlCLEVBQ3hCLE9BQU8sRUFBRSxLQUFLLEVBSXZCO0lBRUssWUFBWSxDQUNoQixPQUFPLEVBQUUsWUFBWSxFQUNyQixFQUNFLElBQUksRUFDSixTQUFTLEVBQ1QsSUFBSSxFQUNKLEtBQUssRUFDTCxVQUFVLEVBQ1gsRUFBRTtRQUNELElBQUksRUFBRSxXQUFXLENBQUM7UUFDbEIsU0FBUyxFQUFFLEVBQUUsQ0FBQztRQUNkLElBQUksRUFBRSxFQUFFLENBQUM7UUFDVCxVQUFVLEVBQUUsRUFBRSxHQUFHLE1BQU0sQ0FBQztRQUN4QixLQUFLLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztLQUMzQixFQUNELEdBQUcsR0FBRSxLQUFvQixpQkFhMUI7SUFFSyxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRSxLQUFvQixpQkFHaEY7SUFFSyxlQUFlLENBQUMsT0FBTyxFQUFFLFlBQVksR0FBRyxNQUFNOzs7Ozs7T0FjbkQ7SUFFSyxZQUFZLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBV3JEO0lBRUssV0FBVyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQVNwRDtJQW9CSyxhQUFhLENBQUMsT0FBTyxFQUFFLFlBQVksaUJBYXhDO0lBRUssS0FBSyxrQkFFVjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet_db.d.ts","sourceRoot":"","sources":["../../src/embedded/wallet_db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"wallet_db.d.ts","sourceRoot":"","sources":["../../src/embedded/wallet_db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,eAAO,MAAM,YAAY,qFAAsF,CAAC;AAChH,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAMxD,qBAAa,QAAQ;;IAKjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,OAAO;IALjB,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,OAAO,CAAgC;IAE/C,YACU,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,KAAK,EAIvB;IAEK,YAAY,CAChB,OAAO,EAAE,YAAY,EACrB,EACE,IAAI,EACJ,SAAS,EACT,IAAI,EACJ,KAAK,EACL,UAAU,EACX,EAAE;QACD,IAAI,EAAE,WAAW,CAAC;QAClB,SAAS,EAAE,EAAE,CAAC;QACd,IAAI,EAAE,EAAE,CAAC;QACT,UAAU,EAAE,EAAE,GAAG,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;KAC3B,EACD,GAAG,GAAE,KAAoB,iBAa1B;IAEK,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAE,KAAoB,iBAGhF;IAEK,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM;;;;;;OAcnD;IAEK,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAWrD;IAEK,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CASpD;IAoBK,aAAa,CAAC,OAAO,EAAE,YAAY,iBAaxC;IAEK,KAAK,kBAEV;CACF"}
|
package/dest/testing.d.ts
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import type { InitialAccountData } from '@aztec/accounts/testing';
|
|
2
|
-
import type { WaitOpts } from '@aztec/aztec.js/contracts';
|
|
3
2
|
import type { AccountManager } from '@aztec/aztec.js/wallet';
|
|
4
3
|
import type { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
5
4
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
5
|
interface WalletWithSchnorrAccounts {
|
|
7
|
-
|
|
6
|
+
createSchnorrInitializerlessAccount(secret: Fr, salt: Fr, signingKey?: Fq, alias?: string): Promise<AccountManager>;
|
|
8
7
|
}
|
|
9
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Creates the given (genesis-funded) test accounts as initializerless schnorr accounts. Initializerless
|
|
10
|
+
* accounts need no deployment tx — creating one registers the instance and materializes its immutable keys
|
|
11
|
+
* locally — so the accounts are usable as soon as they are created, funded via genesis at their addresses.
|
|
12
|
+
*/
|
|
13
|
+
export declare function createFundedInitializerlessAccounts(wallet: WalletWithSchnorrAccounts, accountsData: InitialAccountData[]): Promise<AccountManager[]>;
|
|
10
14
|
export declare function registerInitialLocalNetworkAccountsInWallet(wallet: WalletWithSchnorrAccounts): Promise<AztecAddress[]>;
|
|
11
15
|
export {};
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGluZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Rlc3RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELFVBQVUseUJBQXlCO0lBQ2pDLG1DQUFtQyxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztDQUNySDtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBc0IsbUNBQW1DLENBQ3ZELE1BQU0sRUFBRSx5QkFBeUIsRUFDakMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLDZCQU9uQztBQUVELHdCQUFzQiwyQ0FBMkMsQ0FDL0QsTUFBTSxFQUFFLHlCQUF5QixHQUNoQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FRekIifQ==
|
package/dest/testing.d.ts.map
CHANGED
|
@@ -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;
|
|
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,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,mCAAmC,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CACrH;AAED;;;;GAIG;AACH,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,yBAAyB,EACjC,YAAY,EAAE,kBAAkB,EAAE,6BAOnC;AAED,wBAAsB,2CAA2C,CAC/D,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAQzB"}
|
package/dest/testing.js
CHANGED
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
import { getInitialTestAccountsData } from '@aztec/accounts/testing/lazy';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Creates the given (genesis-funded) test accounts as initializerless schnorr accounts. Initializerless
|
|
4
|
+
* accounts need no deployment tx — creating one registers the instance and materializes its immutable keys
|
|
5
|
+
* locally — so the accounts are usable as soon as they are created, funded via genesis at their addresses.
|
|
6
|
+
*/ export async function createFundedInitializerlessAccounts(wallet, accountsData) {
|
|
4
7
|
const accountManagers = [];
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const { secret, salt, signingKey } = accountsData[i];
|
|
8
|
-
const accountManager = await wallet.createSchnorrAccount(secret, salt, signingKey);
|
|
9
|
-
const deployMethod = await accountManager.getDeployMethod();
|
|
10
|
-
await deployMethod.send({
|
|
11
|
-
from: NO_FROM,
|
|
12
|
-
skipClassPublication: i !== 0,
|
|
13
|
-
wait: waitOptions
|
|
14
|
-
});
|
|
15
|
-
accountManagers.push(accountManager);
|
|
8
|
+
for (const { secret, salt, signingKey } of accountsData){
|
|
9
|
+
accountManagers.push(await wallet.createSchnorrInitializerlessAccount(secret, salt, signingKey));
|
|
16
10
|
}
|
|
17
11
|
return accountManagers;
|
|
18
12
|
}
|
|
19
13
|
export async function registerInitialLocalNetworkAccountsInWallet(wallet) {
|
|
20
14
|
const testAccounts = await getInitialTestAccountsData();
|
|
21
15
|
return Promise.all(testAccounts.map(async (account)=>{
|
|
22
|
-
return (await wallet.
|
|
16
|
+
return (await wallet.createSchnorrInitializerlessAccount(account.secret, account.salt, account.signingKey)).address;
|
|
23
17
|
}));
|
|
24
18
|
}
|
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": "5.0.0-nightly.
|
|
4
|
+
"version": "5.0.0-nightly.20260613",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
"./embedded": {
|
|
@@ -28,16 +28,16 @@
|
|
|
28
28
|
"../package.common.json"
|
|
29
29
|
],
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@aztec/accounts": "5.0.0-nightly.
|
|
32
|
-
"@aztec/aztec.js": "5.0.0-nightly.
|
|
33
|
-
"@aztec/entrypoints": "5.0.0-nightly.
|
|
34
|
-
"@aztec/foundation": "5.0.0-nightly.
|
|
35
|
-
"@aztec/kv-store": "5.0.0-nightly.
|
|
36
|
-
"@aztec/protocol-contracts": "5.0.0-nightly.
|
|
37
|
-
"@aztec/pxe": "5.0.0-nightly.
|
|
38
|
-
"@aztec/standard-contracts": "5.0.0-nightly.
|
|
39
|
-
"@aztec/stdlib": "5.0.0-nightly.
|
|
40
|
-
"@aztec/wallet-sdk": "5.0.0-nightly.
|
|
31
|
+
"@aztec/accounts": "5.0.0-nightly.20260613",
|
|
32
|
+
"@aztec/aztec.js": "5.0.0-nightly.20260613",
|
|
33
|
+
"@aztec/entrypoints": "5.0.0-nightly.20260613",
|
|
34
|
+
"@aztec/foundation": "5.0.0-nightly.20260613",
|
|
35
|
+
"@aztec/kv-store": "5.0.0-nightly.20260613",
|
|
36
|
+
"@aztec/protocol-contracts": "5.0.0-nightly.20260613",
|
|
37
|
+
"@aztec/pxe": "5.0.0-nightly.20260613",
|
|
38
|
+
"@aztec/standard-contracts": "5.0.0-nightly.20260613",
|
|
39
|
+
"@aztec/stdlib": "5.0.0-nightly.20260613",
|
|
40
|
+
"@aztec/wallet-sdk": "5.0.0-nightly.20260613"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@jest/globals": "^30.0.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EcdsaKAccountContract, EcdsaRAccountContract } from '@aztec/accounts/ecdsa';
|
|
2
2
|
import { StubEcdsaAccountContractArtifact, createStubEcdsaAccount } from '@aztec/accounts/ecdsa/stub';
|
|
3
|
-
import { SchnorrAccountContract } from '@aztec/accounts/schnorr';
|
|
3
|
+
import { SchnorrAccountContract, SchnorrInitializerlessAccountContract } from '@aztec/accounts/schnorr';
|
|
4
4
|
import { StubSchnorrAccountContractArtifact, createStubSchnorrAccount } from '@aztec/accounts/schnorr/stub';
|
|
5
5
|
import type { Account, AccountContract } from '@aztec/aztec.js/account';
|
|
6
6
|
import type { Fq } from '@aztec/foundation/curves/bn254';
|
|
@@ -19,6 +19,10 @@ export class BundleAccountContractsProvider implements AccountContractsProvider
|
|
|
19
19
|
return Promise.resolve(new SchnorrAccountContract(signingKey));
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
+
getSchnorrInitializerlessAccountContract(signingKey: Fq): Promise<AccountContract> {
|
|
23
|
+
return Promise.resolve(new SchnorrInitializerlessAccountContract(signingKey));
|
|
24
|
+
}
|
|
25
|
+
|
|
22
26
|
getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract> {
|
|
23
27
|
return Promise.resolve(new EcdsaRAccountContract(signingKey));
|
|
24
28
|
}
|
|
@@ -16,6 +16,11 @@ export class LazyAccountContractsProvider implements AccountContractsProvider {
|
|
|
16
16
|
return new SchnorrAccountContract(signingKey);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
async getSchnorrInitializerlessAccountContract(signingKey: Fq): Promise<AccountContract> {
|
|
20
|
+
const { SchnorrInitializerlessAccountContract } = await import('@aztec/accounts/schnorr/lazy');
|
|
21
|
+
return new SchnorrInitializerlessAccountContract(signingKey);
|
|
22
|
+
}
|
|
23
|
+
|
|
19
24
|
async getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract> {
|
|
20
25
|
const { EcdsaRAccountContract } = await import('@aztec/accounts/ecdsa/lazy');
|
|
21
26
|
return new EcdsaRAccountContract(signingKey);
|
|
@@ -13,6 +13,7 @@ import type { AccountType } from '../wallet_db.js';
|
|
|
13
13
|
*/
|
|
14
14
|
export interface AccountContractsProvider {
|
|
15
15
|
getSchnorrAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
16
|
+
getSchnorrInitializerlessAccountContract(signingKey: Fq): Promise<AccountContract>;
|
|
16
17
|
getEcdsaRAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
17
18
|
getEcdsaKAccountContract(signingKey: Buffer): Promise<AccountContract>;
|
|
18
19
|
getStubAccountContractArtifact(type: AccountType): Promise<ContractArtifact>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { type Account, NO_FROM } from '@aztec/aztec.js/account';
|
|
2
2
|
import { CallAuthorizationRequest } from '@aztec/aztec.js/authorization';
|
|
3
3
|
import {
|
|
4
|
+
ContractFunctionInteraction,
|
|
4
5
|
type InteractionWaitOptions,
|
|
5
6
|
NO_WAIT,
|
|
6
7
|
type SendReturn,
|
|
7
8
|
type WaitOpts,
|
|
8
|
-
getGasLimits,
|
|
9
9
|
} from '@aztec/aztec.js/contracts';
|
|
10
10
|
import type {
|
|
11
11
|
Aliased,
|
|
@@ -19,6 +19,8 @@ import type {
|
|
|
19
19
|
import { AccountManager, TxSimulationResultWithAppOffset } from '@aztec/aztec.js/wallet';
|
|
20
20
|
import type { DefaultAccountEntrypointOptions } from '@aztec/entrypoints/account';
|
|
21
21
|
import { DefaultEntrypoint } from '@aztec/entrypoints/default';
|
|
22
|
+
import { poseidon2Hash } from '@aztec/foundation/crypto/poseidon';
|
|
23
|
+
import { Schnorr } from '@aztec/foundation/crypto/schnorr';
|
|
22
24
|
import { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
23
25
|
import type { Logger } from '@aztec/foundation/log';
|
|
24
26
|
import type { AztecAsyncKVStore } from '@aztec/kv-store';
|
|
@@ -41,7 +43,7 @@ import {
|
|
|
41
43
|
collectOffchainEffects,
|
|
42
44
|
mergeExecutionPayloads,
|
|
43
45
|
} from '@aztec/stdlib/tx';
|
|
44
|
-
import { BaseWallet, type SimulateViaEntrypointOptions } from '@aztec/wallet-sdk/base-wallet';
|
|
46
|
+
import { BaseWallet, type SimulateViaEntrypointOptions, getGasLimits } from '@aztec/wallet-sdk/base-wallet';
|
|
45
47
|
|
|
46
48
|
import type { AccountContractsProvider } from './account-contract-providers/types.js';
|
|
47
49
|
import { type AccountType, WalletDB } from './wallet_db.js';
|
|
@@ -191,7 +193,8 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
191
193
|
executionPayload.authWitnesses.push(authwit);
|
|
192
194
|
}
|
|
193
195
|
}
|
|
194
|
-
const
|
|
196
|
+
const maxTxGasLimits = await this.getMaxTxGasLimits();
|
|
197
|
+
const estimated = getGasLimits(simulationResult.gasUsed, maxTxGasLimits, this.estimatedGasPadding);
|
|
195
198
|
this.log.verbose(
|
|
196
199
|
`Estimated gas limits for tx: DA=${estimated.gasLimits.daGas} L2=${estimated.gasLimits.l2Gas} teardownDA=${estimated.teardownGasLimits.daGas} teardownL2=${estimated.teardownGasLimits.l2Gas}`,
|
|
197
200
|
);
|
|
@@ -284,6 +287,7 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
284
287
|
await this.pxe.registerContractClass(ecdsaArtifact);
|
|
285
288
|
|
|
286
289
|
this.stubClassIds.set('schnorr', schnorrClassId);
|
|
290
|
+
this.stubClassIds.set('schnorr_initializerless', schnorrClassId);
|
|
287
291
|
this.stubClassIds.set('ecdsasecp256k1', ecdsaClassId);
|
|
288
292
|
this.stubClassIds.set('ecdsasecp256r1', ecdsaClassId);
|
|
289
293
|
}
|
|
@@ -388,11 +392,19 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
388
392
|
signingKey: Buffer,
|
|
389
393
|
): Promise<AccountManager> {
|
|
390
394
|
let contract;
|
|
395
|
+
let immutablesHash;
|
|
396
|
+
let publicKey;
|
|
391
397
|
switch (type) {
|
|
392
398
|
case 'schnorr': {
|
|
393
399
|
contract = await this.accountContracts.getSchnorrAccountContract(Fq.fromBuffer(signingKey));
|
|
394
400
|
break;
|
|
395
401
|
}
|
|
402
|
+
case 'schnorr_initializerless': {
|
|
403
|
+
contract = await this.accountContracts.getSchnorrInitializerlessAccountContract(Fq.fromBuffer(signingKey));
|
|
404
|
+
publicKey = await new Schnorr().computePublicKey(Fq.fromBuffer(signingKey));
|
|
405
|
+
immutablesHash = await poseidon2Hash([publicKey.x, publicKey.y]);
|
|
406
|
+
break;
|
|
407
|
+
}
|
|
396
408
|
case 'ecdsasecp256k1': {
|
|
397
409
|
contract = await this.accountContracts.getEcdsaKAccountContract(signingKey);
|
|
398
410
|
break;
|
|
@@ -406,17 +418,29 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
406
418
|
}
|
|
407
419
|
}
|
|
408
420
|
|
|
409
|
-
const accountManager = await AccountManager.create(this, secret, contract, { salt });
|
|
421
|
+
const accountManager = await AccountManager.create(this, secret, contract, { salt, immutablesHash });
|
|
410
422
|
|
|
411
423
|
const instance = accountManager.getInstance();
|
|
412
424
|
const existingInstance = await this.pxe.getContractInstance(instance.address);
|
|
413
425
|
if (!existingInstance) {
|
|
414
426
|
const existingArtifact = await this.pxe.getContractArtifact(instance.currentContractClassId);
|
|
427
|
+
const artifact = existingArtifact ?? (await accountManager.getAccountContract().getContractArtifact());
|
|
415
428
|
await this.registerContract(
|
|
416
429
|
instance,
|
|
417
430
|
!existingArtifact ? await accountManager.getAccountContract().getContractArtifact() : undefined,
|
|
418
431
|
accountManager.getSecretKey(),
|
|
419
432
|
);
|
|
433
|
+
if (type === 'schnorr_initializerless') {
|
|
434
|
+
const constructor = artifact.functions.find(f => f.name === 'constructor');
|
|
435
|
+
if (!constructor) {
|
|
436
|
+
throw new Error('Could not create SchnorrInitializerlessAccountContract: constructor ABI not found');
|
|
437
|
+
}
|
|
438
|
+
const storeCall = new ContractFunctionInteraction(this, instance.address, constructor, [
|
|
439
|
+
publicKey!.x,
|
|
440
|
+
publicKey!.y,
|
|
441
|
+
]);
|
|
442
|
+
await storeCall.simulate({ from: instance.address });
|
|
443
|
+
}
|
|
420
444
|
}
|
|
421
445
|
return accountManager;
|
|
422
446
|
}
|
|
@@ -438,6 +462,11 @@ export class EmbeddedWallet extends BaseWallet {
|
|
|
438
462
|
return this.createAndStoreAccount(alias ?? '', 'schnorr', secret, salt, sk.toBuffer());
|
|
439
463
|
}
|
|
440
464
|
|
|
465
|
+
createSchnorrInitializerlessAccount(secret: Fr, salt: Fr, signingKey?: Fq, alias?: string): Promise<AccountManager> {
|
|
466
|
+
const sk = signingKey ?? deriveSigningKey(secret);
|
|
467
|
+
return this.createAndStoreAccount(alias ?? '', 'schnorr_initializerless', secret, salt, sk.toBuffer());
|
|
468
|
+
}
|
|
469
|
+
|
|
441
470
|
createECDSARAccount(secret: Fr, salt: Fr, signingKey: Buffer, alias?: string): Promise<AccountManager> {
|
|
442
471
|
return this.createAndStoreAccount(alias ?? '', 'ecdsasecp256r1', secret, salt, signingKey);
|
|
443
472
|
}
|
|
@@ -3,9 +3,9 @@ import { type Logger, createLogger } from '@aztec/foundation/log';
|
|
|
3
3
|
import { createStore, openTmpStore } from '@aztec/kv-store/lmdb-v2';
|
|
4
4
|
import { type PXEConfig, getPXEConfig } from '@aztec/pxe/config';
|
|
5
5
|
import { type PXE, type PXECreationOptions, createPXE } from '@aztec/pxe/server';
|
|
6
|
-
import { getStandardAuthRegistry } from '@aztec/standard-contracts/auth-registry
|
|
7
|
-
import { getStandardHandshakeRegistry } from '@aztec/standard-contracts/handshake-registry
|
|
8
|
-
import { getStandardMultiCallEntrypoint } from '@aztec/standard-contracts/multi-call-entrypoint
|
|
6
|
+
import { getStandardAuthRegistry } from '@aztec/standard-contracts/auth-registry';
|
|
7
|
+
import { getStandardHandshakeRegistry } from '@aztec/standard-contracts/handshake-registry';
|
|
8
|
+
import { getStandardMultiCallEntrypoint } from '@aztec/standard-contracts/multi-call-entrypoint';
|
|
9
9
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
10
10
|
|
|
11
11
|
import { BundleAccountContractsProvider } from '../account-contract-providers/bundle.js';
|
|
@@ -4,7 +4,7 @@ import type { LogFn } from '@aztec/foundation/log';
|
|
|
4
4
|
import type { AztecAsyncKVStore, AztecAsyncMap } from '@aztec/kv-store';
|
|
5
5
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
6
|
|
|
7
|
-
export const AccountTypes = ['schnorr', 'ecdsasecp256r1', 'ecdsasecp256k1'] as const;
|
|
7
|
+
export const AccountTypes = ['schnorr', 'schnorr_initializerless', 'ecdsasecp256r1', 'ecdsasecp256k1'] as const;
|
|
8
8
|
export type AccountType = (typeof AccountTypes)[number];
|
|
9
9
|
|
|
10
10
|
function accountKey(field: string, address: AztecAddress | string): string {
|
package/src/testing.ts
CHANGED
|
@@ -1,32 +1,25 @@
|
|
|
1
1
|
import type { InitialAccountData } from '@aztec/accounts/testing';
|
|
2
2
|
import { getInitialTestAccountsData } from '@aztec/accounts/testing/lazy';
|
|
3
|
-
import { NO_FROM } from '@aztec/aztec.js/account';
|
|
4
|
-
import type { WaitOpts } from '@aztec/aztec.js/contracts';
|
|
5
3
|
import type { AccountManager } from '@aztec/aztec.js/wallet';
|
|
6
4
|
import type { Fq, Fr } from '@aztec/foundation/curves/bn254';
|
|
7
5
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
8
6
|
|
|
9
7
|
interface WalletWithSchnorrAccounts {
|
|
10
|
-
|
|
8
|
+
createSchnorrInitializerlessAccount(secret: Fr, salt: Fr, signingKey?: Fq, alias?: string): Promise<AccountManager>;
|
|
11
9
|
}
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Creates the given (genesis-funded) test accounts as initializerless schnorr accounts. Initializerless
|
|
13
|
+
* accounts need no deployment tx — creating one registers the instance and materializes its immutable keys
|
|
14
|
+
* locally — so the accounts are usable as soon as they are created, funded via genesis at their addresses.
|
|
15
|
+
*/
|
|
16
|
+
export async function createFundedInitializerlessAccounts(
|
|
14
17
|
wallet: WalletWithSchnorrAccounts,
|
|
15
18
|
accountsData: InitialAccountData[],
|
|
16
|
-
waitOptions?: WaitOpts,
|
|
17
19
|
) {
|
|
18
20
|
const accountManagers = [];
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const { secret, salt, signingKey } = accountsData[i];
|
|
22
|
-
const accountManager = await wallet.createSchnorrAccount(secret, salt, signingKey);
|
|
23
|
-
const deployMethod = await accountManager.getDeployMethod();
|
|
24
|
-
await deployMethod.send({
|
|
25
|
-
from: NO_FROM,
|
|
26
|
-
skipClassPublication: i !== 0,
|
|
27
|
-
wait: waitOptions,
|
|
28
|
-
});
|
|
29
|
-
accountManagers.push(accountManager);
|
|
21
|
+
for (const { secret, salt, signingKey } of accountsData) {
|
|
22
|
+
accountManagers.push(await wallet.createSchnorrInitializerlessAccount(secret, salt, signingKey));
|
|
30
23
|
}
|
|
31
24
|
return accountManagers;
|
|
32
25
|
}
|
|
@@ -37,7 +30,8 @@ export async function registerInitialLocalNetworkAccountsInWallet(
|
|
|
37
30
|
const testAccounts = await getInitialTestAccountsData();
|
|
38
31
|
return Promise.all(
|
|
39
32
|
testAccounts.map(async account => {
|
|
40
|
-
return (await wallet.
|
|
33
|
+
return (await wallet.createSchnorrInitializerlessAccount(account.secret, account.salt, account.signingKey))
|
|
34
|
+
.address;
|
|
41
35
|
}),
|
|
42
36
|
);
|
|
43
37
|
}
|