@aztec/txe 0.0.1-commit.fce3e4f → 0.0.1-commit.ff7989d6c
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/constants.d.ts +3 -0
- package/dest/constants.d.ts.map +1 -0
- package/dest/constants.js +2 -0
- package/dest/index.d.ts +1 -1
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +85 -52
- package/dest/oracle/interfaces.d.ts +12 -9
- package/dest/oracle/interfaces.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_public_context.d.ts +7 -7
- package/dest/oracle/txe_oracle_public_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_public_context.js +10 -12
- package/dest/oracle/txe_oracle_top_level_context.d.ts +23 -14
- package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_top_level_context.js +177 -79
- package/dest/rpc_translator.d.ts +30 -18
- package/dest/rpc_translator.d.ts.map +1 -1
- package/dest/rpc_translator.js +127 -60
- package/dest/state_machine/archiver.d.ts +21 -52
- package/dest/state_machine/archiver.d.ts.map +1 -1
- package/dest/state_machine/archiver.js +63 -94
- package/dest/state_machine/dummy_p2p_client.d.ts +19 -14
- package/dest/state_machine/dummy_p2p_client.d.ts.map +1 -1
- package/dest/state_machine/dummy_p2p_client.js +41 -24
- package/dest/state_machine/global_variable_builder.d.ts +6 -5
- package/dest/state_machine/global_variable_builder.d.ts.map +1 -1
- package/dest/state_machine/global_variable_builder.js +13 -1
- package/dest/state_machine/index.d.ts +7 -7
- package/dest/state_machine/index.d.ts.map +1 -1
- package/dest/state_machine/index.js +40 -23
- package/dest/state_machine/mock_epoch_cache.d.ts +9 -6
- package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
- package/dest/state_machine/mock_epoch_cache.js +14 -7
- package/dest/state_machine/synchronizer.d.ts +3 -2
- package/dest/state_machine/synchronizer.d.ts.map +1 -1
- package/dest/state_machine/synchronizer.js +5 -4
- package/dest/txe_session.d.ts +21 -15
- package/dest/txe_session.d.ts.map +1 -1
- package/dest/txe_session.js +151 -52
- package/dest/util/encoding.d.ts +618 -19
- package/dest/util/encoding.d.ts.map +1 -1
- package/dest/util/encoding.js +1 -1
- package/dest/util/txe_account_store.d.ts +10 -0
- package/dest/util/txe_account_store.d.ts.map +1 -0
- package/dest/util/{txe_account_data_provider.js → txe_account_store.js} +1 -1
- package/dest/util/txe_public_contract_data_source.d.ts +8 -8
- package/dest/util/txe_public_contract_data_source.d.ts.map +1 -1
- package/dest/util/txe_public_contract_data_source.js +12 -29
- package/dest/utils/block_creation.d.ts +21 -6
- package/dest/utils/block_creation.d.ts.map +1 -1
- package/dest/utils/block_creation.js +38 -4
- package/dest/utils/tx_effect_creation.d.ts +3 -3
- package/dest/utils/tx_effect_creation.d.ts.map +1 -1
- package/dest/utils/tx_effect_creation.js +4 -7
- package/package.json +18 -18
- package/src/constants.ts +3 -0
- package/src/index.ts +97 -60
- package/src/oracle/interfaces.ts +11 -8
- package/src/oracle/txe_oracle_public_context.ts +12 -19
- package/src/oracle/txe_oracle_top_level_context.ts +213 -124
- package/src/rpc_translator.ts +156 -60
- package/src/state_machine/archiver.ts +59 -114
- package/src/state_machine/dummy_p2p_client.ts +57 -32
- package/src/state_machine/global_variable_builder.ts +21 -4
- package/src/state_machine/index.ts +60 -21
- package/src/state_machine/mock_epoch_cache.ts +15 -11
- package/src/state_machine/synchronizer.ts +6 -5
- package/src/txe_session.ts +207 -100
- package/src/util/encoding.ts +1 -1
- package/src/util/{txe_account_data_provider.ts → txe_account_store.ts} +1 -1
- package/src/util/txe_public_contract_data_source.ts +20 -45
- package/src/utils/block_creation.ts +49 -15
- package/src/utils/tx_effect_creation.ts +5 -12
- package/dest/util/txe_account_data_provider.d.ts +0 -10
- package/dest/util/txe_account_data_provider.d.ts.map +0 -1
- package/dest/util/txe_contract_data_provider.d.ts +0 -12
- package/dest/util/txe_contract_data_provider.d.ts.map +0 -1
- package/dest/util/txe_contract_data_provider.js +0 -22
- package/src/util/txe_contract_data_provider.ts +0 -36
package/dest/rpc_translator.d.ts
CHANGED
|
@@ -37,6 +37,9 @@ export declare class RPCTranslator {
|
|
|
37
37
|
txeSetUtilityTXEContext(foreignContractAddressIsSome: ForeignCallSingle, foreignContractAddressValue: ForeignCallSingle): Promise<{
|
|
38
38
|
values: (string | ForeignCallArray)[];
|
|
39
39
|
}>;
|
|
40
|
+
txeGetDefaultAddress(): {
|
|
41
|
+
values: (string | ForeignCallArray)[];
|
|
42
|
+
};
|
|
40
43
|
txeGetNextBlockNumber(): Promise<{
|
|
41
44
|
values: (string | ForeignCallArray)[];
|
|
42
45
|
}>;
|
|
@@ -73,25 +76,28 @@ export declare class RPCTranslator {
|
|
|
73
76
|
txeGetLastTxEffects(): Promise<{
|
|
74
77
|
values: (string | ForeignCallArray)[];
|
|
75
78
|
}>;
|
|
79
|
+
txeGetPrivateEvents(foreignSelector: ForeignCallSingle, foreignContractAddress: ForeignCallSingle, foreignScope: ForeignCallSingle): Promise<{
|
|
80
|
+
values: (string | ForeignCallArray)[];
|
|
81
|
+
}>;
|
|
76
82
|
privateStoreInExecutionCache(foreignValues: ForeignCallArray, foreignHash: ForeignCallSingle): {
|
|
77
83
|
values: (string | ForeignCallArray)[];
|
|
78
84
|
};
|
|
79
85
|
privateLoadFromExecutionCache(foreignHash: ForeignCallSingle): Promise<{
|
|
80
86
|
values: (string | ForeignCallArray)[];
|
|
81
87
|
}>;
|
|
82
|
-
|
|
88
|
+
utilityLog(foreignLevel: ForeignCallSingle, foreignMessage: ForeignCallArray, _foreignLength: ForeignCallSingle, foreignFields: ForeignCallArray): Promise<{
|
|
83
89
|
values: (string | ForeignCallArray)[];
|
|
84
|
-
}
|
|
85
|
-
utilityStorageRead(
|
|
90
|
+
}>;
|
|
91
|
+
utilityStorageRead(foreignBlockHash: ForeignCallSingle, foreignContractAddress: ForeignCallSingle, foreignStartStorageSlot: ForeignCallSingle, foreignNumberOfElements: ForeignCallSingle): Promise<{
|
|
86
92
|
values: (string | ForeignCallArray)[];
|
|
87
93
|
}>;
|
|
88
|
-
utilityGetPublicDataWitness(
|
|
94
|
+
utilityGetPublicDataWitness(foreignBlockHash: ForeignCallSingle, foreignLeafSlot: ForeignCallSingle): Promise<{
|
|
89
95
|
values: (string | ForeignCallArray)[];
|
|
90
96
|
}>;
|
|
91
|
-
utilityGetNotes(foreignStorageSlot: ForeignCallSingle, foreignNumSelects: ForeignCallSingle, foreignSelectByIndexes: ForeignCallArray, foreignSelectByOffsets: ForeignCallArray, foreignSelectByLengths: ForeignCallArray, foreignSelectValues: ForeignCallArray, foreignSelectComparators: ForeignCallArray, foreignSortByIndexes: ForeignCallArray, foreignSortByOffsets: ForeignCallArray, foreignSortByLengths: ForeignCallArray, foreignSortOrder: ForeignCallArray, foreignLimit: ForeignCallSingle, foreignOffset: ForeignCallSingle, foreignStatus: ForeignCallSingle, foreignMaxNotes: ForeignCallSingle,
|
|
97
|
+
utilityGetNotes(foreignOwnerIsSome: ForeignCallSingle, foreignOwnerValue: ForeignCallSingle, foreignStorageSlot: ForeignCallSingle, foreignNumSelects: ForeignCallSingle, foreignSelectByIndexes: ForeignCallArray, foreignSelectByOffsets: ForeignCallArray, foreignSelectByLengths: ForeignCallArray, foreignSelectValues: ForeignCallArray, foreignSelectComparators: ForeignCallArray, foreignSortByIndexes: ForeignCallArray, foreignSortByOffsets: ForeignCallArray, foreignSortByLengths: ForeignCallArray, foreignSortOrder: ForeignCallArray, foreignLimit: ForeignCallSingle, foreignOffset: ForeignCallSingle, foreignStatus: ForeignCallSingle, foreignMaxNotes: ForeignCallSingle, foreignPackedHintedNoteLength: ForeignCallSingle): Promise<{
|
|
92
98
|
values: (string | ForeignCallArray)[];
|
|
93
99
|
}>;
|
|
94
|
-
privateNotifyCreatedNote(foreignStorageSlot: ForeignCallSingle, foreignRandomness: ForeignCallSingle, foreignNoteTypeId: ForeignCallSingle, foreignNote: ForeignCallArray, foreignNoteHash: ForeignCallSingle, foreignCounter: ForeignCallSingle): {
|
|
100
|
+
privateNotifyCreatedNote(foreignOwner: ForeignCallSingle, foreignStorageSlot: ForeignCallSingle, foreignRandomness: ForeignCallSingle, foreignNoteTypeId: ForeignCallSingle, foreignNote: ForeignCallArray, foreignNoteHash: ForeignCallSingle, foreignCounter: ForeignCallSingle): {
|
|
95
101
|
values: (string | ForeignCallArray)[];
|
|
96
102
|
};
|
|
97
103
|
privateNotifyNullifiedNote(foreignInnerNullifier: ForeignCallSingle, foreignNoteHash: ForeignCallSingle, foreignCounter: ForeignCallSingle): Promise<{
|
|
@@ -100,20 +106,23 @@ export declare class RPCTranslator {
|
|
|
100
106
|
privateNotifyCreatedNullifier(foreignInnerNullifier: ForeignCallSingle): Promise<{
|
|
101
107
|
values: (string | ForeignCallArray)[];
|
|
102
108
|
}>;
|
|
109
|
+
privateIsNullifierPending(foreignInnerNullifier: ForeignCallSingle, foreignContractAddress: ForeignCallSingle): Promise<{
|
|
110
|
+
values: (string | ForeignCallArray)[];
|
|
111
|
+
}>;
|
|
103
112
|
utilityCheckNullifierExists(foreignInnerNullifier: ForeignCallSingle): Promise<{
|
|
104
113
|
values: (string | ForeignCallArray)[];
|
|
105
114
|
}>;
|
|
106
115
|
utilityGetContractInstance(foreignAddress: ForeignCallSingle): Promise<{
|
|
107
116
|
values: (string | ForeignCallArray)[];
|
|
108
117
|
}>;
|
|
109
|
-
|
|
118
|
+
utilityTryGetPublicKeysAndPartialAddress(foreignAddress: ForeignCallSingle): Promise<{
|
|
110
119
|
values: (string | ForeignCallArray)[];
|
|
111
120
|
}>;
|
|
112
121
|
utilityGetKeyValidationRequest(foreignPkMHash: ForeignCallSingle): Promise<{
|
|
113
122
|
values: (string | ForeignCallArray)[];
|
|
114
123
|
}>;
|
|
115
124
|
privateCallPrivateFunction(_foreignTargetContractAddress: ForeignCallSingle, _foreignFunctionSelector: ForeignCallSingle, _foreignArgsHash: ForeignCallSingle, _foreignSideEffectCounter: ForeignCallSingle, _foreignIsStaticCall: ForeignCallSingle): void;
|
|
116
|
-
utilityGetNullifierMembershipWitness(
|
|
125
|
+
utilityGetNullifierMembershipWitness(foreignBlockHash: ForeignCallSingle, foreignNullifier: ForeignCallSingle): Promise<{
|
|
117
126
|
values: (string | ForeignCallArray)[];
|
|
118
127
|
}>;
|
|
119
128
|
utilityGetAuthWitness(foreignMessageHash: ForeignCallSingle): Promise<{
|
|
@@ -125,22 +134,25 @@ export declare class RPCTranslator {
|
|
|
125
134
|
privateIsSideEffectCounterRevertible(foreignSideEffectCounter: ForeignCallSingle): Promise<{
|
|
126
135
|
values: (string | ForeignCallArray)[];
|
|
127
136
|
}>;
|
|
128
|
-
utilityGetUtilityContext():
|
|
137
|
+
utilityGetUtilityContext(): {
|
|
129
138
|
values: (string | ForeignCallArray)[];
|
|
130
|
-
}
|
|
139
|
+
};
|
|
131
140
|
utilityGetBlockHeader(foreignBlockNumber: ForeignCallSingle): Promise<{
|
|
132
141
|
values: (string | ForeignCallArray)[];
|
|
133
142
|
}>;
|
|
134
|
-
|
|
143
|
+
utilityGetNoteHashMembershipWitness(foreignAnchorBlockHash: ForeignCallSingle, foreignNoteHash: ForeignCallSingle): Promise<{
|
|
144
|
+
values: (string | ForeignCallArray)[];
|
|
145
|
+
}>;
|
|
146
|
+
utilityGetBlockHashMembershipWitness(foreignAnchorBlockHash: ForeignCallSingle, foreignBlockHash: ForeignCallSingle): Promise<{
|
|
135
147
|
values: (string | ForeignCallArray)[];
|
|
136
148
|
}>;
|
|
137
|
-
utilityGetLowNullifierMembershipWitness(
|
|
149
|
+
utilityGetLowNullifierMembershipWitness(foreignBlockHash: ForeignCallSingle, foreignNullifier: ForeignCallSingle): Promise<{
|
|
138
150
|
values: (string | ForeignCallArray)[];
|
|
139
151
|
}>;
|
|
140
152
|
utilityFetchTaggedLogs(foreignPendingTaggedLogArrayBaseSlot: ForeignCallSingle): Promise<{
|
|
141
153
|
values: (string | ForeignCallArray)[];
|
|
142
154
|
}>;
|
|
143
|
-
|
|
155
|
+
utilityValidateAndStoreEnqueuedNotesAndEvents(foreignContractAddress: ForeignCallSingle, foreignNoteValidationRequestsArrayBaseSlot: ForeignCallSingle, foreignEventValidationRequestsArrayBaseSlot: ForeignCallSingle): Promise<{
|
|
144
156
|
values: (string | ForeignCallArray)[];
|
|
145
157
|
}>;
|
|
146
158
|
utilityBulkRetrieveLogs(foreignContractAddress: ForeignCallSingle, foreignLogRetrievalRequestsArrayBaseSlot: ForeignCallSingle, foreignLogRetrievalResponsesArrayBaseSlot: ForeignCallSingle): Promise<{
|
|
@@ -165,10 +177,10 @@ export declare class RPCTranslator {
|
|
|
165
177
|
values: (string | ForeignCallArray)[];
|
|
166
178
|
}>;
|
|
167
179
|
emitOffchainEffect(_foreignData: ForeignCallArray): void;
|
|
168
|
-
|
|
180
|
+
avmOpcodeEmitPublicLog(_foreignMessage: ForeignCallArray): {
|
|
169
181
|
values: (string | ForeignCallArray)[];
|
|
170
182
|
};
|
|
171
|
-
avmOpcodeStorageRead(foreignSlot: ForeignCallSingle): Promise<{
|
|
183
|
+
avmOpcodeStorageRead(foreignSlot: ForeignCallSingle, foreignContractAddress: ForeignCallSingle): Promise<{
|
|
172
184
|
values: (string | ForeignCallArray)[];
|
|
173
185
|
}>;
|
|
174
186
|
avmOpcodeStorageWrite(foreignSlot: ForeignCallSingle, foreignValue: ForeignCallSingle): Promise<{
|
|
@@ -192,7 +204,7 @@ export declare class RPCTranslator {
|
|
|
192
204
|
avmOpcodeEmitNoteHash(foreignNoteHash: ForeignCallSingle): Promise<{
|
|
193
205
|
values: (string | ForeignCallArray)[];
|
|
194
206
|
}>;
|
|
195
|
-
avmOpcodeNullifierExists(
|
|
207
|
+
avmOpcodeNullifierExists(foreignSiloedNullifier: ForeignCallSingle): Promise<{
|
|
196
208
|
values: (string | ForeignCallArray)[];
|
|
197
209
|
}>;
|
|
198
210
|
avmOpcodeAddress(): Promise<{
|
|
@@ -221,7 +233,7 @@ export declare class RPCTranslator {
|
|
|
221
233
|
txePrivateCallNewFlow(foreignFrom: ForeignCallSingle, foreignTargetContractAddress: ForeignCallSingle, foreignFunctionSelector: ForeignCallSingle, foreignArgs: ForeignCallArray, foreignArgsHash: ForeignCallSingle, foreignIsStaticCall: ForeignCallSingle): Promise<{
|
|
222
234
|
values: (string | ForeignCallArray)[];
|
|
223
235
|
}>;
|
|
224
|
-
|
|
236
|
+
txeExecuteUtilityFunction(foreignTargetContractAddress: ForeignCallSingle, foreignFunctionSelector: ForeignCallSingle, foreignArgs: ForeignCallArray): Promise<{
|
|
225
237
|
values: (string | ForeignCallArray)[];
|
|
226
238
|
}>;
|
|
227
239
|
txePublicCallNewFlow(foreignFrom: ForeignCallSingle, foreignAddress: ForeignCallSingle, foreignCalldata: ForeignCallArray, foreignIsStaticCall: ForeignCallSingle): Promise<{
|
|
@@ -237,4 +249,4 @@ export declare class RPCTranslator {
|
|
|
237
249
|
values: (string | ForeignCallArray)[];
|
|
238
250
|
}>;
|
|
239
251
|
}
|
|
240
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnBjX3RyYW5zbGF0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9ycGNfdHJhbnNsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTdFLE9BQU8sRUFDTCxLQUFLLFdBQVcsRUFDaEIsS0FBSyx1QkFBdUIsRUFDNUIsS0FBSyx1QkFBdUIsRUFFN0IsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBaUQsTUFBTSxtQkFBbUIsQ0FBQztBQUl6RyxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZGLE9BQU8sS0FBSyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0QsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBQ3JCLEtBQUssaUJBQWlCLEVBWXZCLE1BQU0sb0JBQW9CLENBQUM7QUFLNUIscUJBQWEsc0JBQXVCLFNBQVEsS0FBSztJQUMvQyxZQUFZLFVBQVUsRUFBRSxNQUFNLEVBRTdCO0NBQ0Y7QUFFRCxxQkFBYSxhQUFhO0lBV3RCLE9BQU8sQ0FBQyxZQUFZO0lBQ3BCLE9BQU8sQ0FBQyxhQUFhO0lBWHZCOzs7Ozs7OztPQVFHO0lBQ0gsWUFDVSxZQUFZLEVBQUUsc0JBQXNCLEVBQ3BDLGFBQWEsRUFDakIsV0FBVyxHQUNYLHVCQUF1QixHQUN2Qix1QkFBdUIsR0FDdkIsbUJBQW1CLEdBQ25CLG1CQUFtQixFQUNyQjtJQUtKLE9BQU8sQ0FBQyxhQUFhO0lBUXJCLE9BQU8sQ0FBQyxnQkFBZ0I7SUFReEIsT0FBTyxDQUFDLGdCQUFnQjtJQVF4QixPQUFPLENBQUMsWUFBWTtJQVFwQixPQUFPLENBQUMsWUFBWTtJQVVkLHdCQUF3Qjs7T0FJN0I7SUFFSyx1QkFBdUIsQ0FDM0IsNEJBQTRCLEVBQUUsaUJBQWlCLEVB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc_translator.d.ts","sourceRoot":"","sources":["../src/rpc_translator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"rpc_translator.d.ts","sourceRoot":"","sources":["../src/rpc_translator.ts"],"names":[],"mappings":"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"}
|
package/dest/rpc_translator.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { Fr, Point } from '@aztec/aztec.js/fields';
|
|
2
2
|
import { MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX } from '@aztec/constants';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
4
|
+
import { packAsHintedNote } from '@aztec/pxe/simulator';
|
|
5
|
+
import { EventSelector, FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
5
6
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
6
|
-
import {
|
|
7
|
+
import { BlockHash } from '@aztec/stdlib/block';
|
|
7
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;
|
|
8
11
|
export class UnavailableOracleError extends Error {
|
|
9
12
|
constructor(oracleName){
|
|
10
13
|
super(`${oracleName} oracles not available with the current handler`);
|
|
@@ -64,7 +67,7 @@ export class RPCTranslator {
|
|
|
64
67
|
}
|
|
65
68
|
async txeSetPrivateTXEContext(foreignContractAddressIsSome, foreignContractAddressValue, foreignAnchorBlockNumberIsSome, foreignAnchorBlockNumberValue) {
|
|
66
69
|
const contractAddress = fromSingle(foreignContractAddressIsSome).toBool() ? AztecAddress.fromField(fromSingle(foreignContractAddressValue)) : undefined;
|
|
67
|
-
const anchorBlockNumber = fromSingle(foreignAnchorBlockNumberIsSome).toBool() ? fromSingle(foreignAnchorBlockNumberValue).toNumber() : undefined;
|
|
70
|
+
const anchorBlockNumber = fromSingle(foreignAnchorBlockNumberIsSome).toBool() ? BlockNumber(fromSingle(foreignAnchorBlockNumberValue).toNumber()) : undefined;
|
|
68
71
|
const privateContextInputs = await this.stateHandler.enterPrivateState(contractAddress, anchorBlockNumber);
|
|
69
72
|
return toForeignCallResult(privateContextInputs.toFields().map(toSingle));
|
|
70
73
|
}
|
|
@@ -80,6 +83,12 @@ export class RPCTranslator {
|
|
|
80
83
|
}
|
|
81
84
|
// Other oracles - these get handled by the oracle handler
|
|
82
85
|
// TXE-specific oracles
|
|
86
|
+
txeGetDefaultAddress() {
|
|
87
|
+
const defaultAddress = this.handlerAsTxe().txeGetDefaultAddress();
|
|
88
|
+
return toForeignCallResult([
|
|
89
|
+
toSingle(defaultAddress)
|
|
90
|
+
]);
|
|
91
|
+
}
|
|
83
92
|
async txeGetNextBlockNumber() {
|
|
84
93
|
const nextBlockNumber = await this.handlerAsTxe().txeGetNextBlockNumber();
|
|
85
94
|
return toForeignCallResult([
|
|
@@ -163,6 +172,28 @@ export class RPCTranslator {
|
|
|
163
172
|
...arrayToBoundedVec(toArray(nullifiers), MAX_NULLIFIERS_PER_TX)
|
|
164
173
|
]);
|
|
165
174
|
}
|
|
175
|
+
async txeGetPrivateEvents(foreignSelector, foreignContractAddress, foreignScope) {
|
|
176
|
+
const selector = EventSelector.fromField(fromSingle(foreignSelector));
|
|
177
|
+
const contractAddress = addressFromSingle(foreignContractAddress);
|
|
178
|
+
const scope = addressFromSingle(foreignScope);
|
|
179
|
+
const events = await this.handlerAsTxe().txeGetPrivateEvents(selector, contractAddress, scope);
|
|
180
|
+
if (events.length > MAX_PRIVATE_EVENTS_PER_TXE_QUERY) {
|
|
181
|
+
throw new Error(`Array of length ${events.length} larger than maxLen ${MAX_PRIVATE_EVENTS_PER_TXE_QUERY}`);
|
|
182
|
+
}
|
|
183
|
+
if (events.some((e)=>e.length > MAX_EVENT_LEN)) {
|
|
184
|
+
throw new Error(`Some private event has length larger than maxLen ${MAX_EVENT_LEN}`);
|
|
185
|
+
}
|
|
186
|
+
// This is a workaround as Noir does not currently let us return nested structs with arrays. We instead return a raw
|
|
187
|
+
// multidimensional array in get_private_events_oracle and create the BoundedVecs here.
|
|
188
|
+
const rawArrayStorage = events.map((e)=>e.concat(Array(MAX_EVENT_LEN - e.length).fill(new Fr(0)))).concat(Array(MAX_PRIVATE_EVENTS_PER_TXE_QUERY - events.length).fill(Array(MAX_EVENT_LEN).fill(new Fr(0)))).flat();
|
|
189
|
+
const eventLengths = events.map((e)=>new Fr(e.length)).concat(Array(MAX_PRIVATE_EVENTS_PER_TXE_QUERY - events.length).fill(new Fr(0)));
|
|
190
|
+
const queryLength = new Fr(events.length);
|
|
191
|
+
return toForeignCallResult([
|
|
192
|
+
toArray(rawArrayStorage),
|
|
193
|
+
toArray(eventLengths),
|
|
194
|
+
toSingle(queryLength)
|
|
195
|
+
]);
|
|
196
|
+
}
|
|
166
197
|
privateStoreInExecutionCache(foreignValues, foreignHash) {
|
|
167
198
|
const values = fromArray(foreignValues);
|
|
168
199
|
const hash = fromSingle(foreignHash);
|
|
@@ -178,33 +209,35 @@ export class RPCTranslator {
|
|
|
178
209
|
}
|
|
179
210
|
// When the argument is a slice, noir automatically adds a length field to oracle call.
|
|
180
211
|
// When the argument is an array, we add the field length manually to the signature.
|
|
181
|
-
|
|
212
|
+
async utilityLog(foreignLevel, foreignMessage, _foreignLength, foreignFields) {
|
|
182
213
|
const level = fromSingle(foreignLevel).toNumber();
|
|
183
214
|
const message = fromArray(foreignMessage).map((field)=>String.fromCharCode(field.toNumber())).join('');
|
|
184
215
|
const fields = fromArray(foreignFields);
|
|
185
|
-
this.handlerAsMisc().
|
|
216
|
+
await this.handlerAsMisc().utilityLog(level, message, fields);
|
|
186
217
|
return toForeignCallResult([]);
|
|
187
218
|
}
|
|
188
|
-
async utilityStorageRead(foreignContractAddress, foreignStartStorageSlot,
|
|
219
|
+
async utilityStorageRead(foreignBlockHash, foreignContractAddress, foreignStartStorageSlot, foreignNumberOfElements) {
|
|
220
|
+
const blockHash = new BlockHash(fromSingle(foreignBlockHash));
|
|
189
221
|
const contractAddress = addressFromSingle(foreignContractAddress);
|
|
190
222
|
const startStorageSlot = fromSingle(foreignStartStorageSlot);
|
|
191
|
-
const blockNumber = fromSingle(foreignBlockNumber).toNumber();
|
|
192
223
|
const numberOfElements = fromSingle(foreignNumberOfElements).toNumber();
|
|
193
|
-
const values = await this.handlerAsUtility().utilityStorageRead(contractAddress, startStorageSlot,
|
|
224
|
+
const values = await this.handlerAsUtility().utilityStorageRead(blockHash, contractAddress, startStorageSlot, numberOfElements);
|
|
194
225
|
return toForeignCallResult([
|
|
195
226
|
toArray(values)
|
|
196
227
|
]);
|
|
197
228
|
}
|
|
198
|
-
async utilityGetPublicDataWitness(
|
|
199
|
-
const
|
|
229
|
+
async utilityGetPublicDataWitness(foreignBlockHash, foreignLeafSlot) {
|
|
230
|
+
const blockHash = new BlockHash(fromSingle(foreignBlockHash));
|
|
200
231
|
const leafSlot = fromSingle(foreignLeafSlot);
|
|
201
|
-
const witness = await this.handlerAsUtility().utilityGetPublicDataWitness(
|
|
232
|
+
const witness = await this.handlerAsUtility().utilityGetPublicDataWitness(blockHash, leafSlot);
|
|
202
233
|
if (!witness) {
|
|
203
|
-
throw new Error(`Public data witness not found for slot ${leafSlot} at block ${
|
|
234
|
+
throw new Error(`Public data witness not found for slot ${leafSlot} at block ${blockHash.toString()}.`);
|
|
204
235
|
}
|
|
205
236
|
return toForeignCallResult(witness.toNoirRepresentation());
|
|
206
237
|
}
|
|
207
|
-
async utilityGetNotes(foreignStorageSlot, foreignNumSelects, foreignSelectByIndexes, foreignSelectByOffsets, foreignSelectByLengths, foreignSelectValues, foreignSelectComparators, foreignSortByIndexes, foreignSortByOffsets, foreignSortByLengths, foreignSortOrder, foreignLimit, foreignOffset, foreignStatus, foreignMaxNotes,
|
|
238
|
+
async utilityGetNotes(foreignOwnerIsSome, foreignOwnerValue, foreignStorageSlot, foreignNumSelects, foreignSelectByIndexes, foreignSelectByOffsets, foreignSelectByLengths, foreignSelectValues, foreignSelectComparators, foreignSortByIndexes, foreignSortByOffsets, foreignSortByLengths, foreignSortOrder, foreignLimit, foreignOffset, foreignStatus, foreignMaxNotes, foreignPackedHintedNoteLength) {
|
|
239
|
+
// Parse Option<AztecAddress>: ownerIsSome is 0 for None, 1 for Some
|
|
240
|
+
const owner = fromSingle(foreignOwnerIsSome).toBool() ? AztecAddress.fromField(fromSingle(foreignOwnerValue)) : undefined;
|
|
208
241
|
const storageSlot = fromSingle(foreignStorageSlot);
|
|
209
242
|
const numSelects = fromSingle(foreignNumSelects).toNumber();
|
|
210
243
|
const selectByIndexes = fromArray(foreignSelectByIndexes).map((fr)=>fr.toNumber());
|
|
@@ -220,22 +253,31 @@ export class RPCTranslator {
|
|
|
220
253
|
const offset = fromSingle(foreignOffset).toNumber();
|
|
221
254
|
const status = fromSingle(foreignStatus).toNumber();
|
|
222
255
|
const maxNotes = fromSingle(foreignMaxNotes).toNumber();
|
|
223
|
-
const
|
|
224
|
-
const noteDatas = await this.handlerAsUtility().utilityGetNotes(storageSlot, numSelects, selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, limit, offset, status);
|
|
225
|
-
const returnDataAsArrayOfArrays = noteDatas.map(
|
|
256
|
+
const packedHintedNoteLength = fromSingle(foreignPackedHintedNoteLength).toNumber();
|
|
257
|
+
const noteDatas = await this.handlerAsUtility().utilityGetNotes(owner, storageSlot, numSelects, selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, limit, offset, status);
|
|
258
|
+
const returnDataAsArrayOfArrays = noteDatas.map((noteData)=>packAsHintedNote({
|
|
259
|
+
contractAddress: noteData.contractAddress,
|
|
260
|
+
owner: noteData.owner,
|
|
261
|
+
randomness: noteData.randomness,
|
|
262
|
+
storageSlot: noteData.storageSlot,
|
|
263
|
+
noteNonce: noteData.noteNonce,
|
|
264
|
+
isPending: noteData.isPending,
|
|
265
|
+
note: noteData.note
|
|
266
|
+
}));
|
|
226
267
|
// Now we convert each sub-array to an array of ForeignCallSingles
|
|
227
268
|
const returnDataAsArrayOfForeignCallSingleArrays = returnDataAsArrayOfArrays.map((subArray)=>subArray.map(toSingle));
|
|
228
269
|
// At last we convert the array of arrays to a bounded vec of arrays
|
|
229
|
-
return toForeignCallResult(arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfForeignCallSingleArrays, maxNotes,
|
|
270
|
+
return toForeignCallResult(arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfForeignCallSingleArrays, maxNotes, packedHintedNoteLength));
|
|
230
271
|
}
|
|
231
|
-
privateNotifyCreatedNote(foreignStorageSlot, foreignRandomness, foreignNoteTypeId, foreignNote, foreignNoteHash, foreignCounter) {
|
|
272
|
+
privateNotifyCreatedNote(foreignOwner, foreignStorageSlot, foreignRandomness, foreignNoteTypeId, foreignNote, foreignNoteHash, foreignCounter) {
|
|
273
|
+
const owner = addressFromSingle(foreignOwner);
|
|
232
274
|
const storageSlot = fromSingle(foreignStorageSlot);
|
|
233
275
|
const randomness = fromSingle(foreignRandomness);
|
|
234
276
|
const noteTypeId = NoteSelector.fromField(fromSingle(foreignNoteTypeId));
|
|
235
277
|
const note = fromArray(foreignNote);
|
|
236
278
|
const noteHash = fromSingle(foreignNoteHash);
|
|
237
279
|
const counter = fromSingle(foreignCounter).toNumber();
|
|
238
|
-
this.handlerAsPrivate().privateNotifyCreatedNote(storageSlot, randomness, noteTypeId, note, noteHash, counter);
|
|
280
|
+
this.handlerAsPrivate().privateNotifyCreatedNote(owner, storageSlot, randomness, noteTypeId, note, noteHash, counter);
|
|
239
281
|
return toForeignCallResult([]);
|
|
240
282
|
}
|
|
241
283
|
async privateNotifyNullifiedNote(foreignInnerNullifier, foreignNoteHash, foreignCounter) {
|
|
@@ -250,6 +292,14 @@ export class RPCTranslator {
|
|
|
250
292
|
await this.handlerAsPrivate().privateNotifyCreatedNullifier(innerNullifier);
|
|
251
293
|
return toForeignCallResult([]);
|
|
252
294
|
}
|
|
295
|
+
async privateIsNullifierPending(foreignInnerNullifier, foreignContractAddress) {
|
|
296
|
+
const innerNullifier = fromSingle(foreignInnerNullifier);
|
|
297
|
+
const contractAddress = addressFromSingle(foreignContractAddress);
|
|
298
|
+
const isPending = await this.handlerAsPrivate().privateIsNullifierPending(innerNullifier, contractAddress);
|
|
299
|
+
return toForeignCallResult([
|
|
300
|
+
toSingle(new Fr(isPending))
|
|
301
|
+
]);
|
|
302
|
+
}
|
|
253
303
|
async utilityCheckNullifierExists(foreignInnerNullifier) {
|
|
254
304
|
const innerNullifier = fromSingle(foreignInnerNullifier);
|
|
255
305
|
const exists = await this.handlerAsUtility().utilityCheckNullifierExists(innerNullifier);
|
|
@@ -268,15 +318,27 @@ export class RPCTranslator {
|
|
|
268
318
|
...instance.publicKeys.toFields()
|
|
269
319
|
].map(toSingle));
|
|
270
320
|
}
|
|
271
|
-
async
|
|
321
|
+
async utilityTryGetPublicKeysAndPartialAddress(foreignAddress) {
|
|
272
322
|
const address = addressFromSingle(foreignAddress);
|
|
273
|
-
const
|
|
274
|
-
return
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
323
|
+
const result = await this.handlerAsUtility().utilityTryGetPublicKeysAndPartialAddress(address);
|
|
324
|
+
// We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
|
|
325
|
+
// with two fields: `some` (a boolean) and `value` (a field array in this case).
|
|
326
|
+
if (result === undefined) {
|
|
327
|
+
// No data was found so we set `some` to 0 and pad `value` with zeros get the correct return size.
|
|
328
|
+
return toForeignCallResult([
|
|
329
|
+
toSingle(new Fr(0)),
|
|
330
|
+
toArray(Array(13).fill(new Fr(0)))
|
|
331
|
+
]);
|
|
332
|
+
} else {
|
|
333
|
+
// Data was found so we set `some` to 1 and return it along with `value`.
|
|
334
|
+
return toForeignCallResult([
|
|
335
|
+
toSingle(new Fr(1)),
|
|
336
|
+
toArray([
|
|
337
|
+
...result.publicKeys.toFields(),
|
|
338
|
+
result.partialAddress
|
|
339
|
+
])
|
|
340
|
+
]);
|
|
341
|
+
}
|
|
280
342
|
}
|
|
281
343
|
async utilityGetKeyValidationRequest(foreignPkMHash) {
|
|
282
344
|
const pkMHash = fromSingle(foreignPkMHash);
|
|
@@ -286,12 +348,12 @@ export class RPCTranslator {
|
|
|
286
348
|
privateCallPrivateFunction(_foreignTargetContractAddress, _foreignFunctionSelector, _foreignArgsHash, _foreignSideEffectCounter, _foreignIsStaticCall) {
|
|
287
349
|
throw new Error('Contract calls are forbidden inside a `TestEnvironment::private_context`, use `private_call` instead');
|
|
288
350
|
}
|
|
289
|
-
async utilityGetNullifierMembershipWitness(
|
|
290
|
-
const
|
|
351
|
+
async utilityGetNullifierMembershipWitness(foreignBlockHash, foreignNullifier) {
|
|
352
|
+
const blockHash = new BlockHash(fromSingle(foreignBlockHash));
|
|
291
353
|
const nullifier = fromSingle(foreignNullifier);
|
|
292
|
-
const witness = await this.handlerAsUtility().utilityGetNullifierMembershipWitness(
|
|
354
|
+
const witness = await this.handlerAsUtility().utilityGetNullifierMembershipWitness(blockHash, nullifier);
|
|
293
355
|
if (!witness) {
|
|
294
|
-
throw new Error(`Nullifier membership witness not found at block ${
|
|
356
|
+
throw new Error(`Nullifier membership witness not found at block ${blockHash}.`);
|
|
295
357
|
}
|
|
296
358
|
return toForeignCallResult(witness.toNoirRepresentation());
|
|
297
359
|
}
|
|
@@ -321,37 +383,42 @@ export class RPCTranslator {
|
|
|
321
383
|
toSingle(new Fr(isRevertible))
|
|
322
384
|
]);
|
|
323
385
|
}
|
|
324
|
-
|
|
325
|
-
const context =
|
|
386
|
+
utilityGetUtilityContext() {
|
|
387
|
+
const context = this.handlerAsUtility().utilityGetUtilityContext();
|
|
326
388
|
return toForeignCallResult(context.toNoirRepresentation());
|
|
327
389
|
}
|
|
328
390
|
async utilityGetBlockHeader(foreignBlockNumber) {
|
|
329
|
-
const blockNumber = fromSingle(foreignBlockNumber).toNumber();
|
|
391
|
+
const blockNumber = BlockNumber(fromSingle(foreignBlockNumber).toNumber());
|
|
330
392
|
const header = await this.handlerAsUtility().utilityGetBlockHeader(blockNumber);
|
|
331
393
|
if (!header) {
|
|
332
394
|
throw new Error(`Block header not found for block ${blockNumber}.`);
|
|
333
395
|
}
|
|
334
396
|
return toForeignCallResult(header.toFields().map(toSingle));
|
|
335
397
|
}
|
|
336
|
-
async
|
|
337
|
-
const
|
|
338
|
-
const
|
|
339
|
-
const
|
|
340
|
-
const witness = await this.handlerAsUtility().utilityGetMembershipWitness(blockNumber, treeId, leafValue);
|
|
398
|
+
async utilityGetNoteHashMembershipWitness(foreignAnchorBlockHash, foreignNoteHash) {
|
|
399
|
+
const blockHash = new BlockHash(fromSingle(foreignAnchorBlockHash));
|
|
400
|
+
const noteHash = fromSingle(foreignNoteHash);
|
|
401
|
+
const witness = await this.handlerAsUtility().utilityGetNoteHashMembershipWitness(blockHash, noteHash);
|
|
341
402
|
if (!witness) {
|
|
342
|
-
throw new Error(`
|
|
403
|
+
throw new Error(`Note hash ${noteHash} not found in the note hash tree at block ${blockHash.toString()}.`);
|
|
343
404
|
}
|
|
344
|
-
return toForeignCallResult(
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
405
|
+
return toForeignCallResult(witness.toNoirRepresentation());
|
|
406
|
+
}
|
|
407
|
+
async utilityGetBlockHashMembershipWitness(foreignAnchorBlockHash, foreignBlockHash) {
|
|
408
|
+
const anchorBlockHash = new BlockHash(fromSingle(foreignAnchorBlockHash));
|
|
409
|
+
const blockHash = new BlockHash(fromSingle(foreignBlockHash));
|
|
410
|
+
const witness = await this.handlerAsUtility().utilityGetBlockHashMembershipWitness(anchorBlockHash, blockHash);
|
|
411
|
+
if (!witness) {
|
|
412
|
+
throw new Error(`Block hash ${blockHash.toString()} not found in the archive tree at anchor block ${anchorBlockHash.toString()}.`);
|
|
413
|
+
}
|
|
414
|
+
return toForeignCallResult(witness.toNoirRepresentation());
|
|
348
415
|
}
|
|
349
|
-
async utilityGetLowNullifierMembershipWitness(
|
|
350
|
-
const
|
|
416
|
+
async utilityGetLowNullifierMembershipWitness(foreignBlockHash, foreignNullifier) {
|
|
417
|
+
const blockHash = new BlockHash(fromSingle(foreignBlockHash));
|
|
351
418
|
const nullifier = fromSingle(foreignNullifier);
|
|
352
|
-
const witness = await this.handlerAsUtility().utilityGetLowNullifierMembershipWitness(
|
|
419
|
+
const witness = await this.handlerAsUtility().utilityGetLowNullifierMembershipWitness(blockHash, nullifier);
|
|
353
420
|
if (!witness) {
|
|
354
|
-
throw new Error(`Low nullifier witness not found for nullifier ${nullifier} at block ${
|
|
421
|
+
throw new Error(`Low nullifier witness not found for nullifier ${nullifier} at block ${blockHash}.`);
|
|
355
422
|
}
|
|
356
423
|
return toForeignCallResult(witness.toNoirRepresentation());
|
|
357
424
|
}
|
|
@@ -360,11 +427,11 @@ export class RPCTranslator {
|
|
|
360
427
|
await this.handlerAsUtility().utilityFetchTaggedLogs(pendingTaggedLogArrayBaseSlot);
|
|
361
428
|
return toForeignCallResult([]);
|
|
362
429
|
}
|
|
363
|
-
async
|
|
430
|
+
async utilityValidateAndStoreEnqueuedNotesAndEvents(foreignContractAddress, foreignNoteValidationRequestsArrayBaseSlot, foreignEventValidationRequestsArrayBaseSlot) {
|
|
364
431
|
const contractAddress = AztecAddress.fromField(fromSingle(foreignContractAddress));
|
|
365
432
|
const noteValidationRequestsArrayBaseSlot = fromSingle(foreignNoteValidationRequestsArrayBaseSlot);
|
|
366
433
|
const eventValidationRequestsArrayBaseSlot = fromSingle(foreignEventValidationRequestsArrayBaseSlot);
|
|
367
|
-
await this.handlerAsUtility().
|
|
434
|
+
await this.handlerAsUtility().utilityValidateAndStoreEnqueuedNotesAndEvents(contractAddress, noteValidationRequestsArrayBaseSlot, eventValidationRequestsArrayBaseSlot);
|
|
368
435
|
return toForeignCallResult([]);
|
|
369
436
|
}
|
|
370
437
|
async utilityBulkRetrieveLogs(foreignContractAddress, foreignLogRetrievalRequestsArrayBaseSlot, foreignLogRetrievalResponsesArrayBaseSlot) {
|
|
@@ -441,13 +508,14 @@ export class RPCTranslator {
|
|
|
441
508
|
throw new Error('Offchain effects are not yet supported in the TestEnvironment');
|
|
442
509
|
}
|
|
443
510
|
// AVM opcodes
|
|
444
|
-
|
|
511
|
+
avmOpcodeEmitPublicLog(_foreignMessage) {
|
|
445
512
|
// TODO(#8811): Implement
|
|
446
513
|
return toForeignCallResult([]);
|
|
447
514
|
}
|
|
448
|
-
async avmOpcodeStorageRead(foreignSlot) {
|
|
515
|
+
async avmOpcodeStorageRead(foreignSlot, foreignContractAddress) {
|
|
449
516
|
const slot = fromSingle(foreignSlot);
|
|
450
|
-
const
|
|
517
|
+
const contractAddress = AztecAddress.fromField(fromSingle(foreignContractAddress));
|
|
518
|
+
const value = (await this.handlerAsAvm().avmOpcodeStorageRead(slot, contractAddress)).value;
|
|
451
519
|
return toForeignCallResult([
|
|
452
520
|
toSingle(new Fr(value))
|
|
453
521
|
]);
|
|
@@ -501,10 +569,9 @@ export class RPCTranslator {
|
|
|
501
569
|
await this.handlerAsAvm().avmOpcodeEmitNoteHash(noteHash);
|
|
502
570
|
return toForeignCallResult([]);
|
|
503
571
|
}
|
|
504
|
-
async avmOpcodeNullifierExists(
|
|
505
|
-
const
|
|
506
|
-
const
|
|
507
|
-
const exists = await this.handlerAsAvm().avmOpcodeNullifierExists(innerNullifier, targetAddress);
|
|
572
|
+
async avmOpcodeNullifierExists(foreignSiloedNullifier) {
|
|
573
|
+
const siloedNullifier = fromSingle(foreignSiloedNullifier);
|
|
574
|
+
const exists = await this.handlerAsAvm().avmOpcodeNullifierExists(siloedNullifier);
|
|
508
575
|
return toForeignCallResult([
|
|
509
576
|
toSingle(new Fr(exists))
|
|
510
577
|
]);
|
|
@@ -572,11 +639,11 @@ export class RPCTranslator {
|
|
|
572
639
|
toArray(returnValues)
|
|
573
640
|
]);
|
|
574
641
|
}
|
|
575
|
-
async
|
|
642
|
+
async txeExecuteUtilityFunction(foreignTargetContractAddress, foreignFunctionSelector, foreignArgs) {
|
|
576
643
|
const targetContractAddress = addressFromSingle(foreignTargetContractAddress);
|
|
577
644
|
const functionSelector = FunctionSelector.fromField(fromSingle(foreignFunctionSelector));
|
|
578
645
|
const args = fromArray(foreignArgs);
|
|
579
|
-
const returnValues = await this.handlerAsTxe().
|
|
646
|
+
const returnValues = await this.handlerAsTxe().txeExecuteUtilityFunction(targetContractAddress, functionSelector, args);
|
|
580
647
|
return toForeignCallResult([
|
|
581
648
|
toArray(returnValues)
|
|
582
649
|
]);
|