@aztec/aztec.js 0.0.1-commit.2ed92850 → 0.0.1-commit.3469e52
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/api/block.d.ts +2 -2
- package/dest/api/block.d.ts.map +1 -1
- package/dest/api/block.js +1 -1
- package/dest/api/contract.d.ts +10 -16
- package/dest/api/contract.d.ts.map +1 -1
- package/dest/api/contract.js +8 -14
- package/dest/api/node.d.ts +4 -8
- package/dest/api/node.d.ts.map +1 -1
- package/dest/api/node.js +3 -7
- package/dest/api/tx.d.ts +2 -2
- package/dest/api/tx.d.ts.map +1 -1
- package/dest/api/tx.js +1 -1
- package/dest/api/wallet.d.ts +2 -2
- package/dest/api/wallet.d.ts.map +1 -1
- package/dest/api/wallet.js +1 -1
- package/dest/contract/base_contract_interaction.d.ts +10 -8
- package/dest/contract/base_contract_interaction.d.ts.map +1 -1
- package/dest/contract/base_contract_interaction.js +17 -5
- package/dest/contract/deploy_method.d.ts +16 -63
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +19 -36
- package/dest/contract/deploy_sent_tx.d.ts +48 -0
- package/dest/contract/deploy_sent_tx.d.ts.map +1 -0
- package/dest/contract/deploy_sent_tx.js +46 -0
- package/dest/contract/interaction_options.d.ts +5 -42
- package/dest/contract/interaction_options.d.ts.map +1 -1
- package/dest/contract/interaction_options.js +1 -8
- package/dest/contract/protocol_contracts/auth-registry.d.ts +3 -3
- package/dest/contract/protocol_contracts/auth-registry.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/auth-registry.js +14 -1
- package/dest/contract/protocol_contracts/contract-class-registry.d.ts +3 -3
- package/dest/contract/protocol_contracts/contract-class-registry.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/contract-class-registry.js +14 -1
- package/dest/contract/protocol_contracts/contract-instance-registry.d.ts +3 -3
- package/dest/contract/protocol_contracts/contract-instance-registry.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/contract-instance-registry.js +14 -1
- package/dest/contract/protocol_contracts/fee-juice.d.ts +3 -3
- package/dest/contract/protocol_contracts/fee-juice.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/fee-juice.js +14 -1
- package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts +3 -3
- package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/multi-call-entrypoint.js +14 -1
- package/dest/contract/protocol_contracts/public-checks.d.ts +3 -3
- package/dest/contract/protocol_contracts/public-checks.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/public-checks.js +14 -1
- package/dest/contract/sent_tx.d.ts +50 -0
- package/dest/contract/sent_tx.d.ts.map +1 -0
- package/dest/contract/sent_tx.js +90 -0
- package/dest/contract/wait_for_proven.js +1 -1
- package/dest/utils/authwit.d.ts +6 -6
- package/dest/utils/authwit.d.ts.map +1 -1
- package/dest/utils/authwit.js +6 -2
- package/dest/utils/node.d.ts +1 -12
- package/dest/utils/node.d.ts.map +1 -1
- package/dest/utils/node.js +0 -46
- package/dest/wallet/deploy_account_method.d.ts +5 -19
- package/dest/wallet/deploy_account_method.d.ts.map +1 -1
- package/dest/wallet/wallet.d.ts +18 -63
- package/dest/wallet/wallet.d.ts.map +1 -1
- package/dest/wallet/wallet.js +3 -16
- package/package.json +9 -9
- package/src/api/block.ts +1 -1
- package/src/api/contract.ts +7 -22
- package/src/api/node.ts +3 -7
- package/src/api/tx.ts +0 -2
- package/src/api/wallet.ts +0 -5
- package/src/contract/base_contract_interaction.ts +15 -27
- package/src/contract/deploy_method.ts +23 -115
- package/src/contract/deploy_sent_tx.ts +75 -0
- package/src/contract/interaction_options.ts +4 -49
- package/src/contract/protocol_contracts/auth-registry.ts +12 -3
- package/src/contract/protocol_contracts/contract-class-registry.ts +12 -3
- package/src/contract/protocol_contracts/contract-instance-registry.ts +12 -3
- package/src/contract/protocol_contracts/fee-juice.ts +12 -3
- package/src/contract/protocol_contracts/multi-call-entrypoint.ts +12 -3
- package/src/contract/protocol_contracts/public-checks.ts +12 -3
- package/src/contract/sent_tx.ts +129 -0
- package/src/contract/wait_for_proven.ts +1 -1
- package/src/utils/authwit.ts +4 -16
- package/src/utils/node.ts +0 -62
- package/src/wallet/deploy_account_method.ts +4 -19
- package/src/wallet/wallet.ts +11 -31
- package/dest/contract/wait_opts.d.ts +0 -16
- package/dest/contract/wait_opts.d.ts.map +0 -1
- package/dest/contract/wait_opts.js +0 -5
- package/src/contract/wait_opts.ts +0 -21
|
@@ -19,8 +19,8 @@ export declare class PublicChecksContract extends ContractBase {
|
|
|
19
19
|
}) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
|
|
20
20
|
/** public_dispatch(selector: field) */
|
|
21
21
|
public_dispatch: ((selector: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
|
|
22
|
-
/**
|
|
23
|
-
|
|
22
|
+
/** sync_private_state() */
|
|
23
|
+
sync_private_state: (() => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWNoZWNrcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyYWN0L3Byb3RvY29sX2NvbnRyYWN0cy9wdWJsaWMtY2hlY2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sS0FBSyxFQUNWLGdCQUFnQixFQUVoQixTQUFTLEVBR1YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUErUWxGLHFCQUFhLG9CQUFxQixTQUFRLFlBQVk7SUFDcEQsT0FBTyxlQUVOO0lBRUQsT0FBYyxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxvQkFBb0IsQ0FFckQ7SUFFYyxPQUFPLEVBQUU7UUFDdEIsNkRBQTZEO1FBQzdELGtCQUFrQixFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLE1BQU0sS0FBSywyQkFBMkIsQ0FBQyxHQUN2RyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLDBEQUEwRDtRQUMxRCxlQUFlLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLEdBQUcsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUcsTUFBTSxLQUFLLDJCQUEyQixDQUFDLEdBQ3BHLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFbkMsMkVBQTJFO1FBQzNFLGVBQWUsRUFBRSxDQUFDLENBQ2hCLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxFQUMvQixlQUFlLEVBQUU7WUFDZixPQUFPLEVBQUUsU0FBUyxDQUFDO1lBQ25CLHdCQUF3QixFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3RDLHFCQUFxQixFQUFFLFNBQVMsQ0FBQztZQUNqQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUM7U0FDN0IsS0FDRSwyQkFBMkIsQ0FBQyxHQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLHVDQUF1QztRQUN2QyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLEtBQUssMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRTNHLDJCQUEyQjtRQUMzQixrQkFBa0IsRUFBRSxDQUFDLE1BQU0sMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQzVGLENBQUM7Q0FDSCJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-checks.d.ts","sourceRoot":"","sources":["../../../src/contract/protocol_contracts/public-checks.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,gBAAgB,EAEhB,SAAS,EAGV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"public-checks.d.ts","sourceRoot":"","sources":["../../../src/contract/protocol_contracts/public-checks.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,gBAAgB,EAEhB,SAAS,EAGV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AA+QlF,qBAAa,oBAAqB,SAAQ,YAAY;IACpD,OAAO,eAEN;IAED,OAAc,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAErD;IAEc,OAAO,EAAE;QACtB,6DAA6D;QAC7D,kBAAkB,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,2BAA2B,CAAC,GACvG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,0DAA0D;QAC1D,eAAe,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,2BAA2B,CAAC,GACpG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,2EAA2E;QAC3E,eAAe,EAAE,CAAC,CAChB,kBAAkB,EAAE,SAAS,EAAE,EAC/B,eAAe,EAAE;YACf,OAAO,EAAE,SAAS,CAAC;YACnB,wBAAwB,EAAE,SAAS,EAAE,CAAC;YACtC,qBAAqB,EAAE,SAAS,CAAC;YACjC,SAAS,EAAE,gBAAgB,CAAC;SAC7B,KACE,2BAA2B,CAAC,GAC/B,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,uCAAuC;QACvC,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,SAAS,KAAK,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAE3G,2BAA2B;QAC3B,kBAAkB,EAAE,CAAC,MAAM,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;KAC5F,CAAC;CACH"}
|
|
@@ -166,6 +166,10 @@ const PublicChecksContractArtifact = {
|
|
|
166
166
|
error_kind: 'string',
|
|
167
167
|
string: '0 has a square root; you cannot claim it is not square'
|
|
168
168
|
},
|
|
169
|
+
'9885968605480832328': {
|
|
170
|
+
error_kind: 'string',
|
|
171
|
+
string: 'Attempted to read past the length of a CapsuleArray'
|
|
172
|
+
},
|
|
169
173
|
'10135509984888824963': {
|
|
170
174
|
error_kind: 'fmtstring',
|
|
171
175
|
length: 58,
|
|
@@ -179,11 +183,20 @@ const PublicChecksContractArtifact = {
|
|
|
179
183
|
error_kind: 'string',
|
|
180
184
|
string: 'extend_from_bounded_vec out of bounds'
|
|
181
185
|
},
|
|
186
|
+
'11021520179822076911': {
|
|
187
|
+
error_kind: 'string',
|
|
188
|
+
string: 'Attempted to delete past the length of a CapsuleArray'
|
|
189
|
+
},
|
|
182
190
|
'11692359521570349358': {
|
|
183
191
|
error_kind: 'fmtstring',
|
|
184
192
|
length: 40,
|
|
185
193
|
item_types: []
|
|
186
194
|
},
|
|
195
|
+
'12327971061804302172': {
|
|
196
|
+
error_kind: 'fmtstring',
|
|
197
|
+
length: 98,
|
|
198
|
+
item_types: []
|
|
199
|
+
},
|
|
187
200
|
'12469291177396340830': {
|
|
188
201
|
error_kind: 'string',
|
|
189
202
|
string: 'call to assert_max_bit_size'
|
|
@@ -310,7 +323,7 @@ const PublicChecksContractArtifact = {
|
|
|
310
323
|
{
|
|
311
324
|
...{
|
|
312
325
|
functionType: FunctionType.UTILITY,
|
|
313
|
-
name: '
|
|
326
|
+
name: 'sync_private_state',
|
|
314
327
|
isOnlySelf: false,
|
|
315
328
|
isStatic: false,
|
|
316
329
|
isInitializer: false,
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
2
|
+
import { TxHash, type TxReceipt } from '@aztec/stdlib/tx';
|
|
3
|
+
import type { Wallet } from '../wallet/wallet.js';
|
|
4
|
+
/** Options related to waiting for a tx. */
|
|
5
|
+
export type WaitOpts = {
|
|
6
|
+
/** The amount of time to ignore TxStatus.DROPPED receipts (in seconds) due to the presumption that it is being propagated by the p2p network. Defaults to 5. */
|
|
7
|
+
ignoreDroppedReceiptsFor?: number;
|
|
8
|
+
/** The maximum time (in seconds) to wait for the transaction to be mined. Defaults to 60. */
|
|
9
|
+
timeout?: number;
|
|
10
|
+
/** The time interval (in seconds) between retries to fetch the transaction receipt. Defaults to 1. */
|
|
11
|
+
interval?: number;
|
|
12
|
+
/** Whether to accept a revert as a status code for the tx when waiting for it. If false, will throw if the tx reverts. */
|
|
13
|
+
dontThrowOnRevert?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export declare const DefaultWaitOpts: WaitOpts;
|
|
16
|
+
/**
|
|
17
|
+
* The SentTx class represents a sent transaction through the PXE (or directly to a node) providing methods to fetch
|
|
18
|
+
* its hash, receipt, and mining status.
|
|
19
|
+
*/
|
|
20
|
+
export declare class SentTx {
|
|
21
|
+
protected walletOrNode: Wallet | AztecNode;
|
|
22
|
+
protected sendTxPromise: Promise<void>;
|
|
23
|
+
protected sendTxError?: Error;
|
|
24
|
+
protected txHash?: TxHash;
|
|
25
|
+
constructor(walletOrNode: Wallet | AztecNode, sendTx: () => Promise<TxHash>);
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves the transaction hash of the SentTx instance.
|
|
28
|
+
* The function internally awaits for the 'txHashPromise' to resolve, and then returns the resolved transaction hash.
|
|
29
|
+
*
|
|
30
|
+
* @returns A promise that resolves to the transaction hash of the SentTx instance.
|
|
31
|
+
* TODO(#7717): Don't throw here.
|
|
32
|
+
*/
|
|
33
|
+
getTxHash(): Promise<TxHash>;
|
|
34
|
+
/**
|
|
35
|
+
* Retrieve the transaction receipt associated with the current SentTx instance.
|
|
36
|
+
* The function fetches the transaction hash using 'getTxHash' and then queries
|
|
37
|
+
* the PXE to get the corresponding transaction receipt.
|
|
38
|
+
*
|
|
39
|
+
* @returns A promise that resolves to a TxReceipt object representing the fetched transaction receipt.
|
|
40
|
+
*/
|
|
41
|
+
getReceipt(): Promise<TxReceipt>;
|
|
42
|
+
/**
|
|
43
|
+
* Awaits for a tx to be mined and returns the receipt. Throws if tx is not mined.
|
|
44
|
+
* @param opts - Options for configuring the waiting for the tx to be mined.
|
|
45
|
+
* @returns The transaction receipt.
|
|
46
|
+
*/
|
|
47
|
+
wait(opts?: WaitOpts): Promise<TxReceipt>;
|
|
48
|
+
protected waitForReceipt(opts?: WaitOpts): Promise<TxReceipt>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudF90eC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L3NlbnRfdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLFNBQVMsRUFBWSxNQUFNLGtCQUFrQixDQUFDO0FBRXBFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWxELDJDQUEyQztBQUMzQyxNQUFNLE1BQU0sUUFBUSxHQUFHO0lBQ3JCLGdLQUFnSztJQUNoSyx3QkFBd0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNsQyw2RkFBNkY7SUFDN0YsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2pCLHNHQUFzRztJQUN0RyxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbEIsMEhBQTBIO0lBQzFILGlCQUFpQixDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzdCLENBQUM7QUFFRixlQUFPLE1BQU0sZUFBZSxFQUFFLFFBSTdCLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxxQkFBYSxNQUFNO0lBTWYsU0FBUyxDQUFDLFlBQVksRUFBRSxNQUFNLEdBQUcsU0FBUztJQUw1QyxTQUFTLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxDQUFDO0lBQzlCLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFMUIsWUFDWSxZQUFZLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFDMUMsTUFBTSxFQUFFLE1BQU0sT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQWM5QjtJQUVEOzs7Ozs7T0FNRztJQUNVLFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBV3hDO0lBRUQ7Ozs7OztPQU1HO0lBQ1UsVUFBVSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FHNUM7SUFFRDs7OztPQUlHO0lBQ1UsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBUXJEO0lBRUQsVUFBZ0IsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBNEJsRTtDQUNGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sent_tx.d.ts","sourceRoot":"","sources":["../../src/contract/sent_tx.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,KAAK,SAAS,EAAY,MAAM,kBAAkB,CAAC;AAEpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,2CAA2C;AAC3C,MAAM,MAAM,QAAQ,GAAG;IACrB,gKAAgK;IAChK,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sGAAsG;IACtG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0HAA0H;IAC1H,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAI7B,CAAC;AAEF;;;GAGG;AACH,qBAAa,MAAM;IAMf,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS;IAL5C,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,SAAS,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC9B,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAE1B,YACY,YAAY,EAAE,MAAM,GAAG,SAAS,EAC1C,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAc9B;IAED;;;;;;OAMG;IACU,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAWxC;IAED;;;;;;OAMG;IACU,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CAG5C;IAED;;;;OAIG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAQrD;IAED,UAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CA4BlE;CACF"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { promiseWithResolvers } from '@aztec/foundation/promise';
|
|
2
|
+
import { retryUntil } from '@aztec/foundation/retry';
|
|
3
|
+
import { TxStatus } from '@aztec/stdlib/tx';
|
|
4
|
+
export const DefaultWaitOpts = {
|
|
5
|
+
ignoreDroppedReceiptsFor: 5,
|
|
6
|
+
timeout: 300,
|
|
7
|
+
interval: 1
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* The SentTx class represents a sent transaction through the PXE (or directly to a node) providing methods to fetch
|
|
11
|
+
* its hash, receipt, and mining status.
|
|
12
|
+
*/ export class SentTx {
|
|
13
|
+
walletOrNode;
|
|
14
|
+
sendTxPromise;
|
|
15
|
+
sendTxError;
|
|
16
|
+
txHash;
|
|
17
|
+
constructor(walletOrNode, sendTx){
|
|
18
|
+
this.walletOrNode = walletOrNode;
|
|
19
|
+
const { promise, resolve } = promiseWithResolvers();
|
|
20
|
+
this.sendTxPromise = promise;
|
|
21
|
+
sendTx().then((txHash)=>{
|
|
22
|
+
this.txHash = txHash;
|
|
23
|
+
resolve();
|
|
24
|
+
}).catch((err)=>{
|
|
25
|
+
this.sendTxError = err;
|
|
26
|
+
// Calling resolve instead of reject here because we want to throw the error when getTxHash is called.
|
|
27
|
+
resolve();
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Retrieves the transaction hash of the SentTx instance.
|
|
32
|
+
* The function internally awaits for the 'txHashPromise' to resolve, and then returns the resolved transaction hash.
|
|
33
|
+
*
|
|
34
|
+
* @returns A promise that resolves to the transaction hash of the SentTx instance.
|
|
35
|
+
* TODO(#7717): Don't throw here.
|
|
36
|
+
*/ async getTxHash() {
|
|
37
|
+
// Make sure sendTx has been resolved, which can be triggered when it returns a txHash or when it throws an error.
|
|
38
|
+
await this.sendTxPromise;
|
|
39
|
+
// If sendTx threw an error, throw it.
|
|
40
|
+
if (this.sendTxError) {
|
|
41
|
+
throw this.sendTxError;
|
|
42
|
+
}
|
|
43
|
+
// sendTx returned a txHash if it's been resolved and no error was set.
|
|
44
|
+
return Promise.resolve(this.txHash);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Retrieve the transaction receipt associated with the current SentTx instance.
|
|
48
|
+
* The function fetches the transaction hash using 'getTxHash' and then queries
|
|
49
|
+
* the PXE to get the corresponding transaction receipt.
|
|
50
|
+
*
|
|
51
|
+
* @returns A promise that resolves to a TxReceipt object representing the fetched transaction receipt.
|
|
52
|
+
*/ async getReceipt() {
|
|
53
|
+
const txHash = await this.getTxHash();
|
|
54
|
+
return await this.walletOrNode.getTxReceipt(txHash);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Awaits for a tx to be mined and returns the receipt. Throws if tx is not mined.
|
|
58
|
+
* @param opts - Options for configuring the waiting for the tx to be mined.
|
|
59
|
+
* @returns The transaction receipt.
|
|
60
|
+
*/ async wait(opts) {
|
|
61
|
+
const receipt = await this.waitForReceipt(opts);
|
|
62
|
+
if (receipt.status !== TxStatus.SUCCESS && !opts?.dontThrowOnRevert) {
|
|
63
|
+
throw new Error(`Transaction ${(await this.getTxHash()).toString()} was ${receipt.status}. Reason: ${receipt.error ?? 'unknown'}`);
|
|
64
|
+
}
|
|
65
|
+
return receipt;
|
|
66
|
+
}
|
|
67
|
+
async waitForReceipt(opts) {
|
|
68
|
+
const txHash = await this.getTxHash();
|
|
69
|
+
const startTime = Date.now();
|
|
70
|
+
const ignoreDroppedReceiptsFor = opts?.ignoreDroppedReceiptsFor ?? DefaultWaitOpts.ignoreDroppedReceiptsFor;
|
|
71
|
+
return await retryUntil(async ()=>{
|
|
72
|
+
const txReceipt = await this.walletOrNode.getTxReceipt(txHash);
|
|
73
|
+
// If receipt is not yet available, try again
|
|
74
|
+
if (txReceipt.status === TxStatus.PENDING) {
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
// If the tx was "dropped", either return it or ignore based on timing.
|
|
78
|
+
// We can ignore it at first because the transaction may have been sent to node 1, and now we're asking node 2 for the receipt.
|
|
79
|
+
// If we don't allow a short grace period, we could incorrectly return a TxReceipt with status DROPPED.
|
|
80
|
+
if (txReceipt.status === TxStatus.DROPPED) {
|
|
81
|
+
const elapsedSeconds = (Date.now() - startTime) / 1000;
|
|
82
|
+
if (!ignoreDroppedReceiptsFor || elapsedSeconds > ignoreDroppedReceiptsFor) {
|
|
83
|
+
return txReceipt;
|
|
84
|
+
}
|
|
85
|
+
return undefined;
|
|
86
|
+
}
|
|
87
|
+
return txReceipt;
|
|
88
|
+
}, 'isMined', opts?.timeout ?? DefaultWaitOpts.timeout, opts?.interval ?? DefaultWaitOpts.interval);
|
|
89
|
+
}
|
|
90
|
+
}
|
package/dest/utils/authwit.d.ts
CHANGED
|
@@ -3,9 +3,10 @@ import { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
3
3
|
import { type FunctionCall } from '@aztec/stdlib/abi';
|
|
4
4
|
import { AuthWitness } from '@aztec/stdlib/auth-witness';
|
|
5
5
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
|
-
import type { TxProfileResult
|
|
6
|
+
import type { TxProfileResult } from '@aztec/stdlib/tx';
|
|
7
7
|
import { ContractFunctionInteraction } from '../contract/contract_function_interaction.js';
|
|
8
|
-
import type {
|
|
8
|
+
import type { ProfileInteractionOptions, SendInteractionOptions, SimulateInteractionOptions, SimulationReturn } from '../contract/interaction_options.js';
|
|
9
|
+
import type { SentTx } from '../contract/sent_tx.js';
|
|
9
10
|
import type { Wallet } from '../wallet/index.js';
|
|
10
11
|
/** Intent with an inner hash */
|
|
11
12
|
export type IntentInnerHash = {
|
|
@@ -110,10 +111,9 @@ export declare class SetPublicAuthwitContractInteraction extends ContractFunctio
|
|
|
110
111
|
* Overrides the send method, adding the sender of the authwit (authorizer) as from
|
|
111
112
|
* and preventing misuse
|
|
112
113
|
* @param options - An optional object containing 'fee' options information
|
|
113
|
-
* @returns A
|
|
114
|
+
* @returns A SentTx instance for tracking the transaction status and information.
|
|
114
115
|
*/
|
|
115
|
-
send(options?: Omit<
|
|
116
|
-
send<W extends InteractionWaitOptions>(options?: Omit<SendInteractionOptions<W>, 'from'>): Promise<SendReturn<W>>;
|
|
116
|
+
send(options?: Omit<SendInteractionOptions, 'from'>): SentTx;
|
|
117
117
|
private static getSetAuthorizedAbi;
|
|
118
118
|
}
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aHdpdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2F1dGh3aXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBaUQsS0FBSyxZQUFZLEVBQWdCLE1BQU0sbUJBQW1CLENBQUM7QUFDbkgsT0FBTyxFQUFFLFdBQVcsRUFBb0QsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRyxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMzRixPQUFPLEtBQUssRUFDVix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQ3RCLDBCQUEwQixFQUMxQixnQkFBZ0IsRUFDakIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxnQ0FBZ0M7QUFDaEMsTUFBTSxNQUFNLGVBQWUsR0FBRztJQUM1QixxQkFBcUI7SUFDckIsUUFBUSxFQUFFLFlBQVksQ0FBQztJQUN2Qiw0QkFBNEI7SUFDNUIsU0FBUyxFQUFFLEVBQUUsQ0FBQztDQUNmLENBQUM7QUFFRix5QkFBeUI7QUFDekIsTUFBTSxNQUFNLFVBQVUsR0FBRztJQUN2Qiw2QkFBNkI7SUFDN0IsTUFBTSxFQUFFLFlBQVksQ0FBQztJQUNyQiwwQkFBMEI7SUFDMUIsSUFBSSxFQUFFLFlBQVksQ0FBQztDQUNwQixDQUFDO0FBRUYsZ0RBQWdEO0FBQ2hELE1BQU0sTUFBTSxxQ0FBcUMsR0FBRztJQUNsRCw2QkFBNkI7SUFDN0IsTUFBTSxFQUFFLFlBQVksQ0FBQztJQUNyQiw0QkFBNEI7SUFDNUIsTUFBTSxFQUFFLDJCQUEyQixDQUFDO0NBQ3JDLENBQUM7QUFFRix3REFBd0Q7QUFDeEQsd0JBQWdCLHVDQUF1QyxDQUNyRCxtQkFBbUIsRUFBRSxFQUFFLEdBQUcsZUFBZSxHQUFHLFVBQVUsR0FBRyxxQ0FBcUMsR0FDN0YsbUJBQW1CLElBQUkscUNBQXFDLENBTTlEO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0gsZUFBTyxNQUFNLHlCQUF5QixvSEFtQnJDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCx3QkFBc0Isd0JBQXdCLENBQzVDLG1CQUFtQixFQUFFLEVBQUUsR0FBRyxlQUFlLEdBQUcsVUFBVSxHQUFHLHFDQUFxQyxFQUM5RixTQUFTLEVBQUUsU0FBUyxlQVVyQjtBQUVEOzs7Ozs7SUFNSTtBQUNKLGVBQU8sTUFBTSxpQ0FBaUMsMkZBTTdDLENBQUM7QUFFRjs7Ozs7Ozs7OztHQVVHO0FBQ0gsd0JBQXNCLGNBQWMsQ0FDbEMsTUFBTSxFQUFFLE1BQU0sRUFDZCxVQUFVLEVBQUUsWUFBWSxFQUN4QixNQUFNLEVBQUUsZUFBZSxHQUFHLFVBQVUsR0FBRyxxQ0FBcUMsRUFDNUUsT0FBTyxFQUFFLFdBQVcsR0FDbkIsT0FBTyxDQUFDO0lBQ1QseUVBQXlFO0lBQ3pFLGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUMxQix3RUFBd0U7SUFDeEUsZUFBZSxFQUFFLE9BQU8sQ0FBQztDQUMxQixDQUFDLENBMEVEO0FBRUQ7O0dBRUc7QUFDSCxxQkFBYSxtQ0FBb0MsU0FBUSwyQkFBMkI7SUFHaEYsT0FBTyxDQUFDLElBQUk7SUFGZCxPQUFPLGVBVU47SUFFRCxPQUFhLE1BQU0sQ0FDakIsTUFBTSxFQUFFLE1BQU0sRUFDZCxJQUFJLEVBQUUsWUFBWSxFQUNsQixtQkFBbUIsRUFBRSxFQUFFLEdBQUcsZUFBZSxHQUFHLFVBQVUsR0FBRyxxQ0FBcUMsRUFDOUYsVUFBVSxFQUFFLE9BQU8sZ0RBS3BCO0lBRUQ7Ozs7O09BS0c7SUFDYSxRQUFRLENBQUMsQ0FBQyxTQUFTLDBCQUEwQixFQUMzRCxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsR0FDdkIsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQVFuRDs7Ozs7T0FLRztJQUNhLE9BQU8sQ0FDckIsT0FBTyxHQUFFLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxNQUFNLENBQTRCLEdBQzFFLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FFMUI7SUFFRDs7Ozs7T0FLRztJQUNhLElBQUksQ0FBQyxPQUFPLEdBQUUsSUFBSSxDQUFDLHNCQUFzQixFQUFFLE1BQU0sQ0FBTSxHQUFHLE1BQU0sQ0FFL0U7SUFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLG1CQUFtQjtDQXVCbkMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authwit.d.ts","sourceRoot":"","sources":["../../src/utils/authwit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAiD,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAC;AACnH,OAAO,EAAE,WAAW,EAAoD,MAAM,4BAA4B,CAAC;AAC3G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"authwit.d.ts","sourceRoot":"","sources":["../../src/utils/authwit.ts"],"names":[],"mappings":"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"}
|
package/dest/utils/authwit.js
CHANGED
|
@@ -230,8 +230,12 @@ import { ContractFunctionInteraction } from '../contract/contract_function_inter
|
|
|
230
230
|
from: this.from
|
|
231
231
|
});
|
|
232
232
|
}
|
|
233
|
-
|
|
234
|
-
|
|
233
|
+
/**
|
|
234
|
+
* Overrides the send method, adding the sender of the authwit (authorizer) as from
|
|
235
|
+
* and preventing misuse
|
|
236
|
+
* @param options - An optional object containing 'fee' options information
|
|
237
|
+
* @returns A SentTx instance for tracking the transaction status and information.
|
|
238
|
+
*/ send(options = {}) {
|
|
235
239
|
return super.send({
|
|
236
240
|
...options,
|
|
237
241
|
from: this.from
|
package/dest/utils/node.d.ts
CHANGED
|
@@ -1,16 +1,5 @@
|
|
|
1
1
|
import type { Logger } from '@aztec/foundation/log';
|
|
2
2
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
3
|
-
import type { TxHash, TxReceipt } from '@aztec/stdlib/tx';
|
|
4
|
-
import { type WaitOpts } from '../contract/wait_opts.js';
|
|
5
3
|
export declare const waitForNode: (node: AztecNode, logger?: Logger | undefined) => Promise<void>;
|
|
6
|
-
/**
|
|
7
|
-
* Waits for a transaction to be mined and returns its receipt.
|
|
8
|
-
* @param node - The Aztec node to query for transaction status
|
|
9
|
-
* @param txHash - The hash of the transaction to wait for
|
|
10
|
-
* @param opts - Optional configuration for waiting behavior
|
|
11
|
-
* @returns The transaction receipt
|
|
12
|
-
* @throws If the transaction fails and dontThrowOnRevert is not set
|
|
13
|
-
*/
|
|
14
|
-
export declare function waitForTx(node: AztecNode, txHash: TxHash, opts?: WaitOpts): Promise<TxReceipt>;
|
|
15
4
|
export { createAztecNodeClient, type AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFcEQsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFakUsZUFBTyxNQUFNLFdBQVcsaUVBWXZCLENBQUM7QUFFRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsS0FBSyxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQyJ9
|
package/dest/utils/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/utils/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/utils/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,eAAO,MAAM,WAAW,iEAYvB,CAAC;AAEF,OAAO,EAAE,qBAAqB,EAAE,KAAK,SAAS,EAAE,MAAM,iCAAiC,CAAC"}
|
package/dest/utils/node.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { retryUntil } from '@aztec/foundation/retry';
|
|
2
|
-
import { SortedTxStatuses, TxStatus } from '@aztec/stdlib/tx';
|
|
3
|
-
import { DefaultWaitOpts } from '../contract/wait_opts.js';
|
|
4
2
|
export const waitForNode = async (node, logger)=>{
|
|
5
3
|
await retryUntil(async ()=>{
|
|
6
4
|
try {
|
|
@@ -14,48 +12,4 @@ export const waitForNode = async (node, logger)=>{
|
|
|
14
12
|
return undefined;
|
|
15
13
|
}, 'RPC Get Node Info');
|
|
16
14
|
};
|
|
17
|
-
/** Returns true if the receipt status is at least the desired status level. */ function hasReachedStatus(receipt, desiredStatus) {
|
|
18
|
-
return SortedTxStatuses.indexOf(receipt.status) >= SortedTxStatuses.indexOf(desiredStatus);
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Waits for a transaction to be mined and returns its receipt.
|
|
22
|
-
* @param node - The Aztec node to query for transaction status
|
|
23
|
-
* @param txHash - The hash of the transaction to wait for
|
|
24
|
-
* @param opts - Optional configuration for waiting behavior
|
|
25
|
-
* @returns The transaction receipt
|
|
26
|
-
* @throws If the transaction fails and dontThrowOnRevert is not set
|
|
27
|
-
*/ export async function waitForTx(node, txHash, opts) {
|
|
28
|
-
const startTime = Date.now();
|
|
29
|
-
const ignoreDroppedReceiptsFor = opts?.ignoreDroppedReceiptsFor ?? DefaultWaitOpts.ignoreDroppedReceiptsFor;
|
|
30
|
-
const waitForStatus = opts?.waitForStatus ?? TxStatus.CHECKPOINTED;
|
|
31
|
-
const receipt = await retryUntil(async ()=>{
|
|
32
|
-
const txReceipt = await node.getTxReceipt(txHash);
|
|
33
|
-
// If receipt is not yet available, try again
|
|
34
|
-
if (txReceipt.isPending()) {
|
|
35
|
-
return undefined;
|
|
36
|
-
}
|
|
37
|
-
// If the tx was "dropped", either return it or ignore based on timing.
|
|
38
|
-
// We can ignore it at first because the transaction may have been sent to node 1, and now we're asking node 2 for the receipt.
|
|
39
|
-
// If we don't allow a short grace period, we could incorrectly return a TxReceipt with status DROPPED.
|
|
40
|
-
if (txReceipt.isDropped()) {
|
|
41
|
-
const elapsedSeconds = (Date.now() - startTime) / 1000;
|
|
42
|
-
if (!ignoreDroppedReceiptsFor || elapsedSeconds > ignoreDroppedReceiptsFor) {
|
|
43
|
-
return txReceipt;
|
|
44
|
-
}
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|
|
47
|
-
// Check if the receipt has reached the desired status level
|
|
48
|
-
if (!hasReachedStatus(txReceipt, waitForStatus)) {
|
|
49
|
-
return undefined;
|
|
50
|
-
}
|
|
51
|
-
return txReceipt;
|
|
52
|
-
}, 'isMined', opts?.timeout ?? DefaultWaitOpts.timeout, opts?.interval ?? DefaultWaitOpts.interval);
|
|
53
|
-
if (!receipt.isMined()) {
|
|
54
|
-
throw new Error(`Transaction ${txHash.toString()} was ${receipt.status}. Reason: ${receipt.error ?? 'unknown'}`);
|
|
55
|
-
}
|
|
56
|
-
if (!receipt.hasExecutionSucceeded() && !opts?.dontThrowOnRevert) {
|
|
57
|
-
throw new Error(`Transaction ${txHash.toString()} reverted: ${receipt.executionResult}. Reason: ${receipt.error ?? 'unknown'}`);
|
|
58
|
-
}
|
|
59
|
-
return receipt;
|
|
60
|
-
}
|
|
61
15
|
export { createAztecNodeClient } from '@aztec/stdlib/interfaces/client';
|
|
@@ -6,8 +6,8 @@ import { ExecutionPayload } from '@aztec/stdlib/tx';
|
|
|
6
6
|
import type { Account } from '../account/account.js';
|
|
7
7
|
import type { Contract } from '../contract/contract.js';
|
|
8
8
|
import type { ContractBase } from '../contract/contract_base.js';
|
|
9
|
-
import { DeployMethod, type
|
|
10
|
-
import type { FeePaymentMethodOption
|
|
9
|
+
import { DeployMethod, type DeployOptions, type RequestDeployOptions, type SimulateDeployOptions } from '../contract/deploy_method.js';
|
|
10
|
+
import type { FeePaymentMethodOption } from '../contract/interaction_options.js';
|
|
11
11
|
import type { Wallet } from './index.js';
|
|
12
12
|
/**
|
|
13
13
|
* Extended fee payment method option for account deployments that includes entrypoint wrapping options
|
|
@@ -24,26 +24,12 @@ export type RequestDeployAccountOptions = Omit<RequestDeployOptions, 'contractAd
|
|
|
24
24
|
/** Fee options specific to account deployment */
|
|
25
25
|
fee?: DeployAccountFeePaymentMethodOption;
|
|
26
26
|
};
|
|
27
|
-
/**
|
|
28
|
-
* Base configuration options for the send/prove methods without wait parameter. Omits:
|
|
29
|
-
* - The contractAddressSalt, since for account contracts that is fixed in the constructor.
|
|
30
|
-
* - UniversalDeployment flag, since account contracts are always deployed with it set to true
|
|
31
|
-
*/
|
|
32
|
-
export type DeployAccountOptionsWithoutWait = Omit<DeployOptionsWithoutWait, 'contractAddressSalt' | 'universalDeploy'>;
|
|
33
27
|
/**
|
|
34
28
|
* The configuration options for the send/prove methods. Omits:
|
|
35
29
|
* - The contractAddressSalt, since for account contracts that is fixed in the constructor.
|
|
36
30
|
* - UniversalDeployment flag, since account contracts are always deployed with it set to true
|
|
37
31
|
*/
|
|
38
|
-
export type DeployAccountOptions
|
|
39
|
-
/**
|
|
40
|
-
* Whether to wait for the transaction to be mined.
|
|
41
|
-
* - undefined (default): wait with default options and return TxReceipt
|
|
42
|
-
* - WaitOpts object: wait with custom options and return TxReceipt
|
|
43
|
-
* - false: return txHash immediately without waiting
|
|
44
|
-
*/
|
|
45
|
-
wait?: W;
|
|
46
|
-
};
|
|
32
|
+
export type DeployAccountOptions = Omit<DeployOptions, 'contractAddressSalt' | 'universalDeploy'>;
|
|
47
33
|
/**
|
|
48
34
|
* The configuration options for the simulate method. Omits the contractAddressSalt, since
|
|
49
35
|
* for account contracts that is fixed in the constructor
|
|
@@ -75,6 +61,6 @@ export declare class DeployAccountMethod<TContract extends ContractBase = Contra
|
|
|
75
61
|
* @returns The execution payload for this operation
|
|
76
62
|
*/
|
|
77
63
|
request(opts?: RequestDeployAccountOptions): Promise<ExecutionPayload>;
|
|
78
|
-
convertDeployOptionsToRequestOptions(options:
|
|
64
|
+
convertDeployOptionsToRequestOptions(options: DeployOptions): RequestDeployOptions;
|
|
79
65
|
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X2FjY291bnRfbWV0aG9kLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2FsbGV0L2RlcGxveV9hY2NvdW50X21ldGhvZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU1RSxPQUFPLEtBQUssRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFFLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBMEIsTUFBTSxrQkFBa0IsQ0FBQztBQUU1RSxPQUFPLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsWUFBWSxFQUNaLEtBQUssYUFBYSxFQUNsQixLQUFLLG9CQUFvQixFQUN6QixLQUFLLHFCQUFxQixFQUMzQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFHakYsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXpDOztHQUVHO0FBQ0gsTUFBTSxNQUFNLG1DQUFtQyxHQUFHLHNCQUFzQixHQUFHO0lBQ3pFLDJFQUEyRTtJQUMzRSxvQkFBb0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztDQUNoQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLDJCQUEyQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxxQkFBcUIsR0FBRyxLQUFLLENBQUMsR0FBRztJQUNwRyxpREFBaUQ7SUFDakQsR0FBRyxDQUFDLEVBQUUsbUNBQW1DLENBQUM7Q0FDM0MsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxxQkFBcUIsR0FBRyxpQkFBaUIsQ0FBQyxDQUFDO0FBRWxHOzs7R0FHRztBQUNILE1BQU0sTUFBTSw0QkFBNEIsR0FBRyxJQUFJLENBQUMscUJBQXFCLEVBQUUscUJBQXFCLENBQUMsQ0FBQztBQUU5Rjs7O0dBR0c7QUFDSCxxQkFBYSxtQkFBbUIsQ0FBQyxTQUFTLFNBQVMsWUFBWSxHQUFHLFFBQVEsQ0FBRSxTQUFRLFlBQVksQ0FBQyxTQUFTLENBQUM7SUFNdkcsT0FBTyxDQUFDLElBQUk7SUFDWixPQUFPLENBQUMsT0FBTztJQU5qQixZQUNFLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsUUFBUSxFQUFFLGdCQUFnQixFQUMxQixjQUFjLEVBQUUsQ0FBQyxRQUFRLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxFQUFFLE1BQU0sS0FBSyxTQUFTLEVBQzVFLElBQUksRUFBRSxFQUFFLEVBQ1IsT0FBTyxFQUFFLE9BQU8sRUFDeEIsSUFBSSxHQUFFLEdBQUcsRUFBTyxFQUNoQix5QkFBeUIsQ0FBQyxFQUFFLE1BQU0sR0FBRyxnQkFBZ0IsRUFHdEQ7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsT0FBTyxDQUFDLHVCQUF1QjtJQU8vQjs7OztPQUlHO0lBQ21CLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSwyQkFBMkIsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0E4QjNGO0lBRVEsb0NBQW9DLENBQUMsT0FBTyxFQUFFLGFBQWEsR0FBRyxvQkFBb0IsQ0FTMUY7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy_account_method.d.ts","sourceRoot":"","sources":["../../src/wallet/deploy_account_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAA0B,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,YAAY,EACZ,KAAK,
|
|
1
|
+
{"version":3,"file":"deploy_account_method.d.ts","sourceRoot":"","sources":["../../src/wallet/deploy_account_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAA0B,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAGjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG,sBAAsB,GAAG;IACzE,2EAA2E;IAC3E,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAAC,oBAAoB,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG;IACpG,iDAAiD;IACjD,GAAG,CAAC,EAAE,mCAAmC,CAAC;CAC3C,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,aAAa,EAAE,qBAAqB,GAAG,iBAAiB,CAAC,CAAC;AAElG;;;GAGG;AACH,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,CAAC;AAE9F;;;GAGG;AACH,qBAAa,mBAAmB,CAAC,SAAS,SAAS,YAAY,GAAG,QAAQ,CAAE,SAAQ,YAAY,CAAC,SAAS,CAAC;IAMvG,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;IANjB,YACE,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,EAC1B,cAAc,EAAE,CAAC,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,EAC5E,IAAI,EAAE,EAAE,EACR,OAAO,EAAE,OAAO,EACxB,IAAI,GAAE,GAAG,EAAO,EAChB,yBAAyB,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAGtD;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB;IAO/B;;;;OAIG;IACmB,OAAO,CAAC,IAAI,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8B3F;IAEQ,oCAAoC,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB,CAS1F;CACF"}
|