@aztec/txe 0.0.1-commit.e3c1de76 → 0.0.1-commit.e57c76e
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/ContractClassRegistry-PII7Q556.js +3 -0
- package/dest/ContractClassRegistry-PII7Q556.js.map +7 -0
- package/dest/ContractInstanceRegistry-3MHLGFNZ.js +3 -0
- package/dest/ContractInstanceRegistry-3MHLGFNZ.js.map +7 -0
- package/dest/FeeJuice-TQV5AQK7.js +3 -0
- package/dest/FeeJuice-TQV5AQK7.js.map +7 -0
- package/dest/MultiCallEntrypoint-SBJUIJY7.js +3 -0
- package/dest/MultiCallEntrypoint-SBJUIJY7.js.map +7 -0
- package/dest/SchnorrAccount-MQXPIZ44.js +3 -0
- package/dest/SchnorrAccount-MQXPIZ44.js.map +7 -0
- package/dest/bin/check_txe_oracle_version.d.ts +2 -0
- package/dest/bin/check_txe_oracle_version.d.ts.map +1 -0
- package/dest/bin/check_txe_oracle_version.js +61 -0
- package/dest/bin/index.js +3 -30
- package/dest/bin/index.js.map +7 -0
- package/dest/bin/oracle_test_server.d.ts +3 -0
- package/dest/bin/oracle_test_server.d.ts.map +1 -0
- package/dest/bin/oracle_test_server.js +41 -0
- package/dest/chunk-3VX4QA7B.js +265 -0
- package/dest/chunk-3VX4QA7B.js.map +7 -0
- package/dest/chunk-BJVAAXNA.js +3 -0
- package/dest/chunk-BJVAAXNA.js.map +7 -0
- package/dest/chunk-FU3LBVE4.js +304 -0
- package/dest/chunk-FU3LBVE4.js.map +7 -0
- package/dest/constants.d.ts +5 -1
- package/dest/constants.d.ts.map +1 -1
- package/dest/constants.js +8 -0
- package/dest/dispatcher_pool.d.ts +67 -0
- package/dest/dispatcher_pool.d.ts.map +1 -0
- package/dest/dispatcher_pool.js +284 -0
- package/dest/index.d.ts +185 -7
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +71 -157
- package/dest/metafile.json +38352 -0
- package/dest/msgpackr_fr_extension.d.ts +2 -0
- package/dest/msgpackr_fr_extension.d.ts.map +1 -0
- package/dest/msgpackr_fr_extension.js +21 -0
- package/dest/oracle/interfaces.d.ts +56 -30
- package/dest/oracle/interfaces.d.ts.map +1 -1
- package/dest/oracle/test-resolver/fixtures.d.ts +43 -0
- package/dest/oracle/test-resolver/fixtures.d.ts.map +1 -0
- package/dest/oracle/test-resolver/fixtures.js +39 -0
- package/dest/oracle/test-resolver/index.d.ts +9 -0
- package/dest/oracle/test-resolver/index.d.ts.map +1 -0
- package/dest/oracle/test-resolver/index.js +33 -0
- package/dest/oracle/test-resolver/resolver.d.ts +34 -0
- package/dest/oracle/test-resolver/resolver.d.ts.map +1 -0
- package/dest/oracle/test-resolver/resolver.js +114 -0
- package/dest/oracle/txe_oracle_public_context.d.ts +38 -14
- package/dest/oracle/txe_oracle_public_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_public_context.js +55 -13
- package/dest/oracle/txe_oracle_registry.d.ts +147 -0
- package/dest/oracle/txe_oracle_registry.d.ts.map +1 -0
- package/dest/oracle/txe_oracle_registry.js +562 -0
- package/dest/oracle/txe_oracle_top_level_context.d.ts +45 -26
- package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_top_level_context.js +243 -80
- package/dest/oracle/txe_oracle_version.d.ts +17 -0
- package/dest/oracle/txe_oracle_version.d.ts.map +1 -0
- package/dest/oracle/txe_oracle_version.js +14 -0
- package/dest/oracle/txe_private_execution_oracle.d.ts +17 -0
- package/dest/oracle/txe_private_execution_oracle.d.ts.map +1 -0
- package/dest/oracle/txe_private_execution_oracle.js +15 -0
- package/dest/rpc_server.d.ts +14 -0
- package/dest/rpc_server.d.ts.map +1 -0
- package/dest/rpc_server.js +78 -0
- package/dest/rpc_translator.d.ts +96 -228
- package/dest/rpc_translator.d.ts.map +1 -1
- package/dest/rpc_translator.js +815 -612
- package/dest/server.bundle.js +3 -0
- package/dest/server.bundle.js.map +7 -0
- package/dest/state_machine/archiver.d.ts +6 -5
- package/dest/state_machine/archiver.d.ts.map +1 -1
- package/dest/state_machine/archiver.js +32 -21
- package/dest/state_machine/dummy_p2p_client.d.ts +26 -16
- package/dest/state_machine/dummy_p2p_client.d.ts.map +1 -1
- package/dest/state_machine/dummy_p2p_client.js +44 -20
- package/dest/state_machine/global_variable_builder.d.ts +9 -4
- package/dest/state_machine/global_variable_builder.d.ts.map +1 -1
- package/dest/state_machine/global_variable_builder.js +9 -3
- package/dest/state_machine/index.d.ts +10 -6
- package/dest/state_machine/index.d.ts.map +1 -1
- package/dest/state_machine/index.js +35 -12
- package/dest/state_machine/mock_epoch_cache.d.ts +18 -3
- package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
- package/dest/state_machine/mock_epoch_cache.js +33 -2
- package/dest/state_machine/synchronizer.d.ts +5 -5
- package/dest/state_machine/synchronizer.d.ts.map +1 -1
- package/dest/state_machine/synchronizer.js +4 -4
- package/dest/txe_session.d.ts +80 -15
- package/dest/txe_session.d.ts.map +1 -1
- package/dest/txe_session.js +240 -43
- package/dest/utils/block_creation.d.ts +1 -1
- package/dest/utils/block_creation.d.ts.map +1 -1
- package/dest/utils/block_creation.js +3 -1
- package/dest/utils/encoding.d.ts +191 -0
- package/dest/utils/encoding.d.ts.map +1 -0
- package/dest/{util → utils}/encoding.js +7 -2
- package/dest/{util → utils}/expected_failure_error.d.ts +1 -1
- package/dest/utils/expected_failure_error.d.ts.map +1 -0
- package/dest/{util → utils}/txe_account_store.d.ts +1 -1
- package/dest/utils/txe_account_store.d.ts.map +1 -0
- package/dest/utils/txe_artifact_resolver.d.ts +37 -0
- package/dest/utils/txe_artifact_resolver.d.ts.map +1 -0
- package/dest/utils/txe_artifact_resolver.js +161 -0
- package/dest/utils/txe_public_contract_data_source.d.ts +20 -0
- package/dest/utils/txe_public_contract_data_source.d.ts.map +1 -0
- package/dest/{util → utils}/txe_public_contract_data_source.js +6 -25
- package/dest/worker.bundle.js +3 -0
- package/dest/worker.bundle.js.map +7 -0
- package/dest/worker.d.ts +2 -0
- package/dest/worker.d.ts.map +1 -0
- package/dest/worker.js +92 -0
- package/package.json +38 -21
- package/src/bin/check_txe_oracle_version.ts +70 -0
- package/src/bin/index.ts +11 -2
- package/src/bin/oracle_test_server.ts +51 -0
- package/src/constants.ts +10 -0
- package/src/dispatcher_pool.ts +316 -0
- package/src/index.ts +97 -190
- package/src/msgpackr_fr_extension.ts +23 -0
- package/src/oracle/interfaces.ts +58 -35
- package/src/oracle/test-resolver/fixtures.ts +84 -0
- package/src/oracle/test-resolver/index.ts +45 -0
- package/src/oracle/test-resolver/resolver.ts +165 -0
- package/src/oracle/txe_oracle_public_context.ts +72 -12
- package/src/oracle/txe_oracle_registry.ts +401 -0
- package/src/oracle/txe_oracle_top_level_context.ts +293 -139
- package/src/oracle/txe_oracle_version.ts +17 -0
- package/src/oracle/txe_private_execution_oracle.ts +30 -0
- package/src/rpc_server.ts +87 -0
- package/src/rpc_translator.ts +1000 -987
- package/src/state_machine/archiver.ts +44 -20
- package/src/state_machine/dummy_p2p_client.ts +70 -32
- package/src/state_machine/global_variable_builder.ts +18 -3
- package/src/state_machine/index.ts +48 -13
- package/src/state_machine/mock_epoch_cache.ts +43 -3
- package/src/state_machine/synchronizer.ts +5 -5
- package/src/txe_session.ts +356 -96
- package/src/utils/block_creation.ts +3 -1
- package/src/{util → utils}/encoding.ts +8 -2
- package/src/utils/txe_artifact_resolver.ts +217 -0
- package/src/{util → utils}/txe_public_contract_data_source.ts +10 -38
- package/src/worker.ts +98 -0
- package/dest/util/encoding.d.ts +0 -720
- package/dest/util/encoding.d.ts.map +0 -1
- package/dest/util/expected_failure_error.d.ts.map +0 -1
- package/dest/util/txe_account_store.d.ts.map +0 -1
- package/dest/util/txe_contract_store.d.ts +0 -12
- package/dest/util/txe_contract_store.d.ts.map +0 -1
- package/dest/util/txe_contract_store.js +0 -22
- package/dest/util/txe_public_contract_data_source.d.ts +0 -21
- package/dest/util/txe_public_contract_data_source.d.ts.map +0 -1
- package/src/util/txe_contract_store.ts +0 -36
- /package/dest/{util → utils}/expected_failure_error.js +0 -0
- /package/dest/{util → utils}/txe_account_store.js +0 -0
- /package/src/{util → utils}/expected_failure_error.ts +0 -0
- /package/src/{util → utils}/txe_account_store.ts +0 -0
package/dest/rpc_translator.js
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX } from '@aztec/constants';
|
|
3
|
-
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
4
|
-
import { packAsHintedNote } from '@aztec/pxe/simulator';
|
|
5
|
-
import { EventSelector, FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
6
|
-
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
7
|
-
import { BlockHash } from '@aztec/stdlib/block';
|
|
8
|
-
import { addressFromSingle, arrayOfArraysToBoundedVecOfArrays, arrayToBoundedVec, bufferToU8Array, fromArray, fromSingle, fromUintArray, fromUintBoundedVec, toArray, toForeignCallResult, toSingle } from './util/encoding.js';
|
|
9
|
-
const MAX_EVENT_LEN = 12; // This is MAX_MESSAGE_CONTENT_LEN - PRIVATE_EVENT_RESERVED_FIELDS
|
|
10
|
-
const MAX_PRIVATE_EVENTS_PER_TXE_QUERY = 5;
|
|
1
|
+
import { callTxeHandler } from './oracle/txe_oracle_registry.js';
|
|
11
2
|
export class UnavailableOracleError extends Error {
|
|
12
3
|
constructor(oracleName){
|
|
13
4
|
super(`${oracleName} oracles not available with the current handler`);
|
|
@@ -60,620 +51,832 @@ export class RPCTranslator {
|
|
|
60
51
|
}
|
|
61
52
|
return this.oracleHandler;
|
|
62
53
|
}
|
|
54
|
+
// eslint-disable-next-line camelcase
|
|
55
|
+
aztec_txe_assertCompatibleOracleVersion(...inputs) {
|
|
56
|
+
return callTxeHandler({
|
|
57
|
+
oracle: 'aztec_txe_assertCompatibleOracleVersion',
|
|
58
|
+
inputs,
|
|
59
|
+
handler: ([major, minor])=>{
|
|
60
|
+
this.stateHandler.setTxeOracleVersion(major, minor);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
63
64
|
// TXE session state transition functions - these get handled by the state handler
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return
|
|
65
|
+
// eslint-disable-next-line camelcase
|
|
66
|
+
aztec_txe_setTopLevelTXEContext() {
|
|
67
|
+
return callTxeHandler({
|
|
68
|
+
oracle: 'aztec_txe_setTopLevelTXEContext',
|
|
69
|
+
inputs: [],
|
|
70
|
+
handler: ()=>this.stateHandler.enterTopLevelState()
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
// eslint-disable-next-line camelcase
|
|
74
|
+
aztec_txe_setPrivateTXEContext(...inputs) {
|
|
75
|
+
return callTxeHandler({
|
|
76
|
+
oracle: 'aztec_txe_setPrivateTXEContext',
|
|
77
|
+
inputs,
|
|
78
|
+
handler: ([contractAddress, anchorBlockNumber, gasSettings])=>this.stateHandler.enterPrivateState(contractAddress, anchorBlockNumber, gasSettings)
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
// eslint-disable-next-line camelcase
|
|
82
|
+
aztec_txe_setPublicTXEContext(...inputs) {
|
|
83
|
+
return callTxeHandler({
|
|
84
|
+
oracle: 'aztec_txe_setPublicTXEContext',
|
|
85
|
+
inputs,
|
|
86
|
+
handler: ([contractAddress])=>this.stateHandler.enterPublicState(contractAddress)
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
// eslint-disable-next-line camelcase
|
|
90
|
+
aztec_txe_setUtilityTXEContext(...inputs) {
|
|
91
|
+
return callTxeHandler({
|
|
92
|
+
oracle: 'aztec_txe_setUtilityTXEContext',
|
|
93
|
+
inputs,
|
|
94
|
+
handler: ([contractAddress])=>this.stateHandler.enterUtilityState(contractAddress)
|
|
95
|
+
});
|
|
83
96
|
}
|
|
84
97
|
// Other oracles - these get handled by the oracle handler
|
|
85
98
|
// TXE-specific oracles
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
return
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
return
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
99
|
+
// eslint-disable-next-line camelcase
|
|
100
|
+
aztec_txe_getDefaultAddress() {
|
|
101
|
+
return callTxeHandler({
|
|
102
|
+
oracle: 'aztec_txe_getDefaultAddress',
|
|
103
|
+
inputs: [],
|
|
104
|
+
handler: ()=>this.handlerAsTxe().getDefaultAddress()
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
// eslint-disable-next-line camelcase
|
|
108
|
+
aztec_txe_getNextBlockNumber() {
|
|
109
|
+
return callTxeHandler({
|
|
110
|
+
oracle: 'aztec_txe_getNextBlockNumber',
|
|
111
|
+
inputs: [],
|
|
112
|
+
handler: ()=>this.handlerAsTxe().getNextBlockNumber()
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
// eslint-disable-next-line camelcase
|
|
116
|
+
aztec_txe_getNextBlockTimestamp() {
|
|
117
|
+
return callTxeHandler({
|
|
118
|
+
oracle: 'aztec_txe_getNextBlockTimestamp',
|
|
119
|
+
inputs: [],
|
|
120
|
+
handler: ()=>this.handlerAsTxe().getNextBlockTimestamp()
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
// eslint-disable-next-line camelcase
|
|
124
|
+
aztec_txe_advanceBlocksBy(...inputs) {
|
|
125
|
+
return callTxeHandler({
|
|
126
|
+
oracle: 'aztec_txe_advanceBlocksBy',
|
|
127
|
+
inputs,
|
|
128
|
+
handler: ([blocks])=>this.handlerAsTxe().advanceBlocksBy(blocks)
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
// eslint-disable-next-line camelcase
|
|
132
|
+
aztec_txe_advanceTimestampBy(...inputs) {
|
|
133
|
+
return callTxeHandler({
|
|
134
|
+
oracle: 'aztec_txe_advanceTimestampBy',
|
|
135
|
+
inputs,
|
|
136
|
+
handler: ([duration])=>this.handlerAsTxe().advanceTimestampBy(duration)
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
// eslint-disable-next-line camelcase
|
|
140
|
+
aztec_txe_deploy(...inputs) {
|
|
141
|
+
return callTxeHandler({
|
|
142
|
+
oracle: 'aztec_txe_deploy',
|
|
143
|
+
inputs,
|
|
144
|
+
handler: ([contractPath, initializer, _, args, secret, salt, deployer])=>this.handlerAsTxe().deploy(contractPath, initializer, args, secret, salt, deployer)
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
// eslint-disable-next-line camelcase
|
|
148
|
+
aztec_txe_createAccount(...inputs) {
|
|
149
|
+
return callTxeHandler({
|
|
150
|
+
oracle: 'aztec_txe_createAccount',
|
|
151
|
+
inputs,
|
|
152
|
+
handler: ([secret])=>this.handlerAsTxe().createAccount(secret)
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
// eslint-disable-next-line camelcase
|
|
156
|
+
aztec_txe_addAccount(...inputs) {
|
|
157
|
+
return callTxeHandler({
|
|
158
|
+
oracle: 'aztec_txe_addAccount',
|
|
159
|
+
inputs,
|
|
160
|
+
handler: ([secret])=>this.handlerAsTxe().addAccount(secret)
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
// eslint-disable-next-line camelcase
|
|
164
|
+
aztec_txe_addAuthWitness(...inputs) {
|
|
165
|
+
return callTxeHandler({
|
|
166
|
+
oracle: 'aztec_txe_addAuthWitness',
|
|
167
|
+
inputs,
|
|
168
|
+
handler: ([address, messageHash])=>this.handlerAsTxe().addAuthWitness(address, messageHash)
|
|
169
|
+
});
|
|
148
170
|
}
|
|
149
171
|
// PXE oracles
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
return
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
}
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
return
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
return
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
return
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
])
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
return
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
return
|
|
172
|
+
// eslint-disable-next-line camelcase
|
|
173
|
+
aztec_misc_assertCompatibleOracleVersion(...inputs) {
|
|
174
|
+
return callTxeHandler({
|
|
175
|
+
oracle: 'aztec_misc_assertCompatibleOracleVersion',
|
|
176
|
+
inputs,
|
|
177
|
+
handler: ([major, minor])=>this.handlerAsMisc().assertCompatibleOracleVersion(major, minor)
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
// eslint-disable-next-line camelcase
|
|
181
|
+
aztec_misc_getRandomField() {
|
|
182
|
+
return callTxeHandler({
|
|
183
|
+
oracle: 'aztec_misc_getRandomField',
|
|
184
|
+
inputs: [],
|
|
185
|
+
handler: ()=>this.handlerAsMisc().getRandomField()
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
// eslint-disable-next-line camelcase
|
|
189
|
+
aztec_txe_getLastBlockTimestamp() {
|
|
190
|
+
return callTxeHandler({
|
|
191
|
+
oracle: 'aztec_txe_getLastBlockTimestamp',
|
|
192
|
+
inputs: [],
|
|
193
|
+
handler: ()=>this.handlerAsTxe().getLastBlockTimestamp()
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
// eslint-disable-next-line camelcase
|
|
197
|
+
aztec_txe_getLastTxEffects() {
|
|
198
|
+
return callTxeHandler({
|
|
199
|
+
oracle: 'aztec_txe_getLastTxEffects',
|
|
200
|
+
inputs: [],
|
|
201
|
+
handler: ()=>this.handlerAsTxe().getLastTxEffects()
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
// eslint-disable-next-line camelcase
|
|
205
|
+
aztec_txe_getLastCallOffchainEffects() {
|
|
206
|
+
return callTxeHandler({
|
|
207
|
+
oracle: 'aztec_txe_getLastCallOffchainEffects',
|
|
208
|
+
inputs: [],
|
|
209
|
+
handler: ()=>this.stateHandler.getLastCallOffchainEffects()
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
// eslint-disable-next-line camelcase
|
|
213
|
+
aztec_txe_getLastCallContext() {
|
|
214
|
+
return callTxeHandler({
|
|
215
|
+
oracle: 'aztec_txe_getLastCallContext',
|
|
216
|
+
inputs: [],
|
|
217
|
+
handler: ()=>this.stateHandler.getLastCallContext()
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
// eslint-disable-next-line camelcase
|
|
221
|
+
aztec_txe_getPrivateEvents(...inputs) {
|
|
222
|
+
return callTxeHandler({
|
|
223
|
+
oracle: 'aztec_txe_getPrivateEvents',
|
|
224
|
+
inputs,
|
|
225
|
+
handler: async ([selector, contractAddress, scope])=>{
|
|
226
|
+
// TODO(F-335): Avoid doing the following 2 calls here.
|
|
227
|
+
{
|
|
228
|
+
await this.handlerAsTxe().syncContractNonOracleMethod(contractAddress, scope, this.stateHandler.getCurrentJob());
|
|
229
|
+
// We cycle job to commit the stores after the contract sync.
|
|
230
|
+
await this.stateHandler.cycleJob();
|
|
231
|
+
}
|
|
232
|
+
return this.handlerAsTxe().getPrivateEvents(selector, contractAddress, scope);
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
// eslint-disable-next-line camelcase
|
|
237
|
+
aztec_prv_setHashPreimage(...inputs) {
|
|
238
|
+
return callTxeHandler({
|
|
239
|
+
oracle: 'aztec_prv_setHashPreimage',
|
|
240
|
+
inputs,
|
|
241
|
+
handler: ([values, hash])=>this.handlerAsPrivate().setHashPreimage(values, hash)
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
// eslint-disable-next-line camelcase
|
|
245
|
+
aztec_prv_getHashPreimage(...inputs) {
|
|
246
|
+
return callTxeHandler({
|
|
247
|
+
oracle: 'aztec_prv_getHashPreimage',
|
|
248
|
+
inputs,
|
|
249
|
+
handler: ([hash])=>this.handlerAsPrivate().getHashPreimage(hash)
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
// eslint-disable-next-line camelcase
|
|
253
|
+
aztec_misc_log(...inputs) {
|
|
254
|
+
return callTxeHandler({
|
|
255
|
+
oracle: 'aztec_misc_log',
|
|
256
|
+
inputs,
|
|
257
|
+
handler: ([level, message, fieldsSize, fields])=>this.handlerAsMisc().log(level, message, fieldsSize, fields)
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
// eslint-disable-next-line camelcase
|
|
261
|
+
aztec_utl_getFromPublicStorage(...inputs) {
|
|
262
|
+
return callTxeHandler({
|
|
263
|
+
oracle: 'aztec_utl_getFromPublicStorage',
|
|
264
|
+
inputs,
|
|
265
|
+
handler: ([blockHash, contractAddress, startStorageSlot, numberOfElements])=>this.handlerAsUtility().getFromPublicStorage(blockHash, contractAddress, startStorageSlot, numberOfElements)
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
// eslint-disable-next-line camelcase
|
|
269
|
+
aztec_utl_getPublicDataWitness(...inputs) {
|
|
270
|
+
return callTxeHandler({
|
|
271
|
+
oracle: 'aztec_utl_getPublicDataWitness',
|
|
272
|
+
inputs,
|
|
273
|
+
handler: ([blockHash, leafSlot])=>this.handlerAsUtility().getPublicDataWitness(blockHash, leafSlot)
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
// eslint-disable-next-line camelcase
|
|
277
|
+
aztec_utl_getNotes(...inputs) {
|
|
278
|
+
return callTxeHandler({
|
|
279
|
+
oracle: 'aztec_utl_getNotes',
|
|
280
|
+
inputs,
|
|
281
|
+
handler: ([owner, storageSlot, numSelects, selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, limit, offset, status, maxNotes, packedHintedNoteLength])=>this.handlerAsUtility().getNotes(owner, storageSlot, numSelects, selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, limit, offset, status, maxNotes, packedHintedNoteLength)
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
// eslint-disable-next-line camelcase
|
|
285
|
+
aztec_prv_notifyCreatedNote(...inputs) {
|
|
286
|
+
return callTxeHandler({
|
|
287
|
+
oracle: 'aztec_prv_notifyCreatedNote',
|
|
288
|
+
inputs,
|
|
289
|
+
handler: ([owner, storageSlot, randomness, noteTypeId, note, noteHash, counter])=>this.handlerAsPrivate().notifyCreatedNote(owner, storageSlot, randomness, noteTypeId, note, noteHash, counter)
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
// eslint-disable-next-line camelcase
|
|
293
|
+
aztec_prv_notifyNullifiedNote(...inputs) {
|
|
294
|
+
return callTxeHandler({
|
|
295
|
+
oracle: 'aztec_prv_notifyNullifiedNote',
|
|
296
|
+
inputs,
|
|
297
|
+
handler: ([innerNullifier, noteHash, counter])=>this.handlerAsPrivate().notifyNullifiedNote(innerNullifier, noteHash, counter)
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
// eslint-disable-next-line camelcase
|
|
301
|
+
aztec_prv_notifyCreatedNullifier(...inputs) {
|
|
302
|
+
return callTxeHandler({
|
|
303
|
+
oracle: 'aztec_prv_notifyCreatedNullifier',
|
|
304
|
+
inputs,
|
|
305
|
+
handler: ([innerNullifier])=>this.handlerAsPrivate().notifyCreatedNullifier(innerNullifier)
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
// eslint-disable-next-line camelcase
|
|
309
|
+
aztec_prv_isNullifierPending(...inputs) {
|
|
310
|
+
return callTxeHandler({
|
|
311
|
+
oracle: 'aztec_prv_isNullifierPending',
|
|
312
|
+
inputs,
|
|
313
|
+
handler: ([innerNullifier, contractAddress])=>this.handlerAsPrivate().isNullifierPending(innerNullifier, contractAddress)
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
// eslint-disable-next-line camelcase
|
|
317
|
+
aztec_utl_doesNullifierExist(...inputs) {
|
|
318
|
+
return callTxeHandler({
|
|
319
|
+
oracle: 'aztec_utl_doesNullifierExist',
|
|
320
|
+
inputs,
|
|
321
|
+
handler: ([innerNullifier])=>this.handlerAsUtility().doesNullifierExist(innerNullifier)
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
// eslint-disable-next-line camelcase
|
|
325
|
+
aztec_utl_getContractInstance(...inputs) {
|
|
326
|
+
return callTxeHandler({
|
|
327
|
+
oracle: 'aztec_utl_getContractInstance',
|
|
328
|
+
inputs,
|
|
329
|
+
handler: ([address])=>this.handlerAsUtility().getContractInstance(address)
|
|
330
|
+
});
|
|
331
|
+
}
|
|
332
|
+
// eslint-disable-next-line camelcase
|
|
333
|
+
aztec_utl_getPublicKeysAndPartialAddress(...inputs) {
|
|
334
|
+
return callTxeHandler({
|
|
335
|
+
oracle: 'aztec_utl_getPublicKeysAndPartialAddress',
|
|
336
|
+
inputs,
|
|
337
|
+
handler: ([address])=>this.handlerAsUtility().getPublicKeysAndPartialAddress(address)
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
// eslint-disable-next-line camelcase
|
|
341
|
+
aztec_utl_getKeyValidationRequest(...inputs) {
|
|
342
|
+
return callTxeHandler({
|
|
343
|
+
oracle: 'aztec_utl_getKeyValidationRequest',
|
|
344
|
+
inputs,
|
|
345
|
+
handler: ([pkMHash])=>this.handlerAsUtility().getKeyValidationRequest(pkMHash)
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
// eslint-disable-next-line camelcase
|
|
349
|
+
aztec_prv_callPrivateFunction(...inputs) {
|
|
350
|
+
return callTxeHandler({
|
|
351
|
+
oracle: 'aztec_prv_callPrivateFunction',
|
|
352
|
+
inputs,
|
|
353
|
+
handler: ([contractAddress, functionSelector, argsHash, sideEffectCounter, isStaticCall])=>this.handlerAsPrivate().callPrivateFunction(contractAddress, functionSelector, argsHash, sideEffectCounter, isStaticCall)
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
// eslint-disable-next-line camelcase
|
|
357
|
+
aztec_utl_getNullifierMembershipWitness(...inputs) {
|
|
358
|
+
return callTxeHandler({
|
|
359
|
+
oracle: 'aztec_utl_getNullifierMembershipWitness',
|
|
360
|
+
inputs,
|
|
361
|
+
handler: ([blockHash, nullifier])=>this.handlerAsUtility().getNullifierMembershipWitness(blockHash, nullifier)
|
|
362
|
+
});
|
|
363
|
+
}
|
|
364
|
+
// eslint-disable-next-line camelcase
|
|
365
|
+
aztec_utl_getAuthWitness(...inputs) {
|
|
366
|
+
return callTxeHandler({
|
|
367
|
+
oracle: 'aztec_utl_getAuthWitness',
|
|
368
|
+
inputs,
|
|
369
|
+
handler: ([messageHash])=>this.handlerAsUtility().getAuthWitness(messageHash)
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
// eslint-disable-next-line camelcase
|
|
373
|
+
aztec_prv_assertValidPublicCalldata(...inputs) {
|
|
374
|
+
return callTxeHandler({
|
|
375
|
+
oracle: 'aztec_prv_assertValidPublicCalldata',
|
|
376
|
+
inputs,
|
|
377
|
+
handler: ([calldataHash])=>this.handlerAsPrivate().assertValidPublicCalldata(calldataHash)
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
// eslint-disable-next-line camelcase
|
|
381
|
+
aztec_prv_notifyRevertiblePhaseStart(...inputs) {
|
|
382
|
+
return callTxeHandler({
|
|
383
|
+
oracle: 'aztec_prv_notifyRevertiblePhaseStart',
|
|
384
|
+
inputs,
|
|
385
|
+
handler: ([minRevertibleSideEffectCounter])=>this.handlerAsPrivate().notifyRevertiblePhaseStart(minRevertibleSideEffectCounter)
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
// eslint-disable-next-line camelcase
|
|
389
|
+
aztec_prv_isExecutionInRevertiblePhase(...inputs) {
|
|
390
|
+
return callTxeHandler({
|
|
391
|
+
oracle: 'aztec_prv_isExecutionInRevertiblePhase',
|
|
392
|
+
inputs,
|
|
393
|
+
handler: ([sideEffectCounter])=>this.handlerAsPrivate().isExecutionInRevertiblePhase(sideEffectCounter)
|
|
394
|
+
});
|
|
395
|
+
}
|
|
396
|
+
// eslint-disable-next-line camelcase
|
|
397
|
+
aztec_utl_getUtilityContext() {
|
|
398
|
+
return callTxeHandler({
|
|
399
|
+
oracle: 'aztec_utl_getUtilityContext',
|
|
400
|
+
inputs: [],
|
|
401
|
+
handler: ()=>this.handlerAsUtility().getUtilityContext()
|
|
402
|
+
});
|
|
403
|
+
}
|
|
404
|
+
// eslint-disable-next-line camelcase
|
|
405
|
+
aztec_utl_getBlockHeader(...inputs) {
|
|
406
|
+
return callTxeHandler({
|
|
407
|
+
oracle: 'aztec_utl_getBlockHeader',
|
|
408
|
+
inputs,
|
|
409
|
+
handler: ([blockNumber])=>this.handlerAsUtility().getBlockHeader(blockNumber)
|
|
410
|
+
});
|
|
411
|
+
}
|
|
412
|
+
// eslint-disable-next-line camelcase
|
|
413
|
+
aztec_utl_getNoteHashMembershipWitness(...inputs) {
|
|
414
|
+
return callTxeHandler({
|
|
415
|
+
oracle: 'aztec_utl_getNoteHashMembershipWitness',
|
|
416
|
+
inputs,
|
|
417
|
+
handler: ([blockHash, noteHash])=>this.handlerAsUtility().getNoteHashMembershipWitness(blockHash, noteHash)
|
|
418
|
+
});
|
|
419
|
+
}
|
|
420
|
+
// eslint-disable-next-line camelcase
|
|
421
|
+
aztec_utl_getBlockHashMembershipWitness(...inputs) {
|
|
422
|
+
return callTxeHandler({
|
|
423
|
+
oracle: 'aztec_utl_getBlockHashMembershipWitness',
|
|
424
|
+
inputs,
|
|
425
|
+
handler: ([anchorBlockHash, blockHash])=>this.handlerAsUtility().getBlockHashMembershipWitness(anchorBlockHash, blockHash)
|
|
426
|
+
});
|
|
427
|
+
}
|
|
428
|
+
// eslint-disable-next-line camelcase
|
|
429
|
+
aztec_utl_getLowNullifierMembershipWitness(...inputs) {
|
|
430
|
+
return callTxeHandler({
|
|
431
|
+
oracle: 'aztec_utl_getLowNullifierMembershipWitness',
|
|
432
|
+
inputs,
|
|
433
|
+
handler: ([blockHash, nullifier])=>this.handlerAsUtility().getLowNullifierMembershipWitness(blockHash, nullifier)
|
|
434
|
+
});
|
|
435
|
+
}
|
|
436
|
+
// eslint-disable-next-line camelcase
|
|
437
|
+
aztec_utl_getPendingTaggedLogs(...inputs) {
|
|
438
|
+
return callTxeHandler({
|
|
439
|
+
oracle: 'aztec_utl_getPendingTaggedLogs',
|
|
440
|
+
inputs,
|
|
441
|
+
handler: ([scope, providedSecrets])=>this.handlerAsUtility().getPendingTaggedLogs(scope, providedSecrets)
|
|
442
|
+
});
|
|
443
|
+
}
|
|
444
|
+
// eslint-disable-next-line camelcase
|
|
445
|
+
aztec_utl_validateAndStoreEnqueuedNotesAndEvents(...inputs) {
|
|
446
|
+
return callTxeHandler({
|
|
447
|
+
oracle: 'aztec_utl_validateAndStoreEnqueuedNotesAndEvents',
|
|
448
|
+
inputs,
|
|
449
|
+
handler: ([noteValidationRequests, eventValidationRequests, scope])=>this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEvents(noteValidationRequests, eventValidationRequests, scope)
|
|
450
|
+
});
|
|
451
|
+
}
|
|
452
|
+
// eslint-disable-next-line camelcase
|
|
453
|
+
aztec_utl_getLogsByTag(...inputs) {
|
|
454
|
+
return callTxeHandler({
|
|
455
|
+
oracle: 'aztec_utl_getLogsByTag',
|
|
456
|
+
inputs,
|
|
457
|
+
handler: ([requestArrayBaseSlot])=>this.handlerAsUtility().getLogsByTag(requestArrayBaseSlot)
|
|
458
|
+
});
|
|
459
|
+
}
|
|
460
|
+
// eslint-disable-next-line camelcase
|
|
461
|
+
aztec_utl_getMessageContextsByTxHash(...inputs) {
|
|
462
|
+
return callTxeHandler({
|
|
463
|
+
oracle: 'aztec_utl_getMessageContextsByTxHash',
|
|
464
|
+
inputs,
|
|
465
|
+
handler: ([requestArrayBaseSlot])=>this.handlerAsUtility().getMessageContextsByTxHash(requestArrayBaseSlot)
|
|
466
|
+
});
|
|
467
|
+
}
|
|
468
|
+
// eslint-disable-next-line camelcase
|
|
469
|
+
aztec_utl_setCapsule(...inputs) {
|
|
470
|
+
return callTxeHandler({
|
|
471
|
+
oracle: 'aztec_utl_setCapsule',
|
|
472
|
+
inputs,
|
|
473
|
+
handler: ([contractAddress, slot, capsule, scope])=>this.handlerAsUtility().setCapsule(contractAddress, slot, capsule, scope)
|
|
474
|
+
});
|
|
475
|
+
}
|
|
476
|
+
// eslint-disable-next-line camelcase
|
|
477
|
+
aztec_utl_getCapsule(...inputs) {
|
|
478
|
+
return callTxeHandler({
|
|
479
|
+
oracle: 'aztec_utl_getCapsule',
|
|
480
|
+
inputs,
|
|
481
|
+
handler: ([contractAddress, slot, tSize, scope])=>this.handlerAsUtility().getCapsule(contractAddress, slot, tSize, scope)
|
|
482
|
+
});
|
|
483
|
+
}
|
|
484
|
+
// eslint-disable-next-line camelcase
|
|
485
|
+
aztec_utl_deleteCapsule(...inputs) {
|
|
486
|
+
return callTxeHandler({
|
|
487
|
+
oracle: 'aztec_utl_deleteCapsule',
|
|
488
|
+
inputs,
|
|
489
|
+
handler: ([contractAddress, slot, scope])=>this.handlerAsUtility().deleteCapsule(contractAddress, slot, scope)
|
|
490
|
+
});
|
|
491
|
+
}
|
|
492
|
+
// eslint-disable-next-line camelcase
|
|
493
|
+
aztec_utl_copyCapsule(...inputs) {
|
|
494
|
+
return callTxeHandler({
|
|
495
|
+
oracle: 'aztec_utl_copyCapsule',
|
|
496
|
+
inputs,
|
|
497
|
+
handler: ([contractAddress, srcSlot, dstSlot, numEntries, scope])=>this.handlerAsUtility().copyCapsule(contractAddress, srcSlot, dstSlot, numEntries, scope)
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
// eslint-disable-next-line camelcase
|
|
501
|
+
aztec_utl_pushEphemeral(...inputs) {
|
|
502
|
+
return callTxeHandler({
|
|
503
|
+
oracle: 'aztec_utl_pushEphemeral',
|
|
504
|
+
inputs,
|
|
505
|
+
handler: ([slot, elements])=>this.handlerAsUtility().pushEphemeral(slot, elements)
|
|
506
|
+
});
|
|
507
|
+
}
|
|
508
|
+
// eslint-disable-next-line camelcase
|
|
509
|
+
aztec_utl_popEphemeral(...inputs) {
|
|
510
|
+
return callTxeHandler({
|
|
511
|
+
oracle: 'aztec_utl_popEphemeral',
|
|
512
|
+
inputs,
|
|
513
|
+
handler: ([slot])=>this.handlerAsUtility().popEphemeral(slot)
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
// eslint-disable-next-line camelcase
|
|
517
|
+
aztec_utl_getEphemeral(...inputs) {
|
|
518
|
+
return callTxeHandler({
|
|
519
|
+
oracle: 'aztec_utl_getEphemeral',
|
|
520
|
+
inputs,
|
|
521
|
+
handler: ([slot, index])=>this.handlerAsUtility().getEphemeral(slot, index)
|
|
522
|
+
});
|
|
523
|
+
}
|
|
524
|
+
// eslint-disable-next-line camelcase
|
|
525
|
+
aztec_utl_setEphemeral(...inputs) {
|
|
526
|
+
return callTxeHandler({
|
|
527
|
+
oracle: 'aztec_utl_setEphemeral',
|
|
528
|
+
inputs,
|
|
529
|
+
handler: ([slot, index, elements])=>this.handlerAsUtility().setEphemeral(slot, index, elements)
|
|
530
|
+
});
|
|
531
|
+
}
|
|
532
|
+
// eslint-disable-next-line camelcase
|
|
533
|
+
aztec_utl_getEphemeralLen(...inputs) {
|
|
534
|
+
return callTxeHandler({
|
|
535
|
+
oracle: 'aztec_utl_getEphemeralLen',
|
|
536
|
+
inputs,
|
|
537
|
+
handler: ([slot])=>this.handlerAsUtility().getEphemeralLen(slot)
|
|
538
|
+
});
|
|
539
|
+
}
|
|
540
|
+
// eslint-disable-next-line camelcase
|
|
541
|
+
aztec_utl_removeEphemeral(...inputs) {
|
|
542
|
+
return callTxeHandler({
|
|
543
|
+
oracle: 'aztec_utl_removeEphemeral',
|
|
544
|
+
inputs,
|
|
545
|
+
handler: ([slot, index])=>this.handlerAsUtility().removeEphemeral(slot, index)
|
|
546
|
+
});
|
|
547
|
+
}
|
|
548
|
+
// eslint-disable-next-line camelcase
|
|
549
|
+
aztec_utl_clearEphemeral(...inputs) {
|
|
550
|
+
return callTxeHandler({
|
|
551
|
+
oracle: 'aztec_utl_clearEphemeral',
|
|
552
|
+
inputs,
|
|
553
|
+
handler: ([slot])=>this.handlerAsUtility().clearEphemeral(slot)
|
|
554
|
+
});
|
|
473
555
|
}
|
|
474
556
|
// TODO: I forgot to add a corresponding function here, when I introduced an oracle method to txe_oracle.ts.
|
|
475
557
|
// The compiler didn't throw an error, so it took me a while to learn of the existence of this file, and that I need
|
|
476
558
|
// to implement this function here. Isn't there a way to programmatically identify that this is missing, given the
|
|
477
559
|
// existence of a txe_oracle method?
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
560
|
+
// eslint-disable-next-line camelcase
|
|
561
|
+
aztec_utl_decryptAes128(...inputs) {
|
|
562
|
+
return callTxeHandler({
|
|
563
|
+
oracle: 'aztec_utl_decryptAes128',
|
|
564
|
+
inputs,
|
|
565
|
+
handler: ([ciphertext, iv, symKey])=>this.handlerAsUtility().decryptAes128(ciphertext, iv, symKey)
|
|
566
|
+
});
|
|
567
|
+
}
|
|
568
|
+
// eslint-disable-next-line camelcase
|
|
569
|
+
aztec_utl_getSharedSecrets(...inputs) {
|
|
570
|
+
return callTxeHandler({
|
|
571
|
+
oracle: 'aztec_utl_getSharedSecrets',
|
|
572
|
+
inputs,
|
|
573
|
+
handler: ([address, ephPksSlot, contractAddress])=>this.handlerAsUtility().getSharedSecrets(address, ephPksSlot, contractAddress)
|
|
574
|
+
});
|
|
575
|
+
}
|
|
576
|
+
// eslint-disable-next-line camelcase
|
|
577
|
+
aztec_utl_setContractSyncCacheInvalid(...inputs) {
|
|
578
|
+
return callTxeHandler({
|
|
579
|
+
oracle: 'aztec_utl_setContractSyncCacheInvalid',
|
|
580
|
+
inputs,
|
|
581
|
+
handler: ([contractAddress, scopes])=>this.handlerAsUtility().setContractSyncCacheInvalid(contractAddress, scopes)
|
|
582
|
+
});
|
|
583
|
+
}
|
|
584
|
+
// eslint-disable-next-line camelcase
|
|
585
|
+
aztec_utl_emitOffchainEffect(...inputs) {
|
|
586
|
+
return callTxeHandler({
|
|
587
|
+
oracle: 'aztec_utl_emitOffchainEffect',
|
|
588
|
+
inputs,
|
|
589
|
+
handler: ([data])=>{
|
|
590
|
+
// Record the raw payload against the currently-executing top-level call. The Noir side
|
|
591
|
+
// (via `env.offchain_messages()`) is responsible for decoding the protocol-reserved prefix
|
|
592
|
+
// (`OFFCHAIN_MESSAGE_IDENTIFIER`, recipient) and turning each payload into an `OffchainMessage` struct suitable
|
|
593
|
+
// for `offchain_receive`.
|
|
594
|
+
this.stateHandler.recordOffchainEffect(data);
|
|
595
|
+
}
|
|
596
|
+
});
|
|
497
597
|
}
|
|
498
598
|
// AVM opcodes
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
return
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
return
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
}
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
])
|
|
658
|
-
}
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
599
|
+
// eslint-disable-next-line camelcase
|
|
600
|
+
aztec_avm_emitPublicLog() {
|
|
601
|
+
return callTxeHandler({
|
|
602
|
+
oracle: 'aztec_avm_emitPublicLog',
|
|
603
|
+
inputs: [],
|
|
604
|
+
// TODO(#8811): Implement
|
|
605
|
+
handler: ()=>{}
|
|
606
|
+
});
|
|
607
|
+
}
|
|
608
|
+
// eslint-disable-next-line camelcase
|
|
609
|
+
aztec_avm_storageRead(...inputs) {
|
|
610
|
+
return callTxeHandler({
|
|
611
|
+
oracle: 'aztec_avm_storageRead',
|
|
612
|
+
inputs,
|
|
613
|
+
handler: ([slot, contractAddress])=>this.handlerAsAvm().storageRead(slot, contractAddress)
|
|
614
|
+
});
|
|
615
|
+
}
|
|
616
|
+
// eslint-disable-next-line camelcase
|
|
617
|
+
aztec_avm_storageWrite(...inputs) {
|
|
618
|
+
return callTxeHandler({
|
|
619
|
+
oracle: 'aztec_avm_storageWrite',
|
|
620
|
+
inputs,
|
|
621
|
+
handler: ([slot, value])=>this.handlerAsAvm().storageWrite(slot, value)
|
|
622
|
+
});
|
|
623
|
+
}
|
|
624
|
+
// eslint-disable-next-line camelcase
|
|
625
|
+
aztec_avm_getContractInstanceDeployer(...inputs) {
|
|
626
|
+
return callTxeHandler({
|
|
627
|
+
oracle: 'aztec_avm_getContractInstanceDeployer',
|
|
628
|
+
inputs,
|
|
629
|
+
handler: ([address])=>this.handlerAsAvm().getContractInstanceDeployer(address)
|
|
630
|
+
});
|
|
631
|
+
}
|
|
632
|
+
// eslint-disable-next-line camelcase
|
|
633
|
+
aztec_avm_getContractInstanceClassId(...inputs) {
|
|
634
|
+
return callTxeHandler({
|
|
635
|
+
oracle: 'aztec_avm_getContractInstanceClassId',
|
|
636
|
+
inputs,
|
|
637
|
+
handler: ([address])=>this.handlerAsAvm().getContractInstanceClassId(address)
|
|
638
|
+
});
|
|
639
|
+
}
|
|
640
|
+
// eslint-disable-next-line camelcase
|
|
641
|
+
aztec_avm_getContractInstanceInitializationHash(...inputs) {
|
|
642
|
+
return callTxeHandler({
|
|
643
|
+
oracle: 'aztec_avm_getContractInstanceInitializationHash',
|
|
644
|
+
inputs,
|
|
645
|
+
handler: ([address])=>this.handlerAsAvm().getContractInstanceInitializationHash(address)
|
|
646
|
+
});
|
|
647
|
+
}
|
|
648
|
+
// eslint-disable-next-line camelcase
|
|
649
|
+
aztec_avm_getContractInstanceImmutablesHash(...inputs) {
|
|
650
|
+
return callTxeHandler({
|
|
651
|
+
oracle: 'aztec_avm_getContractInstanceImmutablesHash',
|
|
652
|
+
inputs,
|
|
653
|
+
handler: ([address])=>this.handlerAsAvm().getContractInstanceImmutablesHash(address)
|
|
654
|
+
});
|
|
655
|
+
}
|
|
656
|
+
// eslint-disable-next-line camelcase
|
|
657
|
+
aztec_avm_sender() {
|
|
658
|
+
return callTxeHandler({
|
|
659
|
+
oracle: 'aztec_avm_sender',
|
|
660
|
+
inputs: [],
|
|
661
|
+
handler: ()=>this.handlerAsAvm().sender()
|
|
662
|
+
});
|
|
663
|
+
}
|
|
664
|
+
// eslint-disable-next-line camelcase
|
|
665
|
+
aztec_avm_emitNullifier(...inputs) {
|
|
666
|
+
return callTxeHandler({
|
|
667
|
+
oracle: 'aztec_avm_emitNullifier',
|
|
668
|
+
inputs,
|
|
669
|
+
handler: ([nullifier])=>this.handlerAsAvm().emitNullifier(nullifier)
|
|
670
|
+
});
|
|
671
|
+
}
|
|
672
|
+
// eslint-disable-next-line camelcase
|
|
673
|
+
aztec_avm_emitNoteHash(...inputs) {
|
|
674
|
+
return callTxeHandler({
|
|
675
|
+
oracle: 'aztec_avm_emitNoteHash',
|
|
676
|
+
inputs,
|
|
677
|
+
handler: ([noteHash])=>this.handlerAsAvm().emitNoteHash(noteHash)
|
|
678
|
+
});
|
|
679
|
+
}
|
|
680
|
+
// eslint-disable-next-line camelcase
|
|
681
|
+
aztec_avm_nullifierExists(...inputs) {
|
|
682
|
+
return callTxeHandler({
|
|
683
|
+
oracle: 'aztec_avm_nullifierExists',
|
|
684
|
+
inputs,
|
|
685
|
+
handler: ([siloedNullifier])=>this.handlerAsAvm().nullifierExists(siloedNullifier)
|
|
686
|
+
});
|
|
687
|
+
}
|
|
688
|
+
// eslint-disable-next-line camelcase
|
|
689
|
+
aztec_avm_address() {
|
|
690
|
+
return callTxeHandler({
|
|
691
|
+
oracle: 'aztec_avm_address',
|
|
692
|
+
inputs: [],
|
|
693
|
+
handler: ()=>this.handlerAsAvm().address()
|
|
694
|
+
});
|
|
695
|
+
}
|
|
696
|
+
// eslint-disable-next-line camelcase
|
|
697
|
+
aztec_avm_blockNumber() {
|
|
698
|
+
return callTxeHandler({
|
|
699
|
+
oracle: 'aztec_avm_blockNumber',
|
|
700
|
+
inputs: [],
|
|
701
|
+
handler: ()=>this.handlerAsAvm().blockNumber()
|
|
702
|
+
});
|
|
703
|
+
}
|
|
704
|
+
// eslint-disable-next-line camelcase
|
|
705
|
+
aztec_avm_timestamp() {
|
|
706
|
+
return callTxeHandler({
|
|
707
|
+
oracle: 'aztec_avm_timestamp',
|
|
708
|
+
inputs: [],
|
|
709
|
+
handler: ()=>this.handlerAsAvm().timestamp()
|
|
710
|
+
});
|
|
711
|
+
}
|
|
712
|
+
// eslint-disable-next-line camelcase
|
|
713
|
+
aztec_avm_isStaticCall() {
|
|
714
|
+
return callTxeHandler({
|
|
715
|
+
oracle: 'aztec_avm_isStaticCall',
|
|
716
|
+
inputs: [],
|
|
717
|
+
handler: ()=>this.handlerAsAvm().isStaticCall()
|
|
718
|
+
});
|
|
719
|
+
}
|
|
720
|
+
// eslint-disable-next-line camelcase
|
|
721
|
+
aztec_avm_chainId() {
|
|
722
|
+
return callTxeHandler({
|
|
723
|
+
oracle: 'aztec_avm_chainId',
|
|
724
|
+
inputs: [],
|
|
725
|
+
handler: ()=>this.handlerAsAvm().chainId()
|
|
726
|
+
});
|
|
727
|
+
}
|
|
728
|
+
// eslint-disable-next-line camelcase
|
|
729
|
+
aztec_avm_version() {
|
|
730
|
+
return callTxeHandler({
|
|
731
|
+
oracle: 'aztec_avm_version',
|
|
732
|
+
inputs: [],
|
|
733
|
+
handler: ()=>this.handlerAsAvm().version()
|
|
734
|
+
});
|
|
735
|
+
}
|
|
736
|
+
// eslint-disable-next-line camelcase
|
|
737
|
+
aztec_avm_returndataSize() {
|
|
738
|
+
return callTxeHandler({
|
|
739
|
+
oracle: 'aztec_avm_returndataSize',
|
|
740
|
+
inputs: [],
|
|
741
|
+
handler: ()=>this.handlerAsAvm().returndataSize()
|
|
742
|
+
});
|
|
743
|
+
}
|
|
744
|
+
// eslint-disable-next-line camelcase
|
|
745
|
+
aztec_avm_returndataCopy(...inputs) {
|
|
746
|
+
return callTxeHandler({
|
|
747
|
+
oracle: 'aztec_avm_returndataCopy',
|
|
748
|
+
inputs,
|
|
749
|
+
handler: ([rdOffset, copySize])=>this.handlerAsAvm().returndataCopy(rdOffset, copySize)
|
|
750
|
+
});
|
|
751
|
+
}
|
|
752
|
+
// eslint-disable-next-line camelcase
|
|
753
|
+
aztec_avm_call(...inputs) {
|
|
754
|
+
return callTxeHandler({
|
|
755
|
+
oracle: 'aztec_avm_call',
|
|
756
|
+
inputs,
|
|
757
|
+
handler: ([l2Gas, daGas, address, argsLength, args])=>this.handlerAsAvm().call(l2Gas, daGas, address, argsLength, args)
|
|
758
|
+
});
|
|
759
|
+
}
|
|
760
|
+
// eslint-disable-next-line camelcase
|
|
761
|
+
aztec_avm_staticCall(...inputs) {
|
|
762
|
+
return callTxeHandler({
|
|
763
|
+
oracle: 'aztec_avm_staticCall',
|
|
764
|
+
inputs,
|
|
765
|
+
handler: ([l2Gas, daGas, address, argsLength, args])=>this.handlerAsAvm().staticCall(l2Gas, daGas, address, argsLength, args)
|
|
766
|
+
});
|
|
767
|
+
}
|
|
768
|
+
// eslint-disable-next-line camelcase
|
|
769
|
+
aztec_avm_successCopy() {
|
|
770
|
+
return callTxeHandler({
|
|
771
|
+
oracle: 'aztec_avm_successCopy',
|
|
772
|
+
inputs: [],
|
|
773
|
+
handler: ()=>this.handlerAsAvm().successCopy()
|
|
774
|
+
});
|
|
775
|
+
}
|
|
776
|
+
// TODO(F-674): Move orchestration logic into the handler so the transport layer is pure serialize->delegate->deserialize.
|
|
777
|
+
// eslint-disable-next-line camelcase
|
|
778
|
+
aztec_txe_privateCallNewFlow(...inputs) {
|
|
779
|
+
return callTxeHandler({
|
|
780
|
+
oracle: 'aztec_txe_privateCallNewFlow',
|
|
781
|
+
inputs,
|
|
782
|
+
handler: async ([from, targetContractAddress, functionSelector, args, argsHash, isStaticCall, additionalScopes, authorizedUtilityCallTargets, gasSettings])=>{
|
|
783
|
+
const returnValues = await this.stateHandler.withTopLevelCallTracking(async ()=>{
|
|
784
|
+
const { returnValues, offchainEffects } = await this.handlerAsTxe().privateCallNewFlow(from?.value, targetContractAddress, functionSelector, args, argsHash, isStaticCall, additionalScopes, this.stateHandler.getCurrentJob(), authorizedUtilityCallTargets, gasSettings);
|
|
785
|
+
// Private execution collects offchain effects inside PXE's PrivateExecutionOracle rather than
|
|
786
|
+
// round-tripping them through `aztec_utl_emitOffchainEffect`, so the session buffer is empty
|
|
787
|
+
// at this point. Drain the effects from the execution tree into the session buffer so the
|
|
788
|
+
// next `env.offchain_messages()` call in the test sees them.
|
|
789
|
+
for (const data of offchainEffects){
|
|
790
|
+
this.stateHandler.recordOffchainEffect(data);
|
|
791
|
+
}
|
|
792
|
+
// TODO(F-335): Avoid doing the following call here.
|
|
793
|
+
await this.stateHandler.cycleJob();
|
|
794
|
+
if (isStaticCall) {
|
|
795
|
+
// Static calls revert their checkpoint and mine no block, so there is no tx hash to tag
|
|
796
|
+
// offchain effects with. Querying `getLastTxEffects()` here would return an unrelated
|
|
797
|
+
// predecessor tx.
|
|
798
|
+
return {
|
|
799
|
+
result: returnValues
|
|
800
|
+
};
|
|
801
|
+
}
|
|
802
|
+
const { txHash } = await this.handlerAsTxe().getLastTxEffects();
|
|
803
|
+
return {
|
|
804
|
+
result: returnValues,
|
|
805
|
+
txHash: txHash.hash
|
|
806
|
+
};
|
|
807
|
+
});
|
|
808
|
+
return returnValues;
|
|
809
|
+
}
|
|
810
|
+
});
|
|
811
|
+
}
|
|
812
|
+
// TODO(F-674): Move orchestration logic into the handler so the transport layer is pure serialize->delegate->deserialize.
|
|
813
|
+
// eslint-disable-next-line camelcase
|
|
814
|
+
aztec_txe_executeUtilityFunction(...inputs) {
|
|
815
|
+
return callTxeHandler({
|
|
816
|
+
oracle: 'aztec_txe_executeUtilityFunction',
|
|
817
|
+
inputs,
|
|
818
|
+
handler: async ([targetContractAddress, functionSelector, args, authorizedUtilityCallTargets])=>{
|
|
819
|
+
const returnValues = await this.stateHandler.withTopLevelCallTracking(async ()=>{
|
|
820
|
+
const returnValues = await this.handlerAsTxe().executeUtilityFunction(targetContractAddress, functionSelector, args, this.stateHandler.getCurrentJob(), authorizedUtilityCallTargets);
|
|
821
|
+
// TODO(F-335): Avoid doing the following call here.
|
|
822
|
+
await this.stateHandler.cycleJob();
|
|
823
|
+
return {
|
|
824
|
+
result: returnValues
|
|
825
|
+
};
|
|
826
|
+
});
|
|
827
|
+
return returnValues;
|
|
828
|
+
}
|
|
829
|
+
});
|
|
830
|
+
}
|
|
831
|
+
// TODO(F-674): Move orchestration logic into the handler so the transport layer is pure serialize->delegate->deserialize.
|
|
832
|
+
// eslint-disable-next-line camelcase
|
|
833
|
+
aztec_txe_publicCallNewFlow(...inputs) {
|
|
834
|
+
return callTxeHandler({
|
|
835
|
+
oracle: 'aztec_txe_publicCallNewFlow',
|
|
836
|
+
inputs,
|
|
837
|
+
handler: async ([from, address, calldata, isStaticCall, gasSettings])=>{
|
|
838
|
+
const returnValues = await this.stateHandler.withTopLevelCallTracking(async ()=>{
|
|
839
|
+
const returnValues = await this.handlerAsTxe().publicCallNewFlow(from?.value, address, calldata, isStaticCall, gasSettings);
|
|
840
|
+
// TODO(F-335): Avoid doing the following call here.
|
|
841
|
+
await this.stateHandler.cycleJob();
|
|
842
|
+
if (isStaticCall) {
|
|
843
|
+
// See equivalent branch in `aztec_txe_privateCallNewFlow`.
|
|
844
|
+
return {
|
|
845
|
+
result: returnValues
|
|
846
|
+
};
|
|
847
|
+
}
|
|
848
|
+
const { txHash } = await this.handlerAsTxe().getLastTxEffects();
|
|
849
|
+
return {
|
|
850
|
+
result: returnValues,
|
|
851
|
+
txHash: txHash.hash
|
|
852
|
+
};
|
|
853
|
+
});
|
|
854
|
+
return returnValues;
|
|
855
|
+
}
|
|
856
|
+
});
|
|
857
|
+
}
|
|
858
|
+
// eslint-disable-next-line camelcase
|
|
859
|
+
aztec_prv_getSenderForTags() {
|
|
860
|
+
return callTxeHandler({
|
|
861
|
+
oracle: 'aztec_prv_getSenderForTags',
|
|
862
|
+
inputs: [],
|
|
863
|
+
handler: ()=>this.handlerAsPrivate().getSenderForTags()
|
|
864
|
+
});
|
|
865
|
+
}
|
|
866
|
+
// eslint-disable-next-line camelcase
|
|
867
|
+
aztec_prv_getAppTaggingSecret(...inputs) {
|
|
868
|
+
return callTxeHandler({
|
|
869
|
+
oracle: 'aztec_prv_getAppTaggingSecret',
|
|
870
|
+
inputs,
|
|
871
|
+
handler: ([sender, recipient])=>this.handlerAsPrivate().getAppTaggingSecret(sender, recipient)
|
|
872
|
+
});
|
|
873
|
+
}
|
|
874
|
+
// eslint-disable-next-line camelcase
|
|
875
|
+
aztec_prv_getNextTaggingIndex(...inputs) {
|
|
876
|
+
return callTxeHandler({
|
|
877
|
+
oracle: 'aztec_prv_getNextTaggingIndex',
|
|
878
|
+
inputs,
|
|
879
|
+
handler: ([secret, deliveryMode])=>this.handlerAsPrivate().getNextTaggingIndex(secret, deliveryMode)
|
|
880
|
+
});
|
|
678
881
|
}
|
|
679
882
|
}
|