@aztec/aztec.js 0.0.1-commit.29c6b1a3 → 0.0.1-commit.2c85e299c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/api/abi.d.ts +2 -2
- package/dest/api/abi.d.ts.map +1 -1
- package/dest/api/contract.d.ts +5 -5
- package/dest/api/contract.d.ts.map +1 -1
- package/dest/api/contract.js +3 -3
- package/dest/api/deployment.d.ts +1 -2
- package/dest/api/deployment.d.ts.map +1 -1
- package/dest/api/deployment.js +0 -1
- package/dest/api/events.d.ts +18 -6
- package/dest/api/events.d.ts.map +1 -1
- package/dest/api/events.js +37 -22
- package/dest/api/fields.d.ts +2 -1
- package/dest/api/fields.d.ts.map +1 -1
- package/dest/api/fields.js +1 -0
- package/dest/api/keys.d.ts +1 -1
- package/dest/api/keys.js +1 -1
- package/dest/api/wallet.d.ts +3 -2
- package/dest/api/wallet.d.ts.map +1 -1
- package/dest/api/wallet.js +2 -1
- package/dest/contract/base_contract_interaction.d.ts +3 -3
- package/dest/contract/base_contract_interaction.d.ts.map +1 -1
- package/dest/contract/batch_call.d.ts +3 -3
- package/dest/contract/batch_call.d.ts.map +1 -1
- package/dest/contract/batch_call.js +17 -8
- package/dest/contract/contract_function_interaction.d.ts +7 -16
- package/dest/contract/contract_function_interaction.d.ts.map +1 -1
- package/dest/contract/contract_function_interaction.js +107 -18
- package/dest/contract/deploy_method.d.ts +37 -12
- package/dest/contract/deploy_method.d.ts.map +1 -1
- package/dest/contract/deploy_method.js +42 -21
- package/dest/contract/get_gas_limits.js +3 -3
- package/dest/contract/interaction_options.d.ts +62 -21
- package/dest/contract/interaction_options.d.ts.map +1 -1
- package/dest/contract/interaction_options.js +33 -0
- package/dest/contract/protocol_contracts/auth-registry.d.ts +1 -1
- package/dest/contract/protocol_contracts/auth-registry.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/auth-registry.js +48 -6
- package/dest/contract/protocol_contracts/contract-class-registry.d.ts +2 -22
- package/dest/contract/protocol_contracts/contract-class-registry.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/contract-class-registry.js +13 -658
- package/dest/contract/protocol_contracts/contract-instance-registry.d.ts +2 -11
- package/dest/contract/protocol_contracts/contract-instance-registry.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/contract-instance-registry.js +76 -473
- package/dest/contract/protocol_contracts/fee-juice.d.ts +1 -10
- package/dest/contract/protocol_contracts/fee-juice.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/fee-juice.js +7 -400
- package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts +1 -1
- package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/multi-call-entrypoint.js +39 -1
- package/dest/contract/protocol_contracts/public-checks.d.ts +1 -1
- package/dest/contract/protocol_contracts/public-checks.d.ts.map +1 -1
- package/dest/contract/protocol_contracts/public-checks.js +39 -9
- package/dest/fee/fee_juice_payment_method_with_claim.js +6 -6
- package/dest/fee/private_fee_payment_method.d.ts +2 -1
- package/dest/fee/private_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/private_fee_payment_method.js +11 -10
- package/dest/fee/public_fee_payment_method.d.ts +2 -1
- package/dest/fee/public_fee_payment_method.d.ts.map +1 -1
- package/dest/fee/public_fee_payment_method.js +11 -10
- package/dest/fee/sponsored_fee_payment.js +3 -3
- package/dest/utils/abi_types.d.ts +6 -1
- package/dest/utils/abi_types.d.ts.map +1 -1
- package/dest/utils/abi_types.js +1 -1
- package/dest/utils/authwit.d.ts +5 -5
- package/dest/utils/authwit.d.ts.map +1 -1
- package/dest/utils/authwit.js +10 -6
- package/dest/utils/cross_chain.d.ts +3 -8
- package/dest/utils/cross_chain.d.ts.map +1 -1
- package/dest/utils/cross_chain.js +8 -15
- package/dest/wallet/capabilities.d.ts +452 -0
- package/dest/wallet/capabilities.d.ts.map +1 -0
- package/dest/wallet/capabilities.js +3 -0
- package/dest/wallet/deploy_account_method.d.ts +15 -4
- package/dest/wallet/deploy_account_method.d.ts.map +1 -1
- package/dest/wallet/deploy_account_method.js +26 -0
- package/dest/wallet/index.d.ts +2 -1
- package/dest/wallet/index.d.ts.map +1 -1
- package/dest/wallet/index.js +1 -0
- package/dest/wallet/wallet.d.ts +1663 -89
- package/dest/wallet/wallet.d.ts.map +1 -1
- package/dest/wallet/wallet.js +175 -27
- package/package.json +20 -11
- package/src/api/abi.ts +1 -0
- package/src/api/contract.ts +10 -3
- package/src/api/deployment.ts +0 -1
- package/src/api/events.ts +50 -32
- package/src/api/fields.ts +1 -0
- package/src/api/keys.ts +2 -2
- package/src/api/wallet.ts +43 -1
- package/src/contract/base_contract_interaction.ts +3 -2
- package/src/contract/batch_call.ts +17 -14
- package/src/contract/contract_function_interaction.ts +114 -26
- package/src/contract/deploy_method.ts +77 -32
- package/src/contract/get_gas_limits.ts +3 -3
- package/src/contract/interaction_options.ts +96 -23
- package/src/contract/protocol_contracts/auth-registry.ts +10 -2
- package/src/contract/protocol_contracts/contract-class-registry.ts +4 -338
- package/src/contract/protocol_contracts/contract-instance-registry.ts +33 -225
- package/src/contract/protocol_contracts/fee-juice.ts +2 -193
- package/src/contract/protocol_contracts/multi-call-entrypoint.ts +8 -1
- package/src/contract/protocol_contracts/public-checks.ts +8 -3
- package/src/fee/fee_juice_payment_method_with_claim.ts +5 -5
- package/src/fee/private_fee_payment_method.ts +8 -7
- package/src/fee/public_fee_payment_method.ts +9 -8
- package/src/fee/sponsored_fee_payment.ts +3 -3
- package/src/utils/abi_types.ts +7 -0
- package/src/utils/authwit.ts +20 -22
- package/src/utils/cross_chain.ts +9 -18
- package/src/wallet/capabilities.ts +500 -0
- package/src/wallet/deploy_account_method.ts +39 -2
- package/src/wallet/index.ts +1 -0
- package/src/wallet/wallet.ts +230 -39
- package/dest/deployment/broadcast_function.d.ts +0 -24
- package/dest/deployment/broadcast_function.d.ts.map +0 -1
- package/dest/deployment/broadcast_function.js +0 -74
- package/src/deployment/broadcast_function.ts +0 -148
|
@@ -1,8 +1,16 @@
|
|
|
1
|
+
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
1
2
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
2
3
|
import type { AuthWitness } from '@aztec/stdlib/auth-witness';
|
|
3
|
-
import
|
|
4
|
+
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
5
|
import type { GasSettings } from '@aztec/stdlib/gas';
|
|
5
|
-
import
|
|
6
|
+
import {
|
|
7
|
+
type Capsule,
|
|
8
|
+
OFFCHAIN_MESSAGE_IDENTIFIER,
|
|
9
|
+
type OffchainEffect,
|
|
10
|
+
type SimulationStats,
|
|
11
|
+
type TxHash,
|
|
12
|
+
type TxReceipt,
|
|
13
|
+
} from '@aztec/stdlib/tx';
|
|
6
14
|
|
|
7
15
|
import type { FeePaymentMethod } from '../fee/fee_payment_method.js';
|
|
8
16
|
import type { ProfileOptions, SendOptions, SimulateOptions } from '../wallet/index.js';
|
|
@@ -82,6 +90,13 @@ export type SendInteractionOptionsWithoutWait = RequestInteractionOptions & {
|
|
|
82
90
|
from: AztecAddress;
|
|
83
91
|
/** The fee options for the transaction. */
|
|
84
92
|
fee?: InteractionFeeOptions;
|
|
93
|
+
/**
|
|
94
|
+
* Additional addresses whose private state and keys should be accessible during execution,
|
|
95
|
+
* beyond the sender's. Required when the transaction needs to access private state or keys
|
|
96
|
+
* belonging to an address other than `from`, e.g. withdrawing from an escrow that holds
|
|
97
|
+
* its own private notes.
|
|
98
|
+
*/
|
|
99
|
+
additionalScopes?: AztecAddress[];
|
|
85
100
|
};
|
|
86
101
|
|
|
87
102
|
/**
|
|
@@ -109,8 +124,8 @@ export type SimulateInteractionOptions = Omit<SendInteractionOptions, 'fee'> & {
|
|
|
109
124
|
skipTxValidation?: boolean;
|
|
110
125
|
/** Whether to ensure the fee payer is not empty and has enough balance to pay for the fee. */
|
|
111
126
|
skipFeeEnforcement?: boolean;
|
|
112
|
-
/** Whether to include metadata such as
|
|
113
|
-
* the simulation result,
|
|
127
|
+
/** Whether to include metadata such as performance statistics (e.g. timing information of the different circuits and oracles) and gas estimation
|
|
128
|
+
* in the simulation result, in addition to the return value and offchain effects */
|
|
114
129
|
includeMetadata?: boolean;
|
|
115
130
|
};
|
|
116
131
|
|
|
@@ -124,31 +139,89 @@ export type ProfileInteractionOptions = SimulateInteractionOptions & {
|
|
|
124
139
|
skipProofGeneration?: boolean;
|
|
125
140
|
};
|
|
126
141
|
|
|
142
|
+
/** A message emitted during execution or proving, to be delivered offchain. */
|
|
143
|
+
export type OffchainMessage = {
|
|
144
|
+
/** The intended recipient of the message. */
|
|
145
|
+
recipient: AztecAddress;
|
|
146
|
+
/** The message payload (typically encrypted). */
|
|
147
|
+
payload: Fr[];
|
|
148
|
+
/** The contract that emitted the message. */
|
|
149
|
+
contractAddress: AztecAddress;
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
/** Groups all unproven outputs from private execution that are returned to the client. */
|
|
153
|
+
export type OffchainOutput = {
|
|
154
|
+
/** Raw offchain effects emitted during execution. */
|
|
155
|
+
offchainEffects: OffchainEffect[];
|
|
156
|
+
/** Messages emitted during execution, to be delivered offchain. */
|
|
157
|
+
offchainMessages: OffchainMessage[];
|
|
158
|
+
};
|
|
159
|
+
|
|
127
160
|
/**
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
161
|
+
* Splits an array of offchain effects into decoded offchain messages and remaining effects.
|
|
162
|
+
* Effects whose data starts with `OFFCHAIN_MESSAGE_IDENTIFIER` are parsed as messages and removed
|
|
163
|
+
* from the effects array.
|
|
164
|
+
*/
|
|
165
|
+
export function extractOffchainOutput(effects: OffchainEffect[]): OffchainOutput {
|
|
166
|
+
const offchainEffects: OffchainEffect[] = [];
|
|
167
|
+
const offchainMessages: OffchainMessage[] = [];
|
|
168
|
+
|
|
169
|
+
for (const effect of effects) {
|
|
170
|
+
if (effect.data.length >= 2 && effect.data[0].equals(OFFCHAIN_MESSAGE_IDENTIFIER)) {
|
|
171
|
+
offchainMessages.push({
|
|
172
|
+
recipient: AztecAddress.fromField(effect.data[1]),
|
|
173
|
+
payload: effect.data.slice(2),
|
|
174
|
+
contractAddress: effect.contractAddress,
|
|
175
|
+
});
|
|
176
|
+
} else {
|
|
177
|
+
offchainEffects.push(effect);
|
|
143
178
|
}
|
|
144
|
-
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
return { offchainEffects, offchainMessages };
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Returns an empty `OffchainOutput` (no effects, no messages).
|
|
186
|
+
*/
|
|
187
|
+
export function emptyOffchainOutput(): OffchainOutput {
|
|
188
|
+
return { offchainEffects: [], offchainMessages: [] };
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Represents the result of a simulation.
|
|
193
|
+
* Always includes the return value and offchain output.
|
|
194
|
+
* When `includeMetadata` or `fee.estimateGas` is set, also includes stats and gas estimation.
|
|
195
|
+
*/
|
|
196
|
+
export type SimulationResult = {
|
|
197
|
+
/** Return value of the function */
|
|
198
|
+
result: any;
|
|
199
|
+
/** Additional stats about the simulation. Present when `includeMetadata` is set. */
|
|
200
|
+
stats?: SimulationStats;
|
|
201
|
+
/** Gas estimation results. Present when `includeMetadata` or `fee.estimateGas` is set. */
|
|
202
|
+
estimatedGas?: Pick<GasSettings, 'gasLimits' | 'teardownGasLimits'>;
|
|
203
|
+
} & OffchainOutput;
|
|
204
|
+
|
|
205
|
+
/** Result of sendTx when not waiting for mining. */
|
|
206
|
+
export type TxSendResultImmediate = {
|
|
207
|
+
/** The hash of the sent transaction. */
|
|
208
|
+
txHash: TxHash;
|
|
209
|
+
} & OffchainOutput;
|
|
210
|
+
|
|
211
|
+
/** Result of sendTx when waiting for mining. */
|
|
212
|
+
export type TxSendResultMined<TReturn = TxReceipt> = {
|
|
213
|
+
/** The transaction receipt. */
|
|
214
|
+
receipt: TReturn;
|
|
215
|
+
} & OffchainOutput;
|
|
145
216
|
|
|
146
217
|
/**
|
|
147
218
|
* Represents the result type of sending a transaction.
|
|
148
|
-
* If `wait` is NO_WAIT, returns
|
|
149
|
-
*
|
|
219
|
+
* If `wait` is NO_WAIT, returns TxSendResultImmediate.
|
|
220
|
+
* Otherwise returns TxSendResultMined.
|
|
150
221
|
*/
|
|
151
|
-
export type SendReturn<T extends InteractionWaitOptions, TReturn = TxReceipt> = T extends NoWait
|
|
222
|
+
export type SendReturn<T extends InteractionWaitOptions, TReturn = TxReceipt> = T extends NoWait
|
|
223
|
+
? TxSendResultImmediate
|
|
224
|
+
: TxSendResultMined<TReturn>;
|
|
152
225
|
|
|
153
226
|
/**
|
|
154
227
|
* Transforms and cleans up the higher level SendInteractionOptions defined by the interaction into
|
|
@@ -41,9 +41,10 @@ const AuthRegistryContractArtifact: ContractArtifact = {
|
|
|
41
41
|
],
|
|
42
42
|
returnTypes: [],
|
|
43
43
|
errorTypes: {
|
|
44
|
-
'2754040237334517471': { error_kind: 'fmtstring', length: 92, item_types: [] },
|
|
45
44
|
'7555607922535724711': { error_kind: 'string', string: 'Preimage mismatch' },
|
|
45
|
+
'9530675838293881722': { error_kind: 'string', string: 'Writer did not write all data' },
|
|
46
46
|
'9894212961085021188': { error_kind: 'string', string: 'Message not authorized by account' },
|
|
47
|
+
'12327971061804302172': { error_kind: 'fmtstring', length: 98, item_types: [] },
|
|
47
48
|
'14990209321349310352': { error_kind: 'string', string: 'attempt to add with overflow' },
|
|
48
49
|
'15764276373176857197': { error_kind: 'string', string: 'Stack too deep' },
|
|
49
50
|
'16431471497789672479': { error_kind: 'string', string: 'Index out of bounds' },
|
|
@@ -100,7 +101,7 @@ const AuthRegistryContractArtifact: ContractArtifact = {
|
|
|
100
101
|
type: {
|
|
101
102
|
kind: 'struct',
|
|
102
103
|
fields: [
|
|
103
|
-
{ name: 'storage', type: { kind: 'array', length:
|
|
104
|
+
{ name: 'storage', type: { kind: 'array', length: 15, type: { kind: 'field' } } },
|
|
104
105
|
{ name: 'len', type: { kind: 'integer', sign: 'unsigned', width: 32 } },
|
|
105
106
|
],
|
|
106
107
|
path: 'std::collections::bounded_vec::BoundedVec',
|
|
@@ -161,6 +162,9 @@ const AuthRegistryContractArtifact: ContractArtifact = {
|
|
|
161
162
|
},
|
|
162
163
|
'4261968856572588300': { error_kind: 'string', string: 'Value does not fit in field' },
|
|
163
164
|
'4440399188109668273': { error_kind: 'string', string: 'Input length must be a multiple of 32' },
|
|
165
|
+
'5417577161503694006': { error_kind: 'fmtstring', length: 56, item_types: [{ kind: 'field' }] },
|
|
166
|
+
'5421095327929394772': { error_kind: 'string', string: 'attempt to bit-shift with overflow' },
|
|
167
|
+
'9530675838293881722': { error_kind: 'string', string: 'Writer did not write all data' },
|
|
164
168
|
'9791669845391776238': {
|
|
165
169
|
error_kind: 'string',
|
|
166
170
|
string: '0 has a square root; you cannot claim it is not square',
|
|
@@ -262,6 +266,9 @@ const AuthRegistryContractArtifact: ContractArtifact = {
|
|
|
262
266
|
},
|
|
263
267
|
'4261968856572588300': { error_kind: 'string', string: 'Value does not fit in field' },
|
|
264
268
|
'4440399188109668273': { error_kind: 'string', string: 'Input length must be a multiple of 32' },
|
|
269
|
+
'5417577161503694006': { error_kind: 'fmtstring', length: 56, item_types: [{ kind: 'field' }] },
|
|
270
|
+
'5421095327929394772': { error_kind: 'string', string: 'attempt to bit-shift with overflow' },
|
|
271
|
+
'9530675838293881722': { error_kind: 'string', string: 'Writer did not write all data' },
|
|
265
272
|
'9791669845391776238': {
|
|
266
273
|
error_kind: 'string',
|
|
267
274
|
string: '0 has a square root; you cannot claim it is not square',
|
|
@@ -298,6 +305,7 @@ const AuthRegistryContractArtifact: ContractArtifact = {
|
|
|
298
305
|
length: 133,
|
|
299
306
|
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
300
307
|
},
|
|
308
|
+
'17655676068928457687': { error_kind: 'string', string: 'Reader did not read all data' },
|
|
301
309
|
},
|
|
302
310
|
},
|
|
303
311
|
bytecode: Buffer.from([]),
|
|
@@ -19,127 +19,6 @@ import { ContractFunctionInteraction } from '../contract_function_interaction.js
|
|
|
19
19
|
const ContractClassRegistryContractArtifact: ContractArtifact = {
|
|
20
20
|
name: 'ContractClassRegistry',
|
|
21
21
|
functions: [
|
|
22
|
-
{
|
|
23
|
-
...{
|
|
24
|
-
functionType: FunctionType.PRIVATE,
|
|
25
|
-
name: 'broadcast_private_function',
|
|
26
|
-
isOnlySelf: false,
|
|
27
|
-
isStatic: false,
|
|
28
|
-
isInitializer: false,
|
|
29
|
-
parameters: [
|
|
30
|
-
{
|
|
31
|
-
name: 'contract_class_id',
|
|
32
|
-
type: {
|
|
33
|
-
kind: 'struct',
|
|
34
|
-
fields: [{ name: 'inner', type: { kind: 'field' } }],
|
|
35
|
-
path: 'aztec::protocol_types::contract_class_id::ContractClassId',
|
|
36
|
-
},
|
|
37
|
-
visibility: 'private',
|
|
38
|
-
},
|
|
39
|
-
{ name: 'artifact_metadata_hash', type: { kind: 'field' }, visibility: 'private' },
|
|
40
|
-
{ name: 'utility_functions_artifact_tree_root', type: { kind: 'field' }, visibility: 'private' },
|
|
41
|
-
{
|
|
42
|
-
name: 'private_function_tree_sibling_path',
|
|
43
|
-
type: { kind: 'array', length: 7, type: { kind: 'field' } },
|
|
44
|
-
visibility: 'private',
|
|
45
|
-
},
|
|
46
|
-
{ name: 'private_function_tree_leaf_index', type: { kind: 'field' }, visibility: 'private' },
|
|
47
|
-
{
|
|
48
|
-
name: 'artifact_function_tree_sibling_path',
|
|
49
|
-
type: { kind: 'array', length: 7, type: { kind: 'field' } },
|
|
50
|
-
visibility: 'private',
|
|
51
|
-
},
|
|
52
|
-
{ name: 'artifact_function_tree_leaf_index', type: { kind: 'field' }, visibility: 'private' },
|
|
53
|
-
{
|
|
54
|
-
name: 'function_data',
|
|
55
|
-
type: {
|
|
56
|
-
kind: 'struct',
|
|
57
|
-
fields: [
|
|
58
|
-
{
|
|
59
|
-
name: 'selector',
|
|
60
|
-
type: {
|
|
61
|
-
kind: 'struct',
|
|
62
|
-
fields: [{ name: 'inner', type: { kind: 'integer', sign: 'unsigned', width: 32 } }],
|
|
63
|
-
path: 'aztec::protocol_types::abis::function_selector::FunctionSelector',
|
|
64
|
-
},
|
|
65
|
-
},
|
|
66
|
-
{ name: 'metadata_hash', type: { kind: 'field' } },
|
|
67
|
-
{ name: 'vk_hash', type: { kind: 'field' } },
|
|
68
|
-
],
|
|
69
|
-
path: 'events::private_function_broadcasted::InnerPrivateFunction',
|
|
70
|
-
},
|
|
71
|
-
visibility: 'private',
|
|
72
|
-
},
|
|
73
|
-
],
|
|
74
|
-
returnTypes: [],
|
|
75
|
-
errorTypes: {
|
|
76
|
-
'1998584279744703196': { error_kind: 'string', string: 'attempt to subtract with overflow' },
|
|
77
|
-
'2754040237334517471': { error_kind: 'fmtstring', length: 92, item_types: [] },
|
|
78
|
-
'14990209321349310352': { error_kind: 'string', string: 'attempt to add with overflow' },
|
|
79
|
-
'15764276373176857197': { error_kind: 'string', string: 'Stack too deep' },
|
|
80
|
-
'16431471497789672479': { error_kind: 'string', string: 'Index out of bounds' },
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
bytecode: Buffer.from([]),
|
|
84
|
-
debugSymbols: '',
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
...{
|
|
88
|
-
functionType: FunctionType.PRIVATE,
|
|
89
|
-
name: 'broadcast_utility_function',
|
|
90
|
-
isOnlySelf: false,
|
|
91
|
-
isStatic: false,
|
|
92
|
-
isInitializer: false,
|
|
93
|
-
parameters: [
|
|
94
|
-
{
|
|
95
|
-
name: 'contract_class_id',
|
|
96
|
-
type: {
|
|
97
|
-
kind: 'struct',
|
|
98
|
-
fields: [{ name: 'inner', type: { kind: 'field' } }],
|
|
99
|
-
path: 'aztec::protocol_types::contract_class_id::ContractClassId',
|
|
100
|
-
},
|
|
101
|
-
visibility: 'private',
|
|
102
|
-
},
|
|
103
|
-
{ name: 'artifact_metadata_hash', type: { kind: 'field' }, visibility: 'private' },
|
|
104
|
-
{ name: 'private_functions_artifact_tree_root', type: { kind: 'field' }, visibility: 'private' },
|
|
105
|
-
{
|
|
106
|
-
name: 'artifact_function_tree_sibling_path',
|
|
107
|
-
type: { kind: 'array', length: 7, type: { kind: 'field' } },
|
|
108
|
-
visibility: 'private',
|
|
109
|
-
},
|
|
110
|
-
{ name: 'artifact_function_tree_leaf_index', type: { kind: 'field' }, visibility: 'private' },
|
|
111
|
-
{
|
|
112
|
-
name: 'function_data',
|
|
113
|
-
type: {
|
|
114
|
-
kind: 'struct',
|
|
115
|
-
fields: [
|
|
116
|
-
{
|
|
117
|
-
name: 'selector',
|
|
118
|
-
type: {
|
|
119
|
-
kind: 'struct',
|
|
120
|
-
fields: [{ name: 'inner', type: { kind: 'integer', sign: 'unsigned', width: 32 } }],
|
|
121
|
-
path: 'aztec::protocol_types::abis::function_selector::FunctionSelector',
|
|
122
|
-
},
|
|
123
|
-
},
|
|
124
|
-
{ name: 'metadata_hash', type: { kind: 'field' } },
|
|
125
|
-
],
|
|
126
|
-
path: 'events::utility_function_broadcasted::InnerUtilityFunction',
|
|
127
|
-
},
|
|
128
|
-
visibility: 'private',
|
|
129
|
-
},
|
|
130
|
-
],
|
|
131
|
-
returnTypes: [],
|
|
132
|
-
errorTypes: {
|
|
133
|
-
'1998584279744703196': { error_kind: 'string', string: 'attempt to subtract with overflow' },
|
|
134
|
-
'2754040237334517471': { error_kind: 'fmtstring', length: 92, item_types: [] },
|
|
135
|
-
'14990209321349310352': { error_kind: 'string', string: 'attempt to add with overflow' },
|
|
136
|
-
'15764276373176857197': { error_kind: 'string', string: 'Stack too deep' },
|
|
137
|
-
'16431471497789672479': { error_kind: 'string', string: 'Index out of bounds' },
|
|
138
|
-
},
|
|
139
|
-
},
|
|
140
|
-
bytecode: Buffer.from([]),
|
|
141
|
-
debugSymbols: '',
|
|
142
|
-
},
|
|
143
22
|
{
|
|
144
23
|
...{
|
|
145
24
|
functionType: FunctionType.PRIVATE,
|
|
@@ -157,193 +36,19 @@ const ContractClassRegistryContractArtifact: ContractArtifact = {
|
|
|
157
36
|
'361444214588792908': { error_kind: 'string', string: 'attempt to multiply with overflow' },
|
|
158
37
|
'922421554006670918': { error_kind: 'string', string: 'num_items is greater than MAX_ITEMS' },
|
|
159
38
|
'1998584279744703196': { error_kind: 'string', string: 'attempt to subtract with overflow' },
|
|
160
|
-
'
|
|
39
|
+
'9475115977882098926': { error_kind: 'string', string: 'Extra bytes in the last field of the bytecode' },
|
|
161
40
|
'10965409165809799877': {
|
|
162
41
|
error_kind: 'string',
|
|
163
42
|
string: 'Given in_len to absorb is larger than the input array len',
|
|
164
43
|
},
|
|
44
|
+
'12469291177396340830': { error_kind: 'string', string: 'call to assert_max_bit_size' },
|
|
165
45
|
'14990209321349310352': { error_kind: 'string', string: 'attempt to add with overflow' },
|
|
166
46
|
'15669273164684982983': { error_kind: 'string', string: 'num_permutations is greater than MAX_PERMUTATIONS' },
|
|
167
47
|
'15764276373176857197': { error_kind: 'string', string: 'Stack too deep' },
|
|
48
|
+
'15835548349546956319': { error_kind: 'string', string: 'Field failed to decompose into specified 32 limbs' },
|
|
168
49
|
'16431471497789672479': { error_kind: 'string', string: 'Index out of bounds' },
|
|
169
50
|
'16450579948625159707': { error_kind: 'string', string: 'Sponge must be in cache_size=1' },
|
|
170
|
-
|
|
171
|
-
},
|
|
172
|
-
bytecode: Buffer.from([]),
|
|
173
|
-
debugSymbols: '',
|
|
174
|
-
},
|
|
175
|
-
{
|
|
176
|
-
...{
|
|
177
|
-
functionType: FunctionType.UTILITY,
|
|
178
|
-
name: 'process_message',
|
|
179
|
-
isOnlySelf: false,
|
|
180
|
-
isStatic: false,
|
|
181
|
-
isInitializer: false,
|
|
182
|
-
parameters: [
|
|
183
|
-
{
|
|
184
|
-
name: 'message_ciphertext',
|
|
185
|
-
type: {
|
|
186
|
-
kind: 'struct',
|
|
187
|
-
fields: [
|
|
188
|
-
{ name: 'storage', type: { kind: 'array', length: 17, type: { kind: 'field' } } },
|
|
189
|
-
{ name: 'len', type: { kind: 'integer', sign: 'unsigned', width: 32 } },
|
|
190
|
-
],
|
|
191
|
-
path: 'std::collections::bounded_vec::BoundedVec',
|
|
192
|
-
},
|
|
193
|
-
visibility: 'private',
|
|
194
|
-
},
|
|
195
|
-
{
|
|
196
|
-
name: 'message_context',
|
|
197
|
-
type: {
|
|
198
|
-
kind: 'struct',
|
|
199
|
-
fields: [
|
|
200
|
-
{ name: 'tx_hash', type: { kind: 'field' } },
|
|
201
|
-
{
|
|
202
|
-
name: 'unique_note_hashes_in_tx',
|
|
203
|
-
type: {
|
|
204
|
-
kind: 'struct',
|
|
205
|
-
fields: [
|
|
206
|
-
{ name: 'storage', type: { kind: 'array', length: 64, type: { kind: 'field' } } },
|
|
207
|
-
{ name: 'len', type: { kind: 'integer', sign: 'unsigned', width: 32 } },
|
|
208
|
-
],
|
|
209
|
-
path: 'std::collections::bounded_vec::BoundedVec',
|
|
210
|
-
},
|
|
211
|
-
},
|
|
212
|
-
{ name: 'first_nullifier_in_tx', type: { kind: 'field' } },
|
|
213
|
-
{
|
|
214
|
-
name: 'recipient',
|
|
215
|
-
type: {
|
|
216
|
-
kind: 'struct',
|
|
217
|
-
fields: [{ name: 'inner', type: { kind: 'field' } }],
|
|
218
|
-
path: 'aztec::protocol_types::address::aztec_address::AztecAddress',
|
|
219
|
-
},
|
|
220
|
-
},
|
|
221
|
-
],
|
|
222
|
-
path: 'aztec::messages::processing::message_context::MessageContext',
|
|
223
|
-
},
|
|
224
|
-
visibility: 'private',
|
|
225
|
-
},
|
|
226
|
-
],
|
|
227
|
-
returnTypes: [],
|
|
228
|
-
errorTypes: {
|
|
229
|
-
'361444214588792908': { error_kind: 'string', string: 'attempt to multiply with overflow' },
|
|
230
|
-
'992401946138144806': { error_kind: 'string', string: 'Attempted to read past end of BoundedVec' },
|
|
231
|
-
'1998584279744703196': { error_kind: 'string', string: 'attempt to subtract with overflow' },
|
|
232
|
-
'2967937905572420042': {
|
|
233
|
-
error_kind: 'fmtstring',
|
|
234
|
-
length: 61,
|
|
235
|
-
item_types: [{ kind: 'field' }, { kind: 'field' }],
|
|
236
|
-
},
|
|
237
|
-
'3330370348214585450': {
|
|
238
|
-
error_kind: 'fmtstring',
|
|
239
|
-
length: 48,
|
|
240
|
-
item_types: [{ kind: 'field' }, { kind: 'field' }],
|
|
241
|
-
},
|
|
242
|
-
'3670003311596808700': {
|
|
243
|
-
error_kind: 'fmtstring',
|
|
244
|
-
length: 77,
|
|
245
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
246
|
-
},
|
|
247
|
-
'4261968856572588300': { error_kind: 'string', string: 'Value does not fit in field' },
|
|
248
|
-
'4440399188109668273': { error_kind: 'string', string: 'Input length must be a multiple of 32' },
|
|
249
|
-
'9791669845391776238': {
|
|
250
|
-
error_kind: 'string',
|
|
251
|
-
string: '0 has a square root; you cannot claim it is not square',
|
|
252
|
-
},
|
|
253
|
-
'10135509984888824963': { error_kind: 'fmtstring', length: 58, item_types: [{ kind: 'field' }] },
|
|
254
|
-
'10791800398362570014': { error_kind: 'string', string: 'extend_from_bounded_vec out of bounds' },
|
|
255
|
-
'11692359521570349358': { error_kind: 'fmtstring', length: 40, item_types: [] },
|
|
256
|
-
'12469291177396340830': { error_kind: 'string', string: 'call to assert_max_bit_size' },
|
|
257
|
-
'12913276134398371456': { error_kind: 'string', string: 'push out of bounds' },
|
|
258
|
-
'13557316507370296400': {
|
|
259
|
-
error_kind: 'fmtstring',
|
|
260
|
-
length: 130,
|
|
261
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
262
|
-
},
|
|
263
|
-
'14938672389828944159': {
|
|
264
|
-
error_kind: 'fmtstring',
|
|
265
|
-
length: 146,
|
|
266
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
267
|
-
},
|
|
268
|
-
'14990209321349310352': { error_kind: 'string', string: 'attempt to add with overflow' },
|
|
269
|
-
'15764276373176857197': { error_kind: 'string', string: 'Stack too deep' },
|
|
270
|
-
'16431471497789672479': { error_kind: 'string', string: 'Index out of bounds' },
|
|
271
|
-
'17531474008201752295': {
|
|
272
|
-
error_kind: 'fmtstring',
|
|
273
|
-
length: 133,
|
|
274
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
275
|
-
},
|
|
276
|
-
},
|
|
277
|
-
},
|
|
278
|
-
bytecode: Buffer.from([]),
|
|
279
|
-
debugSymbols: '',
|
|
280
|
-
},
|
|
281
|
-
{
|
|
282
|
-
...{
|
|
283
|
-
functionType: FunctionType.UTILITY,
|
|
284
|
-
name: 'sync_state',
|
|
285
|
-
isOnlySelf: false,
|
|
286
|
-
isStatic: false,
|
|
287
|
-
isInitializer: false,
|
|
288
|
-
parameters: [],
|
|
289
|
-
returnTypes: [],
|
|
290
|
-
errorTypes: {
|
|
291
|
-
'361444214588792908': { error_kind: 'string', string: 'attempt to multiply with overflow' },
|
|
292
|
-
'992401946138144806': { error_kind: 'string', string: 'Attempted to read past end of BoundedVec' },
|
|
293
|
-
'1998584279744703196': { error_kind: 'string', string: 'attempt to subtract with overflow' },
|
|
294
|
-
'2967937905572420042': {
|
|
295
|
-
error_kind: 'fmtstring',
|
|
296
|
-
length: 61,
|
|
297
|
-
item_types: [{ kind: 'field' }, { kind: 'field' }],
|
|
298
|
-
},
|
|
299
|
-
'3330370348214585450': {
|
|
300
|
-
error_kind: 'fmtstring',
|
|
301
|
-
length: 48,
|
|
302
|
-
item_types: [{ kind: 'field' }, { kind: 'field' }],
|
|
303
|
-
},
|
|
304
|
-
'3670003311596808700': {
|
|
305
|
-
error_kind: 'fmtstring',
|
|
306
|
-
length: 77,
|
|
307
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
308
|
-
},
|
|
309
|
-
'4261968856572588300': { error_kind: 'string', string: 'Value does not fit in field' },
|
|
310
|
-
'4440399188109668273': { error_kind: 'string', string: 'Input length must be a multiple of 32' },
|
|
311
|
-
'9791669845391776238': {
|
|
312
|
-
error_kind: 'string',
|
|
313
|
-
string: '0 has a square root; you cannot claim it is not square',
|
|
314
|
-
},
|
|
315
|
-
'9885968605480832328': {
|
|
316
|
-
error_kind: 'string',
|
|
317
|
-
string: 'Attempted to read past the length of a CapsuleArray',
|
|
318
|
-
},
|
|
319
|
-
'10135509984888824963': { error_kind: 'fmtstring', length: 58, item_types: [{ kind: 'field' }] },
|
|
320
|
-
'10791800398362570014': { error_kind: 'string', string: 'extend_from_bounded_vec out of bounds' },
|
|
321
|
-
'11021520179822076911': {
|
|
322
|
-
error_kind: 'string',
|
|
323
|
-
string: 'Attempted to delete past the length of a CapsuleArray',
|
|
324
|
-
},
|
|
325
|
-
'11692359521570349358': { error_kind: 'fmtstring', length: 40, item_types: [] },
|
|
326
|
-
'12327971061804302172': { error_kind: 'fmtstring', length: 98, item_types: [] },
|
|
327
|
-
'12469291177396340830': { error_kind: 'string', string: 'call to assert_max_bit_size' },
|
|
328
|
-
'12913276134398371456': { error_kind: 'string', string: 'push out of bounds' },
|
|
329
|
-
'13557316507370296400': {
|
|
330
|
-
error_kind: 'fmtstring',
|
|
331
|
-
length: 130,
|
|
332
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
333
|
-
},
|
|
334
|
-
'14938672389828944159': {
|
|
335
|
-
error_kind: 'fmtstring',
|
|
336
|
-
length: 146,
|
|
337
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
338
|
-
},
|
|
339
|
-
'14990209321349310352': { error_kind: 'string', string: 'attempt to add with overflow' },
|
|
340
|
-
'15764276373176857197': { error_kind: 'string', string: 'Stack too deep' },
|
|
341
|
-
'16431471497789672479': { error_kind: 'string', string: 'Index out of bounds' },
|
|
342
|
-
'17531474008201752295': {
|
|
343
|
-
error_kind: 'fmtstring',
|
|
344
|
-
length: 133,
|
|
345
|
-
item_types: [{ kind: 'integer', sign: 'unsigned', width: 32 }],
|
|
346
|
-
},
|
|
51
|
+
'17655676068928457687': { error_kind: 'string', string: 'Reader did not read all data' },
|
|
347
52
|
},
|
|
348
53
|
},
|
|
349
54
|
bytecode: Buffer.from([]),
|
|
@@ -380,42 +85,6 @@ export class ContractClassRegistryContract extends ContractBase {
|
|
|
380
85
|
}
|
|
381
86
|
|
|
382
87
|
declare public methods: {
|
|
383
|
-
/** broadcast_private_function(contract_class_id: struct, artifact_metadata_hash: field, utility_functions_artifact_tree_root: field, private_function_tree_sibling_path: array, private_function_tree_leaf_index: field, artifact_function_tree_sibling_path: array, artifact_function_tree_leaf_index: field, function_data: struct) */
|
|
384
|
-
broadcast_private_function: ((
|
|
385
|
-
contract_class_id: WrappedFieldLike,
|
|
386
|
-
artifact_metadata_hash: FieldLike,
|
|
387
|
-
utility_functions_artifact_tree_root: FieldLike,
|
|
388
|
-
private_function_tree_sibling_path: FieldLike[],
|
|
389
|
-
private_function_tree_leaf_index: FieldLike,
|
|
390
|
-
artifact_function_tree_sibling_path: FieldLike[],
|
|
391
|
-
artifact_function_tree_leaf_index: FieldLike,
|
|
392
|
-
function_data: { selector: FunctionSelectorLike; metadata_hash: FieldLike; vk_hash: FieldLike },
|
|
393
|
-
) => ContractFunctionInteraction) &
|
|
394
|
-
Pick<ContractMethod, 'selector'>;
|
|
395
|
-
|
|
396
|
-
/** broadcast_utility_function(contract_class_id: struct, artifact_metadata_hash: field, private_functions_artifact_tree_root: field, artifact_function_tree_sibling_path: array, artifact_function_tree_leaf_index: field, function_data: struct) */
|
|
397
|
-
broadcast_utility_function: ((
|
|
398
|
-
contract_class_id: WrappedFieldLike,
|
|
399
|
-
artifact_metadata_hash: FieldLike,
|
|
400
|
-
private_functions_artifact_tree_root: FieldLike,
|
|
401
|
-
artifact_function_tree_sibling_path: FieldLike[],
|
|
402
|
-
artifact_function_tree_leaf_index: FieldLike,
|
|
403
|
-
function_data: { selector: FunctionSelectorLike; metadata_hash: FieldLike },
|
|
404
|
-
) => ContractFunctionInteraction) &
|
|
405
|
-
Pick<ContractMethod, 'selector'>;
|
|
406
|
-
|
|
407
|
-
/** process_message(message_ciphertext: struct, message_context: struct) */
|
|
408
|
-
process_message: ((
|
|
409
|
-
message_ciphertext: FieldLike[],
|
|
410
|
-
message_context: {
|
|
411
|
-
tx_hash: FieldLike;
|
|
412
|
-
unique_note_hashes_in_tx: FieldLike[];
|
|
413
|
-
first_nullifier_in_tx: FieldLike;
|
|
414
|
-
recipient: AztecAddressLike;
|
|
415
|
-
},
|
|
416
|
-
) => ContractFunctionInteraction) &
|
|
417
|
-
Pick<ContractMethod, 'selector'>;
|
|
418
|
-
|
|
419
88
|
/** public_dispatch(selector: field) */
|
|
420
89
|
public_dispatch: ((selector: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
|
|
421
90
|
|
|
@@ -426,8 +95,5 @@ export class ContractClassRegistryContract extends ContractBase {
|
|
|
426
95
|
public_bytecode_commitment: FieldLike,
|
|
427
96
|
) => ContractFunctionInteraction) &
|
|
428
97
|
Pick<ContractMethod, 'selector'>;
|
|
429
|
-
|
|
430
|
-
/** sync_state() */
|
|
431
|
-
sync_state: (() => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
|
|
432
98
|
};
|
|
433
99
|
}
|