@aztec/aztec.js 0.33.0 → 0.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/account/contract.d.ts +6 -1
- package/dest/account/contract.d.ts.map +1 -1
- package/dest/account/contract.js +1 -1
- package/dest/account_manager/deploy_account_method.d.ts +15 -0
- package/dest/account_manager/deploy_account_method.d.ts.map +1 -0
- package/dest/account_manager/deploy_account_method.js +43 -0
- package/dest/account_manager/deploy_account_sent_tx.d.ts +3 -3
- package/dest/account_manager/deploy_account_sent_tx.d.ts.map +1 -1
- package/dest/account_manager/deploy_account_sent_tx.js +7 -6
- package/dest/account_manager/index.d.ts +9 -3
- package/dest/account_manager/index.d.ts.map +1 -1
- package/dest/account_manager/index.js +21 -17
- package/dest/contract/batch_call.d.ts.map +1 -1
- package/dest/contract/batch_call.js +5 -2
- package/dest/contract/contract_function_interaction.d.ts +4 -4
- package/dest/contract/contract_function_interaction.d.ts.map +1 -1
- package/dest/contract/contract_function_interaction.js +9 -5
- package/dest/contract/deploy_method.d.ts +11 -4
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +33 -15
- package/dest/contract/deploy_sent_tx.js +2 -2
- package/dest/entrypoint/default_entrypoint.d.ts +3 -3
- package/dest/entrypoint/default_entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/default_entrypoint.js +11 -7
- package/dest/entrypoint/default_multi_call_entrypoint.d.ts +15 -0
- package/dest/entrypoint/default_multi_call_entrypoint.d.ts.map +1 -0
- package/dest/entrypoint/default_multi_call_entrypoint.js +85 -0
- package/dest/entrypoint/entrypoint.d.ts +17 -14
- package/dest/entrypoint/entrypoint.d.ts.map +1 -1
- package/dest/entrypoint/entrypoint.js +5 -2
- package/dest/entrypoint/payload.d.ts +73 -0
- package/dest/entrypoint/payload.d.ts.map +1 -0
- package/dest/entrypoint/payload.js +109 -0
- package/dest/fee/fee_payment_method.d.ts +3 -4
- package/dest/fee/fee_payment_method.d.ts.map +1 -1
- package/dest/fee/native_fee_payment_method.d.ts +4 -5
- package/dest/fee/native_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/native_fee_payment_method.js +5 -5
- package/dest/fee/private_fee_payment_method.d.ts +3 -2
- package/dest/fee/private_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/private_fee_payment_method.js +4 -3
- package/dest/fee/public_fee_payment_method.d.ts +3 -3
- package/dest/fee/public_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/public_fee_payment_method.js +4 -3
- package/dest/index.d.ts +1 -1
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +2 -2
- package/dest/utils/authwit.d.ts.map +1 -1
- package/dest/utils/authwit.js +3 -3
- package/dest/utils/cheat_codes.d.ts +4 -4
- package/dest/utils/cheat_codes.d.ts.map +1 -1
- package/dest/utils/cheat_codes.js +11 -11
- package/dest/utils/pxe.js +3 -3
- package/dest/wallet/account_wallet.d.ts +2 -2
- package/dest/wallet/account_wallet.d.ts.map +1 -1
- package/dest/wallet/account_wallet.js +3 -3
- package/dest/wallet/base_wallet.d.ts +2 -2
- package/dest/wallet/base_wallet.d.ts.map +1 -1
- package/dest/wallet/signerless_wallet.d.ts +3 -3
- package/dest/wallet/signerless_wallet.d.ts.map +1 -1
- package/dest/wallet/signerless_wallet.js +3 -3
- package/package.json +7 -7
- package/src/account/contract.ts +7 -1
- package/src/account_manager/deploy_account_method.ts +74 -0
- package/src/account_manager/deploy_account_sent_tx.ts +6 -5
- package/src/account_manager/index.ts +39 -23
- package/src/contract/batch_call.ts +4 -1
- package/src/contract/contract_function_interaction.ts +11 -7
- package/src/contract/deploy_method.ts +44 -22
- package/src/contract/deploy_sent_tx.ts +1 -1
- package/src/entrypoint/default_entrypoint.ts +18 -11
- package/src/entrypoint/default_multi_call_entrypoint.ts +89 -0
- package/src/entrypoint/entrypoint.ts +19 -14
- package/src/entrypoint/payload.ts +144 -0
- package/src/fee/fee_payment_method.ts +3 -4
- package/src/fee/native_fee_payment_method.ts +5 -6
- package/src/fee/private_fee_payment_method.ts +4 -3
- package/src/fee/public_fee_payment_method.ts +4 -4
- package/src/index.ts +2 -2
- package/src/utils/authwit.ts +2 -2
- package/src/utils/cheat_codes.ts +10 -10
- package/src/utils/pxe.ts +2 -2
- package/src/wallet/account_wallet.ts +3 -3
- package/src/wallet/base_wallet.ts +2 -2
- package/src/wallet/signerless_wallet.ts +4 -4
|
@@ -19,7 +19,7 @@ export class DeploySentTx extends SentTx {
|
|
|
19
19
|
*/
|
|
20
20
|
async deployed(opts) {
|
|
21
21
|
const receipt = await this.wait(opts);
|
|
22
|
-
this.log(`Contract ${this.instance.address.toString()} successfully deployed.`);
|
|
22
|
+
this.log.info(`Contract ${this.instance.address.toString()} successfully deployed.`);
|
|
23
23
|
return receipt.contract;
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
@@ -41,4 +41,4 @@ export class DeploySentTx extends SentTx {
|
|
|
41
41
|
return this.postDeployCtor(this.instance.address, contractWallet);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95X3NlbnRfdHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3QvZGVwbG95X3NlbnRfdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPMUQsT0FBTyxFQUFFLE1BQU0sRUFBaUIsTUFBTSxjQUFjLENBQUM7QUFjckQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBb0QsU0FBUSxNQUFNO0lBRzdFLFlBQ0UsTUFBb0IsRUFDcEIsYUFBOEIsRUFDdEIsY0FBNkU7SUFDckYscUNBQXFDO0lBQzlCLFFBQXFDO1FBRTVDLEtBQUssQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFKckIsbUJBQWMsR0FBZCxjQUFjLENBQStEO1FBRTlFLGFBQVEsR0FBUixRQUFRLENBQTZCO1FBUHRDLFFBQUcsR0FBRyxpQkFBaUIsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBVTNELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUF1QjtRQUMzQyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUseUJBQXlCLENBQUMsQ0FBQztRQUNyRixPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQXVCO1FBQ3ZDLE1BQU0sT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDNUQsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxNQUFlO1FBQ3pDLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBaUIsRUFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBRSxHQUFjLENBQUMsd0JBQXdCLENBQUM7UUFDbEcsTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsdURBQXVELENBQUMsQ0FBQztRQUMzRSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBdUIsQ0FBQztJQUMxRixDQUFDO0NBQ0YifQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type EntrypointInterface } from './entrypoint.js';
|
|
1
|
+
import { TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
+
import { type EntrypointInterface, type ExecutionRequestInit } from './entrypoint.js';
|
|
3
3
|
/**
|
|
4
4
|
* Default implementation of the entrypoint interface. It calls a function on a contract directly
|
|
5
5
|
*/
|
|
@@ -7,6 +7,6 @@ export declare class DefaultEntrypoint implements EntrypointInterface {
|
|
|
7
7
|
private chainId;
|
|
8
8
|
private protocolVersion;
|
|
9
9
|
constructor(chainId: number, protocolVersion: number);
|
|
10
|
-
createTxExecutionRequest(
|
|
10
|
+
createTxExecutionRequest(exec: ExecutionRequestInit): Promise<TxExecutionRequest>;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=default_entrypoint.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default_entrypoint.d.ts","sourceRoot":"","sources":["../../src/entrypoint/default_entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"default_entrypoint.d.ts","sourceRoot":"","sources":["../../src/entrypoint/default_entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGxE,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEtF;;GAEG;AACH,qBAAa,iBAAkB,YAAW,mBAAmB;IAC/C,OAAO,CAAC,OAAO;IAAU,OAAO,CAAC,eAAe;gBAAxC,OAAO,EAAE,MAAM,EAAU,eAAe,EAAE,MAAM;IAEpE,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAsBlF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { TxContext } from '@aztec/circuits.js';
|
|
1
|
+
import { PackedValues, TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
+
import { GasSettings, TxContext } from '@aztec/circuits.js';
|
|
3
3
|
/**
|
|
4
4
|
* Default implementation of the entrypoint interface. It calls a function on a contract directly
|
|
5
5
|
*/
|
|
@@ -8,11 +8,15 @@ export class DefaultEntrypoint {
|
|
|
8
8
|
this.chainId = chainId;
|
|
9
9
|
this.protocolVersion = protocolVersion;
|
|
10
10
|
}
|
|
11
|
-
createTxExecutionRequest(
|
|
12
|
-
const [
|
|
13
|
-
|
|
11
|
+
createTxExecutionRequest(exec) {
|
|
12
|
+
const { calls, authWitnesses = [], packedArguments = [] } = exec;
|
|
13
|
+
if (calls.length > 1) {
|
|
14
|
+
throw new Error(`Expected a single call, got ${calls.length}`);
|
|
15
|
+
}
|
|
16
|
+
const call = calls[0];
|
|
17
|
+
const entrypointPackedValues = PackedValues.fromValues(call.args);
|
|
14
18
|
const txContext = TxContext.empty(this.chainId, this.protocolVersion);
|
|
15
|
-
return Promise.resolve(new TxExecutionRequest(
|
|
19
|
+
return Promise.resolve(new TxExecutionRequest(call.to, call.functionData, entrypointPackedValues.hash, txContext, [...packedArguments, entrypointPackedValues], authWitnesses, exec.fee?.gasSettings ?? GasSettings.default()));
|
|
16
20
|
}
|
|
17
21
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdF9lbnRyeXBvaW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudHJ5cG9pbnQvZGVmYXVsdF9lbnRyeXBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUFvQixPQUFlLEVBQVUsZUFBdUI7UUFBaEQsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFVLG9CQUFlLEdBQWYsZUFBZSxDQUFRO0lBQUcsQ0FBQztJQUV4RSx3QkFBd0IsQ0FBQyxJQUEwQjtRQUNqRCxNQUFNLEVBQUUsS0FBSyxFQUFFLGFBQWEsR0FBRyxFQUFFLEVBQUUsZUFBZSxHQUFHLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQztRQUVqRSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDakUsQ0FBQztRQUVELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLHNCQUFzQixHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdEUsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUNwQixJQUFJLGtCQUFrQixDQUNwQixJQUFJLENBQUMsRUFBRSxFQUNQLElBQUksQ0FBQyxZQUFZLEVBQ2pCLHNCQUFzQixDQUFDLElBQUksRUFDM0IsU0FBUyxFQUNULENBQUMsR0FBRyxlQUFlLEVBQUUsc0JBQXNCLENBQUMsRUFDNUMsYUFBYSxFQUNiLElBQUksQ0FBQyxHQUFHLEVBQUUsV0FBVyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FDL0MsQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGIn0=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type EntrypointInterface, type ExecutionRequestInit } from '@aztec/aztec.js/entrypoint';
|
|
2
|
+
import { TxExecutionRequest } from '@aztec/circuit-types';
|
|
3
|
+
import { type AztecAddress } from '@aztec/circuits.js';
|
|
4
|
+
/**
|
|
5
|
+
* Implementation for an entrypoint interface that can execute multiple function calls in a single transaction
|
|
6
|
+
*/
|
|
7
|
+
export declare class DefaultMultiCallEntrypoint implements EntrypointInterface {
|
|
8
|
+
private chainId;
|
|
9
|
+
private version;
|
|
10
|
+
private address;
|
|
11
|
+
constructor(chainId: number, version: number, address?: AztecAddress);
|
|
12
|
+
createTxExecutionRequest(executions: ExecutionRequestInit): Promise<TxExecutionRequest>;
|
|
13
|
+
private getEntrypointAbi;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=default_multi_call_entrypoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default_multi_call_entrypoint.d.ts","sourceRoot":"","sources":["../../src/entrypoint/default_multi_call_entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAqB,KAAK,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACpH,OAAO,EAAgB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,KAAK,YAAY,EAAwC,MAAM,oBAAoB,CAAC;AAI7F;;GAEG;AACH,qBAAa,0BAA2B,YAAW,mBAAmB;IAElE,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO;gBAFP,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAuD;IAG1E,wBAAwB,CAAC,UAAU,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAmBvF,OAAO,CAAC,gBAAgB;CAqDzB"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { EntrypointPayload } from '@aztec/aztec.js/entrypoint';
|
|
2
|
+
import { PackedValues, TxExecutionRequest } from '@aztec/circuit-types';
|
|
3
|
+
import { FunctionData, GasSettings, TxContext } from '@aztec/circuits.js';
|
|
4
|
+
import { encodeArguments } from '@aztec/foundation/abi';
|
|
5
|
+
import { getCanonicalMultiCallEntrypointAddress } from '@aztec/protocol-contracts/multi-call-entrypoint';
|
|
6
|
+
/**
|
|
7
|
+
* Implementation for an entrypoint interface that can execute multiple function calls in a single transaction
|
|
8
|
+
*/
|
|
9
|
+
export class DefaultMultiCallEntrypoint {
|
|
10
|
+
constructor(chainId, version, address = getCanonicalMultiCallEntrypointAddress()) {
|
|
11
|
+
this.chainId = chainId;
|
|
12
|
+
this.version = version;
|
|
13
|
+
this.address = address;
|
|
14
|
+
}
|
|
15
|
+
createTxExecutionRequest(executions) {
|
|
16
|
+
const { calls, authWitnesses = [], packedArguments = [] } = executions;
|
|
17
|
+
const payload = EntrypointPayload.fromAppExecution(calls);
|
|
18
|
+
const abi = this.getEntrypointAbi();
|
|
19
|
+
const entrypointPackedArgs = PackedValues.fromValues(encodeArguments(abi, [payload]));
|
|
20
|
+
const txRequest = TxExecutionRequest.from({
|
|
21
|
+
argsHash: entrypointPackedArgs.hash,
|
|
22
|
+
origin: this.address,
|
|
23
|
+
functionData: FunctionData.fromAbi(abi),
|
|
24
|
+
txContext: TxContext.empty(this.chainId, this.version),
|
|
25
|
+
packedArguments: [...payload.packedArguments, ...packedArguments, entrypointPackedArgs],
|
|
26
|
+
authWitnesses,
|
|
27
|
+
gasSettings: executions.fee?.gasSettings ?? GasSettings.default(),
|
|
28
|
+
});
|
|
29
|
+
return Promise.resolve(txRequest);
|
|
30
|
+
}
|
|
31
|
+
getEntrypointAbi() {
|
|
32
|
+
return {
|
|
33
|
+
name: 'entrypoint',
|
|
34
|
+
isInitializer: false,
|
|
35
|
+
functionType: 'secret',
|
|
36
|
+
isInternal: false,
|
|
37
|
+
parameters: [
|
|
38
|
+
{
|
|
39
|
+
name: 'app_payload',
|
|
40
|
+
type: {
|
|
41
|
+
kind: 'struct',
|
|
42
|
+
path: 'authwit::entrypoint::app::AppPayload',
|
|
43
|
+
fields: [
|
|
44
|
+
{
|
|
45
|
+
name: 'function_calls',
|
|
46
|
+
type: {
|
|
47
|
+
kind: 'array',
|
|
48
|
+
length: 4,
|
|
49
|
+
type: {
|
|
50
|
+
kind: 'struct',
|
|
51
|
+
path: 'authwit::entrypoint::function_call::FunctionCall',
|
|
52
|
+
fields: [
|
|
53
|
+
{ name: 'args_hash', type: { kind: 'field' } },
|
|
54
|
+
{
|
|
55
|
+
name: 'function_selector',
|
|
56
|
+
type: {
|
|
57
|
+
kind: 'struct',
|
|
58
|
+
path: 'authwit::aztec::protocol_types::abis::function_selector::FunctionSelector',
|
|
59
|
+
fields: [{ name: 'inner', type: { kind: 'integer', sign: 'unsigned', width: 32 } }],
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: 'target_address',
|
|
64
|
+
type: {
|
|
65
|
+
kind: 'struct',
|
|
66
|
+
path: 'authwit::aztec::protocol_types::address::AztecAddress',
|
|
67
|
+
fields: [{ name: 'inner', type: { kind: 'field' } }],
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
{ name: 'is_public', type: { kind: 'boolean' } },
|
|
71
|
+
],
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
{ name: 'nonce', type: { kind: 'field' } },
|
|
76
|
+
],
|
|
77
|
+
},
|
|
78
|
+
visibility: 'public',
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
returnTypes: [],
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdF9tdWx0aV9jYWxsX2VudHJ5cG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW50cnlwb2ludC9kZWZhdWx0X211bHRpX2NhbGxfZW50cnlwb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTRCLGlCQUFpQixFQUE2QixNQUFNLDRCQUE0QixDQUFDO0FBQ3BILE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQXFCLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDN0YsT0FBTyxFQUFvQixlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUV6Rzs7R0FFRztBQUNILE1BQU0sT0FBTywwQkFBMEI7SUFDckMsWUFDVSxPQUFlLEVBQ2YsT0FBZSxFQUNmLFVBQXdCLHNDQUFzQyxFQUFFO1FBRmhFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsWUFBTyxHQUFQLE9BQU8sQ0FBeUQ7SUFDdkUsQ0FBQztJQUVKLHdCQUF3QixDQUFDLFVBQWdDO1FBQ3ZELE1BQU0sRUFBRSxLQUFLLEVBQUUsYUFBYSxHQUFHLEVBQUUsRUFBRSxlQUFlLEdBQUcsRUFBRSxFQUFFLEdBQUcsVUFBVSxDQUFDO1FBQ3ZFLE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sb0JBQW9CLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXRGLE1B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
|
|
@@ -1,23 +1,26 @@
|
|
|
1
|
-
import { type FunctionCall, type TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
-
import { type
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*/
|
|
7
|
-
export type
|
|
8
|
-
/** The
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
|
|
1
|
+
import { type AuthWitness, type FunctionCall, type PackedValues, type TxExecutionRequest } from '@aztec/circuit-types';
|
|
2
|
+
import { EntrypointPayload, type FeeOptions } from './payload.js';
|
|
3
|
+
export { EntrypointPayload, FeeOptions };
|
|
4
|
+
export { DefaultEntrypoint } from './default_entrypoint.js';
|
|
5
|
+
export { DefaultMultiCallEntrypoint } from './default_multi_call_entrypoint.js';
|
|
6
|
+
/** Encodes the calls to be done in a transaction. */
|
|
7
|
+
export type ExecutionRequestInit = {
|
|
8
|
+
/** The function calls to be executed. */
|
|
9
|
+
calls: FunctionCall[];
|
|
10
|
+
/** Any transient auth witnesses needed for this execution */
|
|
11
|
+
authWitnesses?: AuthWitness[];
|
|
12
|
+
/** Any transient packed arguments for this execution */
|
|
13
|
+
packedArguments?: PackedValues[];
|
|
14
|
+
/** How the fee is going to be payed */
|
|
15
|
+
fee?: FeeOptions;
|
|
12
16
|
};
|
|
13
17
|
/** Creates transaction execution requests out of a set of function calls. */
|
|
14
18
|
export interface EntrypointInterface {
|
|
15
19
|
/**
|
|
16
20
|
* Generates an execution request out of set of function calls.
|
|
17
|
-
* @param
|
|
18
|
-
* @param feeOpts - The fee to be paid for the transaction.
|
|
21
|
+
* @param execution - The execution intents to be run.
|
|
19
22
|
* @returns The authenticated transaction execution request.
|
|
20
23
|
*/
|
|
21
|
-
createTxExecutionRequest(
|
|
24
|
+
createTxExecutionRequest(execution: ExecutionRequestInit): Promise<TxExecutionRequest>;
|
|
22
25
|
}
|
|
23
26
|
//# sourceMappingURL=entrypoint.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entrypoint.d.ts","sourceRoot":"","sources":["../../src/entrypoint/entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"entrypoint.d.ts","sourceRoot":"","sources":["../../src/entrypoint/entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEvH,OAAO,EAAE,iBAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,qDAAqD;AACrD,MAAM,MAAM,oBAAoB,GAAG;IACjC,yCAAyC;IACzC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,wDAAwD;IACxD,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC,uCAAuC;IACvC,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF,6EAA6E;AAC7E,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,wBAAwB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACxF"}
|
|
@@ -1,2 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { EntrypointPayload } from './payload.js';
|
|
2
|
+
export { EntrypointPayload };
|
|
3
|
+
export { DefaultEntrypoint } from './default_entrypoint.js';
|
|
4
|
+
export { DefaultMultiCallEntrypoint } from './default_multi_call_entrypoint.js';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnlwb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnRyeXBvaW50L2VudHJ5cG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLGNBQWMsQ0FBQztBQUVsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQWMsQ0FBQztBQUV6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQyJ9
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { type FunctionCall, PackedValues } from '@aztec/circuit-types';
|
|
2
|
+
import { Fr, type GasSettings } from '@aztec/circuits.js';
|
|
3
|
+
import { type Tuple } from '@aztec/foundation/serialize';
|
|
4
|
+
import { type FeePaymentMethod } from '../fee/fee_payment_method.js';
|
|
5
|
+
/**
|
|
6
|
+
* Fee payment options for a transaction.
|
|
7
|
+
*/
|
|
8
|
+
export type FeeOptions = {
|
|
9
|
+
/** The fee payment method to use */
|
|
10
|
+
paymentMethod: FeePaymentMethod;
|
|
11
|
+
/** The gas settings */
|
|
12
|
+
gasSettings: GasSettings;
|
|
13
|
+
};
|
|
14
|
+
/** Encoded function call for account contract entrypoint */
|
|
15
|
+
type EncodedFunctionCall = {
|
|
16
|
+
/** Arguments hash for the call */
|
|
17
|
+
args_hash: Fr;
|
|
18
|
+
/** Selector of the function to call */
|
|
19
|
+
function_selector: Fr;
|
|
20
|
+
/** Address of the contract to call */
|
|
21
|
+
target_address: Fr;
|
|
22
|
+
/** Whether the function is public or private */
|
|
23
|
+
is_public: boolean;
|
|
24
|
+
};
|
|
25
|
+
/** Assembles an entrypoint payload */
|
|
26
|
+
export declare class EntrypointPayload {
|
|
27
|
+
#private;
|
|
28
|
+
private constructor();
|
|
29
|
+
/**
|
|
30
|
+
* The function calls to execute. This uses snake_case naming so that it is compatible with Noir encoding
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
get function_calls(): EncodedFunctionCall[];
|
|
34
|
+
/**
|
|
35
|
+
* The nonce
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
get nonce(): Fr;
|
|
39
|
+
/**
|
|
40
|
+
* The packed arguments for the function calls
|
|
41
|
+
*/
|
|
42
|
+
get packedArguments(): PackedValues[];
|
|
43
|
+
/**
|
|
44
|
+
* Serializes the payload to an array of fields
|
|
45
|
+
* @returns The fields of the payload
|
|
46
|
+
*/
|
|
47
|
+
toFields(): Fr[];
|
|
48
|
+
/**
|
|
49
|
+
* Hashes the payload
|
|
50
|
+
* @returns The hash of the payload
|
|
51
|
+
*/
|
|
52
|
+
hash(): Fr;
|
|
53
|
+
/**
|
|
54
|
+
* Creates an execution payload from a set of function calls
|
|
55
|
+
* @param functionCalls - The function calls to execute
|
|
56
|
+
* @returns The execution payload
|
|
57
|
+
*/
|
|
58
|
+
static fromFunctionCalls(functionCalls: FunctionCall[]): EntrypointPayload;
|
|
59
|
+
/**
|
|
60
|
+
* Creates an execution payload for the app-portion of a transaction from a set of function calls
|
|
61
|
+
* @param functionCalls - The function calls to execute
|
|
62
|
+
* @returns The execution payload
|
|
63
|
+
*/
|
|
64
|
+
static fromAppExecution(functionCalls: FunctionCall[] | Tuple<FunctionCall, 4>): EntrypointPayload;
|
|
65
|
+
/**
|
|
66
|
+
* Creates an execution payload to pay the fee for a transaction
|
|
67
|
+
* @param feeOpts - The fee payment options
|
|
68
|
+
* @returns The execution payload
|
|
69
|
+
*/
|
|
70
|
+
static fromFeeOptions(feeOpts?: FeeOptions): Promise<EntrypointPayload>;
|
|
71
|
+
}
|
|
72
|
+
export {};
|
|
73
|
+
//# sourceMappingURL=payload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../src/entrypoint/payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,YAAY,EAAqB,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,EAAE,EAAE,KAAK,WAAW,EAAkB,MAAM,oBAAoB,CAAC;AAG1E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,oCAAoC;IACpC,aAAa,EAAE,gBAAgB,CAAC;IAChC,uBAAuB;IACvB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AASF,4DAA4D;AAC5D,KAAK,mBAAmB,GAAG;IACzB,kCAAkC;IAClC,SAAS,EAAE,EAAE,CAAC;IACd,uCAAuC;IACvC,iBAAiB,EAAE,EAAE,CAAC;IACtB,sCAAsC;IACtC,cAAc,EAAE,EAAE,CAAC;IACnB,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAGF,sCAAsC;AACtC,qBAAa,iBAAiB;;IAM5B,OAAO;IAkBP;;;OAGG;IACH,IAAI,cAAc,0BAEjB;IAGD;;;OAGG;IACH,IAAI,KAAK,OAER;IAED;;OAEG;IACH,IAAI,eAAe,mBAElB;IAED;;;OAGG;IACH,QAAQ,IAAI,EAAE,EAAE;IAYhB;;;OAGG;IACH,IAAI;IAIJ;;;;OAIG;IACH,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,YAAY,EAAE;IAItD;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAQ9E;;;;OAIG;WACU,cAAc,CAAC,OAAO,CAAC,EAAE,UAAU;CAKjD"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
var _EntrypointPayload_packedArguments, _EntrypointPayload_functionCalls, _EntrypointPayload_nonce, _EntrypointPayload_generatorIndex;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
+
import { PackedValues, emptyFunctionCall } from '@aztec/circuit-types';
|
|
4
|
+
import { Fr, GeneratorIndex } from '@aztec/circuits.js';
|
|
5
|
+
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
6
|
+
import { pedersenHash } from '@aztec/foundation/crypto';
|
|
7
|
+
// These must match the values defined in:
|
|
8
|
+
// - noir-projects/aztec-nr/aztec/src/entrypoint/app.nr
|
|
9
|
+
const APP_MAX_CALLS = 4;
|
|
10
|
+
// - and noir-projects/aztec-nr/aztec/src/entrypoint/fee.nr
|
|
11
|
+
const FEE_MAX_CALLS = 2;
|
|
12
|
+
/* eslint-enable camelcase */
|
|
13
|
+
/** Assembles an entrypoint payload */
|
|
14
|
+
export class EntrypointPayload {
|
|
15
|
+
constructor(functionCalls, generatorIndex) {
|
|
16
|
+
_EntrypointPayload_packedArguments.set(this, []);
|
|
17
|
+
_EntrypointPayload_functionCalls.set(this, []);
|
|
18
|
+
_EntrypointPayload_nonce.set(this, Fr.random());
|
|
19
|
+
_EntrypointPayload_generatorIndex.set(this, void 0);
|
|
20
|
+
for (const call of functionCalls) {
|
|
21
|
+
__classPrivateFieldGet(this, _EntrypointPayload_packedArguments, "f").push(PackedValues.fromValues(call.args));
|
|
22
|
+
}
|
|
23
|
+
/* eslint-disable camelcase */
|
|
24
|
+
__classPrivateFieldSet(this, _EntrypointPayload_functionCalls, functionCalls.map((call, index) => ({
|
|
25
|
+
args_hash: __classPrivateFieldGet(this, _EntrypointPayload_packedArguments, "f")[index].hash,
|
|
26
|
+
function_selector: call.functionData.selector.toField(),
|
|
27
|
+
target_address: call.to.toField(),
|
|
28
|
+
is_public: !call.functionData.isPrivate,
|
|
29
|
+
})), "f");
|
|
30
|
+
/* eslint-enable camelcase */
|
|
31
|
+
__classPrivateFieldSet(this, _EntrypointPayload_generatorIndex, generatorIndex, "f");
|
|
32
|
+
}
|
|
33
|
+
/* eslint-disable camelcase */
|
|
34
|
+
/**
|
|
35
|
+
* The function calls to execute. This uses snake_case naming so that it is compatible with Noir encoding
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
get function_calls() {
|
|
39
|
+
return __classPrivateFieldGet(this, _EntrypointPayload_functionCalls, "f");
|
|
40
|
+
}
|
|
41
|
+
/* eslint-enable camelcase */
|
|
42
|
+
/**
|
|
43
|
+
* The nonce
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
get nonce() {
|
|
47
|
+
return __classPrivateFieldGet(this, _EntrypointPayload_nonce, "f");
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The packed arguments for the function calls
|
|
51
|
+
*/
|
|
52
|
+
get packedArguments() {
|
|
53
|
+
return __classPrivateFieldGet(this, _EntrypointPayload_packedArguments, "f");
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Serializes the payload to an array of fields
|
|
57
|
+
* @returns The fields of the payload
|
|
58
|
+
*/
|
|
59
|
+
toFields() {
|
|
60
|
+
return [
|
|
61
|
+
...__classPrivateFieldGet(this, _EntrypointPayload_functionCalls, "f").flatMap(call => [
|
|
62
|
+
call.args_hash,
|
|
63
|
+
call.function_selector,
|
|
64
|
+
call.target_address,
|
|
65
|
+
new Fr(call.is_public),
|
|
66
|
+
]),
|
|
67
|
+
__classPrivateFieldGet(this, _EntrypointPayload_nonce, "f"),
|
|
68
|
+
];
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Hashes the payload
|
|
72
|
+
* @returns The hash of the payload
|
|
73
|
+
*/
|
|
74
|
+
hash() {
|
|
75
|
+
return pedersenHash(this.toFields(), __classPrivateFieldGet(this, _EntrypointPayload_generatorIndex, "f"));
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Creates an execution payload from a set of function calls
|
|
79
|
+
* @param functionCalls - The function calls to execute
|
|
80
|
+
* @returns The execution payload
|
|
81
|
+
*/
|
|
82
|
+
static fromFunctionCalls(functionCalls) {
|
|
83
|
+
return new EntrypointPayload(functionCalls, 0);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Creates an execution payload for the app-portion of a transaction from a set of function calls
|
|
87
|
+
* @param functionCalls - The function calls to execute
|
|
88
|
+
* @returns The execution payload
|
|
89
|
+
*/
|
|
90
|
+
static fromAppExecution(functionCalls) {
|
|
91
|
+
if (functionCalls.length > APP_MAX_CALLS) {
|
|
92
|
+
throw new Error(`Expected at most ${APP_MAX_CALLS} function calls, got ${functionCalls.length}`);
|
|
93
|
+
}
|
|
94
|
+
const paddedCalls = padArrayEnd(functionCalls, emptyFunctionCall(), APP_MAX_CALLS);
|
|
95
|
+
return new EntrypointPayload(paddedCalls, GeneratorIndex.SIGNATURE_PAYLOAD);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Creates an execution payload to pay the fee for a transaction
|
|
99
|
+
* @param feeOpts - The fee payment options
|
|
100
|
+
* @returns The execution payload
|
|
101
|
+
*/
|
|
102
|
+
static async fromFeeOptions(feeOpts) {
|
|
103
|
+
const calls = feeOpts ? await feeOpts.paymentMethod.getFunctionCalls(feeOpts?.gasSettings) : [];
|
|
104
|
+
const paddedCalls = padArrayEnd(calls, emptyFunctionCall(), FEE_MAX_CALLS);
|
|
105
|
+
return new EntrypointPayload(paddedCalls, GeneratorIndex.FEE_PAYLOAD);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
_EntrypointPayload_packedArguments = new WeakMap(), _EntrypointPayload_functionCalls = new WeakMap(), _EntrypointPayload_nonce = new WeakMap(), _EntrypointPayload_generatorIndex = new WeakMap();
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnRyeXBvaW50L3BheWxvYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQXFCLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxFQUFFLEVBQW9CLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFleEQsMENBQTBDO0FBQzFDLHVEQUF1RDtBQUN2RCxNQUFNLGFBQWEsR0FBRyxDQUFDLENBQUM7QUFDeEIsMkRBQTJEO0FBQzNELE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQztBQWN4Qiw2QkFBNkI7QUFFN0Isc0NBQXNDO0FBQ3RDLE1BQU0sT0FBTyxpQkFBaUI7SUFNNUIsWUFBb0IsYUFBNkIsRUFBRSxjQUFzQjtRQUx6RSw2Q0FBbUMsRUFBRSxFQUFDO1FBQ3RDLDJDQUF3QyxFQUFFLEVBQUM7UUFDM0MsbUNBQVMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFDO1FBQ3JCLG9EQUF3QjtRQUd0QixLQUFLLE1BQU0sSUFBSSxJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2pDLHVCQUFBLElBQUksMENBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDakUsQ0FBQztRQUVELDhCQUE4QjtRQUM5Qix1QkFBQSxJQUFJLG9DQUFrQixhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN4RCxTQUFTLEVBQUUsdUJBQUEsSUFBSSwwQ0FBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJO1lBQzVDLGlCQUFpQixF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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type FunctionCall } from '@aztec/circuit-types';
|
|
2
|
+
import { type GasSettings } from '@aztec/circuits.js';
|
|
2
3
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
3
|
-
import { type Fr } from '@aztec/foundation/fields';
|
|
4
4
|
/**
|
|
5
5
|
* Holds information about how the fee for a transaction is to be paid.
|
|
6
6
|
*/
|
|
@@ -15,10 +15,9 @@ export interface FeePaymentMethod {
|
|
|
15
15
|
getPaymentContract(): AztecAddress;
|
|
16
16
|
/**
|
|
17
17
|
* Creates a function call to pay the fee in the given asset.
|
|
18
|
-
*
|
|
19
|
-
* @param maxFee - The maximum fee to be paid in the given asset.
|
|
18
|
+
* @param gasSettings - The gas limits and max fees.
|
|
20
19
|
* @returns The function call to pay the fee.
|
|
21
20
|
*/
|
|
22
|
-
getFunctionCalls(
|
|
21
|
+
getFunctionCalls(gasSettings: GasSettings): Promise<FunctionCall[]>;
|
|
23
22
|
}
|
|
24
23
|
//# sourceMappingURL=fee_payment_method.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,QAAQ,IAAI,YAAY,CAAC;IACzB;;OAEG;IACH,kBAAkB,IAAI,YAAY,CAAC;IAEnC;;;;OAIG;IACH,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACrE"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { type FunctionCall } from '@aztec/circuit-types';
|
|
2
|
-
import { type AztecAddress } from '@aztec/circuits.js';
|
|
3
|
-
import { type Fr } from '@aztec/foundation/fields';
|
|
2
|
+
import { type AztecAddress, type GasSettings } from '@aztec/circuits.js';
|
|
4
3
|
import { type Wallet } from '../account/wallet.js';
|
|
5
4
|
import { type FeePaymentMethod } from './fee_payment_method.js';
|
|
6
5
|
/**
|
|
@@ -26,10 +25,10 @@ export declare class NativeFeePaymentMethod implements FeePaymentMethod {
|
|
|
26
25
|
*/
|
|
27
26
|
isPrivateFeePayment(): boolean;
|
|
28
27
|
/**
|
|
29
|
-
* Creates a function call to pay the fee in gas token
|
|
30
|
-
* @param
|
|
28
|
+
* Creates a function call to pay the fee in gas token.
|
|
29
|
+
* @param gasSettings - The gas settings.
|
|
31
30
|
* @returns A function call
|
|
32
31
|
*/
|
|
33
|
-
getFunctionCalls(
|
|
32
|
+
getFunctionCalls(gasSettings: GasSettings): Promise<FunctionCall[]>;
|
|
34
33
|
}
|
|
35
34
|
//# sourceMappingURL=native_fee_payment_method.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native_fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/native_fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAgB,
|
|
1
|
+
{"version":3,"file":"native_fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/native_fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAgB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIvF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;GAEG;AACH,qBAAa,sBAAuB,YAAW,gBAAgB;;IAG7D,OAAO;WAIM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAKpE;;;OAGG;IACH,QAAQ;IAIR;;;OAGG;IACH,kBAAkB;IAIlB;;;OAGG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;;OAIG;IACH,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CASpE"}
|
|
@@ -37,19 +37,19 @@ export class NativeFeePaymentMethod {
|
|
|
37
37
|
return false;
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
|
-
* Creates a function call to pay the fee in gas token
|
|
41
|
-
* @param
|
|
40
|
+
* Creates a function call to pay the fee in gas token.
|
|
41
|
+
* @param gasSettings - The gas settings.
|
|
42
42
|
* @returns A function call
|
|
43
43
|
*/
|
|
44
|
-
getFunctionCalls(
|
|
44
|
+
getFunctionCalls(gasSettings) {
|
|
45
45
|
return Promise.resolve([
|
|
46
46
|
{
|
|
47
47
|
to: __classPrivateFieldGet(this, _NativeFeePaymentMethod_gasTokenAddress, "f"),
|
|
48
48
|
functionData: new FunctionData(FunctionSelector.fromSignature('pay_fee(Field)'), false),
|
|
49
|
-
args: [
|
|
49
|
+
args: [gasSettings.getFeeLimit()],
|
|
50
50
|
},
|
|
51
51
|
]);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
_NativeFeePaymentMethod_gasTokenAddress = new WeakMap();
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlX2ZlZV9wYXltZW50X21ldGhvZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mZWUvbmF0aXZlX2ZlZV9wYXltZW50X21ldGhvZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLE9BQU8sRUFBcUIsWUFBWSxFQUFvQixNQUFNLG9CQUFvQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBS2xGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUFvQix3QkFBc0M7UUFGMUQsMERBQStCO1FBRzdCLHVCQUFBLElBQUksMkNBQW9CLHdCQUF3QixNQUFBLENBQUM7SUFDbkQsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQWM7UUFDaEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUMsT0FBTyxJQUFJLHNCQUFzQixDQUFDLDJCQUEyQixDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUVEOzs7T0FHRztJQUNILFFBQVE7UUFDTixPQUFPLHVCQUFBLElBQUksK0NBQWlCLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILGtCQUFrQjtRQUNoQixPQUFPLHVCQUFBLElBQUksK0NBQWlCLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILG1CQUFtQjtRQUNqQixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZ0JBQWdCLENBQUMsV0FBd0I7UUFDdkMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3JCO2dCQUNFLEVBQUUsRUFBRSx1QkFBQSxJQUFJLCtDQUFpQjtnQkFDekIsWUFBWSxFQUFFLElBQUksWUFBWSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssQ0FBQztnQkFDdkYsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ2xDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIn0=
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type FunctionCall } from '@aztec/circuit-types';
|
|
2
|
+
import { type GasSettings } from '@aztec/circuits.js';
|
|
2
3
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
3
4
|
import { Fr } from '@aztec/foundation/fields';
|
|
4
5
|
import { type Wallet } from '../account/wallet.js';
|
|
@@ -54,9 +55,9 @@ export declare class PrivateFeePaymentMethod implements FeePaymentMethod {
|
|
|
54
55
|
getPaymentContract(): AztecAddress;
|
|
55
56
|
/**
|
|
56
57
|
* Creates a function call to pay the fee in the given asset.
|
|
57
|
-
* @param
|
|
58
|
+
* @param gasSettings - The gas settings.
|
|
58
59
|
* @returns The function call to pay the fee.
|
|
59
60
|
*/
|
|
60
|
-
getFunctionCalls(
|
|
61
|
+
getFunctionCalls(gasSettings: GasSettings): Promise<FunctionCall[]>;
|
|
61
62
|
}
|
|
62
63
|
//# sourceMappingURL=private_fee_payment_method.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"private_fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/private_fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"private_fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/private_fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;GAEG;AACH,qBAAa,uBAAwB,YAAW,gBAAgB;IAE5D;;OAEG;IACH,OAAO,CAAC,KAAK;IACb;;OAEG;IACH,OAAO,CAAC,eAAe;IAEvB;;OAEG;IACH,OAAO,CAAC,MAAM;IAEd;;;OAGG;IACH,OAAO,CAAC,YAAY;;IAlBpB;;OAEG;IACK,KAAK,EAAE,YAAY;IAC3B;;OAEG;IACK,eAAe,EAAE,YAAY;IAErC;;OAEG;IACK,MAAM,EAAE,MAAM;IAEtB;;;OAGG;IACK,YAAY,KAAc;IAGpC;;;OAGG;IACH,QAAQ;IAIR;;;OAGG;IACH,kBAAkB;IAIlB;;;;OAIG;IACG,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA4B1E"}
|
|
@@ -46,11 +46,12 @@ export class PrivateFeePaymentMethod {
|
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
48
|
* Creates a function call to pay the fee in the given asset.
|
|
49
|
-
* @param
|
|
49
|
+
* @param gasSettings - The gas settings.
|
|
50
50
|
* @returns The function call to pay the fee.
|
|
51
51
|
*/
|
|
52
|
-
async getFunctionCalls(
|
|
52
|
+
async getFunctionCalls(gasSettings) {
|
|
53
53
|
const nonce = Fr.random();
|
|
54
|
+
const maxFee = gasSettings.getFeeLimit();
|
|
54
55
|
const messageHash = computeAuthWitMessageHash(this.paymentContract, this.wallet.getChainId(), this.wallet.getVersion(), {
|
|
55
56
|
args: [this.wallet.getCompleteAddress().address, this.paymentContract, maxFee, nonce],
|
|
56
57
|
functionData: new FunctionData(FunctionSelector.fromSignature('unshield((Field),(Field),Field,Field)'), true),
|
|
@@ -67,4 +68,4 @@ export class PrivateFeePaymentMethod {
|
|
|
67
68
|
];
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9mZWVfcGF5bWVudF9tZXRob2QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmVlL3ByaXZhdGVfZmVlX3BheW1lbnRfbWV0aG9kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQW9CLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFekQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRzlDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2hFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQztJQUNFOztPQUVHO0lBQ0ssS0FBbUI7SUFDM0I7O09BRUc7SUFDSyxlQUE2QjtJQUVyQzs7T0FFRztJQUNLLE1BQWM7SUFFdEI7OztPQUdHO0lBQ0ssZUFBZSxFQUFFLENBQUMsTUFBTSxFQUFFO1FBZjFCLFVBQUssR0FBTCxLQUFLLENBQWM7UUFJbkIsb0JBQWUsR0FBZixlQUFlLENBQWM7UUFLN0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQU1kLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQ2pDLENBQUM7SUFFSjs7O09BR0c7SUFDSCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFdBQXdCO1FBQzdDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMxQixNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDekMsTUFBTSxXQUFXLEdBQUcseUJBQXlCLENBQzNDLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQ3hCO1lBQ0UsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUM7WUFDckYsWUFBWSxFQUFFLElBQUksWUFBWSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyx1Q0FBdUMsQ0FBQyxFQUFFLElBQUksQ0FBQztZQUM3RyxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDZixDQUNGLENBQUM7UUFDRixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTdDLE1BQU0sbUJBQW1CLEdBQUcsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXhFLE9BQU87WUFDTDtnQkFDRSxFQUFFLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFO2dCQUM3QixZQUFZLEVBQUUsSUFBSSxZQUFZLENBQzVCLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxtREFBbUQsQ0FBQyxFQUNuRixJQUFJLENBQ0w7Z0JBQ0QsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxDQUFDO2FBQ3ZEO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRiJ9
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type FunctionCall } from '@aztec/circuit-types';
|
|
2
|
+
import { type GasSettings } from '@aztec/circuits.js';
|
|
2
3
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
4
4
|
import { type AccountWallet } from '../wallet/account_wallet.js';
|
|
5
5
|
import { type FeePaymentMethod } from './fee_payment_method.js';
|
|
6
6
|
/**
|
|
@@ -44,9 +44,9 @@ export declare class PublicFeePaymentMethod implements FeePaymentMethod {
|
|
|
44
44
|
getPaymentContract(): AztecAddress;
|
|
45
45
|
/**
|
|
46
46
|
* Creates a function call to pay the fee in the given asset.
|
|
47
|
-
* @param
|
|
47
|
+
* @param gasSettings - The gas settings.
|
|
48
48
|
* @returns The function call to pay the fee.
|
|
49
49
|
*/
|
|
50
|
-
getFunctionCalls(
|
|
50
|
+
getFunctionCalls(gasSettings: GasSettings): Promise<FunctionCall[]>;
|
|
51
51
|
}
|
|
52
52
|
//# sourceMappingURL=public_fee_payment_method.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/public_fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"public_fee_payment_method.d.ts","sourceRoot":"","sources":["../../src/fee/public_fee_payment_method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAIpE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;GAEG;AACH,qBAAa,sBAAuB,YAAW,gBAAgB;IAE3D;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,YAAY;IAC7B;;OAEG;IACH,SAAS,CAAC,eAAe,EAAE,YAAY;IAEvC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,aAAa;;IAZ/B;;OAEG;IACO,KAAK,EAAE,YAAY;IAC7B;;OAEG;IACO,eAAe,EAAE,YAAY;IAEvC;;OAEG;IACO,MAAM,EAAE,aAAa;IAGjC;;;OAGG;IACH,QAAQ;IAIR;;;OAGG;IACH,kBAAkB;IAIlB;;;;OAIG;IACH,gBAAgB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA6BpE"}
|