viem 2.7.20 → 2.8.0
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/CHANGELOG.md +22 -0
- package/_cjs/accounts/utils/sign.js +1 -0
- package/_cjs/accounts/utils/sign.js.map +1 -1
- package/_cjs/accounts/utils/signTransaction.js +11 -2
- package/_cjs/accounts/utils/signTransaction.js.map +1 -1
- package/_cjs/actions/index.js +4 -2
- package/_cjs/actions/index.js.map +1 -1
- package/_cjs/actions/public/call.js +3 -1
- package/_cjs/actions/public/call.js.map +1 -1
- package/_cjs/actions/public/estimateGas.js +3 -1
- package/_cjs/actions/public/estimateGas.js.map +1 -1
- package/_cjs/actions/public/getBlobBaseFee.js +11 -0
- package/_cjs/actions/public/getBlobBaseFee.js.map +1 -0
- package/_cjs/actions/public/multicall.js +1 -1
- package/_cjs/actions/public/multicall.js.map +1 -1
- package/_cjs/actions/wallet/prepareTransactionRequest.js +11 -2
- package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
- package/_cjs/actions/wallet/sendRawTransaction.js.map +1 -1
- package/_cjs/actions/wallet/sendTransaction.js +7 -8
- package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
- package/_cjs/actions/wallet/signTransaction.js +7 -6
- package/_cjs/actions/wallet/signTransaction.js.map +1 -1
- package/_cjs/chains/celo/serializers.js +10 -15
- package/_cjs/chains/celo/serializers.js.map +1 -1
- package/_cjs/chains/definitions/ancient8Sepolia.js +1 -1
- package/_cjs/chains/definitions/ancient8Sepolia.js.map +1 -1
- package/_cjs/chains/definitions/anvil.js +1 -1
- package/_cjs/chains/definitions/anvil.js.map +1 -1
- package/_cjs/chains/definitions/arbitrum.js +1 -1
- package/_cjs/chains/definitions/arbitrum.js.map +1 -1
- package/_cjs/chains/definitions/arbitrumGoerli.js +1 -1
- package/_cjs/chains/definitions/arbitrumGoerli.js.map +1 -1
- package/_cjs/chains/definitions/arbitrumNova.js +1 -1
- package/_cjs/chains/definitions/arbitrumNova.js.map +1 -1
- package/_cjs/chains/definitions/arbitrumSepolia.js +1 -1
- package/_cjs/chains/definitions/arbitrumSepolia.js.map +1 -1
- package/_cjs/chains/definitions/astarZkEVM.js +1 -1
- package/_cjs/chains/definitions/astarZkEVM.js.map +1 -1
- package/_cjs/chains/definitions/astarZkatana.js +1 -1
- package/_cjs/chains/definitions/astarZkatana.js.map +1 -1
- package/_cjs/chains/definitions/astarZkyoto.js +1 -1
- package/_cjs/chains/definitions/astarZkyoto.js.map +1 -1
- package/_cjs/chains/definitions/avalanche.js +1 -1
- package/_cjs/chains/definitions/avalanche.js.map +1 -1
- package/_cjs/chains/definitions/avalancheFuji.js +1 -1
- package/_cjs/chains/definitions/avalancheFuji.js.map +1 -1
- package/_cjs/chains/definitions/baseSepolia.js +1 -1
- package/_cjs/chains/definitions/baseSepolia.js.map +1 -1
- package/_cjs/chains/definitions/blastSepolia.js +2 -2
- package/_cjs/chains/definitions/blastSepolia.js.map +1 -1
- package/_cjs/chains/definitions/canto.js +1 -1
- package/_cjs/chains/definitions/canto.js.map +1 -1
- package/_cjs/chains/definitions/celo.js +1 -1
- package/_cjs/chains/definitions/celo.js.map +1 -1
- package/_cjs/chains/definitions/celoAlfajores.js +1 -1
- package/_cjs/chains/definitions/celoAlfajores.js.map +1 -1
- package/_cjs/chains/definitions/chiliz.js +1 -1
- package/_cjs/chains/definitions/chiliz.js.map +1 -1
- package/_cjs/chains/definitions/confluxESpace.js +1 -1
- package/_cjs/chains/definitions/confluxESpace.js.map +1 -1
- package/_cjs/chains/definitions/coreDao.js +1 -1
- package/_cjs/chains/definitions/coreDao.js.map +1 -1
- package/_cjs/chains/definitions/crossbell.js +2 -2
- package/_cjs/chains/definitions/crossbell.js.map +1 -1
- package/_cjs/chains/definitions/dfk.js +1 -1
- package/_cjs/chains/definitions/dfk.js.map +1 -1
- package/_cjs/chains/definitions/dogechain.js +1 -1
- package/_cjs/chains/definitions/dogechain.js.map +1 -1
- package/_cjs/chains/definitions/eon.js +1 -1
- package/_cjs/chains/definitions/eon.js.map +1 -1
- package/_cjs/chains/definitions/evmos.js +1 -1
- package/_cjs/chains/definitions/evmos.js.map +1 -1
- package/_cjs/chains/definitions/evmosTestnet.js +1 -1
- package/_cjs/chains/definitions/evmosTestnet.js.map +1 -1
- package/_cjs/chains/definitions/fantomSonicTestnet.js +1 -1
- package/_cjs/chains/definitions/fantomSonicTestnet.js.map +1 -1
- package/_cjs/chains/definitions/fantomTestnet.js +1 -1
- package/_cjs/chains/definitions/fantomTestnet.js.map +1 -1
- package/_cjs/chains/definitions/filecoinCalibration.js +1 -1
- package/_cjs/chains/definitions/filecoinCalibration.js.map +1 -1
- package/_cjs/chains/definitions/filecoinHyperspace.js +1 -1
- package/_cjs/chains/definitions/filecoinHyperspace.js.map +1 -1
- package/_cjs/chains/definitions/foundry.js +1 -1
- package/_cjs/chains/definitions/foundry.js.map +1 -1
- package/_cjs/chains/definitions/gnosisChiado.js +1 -1
- package/_cjs/chains/definitions/gnosisChiado.js.map +1 -1
- package/_cjs/chains/definitions/gobi.js +1 -1
- package/_cjs/chains/definitions/gobi.js.map +1 -1
- package/_cjs/chains/definitions/goerli.js +1 -1
- package/_cjs/chains/definitions/goerli.js.map +1 -1
- package/_cjs/chains/definitions/hardhat.js +1 -1
- package/_cjs/chains/definitions/hardhat.js.map +1 -1
- package/_cjs/chains/definitions/harmonyOne.js +1 -1
- package/_cjs/chains/definitions/harmonyOne.js.map +1 -1
- package/_cjs/chains/definitions/iotex.js +1 -1
- package/_cjs/chains/definitions/iotex.js.map +1 -1
- package/_cjs/chains/definitions/iotexTestnet.js +1 -1
- package/_cjs/chains/definitions/iotexTestnet.js.map +1 -1
- package/_cjs/chains/definitions/klaytn.js +1 -1
- package/_cjs/chains/definitions/klaytn.js.map +1 -1
- package/_cjs/chains/definitions/klaytnBaobab.js +1 -1
- package/_cjs/chains/definitions/klaytnBaobab.js.map +1 -1
- package/_cjs/chains/definitions/lightlinkPegasus.js +1 -1
- package/_cjs/chains/definitions/lightlinkPegasus.js.map +1 -1
- package/_cjs/chains/definitions/lightlinkPhoenix.js +1 -1
- package/_cjs/chains/definitions/lightlinkPhoenix.js.map +1 -1
- package/_cjs/chains/definitions/linea.js +1 -1
- package/_cjs/chains/definitions/linea.js.map +1 -1
- package/_cjs/chains/definitions/lineaTestnet.js +1 -1
- package/_cjs/chains/definitions/lineaTestnet.js.map +1 -1
- package/_cjs/chains/definitions/liskSepolia.js +1 -1
- package/_cjs/chains/definitions/liskSepolia.js.map +1 -1
- package/_cjs/chains/definitions/localhost.js +1 -1
- package/_cjs/chains/definitions/localhost.js.map +1 -1
- package/_cjs/chains/definitions/mainnet.js +2 -2
- package/_cjs/chains/definitions/mainnet.js.map +1 -1
- package/_cjs/chains/definitions/mantaTestnet.js +1 -1
- package/_cjs/chains/definitions/mantaTestnet.js.map +1 -1
- package/_cjs/chains/definitions/metachainIstanbul.js +1 -1
- package/_cjs/chains/definitions/metachainIstanbul.js.map +1 -1
- package/_cjs/chains/definitions/metis.js +1 -1
- package/_cjs/chains/definitions/metis.js.map +1 -1
- package/_cjs/chains/definitions/neonDevnet.js +1 -1
- package/_cjs/chains/definitions/neonDevnet.js.map +1 -1
- package/_cjs/chains/definitions/neonMainnet.js +1 -1
- package/_cjs/chains/definitions/neonMainnet.js.map +1 -1
- package/_cjs/chains/definitions/optimismSepolia.js +1 -1
- package/_cjs/chains/definitions/optimismSepolia.js.map +1 -1
- package/_cjs/chains/definitions/palm.js +1 -1
- package/_cjs/chains/definitions/palm.js.map +1 -1
- package/_cjs/chains/definitions/palmTestnet.js +1 -1
- package/_cjs/chains/definitions/palmTestnet.js.map +1 -1
- package/_cjs/chains/definitions/pgnTestnet.js +1 -1
- package/_cjs/chains/definitions/pgnTestnet.js.map +1 -1
- package/_cjs/chains/definitions/plumeTestnet.js +30 -0
- package/_cjs/chains/definitions/plumeTestnet.js.map +1 -0
- package/_cjs/chains/definitions/polygonAmoy.js +1 -1
- package/_cjs/chains/definitions/polygonAmoy.js.map +1 -1
- package/_cjs/chains/definitions/polygonMumbai.js +1 -1
- package/_cjs/chains/definitions/polygonMumbai.js.map +1 -1
- package/_cjs/chains/definitions/scroll.js +1 -1
- package/_cjs/chains/definitions/scroll.js.map +1 -1
- package/_cjs/chains/definitions/scrollSepolia.js +1 -1
- package/_cjs/chains/definitions/scrollSepolia.js.map +1 -1
- package/_cjs/chains/definitions/scrollTestnet.js +1 -1
- package/_cjs/chains/definitions/scrollTestnet.js.map +1 -1
- package/_cjs/chains/definitions/sepolia.js +2 -2
- package/_cjs/chains/definitions/sepolia.js.map +1 -1
- package/_cjs/chains/definitions/skale/brawl.js +1 -1
- package/_cjs/chains/definitions/skale/brawl.js.map +1 -1
- package/_cjs/chains/definitions/skale/calypso.js +1 -1
- package/_cjs/chains/definitions/skale/calypso.js.map +1 -1
- package/_cjs/chains/definitions/skale/calypsoTestnet.js +2 -2
- package/_cjs/chains/definitions/skale/calypsoTestnet.js.map +1 -1
- package/_cjs/chains/definitions/skale/cryptoBlades.js +1 -1
- package/_cjs/chains/definitions/skale/cryptoBlades.js.map +1 -1
- package/_cjs/chains/definitions/skale/cryptoColosseum.js +1 -1
- package/_cjs/chains/definitions/skale/cryptoColosseum.js.map +1 -1
- package/_cjs/chains/definitions/skale/europa.js +1 -1
- package/_cjs/chains/definitions/skale/europa.js.map +1 -1
- package/_cjs/chains/definitions/skale/europaTestnet.js +2 -2
- package/_cjs/chains/definitions/skale/europaTestnet.js.map +1 -1
- package/_cjs/chains/definitions/skale/exorde.js +1 -1
- package/_cjs/chains/definitions/skale/exorde.js.map +1 -1
- package/_cjs/chains/definitions/skale/humanProtocol.js +1 -1
- package/_cjs/chains/definitions/skale/humanProtocol.js.map +1 -1
- package/_cjs/chains/definitions/skale/nebula.js +1 -1
- package/_cjs/chains/definitions/skale/nebula.js.map +1 -1
- package/_cjs/chains/definitions/skale/nebulaTestnet.js +2 -2
- package/_cjs/chains/definitions/skale/nebulaTestnet.js.map +1 -1
- package/_cjs/chains/definitions/skale/razor.js +1 -1
- package/_cjs/chains/definitions/skale/razor.js.map +1 -1
- package/_cjs/chains/definitions/skale/titan.js +1 -1
- package/_cjs/chains/definitions/skale/titan.js.map +1 -1
- package/_cjs/chains/definitions/skale/titanTestnet.js +2 -2
- package/_cjs/chains/definitions/skale/titanTestnet.js.map +1 -1
- package/_cjs/chains/definitions/spicy.js +1 -1
- package/_cjs/chains/definitions/spicy.js.map +1 -1
- package/_cjs/chains/definitions/zhejiang.js +1 -1
- package/_cjs/chains/definitions/zhejiang.js.map +1 -1
- package/_cjs/chains/definitions/zoraSepolia.js +1 -1
- package/_cjs/chains/definitions/zoraSepolia.js.map +1 -1
- package/_cjs/chains/index.js +5 -3
- package/_cjs/chains/index.js.map +1 -1
- package/_cjs/chains/opStack/actions/buildProveWithdrawal.js +22 -2
- package/_cjs/chains/opStack/actions/buildProveWithdrawal.js.map +1 -1
- package/_cjs/chains/opStack/actions/estimateL1Fee.js +2 -18
- package/_cjs/chains/opStack/actions/estimateL1Fee.js.map +1 -1
- package/_cjs/chains/opStack/actions/estimateL1Gas.js +2 -18
- package/_cjs/chains/opStack/actions/estimateL1Gas.js.map +1 -1
- package/_cjs/chains/opStack/actions/finalizeWithdrawal.js +1 -1
- package/_cjs/chains/opStack/actions/finalizeWithdrawal.js.map +1 -1
- package/_cjs/chains/opStack/actions/proveWithdrawal.js +1 -1
- package/_cjs/chains/opStack/actions/proveWithdrawal.js.map +1 -1
- package/_cjs/chains/opStack/serializers.js +3 -3
- package/_cjs/chains/opStack/serializers.js.map +1 -1
- package/_cjs/chains/zksync/actions/sendTransaction.js.map +1 -1
- package/_cjs/chains/zksync/actions/signEip712Transaction.js.map +1 -1
- package/_cjs/chains/zksync/serializers.js +6 -6
- package/_cjs/chains/zksync/serializers.js.map +1 -1
- package/_cjs/clients/createClient.js +1 -1
- package/_cjs/clients/createClient.js.map +1 -1
- package/_cjs/clients/decorators/public.js.map +1 -1
- package/_cjs/clients/decorators/wallet.js.map +1 -1
- package/_cjs/clients/transports/fallback.js +2 -2
- package/_cjs/clients/transports/fallback.js.map +1 -1
- package/_cjs/clients/transports/http.js +1 -1
- package/_cjs/clients/transports/http.js.map +1 -1
- package/_cjs/clients/transports/ipc.js +1 -1
- package/_cjs/clients/transports/ipc.js.map +1 -1
- package/_cjs/clients/transports/webSocket.js +1 -1
- package/_cjs/clients/transports/webSocket.js.map +1 -1
- package/_cjs/constants/blob.js +11 -0
- package/_cjs/constants/blob.js.map +1 -0
- package/_cjs/constants/kzg.js +7 -0
- package/_cjs/constants/kzg.js.map +1 -0
- package/_cjs/errors/blob.js +63 -0
- package/_cjs/errors/blob.js.map +1 -0
- package/_cjs/errors/transaction.js +1 -0
- package/_cjs/errors/transaction.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/errors/version.js.map +1 -1
- package/_cjs/index.js +22 -2
- package/_cjs/index.js.map +1 -1
- package/_cjs/node/index.js +3 -1
- package/_cjs/node/index.js.map +1 -1
- package/_cjs/node/trustedSetups.js +7 -0
- package/_cjs/node/trustedSetups.js.map +1 -0
- package/_cjs/types/eip4844.js +3 -0
- package/_cjs/types/eip4844.js.map +1 -0
- package/_cjs/types/kzg.js +3 -0
- package/_cjs/types/kzg.js.map +1 -0
- package/_cjs/utils/abi/encodeAbiParameters.js +1 -1
- package/_cjs/utils/abi/encodeAbiParameters.js.map +1 -1
- package/_cjs/utils/blob/blobsToCommitments.js +20 -0
- package/_cjs/utils/blob/blobsToCommitments.js.map +1 -0
- package/_cjs/utils/blob/blobsToProofs.js +26 -0
- package/_cjs/utils/blob/blobsToProofs.js.map +1 -0
- package/_cjs/utils/blob/commitmentToVersionedHash.js +14 -0
- package/_cjs/utils/blob/commitmentToVersionedHash.js.map +1 -0
- package/_cjs/utils/blob/commitmentsToVersionedHashes.js +19 -0
- package/_cjs/utils/blob/commitmentsToVersionedHashes.js.map +1 -0
- package/_cjs/utils/blob/fromBlobs.js +36 -0
- package/_cjs/utils/blob/fromBlobs.js.map +1 -0
- package/_cjs/utils/blob/sidecarsToVersionedHashes.js +19 -0
- package/_cjs/utils/blob/sidecarsToVersionedHashes.js.map +1 -0
- package/_cjs/utils/blob/toBlobSidecars.js +22 -0
- package/_cjs/utils/blob/toBlobSidecars.js.map +1 -0
- package/_cjs/utils/blob/toBlobs.js +48 -0
- package/_cjs/utils/blob/toBlobs.js.map +1 -0
- package/_cjs/utils/cursor.js +1 -1
- package/_cjs/utils/cursor.js.map +1 -1
- package/_cjs/utils/encoding/toRlp.js.map +1 -1
- package/_cjs/utils/formatters/transaction.js.map +1 -1
- package/_cjs/utils/formatters/transactionRequest.js +22 -25
- package/_cjs/utils/formatters/transactionRequest.js.map +1 -1
- package/_cjs/utils/kzg/defineKzg.js +11 -0
- package/_cjs/utils/kzg/defineKzg.js.map +1 -0
- package/_cjs/utils/kzg/setupKzg.js +17 -0
- package/_cjs/utils/kzg/setupKzg.js.map +1 -0
- package/_cjs/utils/rpc/compat.js +1 -1
- package/_cjs/utils/rpc/compat.js.map +1 -1
- package/_cjs/utils/rpc/http.js +1 -1
- package/_cjs/utils/rpc/http.js.map +1 -1
- package/_cjs/utils/rpc/socket.js +1 -1
- package/_cjs/utils/rpc/socket.js.map +1 -1
- package/_cjs/utils/signature/compactSignatureToSignature.js +3 -3
- package/_cjs/utils/signature/compactSignatureToSignature.js.map +1 -1
- package/_cjs/utils/signature/hexToSignature.js +6 -1
- package/_cjs/utils/signature/hexToSignature.js.map +1 -1
- package/_cjs/utils/signature/signatureToCompactSignature.js +3 -3
- package/_cjs/utils/signature/signatureToCompactSignature.js.map +1 -1
- package/_cjs/utils/signature/signatureToHex.js +9 -3
- package/_cjs/utils/signature/signatureToHex.js.map +1 -1
- package/_cjs/utils/transaction/assertTransaction.js +26 -1
- package/_cjs/utils/transaction/assertTransaction.js.map +1 -1
- package/_cjs/utils/transaction/getSerializedTransactionType.js +2 -0
- package/_cjs/utils/transaction/getSerializedTransactionType.js.map +1 -1
- package/_cjs/utils/transaction/getTransactionType.js +7 -1
- package/_cjs/utils/transaction/getTransactionType.js.map +1 -1
- package/_cjs/utils/transaction/parseTransaction.js +73 -0
- package/_cjs/utils/transaction/parseTransaction.js.map +1 -1
- package/_cjs/utils/transaction/serializeAccessList.js.map +1 -1
- package/_cjs/utils/transaction/serializeTransaction.js +84 -21
- package/_cjs/utils/transaction/serializeTransaction.js.map +1 -1
- package/_esm/accounts/utils/sign.js +1 -0
- package/_esm/accounts/utils/sign.js.map +1 -1
- package/_esm/accounts/utils/signTransaction.js +13 -2
- package/_esm/accounts/utils/signTransaction.js.map +1 -1
- package/_esm/actions/index.js +1 -0
- package/_esm/actions/index.js.map +1 -1
- package/_esm/actions/public/call.js +3 -1
- package/_esm/actions/public/call.js.map +1 -1
- package/_esm/actions/public/estimateGas.js +3 -1
- package/_esm/actions/public/estimateGas.js.map +1 -1
- package/_esm/actions/public/getBlobBaseFee.js +27 -0
- package/_esm/actions/public/getBlobBaseFee.js.map +1 -0
- package/_esm/actions/public/multicall.js +1 -1
- package/_esm/actions/public/multicall.js.map +1 -1
- package/_esm/actions/wallet/prepareTransactionRequest.js +12 -2
- package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
- package/_esm/actions/wallet/sendRawTransaction.js.map +1 -1
- package/_esm/actions/wallet/sendTransaction.js +7 -8
- package/_esm/actions/wallet/sendTransaction.js.map +1 -1
- package/_esm/actions/wallet/signTransaction.js +6 -5
- package/_esm/actions/wallet/signTransaction.js.map +1 -1
- package/_esm/chains/celo/serializers.js +10 -17
- package/_esm/chains/celo/serializers.js.map +1 -1
- package/_esm/chains/definitions/ancient8Sepolia.js +1 -1
- package/_esm/chains/definitions/ancient8Sepolia.js.map +1 -1
- package/_esm/chains/definitions/anvil.js +1 -1
- package/_esm/chains/definitions/anvil.js.map +1 -1
- package/_esm/chains/definitions/arbitrum.js +1 -1
- package/_esm/chains/definitions/arbitrum.js.map +1 -1
- package/_esm/chains/definitions/arbitrumGoerli.js +1 -1
- package/_esm/chains/definitions/arbitrumGoerli.js.map +1 -1
- package/_esm/chains/definitions/arbitrumNova.js +1 -1
- package/_esm/chains/definitions/arbitrumNova.js.map +1 -1
- package/_esm/chains/definitions/arbitrumSepolia.js +1 -1
- package/_esm/chains/definitions/arbitrumSepolia.js.map +1 -1
- package/_esm/chains/definitions/astarZkEVM.js +1 -1
- package/_esm/chains/definitions/astarZkEVM.js.map +1 -1
- package/_esm/chains/definitions/astarZkatana.js +1 -1
- package/_esm/chains/definitions/astarZkatana.js.map +1 -1
- package/_esm/chains/definitions/astarZkyoto.js +1 -1
- package/_esm/chains/definitions/astarZkyoto.js.map +1 -1
- package/_esm/chains/definitions/avalanche.js +1 -1
- package/_esm/chains/definitions/avalanche.js.map +1 -1
- package/_esm/chains/definitions/avalancheFuji.js +1 -1
- package/_esm/chains/definitions/avalancheFuji.js.map +1 -1
- package/_esm/chains/definitions/baseSepolia.js +1 -1
- package/_esm/chains/definitions/baseSepolia.js.map +1 -1
- package/_esm/chains/definitions/blastSepolia.js +2 -2
- package/_esm/chains/definitions/blastSepolia.js.map +1 -1
- package/_esm/chains/definitions/canto.js +1 -1
- package/_esm/chains/definitions/canto.js.map +1 -1
- package/_esm/chains/definitions/celo.js +1 -1
- package/_esm/chains/definitions/celo.js.map +1 -1
- package/_esm/chains/definitions/celoAlfajores.js +1 -1
- package/_esm/chains/definitions/celoAlfajores.js.map +1 -1
- package/_esm/chains/definitions/chiliz.js +1 -1
- package/_esm/chains/definitions/chiliz.js.map +1 -1
- package/_esm/chains/definitions/confluxESpace.js +1 -1
- package/_esm/chains/definitions/confluxESpace.js.map +1 -1
- package/_esm/chains/definitions/coreDao.js +1 -1
- package/_esm/chains/definitions/coreDao.js.map +1 -1
- package/_esm/chains/definitions/crossbell.js +2 -2
- package/_esm/chains/definitions/crossbell.js.map +1 -1
- package/_esm/chains/definitions/dfk.js +1 -1
- package/_esm/chains/definitions/dfk.js.map +1 -1
- package/_esm/chains/definitions/dogechain.js +1 -1
- package/_esm/chains/definitions/dogechain.js.map +1 -1
- package/_esm/chains/definitions/eon.js +1 -1
- package/_esm/chains/definitions/eon.js.map +1 -1
- package/_esm/chains/definitions/evmos.js +1 -1
- package/_esm/chains/definitions/evmos.js.map +1 -1
- package/_esm/chains/definitions/evmosTestnet.js +1 -1
- package/_esm/chains/definitions/evmosTestnet.js.map +1 -1
- package/_esm/chains/definitions/fantomSonicTestnet.js +1 -1
- package/_esm/chains/definitions/fantomSonicTestnet.js.map +1 -1
- package/_esm/chains/definitions/fantomTestnet.js +1 -1
- package/_esm/chains/definitions/fantomTestnet.js.map +1 -1
- package/_esm/chains/definitions/filecoinCalibration.js +1 -1
- package/_esm/chains/definitions/filecoinCalibration.js.map +1 -1
- package/_esm/chains/definitions/filecoinHyperspace.js +1 -1
- package/_esm/chains/definitions/filecoinHyperspace.js.map +1 -1
- package/_esm/chains/definitions/foundry.js +1 -1
- package/_esm/chains/definitions/foundry.js.map +1 -1
- package/_esm/chains/definitions/gnosisChiado.js +1 -1
- package/_esm/chains/definitions/gnosisChiado.js.map +1 -1
- package/_esm/chains/definitions/gobi.js +1 -1
- package/_esm/chains/definitions/gobi.js.map +1 -1
- package/_esm/chains/definitions/goerli.js +1 -1
- package/_esm/chains/definitions/goerli.js.map +1 -1
- package/_esm/chains/definitions/hardhat.js +1 -1
- package/_esm/chains/definitions/hardhat.js.map +1 -1
- package/_esm/chains/definitions/harmonyOne.js +1 -1
- package/_esm/chains/definitions/harmonyOne.js.map +1 -1
- package/_esm/chains/definitions/iotex.js +1 -1
- package/_esm/chains/definitions/iotex.js.map +1 -1
- package/_esm/chains/definitions/iotexTestnet.js +1 -1
- package/_esm/chains/definitions/iotexTestnet.js.map +1 -1
- package/_esm/chains/definitions/klaytn.js +1 -1
- package/_esm/chains/definitions/klaytn.js.map +1 -1
- package/_esm/chains/definitions/klaytnBaobab.js +1 -1
- package/_esm/chains/definitions/klaytnBaobab.js.map +1 -1
- package/_esm/chains/definitions/lightlinkPegasus.js +1 -1
- package/_esm/chains/definitions/lightlinkPegasus.js.map +1 -1
- package/_esm/chains/definitions/lightlinkPhoenix.js +1 -1
- package/_esm/chains/definitions/lightlinkPhoenix.js.map +1 -1
- package/_esm/chains/definitions/linea.js +1 -1
- package/_esm/chains/definitions/linea.js.map +1 -1
- package/_esm/chains/definitions/lineaTestnet.js +1 -1
- package/_esm/chains/definitions/lineaTestnet.js.map +1 -1
- package/_esm/chains/definitions/liskSepolia.js +1 -1
- package/_esm/chains/definitions/liskSepolia.js.map +1 -1
- package/_esm/chains/definitions/localhost.js +1 -1
- package/_esm/chains/definitions/localhost.js.map +1 -1
- package/_esm/chains/definitions/mainnet.js +2 -2
- package/_esm/chains/definitions/mainnet.js.map +1 -1
- package/_esm/chains/definitions/mantaTestnet.js +1 -1
- package/_esm/chains/definitions/mantaTestnet.js.map +1 -1
- package/_esm/chains/definitions/metachainIstanbul.js +1 -1
- package/_esm/chains/definitions/metachainIstanbul.js.map +1 -1
- package/_esm/chains/definitions/metis.js +1 -1
- package/_esm/chains/definitions/metis.js.map +1 -1
- package/_esm/chains/definitions/neonDevnet.js +1 -1
- package/_esm/chains/definitions/neonDevnet.js.map +1 -1
- package/_esm/chains/definitions/neonMainnet.js +1 -1
- package/_esm/chains/definitions/neonMainnet.js.map +1 -1
- package/_esm/chains/definitions/optimismSepolia.js +1 -1
- package/_esm/chains/definitions/optimismSepolia.js.map +1 -1
- package/_esm/chains/definitions/palm.js +1 -1
- package/_esm/chains/definitions/palm.js.map +1 -1
- package/_esm/chains/definitions/palmTestnet.js +1 -1
- package/_esm/chains/definitions/palmTestnet.js.map +1 -1
- package/_esm/chains/definitions/pgnTestnet.js +1 -1
- package/_esm/chains/definitions/pgnTestnet.js.map +1 -1
- package/_esm/chains/definitions/plumeTestnet.js +27 -0
- package/_esm/chains/definitions/plumeTestnet.js.map +1 -0
- package/_esm/chains/definitions/polygonAmoy.js +1 -1
- package/_esm/chains/definitions/polygonAmoy.js.map +1 -1
- package/_esm/chains/definitions/polygonMumbai.js +1 -1
- package/_esm/chains/definitions/polygonMumbai.js.map +1 -1
- package/_esm/chains/definitions/scroll.js +1 -1
- package/_esm/chains/definitions/scroll.js.map +1 -1
- package/_esm/chains/definitions/scrollSepolia.js +1 -1
- package/_esm/chains/definitions/scrollSepolia.js.map +1 -1
- package/_esm/chains/definitions/scrollTestnet.js +1 -1
- package/_esm/chains/definitions/scrollTestnet.js.map +1 -1
- package/_esm/chains/definitions/sepolia.js +2 -2
- package/_esm/chains/definitions/sepolia.js.map +1 -1
- package/_esm/chains/definitions/skale/brawl.js +1 -1
- package/_esm/chains/definitions/skale/brawl.js.map +1 -1
- package/_esm/chains/definitions/skale/calypso.js +1 -1
- package/_esm/chains/definitions/skale/calypso.js.map +1 -1
- package/_esm/chains/definitions/skale/calypsoTestnet.js +2 -2
- package/_esm/chains/definitions/skale/calypsoTestnet.js.map +1 -1
- package/_esm/chains/definitions/skale/cryptoBlades.js +1 -1
- package/_esm/chains/definitions/skale/cryptoBlades.js.map +1 -1
- package/_esm/chains/definitions/skale/cryptoColosseum.js +1 -1
- package/_esm/chains/definitions/skale/cryptoColosseum.js.map +1 -1
- package/_esm/chains/definitions/skale/europa.js +1 -1
- package/_esm/chains/definitions/skale/europa.js.map +1 -1
- package/_esm/chains/definitions/skale/europaTestnet.js +2 -2
- package/_esm/chains/definitions/skale/europaTestnet.js.map +1 -1
- package/_esm/chains/definitions/skale/exorde.js +1 -1
- package/_esm/chains/definitions/skale/exorde.js.map +1 -1
- package/_esm/chains/definitions/skale/humanProtocol.js +1 -1
- package/_esm/chains/definitions/skale/humanProtocol.js.map +1 -1
- package/_esm/chains/definitions/skale/nebula.js +1 -1
- package/_esm/chains/definitions/skale/nebula.js.map +1 -1
- package/_esm/chains/definitions/skale/nebulaTestnet.js +2 -2
- package/_esm/chains/definitions/skale/nebulaTestnet.js.map +1 -1
- package/_esm/chains/definitions/skale/razor.js +1 -1
- package/_esm/chains/definitions/skale/razor.js.map +1 -1
- package/_esm/chains/definitions/skale/titan.js +1 -1
- package/_esm/chains/definitions/skale/titan.js.map +1 -1
- package/_esm/chains/definitions/skale/titanTestnet.js +2 -2
- package/_esm/chains/definitions/skale/titanTestnet.js.map +1 -1
- package/_esm/chains/definitions/spicy.js +1 -1
- package/_esm/chains/definitions/spicy.js.map +1 -1
- package/_esm/chains/definitions/zhejiang.js +1 -1
- package/_esm/chains/definitions/zhejiang.js.map +1 -1
- package/_esm/chains/definitions/zoraSepolia.js +1 -1
- package/_esm/chains/definitions/zoraSepolia.js.map +1 -1
- package/_esm/chains/index.js +1 -0
- package/_esm/chains/index.js.map +1 -1
- package/_esm/chains/opStack/actions/buildProveWithdrawal.js +29 -1
- package/_esm/chains/opStack/actions/buildProveWithdrawal.js.map +1 -1
- package/_esm/chains/opStack/actions/estimateL1Fee.js +2 -18
- package/_esm/chains/opStack/actions/estimateL1Fee.js.map +1 -1
- package/_esm/chains/opStack/actions/estimateL1Gas.js +2 -18
- package/_esm/chains/opStack/actions/estimateL1Gas.js.map +1 -1
- package/_esm/chains/opStack/actions/finalizeWithdrawal.js +1 -1
- package/_esm/chains/opStack/actions/finalizeWithdrawal.js.map +1 -1
- package/_esm/chains/opStack/actions/proveWithdrawal.js +1 -1
- package/_esm/chains/opStack/actions/proveWithdrawal.js.map +1 -1
- package/_esm/chains/opStack/serializers.js +2 -2
- package/_esm/chains/opStack/serializers.js.map +1 -1
- package/_esm/chains/zksync/actions/sendTransaction.js.map +1 -1
- package/_esm/chains/zksync/actions/signEip712Transaction.js.map +1 -1
- package/_esm/chains/zksync/serializers.js +6 -6
- package/_esm/chains/zksync/serializers.js.map +1 -1
- package/_esm/clients/createClient.js +1 -1
- package/_esm/clients/createClient.js.map +1 -1
- package/_esm/clients/decorators/public.js.map +1 -1
- package/_esm/clients/decorators/wallet.js.map +1 -1
- package/_esm/clients/transports/fallback.js +2 -2
- package/_esm/clients/transports/fallback.js.map +1 -1
- package/_esm/clients/transports/http.js +1 -1
- package/_esm/clients/transports/http.js.map +1 -1
- package/_esm/clients/transports/ipc.js +1 -1
- package/_esm/clients/transports/ipc.js.map +1 -1
- package/_esm/clients/transports/webSocket.js +1 -1
- package/_esm/clients/transports/webSocket.js.map +1 -1
- package/_esm/constants/blob.js +16 -0
- package/_esm/constants/blob.js.map +1 -0
- package/_esm/constants/kzg.js +7 -0
- package/_esm/constants/kzg.js.map +1 -0
- package/_esm/errors/blob.js +56 -0
- package/_esm/errors/blob.js.map +1 -0
- package/_esm/errors/transaction.js +1 -0
- package/_esm/errors/transaction.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/errors/version.js.map +1 -1
- package/_esm/index.js +10 -0
- package/_esm/index.js.map +1 -1
- package/_esm/node/index.js +1 -0
- package/_esm/node/index.js.map +1 -1
- package/_esm/node/trustedSetups.js +4 -0
- package/_esm/node/trustedSetups.js.map +1 -0
- package/_esm/types/eip4844.js +2 -0
- package/_esm/types/eip4844.js.map +1 -0
- package/_esm/types/kzg.js +2 -0
- package/_esm/types/kzg.js.map +1 -0
- package/_esm/utils/abi/encodeAbiParameters.js +1 -1
- package/_esm/utils/abi/encodeAbiParameters.js.map +1 -1
- package/_esm/utils/blob/blobsToCommitments.js +28 -0
- package/_esm/utils/blob/blobsToCommitments.js.map +1 -0
- package/_esm/utils/blob/blobsToProofs.js +38 -0
- package/_esm/utils/blob/blobsToProofs.js.map +1 -0
- package/_esm/utils/blob/commitmentToVersionedHash.js +27 -0
- package/_esm/utils/blob/commitmentToVersionedHash.js.map +1 -0
- package/_esm/utils/blob/commitmentsToVersionedHashes.js +32 -0
- package/_esm/utils/blob/commitmentsToVersionedHashes.js.map +1 -0
- package/_esm/utils/blob/fromBlobs.js +33 -0
- package/_esm/utils/blob/fromBlobs.js.map +1 -0
- package/_esm/utils/blob/sidecarsToVersionedHashes.js +26 -0
- package/_esm/utils/blob/sidecarsToVersionedHashes.js.map +1 -0
- package/_esm/utils/blob/toBlobSidecars.js +45 -0
- package/_esm/utils/blob/toBlobSidecars.js.map +1 -0
- package/_esm/utils/blob/toBlobs.js +58 -0
- package/_esm/utils/blob/toBlobs.js.map +1 -0
- package/_esm/utils/cursor.js +1 -1
- package/_esm/utils/cursor.js.map +1 -1
- package/_esm/utils/encoding/toRlp.js.map +1 -1
- package/_esm/utils/formatters/transaction.js.map +1 -1
- package/_esm/utils/formatters/transactionRequest.js +23 -26
- package/_esm/utils/formatters/transactionRequest.js.map +1 -1
- package/_esm/utils/kzg/defineKzg.js +21 -0
- package/_esm/utils/kzg/defineKzg.js.map +1 -0
- package/_esm/utils/kzg/setupKzg.js +25 -0
- package/_esm/utils/kzg/setupKzg.js.map +1 -0
- package/_esm/utils/rpc/compat.js +1 -1
- package/_esm/utils/rpc/compat.js.map +1 -1
- package/_esm/utils/rpc/http.js +1 -1
- package/_esm/utils/rpc/http.js.map +1 -1
- package/_esm/utils/rpc/socket.js +1 -1
- package/_esm/utils/rpc/socket.js.map +1 -1
- package/_esm/utils/signature/compactSignatureToSignature.js +3 -3
- package/_esm/utils/signature/compactSignatureToSignature.js.map +1 -1
- package/_esm/utils/signature/hexToSignature.js +6 -1
- package/_esm/utils/signature/hexToSignature.js.map +1 -1
- package/_esm/utils/signature/signatureToCompactSignature.js +4 -4
- package/_esm/utils/signature/signatureToCompactSignature.js.map +1 -1
- package/_esm/utils/signature/signatureToHex.js +11 -4
- package/_esm/utils/signature/signatureToHex.js.map +1 -1
- package/_esm/utils/transaction/assertTransaction.js +24 -0
- package/_esm/utils/transaction/assertTransaction.js.map +1 -1
- package/_esm/utils/transaction/getSerializedTransactionType.js +2 -0
- package/_esm/utils/transaction/getSerializedTransactionType.js.map +1 -1
- package/_esm/utils/transaction/getTransactionType.js +7 -1
- package/_esm/utils/transaction/getTransactionType.js.map +1 -1
- package/_esm/utils/transaction/parseTransaction.js +74 -1
- package/_esm/utils/transaction/parseTransaction.js.map +1 -1
- package/_esm/utils/transaction/serializeAccessList.js.map +1 -1
- package/_esm/utils/transaction/serializeTransaction.js +85 -22
- package/_esm/utils/transaction/serializeTransaction.js.map +1 -1
- package/_types/accounts/types.d.ts +3 -3
- package/_types/accounts/types.d.ts.map +1 -1
- package/_types/accounts/utils/sign.d.ts.map +1 -1
- package/_types/accounts/utils/signTransaction.d.ts +5 -5
- package/_types/accounts/utils/signTransaction.d.ts.map +1 -1
- package/_types/actions/index.d.ts +1 -0
- package/_types/actions/index.d.ts.map +1 -1
- package/_types/actions/public/call.d.ts.map +1 -1
- package/_types/actions/public/estimateGas.d.ts.map +1 -1
- package/_types/actions/public/getBlobBaseFee.d.ts +30 -0
- package/_types/actions/public/getBlobBaseFee.d.ts.map +1 -0
- package/_types/actions/wallet/prepareTransactionRequest.d.ts +27 -8
- package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
- package/_types/actions/wallet/sendRawTransaction.d.ts +3 -5
- package/_types/actions/wallet/sendRawTransaction.d.ts.map +1 -1
- package/_types/actions/wallet/sendTransaction.d.ts +4 -2
- package/_types/actions/wallet/sendTransaction.d.ts.map +1 -1
- package/_types/actions/wallet/signTransaction.d.ts +5 -2
- package/_types/actions/wallet/signTransaction.d.ts.map +1 -1
- package/_types/chains/celo/chainConfig.d.ts +1282 -376
- package/_types/chains/celo/chainConfig.d.ts.map +1 -1
- package/_types/chains/celo/formatters.d.ts +1282 -376
- package/_types/chains/celo/formatters.d.ts.map +1 -1
- package/_types/chains/celo/serializers.d.ts +3 -4
- package/_types/chains/celo/serializers.d.ts.map +1 -1
- package/_types/chains/celo/types.d.ts +3 -8
- package/_types/chains/celo/types.d.ts.map +1 -1
- package/_types/chains/definitions/ancient8.d.ts +452 -188
- package/_types/chains/definitions/ancient8.d.ts.map +1 -1
- package/_types/chains/definitions/ancient8Sepolia.d.ts +452 -188
- package/_types/chains/definitions/ancient8Sepolia.d.ts.map +1 -1
- package/_types/chains/definitions/base.d.ts +452 -188
- package/_types/chains/definitions/base.d.ts.map +1 -1
- package/_types/chains/definitions/baseGoerli.d.ts +452 -188
- package/_types/chains/definitions/baseGoerli.d.ts.map +1 -1
- package/_types/chains/definitions/baseSepolia.d.ts +452 -188
- package/_types/chains/definitions/baseSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/celo.d.ts +1282 -376
- package/_types/chains/definitions/celo.d.ts.map +1 -1
- package/_types/chains/definitions/celoAlfajores.d.ts +1282 -376
- package/_types/chains/definitions/celoAlfajores.d.ts.map +1 -1
- package/_types/chains/definitions/fraxtal.d.ts +452 -188
- package/_types/chains/definitions/fraxtal.d.ts.map +1 -1
- package/_types/chains/definitions/fraxtalTestnet.d.ts +452 -188
- package/_types/chains/definitions/fraxtalTestnet.d.ts.map +1 -1
- package/_types/chains/definitions/liskSepolia.d.ts +452 -188
- package/_types/chains/definitions/liskSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/optimism.d.ts +452 -188
- package/_types/chains/definitions/optimism.d.ts.map +1 -1
- package/_types/chains/definitions/optimismGoerli.d.ts +452 -188
- package/_types/chains/definitions/optimismGoerli.d.ts.map +1 -1
- package/_types/chains/definitions/optimismSepolia.d.ts +452 -188
- package/_types/chains/definitions/optimismSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/pgn.d.ts +451 -187
- package/_types/chains/definitions/pgn.d.ts.map +1 -1
- package/_types/chains/definitions/pgnTestnet.d.ts +451 -187
- package/_types/chains/definitions/pgnTestnet.d.ts.map +1 -1
- package/_types/chains/definitions/plumeTestnet.d.ts +37 -0
- package/_types/chains/definitions/plumeTestnet.d.ts.map +1 -0
- package/_types/chains/definitions/zkSync.d.ts +692 -32
- package/_types/chains/definitions/zkSync.d.ts.map +1 -1
- package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts +692 -32
- package/_types/chains/definitions/zkSyncSepoliaTestnet.d.ts.map +1 -1
- package/_types/chains/definitions/zkSyncTestnet.d.ts +692 -32
- package/_types/chains/definitions/zkSyncTestnet.d.ts.map +1 -1
- package/_types/chains/definitions/zora.d.ts +452 -188
- package/_types/chains/definitions/zora.d.ts.map +1 -1
- package/_types/chains/definitions/zoraSepolia.d.ts +452 -188
- package/_types/chains/definitions/zoraSepolia.d.ts.map +1 -1
- package/_types/chains/definitions/zoraTestnet.d.ts +452 -188
- package/_types/chains/definitions/zoraTestnet.d.ts.map +1 -1
- package/_types/chains/index.d.ts +2 -1
- package/_types/chains/index.d.ts.map +1 -1
- package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts +2 -0
- package/_types/chains/opStack/actions/buildProveWithdrawal.d.ts.map +1 -1
- package/_types/chains/opStack/actions/estimateL1Fee.d.ts.map +1 -1
- package/_types/chains/opStack/actions/estimateL1Gas.d.ts.map +1 -1
- package/_types/chains/opStack/actions/finalizeWithdrawal.d.ts.map +1 -1
- package/_types/chains/opStack/actions/proveWithdrawal.d.ts.map +1 -1
- package/_types/chains/opStack/chainConfig.d.ts +452 -188
- package/_types/chains/opStack/chainConfig.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/publicL1.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/publicL2.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/walletL1.d.ts.map +1 -1
- package/_types/chains/opStack/decorators/walletL2.d.ts.map +1 -1
- package/_types/chains/opStack/formatters.d.ts +451 -187
- package/_types/chains/opStack/formatters.d.ts.map +1 -1
- package/_types/chains/opStack/serializers.d.ts +4 -3
- package/_types/chains/opStack/serializers.d.ts.map +1 -1
- package/_types/chains/opStack/types/transaction.d.ts +4 -8
- package/_types/chains/opStack/types/transaction.d.ts.map +1 -1
- package/_types/chains/zksync/actions/sendTransaction.d.ts.map +1 -1
- package/_types/chains/zksync/chainConfig.d.ts +692 -32
- package/_types/chains/zksync/chainConfig.d.ts.map +1 -1
- package/_types/chains/zksync/decorators/eip712.d.ts.map +1 -1
- package/_types/chains/zksync/formatters.d.ts +692 -32
- package/_types/chains/zksync/formatters.d.ts.map +1 -1
- package/_types/chains/zksync/serializers.d.ts +3 -3
- package/_types/chains/zksync/serializers.d.ts.map +1 -1
- package/_types/chains/zksync/types/chain.d.ts +2 -2
- package/_types/chains/zksync/types/chain.d.ts.map +1 -1
- package/_types/chains/zksync/types/eip712.d.ts +2 -2
- package/_types/chains/zksync/types/eip712.d.ts.map +1 -1
- package/_types/clients/decorators/public.d.ts +2 -2
- package/_types/clients/decorators/public.d.ts.map +1 -1
- package/_types/clients/decorators/wallet.d.ts +4 -4
- package/_types/clients/decorators/wallet.d.ts.map +1 -1
- package/_types/constants/blob.d.ts +11 -0
- package/_types/constants/blob.d.ts.map +1 -0
- package/_types/constants/kzg.d.ts +6 -0
- package/_types/constants/kzg.d.ts.map +1 -0
- package/_types/errors/blob.d.ts +40 -0
- package/_types/errors/blob.d.ts.map +1 -0
- package/_types/errors/transaction.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/errors/version.d.ts.map +1 -1
- package/_types/index.d.ts +11 -0
- package/_types/index.d.ts.map +1 -1
- package/_types/node/index.d.ts +1 -0
- package/_types/node/index.d.ts.map +1 -1
- package/_types/node/trustedSetups.d.ts +3 -0
- package/_types/node/trustedSetups.d.ts.map +1 -0
- package/_types/types/account.d.ts +3 -3
- package/_types/types/account.d.ts.map +1 -1
- package/_types/types/chain.d.ts +2 -2
- package/_types/types/chain.d.ts.map +1 -1
- package/_types/types/eip1193.d.ts +3 -3
- package/_types/types/eip1193.d.ts.map +1 -1
- package/_types/types/eip4844.d.ts +11 -0
- package/_types/types/eip4844.d.ts.map +1 -0
- package/_types/types/fee.d.ts +2 -2
- package/_types/types/fee.d.ts.map +1 -1
- package/_types/types/kzg.d.ts +24 -0
- package/_types/types/kzg.d.ts.map +1 -0
- package/_types/types/misc.d.ts +15 -1
- package/_types/types/misc.d.ts.map +1 -1
- package/_types/types/rpc.d.ts +4 -4
- package/_types/types/rpc.d.ts.map +1 -1
- package/_types/types/transaction.d.ts +44 -9
- package/_types/types/transaction.d.ts.map +1 -1
- package/_types/types/utils.d.ts +38 -2
- package/_types/types/utils.d.ts.map +1 -1
- package/_types/utils/blob/blobsToCommitments.d.ts +31 -0
- package/_types/utils/blob/blobsToCommitments.d.ts.map +1 -0
- package/_types/utils/blob/blobsToProofs.d.ts +37 -0
- package/_types/utils/blob/blobsToProofs.d.ts.map +1 -0
- package/_types/utils/blob/commitmentToVersionedHash.d.ts +35 -0
- package/_types/utils/blob/commitmentToVersionedHash.d.ts.map +1 -0
- package/_types/utils/blob/commitmentsToVersionedHashes.d.ts +34 -0
- package/_types/utils/blob/commitmentsToVersionedHashes.d.ts.map +1 -0
- package/_types/utils/blob/fromBlobs.d.ts +16 -0
- package/_types/utils/blob/fromBlobs.d.ts.map +1 -0
- package/_types/utils/blob/sidecarsToVersionedHashes.d.ts +29 -0
- package/_types/utils/blob/sidecarsToVersionedHashes.d.ts.map +1 -0
- package/_types/utils/blob/toBlobSidecars.d.ts +57 -0
- package/_types/utils/blob/toBlobSidecars.d.ts.map +1 -0
- package/_types/utils/blob/toBlobs.d.ts +28 -0
- package/_types/utils/blob/toBlobs.d.ts.map +1 -0
- package/_types/utils/encoding/toRlp.d.ts +1 -1
- package/_types/utils/encoding/toRlp.d.ts.map +1 -1
- package/_types/utils/formatters/formatter.d.ts.map +1 -1
- package/_types/utils/formatters/transaction.d.ts +25 -25
- package/_types/utils/formatters/transaction.d.ts.map +1 -1
- package/_types/utils/formatters/transactionRequest.d.ts +227 -3
- package/_types/utils/formatters/transactionRequest.d.ts.map +1 -1
- package/_types/utils/kzg/defineKzg.d.ts +21 -0
- package/_types/utils/kzg/defineKzg.d.ts.map +1 -0
- package/_types/utils/kzg/setupKzg.d.ts +21 -0
- package/_types/utils/kzg/setupKzg.d.ts.map +1 -0
- package/_types/utils/signature/hexToSignature.d.ts.map +1 -1
- package/_types/utils/signature/signatureToCompactSignature.d.ts +1 -1
- package/_types/utils/signature/signatureToHex.d.ts +2 -2
- package/_types/utils/signature/signatureToHex.d.ts.map +1 -1
- package/_types/utils/transaction/assertTransaction.d.ts +4 -1
- package/_types/utils/transaction/assertTransaction.d.ts.map +1 -1
- package/_types/utils/transaction/getSerializedTransactionType.d.ts +5 -3
- package/_types/utils/transaction/getSerializedTransactionType.d.ts.map +1 -1
- package/_types/utils/transaction/getTransactionType.d.ts +34 -3
- package/_types/utils/transaction/getTransactionType.d.ts.map +1 -1
- package/_types/utils/transaction/parseTransaction.d.ts +7 -5
- package/_types/utils/transaction/parseTransaction.d.ts.map +1 -1
- package/_types/utils/transaction/serializeTransaction.d.ts +13 -6
- package/_types/utils/transaction/serializeTransaction.d.ts.map +1 -1
- package/accounts/types.ts +9 -5
- package/accounts/utils/sign.ts +1 -0
- package/accounts/utils/signTransaction.ts +37 -22
- package/actions/index.ts +5 -0
- package/actions/public/call.ts +4 -0
- package/actions/public/estimateGas.ts +4 -0
- package/actions/public/getBlobBaseFee.ts +42 -0
- package/actions/wallet/prepareTransactionRequest.ts +134 -61
- package/actions/wallet/sendRawTransaction.ts +3 -5
- package/actions/wallet/sendTransaction.ts +32 -21
- package/actions/wallet/signTransaction.ts +34 -18
- package/chains/celo/serializers.ts +12 -25
- package/chains/celo/types.ts +5 -10
- package/chains/definitions/plumeTestnet.ts +28 -0
- package/chains/index.ts +1 -1
- package/chains/opStack/actions/buildProveWithdrawal.ts +31 -1
- package/chains/opStack/actions/estimateL1Fee.ts +15 -31
- package/chains/opStack/actions/estimateL1Gas.ts +15 -31
- package/chains/opStack/actions/finalizeWithdrawal.ts +3 -2
- package/chains/opStack/actions/proveWithdrawal.ts +3 -2
- package/chains/opStack/serializers.ts +5 -5
- package/chains/opStack/types/transaction.ts +9 -11
- package/chains/zksync/actions/sendTransaction.ts +2 -1
- package/chains/zksync/actions/signEip712Transaction.ts +2 -2
- package/chains/zksync/serializers.ts +14 -10
- package/chains/zksync/types/chain.ts +4 -7
- package/chains/zksync/types/eip712.ts +2 -2
- package/clients/decorators/public.ts +8 -4
- package/clients/decorators/wallet.ts +14 -6
- package/constants/blob.ts +21 -0
- package/constants/kzg.ts +9 -0
- package/errors/blob.ts +67 -0
- package/errors/transaction.ts +1 -0
- package/errors/version.ts +1 -1
- package/index.ts +64 -0
- package/node/index.ts +2 -0
- package/node/trustedSetups.ts +11 -0
- package/package.json +1 -1
- package/trusted-setups/mainnet.json +8265 -0
- package/trusted-setups/minimal.json +8265 -0
- package/types/account.ts +3 -3
- package/types/chain.ts +3 -1
- package/types/eip1193.ts +3 -3
- package/types/eip4844.ts +12 -0
- package/types/fee.ts +3 -2
- package/types/kzg.ts +32 -0
- package/types/misc.ts +20 -1
- package/types/rpc.ts +11 -6
- package/types/transaction.ts +75 -17
- package/types/utils.ts +49 -1
- package/utils/abi/encodeAbiParameters.ts +2 -2
- package/utils/blob/blobsToCommitments.ts +69 -0
- package/utils/blob/blobsToProofs.ts +93 -0
- package/utils/blob/commitmentToVersionedHash.ts +62 -0
- package/utils/blob/commitmentsToVersionedHashes.ts +71 -0
- package/utils/blob/fromBlobs.ts +73 -0
- package/utils/blob/sidecarsToVersionedHashes.ts +66 -0
- package/utils/blob/toBlobSidecars.ts +109 -0
- package/utils/blob/toBlobs.ts +113 -0
- package/utils/encoding/toRlp.ts +2 -2
- package/utils/formatters/transaction.ts +3 -2
- package/utils/formatters/transactionRequest.ts +28 -35
- package/utils/kzg/defineKzg.ts +30 -0
- package/utils/kzg/setupKzg.ts +38 -0
- package/utils/signature/compactSignatureToSignature.ts +3 -3
- package/utils/signature/hexToSignature.ts +6 -1
- package/utils/signature/signatureToCompactSignature.ts +4 -4
- package/utils/signature/signatureToHex.ts +9 -4
- package/utils/transaction/assertTransaction.ts +41 -0
- package/utils/transaction/getSerializedTransactionType.ts +34 -11
- package/utils/transaction/getTransactionType.ts +109 -26
- package/utils/transaction/parseTransaction.ts +128 -8
- package/utils/transaction/serializeAccessList.ts +1 -1
- package/utils/transaction/serializeTransaction.ts +172 -39
@@ -20,7 +20,11 @@ import type {
|
|
20
20
|
DeriveChain,
|
21
21
|
GetChainParameter,
|
22
22
|
} from '../../../types/chain.js'
|
23
|
+
import { type Hex } from '../../../types/misc.js'
|
23
24
|
import type { Prettify } from '../../../types/utils.js'
|
25
|
+
import { fromRlp } from '../../../utils/encoding/fromRlp.js'
|
26
|
+
import { toRlp } from '../../../utils/encoding/toRlp.js'
|
27
|
+
import { keccak256 } from '../../../utils/hash/keccak256.js'
|
24
28
|
import { contracts } from '../contracts.js'
|
25
29
|
import type { Withdrawal } from '../types/withdrawal.js'
|
26
30
|
import {
|
@@ -138,7 +142,10 @@ export async function buildProveWithdrawal<
|
|
138
142
|
version: outputRootProofVersion,
|
139
143
|
},
|
140
144
|
targetChain: chain,
|
141
|
-
withdrawalProof:
|
145
|
+
withdrawalProof: maybeAddProofNode(
|
146
|
+
keccak256(slot),
|
147
|
+
proof.storageProof[0].proof,
|
148
|
+
),
|
142
149
|
withdrawal,
|
143
150
|
} as unknown as BuildProveWithdrawalReturnType<
|
144
151
|
chain,
|
@@ -147,3 +154,26 @@ export async function buildProveWithdrawal<
|
|
147
154
|
accountOverride
|
148
155
|
>
|
149
156
|
}
|
157
|
+
|
158
|
+
export function maybeAddProofNode(key: string, proof: readonly Hex[]) {
|
159
|
+
const lastProofRlp = proof[proof.length - 1]
|
160
|
+
const lastProof = fromRlp(lastProofRlp)
|
161
|
+
if (lastProof.length !== 17) return proof
|
162
|
+
|
163
|
+
const modifiedProof = [...proof]
|
164
|
+
for (const item of lastProof) {
|
165
|
+
// Find any nodes located inside of the branch node.
|
166
|
+
if (!Array.isArray(item)) continue
|
167
|
+
// Check if the key inside the node matches the key we're looking for. We remove the first
|
168
|
+
// two characters (0x) and then we remove one more character (the first nibble) since this
|
169
|
+
// is the identifier for the type of node we're looking at. In this case we don't actually
|
170
|
+
// care what type of node it is because a branch node would only ever be the final proof
|
171
|
+
// element if (1) it includes the leaf node we're looking for or (2) it stores the value
|
172
|
+
// within itself. If (1) then this logic will work, if (2) then this won't find anything
|
173
|
+
// and we won't append any proof elements, which is exactly what we would want.
|
174
|
+
const suffix = item[0].slice(3)
|
175
|
+
if (typeof suffix !== 'string' || !key.endsWith(suffix)) continue
|
176
|
+
modifiedProof.push(toRlp(item))
|
177
|
+
}
|
178
|
+
return modifiedProof
|
179
|
+
}
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import type { Address } from 'abitype'
|
2
2
|
|
3
|
-
import { getChainId } from '../../../actions/public/getChainId.js'
|
4
3
|
import {
|
5
4
|
type ReadContractErrorType,
|
6
5
|
readContract,
|
@@ -12,18 +11,19 @@ import {
|
|
12
11
|
} from '../../../actions/wallet/prepareTransactionRequest.js'
|
13
12
|
import type { Client } from '../../../clients/createClient.js'
|
14
13
|
import type { Transport } from '../../../clients/transports/createTransport.js'
|
15
|
-
import { maxInt256 } from '../../../constants/number.js'
|
16
14
|
import type { ErrorType } from '../../../errors/utils.js'
|
17
15
|
import type { Account, GetAccountParameter } from '../../../types/account.js'
|
18
16
|
import { type Chain, type GetChainParameter } from '../../../types/chain.js'
|
19
|
-
import type {
|
20
|
-
|
17
|
+
import type {
|
18
|
+
TransactionRequestEIP1559,
|
19
|
+
TransactionSerializable,
|
20
|
+
} from '../../../types/transaction.js'
|
21
21
|
import type { RequestErrorType } from '../../../utils/buildRequest.js'
|
22
22
|
import { getChainContractAddress } from '../../../utils/chain/getChainContractAddress.js'
|
23
23
|
import { type HexToNumberErrorType } from '../../../utils/encoding/fromHex.js'
|
24
|
-
import { numberToHex } from '../../../utils/encoding/toHex.js'
|
25
24
|
import {
|
26
25
|
type AssertRequestErrorType,
|
26
|
+
type AssertRequestParameters,
|
27
27
|
assertRequest,
|
28
28
|
} from '../../../utils/transaction/assertRequest.js'
|
29
29
|
import {
|
@@ -55,12 +55,6 @@ export type EstimateL1FeeErrorType =
|
|
55
55
|
| ReadContractErrorType
|
56
56
|
| ErrorType
|
57
57
|
|
58
|
-
const stubSignature = {
|
59
|
-
r: numberToHex(maxInt256),
|
60
|
-
s: numberToHex(maxInt256),
|
61
|
-
v: 28n,
|
62
|
-
} as const satisfies Signature
|
63
|
-
|
64
58
|
/**
|
65
59
|
* Estimates the L1 data fee required to execute an L2 transaction.
|
66
60
|
*
|
@@ -107,32 +101,22 @@ export async function estimateL1Fee<
|
|
107
101
|
})()
|
108
102
|
|
109
103
|
// Populate transaction with required fields to accurately estimate gas.
|
110
|
-
const
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
),
|
115
|
-
(async () => {
|
116
|
-
if (chain) return chain.id
|
117
|
-
return getChainId(client)
|
118
|
-
})(),
|
119
|
-
])
|
104
|
+
const request = await prepareTransactionRequest(
|
105
|
+
client,
|
106
|
+
args as PrepareTransactionRequestParameters,
|
107
|
+
)
|
120
108
|
|
121
|
-
assertRequest(request)
|
109
|
+
assertRequest(request as AssertRequestParameters)
|
122
110
|
|
123
|
-
const transaction = serializeTransaction(
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
type: 'eip1559',
|
128
|
-
},
|
129
|
-
stubSignature,
|
130
|
-
)
|
111
|
+
const transaction = serializeTransaction({
|
112
|
+
...request,
|
113
|
+
type: 'eip1559',
|
114
|
+
} as TransactionSerializable)
|
131
115
|
|
132
116
|
return readContract(client, {
|
133
117
|
abi: gasPriceOracleAbi,
|
134
118
|
address: gasPriceOracleAddress,
|
135
119
|
functionName: 'getL1Fee',
|
136
|
-
args: [transaction],
|
120
|
+
args: [transaction as any],
|
137
121
|
})
|
138
122
|
}
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import type { Address } from 'abitype'
|
2
2
|
|
3
|
-
import { getChainId } from '../../../actions/public/getChainId.js'
|
4
3
|
import {
|
5
4
|
type ReadContractErrorType,
|
6
5
|
readContract,
|
@@ -12,18 +11,19 @@ import {
|
|
12
11
|
} from '../../../actions/wallet/prepareTransactionRequest.js'
|
13
12
|
import type { Client } from '../../../clients/createClient.js'
|
14
13
|
import type { Transport } from '../../../clients/transports/createTransport.js'
|
15
|
-
import { maxInt256 } from '../../../constants/number.js'
|
16
14
|
import type { ErrorType } from '../../../errors/utils.js'
|
17
15
|
import type { Account, GetAccountParameter } from '../../../types/account.js'
|
18
16
|
import { type Chain, type GetChainParameter } from '../../../types/chain.js'
|
19
|
-
import type {
|
20
|
-
|
17
|
+
import type {
|
18
|
+
TransactionRequestEIP1559,
|
19
|
+
TransactionSerializable,
|
20
|
+
} from '../../../types/transaction.js'
|
21
21
|
import type { RequestErrorType } from '../../../utils/buildRequest.js'
|
22
22
|
import { getChainContractAddress } from '../../../utils/chain/getChainContractAddress.js'
|
23
23
|
import { type HexToNumberErrorType } from '../../../utils/encoding/fromHex.js'
|
24
|
-
import { numberToHex } from '../../../utils/encoding/toHex.js'
|
25
24
|
import {
|
26
25
|
type AssertRequestErrorType,
|
26
|
+
type AssertRequestParameters,
|
27
27
|
assertRequest,
|
28
28
|
} from '../../../utils/transaction/assertRequest.js'
|
29
29
|
import {
|
@@ -55,12 +55,6 @@ export type EstimateL1GasErrorType =
|
|
55
55
|
| ReadContractErrorType
|
56
56
|
| ErrorType
|
57
57
|
|
58
|
-
const stubSignature = {
|
59
|
-
r: numberToHex(maxInt256),
|
60
|
-
s: numberToHex(maxInt256),
|
61
|
-
v: 28n,
|
62
|
-
} as const satisfies Signature
|
63
|
-
|
64
58
|
/**
|
65
59
|
* Estimates the L1 data gas required to execute an L2 transaction.
|
66
60
|
*
|
@@ -107,32 +101,22 @@ export async function estimateL1Gas<
|
|
107
101
|
})()
|
108
102
|
|
109
103
|
// Populate transaction with required fields to accurately estimate gas.
|
110
|
-
const
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
),
|
115
|
-
(async () => {
|
116
|
-
if (chain) return chain.id
|
117
|
-
return getChainId(client)
|
118
|
-
})(),
|
119
|
-
])
|
104
|
+
const request = await prepareTransactionRequest(
|
105
|
+
client,
|
106
|
+
args as PrepareTransactionRequestParameters,
|
107
|
+
)
|
120
108
|
|
121
|
-
assertRequest(request)
|
109
|
+
assertRequest(request as AssertRequestParameters)
|
122
110
|
|
123
|
-
const transaction = serializeTransaction(
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
type: 'eip1559',
|
128
|
-
},
|
129
|
-
stubSignature,
|
130
|
-
)
|
111
|
+
const transaction = serializeTransaction({
|
112
|
+
...request,
|
113
|
+
type: 'eip1559',
|
114
|
+
} as TransactionSerializable)
|
131
115
|
|
132
116
|
return readContract(client, {
|
133
117
|
abi: gasPriceOracleAbi,
|
134
118
|
address: gasPriceOracleAddress,
|
135
119
|
functionName: 'getL1GasUsed',
|
136
|
-
args: [transaction],
|
120
|
+
args: [transaction as any],
|
137
121
|
})
|
138
122
|
}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import type { Address } from 'abitype'
|
2
2
|
import {
|
3
3
|
type WriteContractErrorType,
|
4
|
+
type WriteContractParameters,
|
4
5
|
writeContract,
|
5
6
|
} from '../../../actions/wallet/writeContract.js'
|
6
7
|
import type { Client } from '../../../clients/createClient.js'
|
@@ -116,7 +117,7 @@ export async function finalizeWithdrawal<
|
|
116
117
|
: undefined
|
117
118
|
|
118
119
|
return writeContract(client, {
|
119
|
-
account
|
120
|
+
account: account!,
|
120
121
|
abi: portalAbi,
|
121
122
|
address: portalAddress,
|
122
123
|
chain,
|
@@ -126,5 +127,5 @@ export async function finalizeWithdrawal<
|
|
126
127
|
maxFeePerGas,
|
127
128
|
maxPriorityFeePerGas,
|
128
129
|
nonce,
|
129
|
-
})
|
130
|
+
} satisfies WriteContractParameters as any)
|
130
131
|
}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import type { Address } from 'abitype'
|
2
2
|
import {
|
3
3
|
type WriteContractErrorType,
|
4
|
+
type WriteContractParameters,
|
4
5
|
writeContract,
|
5
6
|
} from '../../../actions/wallet/writeContract.js'
|
6
7
|
import type { Client } from '../../../clients/createClient.js'
|
@@ -137,7 +138,7 @@ export async function proveWithdrawal<
|
|
137
138
|
: gas ?? undefined
|
138
139
|
|
139
140
|
return writeContract(client, {
|
140
|
-
account
|
141
|
+
account: account!,
|
141
142
|
abi: portalAbi,
|
142
143
|
address: portalAddress,
|
143
144
|
chain,
|
@@ -147,5 +148,5 @@ export async function proveWithdrawal<
|
|
147
148
|
maxFeePerGas,
|
148
149
|
maxPriorityFeePerGas,
|
149
150
|
nonce,
|
150
|
-
})
|
151
|
+
} satisfies WriteContractParameters as any)
|
151
152
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { InvalidAddressError } from '../../errors/address.js'
|
2
2
|
import type { ErrorType } from '../../errors/utils.js'
|
3
3
|
import type { ChainSerializers } from '../../types/chain.js'
|
4
|
-
import type { Hex } from '../../types/misc.js'
|
4
|
+
import type { Hex, Signature } from '../../types/misc.js'
|
5
5
|
import type { TransactionSerializable } from '../../types/transaction.js'
|
6
6
|
import type { RequiredBy } from '../../types/utils.js'
|
7
7
|
import { isAddress } from '../../utils/address/isAddress.js'
|
@@ -10,7 +10,6 @@ import { toHex } from '../../utils/encoding/toHex.js'
|
|
10
10
|
import { toRlp } from '../../utils/encoding/toRlp.js'
|
11
11
|
import {
|
12
12
|
type SerializeTransactionErrorType as SerializeTransactionErrorType_,
|
13
|
-
type SerializeTransactionFn,
|
14
13
|
serializeTransaction as serializeTransaction_,
|
15
14
|
} from '../../utils/transaction/serializeTransaction.js'
|
16
15
|
import type {
|
@@ -27,9 +26,10 @@ export type SerializeTransactionErrorType =
|
|
27
26
|
| SerializeTransactionErrorType_
|
28
27
|
| ErrorType
|
29
28
|
|
30
|
-
export
|
31
|
-
OpStackTransactionSerializable
|
32
|
-
|
29
|
+
export function serializeTransaction(
|
30
|
+
transaction: OpStackTransactionSerializable,
|
31
|
+
signature?: Signature,
|
32
|
+
) {
|
33
33
|
if (isDeposit(transaction)) return serializeTransactionDeposit(transaction)
|
34
34
|
return serializeTransaction_(
|
35
35
|
transaction as TransactionSerializable,
|
@@ -15,7 +15,7 @@ import type {
|
|
15
15
|
TransactionSerialized,
|
16
16
|
TransactionType,
|
17
17
|
} from '../../../types/transaction.js'
|
18
|
-
import type {
|
18
|
+
import type { OneOf } from '../../../types/utils.js'
|
19
19
|
|
20
20
|
type RpcTransaction<TPending extends boolean = boolean> =
|
21
21
|
RpcTransaction_<TPending> & {
|
@@ -77,17 +77,15 @@ export type OpStackTransactionReceiptOverrides = {
|
|
77
77
|
export type OpStackTransactionReceipt = TransactionReceipt &
|
78
78
|
OpStackTransactionReceiptOverrides
|
79
79
|
|
80
|
-
export type OpStackTransactionSerializable =
|
81
|
-
|
|
82
|
-
|
83
|
-
isSystemTx?: undefined
|
84
|
-
mint?: undefined
|
85
|
-
sourceHash?: undefined
|
86
|
-
})
|
80
|
+
export type OpStackTransactionSerializable = OneOf<
|
81
|
+
TransactionSerializableDeposit | TransactionSerializable
|
82
|
+
>
|
87
83
|
|
88
84
|
export type OpStackTransactionSerialized<
|
89
|
-
TType extends OpStackTransactionType =
|
90
|
-
> =
|
85
|
+
TType extends OpStackTransactionType = OpStackTransactionType,
|
86
|
+
> = TType extends 'deposit'
|
87
|
+
? TransactionSerializedDeposit
|
88
|
+
: TransactionSerialized<TType>
|
91
89
|
|
92
90
|
export type OpStackTransactionType = TransactionType | 'deposit'
|
93
91
|
|
@@ -102,7 +100,7 @@ export type TransactionSerializableDeposit<
|
|
102
100
|
isSystemTx?: boolean
|
103
101
|
mint?: bigint
|
104
102
|
sourceHash: Hex
|
105
|
-
type
|
103
|
+
type: 'deposit'
|
106
104
|
}
|
107
105
|
|
108
106
|
export type TransactionSerializedDeposit = `0x7e${string}`
|
@@ -73,6 +73,7 @@ export async function sendTransaction<
|
|
73
73
|
client: Client<Transport, TChain, TAccount>,
|
74
74
|
args: SendTransactionParameters<TChain, TAccount, TChainOverride>,
|
75
75
|
): Promise<SendTransactionReturnType> {
|
76
|
-
if (isEIP712Transaction(args
|
76
|
+
if (isEIP712Transaction(args as any))
|
77
|
+
return sendEip712Transaction(client, args)
|
77
78
|
return sendTransaction_(client, args)
|
78
79
|
}
|
@@ -1,12 +1,10 @@
|
|
1
|
+
import type { Signature } from '../../index.js'
|
1
2
|
import type { ChainSerializers } from '../../types/chain.js'
|
2
3
|
import type { TransactionSerializable } from '../../types/transaction.js'
|
3
4
|
import { concatHex } from '../../utils/data/concat.js'
|
4
5
|
import { toHex } from '../../utils/encoding/toHex.js'
|
5
6
|
import { toRlp } from '../../utils/encoding/toRlp.js'
|
6
|
-
import {
|
7
|
-
type SerializeTransactionFn,
|
8
|
-
serializeTransaction as serializeTransaction_,
|
9
|
-
} from '../../utils/transaction/serializeTransaction.js'
|
7
|
+
import { serializeTransaction as serializeTransaction_ } from '../../utils/transaction/serializeTransaction.js'
|
10
8
|
import type {
|
11
9
|
ZkSyncTransactionSerializable,
|
12
10
|
ZkSyncTransactionSerializableEIP712,
|
@@ -15,12 +13,18 @@ import type {
|
|
15
13
|
import { assertEip712Transaction } from './utils/assertEip712Transaction.js'
|
16
14
|
import { isEIP712Transaction } from './utils/isEip712Transaction.js'
|
17
15
|
|
18
|
-
export
|
19
|
-
ZkSyncTransactionSerializable
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
16
|
+
export function serializeTransaction(
|
17
|
+
transaction: ZkSyncTransactionSerializable,
|
18
|
+
signature?: Signature,
|
19
|
+
) {
|
20
|
+
if (isEIP712Transaction(transaction))
|
21
|
+
return serializeTransactionEIP712(
|
22
|
+
transaction as ZkSyncTransactionSerializableEIP712,
|
23
|
+
)
|
24
|
+
return serializeTransaction_(
|
25
|
+
transaction as TransactionSerializable,
|
26
|
+
signature,
|
27
|
+
)
|
24
28
|
}
|
25
29
|
|
26
30
|
export const serializers = {
|
@@ -1,10 +1,7 @@
|
|
1
1
|
import type { ChainFormatters } from '../../../types/chain.js'
|
2
2
|
import type { Chain, ChainFormatter } from '../../../types/chain.js'
|
3
|
-
import type {
|
4
|
-
TransactionSerializable,
|
5
|
-
TransactionSerializableGeneric,
|
6
|
-
} from '../../../types/transaction.js'
|
7
3
|
import type { EIP712DomainFn } from './eip712.js'
|
4
|
+
import type { ZkSyncTransactionSerializable } from './transaction.js'
|
8
5
|
|
9
6
|
export type ChainEIP712<
|
10
7
|
formatters extends ChainFormatters | undefined = ChainFormatters | undefined,
|
@@ -17,10 +14,10 @@ export type ChainEIP712<
|
|
17
14
|
| EIP712DomainFn<
|
18
15
|
formatters extends ChainFormatters
|
19
16
|
? formatters['transactionRequest'] extends ChainFormatter
|
20
|
-
?
|
17
|
+
? ZkSyncTransactionSerializable &
|
21
18
|
Parameters<formatters['transactionRequest']['format']>[0]
|
22
|
-
:
|
23
|
-
:
|
19
|
+
: ZkSyncTransactionSerializable
|
20
|
+
: ZkSyncTransactionSerializable,
|
24
21
|
TransactionSignable
|
25
22
|
>
|
26
23
|
| undefined
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import type { Address, TypedDataDomain } from 'abitype'
|
2
2
|
import type { Hex } from '../../../types/misc.js'
|
3
|
-
import type {
|
3
|
+
import type { ZkSyncTransactionSerializable } from './transaction.js'
|
4
4
|
|
5
5
|
type PaymasterParams = {
|
6
6
|
paymaster: Address
|
@@ -26,6 +26,6 @@ export type EIP712Domain<TransactionSignable> = {
|
|
26
26
|
|
27
27
|
export type EIP712DomainFn<
|
28
28
|
TTransactionSerializable extends
|
29
|
-
|
29
|
+
ZkSyncTransactionSerializable = ZkSyncTransactionSerializable,
|
30
30
|
TransactionSignable = {},
|
31
31
|
> = (transaction: TTransactionSerializable) => EIP712Domain<TransactionSignable>
|
@@ -217,8 +217,8 @@ import {
|
|
217
217
|
watchPendingTransactions,
|
218
218
|
} from '../../actions/public/watchPendingTransactions.js'
|
219
219
|
import {
|
220
|
-
type PrepareTransactionRequestParameterType,
|
221
220
|
type PrepareTransactionRequestParameters,
|
221
|
+
type PrepareTransactionRequestRequest,
|
222
222
|
type PrepareTransactionRequestReturnType,
|
223
223
|
prepareTransactionRequest,
|
224
224
|
} from '../../actions/wallet/prepareTransactionRequest.js'
|
@@ -1335,7 +1335,10 @@ export type PublicActions<
|
|
1335
1335
|
* })
|
1336
1336
|
*/
|
1337
1337
|
prepareTransactionRequest: <
|
1338
|
-
|
1338
|
+
const TRequest extends PrepareTransactionRequestRequest<
|
1339
|
+
TChain,
|
1340
|
+
TChainOverride
|
1341
|
+
>,
|
1339
1342
|
TChainOverride extends Chain | undefined = undefined,
|
1340
1343
|
TAccountOverride extends Account | Address | undefined = undefined,
|
1341
1344
|
>(
|
@@ -1344,7 +1347,7 @@ export type PublicActions<
|
|
1344
1347
|
TAccount,
|
1345
1348
|
TChainOverride,
|
1346
1349
|
TAccountOverride,
|
1347
|
-
|
1350
|
+
TRequest
|
1348
1351
|
>,
|
1349
1352
|
) => Promise<
|
1350
1353
|
PrepareTransactionRequestReturnType<
|
@@ -1352,7 +1355,8 @@ export type PublicActions<
|
|
1352
1355
|
TAccount,
|
1353
1356
|
TChainOverride,
|
1354
1357
|
TAccountOverride,
|
1355
|
-
|
1358
|
+
// @ts-expect-error
|
1359
|
+
TRequest
|
1356
1360
|
>
|
1357
1361
|
>
|
1358
1362
|
/**
|
@@ -23,8 +23,8 @@ import {
|
|
23
23
|
getPermissions,
|
24
24
|
} from '../../actions/wallet/getPermissions.js'
|
25
25
|
import {
|
26
|
-
type PrepareTransactionRequestParameterType,
|
27
26
|
type PrepareTransactionRequestParameters,
|
27
|
+
type PrepareTransactionRequestRequest,
|
28
28
|
type PrepareTransactionRequestReturnType,
|
29
29
|
prepareTransactionRequest,
|
30
30
|
} from '../../actions/wallet/prepareTransactionRequest.js'
|
@@ -44,6 +44,7 @@ import {
|
|
44
44
|
} from '../../actions/wallet/sendRawTransaction.js'
|
45
45
|
import {
|
46
46
|
type SendTransactionParameters,
|
47
|
+
type SendTransactionRequest,
|
47
48
|
type SendTransactionReturnType,
|
48
49
|
sendTransaction,
|
49
50
|
} from '../../actions/wallet/sendTransaction.js'
|
@@ -234,7 +235,10 @@ export type WalletActions<
|
|
234
235
|
* })
|
235
236
|
*/
|
236
237
|
prepareTransactionRequest: <
|
237
|
-
|
238
|
+
const TRequest extends PrepareTransactionRequestRequest<
|
239
|
+
TChain,
|
240
|
+
TChainOverride
|
241
|
+
>,
|
238
242
|
TChainOverride extends Chain | undefined = undefined,
|
239
243
|
TAccountOverride extends Account | Address | undefined = undefined,
|
240
244
|
>(
|
@@ -243,7 +247,7 @@ export type WalletActions<
|
|
243
247
|
TAccount,
|
244
248
|
TChainOverride,
|
245
249
|
TAccountOverride,
|
246
|
-
|
250
|
+
TRequest
|
247
251
|
>,
|
248
252
|
) => Promise<
|
249
253
|
PrepareTransactionRequestReturnType<
|
@@ -251,7 +255,8 @@ export type WalletActions<
|
|
251
255
|
TAccount,
|
252
256
|
TChainOverride,
|
253
257
|
TAccountOverride,
|
254
|
-
|
258
|
+
// @ts-expect-error
|
259
|
+
TRequest
|
255
260
|
>
|
256
261
|
>
|
257
262
|
/**
|
@@ -370,8 +375,11 @@ export type WalletActions<
|
|
370
375
|
* value: 1000000000000000000n,
|
371
376
|
* })
|
372
377
|
*/
|
373
|
-
sendTransaction: <
|
374
|
-
|
378
|
+
sendTransaction: <
|
379
|
+
const TRequest extends SendTransactionRequest<TChain, TChainOverride>,
|
380
|
+
TChainOverride extends Chain | undefined = undefined,
|
381
|
+
>(
|
382
|
+
args: SendTransactionParameters<TChain, TAccount, TChainOverride, TRequest>,
|
375
383
|
) => Promise<SendTransactionReturnType>
|
376
384
|
/**
|
377
385
|
* Calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256("\x19Ethereum Signed Message:\n" + len(message) + message))`.
|
@@ -0,0 +1,21 @@
|
|
1
|
+
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4844.md#parameters
|
2
|
+
|
3
|
+
/** Blob limit per transaction. */
|
4
|
+
export const blobsPerTransaction = 2
|
5
|
+
|
6
|
+
/** The number of bytes in a BLS scalar field element. */
|
7
|
+
export const bytesPerFieldElement = 32
|
8
|
+
|
9
|
+
/** The number of field elements in a blob. */
|
10
|
+
export const fieldElementsPerBlob = 4096
|
11
|
+
|
12
|
+
/** The number of bytes in a blob. */
|
13
|
+
export const bytesPerBlob = bytesPerFieldElement * fieldElementsPerBlob
|
14
|
+
|
15
|
+
/** Blob bytes limit per transaction. */
|
16
|
+
export const maxBytesPerTransaction =
|
17
|
+
bytesPerBlob * blobsPerTransaction -
|
18
|
+
// terminator byte (0x80).
|
19
|
+
1 -
|
20
|
+
// zero byte (0x00) appended to each field element.
|
21
|
+
1 * fieldElementsPerBlob * blobsPerTransaction
|
package/constants/kzg.ts
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4844.md#parameters
|
2
|
+
|
3
|
+
/** The number of bytes in a KZG commitment. */
|
4
|
+
export const bytesPerCommitment = 48
|
5
|
+
|
6
|
+
/** The number of bytes in a KZG proof. */
|
7
|
+
export const bytesPerProof = 48
|
8
|
+
|
9
|
+
export const versionedHashVersionKzg = 1
|
package/errors/blob.ts
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
import { versionedHashVersionKzg } from '../constants/kzg.js'
|
2
|
+
import type { Hash } from '../types/misc.js'
|
3
|
+
|
4
|
+
import { BaseError } from './base.js'
|
5
|
+
|
6
|
+
export type BlobSizeTooLargeErrorType = BlobSizeTooLargeError & {
|
7
|
+
name: 'BlobSizeTooLargeError'
|
8
|
+
}
|
9
|
+
export class BlobSizeTooLargeError extends BaseError {
|
10
|
+
override name = 'BlobSizeTooLargeError'
|
11
|
+
constructor({ maxSize, size }: { maxSize: number; size: number }) {
|
12
|
+
super('Blob size is too large.', {
|
13
|
+
metaMessages: [`Max: ${maxSize} bytes`, `Given: ${size} bytes`],
|
14
|
+
})
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
18
|
+
export type EmptyBlobErrorType = EmptyBlobError & {
|
19
|
+
name: 'EmptyBlobError'
|
20
|
+
}
|
21
|
+
export class EmptyBlobError extends BaseError {
|
22
|
+
override name = 'EmptyBlobError'
|
23
|
+
constructor() {
|
24
|
+
super('Blob data must not be empty.')
|
25
|
+
}
|
26
|
+
}
|
27
|
+
|
28
|
+
export type InvalidVersionedHashSizeErrorType =
|
29
|
+
InvalidVersionedHashSizeError & {
|
30
|
+
name: 'InvalidVersionedHashSizeError'
|
31
|
+
}
|
32
|
+
export class InvalidVersionedHashSizeError extends BaseError {
|
33
|
+
override name = 'InvalidVersionedHashSizeError'
|
34
|
+
constructor({
|
35
|
+
hash,
|
36
|
+
size,
|
37
|
+
}: {
|
38
|
+
hash: Hash
|
39
|
+
size: number
|
40
|
+
}) {
|
41
|
+
super(`Versioned hash "${hash}" size is invalid.`, {
|
42
|
+
metaMessages: ['Expected: 32', `Received: ${size}`],
|
43
|
+
})
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
export type InvalidVersionedHashVersionErrorType =
|
48
|
+
InvalidVersionedHashVersionError & {
|
49
|
+
name: 'InvalidVersionedHashVersionError'
|
50
|
+
}
|
51
|
+
export class InvalidVersionedHashVersionError extends BaseError {
|
52
|
+
override name = 'InvalidVersionedHashVersionError'
|
53
|
+
constructor({
|
54
|
+
hash,
|
55
|
+
version,
|
56
|
+
}: {
|
57
|
+
hash: Hash
|
58
|
+
version: number
|
59
|
+
}) {
|
60
|
+
super(`Versioned hash "${hash}" version is invalid.`, {
|
61
|
+
metaMessages: [
|
62
|
+
`Expected: ${versionedHashVersionKzg}`,
|
63
|
+
`Received: ${version}`,
|
64
|
+
],
|
65
|
+
})
|
66
|
+
}
|
67
|
+
}
|
package/errors/transaction.ts
CHANGED
@@ -69,6 +69,7 @@ export class InvalidSerializableTransactionError extends BaseError {
|
|
69
69
|
'- a `type` to the Transaction, or',
|
70
70
|
'- an EIP-1559 Transaction with `maxFeePerGas`, or',
|
71
71
|
'- an EIP-2930 Transaction with `gasPrice` & `accessList`, or',
|
72
|
+
'- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or',
|
72
73
|
'- a Legacy Transaction with `gasPrice`',
|
73
74
|
],
|
74
75
|
})
|
package/errors/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = '2.
|
1
|
+
export const version = '2.8.0'
|