@aztec/aztec.js 3.0.0-canary.a9708bd → 3.0.0-devnet.2-patch.1
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/README.md +1 -1
- package/dest/account/account.d.ts +59 -0
- package/dest/account/account.d.ts.map +1 -0
- package/dest/account/account.js +59 -0
- package/dest/account/account_contract.d.ts +7 -7
- package/dest/account/account_contract.d.ts.map +1 -1
- package/dest/account/account_contract.js +0 -1
- package/dest/account/account_with_secret_key.d.ts +24 -0
- package/dest/account/account_with_secret_key.d.ts.map +1 -0
- package/dest/{wallet/account_wallet_with_private_key.js → account/account_with_secret_key.js} +5 -5
- package/dest/account/index.d.ts +3 -6
- package/dest/account/index.d.ts.map +1 -1
- package/dest/account/index.js +1 -4
- package/dest/account/interface.d.ts +2 -2
- package/dest/account/interface.d.ts.map +1 -1
- package/dest/account/signerless_account.d.ts +23 -0
- package/dest/account/signerless_account.d.ts.map +1 -0
- package/dest/account/signerless_account.js +27 -0
- package/dest/api/abi.d.ts +2 -1
- package/dest/api/abi.d.ts.map +1 -1
- package/dest/api/account.d.ts +6 -3
- package/dest/api/account.d.ts.map +1 -1
- package/dest/api/account.js +4 -1
- package/dest/api/addresses.d.ts +2 -1
- package/dest/api/addresses.d.ts.map +1 -1
- package/dest/api/addresses.js +1 -0
- package/dest/api/authorization.d.ts +3 -1
- package/dest/api/authorization.d.ts.map +1 -1
- package/dest/api/authorization.js +2 -0
- package/dest/api/block.d.ts +3 -0
- package/dest/api/block.d.ts.map +1 -0
- package/dest/api/block.js +2 -0
- package/dest/api/contract.d.ts +8 -9
- package/dest/api/contract.d.ts.map +1 -1
- package/dest/api/contract.js +6 -6
- package/dest/api/crypto.d.ts +2 -0
- package/dest/api/crypto.d.ts.map +1 -0
- package/dest/api/crypto.js +1 -0
- package/dest/api/deployment.d.ts +1 -1
- package/dest/api/eth_address.d.ts +1 -1
- package/dest/api/ethereum.d.ts +1 -2
- package/dest/api/ethereum.d.ts.map +1 -1
- package/dest/api/ethereum.js +0 -1
- package/dest/api/events.d.ts +12 -0
- package/dest/api/events.d.ts.map +1 -0
- package/dest/api/events.js +30 -0
- package/dest/api/fee.d.ts +2 -3
- package/dest/api/fee.d.ts.map +1 -1
- package/dest/api/fee.js +0 -1
- package/dest/api/fee_testing.d.ts +1 -1
- package/dest/api/fields.d.ts +3 -2
- package/dest/api/fields.d.ts.map +1 -1
- package/dest/api/fields.js +2 -1
- package/dest/api/keys.d.ts +4 -0
- package/dest/api/keys.d.ts.map +1 -0
- package/dest/api/keys.js +3 -0
- package/dest/api/log.d.ts +2 -1
- package/dest/api/log.d.ts.map +1 -1
- package/dest/api/log.js +1 -0
- package/dest/api/messaging.d.ts +3 -0
- package/dest/api/messaging.d.ts.map +1 -0
- package/dest/api/messaging.js +2 -0
- package/dest/api/node.d.ts +21 -0
- package/dest/api/node.d.ts.map +1 -0
- package/dest/api/node.js +18 -0
- package/dest/api/note.d.ts +2 -0
- package/dest/api/note.d.ts.map +1 -0
- package/dest/api/note.js +1 -0
- package/dest/api/protocol.d.ts +3 -0
- package/dest/api/protocol.d.ts.map +1 -0
- package/dest/api/protocol.js +2 -0
- package/dest/api/trees.d.ts +3 -0
- package/dest/api/trees.d.ts.map +1 -0
- package/dest/api/trees.js +2 -0
- package/dest/api/tx.d.ts +2 -0
- package/dest/api/tx.d.ts.map +1 -0
- package/dest/api/tx.js +1 -0
- package/dest/api/utils.d.ts +11 -7
- package/dest/api/utils.d.ts.map +1 -1
- package/dest/api/utils.js +10 -5
- package/dest/api/wallet.d.ts +4 -2
- package/dest/api/wallet.d.ts.map +1 -1
- package/dest/api/wallet.js +3 -1
- package/dest/authorization/call_authorization_request.d.ts +2 -23
- package/dest/authorization/call_authorization_request.d.ts.map +1 -1
- package/dest/contract/base_contract_interaction.d.ts +7 -50
- package/dest/contract/base_contract_interaction.d.ts.map +1 -1
- package/dest/contract/base_contract_interaction.js +6 -106
- package/dest/contract/batch_call.d.ts +14 -23
- package/dest/contract/batch_call.d.ts.map +1 -1
- package/dest/contract/batch_call.js +72 -64
- package/dest/contract/checker.d.ts +1 -1
- package/dest/contract/contract.d.ts +3 -3
- package/dest/contract/contract.d.ts.map +1 -1
- package/dest/contract/contract.js +5 -16
- package/dest/contract/contract_base.d.ts +5 -12
- package/dest/contract/contract_base.d.ts.map +1 -1
- package/dest/contract/contract_base.js +5 -12
- package/dest/contract/contract_function_interaction.d.ts +32 -43
- package/dest/contract/contract_function_interaction.d.ts.map +1 -1
- package/dest/contract/contract_function_interaction.js +47 -56
- package/dest/contract/deploy_method.d.ts +69 -61
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +72 -88
- package/dest/contract/deploy_sent_tx.d.ts +12 -8
- package/dest/contract/deploy_sent_tx.d.ts.map +1 -1
- package/dest/contract/deploy_sent_tx.js +15 -12
- package/dest/contract/get_gas_limits.d.ts +1 -1
- package/dest/contract/interaction_options.d.ts +76 -21
- package/dest/contract/interaction_options.d.ts.map +1 -1
- package/dest/contract/interaction_options.js +45 -3
- package/dest/contract/protocol_contracts.d.ts +1 -1
- package/dest/contract/sent_tx.d.ts +5 -6
- package/dest/contract/sent_tx.d.ts.map +1 -1
- package/dest/contract/sent_tx.js +6 -6
- package/dest/contract/unsafe_contract.d.ts +1 -1
- package/dest/contract/unsafe_contract.d.ts.map +1 -1
- package/dest/contract/unsafe_contract.js +1 -1
- package/dest/contract/wait_for_proven.d.ts +4 -4
- package/dest/contract/wait_for_proven.d.ts.map +1 -1
- package/dest/contract/wait_for_proven.js +2 -2
- package/dest/deployment/broadcast_function.d.ts +1 -1
- package/dest/deployment/broadcast_function.js +1 -1
- package/dest/deployment/contract_deployer.d.ts +1 -1
- package/dest/deployment/contract_deployer.d.ts.map +1 -1
- package/dest/deployment/contract_deployer.js +1 -1
- package/dest/deployment/publish_class.d.ts +1 -1
- package/dest/deployment/publish_class.js +1 -1
- package/dest/deployment/publish_instance.d.ts +2 -2
- package/dest/deployment/publish_instance.d.ts.map +1 -1
- package/dest/deployment/publish_instance.js +2 -5
- package/dest/ethereum/portal_manager.d.ts +7 -10
- package/dest/ethereum/portal_manager.d.ts.map +1 -1
- package/dest/ethereum/portal_manager.js +43 -19
- package/dest/fee/fee_juice_payment_method_with_claim.d.ts +14 -9
- package/dest/fee/fee_juice_payment_method_with_claim.d.ts.map +1 -1
- package/dest/fee/fee_juice_payment_method_with_claim.js +24 -15
- package/dest/fee/fee_payment_method.d.ts +26 -0
- package/dest/fee/fee_payment_method.d.ts.map +1 -0
- package/dest/fee/fee_payment_method.js +3 -0
- package/dest/fee/private_fee_payment_method.d.ts +24 -7
- package/dest/fee/private_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/private_fee_payment_method.js +38 -17
- package/dest/fee/public_fee_payment_method.d.ts +24 -7
- package/dest/fee/public_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/public_fee_payment_method.js +41 -18
- package/dest/fee/sponsored_fee_payment.d.ts +4 -2
- package/dest/fee/sponsored_fee_payment.d.ts.map +1 -1
- package/dest/fee/sponsored_fee_payment.js +6 -2
- package/dest/utils/abi_types.d.ts +2 -2
- package/dest/utils/abi_types.d.ts.map +1 -1
- package/dest/utils/authwit.d.ts +80 -28
- package/dest/utils/authwit.d.ts.map +1 -1
- package/dest/utils/authwit.js +231 -25
- package/dest/utils/cross_chain.d.ts +24 -0
- package/dest/utils/cross_chain.d.ts.map +1 -0
- package/dest/utils/cross_chain.js +30 -0
- package/dest/utils/fee_juice.d.ts +4 -3
- package/dest/utils/fee_juice.d.ts.map +1 -1
- package/dest/utils/fee_juice.js +4 -3
- package/dest/utils/field_compressed_string.d.ts +1 -1
- package/dest/utils/field_compressed_string.d.ts.map +1 -1
- package/dest/utils/field_compressed_string.js +1 -1
- package/dest/utils/node.d.ts +2 -2
- package/dest/utils/node.d.ts.map +1 -1
- package/dest/utils/pub_key.d.ts +2 -2
- package/dest/utils/pub_key.d.ts.map +1 -1
- package/dest/utils/pub_key.js +2 -3
- package/dest/wallet/account_entrypoint_meta_payment_method.d.ts +34 -0
- package/dest/wallet/account_entrypoint_meta_payment_method.d.ts.map +1 -0
- package/dest/wallet/account_entrypoint_meta_payment_method.js +76 -0
- package/dest/wallet/account_manager.d.ts +66 -0
- package/dest/wallet/account_manager.d.ts.map +1 -0
- package/dest/wallet/account_manager.js +113 -0
- package/dest/wallet/deploy_account_method.d.ts +52 -0
- package/dest/wallet/deploy_account_method.d.ts.map +1 -0
- package/dest/wallet/deploy_account_method.js +77 -0
- package/dest/wallet/index.d.ts +2 -16
- package/dest/wallet/index.d.ts.map +1 -1
- package/dest/wallet/index.js +1 -19
- package/dest/wallet/wallet.d.ts +2012 -7
- package/dest/wallet/wallet.d.ts.map +1 -1
- package/dest/wallet/wallet.js +198 -3
- package/package.json +29 -24
- package/src/account/account.ts +96 -0
- package/src/account/account_contract.ts +5 -7
- package/src/{wallet/account_wallet_with_private_key.ts → account/account_with_secret_key.ts} +7 -9
- package/src/account/index.ts +2 -5
- package/src/account/interface.ts +1 -1
- package/src/account/signerless_account.ts +45 -0
- package/src/api/abi.ts +11 -0
- package/src/api/account.ts +5 -2
- package/src/api/addresses.ts +1 -0
- package/src/api/authorization.ts +11 -0
- package/src/api/block.ts +2 -0
- package/src/api/contract.ts +20 -11
- package/src/api/crypto.ts +1 -0
- package/src/api/ethereum.ts +0 -1
- package/src/api/events.ts +44 -0
- package/src/api/fee.ts +1 -2
- package/src/api/fields.ts +2 -1
- package/src/api/keys.ts +8 -0
- package/src/api/log.ts +1 -0
- package/src/api/messaging.ts +2 -0
- package/src/api/node.ts +20 -0
- package/src/api/note.ts +1 -0
- package/src/api/protocol.ts +2 -0
- package/src/api/trees.ts +2 -0
- package/src/api/tx.ts +13 -0
- package/src/api/utils.ts +12 -19
- package/src/api/wallet.ts +31 -5
- package/src/authorization/call_authorization_request.ts +1 -1
- package/src/contract/base_contract_interaction.ts +9 -139
- package/src/contract/batch_call.ts +87 -79
- package/src/contract/contract.ts +8 -16
- package/src/contract/contract_base.ts +5 -15
- package/src/contract/contract_function_interaction.ts +72 -105
- package/src/contract/deploy_method.ts +123 -104
- package/src/contract/deploy_sent_tx.ts +19 -18
- package/src/contract/interaction_options.ts +121 -25
- package/src/contract/sent_tx.ts +6 -7
- package/src/contract/unsafe_contract.ts +1 -1
- package/src/contract/wait_for_proven.ts +4 -4
- package/src/deployment/broadcast_function.ts +1 -1
- package/src/deployment/contract_deployer.ts +3 -2
- package/src/deployment/publish_class.ts +1 -1
- package/src/deployment/publish_instance.ts +3 -8
- package/src/ethereum/portal_manager.ts +62 -40
- package/src/fee/fee_juice_payment_method_with_claim.ts +30 -19
- package/src/fee/fee_payment_method.ts +26 -0
- package/src/fee/private_fee_payment_method.ts +64 -43
- package/src/fee/public_fee_payment_method.ts +77 -51
- package/src/fee/sponsored_fee_payment.ts +9 -1
- package/src/utils/abi_types.ts +1 -1
- package/src/utils/authwit.ts +257 -39
- package/src/utils/cross_chain.ts +53 -0
- package/src/utils/fee_juice.ts +5 -4
- package/src/utils/field_compressed_string.ts +1 -1
- package/src/utils/pub_key.ts +3 -4
- package/src/wallet/account_entrypoint_meta_payment_method.ts +106 -0
- package/src/wallet/account_manager.ts +154 -0
- package/src/wallet/deploy_account_method.ts +126 -0
- package/src/wallet/index.ts +1 -32
- package/src/wallet/wallet.ts +358 -29
- package/dest/account_manager/account_manager.d.ts +0 -119
- package/dest/account_manager/account_manager.d.ts.map +0 -1
- package/dest/account_manager/account_manager.js +0 -202
- package/dest/account_manager/deploy_account_sent_tx.d.ts +0 -30
- package/dest/account_manager/deploy_account_sent_tx.d.ts.map +0 -1
- package/dest/account_manager/deploy_account_sent_tx.js +0 -29
- package/dest/account_manager/index.d.ts +0 -3
- package/dest/account_manager/index.d.ts.map +0 -1
- package/dest/account_manager/index.js +0 -2
- package/dest/api/interfaces.d.ts +0 -2
- package/dest/api/interfaces.d.ts.map +0 -1
- package/dest/api/interfaces.js +0 -1
- package/dest/api/log_id.d.ts +0 -2
- package/dest/api/log_id.d.ts.map +0 -1
- package/dest/api/log_id.js +0 -1
- package/dest/api/rpc.d.ts +0 -3
- package/dest/api/rpc.d.ts.map +0 -1
- package/dest/api/rpc.js +0 -2
- package/dest/api/tx_hash.d.ts +0 -2
- package/dest/api/tx_hash.d.ts.map +0 -1
- package/dest/api/tx_hash.js +0 -1
- package/dest/contract/deploy_proven_tx.d.ts +0 -21
- package/dest/contract/deploy_proven_tx.d.ts.map +0 -1
- package/dest/contract/deploy_proven_tx.js +0 -21
- package/dest/contract/proven_tx.d.ts +0 -21
- package/dest/contract/proven_tx.d.ts.map +0 -1
- package/dest/contract/proven_tx.js +0 -23
- package/dest/ethereum/l1_contracts.d.ts +0 -3
- package/dest/ethereum/l1_contracts.d.ts.map +0 -1
- package/dest/ethereum/l1_contracts.js +0 -13
- package/dest/fee/account_entrypoint_meta_payment_method.d.ts +0 -31
- package/dest/fee/account_entrypoint_meta_payment_method.d.ts.map +0 -1
- package/dest/fee/account_entrypoint_meta_payment_method.js +0 -64
- package/dest/fee/fee_juice_payment_method.d.ts +0 -14
- package/dest/fee/fee_juice_payment_method.d.ts.map +0 -1
- package/dest/fee/fee_juice_payment_method.js +0 -21
- package/dest/fee/utils.d.ts +0 -13
- package/dest/fee/utils.d.ts.map +0 -1
- package/dest/fee/utils.js +0 -32
- package/dest/index.d.ts +0 -59
- package/dest/index.d.ts.map +0 -1
- package/dest/index.js +0 -62
- package/dest/rpc_clients/node/index.d.ts +0 -12
- package/dest/rpc_clients/node/index.d.ts.map +0 -1
- package/dest/rpc_clients/node/index.js +0 -72
- package/dest/rpc_clients/pxe_client.d.ts +0 -10
- package/dest/rpc_clients/pxe_client.d.ts.map +0 -1
- package/dest/rpc_clients/pxe_client.js +0 -23
- package/dest/utils/pxe.d.ts +0 -4
- package/dest/utils/pxe.d.ts.map +0 -1
- package/dest/utils/pxe.js +0 -14
- package/dest/wallet/account_wallet.d.ts +0 -74
- package/dest/wallet/account_wallet.d.ts.map +0 -1
- package/dest/wallet/account_wallet.js +0 -232
- package/dest/wallet/account_wallet_with_private_key.d.ts +0 -26
- package/dest/wallet/account_wallet_with_private_key.d.ts.map +0 -1
- package/dest/wallet/base_wallet.d.ts +0 -48
- package/dest/wallet/base_wallet.d.ts.map +0 -1
- package/dest/wallet/base_wallet.js +0 -70
- package/dest/wallet/signerless_wallet.d.ts +0 -23
- package/dest/wallet/signerless_wallet.d.ts.map +0 -1
- package/dest/wallet/signerless_wallet.js +0 -33
- package/src/account_manager/account_manager.ts +0 -276
- package/src/account_manager/deploy_account_sent_tx.ts +0 -46
- package/src/account_manager/index.ts +0 -2
- package/src/api/interfaces.ts +0 -1
- package/src/api/log_id.ts +0 -1
- package/src/api/rpc.ts +0 -2
- package/src/api/tx_hash.ts +0 -1
- package/src/contract/deploy_proven_tx.ts +0 -45
- package/src/contract/proven_tx.ts +0 -36
- package/src/ethereum/l1_contracts.ts +0 -21
- package/src/fee/account_entrypoint_meta_payment_method.ts +0 -89
- package/src/fee/fee_juice_payment_method.ts +0 -25
- package/src/fee/utils.ts +0 -39
- package/src/index.ts +0 -85
- package/src/rpc_clients/node/index.ts +0 -77
- package/src/rpc_clients/pxe_client.ts +0 -25
- package/src/utils/pxe.ts +0 -17
- package/src/wallet/account_wallet.ts +0 -246
- package/src/wallet/base_wallet.ts +0 -141
- package/src/wallet/signerless_wallet.ts +0 -56
|
@@ -1,35 +1,26 @@
|
|
|
1
|
-
import { ExecutionPayload } from '@aztec/
|
|
2
|
-
import type { TxExecutionRequest } from '@aztec/stdlib/tx';
|
|
1
|
+
import { ExecutionPayload } from '@aztec/stdlib/tx';
|
|
3
2
|
import type { Wallet } from '../wallet/wallet.js';
|
|
4
3
|
import { BaseContractInteraction } from './base_contract_interaction.js';
|
|
5
|
-
import
|
|
4
|
+
import { type RequestInteractionOptions, type SimulateInteractionOptions } from './interaction_options.js';
|
|
6
5
|
/** A batch of function calls to be sent as a single transaction through a wallet. */
|
|
7
6
|
export declare class BatchCall extends BaseContractInteraction {
|
|
8
|
-
protected
|
|
9
|
-
constructor(wallet: Wallet,
|
|
10
|
-
/**
|
|
11
|
-
* Create a transaction execution request that represents this batch, encoded and authenticated by the
|
|
12
|
-
* user's wallet, ready to be simulated.
|
|
13
|
-
* @param options - An optional object containing additional configuration for the transaction.
|
|
14
|
-
* @returns A Promise that resolves to a transaction instance.
|
|
15
|
-
*/
|
|
16
|
-
create(options?: SendMethodOptions): Promise<TxExecutionRequest>;
|
|
7
|
+
protected interactions: (BaseContractInteraction | ExecutionPayload)[];
|
|
8
|
+
constructor(wallet: Wallet, interactions: (BaseContractInteraction | ExecutionPayload)[]);
|
|
17
9
|
/**
|
|
18
10
|
* Returns an execution request that represents this operation.
|
|
19
11
|
* @param options - An optional object containing additional configuration for the request generation.
|
|
20
12
|
* @returns An execution payload wrapped in promise.
|
|
21
13
|
*/
|
|
22
|
-
request(options?:
|
|
14
|
+
request(options?: RequestInteractionOptions): Promise<ExecutionPayload>;
|
|
23
15
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* @
|
|
30
|
-
* @returns The result of the transaction as returned by the contract function.
|
|
16
|
+
* Simulates the batch, supporting private, public and utility functions. Although this is a single
|
|
17
|
+
* interaction with the wallet, private and public functions will be grouped into a single ExecutionPayload
|
|
18
|
+
* that the wallet will simulate as a single transaction. Utility function calls will simply be executed
|
|
19
|
+
* one by one.
|
|
20
|
+
* @param options - An optional object containing additional configuration for the interaction.
|
|
21
|
+
* @returns The results of all the interactions that make up the batch
|
|
31
22
|
*/
|
|
32
|
-
simulate(options:
|
|
33
|
-
|
|
23
|
+
simulate(options: SimulateInteractionOptions): Promise<any>;
|
|
24
|
+
protected getExecutionPayloads(): Promise<ExecutionPayload[]>;
|
|
34
25
|
}
|
|
35
|
-
//# sourceMappingURL=
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmF0Y2hfY2FsbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L2JhdGNoX2NhbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLGdCQUFnQixFQUlqQixNQUFNLGtCQUFrQixDQUFDO0FBRTFCLE9BQU8sS0FBSyxFQUFpQixNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RSxPQUFPLEVBQ0wsS0FBSyx5QkFBeUIsRUFDOUIsS0FBSywwQkFBMEIsRUFFaEMsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxxRkFBcUY7QUFDckYscUJBQWEsU0FBVSxTQUFRLHVCQUF1QjtJQUdsRCxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUMsdUJBQXVCLEdBQUcsZ0JBQWdCLENBQUMsRUFBRTtJQUZ4RSxZQUNFLE1BQU0sRUFBRSxNQUFNLEVBQ0osWUFBWSxFQUFFLENBQUMsdUJBQXVCLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxFQUd2RTtJQUVEOzs7O09BSUc7SUFDVSxPQUFPLENBQUMsT0FBTyxHQUFFLHlCQUE4QixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQVN2RjtJQUVEOzs7Ozs7O09BT0c7SUFDVSxRQUFRLENBQUMsT0FBTyxFQUFFLDBCQUEwQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0F5RnZFO0lBRUQsVUFBZ0Isb0JBQW9CLElBQUksT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FFbEU7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batch_call.d.ts","sourceRoot":"","sources":["../../src/contract/batch_call.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"batch_call.d.ts","sourceRoot":"","sources":["../../src/contract/batch_call.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,EAIjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAiB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAEhC,MAAM,0BAA0B,CAAC;AAElC,qFAAqF;AACrF,qBAAa,SAAU,SAAQ,uBAAuB;IAGlD,SAAS,CAAC,YAAY,EAAE,CAAC,uBAAuB,GAAG,gBAAgB,CAAC,EAAE;IAFxE,YACE,MAAM,EAAE,MAAM,EACJ,YAAY,EAAE,CAAC,uBAAuB,GAAG,gBAAgB,CAAC,EAAE,EAGvE;IAED;;;;OAIG;IACU,OAAO,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CASvF;IAED;;;;;;;OAOG;IACU,QAAQ,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC,CAyFvE;IAED,UAAgB,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAElE;CACF"}
|
|
@@ -1,49 +1,36 @@
|
|
|
1
|
-
import { ExecutionPayload, mergeExecutionPayloads } from '@aztec/entrypoints/payload';
|
|
2
1
|
import { FunctionType, decodeFromAbi } from '@aztec/stdlib/abi';
|
|
2
|
+
import { ExecutionPayload, mergeExecutionPayloads } from '@aztec/stdlib/tx';
|
|
3
3
|
import { BaseContractInteraction } from './base_contract_interaction.js';
|
|
4
|
+
import { toSimulateOptions } from './interaction_options.js';
|
|
4
5
|
/** A batch of function calls to be sent as a single transaction through a wallet. */ export class BatchCall extends BaseContractInteraction {
|
|
5
|
-
|
|
6
|
-
constructor(wallet,
|
|
7
|
-
super(wallet), this.
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Create a transaction execution request that represents this batch, encoded and authenticated by the
|
|
11
|
-
* user's wallet, ready to be simulated.
|
|
12
|
-
* @param options - An optional object containing additional configuration for the transaction.
|
|
13
|
-
* @returns A Promise that resolves to a transaction instance.
|
|
14
|
-
*/ async create(options = {
|
|
15
|
-
from: this.wallet.getAddress()
|
|
16
|
-
}) {
|
|
17
|
-
const requestWithoutFee = await this.request(options);
|
|
18
|
-
const { fee: userFee, txNonce, cancellable } = options;
|
|
19
|
-
const fee = await this.getFeeOptions(requestWithoutFee, userFee, {
|
|
20
|
-
txNonce,
|
|
21
|
-
cancellable
|
|
22
|
-
});
|
|
23
|
-
return await this.wallet.createTxExecutionRequest(requestWithoutFee, fee, {
|
|
24
|
-
txNonce,
|
|
25
|
-
cancellable
|
|
26
|
-
});
|
|
6
|
+
interactions;
|
|
7
|
+
constructor(wallet, interactions){
|
|
8
|
+
super(wallet), this.interactions = interactions;
|
|
27
9
|
}
|
|
28
10
|
/**
|
|
29
11
|
* Returns an execution request that represents this operation.
|
|
30
12
|
* @param options - An optional object containing additional configuration for the request generation.
|
|
31
13
|
* @returns An execution payload wrapped in promise.
|
|
32
14
|
*/ async request(options = {}) {
|
|
33
|
-
const requests = await this.
|
|
34
|
-
const
|
|
35
|
-
|
|
15
|
+
const requests = await this.getExecutionPayloads();
|
|
16
|
+
const feeExecutionPayload = options.fee?.paymentMethod ? await options.fee.paymentMethod.getExecutionPayload() : undefined;
|
|
17
|
+
const finalExecutionPayload = feeExecutionPayload ? mergeExecutionPayloads([
|
|
18
|
+
feeExecutionPayload,
|
|
19
|
+
...requests
|
|
20
|
+
]) : mergeExecutionPayloads([
|
|
21
|
+
...requests
|
|
22
|
+
]);
|
|
23
|
+
return finalExecutionPayload;
|
|
36
24
|
}
|
|
37
25
|
/**
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
* @
|
|
44
|
-
* @returns The result of the transaction as returned by the contract function.
|
|
26
|
+
* Simulates the batch, supporting private, public and utility functions. Although this is a single
|
|
27
|
+
* interaction with the wallet, private and public functions will be grouped into a single ExecutionPayload
|
|
28
|
+
* that the wallet will simulate as a single transaction. Utility function calls will simply be executed
|
|
29
|
+
* one by one.
|
|
30
|
+
* @param options - An optional object containing additional configuration for the interaction.
|
|
31
|
+
* @returns The results of all the interactions that make up the batch
|
|
45
32
|
*/ async simulate(options) {
|
|
46
|
-
const { indexedExecutionPayloads, utility } = (await this.
|
|
33
|
+
const { indexedExecutionPayloads, utility } = (await this.getExecutionPayloads()).reduce((acc, current, index)=>{
|
|
47
34
|
const call = current.calls[0];
|
|
48
35
|
if (call.type === FunctionType.UTILITY) {
|
|
49
36
|
acc.utility.push([
|
|
@@ -64,38 +51,59 @@ import { BaseContractInteraction } from './base_contract_interaction.js';
|
|
|
64
51
|
publicIndex: 0,
|
|
65
52
|
privateIndex: 0
|
|
66
53
|
});
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
54
|
+
const batchRequests = [];
|
|
55
|
+
// Add utility calls to batch
|
|
56
|
+
for (const [call] of utility){
|
|
57
|
+
batchRequests.push({
|
|
58
|
+
name: 'simulateUtility',
|
|
59
|
+
args: [
|
|
60
|
+
call,
|
|
61
|
+
options?.authWitnesses
|
|
62
|
+
]
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
// Add tx simulation to batch if there are any private/public calls
|
|
66
|
+
if (indexedExecutionPayloads.length > 0) {
|
|
67
|
+
const payloads = indexedExecutionPayloads.map(([request])=>request);
|
|
68
|
+
const combinedPayload = mergeExecutionPayloads(payloads);
|
|
69
|
+
const executionPayload = new ExecutionPayload(combinedPayload.calls, combinedPayload.authWitnesses.concat(options.authWitnesses ?? []), combinedPayload.capsules.concat(options.capsules ?? []), combinedPayload.extraHashedArgs);
|
|
70
|
+
batchRequests.push({
|
|
71
|
+
name: 'simulateTx',
|
|
72
|
+
args: [
|
|
73
|
+
executionPayload,
|
|
74
|
+
toSimulateOptions(options)
|
|
75
|
+
]
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
const batchResults = batchRequests.length > 0 ? await this.wallet.batch(batchRequests) : [];
|
|
84
79
|
const results = [];
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
80
|
+
// Process utility results (they come first in batch results)
|
|
81
|
+
for(let i = 0; i < utility.length; i++){
|
|
82
|
+
const [call, resultIndex] = utility[i];
|
|
83
|
+
const wrappedResult = batchResults[i];
|
|
84
|
+
if (wrappedResult.name === 'simulateUtility') {
|
|
85
|
+
const rawReturnValues = wrappedResult.result.result;
|
|
86
|
+
results[resultIndex] = rawReturnValues ? decodeFromAbi(call.returnTypes, rawReturnValues) : [];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
// Process tx simulation result (it comes last if present)
|
|
90
|
+
if (indexedExecutionPayloads.length > 0) {
|
|
91
|
+
const txResultWrapper = batchResults[utility.length];
|
|
92
|
+
if (txResultWrapper.name === 'simulateTx') {
|
|
93
|
+
const simulatedTx = txResultWrapper.result;
|
|
94
|
+
indexedExecutionPayloads.forEach(([request, callIndex, resultIndex])=>{
|
|
95
|
+
const call = request.calls[0];
|
|
96
|
+
// As account entrypoints are private, for private functions we retrieve the return values from the first nested call
|
|
97
|
+
// since we're interested in the first set of values AFTER the account entrypoint
|
|
98
|
+
// For public functions we retrieve the first values directly from the public output.
|
|
99
|
+
const rawReturnValues = call.type == FunctionType.PRIVATE ? simulatedTx.getPrivateReturnValues()?.nested?.[resultIndex].values : simulatedTx.getPublicReturnValues()?.[resultIndex].values;
|
|
100
|
+
results[callIndex] = rawReturnValues ? decodeFromAbi(call.returnTypes, rawReturnValues) : [];
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
}
|
|
96
104
|
return results;
|
|
97
105
|
}
|
|
98
|
-
async
|
|
99
|
-
return await Promise.all(this.
|
|
106
|
+
async getExecutionPayloads() {
|
|
107
|
+
return await Promise.all(this.interactions.map((i)=>i instanceof ExecutionPayload ? i : i.request()));
|
|
100
108
|
}
|
|
101
109
|
}
|
|
@@ -8,4 +8,4 @@ import { type ContractArtifact } from '@aztec/stdlib/abi';
|
|
|
8
8
|
* @returns A boolean value indicating whether the artifact is valid or not.
|
|
9
9
|
*/
|
|
10
10
|
export declare function abiChecker(artifact: ContractArtifact): boolean;
|
|
11
|
-
//# sourceMappingURL=
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L2NoZWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLEtBQUssZ0JBQWdCLEVBR3RCLE1BQU0sbUJBQW1CLENBQUM7QUFRM0I7Ozs7Ozs7R0FPRztBQUNILHdCQUFnQixVQUFVLENBQUMsUUFBUSxFQUFFLGdCQUFnQixXQTZCcEQifQ==
|
|
@@ -8,7 +8,7 @@ import { DeployMethod } from './deploy_method.js';
|
|
|
8
8
|
* The Contract class represents a contract and provides utility methods for interacting with it.
|
|
9
9
|
* It enables the creation of ContractFunctionInteraction instances for each function in the contract's ABI,
|
|
10
10
|
* allowing users to call or send transactions to these functions. Additionally, the Contract class can be used
|
|
11
|
-
* to attach the contract instance to a deployed contract
|
|
11
|
+
* to attach the contract instance to a deployed contract onchain through the PXE, which facilitates
|
|
12
12
|
* interaction with Aztec's privacy protocol.
|
|
13
13
|
*/
|
|
14
14
|
export declare class Contract extends ContractBase {
|
|
@@ -19,7 +19,7 @@ export declare class Contract extends ContractBase {
|
|
|
19
19
|
* @param wallet - The wallet to use when interacting with the contract.
|
|
20
20
|
* @returns A promise that resolves to a new Contract instance.
|
|
21
21
|
*/
|
|
22
|
-
static at(address: AztecAddress, artifact: ContractArtifact, wallet: Wallet):
|
|
22
|
+
static at(address: AztecAddress, artifact: ContractArtifact, wallet: Wallet): Contract;
|
|
23
23
|
/**
|
|
24
24
|
* Creates a tx to deploy (initialize and/or publish) a new instance of a contract.
|
|
25
25
|
* @param wallet - The wallet for executing the deployment.
|
|
@@ -39,4 +39,4 @@ export declare class Contract extends ContractBase {
|
|
|
39
39
|
*/
|
|
40
40
|
static deployWithPublicKeys(publicKeys: PublicKeys, wallet: Wallet, artifact: ContractArtifact, args: any[], constructorName?: string): DeployMethod<Contract>;
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9jb250cmFjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVoRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWxEOzs7Ozs7R0FNRztBQUNILHFCQUFhLFFBQVMsU0FBUSxZQUFZO0lBQ3hDOzs7Ozs7T0FNRztJQUNILE9BQWMsRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsUUFBUSxDQUU1RjtJQUVEOzs7Ozs7T0FNRztJQUNILE9BQWMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRSxlQUFlLENBQUMsRUFBRSxNQUFNLDBCQUlyRztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsT0FBYyxvQkFBb0IsQ0FDaEMsVUFBVSxFQUFFLFVBQVUsRUFDdEIsTUFBTSxFQUFFLE1BQU0sRUFDZCxRQUFRLEVBQUUsZ0JBQWdCLEVBQzFCLElBQUksRUFBRSxHQUFHLEVBQUUsRUFDWCxlQUFlLENBQUMsRUFBRSxNQUFNLDBCQUt6QjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/contract/contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;GAMG;AACH,qBAAa,QAAS,SAAQ,YAAY;IACxC;;;;;;OAMG;
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/contract/contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;GAMG;AACH,qBAAa,QAAS,SAAQ,YAAY;IACxC;;;;;;OAMG;IACH,OAAc,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAE5F;IAED;;;;;;OAMG;IACH,OAAc,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM,0BAIrG;IAED;;;;;;;;OAQG;IACH,OAAc,oBAAoB,CAChC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,EAC1B,IAAI,EAAE,GAAG,EAAE,EACX,eAAe,CAAC,EAAE,MAAM,0BAKzB;CACF"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { getContractClassFromArtifact } from '@aztec/stdlib/contract';
|
|
2
1
|
import { PublicKeys } from '@aztec/stdlib/keys';
|
|
3
2
|
import { ContractBase } from './contract_base.js';
|
|
4
3
|
import { DeployMethod } from './deploy_method.js';
|
|
@@ -6,7 +5,7 @@ import { DeployMethod } from './deploy_method.js';
|
|
|
6
5
|
* The Contract class represents a contract and provides utility methods for interacting with it.
|
|
7
6
|
* It enables the creation of ContractFunctionInteraction instances for each function in the contract's ABI,
|
|
8
7
|
* allowing users to call or send transactions to these functions. Additionally, the Contract class can be used
|
|
9
|
-
* to attach the contract instance to a deployed contract
|
|
8
|
+
* to attach the contract instance to a deployed contract onchain through the PXE, which facilitates
|
|
10
9
|
* interaction with Aztec's privacy protocol.
|
|
11
10
|
*/ export class Contract extends ContractBase {
|
|
12
11
|
/**
|
|
@@ -15,18 +14,8 @@ import { DeployMethod } from './deploy_method.js';
|
|
|
15
14
|
* @param artifact - Build artifact of the contract.
|
|
16
15
|
* @param wallet - The wallet to use when interacting with the contract.
|
|
17
16
|
* @returns A promise that resolves to a new Contract instance.
|
|
18
|
-
*/ static
|
|
19
|
-
|
|
20
|
-
if (instance === undefined) {
|
|
21
|
-
throw new Error(`Contract instance at ${address.toString()} has not been registered in the wallet's PXE`);
|
|
22
|
-
}
|
|
23
|
-
const thisContractClass = await getContractClassFromArtifact(artifact);
|
|
24
|
-
if (!thisContractClass.id.equals(instance.currentContractClassId)) {
|
|
25
|
-
// wallet holds an outdated version of this contract
|
|
26
|
-
await wallet.updateContract(address, artifact);
|
|
27
|
-
instance.currentContractClassId = thisContractClass.id;
|
|
28
|
-
}
|
|
29
|
-
return new Contract(instance, artifact, wallet);
|
|
17
|
+
*/ static at(address, artifact, wallet) {
|
|
18
|
+
return new Contract(address, artifact, wallet);
|
|
30
19
|
}
|
|
31
20
|
/**
|
|
32
21
|
* Creates a tx to deploy (initialize and/or publish) a new instance of a contract.
|
|
@@ -35,7 +24,7 @@ import { DeployMethod } from './deploy_method.js';
|
|
|
35
24
|
* @param args - Arguments for the constructor.
|
|
36
25
|
* @param constructorName - The name of the constructor function to call.
|
|
37
26
|
*/ static deploy(wallet, artifact, args, constructorName) {
|
|
38
|
-
const postDeployCtor = (
|
|
27
|
+
const postDeployCtor = (instance, wallet)=>Contract.at(instance.address, artifact, wallet);
|
|
39
28
|
return new DeployMethod(PublicKeys.default(), wallet, artifact, postDeployCtor, args, constructorName);
|
|
40
29
|
}
|
|
41
30
|
/**
|
|
@@ -47,7 +36,7 @@ import { DeployMethod } from './deploy_method.js';
|
|
|
47
36
|
* @param args - Arguments for the constructor.
|
|
48
37
|
* @param constructorName - The name of the constructor function to call.
|
|
49
38
|
*/ static deployWithPublicKeys(publicKeys, wallet, artifact, args, constructorName) {
|
|
50
|
-
const postDeployCtor = (
|
|
39
|
+
const postDeployCtor = (instance, wallet)=>Contract.at(instance.address, artifact, wallet);
|
|
51
40
|
return new DeployMethod(publicKeys, wallet, artifact, postDeployCtor, args, constructorName);
|
|
52
41
|
}
|
|
53
42
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ContractArtifact, type FieldLayout, FunctionSelector } from '@aztec/stdlib/abi';
|
|
2
|
-
import {
|
|
2
|
+
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
3
3
|
import type { Wallet } from '../wallet/wallet.js';
|
|
4
4
|
import { ContractFunctionInteraction } from './contract_function_interaction.js';
|
|
5
5
|
/**
|
|
@@ -22,11 +22,8 @@ export type ContractStorageLayout<T extends string> = {
|
|
|
22
22
|
* Abstract implementation of a contract extended by the Contract class and generated contract types.
|
|
23
23
|
*/
|
|
24
24
|
export declare class ContractBase {
|
|
25
|
-
|
|
26
|
-
readonly instance: ContractInstanceWithAddress;
|
|
27
|
-
/** The Application Binary Interface for the contract. */
|
|
25
|
+
readonly address: AztecAddress;
|
|
28
26
|
readonly artifact: ContractArtifact;
|
|
29
|
-
/** The wallet used for interacting with this contract. */
|
|
30
27
|
wallet: Wallet;
|
|
31
28
|
/**
|
|
32
29
|
* An object containing contract methods mapped to their respective names.
|
|
@@ -35,16 +32,12 @@ export declare class ContractBase {
|
|
|
35
32
|
[name: string]: ContractMethod;
|
|
36
33
|
};
|
|
37
34
|
protected constructor(
|
|
38
|
-
/** The
|
|
39
|
-
|
|
35
|
+
/** The contract's address. */
|
|
36
|
+
address: AztecAddress,
|
|
40
37
|
/** The Application Binary Interface for the contract. */
|
|
41
38
|
artifact: ContractArtifact,
|
|
42
39
|
/** The wallet used for interacting with this contract. */
|
|
43
40
|
wallet: Wallet);
|
|
44
|
-
/** Address of the contract. */
|
|
45
|
-
get address(): import("../index.js").AztecAddress;
|
|
46
|
-
/** Partial address of the contract. */
|
|
47
|
-
get partialAddress(): Promise<import("@aztec/foundation/schemas").Fr>;
|
|
48
41
|
/**
|
|
49
42
|
* Creates a new instance of the contract wrapper attached to a different wallet.
|
|
50
43
|
* @param wallet - Wallet to use for sending txs.
|
|
@@ -52,4 +45,4 @@ export declare class ContractBase {
|
|
|
52
45
|
*/
|
|
53
46
|
withWallet(wallet: Wallet): this;
|
|
54
47
|
}
|
|
55
|
-
//# sourceMappingURL=
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfYmFzZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L2NvbnRyYWN0X2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBQ3JCLEtBQUssV0FBVyxFQUVoQixnQkFBZ0IsRUFFakIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVqRjs7O0dBR0c7QUFDSCxNQUFNLE1BQU0sY0FBYyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSywyQkFBMkIsQ0FBQyxHQUFHO0lBQy9FOztPQUVHO0lBQ0gsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7Q0FDM0MsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxNQUFNLHFCQUFxQixDQUFDLENBQUMsU0FBUyxNQUFNLElBQUk7S0FDbkQsQ0FBQyxJQUFJLENBQUMsR0FBRyxXQUFXO0NBQ3RCLENBQUM7QUFFRjs7R0FFRztBQUNILHFCQUFhLFlBQVk7YUFRTCxPQUFPLEVBQUUsWUFBWTthQUVyQixRQUFRLEVBQUUsZ0JBQWdCO0lBRW5DLE1BQU0sRUFBRSxNQUFNO0lBWHZCOztPQUVHO0lBQ0ksT0FBTyxFQUFFO1FBQUUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLGNBQWMsQ0FBQTtLQUFFLENBQU07SUFFeEQsU0FBUztJQUNQLDhCQUE4QjtJQUNkLE9BQU8sRUFBRSxZQUFZO0lBQ3JDLHlEQUF5RDtJQUN6QyxRQUFRLEVBQUUsZ0JBQWdCO0lBQzFDLDBEQUEwRDtJQUNuRCxNQUFNLEVBQUUsTUFBTSxFQWlCdEI7SUFFRDs7OztPQUlHO0lBQ0ksVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsSUFBSSxDQUV0QztDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract_base.d.ts","sourceRoot":"","sources":["../../src/contract/contract_base.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAEhB,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"contract_base.d.ts","sourceRoot":"","sources":["../../src/contract/contract_base.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAEhB,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,2BAA2B,CAAC,GAAG;IAC/E;;OAEG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,MAAM,IAAI;KACnD,CAAC,IAAI,CAAC,GAAG,WAAW;CACtB,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;aAQL,OAAO,EAAE,YAAY;aAErB,QAAQ,EAAE,gBAAgB;IAEnC,MAAM,EAAE,MAAM;IAXvB;;OAEG;IACI,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;KAAE,CAAM;IAExD,SAAS;IACP,8BAA8B;IACd,OAAO,EAAE,YAAY;IACrC,yDAAyD;IACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IACnD,MAAM,EAAE,MAAM,EAiBtB;IAED;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAEtC;CACF"}
|
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import { FunctionSelector, getAllFunctionAbis } from '@aztec/stdlib/abi';
|
|
2
|
-
import { computePartialAddress } from '@aztec/stdlib/contract';
|
|
3
2
|
import { ContractFunctionInteraction } from './contract_function_interaction.js';
|
|
4
3
|
/**
|
|
5
4
|
* Abstract implementation of a contract extended by the Contract class and generated contract types.
|
|
6
5
|
*/ export class ContractBase {
|
|
7
|
-
|
|
6
|
+
address;
|
|
8
7
|
artifact;
|
|
9
8
|
wallet;
|
|
10
9
|
/**
|
|
11
10
|
* An object containing contract methods mapped to their respective names.
|
|
12
11
|
*/ methods;
|
|
13
|
-
constructor(/** The
|
|
14
|
-
this.
|
|
12
|
+
constructor(/** The contract's address. */ address, /** The Application Binary Interface for the contract. */ artifact, /** The wallet used for interacting with this contract. */ wallet){
|
|
13
|
+
this.address = address;
|
|
15
14
|
this.artifact = artifact;
|
|
16
15
|
this.wallet = wallet;
|
|
17
16
|
this.methods = {};
|
|
18
17
|
getAllFunctionAbis(artifact).forEach((f)=>{
|
|
19
18
|
const interactionFunction = (...args)=>{
|
|
20
|
-
return new ContractFunctionInteraction(this.wallet, this.
|
|
19
|
+
return new ContractFunctionInteraction(this.wallet, this.address, f, args);
|
|
21
20
|
};
|
|
22
21
|
this.methods[f.name] = Object.assign(interactionFunction, {
|
|
23
22
|
/**
|
|
@@ -29,17 +28,11 @@ import { ContractFunctionInteraction } from './contract_function_interaction.js'
|
|
|
29
28
|
});
|
|
30
29
|
});
|
|
31
30
|
}
|
|
32
|
-
/** Address of the contract. */ get address() {
|
|
33
|
-
return this.instance.address;
|
|
34
|
-
}
|
|
35
|
-
/** Partial address of the contract. */ get partialAddress() {
|
|
36
|
-
return computePartialAddress(this.instance);
|
|
37
|
-
}
|
|
38
31
|
/**
|
|
39
32
|
* Creates a new instance of the contract wrapper attached to a different wallet.
|
|
40
33
|
* @param wallet - Wallet to use for sending txs.
|
|
41
34
|
* @returns A new contract instance.
|
|
42
35
|
*/ withWallet(wallet) {
|
|
43
|
-
return new ContractBase(this.
|
|
36
|
+
return new ContractBase(this.address, this.artifact, wallet);
|
|
44
37
|
}
|
|
45
38
|
}
|
|
@@ -1,31 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type FunctionAbi } from '@aztec/stdlib/abi';
|
|
1
|
+
import { type FunctionAbi, FunctionSelector, FunctionType } from '@aztec/stdlib/abi';
|
|
3
2
|
import type { AuthWitness } from '@aztec/stdlib/auth-witness';
|
|
4
3
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
5
|
-
import { type Capsule, type HashedValues, type
|
|
4
|
+
import { type Capsule, type HashedValues, type TxProfileResult } from '@aztec/stdlib/tx';
|
|
5
|
+
import { ExecutionPayload } from '@aztec/stdlib/tx';
|
|
6
6
|
import type { Wallet } from '../wallet/wallet.js';
|
|
7
7
|
import { BaseContractInteraction } from './base_contract_interaction.js';
|
|
8
|
-
import type
|
|
9
|
-
/**
|
|
10
|
-
* Represents the result type of a simulation.
|
|
11
|
-
* By default, it will just be the return value of the simulated function
|
|
12
|
-
* so contract interfaces behave as plain functions. If `includeMetadata` is set to true in `SimulateMethodOptions` on the input of `simulate(...)`,
|
|
13
|
-
* it will provide extra information.
|
|
14
|
-
*/
|
|
15
|
-
type SimulationReturn<T extends boolean | undefined> = T extends true ? {
|
|
16
|
-
/**
|
|
17
|
-
* Additional stats about the simulation
|
|
18
|
-
*/
|
|
19
|
-
stats: SimulationStats;
|
|
20
|
-
/**
|
|
21
|
-
* Offchain effects generated during the simulation
|
|
22
|
-
*/
|
|
23
|
-
offchainEffects: OffchainEffect[];
|
|
24
|
-
/**
|
|
25
|
-
* Return value of the function
|
|
26
|
-
*/
|
|
27
|
-
result: any;
|
|
28
|
-
} : any;
|
|
8
|
+
import { type ProfileInteractionOptions, type RequestInteractionOptions, type SimulateInteractionOptions, type SimulationReturn } from './interaction_options.js';
|
|
29
9
|
/**
|
|
30
10
|
* This is the class that is returned when calling e.g. `contract.methods.myMethod(arg0, arg1)`.
|
|
31
11
|
* It contains available interactions one can call on a method, including view.
|
|
@@ -37,36 +17,46 @@ export declare class ContractFunctionInteraction extends BaseContractInteraction
|
|
|
37
17
|
private extraHashedArgs;
|
|
38
18
|
constructor(wallet: Wallet, contractAddress: AztecAddress, functionDao: FunctionAbi, args: any[], authWitnesses?: AuthWitness[], capsules?: Capsule[], extraHashedArgs?: HashedValues[]);
|
|
39
19
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* @
|
|
43
|
-
* @returns A Promise that resolves to a transaction instance.
|
|
20
|
+
* Returns the encoded function call wrapped by this interaction
|
|
21
|
+
* Useful when generating authwits
|
|
22
|
+
* @returns An encoded function call
|
|
44
23
|
*/
|
|
45
|
-
|
|
24
|
+
getFunctionCall(): Promise<{
|
|
25
|
+
name: string;
|
|
26
|
+
args: import("../api/fields.js").Fr[];
|
|
27
|
+
selector: FunctionSelector;
|
|
28
|
+
type: FunctionType;
|
|
29
|
+
to: AztecAddress;
|
|
30
|
+
isStatic: boolean;
|
|
31
|
+
hideMsgSender: boolean; /** Only set to `true` for enqueued public function calls */
|
|
32
|
+
returnTypes: import("@aztec/stdlib/abi").AbiType[];
|
|
33
|
+
}>;
|
|
46
34
|
/**
|
|
47
|
-
* Returns
|
|
48
|
-
*
|
|
49
|
-
* @
|
|
50
|
-
* @returns An execution payload wrapped in promise.
|
|
35
|
+
* Returns the execution payload that allows this operation to happen on chain.
|
|
36
|
+
* @param options - Configuration options.
|
|
37
|
+
* @returns The execution payload for this operation
|
|
51
38
|
*/
|
|
52
|
-
request(options?:
|
|
39
|
+
request(options?: RequestInteractionOptions): Promise<ExecutionPayload>;
|
|
53
40
|
/**
|
|
54
|
-
* Simulate a transaction and get its
|
|
41
|
+
* Simulate a transaction and get information from its execution.
|
|
55
42
|
* Differs from prove in a few important ways:
|
|
56
|
-
* 1. It returns the values of the function execution
|
|
43
|
+
* 1. It returns the values of the function execution, plus additional metadata if requested
|
|
57
44
|
* 2. It supports `utility`, `private` and `public` functions
|
|
58
45
|
*
|
|
59
|
-
* @param options - An optional object containing additional configuration for the
|
|
60
|
-
* @returns
|
|
46
|
+
* @param options - An optional object containing additional configuration for the simulation.
|
|
47
|
+
* @returns Depending on the simulation options, this method directly returns the result value of the executed
|
|
48
|
+
* function or a rich object containing extra metadata, such as estimated gas costs (if requested via options),
|
|
49
|
+
* execution statistics and emitted offchain effects
|
|
61
50
|
*/
|
|
62
|
-
simulate<T extends
|
|
51
|
+
simulate<T extends SimulateInteractionOptions>(options: T): Promise<SimulationReturn<Exclude<T['fee'], undefined>['estimateGas']>>;
|
|
52
|
+
simulate<T extends SimulateInteractionOptions>(options: T): Promise<SimulationReturn<T['includeMetadata']>>;
|
|
63
53
|
/**
|
|
64
54
|
* Simulate a transaction and profile the gate count for each function in the transaction.
|
|
65
55
|
* @param options - Same options as `simulate`, plus profiling method
|
|
66
56
|
*
|
|
67
57
|
* @returns An object containing the function return value and profile result.
|
|
68
58
|
*/
|
|
69
|
-
profile(options:
|
|
59
|
+
profile(options: ProfileInteractionOptions): Promise<TxProfileResult>;
|
|
70
60
|
/**
|
|
71
61
|
* Augments this ContractFunctionInteraction with additional metadata, such as authWitnesses, capsules, and extraHashedArgs.
|
|
72
62
|
* This is useful when creating a "batteries included" interaction, such as registering a contract class with its associated
|
|
@@ -74,7 +64,7 @@ export declare class ContractFunctionInteraction extends BaseContractInteraction
|
|
|
74
64
|
* @param options - An object containing the metadata to add to the interaction
|
|
75
65
|
* @returns A new ContractFunctionInteraction with the added metadata, but calling the same original function in the same manner
|
|
76
66
|
*/
|
|
77
|
-
with({ authWitnesses, capsules, extraHashedArgs
|
|
67
|
+
with({ authWitnesses, capsules, extraHashedArgs }: {
|
|
78
68
|
/** The authWitnesses to add to the interaction */
|
|
79
69
|
authWitnesses?: AuthWitness[];
|
|
80
70
|
/** The capsules to add to the interaction */
|
|
@@ -83,5 +73,4 @@ export declare class ContractFunctionInteraction extends BaseContractInteraction
|
|
|
83
73
|
extraHashedArgs?: HashedValues[];
|
|
84
74
|
}): ContractFunctionInteraction;
|
|
85
75
|
}
|
|
86
|
-
|
|
87
|
-
//# sourceMappingURL=contract_function_interaction.d.ts.map
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfZnVuY3Rpb25faW50ZXJhY3Rpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cmFjdC9jb250cmFjdF9mdW5jdGlvbl9pbnRlcmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFrQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3JILE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsS0FBSyxPQUFPLEVBQUUsS0FBSyxZQUFZLEVBQUUsS0FBSyxlQUFlLEVBQTBCLE1BQU0sa0JBQWtCLENBQUM7QUFDakgsT0FBTyxFQUFFLGdCQUFnQixFQUEwQixNQUFNLGtCQUFrQixDQUFDO0FBRTVFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXpFLE9BQU8sRUFDTCxLQUFLLHlCQUF5QixFQUM5QixLQUFLLHlCQUF5QixFQUM5QixLQUFLLDBCQUEwQixFQUMvQixLQUFLLGdCQUFnQixFQUd0QixNQUFNLDBCQUEwQixDQUFDO0FBRWxDOzs7R0FHRztBQUNILHFCQUFhLDJCQUE0QixTQUFRLHVCQUF1QjtJQUdwRSxTQUFTLENBQUMsZUFBZSxFQUFFLFlBQVk7SUFDdkMsU0FBUyxDQUFDLFdBQVcsRUFBRSxXQUFXO0lBQ2xDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFO0lBR3JCLE9BQU8sQ0FBQyxlQUFlO0lBUHpCLFlBQ0UsTUFBTSxFQUFFLE1BQU0sRUFDSixlQUFlLEVBQUUsWUFBWSxFQUM3QixXQUFXLEVBQUUsV0FBVyxFQUN4QixJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQ3JCLGFBQWEsR0FBRSxXQUFXLEVBQU8sRUFDakMsUUFBUSxHQUFFLE9BQU8sRUFBTyxFQUNoQixlQUFlLEdBQUUsWUFBWSxFQUFPLEVBTTdDO0lBRUQ7Ozs7T0FJRztJQUNVLGVBQWU7Ozs7Ozs7Z0NBU0gsNERBQTREOztPQUdwRjtJQUVEOzs7O09BSUc7SUFDbUIsT0FBTyxDQUFDLE9BQU8sR0FBRSx5QkFBOEIsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FnQmhHO0lBR0Q7Ozs7Ozs7Ozs7T0FVRztJQUNVLFFBQVEsQ0FBQyxDQUFDLFNBQVMsMEJBQTBCLEVBQ3hELE9BQU8sRUFBRSxDQUFDLEdBQ1QsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTdELFFBQVEsQ0FBQyxDQUFDLFNBQVMsMEJBQTBCLEVBQ3hELE9BQU8sRUFBRSxDQUFDLEdBQ1QsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQTJEbkQ7Ozs7O09BS0c7SUFDVSxPQUFPLENBQUMsT0FBTyxFQUFFLHlCQUF5QixHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FPakY7SUFFRDs7Ozs7O09BTUc7SUFDSSxJQUFJLENBQUMsRUFDVixhQUFrQixFQUNsQixRQUFhLEVBQ2IsZUFBb0IsRUFDckIsRUFBRTtRQUNELGtEQUFrRDtRQUNsRCxhQUFhLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUM5Qiw2Q0FBNkM7UUFDN0MsUUFBUSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDckIsc0RBQXNEO1FBQ3RELGVBQWUsQ0FBQyxFQUFFLFlBQVksRUFBRSxDQUFDO0tBQ2xDLEdBQUcsMkJBQTJCLENBVTlCO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract_function_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/contract_function_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"contract_function_interaction.d.ts","sourceRoot":"","sources":["../../src/contract/contract_function_interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAkC,MAAM,mBAAmB,CAAC;AACrH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAA0B,MAAM,kBAAkB,CAAC;AACjH,OAAO,EAAE,gBAAgB,EAA0B,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EAGtB,MAAM,0BAA0B,CAAC;AAElC;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,uBAAuB;IAGpE,SAAS,CAAC,eAAe,EAAE,YAAY;IACvC,SAAS,CAAC,WAAW,EAAE,WAAW;IAClC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE;IAGrB,OAAO,CAAC,eAAe;IAPzB,YACE,MAAM,EAAE,MAAM,EACJ,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,GAAG,EAAE,EACrB,aAAa,GAAE,WAAW,EAAO,EACjC,QAAQ,GAAE,OAAO,EAAO,EAChB,eAAe,GAAE,YAAY,EAAO,EAM7C;IAED;;;;OAIG;IACU,eAAe;;;;;;;gCASH,4DAA4D;;OAGpF;IAED;;;;OAIG;IACmB,OAAO,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAgBhG;IAGD;;;;;;;;;;OAUG;IACU,QAAQ,CAAC,CAAC,SAAS,0BAA0B,EACxD,OAAO,EAAE,CAAC,GACT,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAE7D,QAAQ,CAAC,CAAC,SAAS,0BAA0B,EACxD,OAAO,EAAE,CAAC,GACT,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IA2DnD;;;;;OAKG;IACU,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC,CAOjF;IAED;;;;;;OAMG;IACI,IAAI,CAAC,EACV,aAAkB,EAClB,QAAa,EACb,eAAoB,EACrB,EAAE;QACD,kDAAkD;QAClD,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;QAC9B,6CAA6C;QAC7C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;QACrB,sDAAsD;QACtD,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;KAClC,GAAG,2BAA2B,CAU9B;CACF"}
|