UNPKG

viem

Version:

TypeScript Interface for Ethereum

38 lines 1.72 kB
import { TransactionReceiptNotFoundError, } from '../../errors/transaction.js'; import { formatTransactionReceipt, } from '../../utils/formatters/transactionReceipt.js'; /** * Returns the [Transaction Receipt](https://viem.sh/docs/glossary/terms#transaction-receipt) given a [Transaction](https://viem.sh/docs/glossary/terms#transaction) hash. * * - Docs: https://viem.sh/docs/actions/public/getTransactionReceipt * - Example: https://stackblitz.com/github/wevm/viem/tree/main/examples/transactions_fetching-transactions * - JSON-RPC Methods: [`eth_getTransactionReceipt`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactionreceipt) * * @param client - Client to use * @param parameters - {@link GetTransactionReceiptParameters} * @returns The transaction receipt. {@link GetTransactionReceiptReturnType} * * @example * import { createPublicClient, http } from 'viem' * import { mainnet } from 'viem/chains' * import { getTransactionReceipt } from 'viem/public' * * const client = createPublicClient({ * chain: mainnet, * transport: http(), * }) * const transactionReceipt = await getTransactionReceipt(client, { * hash: '0x4ca7ee652d57678f26e887c149ab0735f41de37bcad58c9f6d3ed5824f15b74d', * }) */ export async function getTransactionReceipt(client, { hash }) { const receipt = await client.request({ method: 'eth_getTransactionReceipt', params: [hash], }, { dedupe: true }); if (!receipt) throw new TransactionReceiptNotFoundError({ hash }); const format = client.chain?.formatters?.transactionReceipt?.format || formatTransactionReceipt; return format(receipt); } //# sourceMappingURL=getTransactionReceipt.js.map