thirdweb 5.86.1 → 5.86.3
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/viem.js +3 -2
- package/dist/cjs/adapters/viem.js.map +1 -1
- package/dist/cjs/auth/verify-hash.js +24 -0
- package/dist/cjs/auth/verify-hash.js.map +1 -1
- package/dist/cjs/chains/chain-definitions/abstract.js +19 -0
- package/dist/cjs/chains/chain-definitions/abstract.js.map +1 -0
- package/dist/cjs/contract/actions/get-bytecode.js.map +1 -1
- package/dist/cjs/contract/actions/resolve-abi.js +3 -2
- package/dist/cjs/contract/actions/resolve-abi.js.map +1 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js +2 -2
- package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js +3 -2
- package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js.map +1 -1
- package/dist/cjs/event/actions/get-events.js +3 -2
- package/dist/cjs/event/actions/get-events.js.map +1 -1
- package/dist/cjs/exports/chains.js +3 -1
- package/dist/cjs/exports/chains.js.map +1 -1
- package/dist/cjs/extensions/erc4337/account/isAccountDeployed.js +5 -4
- package/dist/cjs/extensions/erc4337/account/isAccountDeployed.js.map +1 -1
- package/dist/cjs/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.js +2 -1
- package/dist/cjs/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.js.map +1 -1
- package/dist/cjs/gas/fee-data.js +1 -0
- package/dist/cjs/gas/fee-data.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Blobbie.js.map +1 -1
- package/dist/cjs/react/web/ui/prebuilt/Wallet/provider.js +0 -1
- package/dist/cjs/react/web/ui/prebuilt/Wallet/provider.js.map +1 -1
- package/dist/cjs/rpc/actions/eth_getLogs.js +2 -1
- package/dist/cjs/rpc/actions/eth_getLogs.js.map +1 -1
- package/dist/cjs/rpc/actions/eth_getStorageAt.js +6 -1
- package/dist/cjs/rpc/actions/eth_getStorageAt.js.map +1 -1
- package/dist/cjs/transaction/actions/estimate-gas.js +4 -3
- package/dist/cjs/transaction/actions/estimate-gas.js.map +1 -1
- package/dist/cjs/transaction/actions/gasless/providers/biconomy.js +4 -3
- package/dist/cjs/transaction/actions/gasless/providers/biconomy.js.map +1 -1
- package/dist/cjs/transaction/actions/simulate.js +3 -2
- package/dist/cjs/transaction/actions/simulate.js.map +1 -1
- package/dist/cjs/transaction/actions/to-serializable-transaction.js +3 -1
- package/dist/cjs/transaction/actions/to-serializable-transaction.js.map +1 -1
- package/dist/cjs/transaction/read-contract.js +2 -1
- package/dist/cjs/transaction/read-contract.js.map +1 -1
- package/dist/cjs/utils/any-evm/compute-deployment-address.js +2 -1
- package/dist/cjs/utils/any-evm/compute-deployment-address.js.map +1 -1
- package/dist/cjs/utils/bytecode/resolveImplementation.js +7 -3
- package/dist/cjs/utils/bytecode/resolveImplementation.js.map +1 -1
- package/dist/cjs/utils/extensions/airdrop/hash-entry-erc1155.js +2 -1
- package/dist/cjs/utils/extensions/airdrop/hash-entry-erc1155.js.map +1 -1
- package/dist/cjs/utils/extensions/airdrop/hash-entry-erc20.js +2 -1
- package/dist/cjs/utils/extensions/airdrop/hash-entry-erc20.js.map +1 -1
- package/dist/cjs/utils/extensions/airdrop/hash-entry-erc721.js +2 -1
- package/dist/cjs/utils/extensions/airdrop/hash-entry-erc721.js.map +1 -1
- package/dist/cjs/utils/extensions/drops/hash-entry.js +3 -2
- package/dist/cjs/utils/extensions/drops/hash-entry.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/eip5792/get-capabilities.js +2 -1
- package/dist/cjs/wallets/eip5792/get-capabilities.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/authentication/backend.js +2 -1
- package/dist/cjs/wallets/in-app/core/authentication/backend.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js +1 -1
- package/dist/cjs/wallets/in-app/core/wallet/enclave-wallet.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js +4 -7
- package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.js +14 -3
- package/dist/cjs/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js +1 -1
- package/dist/cjs/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.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/smart/index.js +9 -0
- package/dist/cjs/wallets/smart/index.js.map +1 -1
- package/dist/cjs/wallets/smart/lib/signing.js +1 -1
- package/dist/cjs/wallets/wallet-connect/controller.js +4 -2
- package/dist/cjs/wallets/wallet-connect/controller.js.map +1 -1
- package/dist/esm/adapters/viem.js +3 -2
- package/dist/esm/adapters/viem.js.map +1 -1
- package/dist/esm/auth/verify-hash.js +24 -0
- package/dist/esm/auth/verify-hash.js.map +1 -1
- package/dist/esm/chains/chain-definitions/abstract.js +16 -0
- package/dist/esm/chains/chain-definitions/abstract.js.map +1 -0
- package/dist/esm/contract/actions/get-bytecode.js.map +1 -1
- package/dist/esm/contract/actions/resolve-abi.js +3 -2
- package/dist/esm/contract/actions/resolve-abi.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js +2 -2
- package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/zkDeployProxy.js +3 -2
- package/dist/esm/contract/deployment/zksync/zkDeployProxy.js.map +1 -1
- package/dist/esm/event/actions/get-events.js +3 -2
- package/dist/esm/event/actions/get-events.js.map +1 -1
- package/dist/esm/exports/chains.js +1 -0
- package/dist/esm/exports/chains.js.map +1 -1
- package/dist/esm/extensions/erc4337/account/isAccountDeployed.js +5 -4
- package/dist/esm/extensions/erc4337/account/isAccountDeployed.js.map +1 -1
- package/dist/esm/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.js +2 -1
- package/dist/esm/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.js.map +1 -1
- package/dist/esm/gas/fee-data.js +1 -0
- package/dist/esm/gas/fee-data.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Blobbie.js.map +1 -1
- package/dist/esm/react/web/ui/prebuilt/Wallet/provider.js +0 -1
- package/dist/esm/react/web/ui/prebuilt/Wallet/provider.js.map +1 -1
- package/dist/esm/rpc/actions/eth_getLogs.js +2 -1
- package/dist/esm/rpc/actions/eth_getLogs.js.map +1 -1
- package/dist/esm/rpc/actions/eth_getStorageAt.js +6 -1
- package/dist/esm/rpc/actions/eth_getStorageAt.js.map +1 -1
- package/dist/esm/transaction/actions/estimate-gas.js +4 -3
- package/dist/esm/transaction/actions/estimate-gas.js.map +1 -1
- package/dist/esm/transaction/actions/gasless/providers/biconomy.js +4 -3
- package/dist/esm/transaction/actions/gasless/providers/biconomy.js.map +1 -1
- package/dist/esm/transaction/actions/simulate.js +3 -2
- package/dist/esm/transaction/actions/simulate.js.map +1 -1
- package/dist/esm/transaction/actions/to-serializable-transaction.js +3 -1
- package/dist/esm/transaction/actions/to-serializable-transaction.js.map +1 -1
- package/dist/esm/transaction/read-contract.js +2 -1
- package/dist/esm/transaction/read-contract.js.map +1 -1
- package/dist/esm/utils/any-evm/compute-deployment-address.js +2 -1
- package/dist/esm/utils/any-evm/compute-deployment-address.js.map +1 -1
- package/dist/esm/utils/bytecode/resolveImplementation.js +7 -3
- package/dist/esm/utils/bytecode/resolveImplementation.js.map +1 -1
- package/dist/esm/utils/extensions/airdrop/hash-entry-erc1155.js +2 -1
- package/dist/esm/utils/extensions/airdrop/hash-entry-erc1155.js.map +1 -1
- package/dist/esm/utils/extensions/airdrop/hash-entry-erc20.js +2 -1
- package/dist/esm/utils/extensions/airdrop/hash-entry-erc20.js.map +1 -1
- package/dist/esm/utils/extensions/airdrop/hash-entry-erc721.js +2 -1
- package/dist/esm/utils/extensions/airdrop/hash-entry-erc721.js.map +1 -1
- package/dist/esm/utils/extensions/drops/hash-entry.js +3 -2
- package/dist/esm/utils/extensions/drops/hash-entry.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/eip5792/get-capabilities.js +2 -1
- package/dist/esm/wallets/eip5792/get-capabilities.js.map +1 -1
- package/dist/esm/wallets/in-app/core/authentication/backend.js +2 -1
- package/dist/esm/wallets/in-app/core/authentication/backend.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/auth/iframe-auth.js +4 -7
- package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
- package/dist/esm/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.js +14 -3
- package/dist/esm/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.js.map +1 -1
- package/dist/esm/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js +1 -1
- package/dist/esm/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.js.map +1 -1
- package/dist/esm/wallets/injected/index.js +2 -2
- package/dist/esm/wallets/injected/index.js.map +1 -1
- package/dist/esm/wallets/smart/index.js +9 -0
- package/dist/esm/wallets/smart/index.js.map +1 -1
- package/dist/esm/wallets/smart/lib/signing.js +1 -1
- package/dist/esm/wallets/wallet-connect/controller.js +4 -2
- package/dist/esm/wallets/wallet-connect/controller.js.map +1 -1
- package/dist/types/adapters/ethers5.d.ts +1 -1
- package/dist/types/adapters/ethers6.d.ts +1 -1
- package/dist/types/adapters/viem.d.ts.map +1 -1
- package/dist/types/auth/verify-hash.d.ts.map +1 -1
- package/dist/types/chains/chain-definitions/abstract.d.ts +7 -0
- package/dist/types/chains/chain-definitions/abstract.d.ts.map +1 -0
- package/dist/types/contract/actions/get-bytecode.d.ts +1 -2
- package/dist/types/contract/actions/get-bytecode.d.ts.map +1 -1
- package/dist/types/contract/actions/resolve-abi.d.ts +1 -1
- package/dist/types/contract/actions/resolve-abi.d.ts.map +1 -1
- package/dist/types/contract/contract.d.ts +1 -1
- package/dist/types/contract/contract.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/bootstrap.d.ts +4 -4
- package/dist/types/contract/deployment/utils/bootstrap.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/clone-factory.d.ts +1 -1
- package/dist/types/contract/deployment/utils/clone-factory.d.ts.map +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts.map +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts.map +1 -1
- package/dist/types/event/actions/get-events.d.ts.map +1 -1
- package/dist/types/exports/chains.d.ts +1 -0
- package/dist/types/exports/chains.d.ts.map +1 -1
- package/dist/types/extensions/airdrop/__generated__/Airdrop/read/eip712Domain.d.ts +1 -1
- package/dist/types/extensions/airdrop/__generated__/Airdrop/read/eip712Domain.d.ts.map +1 -1
- package/dist/types/extensions/airdrop/__generated__/Airdrop/read/owner.d.ts +1 -1
- package/dist/types/extensions/airdrop/__generated__/Airdrop/read/owner.d.ts.map +1 -1
- package/dist/types/extensions/common/__generated__/IOwnable/read/owner.d.ts +1 -1
- package/dist/types/extensions/common/__generated__/IOwnable/read/owner.d.ts.map +1 -1
- package/dist/types/extensions/common/__generated__/IPlatformFee/read/getPlatformFeeInfo.d.ts +1 -1
- package/dist/types/extensions/common/__generated__/IPlatformFee/read/getPlatformFeeInfo.d.ts.map +1 -1
- package/dist/types/extensions/common/__generated__/IPrimarySale/read/primarySaleRecipient.d.ts +1 -1
- package/dist/types/extensions/common/__generated__/IPrimarySale/read/primarySaleRecipient.d.ts.map +1 -1
- package/dist/types/extensions/common/__generated__/IRoyalty/read/getDefaultRoyaltyInfo.d.ts +1 -1
- package/dist/types/extensions/common/__generated__/IRoyalty/read/getDefaultRoyaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/common/__generated__/IRoyalty/read/getRoyaltyInfoForToken.d.ts +1 -1
- package/dist/types/extensions/common/__generated__/IRoyalty/read/getRoyaltyInfoForToken.d.ts.map +1 -1
- package/dist/types/extensions/common/__generated__/IRoyalty/read/royaltyInfo.d.ts +1 -1
- package/dist/types/extensions/common/__generated__/IRoyalty/read/royaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/ens/__generated__/AddressResolver/read/addr.d.ts +1 -1
- package/dist/types/extensions/ens/__generated__/AddressResolver/read/addr.d.ts.map +1 -1
- package/dist/types/extensions/ens/__generated__/UniversalResolver/read/resolve.d.ts +1 -1
- package/dist/types/extensions/ens/__generated__/UniversalResolver/read/resolve.d.ts.map +1 -1
- package/dist/types/extensions/ens/__generated__/UniversalResolver/read/reverse.d.ts +1 -1
- package/dist/types/extensions/ens/__generated__/UniversalResolver/read/reverse.d.ts.map +1 -1
- package/dist/types/extensions/erc1155/__generated__/IDrop1155/read/getClaimConditionById.d.ts +1 -1
- package/dist/types/extensions/erc1155/__generated__/IDropSinglePhase1155/read/claimCondition.d.ts +1 -1
- package/dist/types/extensions/erc1155/__generated__/ISignatureMintERC1155/read/verify.d.ts +1 -1
- package/dist/types/extensions/erc1155/__generated__/ISignatureMintERC1155/read/verify.d.ts.map +1 -1
- package/dist/types/extensions/erc1155/drops/write/resetClaimEligibility.d.ts +1 -1
- package/dist/types/extensions/erc1155/drops/write/resetClaimEligibility.d.ts.map +1 -1
- package/dist/types/extensions/erc20/__generated__/IDropERC20/read/getClaimConditionById.d.ts +1 -1
- package/dist/types/extensions/erc20/__generated__/ISignatureMintERC20/read/verify.d.ts +1 -1
- package/dist/types/extensions/erc20/__generated__/ISignatureMintERC20/read/verify.d.ts.map +1 -1
- package/dist/types/extensions/erc20/__generated__/IVotes/read/delegates.d.ts +1 -1
- package/dist/types/extensions/erc20/__generated__/IVotes/read/delegates.d.ts.map +1 -1
- package/dist/types/extensions/erc20/drops/write/resetClaimEligibility.d.ts +1 -1
- package/dist/types/extensions/erc20/drops/write/resetClaimEligibility.d.ts.map +1 -1
- package/dist/types/extensions/erc2981/__generated__/IERC2981/read/royaltyInfo.d.ts +1 -1
- package/dist/types/extensions/erc2981/__generated__/IERC2981/read/royaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/accountImplementation.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/accountImplementation.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAccounts.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAccounts.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAccountsOfSigner.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAccountsOfSigner.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAddress.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAddress.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAllAccounts.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountFactory/read/getAllAccounts.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/getAllActiveSigners.d.ts +2 -2
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/getAllAdmins.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/getAllAdmins.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/getAllSigners.d.ts +2 -2
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/getPermissionsForSigner.d.ts +2 -2
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/verifySignerPermissionRequest.d.ts +1 -1
- package/dist/types/extensions/erc4337/__generated__/IAccountPermissions/read/verifySignerPermissionRequest.d.ts.map +1 -1
- package/dist/types/extensions/erc4337/account/isAccountDeployed.d.ts +2 -2
- package/dist/types/extensions/erc4337/account/isAccountDeployed.d.ts.map +1 -1
- package/dist/types/extensions/erc4626/__generated__/IERC4626/read/asset.d.ts +1 -1
- package/dist/types/extensions/erc4626/__generated__/IERC4626/read/asset.d.ts.map +1 -1
- package/dist/types/extensions/erc6551/__generated__/IERC6551Account/read/token.d.ts +1 -1
- package/dist/types/extensions/erc6551/__generated__/IERC6551Account/read/token.d.ts.map +1 -1
- package/dist/types/extensions/erc721/__generated__/IDrop/read/getClaimConditionById.d.ts +1 -1
- package/dist/types/extensions/erc721/__generated__/IDropSinglePhase/read/claimCondition.d.ts +1 -1
- package/dist/types/extensions/erc721/__generated__/IERC721A/read/getApproved.d.ts +1 -1
- package/dist/types/extensions/erc721/__generated__/IERC721A/read/getApproved.d.ts.map +1 -1
- package/dist/types/extensions/erc721/__generated__/IERC721A/read/ownerOf.d.ts +1 -1
- package/dist/types/extensions/erc721/__generated__/IERC721A/read/ownerOf.d.ts.map +1 -1
- package/dist/types/extensions/erc721/__generated__/ISignatureMintERC721/read/verify.d.ts +1 -1
- package/dist/types/extensions/erc721/__generated__/ISignatureMintERC721/read/verify.d.ts.map +1 -1
- package/dist/types/extensions/erc721/__generated__/ISignatureMintERC721_v2/read/verify.d.ts +1 -1
- package/dist/types/extensions/erc721/__generated__/ISignatureMintERC721_v2/read/verify.d.ts.map +1 -1
- package/dist/types/extensions/erc721/__generated__/Multiwrap/read/getWrappedContents.d.ts +1 -1
- package/dist/types/extensions/erc721/drops/write/resetClaimEligibility.d.ts +1 -1
- package/dist/types/extensions/erc721/drops/write/resetClaimEligibility.d.ts.map +1 -1
- package/dist/types/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.d.ts.map +1 -1
- package/dist/types/extensions/erc7504/__generated__/IRouterState/read/getAllExtensions.d.ts +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.d.ts +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/accountImplementation.d.ts.map +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.d.ts +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/entrypoint.d.ts.map +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.d.ts +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/getAddress.d.ts.map +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.d.ts +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/implementation.d.ts.map +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.d.ts +1 -1
- package/dist/types/extensions/erc7579/__generated__/ModularAccountFactory/read/owner.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IBundler/read/idGateway.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IBundler/read/idGateway.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IBundler/read/keyGateway.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IBundler/read/keyGateway.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdGateway/read/idRegistry.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdGateway/read/idRegistry.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdGateway/read/storageRegistry.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdGateway/read/storageRegistry.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdRegistry/read/custodyOf.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdRegistry/read/custodyOf.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdRegistry/read/idGateway.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdRegistry/read/idGateway.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdRegistry/read/recoveryOf.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IIdRegistry/read/recoveryOf.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyGateway/read/keyRegistry.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyGateway/read/keyRegistry.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyRegistry/read/idRegistry.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyRegistry/read/idRegistry.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyRegistry/read/keyDataOf.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyRegistry/read/keyDataOf.d.ts.map +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyRegistry/read/keyGateway.d.ts +1 -1
- package/dist/types/extensions/farcaster/__generated__/IKeyRegistry/read/keyGateway.d.ts.map +1 -1
- package/dist/types/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.d.ts +1 -1
- package/dist/types/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.d.ts.map +1 -1
- package/dist/types/extensions/lens/__generated__/LensHub/read/getProfile.d.ts +2 -2
- package/dist/types/extensions/lens/__generated__/LensHub/read/getPublication.d.ts +3 -3
- package/dist/types/extensions/lens/__generated__/LensHub/read/tokenDataOf.d.ts +1 -1
- package/dist/types/extensions/marketplace/__generated__/IDirectListings/read/getAllListings.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IDirectListings/read/getAllValidListings.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IDirectListings/read/getListing.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IEnglishAuctions/read/getAllAuctions.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IEnglishAuctions/read/getAllValidAuctions.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IEnglishAuctions/read/getAuction.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IEnglishAuctions/read/getWinningBid.d.ts +1 -1
- package/dist/types/extensions/marketplace/__generated__/IEnglishAuctions/read/getWinningBid.d.ts.map +1 -1
- package/dist/types/extensions/marketplace/__generated__/IMarketplace/read/getPlatformFeeInfo.d.ts +1 -1
- package/dist/types/extensions/marketplace/__generated__/IMarketplace/read/getPlatformFeeInfo.d.ts.map +1 -1
- package/dist/types/extensions/marketplace/__generated__/IOffers/read/getAllOffers.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IOffers/read/getAllValidOffers.d.ts +3 -3
- package/dist/types/extensions/marketplace/__generated__/IOffers/read/getOffer.d.ts +3 -3
- package/dist/types/extensions/modules/ClaimableERC1155/mint.d.ts +1 -1
- package/dist/types/extensions/modules/ClaimableERC1155/mint.d.ts.map +1 -1
- package/dist/types/extensions/modules/ClaimableERC1155/setClaimConditions.d.ts +1 -1
- package/dist/types/extensions/modules/ClaimableERC1155/setClaimConditions.d.ts.map +1 -1
- package/dist/types/extensions/modules/ClaimableERC20/mint.d.ts +1 -1
- package/dist/types/extensions/modules/ClaimableERC20/mint.d.ts.map +1 -1
- package/dist/types/extensions/modules/ClaimableERC20/setClaimConditions.d.ts +1 -1
- package/dist/types/extensions/modules/ClaimableERC20/setClaimConditions.d.ts.map +1 -1
- package/dist/types/extensions/modules/ClaimableERC721/mint.d.ts +1 -1
- package/dist/types/extensions/modules/ClaimableERC721/mint.d.ts.map +1 -1
- package/dist/types/extensions/modules/ClaimableERC721/setClaimConditions.d.ts +1 -1
- package/dist/types/extensions/modules/ClaimableERC721/setClaimConditions.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC1155/read/getClaimConditionByTokenId.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC1155/read/getSaleConfig.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC1155/read/getSaleConfig.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC20/read/getClaimCondition.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC20/read/getSaleConfig.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC20/read/getSaleConfig.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC721/read/getClaimCondition.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC721/read/getSaleConfig.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/ClaimableERC721/read/getSaleConfig.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/IModularCore/read/getInstalledModules.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC1155/read/getSaleConfig.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC1155/read/getSaleConfig.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC20/read/getSaleConfig.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC20/read/getSaleConfig.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC721/read/getSaleConfig.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/MintableERC721/read/getSaleConfig.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/OwnableRoles/read/owner.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/OwnableRoles/read/owner.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/getDefaultRoyaltyInfo.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/getDefaultRoyaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/getRoyaltyInfoForToken.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/getRoyaltyInfoForToken.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/getTransferValidator.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/getTransferValidator.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/royaltyInfo.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC1155/read/royaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/getDefaultRoyaltyInfo.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/getDefaultRoyaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/getRoyaltyInfoForToken.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/getRoyaltyInfoForToken.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/getTransferValidator.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/getTransferValidator.d.ts.map +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/royaltyInfo.d.ts +1 -1
- package/dist/types/extensions/modules/__generated__/RoyaltyERC721/read/royaltyInfo.d.ts.map +1 -1
- package/dist/types/extensions/modules/common/getOrDeployModule.d.ts +2 -2
- package/dist/types/extensions/modules/common/getOrDeployModule.d.ts.map +1 -1
- package/dist/types/extensions/multicall3/__generated__/IMulticall3/read/getCurrentBlockCoinbase.d.ts +1 -1
- package/dist/types/extensions/multicall3/__generated__/IMulticall3/read/getCurrentBlockCoinbase.d.ts.map +1 -1
- package/dist/types/extensions/pack/__generated__/IPack/read/getPackContents.d.ts +1 -1
- package/dist/types/extensions/pack/__generated__/IPack/read/getTokenOfBundle.d.ts +1 -1
- package/dist/types/extensions/permissions/__generated__/IPermissionsEnumerable/read/getRoleMember.d.ts +1 -1
- package/dist/types/extensions/permissions/__generated__/IPermissionsEnumerable/read/getRoleMember.d.ts.map +1 -1
- package/dist/types/extensions/split/__generated__/Split/read/payee.d.ts +1 -1
- package/dist/types/extensions/split/__generated__/Split/read/payee.d.ts.map +1 -1
- package/dist/types/extensions/thirdweb/__generated__/IContractPublisher/read/getAllPublishedContracts.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/IContractPublisher/read/getPublishedContract.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/IContractPublisher/read/getPublishedContractVersions.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/IRulesEngine/read/getAllRules.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/IRulesEngine/read/getRulesEngineOverride.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/IRulesEngine/read/getRulesEngineOverride.d.ts.map +1 -1
- package/dist/types/extensions/thirdweb/__generated__/ISignatureAction/read/verify.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/ISignatureAction/read/verify.d.ts.map +1 -1
- package/dist/types/extensions/thirdweb/__generated__/ITWFee/read/getFeeInfo.d.ts +1 -1
- package/dist/types/extensions/thirdweb/__generated__/ITWFee/read/getFeeInfo.d.ts.map +1 -1
- package/dist/types/extensions/thirdweb/__generated__/ITWMultichainRegistry/read/getAll.d.ts +1 -1
- package/dist/types/extensions/uniswap/__generated__/IUniswapV3Factory/read/getPool.d.ts +1 -1
- package/dist/types/extensions/uniswap/__generated__/IUniswapV3Factory/read/getPool.d.ts.map +1 -1
- package/dist/types/extensions/uniswap/__generated__/IUniswapV3Factory/read/owner.d.ts +1 -1
- package/dist/types/extensions/uniswap/__generated__/IUniswapV3Factory/read/owner.d.ts.map +1 -1
- package/dist/types/extensions/vote/__generated__/Vote/read/getAllProposals.d.ts +2 -2
- package/dist/types/extensions/vote/__generated__/Vote/read/proposals.d.ts +1 -1
- package/dist/types/extensions/vote/__generated__/Vote/read/proposals.d.ts.map +1 -1
- package/dist/types/extensions/vote/__generated__/Vote/read/token.d.ts +1 -1
- package/dist/types/extensions/vote/__generated__/Vote/read/token.d.ts.map +1 -1
- package/dist/types/gas/fee-data.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Blobbie.d.ts +1 -2
- package/dist/types/react/web/ui/ConnectWallet/Blobbie.d.ts.map +1 -1
- package/dist/types/react/web/ui/prebuilt/Wallet/provider.d.ts +0 -1
- package/dist/types/react/web/ui/prebuilt/Wallet/provider.d.ts.map +1 -1
- package/dist/types/rpc/actions/eth_getLogs.d.ts +1 -1
- package/dist/types/rpc/actions/eth_getLogs.d.ts.map +1 -1
- package/dist/types/rpc/actions/eth_getStorageAt.d.ts.map +1 -1
- package/dist/types/transaction/actions/estimate-gas.d.ts.map +1 -1
- package/dist/types/transaction/actions/gasless/providers/biconomy.d.ts.map +1 -1
- package/dist/types/transaction/actions/simulate.d.ts.map +1 -1
- package/dist/types/transaction/actions/to-serializable-transaction.d.ts.map +1 -1
- package/dist/types/transaction/read-contract.d.ts.map +1 -1
- package/dist/types/utils/any-evm/compute-deployment-address.d.ts.map +1 -1
- package/dist/types/utils/any-evm/keyless-transaction.d.ts +1 -1
- package/dist/types/utils/bytecode/resolveImplementation.d.ts +1 -1
- package/dist/types/utils/bytecode/resolveImplementation.d.ts.map +1 -1
- package/dist/types/utils/extensions/airdrop/hash-entry-erc1155.d.ts.map +1 -1
- package/dist/types/utils/extensions/airdrop/hash-entry-erc20.d.ts.map +1 -1
- package/dist/types/utils/extensions/airdrop/hash-entry-erc721.d.ts.map +1 -1
- package/dist/types/utils/extensions/drops/hash-entry.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/eip5792/get-capabilities.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/authentication/backend.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.d.ts +1 -1
- package/dist/types/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.d.ts.map +1 -1
- package/dist/types/wallets/smart/index.d.ts.map +1 -1
- package/dist/types/wallets/smart/lib/signing.d.ts +1 -1
- package/dist/types/wallets/wallet-connect/controller.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/adapters/viem.ts +3 -2
- package/src/auth/verify-hash.ts +33 -2
- package/src/chains/chain-definitions/abstract.ts +16 -0
- package/src/contract/actions/get-bytecode.ts +2 -5
- package/src/contract/actions/resolve-abi.ts +3 -3
- package/src/contract/contract.ts +1 -1
- package/src/contract/deployment/zksync/zkDeployDeterministic.ts +7 -5
- package/src/contract/deployment/zksync/zkDeployProxy.ts +8 -6
- package/src/event/actions/get-events.ts +3 -2
- package/src/exports/chains.ts +1 -0
- package/src/extensions/erc4337/account/isAccountDeployed.ts +9 -6
- package/src/extensions/erc721/lazyMinting/helpers/hashDelayedRevealBatch.ts +2 -1
- package/src/gas/fee-data.ts +1 -0
- package/src/react/web/ui/ConnectWallet/Blobbie.tsx +1 -2
- package/src/react/web/ui/prebuilt/Wallet/icon.test.tsx +2 -3
- package/src/react/web/ui/prebuilt/Wallet/provider.tsx +0 -1
- package/src/rpc/actions/eth_getLogs.ts +4 -4
- package/src/rpc/actions/eth_getStorageAt.ts +6 -1
- package/src/transaction/actions/estimate-gas.ts +4 -3
- package/src/transaction/actions/gasless/providers/biconomy.ts +4 -3
- package/src/transaction/actions/simulate.ts +3 -2
- package/src/transaction/actions/to-serializable-transaction.ts +4 -1
- package/src/transaction/read-contract.ts +2 -1
- package/src/utils/any-evm/compute-deployment-address.ts +2 -1
- package/src/utils/bytecode/resolveImplementation.ts +11 -6
- package/src/utils/extensions/airdrop/hash-entry-erc1155.ts +2 -1
- package/src/utils/extensions/airdrop/hash-entry-erc20.ts +2 -1
- package/src/utils/extensions/airdrop/hash-entry-erc721.ts +2 -1
- package/src/utils/extensions/drops/hash-entry.ts +3 -2
- package/src/version.ts +1 -1
- package/src/wallets/eip5792/get-capabilities.ts +2 -1
- package/src/wallets/in-app/core/authentication/backend.ts +3 -1
- package/src/wallets/in-app/core/wallet/enclave-wallet.ts +1 -1
- package/src/wallets/in-app/web/lib/auth/iframe-auth.ts +4 -8
- package/src/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.test.tsx +102 -0
- package/src/wallets/in-app/web/utils/iFrameCommunication/IframeCommunicator.ts +17 -4
- package/src/wallets/in-app/web/utils/iFrameCommunication/InAppWalletIframeCommunicator.ts +1 -1
- package/src/wallets/injected/index.ts +2 -2
- package/src/wallets/smart/index.ts +10 -0
- package/src/wallets/smart/lib/signing.ts +1 -1
- package/src/wallets/wallet-connect/controller.ts +4 -2
@@ -20,6 +20,7 @@ import {
|
|
20
20
|
eth_getLogs,
|
21
21
|
} from "../../rpc/actions/eth_getLogs.js";
|
22
22
|
import { getRpcClient } from "../../rpc/rpc.js";
|
23
|
+
import { getAddress } from "../../utils/address.js";
|
23
24
|
import type { Prettify } from "../../utils/type-utils.js";
|
24
25
|
import { type PreparedEvent, prepareEvent } from "../prepare-event.js";
|
25
26
|
import { isAbiEvent } from "../utils.js";
|
@@ -168,11 +169,11 @@ export async function getContractEvents<
|
|
168
169
|
? // if we have events passed in then we use those
|
169
170
|
events.map((e) => ({
|
170
171
|
...restParams,
|
171
|
-
address: contract
|
172
|
+
address: getAddress(contract.address),
|
172
173
|
topics: e.topics,
|
173
174
|
}))
|
174
175
|
: // otherwise we want "all" events (aka not pass any topics at all)
|
175
|
-
[{ ...restParams, address: contract
|
176
|
+
[{ ...restParams, address: getAddress(contract.address) }];
|
176
177
|
|
177
178
|
const logs = await Promise.all(
|
178
179
|
logsParams.map((ethLogParams) => eth_getLogs(rpcRequest, ethLogParams)),
|
package/src/exports/chains.ts
CHANGED
@@ -72,6 +72,7 @@ export { frameTestnet } from "../chains/chain-definitions/frame-testnet.js";
|
|
72
72
|
export { hokumTestnet } from "../chains/chain-definitions/hokum-testnet.js";
|
73
73
|
export { godWokenTestnetV1 } from "../chains/chain-definitions/god-woken-testnet-v1.js";
|
74
74
|
export { abstractTestnet } from "../chains/chain-definitions/abstract-testnet.js";
|
75
|
+
export { abstract } from "../chains/chain-definitions/abstract.js";
|
75
76
|
export { assetChainTestnet } from "../chains/chain-definitions/assetchain-testnet.js";
|
76
77
|
export { celoAlfajoresTestnet } from "../chains/chain-definitions/celo-alfajores-testnet.js";
|
77
78
|
export { fraxtalTestnet } from "../chains/chain-definitions/fraxtal-testnet.js";
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getContract } from "../../../contract/contract.js";
|
1
2
|
import type { BaseTransactionOptions } from "../../../transaction/types.js";
|
2
3
|
import { isContractDeployed } from "../../../utils/bytecode/is-contract-deployed.js";
|
3
4
|
import * as PredictAddress from "../__generated__/IAccountFactory/read/getAddress.js";
|
@@ -15,10 +16,10 @@ export {
|
|
15
16
|
* ```ts
|
16
17
|
* import { isAccountDeployed } from 'thirdweb/extensions/erc4337';
|
17
18
|
*
|
18
|
-
* const
|
19
|
+
* const isDeployed = await isAccountDeployed({
|
19
20
|
* contract,
|
20
21
|
* account,
|
21
|
-
*
|
22
|
+
* adminSigner: '0x...'
|
22
23
|
* });
|
23
24
|
*
|
24
25
|
* await isAccountDeployed({ contract, adminSigner });
|
@@ -29,8 +30,10 @@ export async function isAccountDeployed(
|
|
29
30
|
options: BaseTransactionOptions<PredictAddress.GetAddressParams>,
|
30
31
|
): Promise<boolean> {
|
31
32
|
const predictedAddress = await PredictAddress.getAddress(options);
|
32
|
-
return isContractDeployed(
|
33
|
-
|
34
|
-
|
35
|
-
|
33
|
+
return isContractDeployed(
|
34
|
+
getContract({
|
35
|
+
...options.contract,
|
36
|
+
address: predictedAddress,
|
37
|
+
}),
|
38
|
+
);
|
36
39
|
}
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { encodePacked } from "viem/utils";
|
2
2
|
import type { ThirdwebContract } from "../../../../contract/contract.js";
|
3
|
+
import { getAddress } from "../../../../utils/address.js";
|
3
4
|
import { keccak256 } from "../../../../utils/hashing/keccak256.js";
|
4
5
|
|
5
6
|
/**
|
@@ -15,7 +16,7 @@ export const hashDelayedRevealPassword = async (
|
|
15
16
|
return keccak256(
|
16
17
|
encodePacked(
|
17
18
|
["string", "uint256", "uint256", "address"],
|
18
|
-
[password, chainId, batchTokenIndex, contractAddress],
|
19
|
+
[password, chainId, batchTokenIndex, getAddress(contractAddress)],
|
19
20
|
),
|
20
21
|
);
|
21
22
|
};
|
package/src/gas/fee-data.ts
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
"use client";
|
2
2
|
import { hexToNumber } from "@noble/curves/abstract/utils";
|
3
3
|
import { useId, useMemo } from "react";
|
4
|
-
import type { Address } from "viem";
|
5
4
|
|
6
5
|
const COLOR_OPTIONS = [
|
7
6
|
["#fca5a5", "#b91c1c"],
|
@@ -26,7 +25,7 @@ const COLOR_OPTIONS = [
|
|
26
25
|
* @component
|
27
26
|
*/
|
28
27
|
export type BlobbieProps = {
|
29
|
-
address:
|
28
|
+
address: string;
|
30
29
|
style?: Omit<React.CSSProperties, "backgroundImage">;
|
31
30
|
className?: string;
|
32
31
|
size?: number;
|
@@ -5,9 +5,8 @@ import { WalletProvider } from "./provider.js";
|
|
5
5
|
|
6
6
|
describe("WalletIcon", () => {
|
7
7
|
it("should fetch wallet image", async () => {
|
8
|
-
|
9
|
-
|
10
|
-
);
|
8
|
+
const image = await fetchWalletImage({ id: "io.metamask" });
|
9
|
+
expect(image).toContain("data:image/");
|
11
10
|
});
|
12
11
|
|
13
12
|
it("should throw error if WalletId is not supported", async () => {
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import type { Address } from "abitype";
|
2
1
|
import {
|
3
2
|
type BlockNumber,
|
4
3
|
type BlockTag,
|
@@ -9,6 +8,7 @@ import {
|
|
9
8
|
type RpcLog,
|
10
9
|
formatLog,
|
11
10
|
} from "viem";
|
11
|
+
import { type Address, getAddress } from "../../utils/address.js";
|
12
12
|
import { numberToHex } from "../../utils/encoding/hex.js";
|
13
13
|
|
14
14
|
export type GetLogsBlockParams =
|
@@ -75,7 +75,7 @@ export async function eth_getLogs(
|
|
75
75
|
// in the case we have a blockHash
|
76
76
|
if (params.blockHash) {
|
77
77
|
const param: {
|
78
|
-
address?:
|
78
|
+
address?: Address | Address[];
|
79
79
|
topics: LogTopic[];
|
80
80
|
blockHash: `0x${string}`;
|
81
81
|
} = {
|
@@ -83,7 +83,7 @@ export async function eth_getLogs(
|
|
83
83
|
blockHash: params.blockHash,
|
84
84
|
};
|
85
85
|
if (params.address) {
|
86
|
-
param.address = params.address;
|
86
|
+
param.address = getAddress(params.address);
|
87
87
|
}
|
88
88
|
logs = await request({
|
89
89
|
method: "eth_getLogs",
|
@@ -93,7 +93,7 @@ export async function eth_getLogs(
|
|
93
93
|
// otherwise
|
94
94
|
else {
|
95
95
|
const param: {
|
96
|
-
address?:
|
96
|
+
address?: Address | Address[];
|
97
97
|
topics?: LogTopic[];
|
98
98
|
} & (
|
99
99
|
| {
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import type { BlockTag, EIP1193RequestFn, EIP1474Methods, Hex } from "viem";
|
2
|
+
import { getAddress } from "../../utils/address.js";
|
2
3
|
|
3
4
|
type GetStorageAtParams = {
|
4
5
|
address: string;
|
@@ -28,6 +29,10 @@ export async function eth_getStorageAt(
|
|
28
29
|
): Promise<Hex> {
|
29
30
|
return await request({
|
30
31
|
method: "eth_getStorageAt",
|
31
|
-
params: [
|
32
|
+
params: [
|
33
|
+
getAddress(params.address),
|
34
|
+
params.position,
|
35
|
+
params.blockTag ?? "latest",
|
36
|
+
],
|
32
37
|
});
|
33
38
|
}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import * as ox__Hex from "ox/Hex";
|
2
2
|
import { formatTransactionRequest } from "viem";
|
3
3
|
import { roundUpGas } from "../../gas/op-gas-fee-reducer.js";
|
4
|
+
import { getAddress } from "../../utils/address.js";
|
4
5
|
import { resolvePromisedValue } from "../../utils/promise/resolve-promised-value.js";
|
5
6
|
import type { Prettify } from "../../utils/type-utils.js";
|
6
7
|
import type { Account } from "../../wallets/interfaces/wallet.js";
|
@@ -117,9 +118,9 @@ export async function estimateGas(
|
|
117
118
|
let gas = await eth_estimateGas(
|
118
119
|
rpcRequest,
|
119
120
|
formatTransactionRequest({
|
120
|
-
to: toAddress,
|
121
|
+
to: toAddress ? getAddress(toAddress) : undefined,
|
121
122
|
data: encodedData,
|
122
|
-
from: fromAddress,
|
123
|
+
from: fromAddress ? getAddress(fromAddress) : undefined,
|
123
124
|
value,
|
124
125
|
// TODO: Remove this casting when we migrate this file to Ox
|
125
126
|
authorizationList: authorizationList?.map((auth) => ({
|
@@ -127,7 +128,7 @@ export async function estimateGas(
|
|
127
128
|
r: ox__Hex.fromNumber(auth.r),
|
128
129
|
s: ox__Hex.fromNumber(auth.s),
|
129
130
|
nonce: Number(auth.nonce),
|
130
|
-
contractAddress: auth.address,
|
131
|
+
contractAddress: getAddress(auth.address),
|
131
132
|
})),
|
132
133
|
}),
|
133
134
|
);
|
@@ -2,6 +2,7 @@ import type { Address } from "abitype";
|
|
2
2
|
import { encodeAbiParameters } from "viem";
|
3
3
|
import { ZERO_ADDRESS } from "../../../../constants/addresses.js";
|
4
4
|
import { getContract } from "../../../../contract/contract.js";
|
5
|
+
import { getAddress } from "../../../../utils/address.js";
|
5
6
|
import { isHex } from "../../../../utils/encoding/helpers/is-hex.js";
|
6
7
|
import { keccak256 } from "../../../../utils/hashing/keccak256.js";
|
7
8
|
import { stringify } from "../../../../utils/json.js";
|
@@ -95,9 +96,9 @@ export async function prepareBiconomyTransaction({
|
|
95
96
|
{ type: "bytes32" },
|
96
97
|
],
|
97
98
|
[
|
98
|
-
request.from,
|
99
|
-
request.to,
|
100
|
-
request.token,
|
99
|
+
getAddress(request.from),
|
100
|
+
getAddress(request.to),
|
101
|
+
getAddress(request.token),
|
101
102
|
request.txGas,
|
102
103
|
request.tokenGasPrice,
|
103
104
|
request.batchId,
|
@@ -3,6 +3,7 @@ import { decodeAbiParameters, formatTransactionRequest } from "viem";
|
|
3
3
|
import { eth_call } from "../../rpc/actions/eth_call.js";
|
4
4
|
import { getRpcClient } from "../../rpc/rpc.js";
|
5
5
|
import type { PreparedMethod } from "../../utils/abi/prepare-method.js";
|
6
|
+
import { getAddress } from "../../utils/address.js";
|
6
7
|
import { resolvePromisedValue } from "../../utils/promise/resolve-promised-value.js";
|
7
8
|
import type { Prettify } from "../../utils/type-utils.js";
|
8
9
|
import type { Account } from "../../wallets/interfaces/wallet.js";
|
@@ -61,8 +62,8 @@ export async function simulateTransaction<
|
|
61
62
|
|
62
63
|
const serializedTx = formatTransactionRequest({
|
63
64
|
data,
|
64
|
-
from,
|
65
|
-
to,
|
65
|
+
from: from ? getAddress(from) : undefined,
|
66
|
+
to: to ? getAddress(to) : undefined,
|
66
67
|
value,
|
67
68
|
accessList,
|
68
69
|
});
|
@@ -91,7 +91,10 @@ export async function toSerializableTransaction(
|
|
91
91
|
? await import("../../rpc/actions/eth_getTransactionCount.js").then(
|
92
92
|
({ eth_getTransactionCount }) =>
|
93
93
|
eth_getTransactionCount(rpcRequest, {
|
94
|
-
address:
|
94
|
+
address:
|
95
|
+
typeof from === "string"
|
96
|
+
? getAddress(from)
|
97
|
+
: getAddress(from.address),
|
95
98
|
blockTag: "pending",
|
96
99
|
}),
|
97
100
|
)
|
@@ -24,6 +24,7 @@ import {
|
|
24
24
|
type PreparedMethod,
|
25
25
|
prepareMethod,
|
26
26
|
} from "../utils/abi/prepare-method.js";
|
27
|
+
import { getAddress } from "../utils/address.js";
|
27
28
|
import type { Hex } from "../utils/encoding/hex.js";
|
28
29
|
|
29
30
|
export type ReadContractResult<outputs extends readonly AbiParameter[]> = // if the outputs are 0 length, return never, invalid case
|
@@ -214,7 +215,7 @@ export async function readContract<
|
|
214
215
|
const result = await eth_call(rpcRequest, {
|
215
216
|
data: encodedData,
|
216
217
|
to: contract.address,
|
217
|
-
from: options.from,
|
218
|
+
from: options.from ? getAddress(options.from) : undefined,
|
218
219
|
});
|
219
220
|
// use the prepared method to decode the result
|
220
221
|
const decoded = decodeAbiParameters(resolvedPreparedMethod[2], result);
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { type Hex, encodePacked } from "viem";
|
2
|
+
import { getAddress } from "../address.js";
|
2
3
|
import { ensureBytecodePrefix } from "../bytecode/prefix.js";
|
3
4
|
import { keccak256 } from "../hashing/keccak256.js";
|
4
5
|
import { getSaltHash } from "./get-salt-hash.js";
|
@@ -46,7 +47,7 @@ export function computeDeploymentAddress(
|
|
46
47
|
["bytes1", "address", "bytes32", "bytes32"],
|
47
48
|
[
|
48
49
|
"0xff",
|
49
|
-
options.create2FactoryAddress,
|
50
|
+
getAddress(options.create2FactoryAddress),
|
50
51
|
saltHash,
|
51
52
|
keccak256(encodePacked(["bytes"], [initBytecode])),
|
52
53
|
],
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { getBytecode } from "../../contract/actions/get-bytecode.js";
|
2
|
-
import type
|
2
|
+
import { type ThirdwebContract, getContract } from "../../contract/contract.js";
|
3
3
|
import { eth_getStorageAt } from "../../rpc/actions/eth_getStorageAt.js";
|
4
4
|
import { getRpcClient } from "../../rpc/rpc.js";
|
5
5
|
import { readContract } from "../../transaction/read-contract.js";
|
@@ -37,10 +37,12 @@ export async function resolveImplementation(
|
|
37
37
|
if (minimalProxyImplementationAddress) {
|
38
38
|
return {
|
39
39
|
address: minimalProxyImplementationAddress,
|
40
|
-
bytecode: await getBytecode(
|
41
|
-
|
42
|
-
|
43
|
-
|
40
|
+
bytecode: await getBytecode(
|
41
|
+
getContract({
|
42
|
+
...contract,
|
43
|
+
address: minimalProxyImplementationAddress,
|
44
|
+
}),
|
45
|
+
),
|
44
46
|
};
|
45
47
|
}
|
46
48
|
|
@@ -50,7 +52,10 @@ export async function resolveImplementation(
|
|
50
52
|
// In case of a BeaconProxy, it is setup as BeaconProxy --> Beacon --> Implementation
|
51
53
|
// Hence we replace the proxy address with Beacon address, and continue further resolving below
|
52
54
|
// biome-ignore lint/style/noParameterAssign: we purposefully mutate the contract object here
|
53
|
-
contract = {
|
55
|
+
contract = getContract({
|
56
|
+
...contract,
|
57
|
+
address: beacon,
|
58
|
+
});
|
54
59
|
|
55
60
|
implementationAddress = await getImplementationFromContractCall(contract);
|
56
61
|
} else {
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { encodePacked } from "viem";
|
2
|
+
import { getAddress } from "../../address.js";
|
2
3
|
import { keccak256 } from "../../hashing/keccak256.js";
|
3
4
|
import type { SnapshotEntryERC1155 } from "./types.js";
|
4
5
|
|
@@ -9,7 +10,7 @@ export async function hashEntryERC1155(options: {
|
|
9
10
|
encodePacked(
|
10
11
|
["address", "uint256", "uint256"],
|
11
12
|
[
|
12
|
-
options.entry.recipient,
|
13
|
+
getAddress(options.entry.recipient),
|
13
14
|
BigInt(options.entry.tokenId),
|
14
15
|
BigInt(options.entry.amount),
|
15
16
|
],
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { encodePacked } from "viem";
|
2
|
+
import { getAddress } from "../../address.js";
|
2
3
|
import { keccak256 } from "../../hashing/keccak256.js";
|
3
4
|
import { toUnits } from "../../units.js";
|
4
5
|
import type { SnapshotEntryERC20 } from "./types.js";
|
@@ -13,7 +14,7 @@ export async function hashEntryERC20(options: {
|
|
13
14
|
encodePacked(
|
14
15
|
["address", "uint256"],
|
15
16
|
[
|
16
|
-
options.entry.recipient,
|
17
|
+
getAddress(options.entry.recipient),
|
17
18
|
convertQuantity({
|
18
19
|
quantity: options.entry.amount.toString(),
|
19
20
|
tokenDecimals: decimals,
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { encodePacked } from "viem";
|
2
|
+
import { getAddress } from "../../address.js";
|
2
3
|
import { keccak256 } from "../../hashing/keccak256.js";
|
3
4
|
import type { SnapshotEntryERC721 } from "./types.js";
|
4
5
|
|
@@ -6,7 +7,7 @@ export async function hashEntryERC721(options: { entry: SnapshotEntryERC721 }) {
|
|
6
7
|
return keccak256(
|
7
8
|
encodePacked(
|
8
9
|
["address", "uint256"],
|
9
|
-
[options.entry.recipient, BigInt(options.entry.tokenId)],
|
10
|
+
[getAddress(options.entry.recipient), BigInt(options.entry.tokenId)],
|
10
11
|
),
|
11
12
|
);
|
12
13
|
}
|
@@ -5,6 +5,7 @@ import {
|
|
5
5
|
ZERO_ADDRESS,
|
6
6
|
isNativeTokenAddress,
|
7
7
|
} from "../../../constants/addresses.js";
|
8
|
+
import { getAddress } from "../../address.js";
|
8
9
|
import { keccak256 } from "../../hashing/keccak256.js";
|
9
10
|
import { convertQuantity } from "./convert-quantity.js";
|
10
11
|
import type { OverrideEntry } from "./types.js";
|
@@ -39,7 +40,7 @@ export async function hashEntry(options: {
|
|
39
40
|
encodePacked(
|
40
41
|
["address", "uint256", "uint256", "address"],
|
41
42
|
[
|
42
|
-
options.entry.address,
|
43
|
+
getAddress(options.entry.address),
|
43
44
|
convertQuantity({
|
44
45
|
quantity: options.entry.maxClaimable || "unlimited",
|
45
46
|
tokenDecimals: options.tokenDecimals,
|
@@ -48,7 +49,7 @@ export async function hashEntry(options: {
|
|
48
49
|
quantity: options.entry.price || "unlimited",
|
49
50
|
tokenDecimals: currencyDecimals,
|
50
51
|
}),
|
51
|
-
currencyAddress,
|
52
|
+
getAddress(currencyAddress),
|
52
53
|
],
|
53
54
|
),
|
54
55
|
);
|
package/src/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = "5.86.
|
1
|
+
export const version = "5.86.3";
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { getAddress } from "../../utils/address.js";
|
1
2
|
import type { Prettify } from "../../utils/type-utils.js";
|
2
3
|
import { isCoinbaseSDKWallet } from "../coinbase/coinbase-web.js";
|
3
4
|
import { isInAppWallet } from "../in-app/core/wallet/index.js";
|
@@ -80,7 +81,7 @@ export async function getCapabilities<const ID extends WalletId = WalletId>({
|
|
80
81
|
try {
|
81
82
|
return await provider.request({
|
82
83
|
method: "wallet_getCapabilities",
|
83
|
-
params: [account.address],
|
84
|
+
params: [getAddress(account.address)],
|
84
85
|
});
|
85
86
|
} catch (error: unknown) {
|
86
87
|
if (/unsupport|not support|not available/i.test((error as Error).message)) {
|
@@ -30,7 +30,9 @@ export async function backendAuthenticate(args: {
|
|
30
30
|
}),
|
31
31
|
});
|
32
32
|
|
33
|
-
if (!res.ok)
|
33
|
+
if (!res.ok) {
|
34
|
+
throw new Error("Failed to generate backend account");
|
35
|
+
}
|
34
36
|
|
35
37
|
return (await res.json()) satisfies AuthStoredTokenWithCookieReturnType;
|
36
38
|
}
|
@@ -154,7 +154,7 @@ export class EnclaveWallet implements IWebWallet {
|
|
154
154
|
"../../../../rpc/actions/eth_getTransactionCount.js"
|
155
155
|
).then(({ eth_getTransactionCount }) =>
|
156
156
|
eth_getTransactionCount(rpcRequest, {
|
157
|
-
address: this.address,
|
157
|
+
address: getAddress(this.address),
|
158
158
|
blockTag: "pending",
|
159
159
|
}),
|
160
160
|
),
|
@@ -107,7 +107,10 @@ export class Auth {
|
|
107
107
|
authToken: AuthStoredTokenWithCookieReturnType,
|
108
108
|
recoveryCode?: string,
|
109
109
|
): Promise<AuthLoginReturnType> {
|
110
|
-
|
110
|
+
// We don't call logout for backend auth because that is handled on the backend where the iframe isn't available to call. Moreover, logout clears the local storage which isn't applicable for backend auth.
|
111
|
+
if (authToken.storedToken.authProvider !== "Backend") {
|
112
|
+
await this.preLogin();
|
113
|
+
}
|
111
114
|
|
112
115
|
const user = await getUserStatus({
|
113
116
|
authToken: authToken.storedToken.cookieString,
|
@@ -321,13 +324,6 @@ export class Auth {
|
|
321
324
|
* @internal
|
322
325
|
*/
|
323
326
|
async logout(): Promise<LogoutReturnType> {
|
324
|
-
if (this.AuthQuerier) {
|
325
|
-
await this.AuthQuerier.call<LogoutReturnType>({
|
326
|
-
procedureName: "logout",
|
327
|
-
params: undefined,
|
328
|
-
});
|
329
|
-
}
|
330
|
-
|
331
327
|
const isRemoveAuthCookie = await this.localStorage.removeAuthCookie();
|
332
328
|
const isRemoveUserId = await this.localStorage.removeWalletUserId();
|
333
329
|
|
@@ -0,0 +1,102 @@
|
|
1
|
+
import { beforeEach, describe, expect, it, vi } from "vitest";
|
2
|
+
import { IframeCommunicator } from "./IframeCommunicator.js";
|
3
|
+
|
4
|
+
describe("IframeCommunicator", () => {
|
5
|
+
// biome-ignore lint/suspicious/noExplicitAny: mock
|
6
|
+
let mockLocalStorage: any;
|
7
|
+
let mockContainer: HTMLElement;
|
8
|
+
let mockIframe: HTMLIFrameElement;
|
9
|
+
|
10
|
+
beforeEach(() => {
|
11
|
+
// Mock localStorage
|
12
|
+
vi.restoreAllMocks();
|
13
|
+
|
14
|
+
mockLocalStorage = {
|
15
|
+
getAuthCookie: vi.fn().mockResolvedValue("mockAuthCookie"),
|
16
|
+
getDeviceShare: vi.fn().mockResolvedValue("mockDeviceShare"),
|
17
|
+
getWalletUserId: vi.fn().mockResolvedValue("mockWalletUserId"),
|
18
|
+
};
|
19
|
+
// Mock DOM elements
|
20
|
+
mockContainer = document.createElement("div");
|
21
|
+
mockIframe = document.createElement("iframe");
|
22
|
+
vi.spyOn(document, "createElement").mockReturnValue(mockIframe);
|
23
|
+
vi.spyOn(document, "getElementById").mockReturnValue(null);
|
24
|
+
});
|
25
|
+
|
26
|
+
it("should create an iframe with correct properties", () => {
|
27
|
+
new IframeCommunicator({
|
28
|
+
link: "https://example.com",
|
29
|
+
baseUrl: "https://example.com",
|
30
|
+
iframeId: "test-iframe",
|
31
|
+
container: mockContainer,
|
32
|
+
localStorage: mockLocalStorage,
|
33
|
+
clientId: "test-client",
|
34
|
+
});
|
35
|
+
|
36
|
+
expect(document.createElement).toHaveBeenCalledWith("iframe");
|
37
|
+
expect(mockIframe.id).toBe("test-iframe");
|
38
|
+
expect(mockIframe.src).toBe("https://example.com/");
|
39
|
+
expect(mockIframe.style.display).toBe("none");
|
40
|
+
});
|
41
|
+
|
42
|
+
it("should initialize with correct variables", async () => {
|
43
|
+
const communicator = new IframeCommunicator({
|
44
|
+
link: "https://example.com",
|
45
|
+
baseUrl: "https://example.com",
|
46
|
+
iframeId: "test-iframe",
|
47
|
+
container: mockContainer,
|
48
|
+
localStorage: mockLocalStorage,
|
49
|
+
clientId: "test-client",
|
50
|
+
});
|
51
|
+
|
52
|
+
// biome-ignore lint/complexity/useLiteralKeys: accessing protected method
|
53
|
+
const vars = await communicator["onIframeLoadedInitVariables"]();
|
54
|
+
|
55
|
+
expect(vars).toEqual({
|
56
|
+
authCookie: "mockAuthCookie",
|
57
|
+
deviceShareStored: "mockDeviceShare",
|
58
|
+
walletUserId: "mockWalletUserId",
|
59
|
+
clientId: "test-client",
|
60
|
+
partnerId: undefined,
|
61
|
+
ecosystemId: undefined,
|
62
|
+
});
|
63
|
+
});
|
64
|
+
|
65
|
+
it("should throw error when calling methods without iframe", async () => {
|
66
|
+
const temp = global.document;
|
67
|
+
// @ts-expect-error - Testing undefined document scenario
|
68
|
+
global.document = undefined;
|
69
|
+
|
70
|
+
const communicator = new IframeCommunicator({
|
71
|
+
link: "https://example.com",
|
72
|
+
baseUrl: "https://example.com",
|
73
|
+
iframeId: "test-iframe",
|
74
|
+
localStorage: mockLocalStorage,
|
75
|
+
clientId: "test-client",
|
76
|
+
});
|
77
|
+
|
78
|
+
await expect(
|
79
|
+
communicator.call({
|
80
|
+
procedureName: "test",
|
81
|
+
params: {},
|
82
|
+
}),
|
83
|
+
).rejects.toThrow("Iframe not found");
|
84
|
+
global.document = temp;
|
85
|
+
});
|
86
|
+
|
87
|
+
it("should cleanup on destroy", () => {
|
88
|
+
const communicator = new IframeCommunicator({
|
89
|
+
link: "https://example.com",
|
90
|
+
baseUrl: "https://example.com",
|
91
|
+
iframeId: "test-iframe",
|
92
|
+
container: mockContainer,
|
93
|
+
localStorage: mockLocalStorage,
|
94
|
+
clientId: "test-client",
|
95
|
+
});
|
96
|
+
|
97
|
+
communicator.destroy();
|
98
|
+
|
99
|
+
// biome-ignore lint/complexity/useLiteralKeys: accessing protected field
|
100
|
+
expect(communicator["iframe"]).toBeDefined();
|
101
|
+
});
|
102
|
+
});
|
@@ -35,7 +35,7 @@ const isIframeLoaded = new Map<string, boolean>();
|
|
35
35
|
*/
|
36
36
|
// biome-ignore lint/suspicious/noExplicitAny: TODO: fix later
|
37
37
|
export class IframeCommunicator<T extends { [key: string]: any }> {
|
38
|
-
private iframe
|
38
|
+
private iframe?: HTMLIFrameElement;
|
39
39
|
private POLLING_INTERVAL_SECONDS = 1.4;
|
40
40
|
private iframeBaseUrl;
|
41
41
|
protected localStorage: ClientScopedStorage;
|
@@ -49,7 +49,7 @@ export class IframeCommunicator<T extends { [key: string]: any }> {
|
|
49
49
|
link,
|
50
50
|
baseUrl,
|
51
51
|
iframeId,
|
52
|
-
container
|
52
|
+
container,
|
53
53
|
onIframeInitialize,
|
54
54
|
localStorage,
|
55
55
|
clientId,
|
@@ -60,6 +60,10 @@ export class IframeCommunicator<T extends { [key: string]: any }> {
|
|
60
60
|
this.ecosystem = ecosystem;
|
61
61
|
this.iframeBaseUrl = baseUrl;
|
62
62
|
|
63
|
+
if (typeof document === "undefined") {
|
64
|
+
return;
|
65
|
+
}
|
66
|
+
container = container ?? document.body;
|
63
67
|
// Creating the IFrame element for communication
|
64
68
|
let iframe = document.getElementById(iframeId) as HTMLIFrameElement | null;
|
65
69
|
const hrefLink = new URL(link);
|
@@ -164,6 +168,11 @@ export class IframeCommunicator<T extends { [key: string]: any }> {
|
|
164
168
|
params: T[keyof T];
|
165
169
|
showIframe?: boolean;
|
166
170
|
}) {
|
171
|
+
if (!this.iframe) {
|
172
|
+
throw new Error(
|
173
|
+
"Iframe not found. You are likely calling this from the backend where the DOM is not available.",
|
174
|
+
);
|
175
|
+
}
|
167
176
|
while (!isIframeLoaded.get(this.iframe.src)) {
|
168
177
|
await sleep(this.POLLING_INTERVAL_SECONDS * 1000);
|
169
178
|
}
|
@@ -182,7 +191,9 @@ export class IframeCommunicator<T extends { [key: string]: any }> {
|
|
182
191
|
if (showIframe) {
|
183
192
|
// magic number to let modal fade out before hiding it
|
184
193
|
await sleep(0.1 * 1000);
|
185
|
-
this.iframe
|
194
|
+
if (this.iframe) {
|
195
|
+
this.iframe.style.display = "none";
|
196
|
+
}
|
186
197
|
}
|
187
198
|
if (!data.success) {
|
188
199
|
rej(new Error(data.error));
|
@@ -213,6 +224,8 @@ export class IframeCommunicator<T extends { [key: string]: any }> {
|
|
213
224
|
* @internal
|
214
225
|
*/
|
215
226
|
destroy() {
|
216
|
-
|
227
|
+
if (this.iframe) {
|
228
|
+
isIframeLoaded.delete(this.iframe.src);
|
229
|
+
}
|
217
230
|
}
|
218
231
|
}
|