@aztec/aztec.js 0.28.1 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/account/interface.d.ts +17 -6
- package/dest/account/interface.d.ts.map +1 -1
- package/dest/account/interface.js +1 -1
- package/dest/account_manager/index.d.ts.map +1 -1
- package/dest/account_manager/index.js +6 -7
- package/dest/contract/contract_base.d.ts +1 -2
- package/dest/contract/contract_base.d.ts.map +1 -1
- package/dest/contract/contract_base.js +1 -1
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +5 -4
- package/dest/deployment/deploy_instance.d.ts +1 -4
- package/dest/deployment/deploy_instance.d.ts.map +1 -1
- package/dest/deployment/deploy_instance.js +9 -6
- package/dest/fee/native_fee_payment_method.d.ts +6 -3
- package/dest/fee/native_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/native_fee_payment_method.js +19 -13
- package/dest/fee/private_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/private_fee_payment_method.js +4 -4
- package/dest/fee/public_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/public_fee_payment_method.js +4 -4
- package/dest/index.d.ts +4 -3
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +5 -4
- package/dest/rpc_clients/pxe_client.d.ts.map +1 -1
- package/dest/rpc_clients/pxe_client.js +2 -4
- package/dest/utils/authwit.d.ts +2 -2
- package/dest/utils/authwit.d.ts.map +1 -1
- package/dest/utils/authwit.js +6 -6
- package/dest/utils/index.d.ts +0 -1
- package/dest/utils/index.d.ts.map +1 -1
- package/dest/utils/index.js +1 -2
- package/dest/wallet/account_wallet.d.ts +36 -8
- package/dest/wallet/account_wallet.d.ts.map +1 -1
- package/dest/wallet/account_wallet.js +36 -9
- package/dest/wallet/base_wallet.d.ts +17 -5
- package/dest/wallet/base_wallet.d.ts.map +1 -1
- package/dest/wallet/base_wallet.js +12 -9
- package/dest/wallet/signerless_wallet.d.ts +1 -1
- package/dest/wallet/signerless_wallet.d.ts.map +1 -1
- package/dest/wallet/signerless_wallet.js +2 -2
- package/package.json +7 -7
- package/src/account/interface.ts +22 -6
- package/src/account_manager/index.ts +5 -6
- package/src/contract/contract_base.ts +1 -2
- package/src/contract/deploy_method.ts +3 -2
- package/src/deployment/deploy_instance.ts +11 -10
- package/src/fee/native_fee_payment_method.ts +18 -10
- package/src/fee/private_fee_payment_method.ts +2 -9
- package/src/fee/public_fee_payment_method.ts +1 -5
- package/src/index.ts +1 -5
- package/src/rpc_clients/pxe_client.ts +0 -4
- package/src/utils/authwit.ts +5 -5
- package/src/utils/index.ts +0 -1
- package/src/wallet/account_wallet.ts +76 -9
- package/src/wallet/base_wallet.ts +27 -12
- package/src/wallet/signerless_wallet.ts +1 -1
- package/dest/utils/l2_contracts.d.ts +0 -10
- package/dest/utils/l2_contracts.d.ts.map +0 -1
- package/dest/utils/l2_contracts.js +0 -10
- package/src/utils/l2_contracts.ts +0 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authwit.d.ts","sourceRoot":"","sources":["../../src/utils/authwit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAkB,MAAM,oBAAoB,CAAC;AAItE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,yBAAyB,WAAY,YAAY,
|
|
1
|
+
{"version":3,"file":"authwit.d.ts","sourceRoot":"","sources":["../../src/utils/authwit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAkB,MAAM,oBAAoB,CAAC;AAItE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,yBAAyB,WAAY,YAAY,UAAU,YAAY,OASnF,CAAC;AAGF;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,SAAU,EAAE,EAAE,OAKjD,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,aAAc,YAAY,aAAa,EAAE,OAK5E,CAAC"}
|
package/dest/utils/authwit.js
CHANGED
|
@@ -11,14 +11,14 @@ import { pedersenHash } from '@aztec/foundation/crypto';
|
|
|
11
11
|
* `bob` then signs the message hash and gives it to `alice` who can then perform the
|
|
12
12
|
* action.
|
|
13
13
|
* @param caller - The caller approved to make the call
|
|
14
|
-
* @param
|
|
14
|
+
* @param action - The request to be made (function call)
|
|
15
15
|
* @returns The message hash for the witness
|
|
16
16
|
*/
|
|
17
|
-
export const computeAuthWitMessageHash = (caller,
|
|
18
|
-
return computeOuterAuthWitHash(
|
|
17
|
+
export const computeAuthWitMessageHash = (caller, action) => {
|
|
18
|
+
return computeOuterAuthWitHash(action.to.toField(), computeInnerAuthWitHash([
|
|
19
19
|
caller.toField(),
|
|
20
|
-
|
|
21
|
-
PackedArguments.fromArgs(
|
|
20
|
+
action.functionData.selector.toField(),
|
|
21
|
+
PackedArguments.fromArgs(action.args).hash,
|
|
22
22
|
]));
|
|
23
23
|
};
|
|
24
24
|
// docs:end:authwit_computeAuthWitMessageHash
|
|
@@ -48,4 +48,4 @@ export const computeInnerAuthWitHash = (args) => {
|
|
|
48
48
|
export const computeOuterAuthWitHash = (consumer, innerHash) => {
|
|
49
49
|
return pedersenHash([consumer.toField(), innerHash].map(fr => fr.toBuffer()), GeneratorIndex.AUTHWIT_OUTER);
|
|
50
50
|
};
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aHdpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9hdXRod2l0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckUsT0FBTyxFQUFvQixjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFeEQsK0NBQStDO0FBQy9DOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxNQUFvQixFQUFFLE1BQW9CLEVBQUUsRUFBRTtJQUN0RixPQUFPLHVCQUF1QixDQUM1QixNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUNuQix1QkFBdUIsQ0FBQztRQUN0QixNQUFNLENBQUMsT0FBTyxFQUFFO1FBQ2hCLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtRQUN0QyxlQUFlLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJO0tBQzNDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBQ0YsNkNBQTZDO0FBRTdDOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLElBQVUsRUFBRSxFQUFFO0lBQ3BELE9BQU8sWUFBWSxDQUNqQixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQzdCLGNBQWMsQ0FBQyxhQUFhLENBQzdCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBQUMsUUFBc0IsRUFBRSxTQUFhLEVBQUUsRUFBRTtJQUMvRSxPQUFPLFlBQVksQ0FDakIsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQ3hELGNBQWMsQ0FBQyxhQUFhLENBQzdCLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
package/dest/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC"}
|
package/dest/utils/index.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
export * from './pub_key.js';
|
|
2
2
|
export * from './l1_contracts.js';
|
|
3
|
-
export * from './l2_contracts.js';
|
|
4
3
|
export * from './abi_types.js';
|
|
5
4
|
export * from './cheat_codes.js';
|
|
6
5
|
export * from './authwit.js';
|
|
7
6
|
export * from './pxe.js';
|
|
8
7
|
export * from './account.js';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxjQUFjLENBQUMifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
import { AuthWitness, FunctionCall, PXE, TxExecutionRequest } from '@aztec/circuit-types';
|
|
3
|
-
import { Fr } from '@aztec/circuits.js';
|
|
3
|
+
import { AztecAddress, Fr } from '@aztec/circuits.js';
|
|
4
4
|
import { AccountInterface, FeeOptions } from '../account/interface.js';
|
|
5
5
|
import { ContractFunctionInteraction } from '../contract/contract_function_interaction.js';
|
|
6
6
|
import { BaseWallet } from './base_wallet.js';
|
|
@@ -11,25 +11,53 @@ export declare class AccountWallet extends BaseWallet {
|
|
|
11
11
|
protected account: AccountInterface;
|
|
12
12
|
constructor(pxe: PXE, account: AccountInterface);
|
|
13
13
|
createTxExecutionRequest(execs: FunctionCall[], fee?: FeeOptions): Promise<TxExecutionRequest>;
|
|
14
|
-
createAuthWitness(message: Fr | Buffer): Promise<AuthWitness>;
|
|
15
14
|
/**
|
|
16
|
-
*
|
|
15
|
+
* Computes an authentication witness from either a message or a caller and an action.
|
|
16
|
+
* If a message is provided, it will create a witness for the message directly.
|
|
17
|
+
* Otherwise, it will compute the message using the caller and the action.
|
|
18
|
+
* @param messageHashOrIntent - The message or the caller and action to approve
|
|
19
|
+
* @returns The authentication witness
|
|
20
|
+
*/
|
|
21
|
+
createAuthWit(messageHashOrIntent: Fr | Buffer | {
|
|
22
|
+
/** The caller to approve */
|
|
23
|
+
caller: AztecAddress;
|
|
24
|
+
/** The action to approve */
|
|
25
|
+
action: ContractFunctionInteraction | FunctionCall;
|
|
26
|
+
}): Promise<AuthWitness>;
|
|
27
|
+
/**
|
|
28
|
+
* Returns the message hash for the given message or authwit input.
|
|
29
|
+
* @param messageHashOrIntent - The message hash or the caller and action to authorize
|
|
30
|
+
* @returns The message hash
|
|
31
|
+
*/
|
|
32
|
+
private getMessageHash;
|
|
33
|
+
/**
|
|
34
|
+
* Returns a function interaction to set a message hash as authorized or revoked in this account.
|
|
17
35
|
* Public calls can then consume this authorization.
|
|
18
|
-
* @param
|
|
36
|
+
* @param messageHashOrIntent - The message or the caller and action to authorize/revoke
|
|
19
37
|
* @param authorized - True to authorize, false to revoke authorization.
|
|
20
38
|
* @returns - A function interaction.
|
|
21
39
|
*/
|
|
22
|
-
|
|
40
|
+
setPublicAuthWit(messageHashOrIntent: Fr | Buffer | {
|
|
41
|
+
/** The caller to approve */
|
|
42
|
+
caller: AztecAddress;
|
|
43
|
+
/** The action to approve */
|
|
44
|
+
action: ContractFunctionInteraction | FunctionCall;
|
|
45
|
+
}, authorized: boolean): ContractFunctionInteraction;
|
|
23
46
|
/**
|
|
24
47
|
* Returns a function interaction to cancel a message hash as authorized in this account.
|
|
25
|
-
* @param
|
|
48
|
+
* @param messageHashOrIntent - The message or the caller and action to authorize/revoke
|
|
26
49
|
* @returns - A function interaction.
|
|
27
50
|
*/
|
|
28
|
-
cancelAuthWit(
|
|
51
|
+
cancelAuthWit(messageHashOrIntent: Fr | Buffer | {
|
|
52
|
+
/** The caller to approve */
|
|
53
|
+
caller: AztecAddress;
|
|
54
|
+
/** The action to approve */
|
|
55
|
+
action: ContractFunctionInteraction | FunctionCall;
|
|
56
|
+
}): ContractFunctionInteraction;
|
|
29
57
|
/** Returns the complete address of the account that implements this wallet. */
|
|
30
58
|
getCompleteAddress(): import("@aztec/circuit-types").CompleteAddress;
|
|
31
59
|
/** Returns the address of the account that implements this wallet. */
|
|
32
|
-
getAddress():
|
|
60
|
+
getAddress(): AztecAddress;
|
|
33
61
|
private getApprovePublicAuthwitAbi;
|
|
34
62
|
private getCancelAuthwitAbi;
|
|
35
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/account_wallet.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"account_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/account_wallet.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAE3F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IACrB,SAAS,CAAC,OAAO,EAAE,gBAAgB;gBAA7C,GAAG,EAAE,GAAG,EAAY,OAAO,EAAE,gBAAgB;IAIzD,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI9F;;;;;;OAMG;IACG,aAAa,CACjB,mBAAmB,EACf,EAAE,GACF,MAAM,GACN;QACE,6BAA6B;QAC7B,MAAM,EAAE,YAAY,CAAC;QACrB,4BAA4B;QAC5B,MAAM,EAAE,2BAA2B,GAAG,YAAY,CAAC;KACpD,GACJ,OAAO,CAAC,WAAW,CAAC;IAOvB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAqBtB;;;;;;OAMG;IACI,gBAAgB,CACrB,mBAAmB,EACf,EAAE,GACF,MAAM,GACN;QACE,6BAA6B;QAC7B,MAAM,EAAE,YAAY,CAAC;QACrB,4BAA4B;QAC5B,MAAM,EAAE,2BAA2B,GAAG,YAAY,CAAC;KACpD,EACL,UAAU,EAAE,OAAO,GAClB,2BAA2B;IAS9B;;;;OAIG;IACI,aAAa,CAClB,mBAAmB,EACf,EAAE,GACF,MAAM,GACN;QACE,6BAA6B;QAC7B,MAAM,EAAE,YAAY,CAAC;QACrB,4BAA4B;QAC5B,MAAM,EAAE,2BAA2B,GAAG,YAAY,CAAC;KACpD,GACJ,2BAA2B;IAM9B,+EAA+E;IACxE,kBAAkB;IAIzB,sEAAsE;IAC/D,UAAU;IAIjB,OAAO,CAAC,0BAA0B;IAiBlC,OAAO,CAAC,mBAAmB;CAgB5B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Fr } from '@aztec/circuits.js';
|
|
2
2
|
import { FunctionType } from '@aztec/foundation/abi';
|
|
3
3
|
import { ContractFunctionInteraction } from '../contract/contract_function_interaction.js';
|
|
4
|
+
import { computeAuthWitMessageHash } from '../utils/authwit.js';
|
|
4
5
|
import { BaseWallet } from './base_wallet.js';
|
|
5
6
|
/**
|
|
6
7
|
* A wallet implementation that forwards authentication requests to a provided account.
|
|
@@ -13,20 +14,45 @@ export class AccountWallet extends BaseWallet {
|
|
|
13
14
|
createTxExecutionRequest(execs, fee) {
|
|
14
15
|
return this.account.createTxExecutionRequest(execs, fee);
|
|
15
16
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Computes an authentication witness from either a message or a caller and an action.
|
|
19
|
+
* If a message is provided, it will create a witness for the message directly.
|
|
20
|
+
* Otherwise, it will compute the message using the caller and the action.
|
|
21
|
+
* @param messageHashOrIntent - The message or the caller and action to approve
|
|
22
|
+
* @returns The authentication witness
|
|
23
|
+
*/
|
|
24
|
+
async createAuthWit(messageHashOrIntent) {
|
|
25
|
+
const messageHash = this.getMessageHash(messageHashOrIntent);
|
|
26
|
+
const witness = await this.account.createAuthWit(messageHash);
|
|
19
27
|
await this.pxe.addAuthWitness(witness);
|
|
20
28
|
return witness;
|
|
21
29
|
}
|
|
22
30
|
/**
|
|
23
|
-
* Returns
|
|
31
|
+
* Returns the message hash for the given message or authwit input.
|
|
32
|
+
* @param messageHashOrIntent - The message hash or the caller and action to authorize
|
|
33
|
+
* @returns The message hash
|
|
34
|
+
*/
|
|
35
|
+
getMessageHash(messageHashOrIntent) {
|
|
36
|
+
if (Buffer.isBuffer(messageHashOrIntent)) {
|
|
37
|
+
return Fr.fromBuffer(messageHashOrIntent);
|
|
38
|
+
}
|
|
39
|
+
else if (messageHashOrIntent instanceof Fr) {
|
|
40
|
+
return messageHashOrIntent;
|
|
41
|
+
}
|
|
42
|
+
else if (messageHashOrIntent.action instanceof ContractFunctionInteraction) {
|
|
43
|
+
return computeAuthWitMessageHash(messageHashOrIntent.caller, messageHashOrIntent.action.request());
|
|
44
|
+
}
|
|
45
|
+
return computeAuthWitMessageHash(messageHashOrIntent.caller, messageHashOrIntent.action);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Returns a function interaction to set a message hash as authorized or revoked in this account.
|
|
24
49
|
* Public calls can then consume this authorization.
|
|
25
|
-
* @param
|
|
50
|
+
* @param messageHashOrIntent - The message or the caller and action to authorize/revoke
|
|
26
51
|
* @param authorized - True to authorize, false to revoke authorization.
|
|
27
52
|
* @returns - A function interaction.
|
|
28
53
|
*/
|
|
29
|
-
|
|
54
|
+
setPublicAuthWit(messageHashOrIntent, authorized) {
|
|
55
|
+
const message = this.getMessageHash(messageHashOrIntent);
|
|
30
56
|
if (authorized) {
|
|
31
57
|
return new ContractFunctionInteraction(this, this.getAddress(), this.getApprovePublicAuthwitAbi(), [message]);
|
|
32
58
|
}
|
|
@@ -36,10 +62,11 @@ export class AccountWallet extends BaseWallet {
|
|
|
36
62
|
}
|
|
37
63
|
/**
|
|
38
64
|
* Returns a function interaction to cancel a message hash as authorized in this account.
|
|
39
|
-
* @param
|
|
65
|
+
* @param messageHashOrIntent - The message or the caller and action to authorize/revoke
|
|
40
66
|
* @returns - A function interaction.
|
|
41
67
|
*/
|
|
42
|
-
cancelAuthWit(
|
|
68
|
+
cancelAuthWit(messageHashOrIntent) {
|
|
69
|
+
const message = this.getMessageHash(messageHashOrIntent);
|
|
43
70
|
const args = [message];
|
|
44
71
|
return new ContractFunctionInteraction(this, this.getAddress(), this.getCancelAuthwitAbi(), args);
|
|
45
72
|
}
|
|
@@ -84,4 +111,4 @@ export class AccountWallet extends BaseWallet {
|
|
|
84
111
|
};
|
|
85
112
|
}
|
|
86
113
|
}
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudF93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2FjY291bnRfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBZ0IsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUF1QyxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUcxRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMzRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFOUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFVBQVU7SUFDM0MsWUFBWSxHQUFRLEVBQVksT0FBeUI7UUFDdkQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRG1CLFlBQU8sR0FBUCxPQUFPLENBQWtCO0lBRXpELENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxLQUFxQixFQUFFLEdBQWdCO1FBQzlELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxhQUFhLENBQ2pCLG1CQVFLO1FBRUwsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzdELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUQsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGNBQWMsQ0FDcEIsbUJBUUs7UUFFTCxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzVDLENBQUM7YUFBTSxJQUFJLG1CQUFtQixZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQzdDLE9BQU8sbUJBQW1CLENBQUM7UUFDN0IsQ0FBQzthQUFNLElBQUksbUJBQW1CLENBQUMsTUFBTSxZQUFZLDJCQUEyQixFQUFFLENBQUM7WUFDN0UsT0FBTyx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDckcsQ0FBQztRQUNELE9BQU8seUJBQXlCLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxnQkFBZ0IsQ0FDckIsbUJBUUssRUFDTCxVQUFtQjtRQUVuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDekQsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE9BQU8sSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLElBQUksQ0FBQywwQkFBMEIsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNoSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxhQUFhLENBQ2xCLG1CQVFLO1FBRUwsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkIsT0FBTyxJQUFJLDJCQUEyQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVELCtFQUErRTtJQUN4RSxrQkFBa0I7UUFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELHNFQUFzRTtJQUMvRCxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxPQUFPLENBQUM7SUFDM0MsQ0FBQztJQUVPLDBCQUEwQjtRQUNoQyxPQUFPO1lBQ0wsSUFBSSxFQUFFLHdCQUF3QjtZQUM5QixhQUFhLEVBQUUsS0FBSztZQUNwQixZQUFZLEVBQUUsWUFBWSxDQUFDLElBQUk7WUFDL0IsVUFBVSxFQUFFLElBQUk7WUFDaEIsVUFBVSxFQUFFO2dCQUNWO29CQUNFLElBQUksRUFBRSxjQUFjO29CQUNwQixJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO29CQUN2QixVQUFVLEVBQUUsU0FBbUM7aUJBQ2hEO2FBQ0Y7WUFDRCxXQUFXLEVBQUUsRUFBRTtTQUNoQixDQUFDO0lBQ0osQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixPQUFPO1lBQ0wsSUFBSSxFQUFFLGdCQUFnQjtZQUN0QixhQUFhLEVBQUUsS0FBSztZQUNwQixZQUFZLEVBQUUsWUFBWSxDQUFDLE1BQU07WUFDakMsVUFBVSxFQUFFLElBQUk7WUFDaEIsVUFBVSxFQUFFO2dCQUNWO29CQUNFLElBQUksRUFBRSxjQUFjO29CQUNwQixJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO29CQUN2QixVQUFVLEVBQUUsU0FBbUM7aUJBQ2hEO2FBQ0Y7WUFDRCxXQUFXLEVBQUUsRUFBRTtTQUNoQixDQUFDO0lBQ0osQ0FBQztDQUNGIn0=
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { AuthWitness, ExtendedNote, FunctionCall, GetUnencryptedLogsResponse, L2Block, LogFilter, NoteFilter, PXE, SyncStatus, Tx, TxEffect, TxExecutionRequest, TxHash, TxReceipt } from '@aztec/circuit-types';
|
|
2
3
|
import { AztecAddress, CompleteAddress, Fr, GrumpkinPrivateKey, PartialAddress } from '@aztec/circuits.js';
|
|
4
|
+
import { ContractArtifact } from '@aztec/foundation/abi';
|
|
3
5
|
import { ContractClassWithId, ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
4
6
|
import { NodeInfo } from '@aztec/types/interfaces';
|
|
5
7
|
import { FeeOptions } from '../account/interface.js';
|
|
6
8
|
import { Wallet } from '../account/wallet.js';
|
|
9
|
+
import { ContractFunctionInteraction } from '../contract/contract_function_interaction.js';
|
|
7
10
|
/**
|
|
8
11
|
* A base class for Wallet implementations
|
|
9
12
|
*/
|
|
@@ -12,7 +15,13 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
12
15
|
constructor(pxe: PXE);
|
|
13
16
|
abstract getCompleteAddress(): CompleteAddress;
|
|
14
17
|
abstract createTxExecutionRequest(execs: FunctionCall[], fee?: FeeOptions): Promise<TxExecutionRequest>;
|
|
15
|
-
abstract
|
|
18
|
+
abstract createAuthWit(messageHashOrIntent: Fr | Buffer | {
|
|
19
|
+
/** The caller to approve */
|
|
20
|
+
caller: AztecAddress;
|
|
21
|
+
/** The action to approve */
|
|
22
|
+
action: ContractFunctionInteraction | FunctionCall;
|
|
23
|
+
}): Promise<AuthWitness>;
|
|
24
|
+
getAddress(): AztecAddress;
|
|
16
25
|
getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
|
|
17
26
|
getContractClass(id: Fr): Promise<ContractClassWithId | undefined>;
|
|
18
27
|
addCapsule(capsule: Fr[]): Promise<void>;
|
|
@@ -22,7 +31,11 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
22
31
|
getRegisteredAccount(address: AztecAddress): Promise<CompleteAddress | undefined>;
|
|
23
32
|
getRecipients(): Promise<CompleteAddress[]>;
|
|
24
33
|
getRecipient(address: AztecAddress): Promise<CompleteAddress | undefined>;
|
|
25
|
-
|
|
34
|
+
registerContract(contract: {
|
|
35
|
+
/** Instance */ instance: ContractInstanceWithAddress;
|
|
36
|
+
/** Associated artifact */ artifact?: ContractArtifact;
|
|
37
|
+
}): Promise<void>;
|
|
38
|
+
registerContractClass(artifact: ContractArtifact): Promise<void>;
|
|
26
39
|
getContracts(): Promise<AztecAddress[]>;
|
|
27
40
|
simulateTx(txRequest: TxExecutionRequest, simulatePublic: boolean): Promise<Tx>;
|
|
28
41
|
sendTx(tx: Tx): Promise<TxHash>;
|
|
@@ -34,8 +47,6 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
34
47
|
addNote(note: ExtendedNote): Promise<void>;
|
|
35
48
|
getBlock(number: number): Promise<L2Block | undefined>;
|
|
36
49
|
viewTx(functionName: string, args: any[], to: AztecAddress, from?: AztecAddress | undefined): Promise<any>;
|
|
37
|
-
getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined>;
|
|
38
|
-
getContractData(contractAddress: AztecAddress): Promise<ContractData | undefined>;
|
|
39
50
|
getUnencryptedLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
|
|
40
51
|
getBlockNumber(): Promise<number>;
|
|
41
52
|
getNodeInfo(): Promise<NodeInfo>;
|
|
@@ -44,5 +55,6 @@ export declare abstract class BaseWallet implements Wallet {
|
|
|
44
55
|
getSyncStatus(): Promise<SyncStatus>;
|
|
45
56
|
addAuthWitness(authWitness: AuthWitness): Promise<void>;
|
|
46
57
|
isContractClassPubliclyRegistered(id: Fr): Promise<boolean>;
|
|
58
|
+
isContractPubliclyDeployed(address: AztecAddress): Promise<boolean>;
|
|
47
59
|
}
|
|
48
60
|
//# sourceMappingURL=base_wallet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"base_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/base_wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,9 @@ export class BaseWallet {
|
|
|
5
5
|
constructor(pxe) {
|
|
6
6
|
this.pxe = pxe;
|
|
7
7
|
}
|
|
8
|
+
getAddress() {
|
|
9
|
+
return this.getCompleteAddress().address;
|
|
10
|
+
}
|
|
8
11
|
getContractInstance(address) {
|
|
9
12
|
return this.pxe.getContractInstance(address);
|
|
10
13
|
}
|
|
@@ -32,8 +35,11 @@ export class BaseWallet {
|
|
|
32
35
|
getRecipient(address) {
|
|
33
36
|
return this.pxe.getRecipient(address);
|
|
34
37
|
}
|
|
35
|
-
|
|
36
|
-
return this.pxe.
|
|
38
|
+
registerContract(contract) {
|
|
39
|
+
return this.pxe.registerContract(contract);
|
|
40
|
+
}
|
|
41
|
+
registerContractClass(artifact) {
|
|
42
|
+
return this.pxe.registerContractClass(artifact);
|
|
37
43
|
}
|
|
38
44
|
getContracts() {
|
|
39
45
|
return this.pxe.getContracts();
|
|
@@ -69,12 +75,6 @@ export class BaseWallet {
|
|
|
69
75
|
viewTx(functionName, args, to, from) {
|
|
70
76
|
return this.pxe.viewTx(functionName, args, to, from);
|
|
71
77
|
}
|
|
72
|
-
getExtendedContractData(contractAddress) {
|
|
73
|
-
return this.pxe.getExtendedContractData(contractAddress);
|
|
74
|
-
}
|
|
75
|
-
getContractData(contractAddress) {
|
|
76
|
-
return this.pxe.getContractData(contractAddress);
|
|
77
|
-
}
|
|
78
78
|
getUnencryptedLogs(filter) {
|
|
79
79
|
return this.pxe.getUnencryptedLogs(filter);
|
|
80
80
|
}
|
|
@@ -99,5 +99,8 @@ export class BaseWallet {
|
|
|
99
99
|
isContractClassPubliclyRegistered(id) {
|
|
100
100
|
return this.pxe.isContractClassPubliclyRegistered(id);
|
|
101
101
|
}
|
|
102
|
+
isContractPubliclyDeployed(address) {
|
|
103
|
+
return this.pxe.isContractPubliclyDeployed(address);
|
|
104
|
+
}
|
|
102
105
|
}
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZV93YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2Jhc2Vfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlCQTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsVUFBVTtJQUM5QixZQUErQixHQUFRO1FBQVIsUUFBRyxHQUFILEdBQUcsQ0FBSztJQUFHLENBQUM7SUFrQjNDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUMzQyxDQUFDO0lBQ0QsbUJBQW1CLENBQUMsT0FBcUI7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxFQUFNO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsVUFBVSxDQUFDLE9BQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsZUFBZSxDQUFDLE9BQTJCLEVBQUUsY0FBOEI7UUFDekUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELGlCQUFpQixDQUFDLE9BQXdCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0QscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFDRCxvQkFBb0IsQ0FBQyxPQUFxQjtRQUN4QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7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
|
|
@@ -7,6 +7,6 @@ import { BaseWallet } from './base_wallet.js';
|
|
|
7
7
|
export declare class SignerlessWallet extends BaseWallet {
|
|
8
8
|
createTxExecutionRequest(executions: FunctionCall[]): Promise<TxExecutionRequest>;
|
|
9
9
|
getCompleteAddress(): CompleteAddress;
|
|
10
|
-
|
|
10
|
+
createAuthWit(_message: Fr): Promise<AuthWitness>;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=signerless_wallet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signerless_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/signerless_wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAmB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,eAAe,EAAE,EAAE,EAAa,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IACxC,wBAAwB,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoBvF,kBAAkB,IAAI,eAAe;IAIrC,
|
|
1
|
+
{"version":3,"file":"signerless_wallet.d.ts","sourceRoot":"","sources":["../../src/wallet/signerless_wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAmB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,eAAe,EAAE,EAAE,EAAa,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IACxC,wBAAwB,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoBvF,kBAAkB,IAAI,eAAe;IAIrC,aAAa,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CAGlD"}
|
|
@@ -18,8 +18,8 @@ export class SignerlessWallet extends BaseWallet {
|
|
|
18
18
|
getCompleteAddress() {
|
|
19
19
|
throw new Error('Method not implemented.');
|
|
20
20
|
}
|
|
21
|
-
|
|
21
|
+
createAuthWit(_message) {
|
|
22
22
|
throw new Error('Method not implemented.');
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmVybGVzc193YWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L3NpZ25lcmxlc3Nfd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNkIsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEcsT0FBTyxFQUF1QixTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFOUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsVUFBVTtJQUM5QyxLQUFLLENBQUMsd0JBQXdCLENBQUMsVUFBMEI7UUFDdkQsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsNERBQTRELFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsVUFBVSxDQUFDO1FBQy9CLE1BQU0sZUFBZSxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2xFLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQzVELE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FDcEIsSUFBSSxrQkFBa0IsQ0FDcEIsU0FBUyxDQUFDLEVBQUUsRUFDWixTQUFTLENBQUMsWUFBWSxFQUN0QixlQUFlLENBQUMsSUFBSSxFQUNwQixTQUFTLEVBQ1QsQ0FBQyxlQUFlLENBQUMsRUFDakIsRUFBRSxDQUNILENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxhQUFhLENBQUMsUUFBWTtRQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGIn0=
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/aztec.js",
|
|
3
3
|
"homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/yarn-project/aztec.js",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.30.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": "./dest/index.js",
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
"rootDir": "./src"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@aztec/circuit-types": "0.
|
|
53
|
-
"@aztec/circuits.js": "0.
|
|
54
|
-
"@aztec/ethereum": "0.
|
|
55
|
-
"@aztec/foundation": "0.
|
|
56
|
-
"@aztec/protocol-contracts": "0.
|
|
57
|
-
"@aztec/types": "0.
|
|
52
|
+
"@aztec/circuit-types": "0.30.0",
|
|
53
|
+
"@aztec/circuits.js": "0.30.0",
|
|
54
|
+
"@aztec/ethereum": "0.30.0",
|
|
55
|
+
"@aztec/foundation": "0.30.0",
|
|
56
|
+
"@aztec/protocol-contracts": "0.30.0",
|
|
57
|
+
"@aztec/types": "0.30.0",
|
|
58
58
|
"tslib": "^2.4.0"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
package/src/account/interface.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { AuthWitness, CompleteAddress, FunctionCall, TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
+
import { AztecAddress } from '@aztec/circuits.js';
|
|
2
3
|
import { Fr } from '@aztec/foundation/fields';
|
|
3
4
|
|
|
5
|
+
import { ContractFunctionInteraction } from '../contract/contract_function_interaction.js';
|
|
4
6
|
import { FeePaymentMethod } from '../fee/fee_payment_method.js';
|
|
5
7
|
|
|
6
8
|
/**
|
|
@@ -17,10 +19,23 @@ export type FeeOptions = {
|
|
|
17
19
|
/** Creates authorization witnesses. */
|
|
18
20
|
export interface AuthWitnessProvider {
|
|
19
21
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
+
* Computes an authentication witness from either a message hash or an intent (caller and an action).
|
|
23
|
+
* If a message hash is provided, it will create a witness for that directly.
|
|
24
|
+
* Otherwise, it will compute the message hash using the caller and the action of the intent.
|
|
25
|
+
* @param messageHashOrIntent - The message hash or the intent (caller and action) to approve
|
|
26
|
+
* @returns The authentication witness
|
|
22
27
|
*/
|
|
23
|
-
|
|
28
|
+
createAuthWit(
|
|
29
|
+
messageHashOrIntent:
|
|
30
|
+
| Fr
|
|
31
|
+
| Buffer
|
|
32
|
+
| {
|
|
33
|
+
/** The caller to approve */
|
|
34
|
+
caller: AztecAddress;
|
|
35
|
+
/** The action to approve */
|
|
36
|
+
action: ContractFunctionInteraction | FunctionCall;
|
|
37
|
+
},
|
|
38
|
+
): Promise<AuthWitness>;
|
|
24
39
|
}
|
|
25
40
|
|
|
26
41
|
/** Creates transaction execution requests out of a set of function calls. */
|
|
@@ -39,9 +54,10 @@ export interface EntrypointInterface {
|
|
|
39
54
|
* requests and authorize actions for its corresponding account.
|
|
40
55
|
*/
|
|
41
56
|
export interface AccountInterface extends AuthWitnessProvider, EntrypointInterface {
|
|
42
|
-
/**
|
|
43
|
-
* Returns the complete address for this account.
|
|
44
|
-
*/
|
|
57
|
+
/** Returns the complete address for this account. */
|
|
45
58
|
getCompleteAddress(): CompleteAddress;
|
|
59
|
+
|
|
60
|
+
/** Returns the address for this account. */
|
|
61
|
+
getAddress(): AztecAddress;
|
|
46
62
|
}
|
|
47
63
|
// docs:end:account-interface
|
|
@@ -104,12 +104,10 @@ export class AccountManager {
|
|
|
104
104
|
*/
|
|
105
105
|
public async register(opts: WaitOpts = DefaultWaitOpts): Promise<AccountWalletWithPrivateKey> {
|
|
106
106
|
await this.#register();
|
|
107
|
-
await this.pxe.
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
},
|
|
112
|
-
]);
|
|
107
|
+
await this.pxe.registerContract({
|
|
108
|
+
artifact: this.accountContract.getContractArtifact(),
|
|
109
|
+
instance: this.getInstance(),
|
|
110
|
+
});
|
|
113
111
|
|
|
114
112
|
await waitForAccountSynch(this.pxe, this.getCompleteAddress(), opts);
|
|
115
113
|
return this.getWallet();
|
|
@@ -159,6 +157,7 @@ export class AccountManager {
|
|
|
159
157
|
contractAddressSalt: this.salt,
|
|
160
158
|
skipClassRegistration: true,
|
|
161
159
|
skipPublicDeployment: true,
|
|
160
|
+
universalDeploy: true,
|
|
162
161
|
});
|
|
163
162
|
return new DeployAccountSentTx(wallet, sentTx.getTxHash());
|
|
164
163
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { DeployedContract } from '@aztec/circuit-types';
|
|
2
1
|
import { computePartialAddress } from '@aztec/circuits.js';
|
|
3
2
|
import { ContractArtifact, FunctionArtifact, FunctionSelector } from '@aztec/foundation/abi';
|
|
4
3
|
import { ContractInstanceWithAddress } from '@aztec/types/contracts';
|
|
@@ -20,7 +19,7 @@ export type ContractMethod = ((...args: any[]) => ContractFunctionInteraction) &
|
|
|
20
19
|
/**
|
|
21
20
|
* Abstract implementation of a contract extended by the Contract class and generated contract types.
|
|
22
21
|
*/
|
|
23
|
-
export class ContractBase
|
|
22
|
+
export class ContractBase {
|
|
24
23
|
/**
|
|
25
24
|
* An object containing contract methods mapped to their respective names.
|
|
26
25
|
*/
|
|
@@ -92,7 +92,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
92
92
|
}
|
|
93
93
|
this.txRequest = await this.wallet.createTxExecutionRequest(await this.request(options));
|
|
94
94
|
// TODO: Should we add the contracts to the DB here, or once the tx has been sent or mined?
|
|
95
|
-
await this.pxe.
|
|
95
|
+
await this.pxe.registerContract({ artifact: this.artifact, instance: this.instance! });
|
|
96
96
|
}
|
|
97
97
|
return this.txRequest;
|
|
98
98
|
}
|
|
@@ -159,7 +159,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
159
159
|
|
|
160
160
|
// Deploy the contract via the instance deployer.
|
|
161
161
|
if (!options.skipPublicDeployment) {
|
|
162
|
-
calls.push(deployInstance(this.wallet, instance
|
|
162
|
+
calls.push(deployInstance(this.wallet, instance).request());
|
|
163
163
|
}
|
|
164
164
|
|
|
165
165
|
return calls;
|
|
@@ -192,6 +192,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
|
|
|
192
192
|
portalAddress: options.portalContract,
|
|
193
193
|
publicKey: this.publicKey,
|
|
194
194
|
constructorArtifact: this.constructorArtifact,
|
|
195
|
+
deployer: options.universalDeploy ? AztecAddress.ZERO : this.wallet.getAddress(),
|
|
195
196
|
});
|
|
196
197
|
}
|
|
197
198
|
return this.instance;
|
|
@@ -8,21 +8,22 @@ import { getDeployerContract } from './protocol_contracts.js';
|
|
|
8
8
|
* Sets up a call to the canonical deployer contract to publicly deploy a contract instance.
|
|
9
9
|
* @param wallet - The wallet to use for the deployment.
|
|
10
10
|
* @param instance - The instance to deploy.
|
|
11
|
-
* @param opts - Additional options.
|
|
12
11
|
*/
|
|
13
|
-
export function deployInstance(
|
|
14
|
-
wallet
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
)
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
12
|
+
export function deployInstance(wallet: Wallet, instance: ContractInstanceWithAddress): ContractFunctionInteraction {
|
|
13
|
+
const deployerContract = getDeployerContract(wallet);
|
|
14
|
+
const { salt, contractClassId, portalContractAddress, publicKeysHash, deployer } = instance;
|
|
15
|
+
const isUniversalDeploy = deployer.isZero();
|
|
16
|
+
if (!isUniversalDeploy && !wallet.getAddress().equals(deployer)) {
|
|
17
|
+
throw new Error(
|
|
18
|
+
`Expected deployer ${deployer.toString()} does not match sender wallet ${wallet.getAddress().toString()}`,
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
return deployerContract.methods.deploy(
|
|
21
22
|
salt,
|
|
22
23
|
contractClassId,
|
|
23
24
|
instance.initializationHash,
|
|
24
25
|
portalContractAddress,
|
|
25
26
|
publicKeysHash,
|
|
26
|
-
|
|
27
|
+
isUniversalDeploy,
|
|
27
28
|
);
|
|
28
29
|
}
|