diff --git a/packages/entrykit/src/onboarding/useSetupAppAccount.ts b/packages/entrykit/src/onboarding/useSetupAppAccount.ts index a12f31bb14..2d9a4bf175 100644 --- a/packages/entrykit/src/onboarding/useSetupAppAccount.ts +++ b/packages/entrykit/src/onboarding/useSetupAppAccount.ts @@ -102,8 +102,7 @@ export function useSetupAppAccount() { await queryClient.invalidateQueries({ queryKey: ["readContract"] }); // TODO: throw if revert? - // TODO: add success boolean to wiresaw return value - // if (!receipt.success) return; + if (!receipt.success) return; if (registerSpender) { const queryKey = getSpenderQueryKey({ diff --git a/packages/entrykit/src/wiresaw.ts b/packages/entrykit/src/wiresaw.ts index f66657a415..4ca0578073 100644 --- a/packages/entrykit/src/wiresaw.ts +++ b/packages/entrykit/src/wiresaw.ts @@ -1,5 +1,4 @@ -import { Hash, Hex, RpcTransactionReceipt, Transport } from "viem"; -import { UserOperationReceipt } from "viem/account-abstraction"; +import { Hash, Hex, RpcTransactionReceipt, RpcUserOperationReceipt, Transport } from "viem"; export const wiresawChainIds = new Set([17420, 31337]); @@ -8,7 +7,7 @@ export function wiresaw(originalTransport: tr const { request: originalRequest, ...rest } = originalTransport(opts); let chainId: Hex | null = null; - const receipts = new Map(); + const receipts = new Map(); return { ...rest, @@ -54,16 +53,17 @@ export function wiresaw(originalTransport: tr })) as { txHash: Hex; userOpHash: Hex }; // :haroldsmile: receipts.set(result.userOpHash, { + success: true, userOpHash: result.userOpHash, receipt: { transactionHash: result.txHash }, - } as UserOperationReceipt); + } as RpcUserOperationReceipt); return result.userOpHash; } if (req.method === "eth_getUserOperationReceipt") { // eslint-disable-next-line @typescript-eslint/no-explicit-any const hash = (req.params as any)[0] as Hash; - const receipt = receipts.get(hash) ?? ((await originalRequest(req)) as UserOperationReceipt); + const receipt = receipts.get(hash) ?? ((await originalRequest(req)) as RpcUserOperationReceipt); if (!receipts.has(hash)) receipts.set(hash, receipt); return receipt; }