@pimlico/alto 0.0.0-main.20240612T111639 → 0.0.0-prool.20240609T212210
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/esm/cli/alto.js +59 -28
- package/esm/cli/alto.js.map +1 -1
- package/esm/cli/config/bundler.d.ts +41 -47
- package/esm/cli/config/bundler.js +77 -75
- package/esm/cli/config/bundler.js.map +1 -1
- package/esm/cli/config/index.js +18 -2
- package/esm/cli/config/index.js.map +1 -1
- package/esm/cli/config/options.js +13 -16
- package/esm/cli/config/options.js.map +1 -1
- package/esm/cli/customTransport.js +11 -7
- package/esm/cli/customTransport.js.map +1 -1
- package/esm/cli/handler.js +28 -48
- package/esm/cli/handler.js.map +1 -1
- package/esm/cli/index.js +19 -3
- package/esm/cli/index.js.map +1 -1
- package/esm/cli/instrumentation.js +22 -20
- package/esm/cli/instrumentation.js.map +1 -1
- package/esm/cli/setupServer.js +21 -17
- package/esm/cli/setupServer.js.map +1 -1
- package/esm/cli/util.js +5 -1
- package/esm/cli/util.js.map +1 -1
- package/esm/executor/executor.js +86 -71
- package/esm/executor/executor.js.map +1 -1
- package/esm/executor/executorManager.js +11 -7
- package/esm/executor/executorManager.js.map +1 -1
- package/esm/executor/index.js +20 -4
- package/esm/executor/index.js.map +1 -1
- package/esm/executor/senderManager.js +12 -8
- package/esm/executor/senderManager.js.map +1 -1
- package/esm/executor/test/utils.js +28 -22
- package/esm/executor/test/utils.js.map +1 -1
- package/esm/executor/utils.js +61 -31
- package/esm/executor/utils.js.map +1 -1
- package/esm/mempool/index.js +20 -4
- package/esm/mempool/index.js.map +1 -1
- package/esm/mempool/mempool.js +64 -58
- package/esm/mempool/mempool.js.map +1 -1
- package/esm/mempool/monitoring.js +5 -1
- package/esm/mempool/monitoring.js.map +1 -1
- package/esm/mempool/nullMempool.js +5 -1
- package/esm/mempool/nullMempool.js.map +1 -1
- package/esm/mempool/reputationManager.js +52 -51
- package/esm/mempool/reputationManager.js.map +1 -1
- package/esm/mempool/store.js +5 -1
- package/esm/mempool/store.js.map +1 -1
- package/esm/rpc/EntryPointSimulationsV07.d.ts +1 -5
- package/esm/rpc/EntryPointSimulationsV07.js +51 -45
- package/esm/rpc/EntryPointSimulationsV07.js.map +1 -1
- package/esm/rpc/ExecuteSimulator.js +5 -2
- package/esm/rpc/ExecuteSimulator.js.map +1 -1
- package/esm/rpc/gasEstimation.js +72 -69
- package/esm/rpc/gasEstimation.js.map +1 -1
- package/esm/rpc/index.js +20 -4
- package/esm/rpc/index.js.map +1 -1
- package/esm/rpc/nonceQueuer.js +20 -16
- package/esm/rpc/nonceQueuer.js.map +1 -1
- package/esm/rpc/rpcHandler.js +108 -92
- package/esm/rpc/rpcHandler.js.map +1 -1
- package/esm/rpc/server.js +58 -32
- package/esm/rpc/server.js.map +1 -1
- package/esm/rpc/validation/BundlerCollectorTracerV06.js +5 -1
- package/esm/rpc/validation/BundlerCollectorTracerV06.js.map +1 -1
- package/esm/rpc/validation/BundlerCollectorTracerV07.js +5 -1
- package/esm/rpc/validation/BundlerCollectorTracerV07.js.map +1 -1
- package/esm/rpc/validation/SafeValidator.d.ts +6 -2
- package/esm/rpc/validation/SafeValidator.js +252 -91
- package/esm/rpc/validation/SafeValidator.js.map +1 -1
- package/esm/rpc/validation/TracerResultParserV06.js +30 -26
- package/esm/rpc/validation/TracerResultParserV06.js.map +1 -1
- package/esm/rpc/validation/TracerResultParserV07.js +38 -35
- package/esm/rpc/validation/TracerResultParserV07.js.map +1 -1
- package/esm/rpc/validation/UnsafeValidator.d.ts +1 -2
- package/esm/rpc/validation/UnsafeValidator.js +107 -80
- package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
- package/esm/rpc/validation/index.js +18 -2
- package/esm/rpc/validation/index.js.map +1 -1
- package/esm/rpc/validation/tracer.js +37 -7
- package/esm/rpc/validation/tracer.js.map +1 -1
- package/esm/types/contracts/BundleBulker.js +4 -1
- package/esm/types/contracts/BundleBulker.js.map +1 -1
- package/esm/types/contracts/CallEngine.js +4 -1
- package/esm/types/contracts/CallEngine.js.map +1 -1
- package/esm/types/contracts/CodeHashGetter.js +5 -2
- package/esm/types/contracts/CodeHashGetter.js.map +1 -1
- package/esm/types/contracts/EntryPoint.js +7 -4
- package/esm/types/contracts/EntryPoint.js.map +1 -1
- package/esm/types/contracts/EntryPointSimulations.d.ts +1 -0
- package/esm/types/contracts/EntryPointSimulations.js +6 -1942
- package/esm/types/contracts/EntryPointSimulations.js.map +1 -1
- package/esm/types/contracts/IOpInflator.js +4 -1
- package/esm/types/contracts/IOpInflator.js.map +1 -1
- package/esm/types/contracts/IPaymaster.js +4 -1
- package/esm/types/contracts/IPaymaster.js.map +1 -1
- package/esm/types/contracts/Inflator.js +4 -1
- package/esm/types/contracts/Inflator.js.map +1 -1
- package/esm/types/contracts/PerOpInflator.js +4 -1
- package/esm/types/contracts/PerOpInflator.js.map +1 -1
- package/esm/types/contracts/PimlicoEntryPointSimulations.d.ts +1 -1
- package/esm/types/contracts/PimlicoEntryPointSimulations.js +5 -2
- package/esm/types/contracts/PimlicoEntryPointSimulations.js.map +1 -1
- package/esm/types/contracts/SenderCreator.js +5 -2
- package/esm/types/contracts/SenderCreator.js.map +1 -1
- package/esm/types/contracts/SimpleAccountFactory.js +5 -2
- package/esm/types/contracts/SimpleAccountFactory.js.map +1 -1
- package/esm/types/contracts/TestOpcodesAccount.js +5 -2
- package/esm/types/contracts/TestOpcodesAccount.js.map +1 -1
- package/esm/types/contracts/TestOpcodesAccountFactory.js +5 -2
- package/esm/types/contracts/TestOpcodesAccountFactory.js.map +1 -1
- package/esm/types/contracts/TestStorageAccount.js +5 -2
- package/esm/types/contracts/TestStorageAccount.js.map +1 -1
- package/esm/types/contracts/index.js +32 -16
- package/esm/types/contracts/index.js.map +1 -1
- package/esm/types/gasPrice.js +17 -14
- package/esm/types/gasPrice.js.map +1 -1
- package/esm/types/index.js +26 -10
- package/esm/types/index.js.map +1 -1
- package/esm/types/interfaces.js +2 -1
- package/esm/types/mempool.js +10 -5
- package/esm/types/mempool.js.map +1 -1
- package/esm/types/schemas.d.ts +38 -38
- package/esm/types/schemas.js +284 -254
- package/esm/types/schemas.js.map +1 -1
- package/esm/types/test/validationTestErrors.js +5 -2
- package/esm/types/test/validationTestErrors.js.map +1 -1
- package/esm/types/utils.js +9 -5
- package/esm/types/utils.js.map +1 -1
- package/esm/types/validation.d.ts +12 -12
- package/esm/types/validation.js +142 -139
- package/esm/types/validation.js.map +1 -1
- package/esm/utils/bigInt.js +7 -2
- package/esm/utils/bigInt.js.map +1 -1
- package/esm/utils/compressionHandler.js +11 -7
- package/esm/utils/compressionHandler.js.map +1 -1
- package/esm/utils/gasPriceManager.js +57 -30
- package/esm/utils/gasPriceManager.js.map +1 -1
- package/esm/utils/helpers.js +10 -5
- package/esm/utils/helpers.js.map +1 -1
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.js +26 -9
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/logger.js +19 -10
- package/esm/utils/logger.js.map +1 -1
- package/esm/utils/metrics.js +24 -20
- package/esm/utils/metrics.js.map +1 -1
- package/esm/utils/rpc-reply.js +3 -1
- package/esm/utils/rpc-reply.js.map +1 -1
- package/esm/utils/test.js +67 -36
- package/esm/utils/test.js.map +1 -1
- package/esm/utils/toArgs.d.ts +36 -0
- package/esm/utils/toArgs.js +87 -0
- package/esm/utils/toArgs.js.map +1 -0
- package/esm/utils/userop.d.ts +2 -2
- package/esm/utils/userop.js +108 -63
- package/esm/utils/userop.js.map +1 -1
- package/esm/utils/validation.js +99 -64
- package/esm/utils/validation.js.map +1 -1
- package/lib/cli/config/bundler.d.ts +0 -6
- package/lib/cli/config/bundler.js +0 -1
- package/lib/cli/config/bundler.js.map +1 -1
- package/lib/cli/config/options.js +0 -6
- package/lib/cli/config/options.js.map +1 -1
- package/lib/cli/handler.js +1 -25
- package/lib/cli/handler.js.map +1 -1
- package/lib/executor/executor.js +2 -15
- package/lib/executor/executor.js.map +1 -1
- package/lib/mempool/mempool.js +7 -5
- package/lib/mempool/mempool.js.map +1 -1
- package/lib/mempool/reputationManager.js +3 -7
- package/lib/mempool/reputationManager.js.map +1 -1
- package/lib/rpc/EntryPointSimulationsV07.d.ts +1 -5
- package/lib/rpc/EntryPointSimulationsV07.js +2 -3
- package/lib/rpc/EntryPointSimulationsV07.js.map +1 -1
- package/lib/rpc/gasEstimation.js +3 -7
- package/lib/rpc/gasEstimation.js.map +1 -1
- package/lib/rpc/rpcHandler.js +7 -18
- package/lib/rpc/rpcHandler.js.map +1 -1
- package/lib/rpc/server.js +0 -4
- package/lib/rpc/server.js.map +1 -1
- package/lib/rpc/validation/SafeValidator.d.ts +6 -2
- package/lib/rpc/validation/SafeValidator.js +205 -48
- package/lib/rpc/validation/SafeValidator.js.map +1 -1
- package/lib/rpc/validation/TracerResultParserV07.js +2 -6
- package/lib/rpc/validation/TracerResultParserV07.js.map +1 -1
- package/lib/rpc/validation/UnsafeValidator.d.ts +1 -2
- package/lib/rpc/validation/UnsafeValidator.js +68 -45
- package/lib/rpc/validation/UnsafeValidator.js.map +1 -1
- package/lib/types/contracts/EntryPointSimulations.d.ts +1 -0
- package/lib/types/contracts/EntryPointSimulations.js +3 -1942
- package/lib/types/contracts/EntryPointSimulations.js.map +1 -1
- package/lib/types/contracts/PimlicoEntryPointSimulations.d.ts +1 -1
- package/lib/types/contracts/PimlicoEntryPointSimulations.js +2 -2
- package/lib/types/contracts/PimlicoEntryPointSimulations.js.map +1 -1
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +1 -0
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/toArgs.d.ts +36 -0
- package/lib/utils/toArgs.js +87 -0
- package/lib/utils/toArgs.js.map +1 -0
- package/lib/utils/userop.d.ts +2 -2
- package/lib/utils/userop.js +25 -2
- package/lib/utils/userop.js.map +1 -1
- package/package.json +3 -2
- package/esm/index.d.ts +0 -2
- package/esm/index.js +0 -2
- package/esm/index.js.map +0 -1
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -4
- package/lib/index.js.map +0 -1
package/esm/rpc/rpcHandler.js
CHANGED
|
@@ -1,10 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.RpcHandler = void 0;
|
|
27
|
+
const types_1 = require("../types/index.js");
|
|
28
|
+
const utils_1 = require("../utils/index.js");
|
|
29
|
+
const viem_1 = require("viem");
|
|
30
|
+
const chains = __importStar(require("viem/chains"));
|
|
31
|
+
const zod_1 = require("zod");
|
|
32
|
+
const zod_validation_error_1 = require("zod-validation-error");
|
|
33
|
+
class RpcHandler {
|
|
8
34
|
entryPoints;
|
|
9
35
|
publicClient;
|
|
10
36
|
validator;
|
|
@@ -155,9 +181,9 @@ export class RpcHandler {
|
|
|
155
181
|
throw new Error(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
156
182
|
}
|
|
157
183
|
if (userOperation.maxFeePerGas === 0n) {
|
|
158
|
-
throw new RpcError("user operation max fee per gas must be larger than 0 during gas estimation");
|
|
184
|
+
throw new types_1.RpcError("user operation max fee per gas must be larger than 0 during gas estimation");
|
|
159
185
|
}
|
|
160
|
-
const preVerificationGas = ((await calcPreVerificationGas(this.publicClient, userOperation, entryPoint, this.chainId, this.chainType, this.gasPriceManager, false)) *
|
|
186
|
+
const preVerificationGas = ((await (0, utils_1.calcPreVerificationGas)(this.publicClient, userOperation, entryPoint, this.chainId, this.chainType, this.gasPriceManager, false)) *
|
|
161
187
|
110n) /
|
|
162
188
|
100n;
|
|
163
189
|
userOperation.preVerificationGas = 1000000n;
|
|
@@ -171,7 +197,7 @@ export class RpcHandler {
|
|
|
171
197
|
userOperation.verificationGasLimit = 1000000n;
|
|
172
198
|
userOperation.callGasLimit = 1000000n;
|
|
173
199
|
}
|
|
174
|
-
if (isVersion07(userOperation)) {
|
|
200
|
+
if ((0, utils_1.isVersion07)(userOperation)) {
|
|
175
201
|
userOperation.paymasterPostOpGasLimit = 2000000n;
|
|
176
202
|
userOperation.paymasterVerificationGasLimit = 5000000n;
|
|
177
203
|
}
|
|
@@ -184,27 +210,27 @@ export class RpcHandler {
|
|
|
184
210
|
// If the nonce is less than the current nonce, the user operation has already been executed
|
|
185
211
|
// If the nonce is greater than the current nonce, we may have missing user operations in the mempool
|
|
186
212
|
const currentNonceValue = await this.getNonceValue(userOperation, entryPoint);
|
|
187
|
-
const [, userOperationNonceValue] = getNonceKeyAndValue(userOperation.nonce);
|
|
213
|
+
const [, userOperationNonceValue] = (0, utils_1.getNonceKeyAndValue)(userOperation.nonce);
|
|
188
214
|
let queuedUserOperations = [];
|
|
189
215
|
if (userOperationNonceValue < currentNonceValue) {
|
|
190
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
216
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
191
217
|
}
|
|
192
218
|
if (userOperationNonceValue > currentNonceValue) {
|
|
193
219
|
// Nonce queues are supported only for v7 user operations
|
|
194
|
-
if (isVersion06(userOperation)) {
|
|
195
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
220
|
+
if ((0, utils_1.isVersion06)(userOperation)) {
|
|
221
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
196
222
|
}
|
|
197
223
|
queuedUserOperations = await this.mempool.getQueuedUserOperations(userOperation, entryPoint, currentNonceValue);
|
|
198
224
|
if (userOperationNonceValue >
|
|
199
225
|
currentNonceValue + BigInt(queuedUserOperations.length)) {
|
|
200
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
226
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
201
227
|
}
|
|
202
228
|
}
|
|
203
229
|
const executionResult = await this.validator.getExecutionResult(userOperation, entryPoint, queuedUserOperations, stateOverrides);
|
|
204
|
-
let { verificationGasLimit, callGasLimit } = calcVerificationGasAndCallGasLimit(userOperation, executionResult.data.executionResult, this.chainId, executionResult.data.callDataResult);
|
|
230
|
+
let { verificationGasLimit, callGasLimit } = (0, utils_1.calcVerificationGasAndCallGasLimit)(userOperation, executionResult.data.executionResult, this.chainId, executionResult.data.callDataResult);
|
|
205
231
|
let paymasterVerificationGasLimit = 0n;
|
|
206
232
|
let paymasterPostOpGasLimit = 0n;
|
|
207
|
-
if (isVersion07(userOperation) &&
|
|
233
|
+
if ((0, utils_1.isVersion07)(userOperation) &&
|
|
208
234
|
userOperation.paymaster !== null &&
|
|
209
235
|
"paymasterVerificationGasLimit" in
|
|
210
236
|
executionResult.data.executionResult &&
|
|
@@ -227,12 +253,12 @@ export class RpcHandler {
|
|
|
227
253
|
}
|
|
228
254
|
if (this.chainId === chains.base.id ||
|
|
229
255
|
this.chainId === chains.optimism.id) {
|
|
230
|
-
callGasLimit = maxBigInt(callGasLimit, 120000n);
|
|
256
|
+
callGasLimit = (0, utils_1.maxBigInt)(callGasLimit, 120000n);
|
|
231
257
|
}
|
|
232
258
|
if (userOperation.callData === "0x") {
|
|
233
259
|
callGasLimit = 0n;
|
|
234
260
|
}
|
|
235
|
-
if (isVersion07(userOperation)) {
|
|
261
|
+
if ((0, utils_1.isVersion07)(userOperation)) {
|
|
236
262
|
return {
|
|
237
263
|
preVerificationGas,
|
|
238
264
|
verificationGasLimit,
|
|
@@ -259,7 +285,7 @@ export class RpcHandler {
|
|
|
259
285
|
let status = "rejected";
|
|
260
286
|
try {
|
|
261
287
|
status = await this.addToMempoolIfValid(userOperation, entryPoint, apiVersion);
|
|
262
|
-
const hash = getUserOperationHash(userOperation, entryPoint, this.chainId);
|
|
288
|
+
const hash = (0, utils_1.getUserOperationHash)(userOperation, entryPoint, this.chainId);
|
|
263
289
|
return hash;
|
|
264
290
|
}
|
|
265
291
|
catch (error) {
|
|
@@ -276,8 +302,8 @@ export class RpcHandler {
|
|
|
276
302
|
}
|
|
277
303
|
}
|
|
278
304
|
async eth_getUserOperationByHash(userOperationHash) {
|
|
279
|
-
const userOperationEventAbiItem = getAbiItem({
|
|
280
|
-
abi: EntryPointV06Abi,
|
|
305
|
+
const userOperationEventAbiItem = (0, viem_1.getAbiItem)({
|
|
306
|
+
abi: types_1.EntryPointV06Abi,
|
|
281
307
|
name: "UserOperationEvent"
|
|
282
308
|
});
|
|
283
309
|
let fromBlock = undefined;
|
|
@@ -313,7 +339,7 @@ export class RpcHandler {
|
|
|
313
339
|
return await this.publicClient.getTransaction({ hash: txHash });
|
|
314
340
|
}
|
|
315
341
|
catch (e) {
|
|
316
|
-
if (e instanceof TransactionNotFoundError) {
|
|
342
|
+
if (e instanceof viem_1.TransactionNotFoundError) {
|
|
317
343
|
return getTransaction(txHash);
|
|
318
344
|
}
|
|
319
345
|
throw e;
|
|
@@ -323,39 +349,28 @@ export class RpcHandler {
|
|
|
323
349
|
if (!tx.to) {
|
|
324
350
|
return null;
|
|
325
351
|
}
|
|
326
|
-
let op;
|
|
352
|
+
let op = undefined;
|
|
327
353
|
try {
|
|
328
|
-
const decoded = decodeFunctionData({
|
|
329
|
-
abi:
|
|
354
|
+
const decoded = (0, viem_1.decodeFunctionData)({
|
|
355
|
+
abi: types_1.EntryPointV06Abi,
|
|
330
356
|
data: tx.input
|
|
331
357
|
});
|
|
332
358
|
if (decoded.functionName !== "handleOps") {
|
|
333
359
|
return null;
|
|
334
360
|
}
|
|
335
361
|
const ops = decoded.args[0];
|
|
336
|
-
|
|
362
|
+
op = ops.find((op) => op.sender === userOperationEvent.args.sender &&
|
|
337
363
|
op.nonce === userOperationEvent.args.nonce);
|
|
338
|
-
if (foundOp === undefined) {
|
|
339
|
-
return null;
|
|
340
|
-
}
|
|
341
|
-
const handleOpsV07AbiItem = getAbiItem({
|
|
342
|
-
abi: EntryPointV07Abi,
|
|
343
|
-
name: "handleOps"
|
|
344
|
-
});
|
|
345
|
-
const handleOpsV07Selector = toFunctionSelector(handleOpsV07AbiItem);
|
|
346
|
-
if (slice(tx.input, 0, 4) === handleOpsV07Selector) {
|
|
347
|
-
op = toUnpackedUserOperation(foundOp);
|
|
348
|
-
}
|
|
349
|
-
else {
|
|
350
|
-
op = foundOp;
|
|
351
|
-
}
|
|
352
364
|
}
|
|
353
365
|
catch {
|
|
354
366
|
return null;
|
|
355
367
|
}
|
|
368
|
+
if (op === undefined) {
|
|
369
|
+
return null;
|
|
370
|
+
}
|
|
356
371
|
const result = {
|
|
357
|
-
userOperation: op,
|
|
358
|
-
entryPoint: getAddress(tx.to),
|
|
372
|
+
userOperation: (0, utils_1.isVersion06)(op) ? op : (0, utils_1.toUnpackedUserOperation)(op),
|
|
373
|
+
entryPoint: (0, viem_1.getAddress)(tx.to),
|
|
359
374
|
transactionHash: txHash,
|
|
360
375
|
blockHash: tx.blockHash ?? "0x",
|
|
361
376
|
blockNumber: BigInt(tx.blockNumber ?? 0n)
|
|
@@ -363,8 +378,8 @@ export class RpcHandler {
|
|
|
363
378
|
return result;
|
|
364
379
|
}
|
|
365
380
|
async eth_getUserOperationReceipt(userOperationHash) {
|
|
366
|
-
const userOperationEventAbiItem = getAbiItem({
|
|
367
|
-
abi: EntryPointV06Abi,
|
|
381
|
+
const userOperationEventAbiItem = (0, viem_1.getAbiItem)({
|
|
382
|
+
abi: types_1.EntryPointV06Abi,
|
|
368
383
|
name: "UserOperationEvent"
|
|
369
384
|
});
|
|
370
385
|
let fromBlock = undefined;
|
|
@@ -413,7 +428,7 @@ export class RpcHandler {
|
|
|
413
428
|
});
|
|
414
429
|
}
|
|
415
430
|
catch (e) {
|
|
416
|
-
if (e instanceof TransactionReceiptNotFoundError) {
|
|
431
|
+
if (e instanceof viem_1.TransactionReceiptNotFoundError) {
|
|
417
432
|
continue;
|
|
418
433
|
}
|
|
419
434
|
throw e;
|
|
@@ -431,13 +446,13 @@ export class RpcHandler {
|
|
|
431
446
|
// transaction pending
|
|
432
447
|
return null;
|
|
433
448
|
}
|
|
434
|
-
const userOperationRevertReasonAbi = parseAbi([
|
|
449
|
+
const userOperationRevertReasonAbi = (0, viem_1.parseAbi)([
|
|
435
450
|
"event UserOperationRevertReason(bytes32 indexed userOpHash, address indexed sender, uint256 nonce, bytes revertReason)"
|
|
436
451
|
]);
|
|
437
|
-
const userOperationRevertReasonTopicEvent = encodeEventTopics({
|
|
452
|
+
const userOperationRevertReasonTopicEvent = (0, viem_1.encodeEventTopics)({
|
|
438
453
|
abi: userOperationRevertReasonAbi
|
|
439
454
|
})[0];
|
|
440
|
-
let entryPoint = zeroAddress;
|
|
455
|
+
let entryPoint = viem_1.zeroAddress;
|
|
441
456
|
let revertReason = undefined;
|
|
442
457
|
let startIndex = -1;
|
|
443
458
|
let endIndex = -1;
|
|
@@ -458,7 +473,7 @@ export class RpcHandler {
|
|
|
458
473
|
// process UserOperationRevertReason
|
|
459
474
|
if (log.topics[1] === userOperationEvent.topics[1]) {
|
|
460
475
|
// it's our userOpHash. capture revert reason.
|
|
461
|
-
const decodedLog = decodeEventLog({
|
|
476
|
+
const decodedLog = (0, viem_1.decodeEventLog)({
|
|
462
477
|
abi: userOperationRevertReasonAbi,
|
|
463
478
|
data: log.data,
|
|
464
479
|
topics: log.topics
|
|
@@ -471,21 +486,21 @@ export class RpcHandler {
|
|
|
471
486
|
throw new Error("fatal: no UserOperationEvent in logs");
|
|
472
487
|
}
|
|
473
488
|
const filteredLogs = logs.slice(startIndex + 1, endIndex);
|
|
474
|
-
const logsParsing = z.array(logSchema).safeParse(filteredLogs);
|
|
489
|
+
const logsParsing = zod_1.z.array(types_1.logSchema).safeParse(filteredLogs);
|
|
475
490
|
if (!logsParsing.success) {
|
|
476
|
-
const err = fromZodError(logsParsing.error);
|
|
491
|
+
const err = (0, zod_validation_error_1.fromZodError)(logsParsing.error);
|
|
477
492
|
throw err;
|
|
478
493
|
}
|
|
479
|
-
const receiptParsing = receiptSchema.safeParse({
|
|
494
|
+
const receiptParsing = types_1.receiptSchema.safeParse({
|
|
480
495
|
...receipt,
|
|
481
496
|
status: receipt.status === "success" ? 1 : 0
|
|
482
497
|
});
|
|
483
498
|
if (!receiptParsing.success) {
|
|
484
|
-
const err = fromZodError(receiptParsing.error);
|
|
499
|
+
const err = (0, zod_validation_error_1.fromZodError)(receiptParsing.error);
|
|
485
500
|
throw err;
|
|
486
501
|
}
|
|
487
502
|
let paymaster = userOperationEvent.args.paymaster;
|
|
488
|
-
paymaster = paymaster === zeroAddress ? undefined : paymaster;
|
|
503
|
+
paymaster = paymaster === viem_1.zeroAddress ? undefined : paymaster;
|
|
489
504
|
const userOperationReceipt = {
|
|
490
505
|
userOpHash: userOperationHash,
|
|
491
506
|
entryPoint,
|
|
@@ -503,7 +518,7 @@ export class RpcHandler {
|
|
|
503
518
|
}
|
|
504
519
|
debug_bundler_clearState() {
|
|
505
520
|
if (!this.enableDebugEndpoints) {
|
|
506
|
-
throw new RpcError("debug_bundler_clearState is only available in development environment");
|
|
521
|
+
throw new types_1.RpcError("debug_bundler_clearState is only available in development environment");
|
|
507
522
|
}
|
|
508
523
|
this.mempool.clear();
|
|
509
524
|
this.reputationManager.clear();
|
|
@@ -511,7 +526,7 @@ export class RpcHandler {
|
|
|
511
526
|
}
|
|
512
527
|
debug_bundler_clearMempool() {
|
|
513
528
|
if (!this.enableDebugEndpoints) {
|
|
514
|
-
throw new RpcError("debug_bundler_clearMempool is only available in development environment");
|
|
529
|
+
throw new types_1.RpcError("debug_bundler_clearMempool is only available in development environment");
|
|
515
530
|
}
|
|
516
531
|
this.mempool.clear();
|
|
517
532
|
this.reputationManager.clearEntityCount();
|
|
@@ -519,53 +534,53 @@ export class RpcHandler {
|
|
|
519
534
|
}
|
|
520
535
|
async debug_bundler_dumpMempool(entryPoint) {
|
|
521
536
|
if (!this.enableDebugEndpoints) {
|
|
522
|
-
throw new RpcError("debug_bundler_dumpMempool is only available in development environment");
|
|
537
|
+
throw new types_1.RpcError("debug_bundler_dumpMempool is only available in development environment");
|
|
523
538
|
}
|
|
524
539
|
if (!this.entryPoints.includes(entryPoint)) {
|
|
525
|
-
throw new RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
540
|
+
throw new types_1.RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
526
541
|
}
|
|
527
542
|
return this.mempool
|
|
528
543
|
.dumpOutstanding()
|
|
529
|
-
.map((userOpInfo) => deriveUserOperation(userOpInfo.mempoolUserOperation));
|
|
544
|
+
.map((userOpInfo) => (0, types_1.deriveUserOperation)(userOpInfo.mempoolUserOperation));
|
|
530
545
|
}
|
|
531
546
|
async debug_bundler_sendBundleNow() {
|
|
532
547
|
if (!this.enableDebugEndpoints) {
|
|
533
|
-
throw new RpcError("debug_bundler_sendBundleNow is only available in development environment");
|
|
548
|
+
throw new types_1.RpcError("debug_bundler_sendBundleNow is only available in development environment");
|
|
534
549
|
}
|
|
535
550
|
const transactions = await this.executorManager.bundleNow();
|
|
536
551
|
return transactions[0];
|
|
537
552
|
}
|
|
538
553
|
debug_bundler_setBundlingMode(bundlingMode) {
|
|
539
554
|
if (!this.enableDebugEndpoints) {
|
|
540
|
-
throw new RpcError("debug_bundler_setBundlingMode is only available in development environment");
|
|
555
|
+
throw new types_1.RpcError("debug_bundler_setBundlingMode is only available in development environment");
|
|
541
556
|
}
|
|
542
557
|
this.executorManager.setBundlingMode(bundlingMode);
|
|
543
558
|
return "ok";
|
|
544
559
|
}
|
|
545
560
|
debug_bundler_dumpReputation(entryPoint) {
|
|
546
561
|
if (!this.enableDebugEndpoints) {
|
|
547
|
-
throw new RpcError("debug_bundler_setRe is only available in development environment");
|
|
562
|
+
throw new types_1.RpcError("debug_bundler_setRe is only available in development environment");
|
|
548
563
|
}
|
|
549
564
|
if (!this.entryPoints.includes(entryPoint)) {
|
|
550
|
-
throw new RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
565
|
+
throw new types_1.RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
551
566
|
}
|
|
552
567
|
return this.reputationManager.dumpReputations(entryPoint);
|
|
553
568
|
}
|
|
554
569
|
async debug_bundler_getStakeStatus(address, entryPoint) {
|
|
555
570
|
if (!this.enableDebugEndpoints) {
|
|
556
|
-
throw new RpcError("debug_bundler_getStakeStatus is only available in development environment");
|
|
571
|
+
throw new types_1.RpcError("debug_bundler_getStakeStatus is only available in development environment");
|
|
557
572
|
}
|
|
558
573
|
if (!this.entryPoints.includes(entryPoint)) {
|
|
559
|
-
throw new RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
574
|
+
throw new types_1.RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
560
575
|
}
|
|
561
|
-
return bundlerGetStakeStatusResponseSchema.parse({
|
|
576
|
+
return types_1.bundlerGetStakeStatusResponseSchema.parse({
|
|
562
577
|
method: "debug_bundler_getStakeStatus",
|
|
563
578
|
result: await this.reputationManager.getStakeStatus(entryPoint, address)
|
|
564
579
|
}).result;
|
|
565
580
|
}
|
|
566
581
|
debug_bundler_setReputation(args) {
|
|
567
582
|
if (!this.enableDebugEndpoints) {
|
|
568
|
-
throw new RpcError("debug_bundler_setReputation is only available in development environment");
|
|
583
|
+
throw new types_1.RpcError("debug_bundler_setReputation is only available in development environment");
|
|
569
584
|
}
|
|
570
585
|
this.reputationManager.setReputation(args[1], args[0]);
|
|
571
586
|
return "ok";
|
|
@@ -593,15 +608,15 @@ export class RpcHandler {
|
|
|
593
608
|
}
|
|
594
609
|
// check if we want to bundle userOperation. If yes, add to mempool
|
|
595
610
|
async addToMempoolIfValid(op, entryPoint, apiVersion) {
|
|
596
|
-
const userOperation = deriveUserOperation(op);
|
|
611
|
+
const userOperation = (0, types_1.deriveUserOperation)(op);
|
|
597
612
|
if (!this.entryPoints.includes(entryPoint)) {
|
|
598
|
-
throw new RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
613
|
+
throw new types_1.RpcError(`EntryPoint ${entryPoint} not supported, supported EntryPoints: ${this.entryPoints.join(", ")}`);
|
|
599
614
|
}
|
|
600
615
|
if (this.chainId === chains.celoAlfajores.id ||
|
|
601
616
|
this.chainId === chains.celo.id) {
|
|
602
617
|
if (userOperation.maxFeePerGas !==
|
|
603
618
|
userOperation.maxPriorityFeePerGas) {
|
|
604
|
-
throw new RpcError("maxPriorityFeePerGas must equal maxFeePerGas on Celo chains");
|
|
619
|
+
throw new types_1.RpcError("maxPriorityFeePerGas must equal maxFeePerGas on Celo chains");
|
|
605
620
|
}
|
|
606
621
|
}
|
|
607
622
|
if (apiVersion !== "v1") {
|
|
@@ -611,24 +626,24 @@ export class RpcHandler {
|
|
|
611
626
|
});
|
|
612
627
|
}
|
|
613
628
|
if (userOperation.verificationGasLimit < 10000n) {
|
|
614
|
-
throw new RpcError("verificationGasLimit must be at least 10000");
|
|
629
|
+
throw new types_1.RpcError("verificationGasLimit must be at least 10000");
|
|
615
630
|
}
|
|
616
631
|
this.logger.trace({ userOperation, entryPoint }, "beginning validation");
|
|
617
632
|
if (userOperation.preVerificationGas === 0n ||
|
|
618
633
|
userOperation.verificationGasLimit === 0n) {
|
|
619
|
-
throw new RpcError("user operation gas limits must be larger than 0");
|
|
634
|
+
throw new types_1.RpcError("user operation gas limits must be larger than 0");
|
|
620
635
|
}
|
|
621
636
|
const currentNonceValue = await this.getNonceValue(userOperation, entryPoint);
|
|
622
|
-
const [, userOperationNonceValue] = getNonceKeyAndValue(userOperation.nonce);
|
|
637
|
+
const [, userOperationNonceValue] = (0, utils_1.getNonceKeyAndValue)(userOperation.nonce);
|
|
623
638
|
if (userOperationNonceValue < currentNonceValue) {
|
|
624
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
639
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
625
640
|
}
|
|
626
641
|
if (userOperationNonceValue > currentNonceValue + 10n) {
|
|
627
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
642
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
628
643
|
}
|
|
629
644
|
let queuedUserOperations = [];
|
|
630
645
|
if (userOperationNonceValue > currentNonceValue &&
|
|
631
|
-
isVersion07(userOperation)) {
|
|
646
|
+
(0, utils_1.isVersion07)(userOperation)) {
|
|
632
647
|
queuedUserOperations = await this.mempool.getQueuedUserOperations(userOperation, entryPoint, currentNonceValue);
|
|
633
648
|
}
|
|
634
649
|
if (userOperationNonceValue ===
|
|
@@ -636,7 +651,7 @@ export class RpcHandler {
|
|
|
636
651
|
if (this.dangerousSkipUserOperationValidation) {
|
|
637
652
|
const success = this.mempool.add(op, entryPoint);
|
|
638
653
|
if (!success) {
|
|
639
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
654
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
640
655
|
}
|
|
641
656
|
}
|
|
642
657
|
else {
|
|
@@ -648,7 +663,7 @@ export class RpcHandler {
|
|
|
648
663
|
await this.mempool.checkEntityMultipleRoleViolation(userOperation);
|
|
649
664
|
const success = this.mempool.add(op, entryPoint, validationResult.referencedContracts);
|
|
650
665
|
if (!success) {
|
|
651
|
-
throw new RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", ValidationErrors.InvalidFields);
|
|
666
|
+
throw new types_1.RpcError("UserOperation reverted during simulation with reason: AA25 invalid account nonce", types_1.ValidationErrors.InvalidFields);
|
|
652
667
|
}
|
|
653
668
|
return "added";
|
|
654
669
|
}
|
|
@@ -668,7 +683,7 @@ export class RpcHandler {
|
|
|
668
683
|
};
|
|
669
684
|
// check userOps inputs.
|
|
670
685
|
status = await this.addToMempoolIfValid(compressedUserOp, entryPoint, apiVersion);
|
|
671
|
-
const hash = getUserOperationHash(inflatedOp, entryPoint, this.chainId);
|
|
686
|
+
const hash = (0, utils_1.getUserOperationHash)(inflatedOp, entryPoint, this.chainId);
|
|
672
687
|
return hash;
|
|
673
688
|
}
|
|
674
689
|
catch (error) {
|
|
@@ -687,16 +702,16 @@ export class RpcHandler {
|
|
|
687
702
|
async validateAndInflateCompressedUserOperation(inflatorAddress, compressedCalldata) {
|
|
688
703
|
// check if inflator is registered with our PerOpInflator.
|
|
689
704
|
if (this.compressionHandler === null) {
|
|
690
|
-
throw new RpcError("Endpoint not supported");
|
|
705
|
+
throw new types_1.RpcError("Endpoint not supported");
|
|
691
706
|
}
|
|
692
707
|
const inflatorId = await this.compressionHandler.getInflatorRegisteredId(inflatorAddress, this.publicClient);
|
|
693
708
|
if (inflatorId === 0) {
|
|
694
|
-
throw new RpcError(`Inflator ${inflatorAddress} is not registered`, ValidationErrors.InvalidFields);
|
|
709
|
+
throw new types_1.RpcError(`Inflator ${inflatorAddress} is not registered`, types_1.ValidationErrors.InvalidFields);
|
|
695
710
|
}
|
|
696
711
|
// infalte + start to validate user op.
|
|
697
|
-
const inflatorContract = getContract({
|
|
712
|
+
const inflatorContract = (0, viem_1.getContract)({
|
|
698
713
|
address: inflatorAddress,
|
|
699
|
-
abi: IOpInflatorAbi,
|
|
714
|
+
abi: types_1.IOpInflatorAbi,
|
|
700
715
|
client: {
|
|
701
716
|
public: this.publicClient
|
|
702
717
|
}
|
|
@@ -708,31 +723,32 @@ export class RpcHandler {
|
|
|
708
723
|
]);
|
|
709
724
|
}
|
|
710
725
|
catch (e) {
|
|
711
|
-
throw new RpcError(`Inflator ${inflatorAddress} failed to inflate calldata ${compressedCalldata}, due to ${e}`, ValidationErrors.InvalidFields);
|
|
726
|
+
throw new types_1.RpcError(`Inflator ${inflatorAddress} failed to inflate calldata ${compressedCalldata}, due to ${e}`, types_1.ValidationErrors.InvalidFields);
|
|
712
727
|
}
|
|
713
728
|
// check if perUseropIsRegisterd to target BundleBulker
|
|
714
729
|
const perOpInflatorId = this.compressionHandler.perOpInflatorId;
|
|
715
730
|
if (perOpInflatorId === 0) {
|
|
716
|
-
throw new RpcError(`PerUserOp ${this.compressionHandler.perOpInflatorAddress} has not been registered with BundelBulker`, ValidationErrors.InvalidFields);
|
|
731
|
+
throw new types_1.RpcError(`PerUserOp ${this.compressionHandler.perOpInflatorAddress} has not been registered with BundelBulker`, types_1.ValidationErrors.InvalidFields);
|
|
717
732
|
}
|
|
718
733
|
return { inflatedOp, inflatorId };
|
|
719
734
|
}
|
|
720
735
|
async getNonceValue(userOperation, entryPoint) {
|
|
721
|
-
const entryPointContract = getContract({
|
|
736
|
+
const entryPointContract = (0, viem_1.getContract)({
|
|
722
737
|
address: entryPoint,
|
|
723
|
-
abi: isVersion06(userOperation)
|
|
724
|
-
? EntryPointV06Abi
|
|
725
|
-
: EntryPointV07Abi,
|
|
738
|
+
abi: (0, utils_1.isVersion06)(userOperation)
|
|
739
|
+
? types_1.EntryPointV06Abi
|
|
740
|
+
: types_1.EntryPointV07Abi,
|
|
726
741
|
client: {
|
|
727
742
|
public: this.publicClient
|
|
728
743
|
}
|
|
729
744
|
});
|
|
730
|
-
const [nonceKey] = getNonceKeyAndValue(userOperation.nonce);
|
|
745
|
+
const [nonceKey] = (0, utils_1.getNonceKeyAndValue)(userOperation.nonce);
|
|
731
746
|
const getNonceResult = await entryPointContract.read.getNonce([userOperation.sender, nonceKey], {
|
|
732
747
|
blockTag: "latest"
|
|
733
748
|
});
|
|
734
|
-
const [_, currentNonceValue] = getNonceKeyAndValue(getNonceResult);
|
|
749
|
+
const [_, currentNonceValue] = (0, utils_1.getNonceKeyAndValue)(getNonceResult);
|
|
735
750
|
return currentNonceValue;
|
|
736
751
|
}
|
|
737
752
|
}
|
|
753
|
+
exports.RpcHandler = RpcHandler;
|
|
738
754
|
//# sourceMappingURL=rpcHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpcHandler.js","sourceRoot":"","sources":["../../rpc/rpcHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rpcHandler.js","sourceRoot":"","sources":["../../rpc/rpcHandler.ts"],"names":[],"mappings":"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"}
|