thirdweb 5.74.0 → 5.75.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/dist/cjs/adapters/ethers5.js +2 -2
- package/dist/cjs/adapters/ethers5.js.map +1 -1
- package/dist/cjs/adapters/ethers6.js.map +1 -1
- package/dist/cjs/auth/verify-hash.js +2 -1
- package/dist/cjs/auth/verify-hash.js.map +1 -1
- package/dist/cjs/auth/verify-signature.js.map +1 -1
- package/dist/cjs/contract/actions/resolve-abi.js +4 -0
- package/dist/cjs/contract/actions/resolve-abi.js.map +1 -1
- package/dist/cjs/exports/wallets/smart.js +3 -1
- package/dist/cjs/exports/wallets/smart.js.map +1 -1
- package/dist/cjs/extensions/erc1271/checkContractWalletSignedTypedData.js +6 -2
- package/dist/cjs/extensions/erc1271/checkContractWalletSignedTypedData.js.map +1 -1
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js +27 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js +27 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js +71 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js +132 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js +121 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js +114 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js +114 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/execute.js +127 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/execute.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js +132 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js +139 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js +139 -0
- package/dist/cjs/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js +32 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js +31 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js +70 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js +70 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js +122 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js +71 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js +71 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js +117 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js +157 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js +51 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js +117 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js +51 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js +117 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js +139 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js.map +1 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js +117 -0
- package/dist/cjs/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js.map +1 -0
- package/dist/cjs/extensions/marketplace/direct-listings/write/buyFromListing.js +6 -0
- package/dist/cjs/extensions/marketplace/direct-listings/write/buyFromListing.js.map +1 -1
- package/dist/cjs/extensions/pack/createNewPack.js +1 -0
- package/dist/cjs/extensions/pack/createNewPack.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/Account/avatar.js +1 -0
- package/dist/cjs/react/web/ui/prebuilt/Account/avatar.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/Account/balance.js +1 -0
- package/dist/cjs/react/web/ui/prebuilt/Account/balance.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/Account/name.js +1 -0
- package/dist/cjs/react/web/ui/prebuilt/Account/name.js.map +1 -1
- package/dist/cjs/react/web/utils/usePreloadWalletProviders.js +1 -1
- package/dist/cjs/react/web/utils/usePreloadWalletProviders.js.map +1 -1
- package/dist/cjs/transaction/actions/estimate-gas.js.map +1 -1
- package/dist/cjs/transaction/actions/gasless/providers/biconomy.js.map +1 -1
- package/dist/cjs/transaction/actions/gasless/providers/engine.js.map +1 -1
- package/dist/cjs/transaction/actions/gasless/providers/openzeppelin.js.map +1 -1
- package/dist/cjs/transaction/actions/sign-transaction.js +4 -7
- package/dist/cjs/transaction/actions/sign-transaction.js.map +1 -1
- package/dist/cjs/transaction/actions/to-serializable-transaction.js.map +1 -1
- package/dist/cjs/transaction/actions/zksync/getEip721Domain.js.map +1 -1
- package/dist/cjs/transaction/serialize-transaction.js +76 -9
- package/dist/cjs/transaction/serialize-transaction.js.map +1 -1
- package/dist/cjs/utils/any-evm/keyless-transaction.js +25 -4
- package/dist/cjs/utils/any-evm/keyless-transaction.js.map +1 -1
- package/dist/cjs/utils/hashing/hashMessage.js +2 -2
- package/dist/cjs/utils/hashing/hashMessage.js.map +1 -1
- package/dist/cjs/utils/hashing/hashTypedData.js +8 -6
- package/dist/cjs/utils/hashing/hashTypedData.js.map +1 -1
- package/dist/cjs/utils/signatures/helpers/{parseTypedData.js → parse-typed-data.js} +4 -4
- package/dist/cjs/utils/signatures/helpers/parse-typed-data.js.map +1 -0
- package/dist/cjs/utils/signatures/sign-message.js +12 -6
- package/dist/cjs/utils/signatures/sign-message.js.map +1 -1
- package/dist/cjs/utils/signatures/sign-typed-data.js +11 -8
- package/dist/cjs/utils/signatures/sign-typed-data.js.map +1 -1
- package/dist/cjs/utils/signatures/sign.js +4 -4
- package/dist/cjs/utils/signatures/sign.js.map +1 -1
- package/dist/cjs/utils/signatures/signature-to-hex.js +17 -10
- package/dist/cjs/utils/signatures/signature-to-hex.js.map +1 -1
- package/dist/cjs/utils/types.js +5 -0
- package/dist/cjs/utils/types.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/coinbase/{coinbaseMobileSDK.js → coinbase-mobile.js} +1 -1
- package/dist/cjs/wallets/coinbase/coinbase-mobile.js.map +1 -0
- package/dist/cjs/wallets/coinbase/coinbase-wallet.js +2 -2
- package/dist/cjs/wallets/coinbase/coinbase-wallet.js.map +1 -1
- package/dist/cjs/wallets/coinbase/{coinbaseWebSDK.js → coinbase-web.js} +11 -11
- package/dist/cjs/wallets/coinbase/coinbase-web.js.map +1 -0
- package/dist/cjs/wallets/create-wallet.js +2 -2
- package/dist/cjs/wallets/create-wallet.js.map +1 -1
- package/dist/cjs/wallets/eip5792/get-calls-status.js +3 -3
- package/dist/cjs/wallets/eip5792/get-calls-status.js.map +1 -1
- package/dist/cjs/wallets/eip5792/get-capabilities.js +3 -3
- package/dist/cjs/wallets/eip5792/get-capabilities.js.map +1 -1
- package/dist/cjs/wallets/eip5792/send-calls.js +3 -3
- package/dist/cjs/wallets/eip5792/send-calls.js.map +1 -1
- package/dist/cjs/wallets/eip5792/show-calls-status.js +3 -3
- package/dist/cjs/wallets/eip5792/show-calls-status.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/actions/sign-typed-data.enclave.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js +2 -2
- package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/lib/iframe-wallet.js +3 -3
- package/dist/cjs/wallets/in-app/web/lib/iframe-wallet.js.map +1 -1
- package/dist/cjs/wallets/injected/index.js +2 -2
- package/dist/cjs/wallets/injected/index.js.map +1 -1
- package/dist/cjs/wallets/native/create-wallet.js +2 -2
- package/dist/cjs/wallets/native/create-wallet.js.map +1 -1
- package/dist/cjs/wallets/private-key.js +2 -5
- package/dist/cjs/wallets/private-key.js.map +1 -1
- package/dist/cjs/wallets/smart/index.js +26 -160
- package/dist/cjs/wallets/smart/index.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/bundler.js +1 -1
- package/dist/cjs/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/calls.js +2 -2
- package/dist/cjs/wallets/smart/lib/calls.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/paymaster.js +7 -6
- package/dist/cjs/wallets/smart/lib/paymaster.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/signing.js +166 -0
- package/dist/cjs/wallets/smart/lib/signing.js.map +1 -0
- package/dist/cjs/wallets/smart/lib/userop.js +1 -1
- package/dist/cjs/wallets/smart/lib/userop.js.map +1 -1
- package/dist/cjs/wallets/smart/presets/7579.js +218 -0
- package/dist/cjs/wallets/smart/presets/7579.js.map +1 -0
- package/dist/cjs/wallets/smart/presets/index.js +6 -0
- package/dist/cjs/wallets/smart/presets/index.js.map +1 -0
- package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
- package/dist/cjs/wallets/smart/types.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/controller.js +2 -2
- package/dist/cjs/wallets/wallet-connect/controller.js.map +1 -1
- package/dist/esm/adapters/ethers5.js +2 -2
- package/dist/esm/adapters/ethers5.js.map +1 -1
- package/dist/esm/adapters/ethers6.js.map +1 -1
- package/dist/esm/auth/verify-hash.js +2 -1
- package/dist/esm/auth/verify-hash.js.map +1 -1
- package/dist/esm/auth/verify-signature.js.map +1 -1
- package/dist/esm/contract/actions/resolve-abi.js +4 -0
- package/dist/esm/contract/actions/resolve-abi.js.map +1 -1
- package/dist/esm/exports/wallets/smart.js +2 -0
- package/dist/esm/exports/wallets/smart.js.map +1 -1
- package/dist/esm/extensions/erc1271/checkContractWalletSignedTypedData.js +6 -2
- package/dist/esm/extensions/erc1271/checkContractWalletSignedTypedData.js.map +1 -1
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js +24 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js +24 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js +65 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/accountId.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js +124 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js +113 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js +106 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js +106 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/execute.js +120 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/execute.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js +125 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js +132 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/installModule.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js +132 -0
- package/dist/esm/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js +29 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js +28 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js +64 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js +64 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js +114 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js +65 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js +65 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js +110 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js +150 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js +46 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js +110 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js +46 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js +110 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js +132 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.js.map +1 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js +110 -0
- package/dist/esm/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.js.map +1 -0
- package/dist/esm/extensions/marketplace/direct-listings/write/buyFromListing.js +6 -0
- package/dist/esm/extensions/marketplace/direct-listings/write/buyFromListing.js.map +1 -1
- package/dist/esm/extensions/pack/createNewPack.js +1 -0
- package/dist/esm/extensions/pack/createNewPack.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/Account/avatar.js +1 -0
- package/dist/esm/react/web/ui/prebuilt/Account/avatar.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/Account/balance.js +1 -0
- package/dist/esm/react/web/ui/prebuilt/Account/balance.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/Account/name.js +1 -0
- package/dist/esm/react/web/ui/prebuilt/Account/name.js.map +1 -1
- package/dist/esm/react/web/utils/usePreloadWalletProviders.js +1 -1
- package/dist/esm/react/web/utils/usePreloadWalletProviders.js.map +1 -1
- package/dist/esm/transaction/actions/estimate-gas.js +3 -3
- package/dist/esm/transaction/actions/estimate-gas.js.map +1 -1
- package/dist/esm/transaction/actions/gasless/providers/biconomy.js.map +1 -1
- package/dist/esm/transaction/actions/gasless/providers/engine.js.map +1 -1
- package/dist/esm/transaction/actions/gasless/providers/openzeppelin.js.map +1 -1
- package/dist/esm/transaction/actions/sign-transaction.js +5 -8
- package/dist/esm/transaction/actions/sign-transaction.js.map +1 -1
- package/dist/esm/transaction/actions/to-serializable-transaction.js.map +1 -1
- package/dist/esm/transaction/actions/zksync/getEip721Domain.js.map +1 -1
- package/dist/esm/transaction/serialize-transaction.js +76 -9
- package/dist/esm/transaction/serialize-transaction.js.map +1 -1
- package/dist/esm/utils/any-evm/keyless-transaction.js +26 -5
- package/dist/esm/utils/any-evm/keyless-transaction.js.map +1 -1
- package/dist/esm/utils/hashing/hashMessage.js +2 -2
- package/dist/esm/utils/hashing/hashMessage.js.map +1 -1
- package/dist/esm/utils/hashing/hashTypedData.js +8 -6
- package/dist/esm/utils/hashing/hashTypedData.js.map +1 -1
- package/dist/esm/utils/signatures/helpers/parse-typed-data.js +15 -0
- package/dist/esm/utils/signatures/helpers/parse-typed-data.js.map +1 -0
- package/dist/esm/utils/signatures/sign-message.js +12 -6
- package/dist/esm/utils/signatures/sign-message.js.map +1 -1
- package/dist/esm/utils/signatures/sign-typed-data.js +11 -8
- package/dist/esm/utils/signatures/sign-typed-data.js.map +1 -1
- package/dist/esm/utils/signatures/sign.js +4 -4
- package/dist/esm/utils/signatures/sign.js.map +1 -1
- package/dist/esm/utils/signatures/signature-to-hex.js +17 -10
- package/dist/esm/utils/signatures/signature-to-hex.js.map +1 -1
- package/dist/esm/utils/types.js +4 -1
- package/dist/esm/utils/types.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/coinbase/{coinbaseMobileSDK.js → coinbase-mobile.js} +1 -1
- package/dist/esm/wallets/coinbase/coinbase-mobile.js.map +1 -0
- package/dist/esm/wallets/coinbase/coinbase-wallet.js +2 -2
- package/dist/esm/wallets/coinbase/coinbase-wallet.js.map +1 -1
- package/dist/esm/wallets/coinbase/{coinbaseWebSDK.js → coinbase-web.js} +11 -11
- package/dist/esm/wallets/coinbase/coinbase-web.js.map +1 -0
- package/dist/esm/wallets/create-wallet.js +1 -1
- package/dist/esm/wallets/create-wallet.js.map +1 -1
- package/dist/esm/wallets/eip5792/get-calls-status.js +2 -2
- package/dist/esm/wallets/eip5792/get-calls-status.js.map +1 -1
- package/dist/esm/wallets/eip5792/get-capabilities.js +2 -2
- package/dist/esm/wallets/eip5792/get-capabilities.js.map +1 -1
- package/dist/esm/wallets/eip5792/send-calls.js +2 -2
- package/dist/esm/wallets/eip5792/send-calls.js.map +1 -1
- package/dist/esm/wallets/eip5792/show-calls-status.js +2 -2
- package/dist/esm/wallets/eip5792/show-calls-status.js.map +1 -1
- package/dist/esm/wallets/in-app/core/actions/sign-typed-data.enclave.js.map +1 -1
- package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js +1 -1
- package/dist/esm/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
- package/dist/esm/wallets/in-app/web/lib/iframe-wallet.js +2 -2
- package/dist/esm/wallets/in-app/web/lib/iframe-wallet.js.map +1 -1
- package/dist/esm/wallets/injected/index.js +1 -1
- package/dist/esm/wallets/injected/index.js.map +1 -1
- package/dist/esm/wallets/native/create-wallet.js +1 -1
- package/dist/esm/wallets/native/create-wallet.js.map +1 -1
- package/dist/esm/wallets/private-key.js +2 -5
- package/dist/esm/wallets/private-key.js.map +1 -1
- package/dist/esm/wallets/smart/index.js +24 -158
- package/dist/esm/wallets/smart/index.js.map +1 -1
- package/dist/esm/wallets/smart/lib/bundler.js +1 -1
- package/dist/esm/wallets/smart/lib/bundler.js.map +1 -1
- package/dist/esm/wallets/smart/lib/calls.js +2 -2
- package/dist/esm/wallets/smart/lib/calls.js.map +1 -1
- package/dist/esm/wallets/smart/lib/paymaster.js +7 -6
- package/dist/esm/wallets/smart/lib/paymaster.js.map +1 -1
- package/dist/esm/wallets/smart/lib/signing.js +161 -0
- package/dist/esm/wallets/smart/lib/signing.js.map +1 -0
- package/dist/esm/wallets/smart/lib/userop.js +1 -1
- package/dist/esm/wallets/smart/lib/userop.js.map +1 -1
- package/dist/esm/wallets/smart/presets/7579.js +215 -0
- package/dist/esm/wallets/smart/presets/7579.js.map +1 -0
- package/dist/esm/wallets/smart/presets/index.js +2 -0
- package/dist/esm/wallets/smart/presets/index.js.map +1 -0
- package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
- package/dist/esm/wallets/smart/types.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/controller.js +1 -1
- package/dist/esm/wallets/wallet-connect/controller.js.map +1 -1
- package/dist/types/adapters/ethers5.d.ts.map +1 -1
- package/dist/types/adapters/ethers6.d.ts.map +1 -1
- package/dist/types/auth/verify-hash.d.ts.map +1 -1
- package/dist/types/auth/verify-signature.d.ts +2 -2
- package/dist/types/auth/verify-signature.d.ts.map +1 -1
- package/dist/types/contract/actions/resolve-abi.d.ts.map +1 -1
- package/dist/types/exports/wallets/smart.d.ts +1 -0
- package/dist/types/exports/wallets/smart.d.ts.map +1 -1
- package/dist/types/exports/wallets.d.ts +1 -1
- package/dist/types/exports/wallets.d.ts.map +1 -1
- package/dist/types/exports/wallets.native.d.ts +1 -1
- package/dist/types/exports/wallets.native.d.ts.map +1 -1
- package/dist/types/extensions/erc1271/checkContractWalletSignedTypedData.d.ts +4 -4
- package/dist/types/extensions/erc1271/checkContractWalletSignedTypedData.d.ts.map +1 -1
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.d.ts +29 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.d.ts +29 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/accountId.d.ts +44 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/accountId.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.d.ts +97 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.d.ts +90 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.d.ts +83 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.d.ts +83 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/execute.d.ts +86 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/execute.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.d.ts +86 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/installModule.d.ts +93 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/installModule.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.d.ts +93 -0
- package/dist/types/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.d.ts +51 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.d.ts +41 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.d.ts +44 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.d.ts +44 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.d.ts +90 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.d.ts +44 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.d.ts +44 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.d.ts +79 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.d.ts +107 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.d.ts +33 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.d.ts +79 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.d.ts +33 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.d.ts +79 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.d.ts +93 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.d.ts.map +1 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.d.ts +79 -0
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.d.ts.map +1 -0
- package/dist/types/extensions/marketplace/direct-listings/write/buyFromListing.d.ts.map +1 -1
- package/dist/types/extensions/pack/createNewPack.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/Account/avatar.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/Account/balance.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/Account/name.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/providers/biconomy.d.ts +2 -2
- package/dist/types/transaction/actions/gasless/providers/biconomy.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/providers/engine.d.ts +2 -2
- package/dist/types/transaction/actions/gasless/providers/engine.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/providers/openzeppelin.d.ts +2 -2
- package/dist/types/transaction/actions/gasless/providers/openzeppelin.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/send-gasless-transaction.d.ts +2 -2
- package/dist/types/transaction/actions/gasless/send-gasless-transaction.d.ts.map +1 -1
- package/dist/types/transaction/actions/sign-transaction.d.ts +2 -2
- package/dist/types/transaction/actions/sign-transaction.d.ts.map +1 -1
- package/dist/types/transaction/actions/to-serializable-transaction.d.ts.map +1 -1
- package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts +2 -2
- package/dist/types/transaction/actions/zksync/getEip721Domain.d.ts.map +1 -1
- package/dist/types/transaction/serialize-transaction.d.ts +24 -4
- package/dist/types/transaction/serialize-transaction.d.ts.map +1 -1
- package/dist/types/utils/any-evm/keyless-transaction.d.ts +6 -4
- package/dist/types/utils/any-evm/keyless-transaction.d.ts.map +1 -1
- package/dist/types/utils/hashing/hashMessage.d.ts +3 -2
- package/dist/types/utils/hashing/hashMessage.d.ts.map +1 -1
- package/dist/types/utils/hashing/hashTypedData.d.ts +3 -3
- package/dist/types/utils/hashing/hashTypedData.d.ts.map +1 -1
- package/dist/types/utils/signatures/helpers/parse-typed-data.d.ts +6 -0
- package/dist/types/utils/signatures/helpers/parse-typed-data.d.ts.map +1 -0
- package/dist/types/utils/signatures/sign-message.d.ts.map +1 -1
- package/dist/types/utils/signatures/sign-typed-data.d.ts +3 -4
- package/dist/types/utils/signatures/sign-typed-data.d.ts.map +1 -1
- package/dist/types/utils/signatures/sign.d.ts +6 -2
- package/dist/types/utils/signatures/sign.d.ts.map +1 -1
- package/dist/types/utils/signatures/signature-to-hex.d.ts +7 -3
- package/dist/types/utils/signatures/signature-to-hex.d.ts.map +1 -1
- package/dist/types/utils/types.d.ts +13 -0
- package/dist/types/utils/types.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/coinbase/{coinbaseMobileSDK.d.ts → coinbase-mobile.d.ts} +2 -2
- package/dist/types/wallets/coinbase/coinbase-mobile.d.ts.map +1 -0
- package/dist/types/wallets/coinbase/{coinbaseWebSDK.d.ts → coinbase-web.d.ts} +1 -1
- package/dist/types/wallets/coinbase/coinbase-web.d.ts.map +1 -0
- package/dist/types/wallets/in-app/core/actions/sign-typed-data.enclave.d.ts +3 -4
- package/dist/types/wallets/in-app/core/actions/sign-typed-data.enclave.d.ts.map +1 -1
- package/dist/types/wallets/interfaces/wallet.d.ts +6 -4
- package/dist/types/wallets/interfaces/wallet.d.ts.map +1 -1
- package/dist/types/wallets/private-key.d.ts.map +1 -1
- package/dist/types/wallets/smart/index.d.ts +3 -2
- package/dist/types/wallets/smart/index.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/bundler.d.ts +3 -3
- package/dist/types/wallets/smart/lib/bundler.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/calls.d.ts +2 -2
- package/dist/types/wallets/smart/lib/calls.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/paymaster.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/signing.d.ts +20 -0
- package/dist/types/wallets/smart/lib/signing.d.ts.map +1 -0
- package/dist/types/wallets/smart/lib/userop.d.ts.map +1 -1
- package/dist/types/wallets/smart/presets/7579.d.ts +34 -0
- package/dist/types/wallets/smart/presets/7579.d.ts.map +1 -0
- package/dist/types/wallets/smart/presets/index.d.ts +2 -0
- package/dist/types/wallets/smart/presets/index.d.ts.map +1 -0
- package/dist/types/wallets/smart/smart-wallet.d.ts +2 -2
- package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
- package/dist/types/wallets/smart/types.d.ts +23 -9
- package/dist/types/wallets/smart/types.d.ts.map +1 -1
- package/dist/types/wallets/wallet-types.d.ts +1 -1
- package/dist/types/wallets/wallet-types.d.ts.map +1 -1
- package/package.json +23 -23
- package/src/adapters/ethers5.test.ts +92 -0
- package/src/adapters/ethers5.ts +6 -5
- package/src/adapters/ethers6.ts +3 -2
- package/src/adapters/viem.test.ts +5 -4
- package/src/auth/verify-hash.ts +2 -1
- package/src/auth/verify-signature.ts +2 -2
- package/src/contract/actions/resolve-abi.ts +6 -0
- package/src/exports/wallets/smart.ts +3 -0
- package/src/exports/wallets.native.ts +1 -1
- package/src/exports/wallets.ts +1 -1
- package/src/extensions/erc1271/checkContractWalletSignedTypedData.ts +9 -5
- package/src/extensions/erc7579/__generated__/IERC7579Account/events/ModuleInstalled.ts +24 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/events/ModuleUninstalled.ts +24 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/read/accountId.ts +71 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/read/isModuleInstalled.ts +153 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/read/isValidSignature.ts +133 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/read/supportsExecutionMode.ts +132 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/read/supportsModule.ts +128 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/write/execute.ts +149 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/write/executeFromExecutor.ts +158 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/write/installModule.ts +164 -0
- package/src/extensions/erc7579/__generated__/IERC7579Account/write/uninstallModule.ts +167 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/events/OwnershipTransferred.ts +49 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/events/Upgraded.ts +40 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.ts +70 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.ts +70 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.ts +134 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.ts +71 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.ts +71 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/addStake.ts +138 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/createAccountWithModules.ts +193 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/renounceOwnership.ts +50 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/transferOwnership.ts +139 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/unlockStake.ts +50 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/upgradeTo.ts +140 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/withdraw.ts +159 -0
- package/src/extensions/erc7579/__generated__/ModularAccountFactory/write/withdrawStake.ts +137 -0
- package/src/extensions/marketplace/direct-listings/direct-listings.test.ts +74 -14
- package/src/extensions/marketplace/direct-listings/write/buyFromListing.ts +6 -0
- package/src/extensions/pack/createNewPack.ts +1 -0
- package/src/react/web/ui/prebuilt/Account/avatar.tsx +1 -0
- package/src/react/web/ui/prebuilt/Account/balance.tsx +1 -0
- package/src/react/web/ui/prebuilt/Account/name.tsx +1 -0
- package/src/react/web/utils/usePreloadWalletProviders.ts +1 -1
- package/src/transaction/actions/estimate-gas.ts +3 -3
- package/src/transaction/actions/gasless/providers/biconomy.ts +3 -2
- package/src/transaction/actions/gasless/providers/engine.ts +2 -2
- package/src/transaction/actions/gasless/providers/openzeppelin.ts +2 -2
- package/src/transaction/actions/gasless/send-gasless-transaction.ts +2 -2
- package/src/transaction/actions/sign-transaction.test.ts +8 -15
- package/src/transaction/actions/sign-transaction.ts +9 -11
- package/src/transaction/actions/to-serializable-transaction.ts +2 -2
- package/src/transaction/actions/zksync/getEip721Domain.ts +2 -2
- package/src/transaction/serialize-transaction.test.ts +135 -229
- package/src/transaction/serialize-transaction.ts +131 -22
- package/src/utils/any-evm/keyless-transaction.test.ts +91 -0
- package/src/utils/any-evm/keyless-transaction.ts +43 -14
- package/src/utils/hashing/hashMessage.ts +4 -3
- package/src/utils/hashing/hashTypedData.ts +24 -27
- package/src/utils/signatures/helpers/parse-typed-data.test.ts +56 -0
- package/src/utils/signatures/helpers/parse-typed-data.ts +29 -0
- package/src/utils/signatures/sign-message.ts +15 -6
- package/src/utils/signatures/sign-typed-data.ts +18 -12
- package/src/utils/signatures/sign.ts +5 -6
- package/src/utils/signatures/signature-to-hex.ts +29 -13
- package/src/utils/types.ts +17 -0
- package/src/version.ts +1 -1
- package/src/wallets/coinbase/coinbase-mobile.test.ts +69 -0
- package/src/wallets/coinbase/{coinbaseMobileSDK.ts → coinbase-mobile.ts} +1 -1
- package/src/wallets/coinbase/coinbase-wallet.ts +2 -2
- package/src/wallets/coinbase/coinbase-web.test.ts +176 -0
- package/src/wallets/coinbase/{coinbaseWebSDK.ts → coinbase-web.ts} +13 -17
- package/src/wallets/create-wallet.ts +1 -1
- package/src/wallets/eip5792/get-calls-status.ts +2 -2
- package/src/wallets/eip5792/get-capabilities.ts +2 -2
- package/src/wallets/eip5792/send-calls.ts +2 -2
- package/src/wallets/eip5792/show-calls-status.ts +2 -2
- package/src/wallets/in-app/core/actions/sign-typed-data.enclave.ts +3 -4
- package/src/wallets/in-app/core/wallet/enclave-wallet.ts +1 -1
- package/src/wallets/in-app/web/lib/iframe-wallet.ts +2 -2
- package/src/wallets/injected/index.ts +1 -1
- package/src/wallets/interfaces/wallet.ts +7 -11
- package/src/wallets/native/create-wallet.ts +1 -1
- package/src/wallets/private-key.ts +16 -14
- package/src/wallets/smart/index.ts +31 -218
- package/src/wallets/smart/lib/bundler.ts +5 -4
- package/src/wallets/smart/lib/calls.ts +4 -2
- package/src/wallets/smart/lib/paymaster.ts +8 -6
- package/src/wallets/smart/lib/signing.ts +231 -0
- package/src/wallets/smart/lib/userop.ts +3 -2
- package/src/wallets/smart/presets/7579.ts +269 -0
- package/src/wallets/smart/presets/index.ts +1 -0
- package/src/wallets/smart/smart-wallet-dev.test.ts +5 -4
- package/src/wallets/smart/smart-wallet-integration-v07.test.ts +299 -0
- package/src/wallets/smart/smart-wallet-integration.test.ts +399 -0
- package/src/wallets/smart/smart-wallet-modular.test.ts +134 -0
- package/src/wallets/smart/smart-wallet.ts +3 -5
- package/src/wallets/smart/smart.test.ts +87 -0
- package/src/wallets/smart/types.ts +31 -8
- package/src/wallets/wallet-connect/controller.ts +1 -1
- package/src/wallets/wallet-connect/receiver/session-request.test.ts +5 -5
- package/src/wallets/wallet-types.ts +1 -1
- package/dist/cjs/utils/signatures/helpers/parseTypedData.js.map +0 -1
- package/dist/cjs/wallets/coinbase/coinbaseMobileSDK.js.map +0 -1
- package/dist/cjs/wallets/coinbase/coinbaseWebSDK.js.map +0 -1
- package/dist/esm/utils/signatures/helpers/parseTypedData.js +0 -15
- package/dist/esm/utils/signatures/helpers/parseTypedData.js.map +0 -1
- package/dist/esm/wallets/coinbase/coinbaseMobileSDK.js.map +0 -1
- package/dist/esm/wallets/coinbase/coinbaseWebSDK.js.map +0 -1
- package/dist/types/utils/signatures/helpers/parseTypedData.d.ts +0 -7
- package/dist/types/utils/signatures/helpers/parseTypedData.d.ts.map +0 -1
- package/dist/types/wallets/coinbase/coinbaseMobileSDK.d.ts.map +0 -1
- package/dist/types/wallets/coinbase/coinbaseWebSDK.d.ts.map +0 -1
- package/src/utils/signatures/helpers/parseTypedData.ts +0 -25
@@ -1,18 +1,10 @@
|
|
1
|
-
import
|
2
|
-
|
3
|
-
import
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
type TransactionSerializableLegacy,
|
9
|
-
type TransactionSerializedEIP1559,
|
10
|
-
type TransactionSerializedEIP2930,
|
11
|
-
type TransactionSerializedLegacy,
|
12
|
-
parseTransaction,
|
13
|
-
} from "viem";
|
14
|
-
|
15
|
-
import { checksumAddress } from "../utils/address.js";
|
1
|
+
import * as ox__Hex from "ox/Hex";
|
2
|
+
import * as ox__TransactionEnvelopeEip1559 from "ox/TransactionEnvelopeEip1559";
|
3
|
+
import * as ox__TransactionEnvelopeEip2930 from "ox/TransactionEnvelopeEip2930";
|
4
|
+
import * as ox__TransactionEnvelopeLegacy from "ox/TransactionEnvelopeLegacy";
|
5
|
+
import { describe, expect, test } from "vitest";
|
6
|
+
|
7
|
+
import { type Address, checksumAddress } from "../utils/address.js";
|
16
8
|
import { fromGwei, toWei } from "../utils/units.js";
|
17
9
|
import { serializeTransaction } from "./serialize-transaction.js";
|
18
10
|
|
@@ -24,7 +16,7 @@ const BASE_TRANSACTION = {
|
|
24
16
|
to: checksumAddress(TEST_ACCOUNT_B.address),
|
25
17
|
nonce: 785,
|
26
18
|
value: toWei("1"),
|
27
|
-
} as const
|
19
|
+
} as const;
|
28
20
|
|
29
21
|
describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
30
22
|
const baseEip1559 = {
|
@@ -32,21 +24,23 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
32
24
|
chainId: 1,
|
33
25
|
maxFeePerGas: fromGwei("2"),
|
34
26
|
maxPriorityFeePerGas: fromGwei("2"),
|
35
|
-
} as const
|
27
|
+
} as const;
|
36
28
|
|
37
29
|
test("default", () => {
|
38
|
-
const serialized = serializeTransaction
|
30
|
+
const serialized = serializeTransaction({
|
39
31
|
transaction: baseEip1559,
|
40
32
|
});
|
41
|
-
assertType<TransactionSerializedEIP1559>(serialized);
|
42
33
|
expect(serialized).toEqual(
|
43
34
|
"0x02ef0182031184773594008477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080c0",
|
44
35
|
);
|
45
36
|
|
46
|
-
const tx =
|
37
|
+
const tx = ox__TransactionEnvelopeEip1559.deserialize(
|
38
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
39
|
+
);
|
47
40
|
// The parsed transaction to address is not guaranteed to be checksummed, but our input address is
|
48
41
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
49
42
|
...baseEip1559,
|
43
|
+
nonce: BigInt(baseEip1559.nonce),
|
50
44
|
type: "eip1559",
|
51
45
|
});
|
52
46
|
});
|
@@ -58,18 +52,22 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
58
52
|
} as const;
|
59
53
|
const serialized = serializeTransaction({ transaction: args });
|
60
54
|
expect(serialized).toEqual("0x02c90180808080808080c0");
|
61
|
-
|
55
|
+
|
56
|
+
const tx = ox__TransactionEnvelopeEip1559.deserialize(
|
57
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
58
|
+
);
|
59
|
+
expect(tx).toEqual(args);
|
62
60
|
});
|
63
61
|
|
64
62
|
test("default (all zeros)", () => {
|
65
63
|
const baseEip1559Zero = {
|
66
|
-
to: TEST_ACCOUNT_B.address,
|
64
|
+
to: TEST_ACCOUNT_B.address as Address,
|
67
65
|
nonce: 0,
|
68
66
|
chainId: 1,
|
69
67
|
maxFeePerGas: 0n,
|
70
68
|
maxPriorityFeePerGas: 0n,
|
71
69
|
value: 0n,
|
72
|
-
}
|
70
|
+
};
|
73
71
|
|
74
72
|
const serialized = serializeTransaction({
|
75
73
|
transaction: baseEip1559Zero,
|
@@ -78,7 +76,9 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
78
76
|
expect(serialized).toEqual(
|
79
77
|
"0x02dd01808080809470997970c51812dc3a010c7d01b50e0d17dc79c88080c0",
|
80
78
|
);
|
81
|
-
const tx =
|
79
|
+
const tx = ox__TransactionEnvelopeEip1559.deserialize(
|
80
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
81
|
+
);
|
82
82
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
83
83
|
chainId: 1,
|
84
84
|
to: TEST_ACCOUNT_B.address,
|
@@ -95,7 +95,14 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
95
95
|
transaction: args,
|
96
96
|
});
|
97
97
|
expect(serialized).toEqual("0x02c90180800180808080c0");
|
98
|
-
expect(
|
98
|
+
expect(
|
99
|
+
ox__TransactionEnvelopeEip1559.deserialize(
|
100
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
101
|
+
),
|
102
|
+
).toEqual({
|
103
|
+
...args,
|
104
|
+
type: "eip1559",
|
105
|
+
});
|
99
106
|
});
|
100
107
|
|
101
108
|
test("args: gas", () => {
|
@@ -109,7 +116,11 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
109
116
|
expect(serialized).toEqual(
|
110
117
|
"0x02f101820311847735940084773594008252099470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080c0",
|
111
118
|
);
|
112
|
-
expect(
|
119
|
+
expect(
|
120
|
+
ox__TransactionEnvelopeEip1559.deserialize(
|
121
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
122
|
+
).gas,
|
123
|
+
).toEqual(args.gas);
|
113
124
|
});
|
114
125
|
|
115
126
|
test("args: accessList", () => {
|
@@ -121,31 +132,39 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
121
132
|
storageKeys: [
|
122
133
|
"0x0000000000000000000000000000000000000000000000000000000000000001",
|
123
134
|
"0x60fdd29ff912ce880cd3edaf9f932dc61d3dae823ea77e0323f94adb9f6a72fe",
|
124
|
-
],
|
135
|
+
] as const,
|
125
136
|
},
|
126
137
|
],
|
127
|
-
}
|
128
|
-
const serialized = serializeTransaction
|
138
|
+
};
|
139
|
+
const serialized = serializeTransaction({
|
129
140
|
transaction: args,
|
130
141
|
});
|
131
142
|
expect(serialized).toEqual(
|
132
143
|
"0x02f88b0182031184773594008477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080f85bf859940000000000000000000000000000000000000000f842a00000000000000000000000000000000000000000000000000000000000000001a060fdd29ff912ce880cd3edaf9f932dc61d3dae823ea77e0323f94adb9f6a72fe",
|
133
144
|
);
|
134
|
-
expect(
|
145
|
+
expect(
|
146
|
+
ox__TransactionEnvelopeEip1559.deserialize(
|
147
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
148
|
+
).accessList,
|
149
|
+
).toEqual(args.accessList);
|
135
150
|
});
|
136
151
|
|
137
152
|
test("args: data", () => {
|
138
153
|
const args = {
|
139
154
|
...baseEip1559,
|
140
155
|
data: "0x1234",
|
141
|
-
}
|
156
|
+
} as const;
|
142
157
|
const serialized = serializeTransaction({
|
143
158
|
transaction: args,
|
144
159
|
});
|
145
160
|
expect(serialized).toEqual(
|
146
161
|
"0x02f10182031184773594008477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a7640000821234c0",
|
147
162
|
);
|
148
|
-
expect(
|
163
|
+
expect(
|
164
|
+
ox__TransactionEnvelopeEip1559.deserialize(
|
165
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
166
|
+
).data,
|
167
|
+
).toEqual(args.data);
|
149
168
|
});
|
150
169
|
|
151
170
|
test("signed", async () => {
|
@@ -162,7 +181,11 @@ describe.runIf(process.env.TW_SECRET_KEY)("eip1559", () => {
|
|
162
181
|
expect(serialized).toEqual(
|
163
182
|
"0x02f8720182031184773594008477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080c001a0ce18214ff9d06ecaacb61811f9d6dc2be922e8cebddeaf6df0b30d5c498f6d33a05f0487c6dbbf2139f7c705d8054dbb16ecac8ae6256ce2c4c6f2e7ef35b3a496",
|
164
183
|
);
|
165
|
-
expect(
|
184
|
+
expect(
|
185
|
+
ox__TransactionEnvelopeEip1559.deserialize(
|
186
|
+
serialized as ox__TransactionEnvelopeEip1559.Serialized,
|
187
|
+
).yParity,
|
188
|
+
).toEqual(1);
|
166
189
|
});
|
167
190
|
|
168
191
|
test("signature", () => {
|
@@ -270,19 +293,21 @@ describe("eip2930", () => {
|
|
270
293
|
},
|
271
294
|
],
|
272
295
|
gasPrice: fromGwei("2"),
|
273
|
-
} as const
|
296
|
+
} as const;
|
274
297
|
|
275
298
|
test("default", () => {
|
276
|
-
const serialized = serializeTransaction
|
299
|
+
const serialized = serializeTransaction({
|
277
300
|
transaction: BASE_EIP2930_TRANSACTION,
|
278
301
|
});
|
279
|
-
assertType<TransactionSerializedEIP2930>(serialized);
|
280
302
|
expect(serialized).toEqual(
|
281
303
|
"0x01f863018203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080f838f7941234512345123451234512345123451234512345e1a060fdd29ff912ce880cd3edaf9f932dc61d3dae823ea77e0323f94adb9f6a72fe",
|
282
304
|
);
|
283
|
-
const tx =
|
305
|
+
const tx = ox__TransactionEnvelopeEip2930.deserialize(
|
306
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
307
|
+
);
|
284
308
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
285
309
|
...BASE_EIP2930_TRANSACTION,
|
310
|
+
nonce: BigInt(BASE_EIP2930_TRANSACTION.nonce),
|
286
311
|
type: "eip2930",
|
287
312
|
});
|
288
313
|
});
|
@@ -295,7 +320,7 @@ describe("eip2930", () => {
|
|
295
320
|
value: 0n,
|
296
321
|
gasPrice: 0n,
|
297
322
|
accessList: [],
|
298
|
-
}
|
323
|
+
};
|
299
324
|
|
300
325
|
const serialized = serializeTransaction({
|
301
326
|
transaction: baseEip2930Zero,
|
@@ -305,7 +330,9 @@ describe("eip2930", () => {
|
|
305
330
|
"0x01dc018080809470997970c51812dc3a010c7d01b50e0d17dc79c88080c0",
|
306
331
|
);
|
307
332
|
|
308
|
-
const tx =
|
333
|
+
const tx = ox__TransactionEnvelopeEip2930.deserialize(
|
334
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
335
|
+
);
|
309
336
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
310
337
|
chainId: 1,
|
311
338
|
to: checksumAddress(TEST_ACCOUNT_B.address),
|
@@ -325,26 +352,34 @@ describe("eip2930", () => {
|
|
325
352
|
},
|
326
353
|
],
|
327
354
|
gasPrice: fromGwei("2"),
|
328
|
-
}
|
329
|
-
const serialized = serializeTransaction
|
355
|
+
} as const;
|
356
|
+
const serialized = serializeTransaction({
|
330
357
|
transaction: args,
|
331
358
|
});
|
332
359
|
expect(serialized).toEqual(
|
333
360
|
"0x01f8450180847735940080808080f838f7940000000000000000000000000000000000000000e1a00000000000000000000000000000000000000000000000000000000000000001",
|
334
361
|
);
|
335
|
-
expect(
|
362
|
+
expect(
|
363
|
+
ox__TransactionEnvelopeEip2930.deserialize(
|
364
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
365
|
+
).accessList,
|
366
|
+
).toEqual(args.accessList);
|
336
367
|
});
|
337
368
|
|
338
369
|
test("minimal (w/ type)", () => {
|
339
370
|
const args = {
|
340
371
|
chainId: 1,
|
341
372
|
type: "eip2930",
|
342
|
-
}
|
373
|
+
};
|
343
374
|
const serialized = serializeTransaction({
|
344
375
|
transaction: args,
|
345
376
|
});
|
346
377
|
expect(serialized).toEqual("0x01c801808080808080c0");
|
347
|
-
expect(
|
378
|
+
expect(
|
379
|
+
ox__TransactionEnvelopeEip2930.deserialize(
|
380
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
381
|
+
).type,
|
382
|
+
).toEqual("eip2930");
|
348
383
|
});
|
349
384
|
|
350
385
|
test("args: gas", () => {
|
@@ -356,19 +391,27 @@ describe("eip2930", () => {
|
|
356
391
|
expect(serialized).toEqual(
|
357
392
|
"0x01f8650182031184773594008252099470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080f838f7941234512345123451234512345123451234512345e1a060fdd29ff912ce880cd3edaf9f932dc61d3dae823ea77e0323f94adb9f6a72fe",
|
358
393
|
);
|
359
|
-
expect(
|
394
|
+
expect(
|
395
|
+
ox__TransactionEnvelopeEip2930.deserialize(
|
396
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
397
|
+
).gas,
|
398
|
+
).toEqual(args.gas);
|
360
399
|
});
|
361
400
|
|
362
401
|
test("args: data", () => {
|
363
402
|
const args = {
|
364
403
|
...BASE_EIP2930_TRANSACTION,
|
365
404
|
data: "0x1234",
|
366
|
-
}
|
405
|
+
} as const;
|
367
406
|
const serialized = serializeTransaction({ transaction: args });
|
368
407
|
expect(serialized).toEqual(
|
369
408
|
"0x01f865018203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a7640000821234f838f7941234512345123451234512345123451234512345e1a060fdd29ff912ce880cd3edaf9f932dc61d3dae823ea77e0323f94adb9f6a72fe",
|
370
409
|
);
|
371
|
-
expect(
|
410
|
+
expect(
|
411
|
+
ox__TransactionEnvelopeEip2930.deserialize(
|
412
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
413
|
+
).data,
|
414
|
+
).toEqual(args.data);
|
372
415
|
});
|
373
416
|
|
374
417
|
test("signed", async () => {
|
@@ -384,10 +427,14 @@ describe("eip2930", () => {
|
|
384
427
|
expect(serialized).toEqual(
|
385
428
|
"0x01f8a6018203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080f838f7941234512345123451234512345123451234512345e1a060fdd29ff912ce880cd3edaf9f932dc61d3dae823ea77e0323f94adb9f6a72fe01a0dc7b3483c0b183823f07d77247c60678d861080acdc4fb8b9fd131770b475c40a040f16567391132746735aff4d5a3fa5ae42ff3d5d538e341870e0259dc40741a",
|
386
429
|
);
|
387
|
-
const tx =
|
430
|
+
const tx = ox__TransactionEnvelopeEip2930.deserialize(
|
431
|
+
serialized as ox__TransactionEnvelopeEip2930.Serialized,
|
432
|
+
);
|
388
433
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
389
434
|
...BASE_EIP2930_TRANSACTION,
|
390
|
-
|
435
|
+
nonce: BigInt(BASE_EIP2930_TRANSACTION.nonce),
|
436
|
+
r: ox__Hex.toBigInt(signature.r),
|
437
|
+
s: ox__Hex.toBigInt(signature.s),
|
391
438
|
type: "eip2930",
|
392
439
|
yParity: 1,
|
393
440
|
});
|
@@ -490,16 +537,19 @@ describe("legacy", () => {
|
|
490
537
|
};
|
491
538
|
|
492
539
|
test("default", () => {
|
493
|
-
const serialized = serializeTransaction
|
540
|
+
const serialized = serializeTransaction({
|
494
541
|
transaction: BASE_LEGACY_TRANSACTION,
|
495
542
|
});
|
496
|
-
|
543
|
+
|
497
544
|
expect(serialized).toEqual(
|
498
545
|
"0xe88203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080",
|
499
546
|
);
|
500
|
-
const tx =
|
547
|
+
const tx = ox__TransactionEnvelopeLegacy.deserialize(
|
548
|
+
serialized as ox__TransactionEnvelopeLegacy.Serialized,
|
549
|
+
);
|
501
550
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
502
551
|
...BASE_LEGACY_TRANSACTION,
|
552
|
+
nonce: BigInt(BASE_LEGACY_TRANSACTION.nonce),
|
503
553
|
type: "legacy",
|
504
554
|
});
|
505
555
|
});
|
@@ -510,7 +560,7 @@ describe("legacy", () => {
|
|
510
560
|
nonce: 0,
|
511
561
|
value: 0n,
|
512
562
|
gasPrice: 0n,
|
513
|
-
}
|
563
|
+
};
|
514
564
|
|
515
565
|
const serialized = serializeTransaction({
|
516
566
|
transaction: baseLegacyZero,
|
@@ -520,7 +570,9 @@ describe("legacy", () => {
|
|
520
570
|
"0xda8080809470997970c51812dc3a010c7d01b50e0d17dc79c88080",
|
521
571
|
);
|
522
572
|
|
523
|
-
const tx =
|
573
|
+
const tx = ox__TransactionEnvelopeLegacy.deserialize(
|
574
|
+
serialized as ox__TransactionEnvelopeLegacy.Serialized,
|
575
|
+
);
|
524
576
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
525
577
|
to: checksumAddress(TEST_ACCOUNT_B.address),
|
526
578
|
type: "legacy",
|
@@ -530,23 +582,27 @@ describe("legacy", () => {
|
|
530
582
|
test("minimal (w/ gasPrice)", () => {
|
531
583
|
const args = {
|
532
584
|
gasPrice: fromGwei("2"),
|
533
|
-
}
|
585
|
+
};
|
534
586
|
const serialized = serializeTransaction({
|
535
587
|
transaction: args,
|
536
588
|
});
|
537
589
|
expect(serialized).toEqual("0xca80847735940080808080");
|
538
|
-
expect(
|
590
|
+
expect(
|
591
|
+
ox__TransactionEnvelopeLegacy.deserialize(serialized).gasPrice,
|
592
|
+
).toEqual(args.gasPrice);
|
539
593
|
});
|
540
594
|
|
541
595
|
test("minimal (w/ type)", () => {
|
542
596
|
const args = {
|
543
597
|
type: "legacy",
|
544
|
-
}
|
598
|
+
};
|
545
599
|
const serialized = serializeTransaction({
|
546
600
|
transaction: args,
|
547
601
|
});
|
548
602
|
expect(serialized).toEqual("0xc6808080808080");
|
549
|
-
expect(
|
603
|
+
expect(ox__TransactionEnvelopeLegacy.deserialize(serialized).type).toEqual(
|
604
|
+
args.type,
|
605
|
+
);
|
550
606
|
});
|
551
607
|
|
552
608
|
test("args: gas", () => {
|
@@ -560,33 +616,39 @@ describe("legacy", () => {
|
|
560
616
|
expect(serialized).toEqual(
|
561
617
|
"0xea82031184773594008252099470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080",
|
562
618
|
);
|
563
|
-
expect(
|
619
|
+
expect(ox__TransactionEnvelopeLegacy.deserialize(serialized).gas).toEqual(
|
620
|
+
args.gas,
|
621
|
+
);
|
564
622
|
});
|
565
623
|
|
566
624
|
test("args: data", () => {
|
567
625
|
const args = {
|
568
626
|
...BASE_LEGACY_TRANSACTION,
|
569
627
|
data: "0x1234",
|
570
|
-
}
|
628
|
+
} as const;
|
571
629
|
const serialized = serializeTransaction({
|
572
630
|
transaction: args,
|
573
631
|
});
|
574
632
|
expect(serialized).toEqual(
|
575
633
|
"0xea8203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a7640000821234",
|
576
634
|
);
|
577
|
-
expect(
|
635
|
+
expect(ox__TransactionEnvelopeLegacy.deserialize(serialized).data).toEqual(
|
636
|
+
args.data,
|
637
|
+
);
|
578
638
|
});
|
579
639
|
|
580
640
|
test("args: chainId", () => {
|
581
641
|
const args = {
|
582
642
|
...BASE_LEGACY_TRANSACTION,
|
583
643
|
chainId: 69,
|
584
|
-
}
|
644
|
+
} as const;
|
585
645
|
const serialized = serializeTransaction({ transaction: args });
|
586
646
|
expect(serialized).toEqual(
|
587
647
|
"0xeb8203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a764000080458080",
|
588
648
|
);
|
589
|
-
expect(
|
649
|
+
expect(
|
650
|
+
ox__TransactionEnvelopeLegacy.deserialize(serialized).chainId,
|
651
|
+
).toEqual(args.chainId);
|
590
652
|
});
|
591
653
|
|
592
654
|
test("signed", async () => {
|
@@ -602,10 +664,13 @@ describe("legacy", () => {
|
|
602
664
|
expect(serialized).toEqual(
|
603
665
|
"0xf86b8203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a7640000801ca06cb0e8d21e5baf998fb9a05f47acd83692dc148f90b81b332a152f020da0ae98a0344e49bacb1ef7af7c2ffed9e88d3f0ae0aa4945c9da0a660a03717dd5621f98",
|
604
666
|
);
|
605
|
-
const tx =
|
667
|
+
const tx = ox__TransactionEnvelopeLegacy.deserialize(serialized);
|
606
668
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
607
669
|
...BASE_LEGACY_TRANSACTION,
|
608
|
-
|
670
|
+
nonce: BigInt(BASE_LEGACY_TRANSACTION.nonce),
|
671
|
+
r: ox__Hex.toBigInt(signature.r),
|
672
|
+
s: ox__Hex.toBigInt(signature.s),
|
673
|
+
v: 28,
|
609
674
|
yParity: 1,
|
610
675
|
type: "legacy",
|
611
676
|
});
|
@@ -653,13 +718,15 @@ describe("legacy", () => {
|
|
653
718
|
expect(serialized).toEqual(
|
654
719
|
"0xf86c8203118477359400809470997970c51812dc3a010c7d01b50e0d17dc79c8880de0b6b3a76400008081ada02f43314322cf4c5dd645b028aa0b0dadff0fb73c41a6f0620ff1dfb11601ac30a066f37a65e139fa4b6df33a42ab5ccaeaa7a109382e7430caefd1deee63962626",
|
655
720
|
);
|
656
|
-
const tx =
|
721
|
+
const tx = ox__TransactionEnvelopeLegacy.deserialize(serialized);
|
657
722
|
expect({ ...tx, to: tx.to ? checksumAddress(tx.to) : undefined }).toEqual({
|
658
723
|
...args,
|
659
|
-
|
724
|
+
nonce: BigInt(args.nonce),
|
725
|
+
r: ox__Hex.toBigInt(signature.r),
|
726
|
+
s: ox__Hex.toBigInt(signature.s),
|
660
727
|
yParity: 0,
|
661
728
|
type: "legacy",
|
662
|
-
v:
|
729
|
+
v: 173,
|
663
730
|
});
|
664
731
|
});
|
665
732
|
|
@@ -686,164 +753,3 @@ test("cannot infer type from transaction object", () => {
|
|
686
753
|
}),
|
687
754
|
).toThrow();
|
688
755
|
});
|
689
|
-
|
690
|
-
describe("miscellaneous", () => {
|
691
|
-
test("https://github.com/wevm/viem/issues/1433", () => {
|
692
|
-
expect(
|
693
|
-
serializeTransaction({
|
694
|
-
transaction: {
|
695
|
-
blockHash: null,
|
696
|
-
blockNumber: null,
|
697
|
-
from: "0xc702b9950e44f7d321fa16ee88bf8e1a561249ba",
|
698
|
-
gas: 51627n,
|
699
|
-
gasPrice: 3000000000n,
|
700
|
-
hash: "0x3eaa88a766e82cbe53c95218ab4c3cf316325802b5f75d086b5121007b918e92",
|
701
|
-
input:
|
702
|
-
"0xa9059cbb00000000000000000000000082fc882199816bcec06baf848eaec51c2f96c85b000000000000000000000000000000000000000000000000eccae3078bacd15d",
|
703
|
-
nonce: 117,
|
704
|
-
to: "0x55d398326f99059ff775485246999027b3197955",
|
705
|
-
transactionIndex: null,
|
706
|
-
value: 0n,
|
707
|
-
type: "legacy",
|
708
|
-
v: 84475n,
|
709
|
-
r: "0x73b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bf",
|
710
|
-
s: "0x354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23",
|
711
|
-
chainId: undefined,
|
712
|
-
typeHex: "0x0",
|
713
|
-
} as TransactionSerializable,
|
714
|
-
}),
|
715
|
-
).toMatchInlineSnapshot(
|
716
|
-
'"0xf8667584b2d05e0082c9ab9455d398326f99059ff775485246999027b31979558080830149fba073b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bfa0354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23"',
|
717
|
-
);
|
718
|
-
|
719
|
-
expect(
|
720
|
-
serializeTransaction({
|
721
|
-
transaction: {
|
722
|
-
blockHash: null,
|
723
|
-
blockNumber: null,
|
724
|
-
from: "0xc702b9950e44f7d321fa16ee88bf8e1a561249ba",
|
725
|
-
gas: 51627n,
|
726
|
-
gasPrice: 3000000000n,
|
727
|
-
hash: "0x3eaa88a766e82cbe53c95218ab4c3cf316325802b5f75d086b5121007b918e92",
|
728
|
-
input:
|
729
|
-
"0xa9059cbb00000000000000000000000082fc882199816bcec06baf848eaec51c2f96c85b000000000000000000000000000000000000000000000000eccae3078bacd15d",
|
730
|
-
nonce: 117,
|
731
|
-
to: "0x55d398326f99059ff775485246999027b3197955",
|
732
|
-
transactionIndex: null,
|
733
|
-
value: 0n,
|
734
|
-
type: "legacy",
|
735
|
-
v: 84476n,
|
736
|
-
r: "0x73b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bf",
|
737
|
-
s: "0x354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23",
|
738
|
-
chainId: undefined,
|
739
|
-
typeHex: "0x0",
|
740
|
-
} as TransactionSerializable,
|
741
|
-
}),
|
742
|
-
).toMatchInlineSnapshot(
|
743
|
-
'"0xf8667584b2d05e0082c9ab9455d398326f99059ff775485246999027b31979558080830149fca073b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bfa0354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23"',
|
744
|
-
);
|
745
|
-
|
746
|
-
expect(
|
747
|
-
serializeTransaction({
|
748
|
-
transaction: {
|
749
|
-
blockHash: null,
|
750
|
-
blockNumber: null,
|
751
|
-
from: "0xc702b9950e44f7d321fa16ee88bf8e1a561249ba",
|
752
|
-
gas: 51627n,
|
753
|
-
gasPrice: 3000000000n,
|
754
|
-
hash: "0x3eaa88a766e82cbe53c95218ab4c3cf316325802b5f75d086b5121007b918e92",
|
755
|
-
input:
|
756
|
-
"0xa9059cbb00000000000000000000000082fc882199816bcec06baf848eaec51c2f96c85b000000000000000000000000000000000000000000000000eccae3078bacd15d",
|
757
|
-
nonce: 117,
|
758
|
-
to: "0x55d398326f99059ff775485246999027b3197955",
|
759
|
-
transactionIndex: null,
|
760
|
-
value: 0n,
|
761
|
-
type: "legacy",
|
762
|
-
v: 35n,
|
763
|
-
r: "0x73b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bf",
|
764
|
-
s: "0x354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23",
|
765
|
-
chainId: undefined,
|
766
|
-
typeHex: "0x0",
|
767
|
-
} as TransactionSerializable,
|
768
|
-
}),
|
769
|
-
).toMatchInlineSnapshot(
|
770
|
-
'"0xf8637584b2d05e0082c9ab9455d398326f99059ff775485246999027b319795580801ba073b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bfa0354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23"',
|
771
|
-
);
|
772
|
-
|
773
|
-
expect(
|
774
|
-
serializeTransaction({
|
775
|
-
transaction: {
|
776
|
-
blockHash: null,
|
777
|
-
blockNumber: null,
|
778
|
-
from: "0xc702b9950e44f7d321fa16ee88bf8e1a561249ba",
|
779
|
-
gas: 51627n,
|
780
|
-
gasPrice: 3000000000n,
|
781
|
-
hash: "0x3eaa88a766e82cbe53c95218ab4c3cf316325802b5f75d086b5121007b918e92",
|
782
|
-
input:
|
783
|
-
"0xa9059cbb00000000000000000000000082fc882199816bcec06baf848eaec51c2f96c85b000000000000000000000000000000000000000000000000eccae3078bacd15d",
|
784
|
-
nonce: 117,
|
785
|
-
to: "0x55d398326f99059ff775485246999027b3197955",
|
786
|
-
transactionIndex: null,
|
787
|
-
value: 0n,
|
788
|
-
type: "legacy",
|
789
|
-
v: 36n,
|
790
|
-
r: "0x73b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bf",
|
791
|
-
s: "0x354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23",
|
792
|
-
chainId: undefined,
|
793
|
-
typeHex: "0x0",
|
794
|
-
} as TransactionSerializable,
|
795
|
-
}),
|
796
|
-
).toMatchInlineSnapshot(
|
797
|
-
'"0xf8637584b2d05e0082c9ab9455d398326f99059ff775485246999027b319795580801ca073b39769ff4a36515c8fca546550a3fdafebbf37fa9e22be2d92b44653ade7bfa0354c756a1aa3346e9b3ea5423ac99acfc005e9cce2cd698e14d792f43fa15a23"',
|
798
|
-
);
|
799
|
-
});
|
800
|
-
|
801
|
-
test("https://github.com/wevm/viem/issues/1849", async () => {
|
802
|
-
const tx = {
|
803
|
-
blockHash:
|
804
|
-
"0xbfafd5da42c7e715149a1fbcc20c40bcf5f62e013f60af9cdf07c27142b6a0ff",
|
805
|
-
blockNumber: 19295009n,
|
806
|
-
gas: 421374n,
|
807
|
-
gasPrice: 20701311233n,
|
808
|
-
input:
|
809
|
-
"0x3a2b7b980000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000726000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000065d96f1b00000000000000000000000000000000000000000000000000000000000000030b010c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000c23190af48df1c00000000000000000000000000000000000000000000000000000000000001000000000000000000000000002648f5592c09a260c601acde44e7f8f2944944fb0000000000000000000000000000000000000000000000000f43fc2c04ee000000000000000000000000000000000000000000000000000000c23190af48df1c00000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002bbe33f57f41a20b2f00dec91dcc1169597f36221f002710c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000023a03a3f85888a471f4effcafa03431511e388560000000000000000000000000000000000000000000000000000000000000000",
|
810
|
-
nonce: 38,
|
811
|
-
to: "0x2648f5592c09a260c601acde44e7f8f2944944fb",
|
812
|
-
transactionIndex: 74,
|
813
|
-
value: 57108134443873424n,
|
814
|
-
type: "legacy",
|
815
|
-
chainId: 1,
|
816
|
-
v: 38n,
|
817
|
-
r: "0x5abc283bf902f90884f800b2f810febd5e90f8d5077d89e150631bbcc547b7d1",
|
818
|
-
s: "0x5acc7718573bcd268256c996f2ae1bdd2bd97019992f44d5806b1cc843cde2e7",
|
819
|
-
typeHex: "0x0",
|
820
|
-
} as const;
|
821
|
-
|
822
|
-
const serialized = serializeTransaction({
|
823
|
-
transaction: { ...tx, data: tx.input },
|
824
|
-
});
|
825
|
-
|
826
|
-
expect(keccak256(serialized)).toEqual(
|
827
|
-
"0x6ed21df69b02678dfb290ef2a43d490303562eb387f70795766b37bfa9d09bd2",
|
828
|
-
);
|
829
|
-
});
|
830
|
-
|
831
|
-
test("Successfully handles hex as bigint", () => {
|
832
|
-
const transaction = {
|
833
|
-
to: "0x0000000000000000000000000000000000000000",
|
834
|
-
chainId: 31337,
|
835
|
-
data: "0x",
|
836
|
-
gas: 21001n,
|
837
|
-
nonce: 0,
|
838
|
-
accessList: undefined,
|
839
|
-
value: "0x0",
|
840
|
-
maxFeePerGas: 3100000000n,
|
841
|
-
maxPriorityFeePerGas: 1100000000n,
|
842
|
-
} as unknown as TransactionSerializable;
|
843
|
-
|
844
|
-
const signed = serializeTransaction({ transaction });
|
845
|
-
expect(signed).toMatchInlineSnapshot(
|
846
|
-
`"0x02ec827a6980844190ab0084b8c63f008252099400000000000000000000000000000000000000008330783080c0"`,
|
847
|
-
);
|
848
|
-
});
|
849
|
-
});
|