thirdweb 5.53.0 → 5.54.0-nightly-c3800d6c0765a9a0b69ac0a4a390d20cec932419-20240912000413
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/analytics/track.js +18 -0
- package/dist/cjs/analytics/track.js.map +1 -1
- package/dist/cjs/chains/chain-definitions/polygon.js +1 -1
- package/dist/cjs/chains/chain-definitions/polygon.js.map +1 -1
- package/dist/cjs/contract/deployment/deploy-deterministic.js +19 -0
- package/dist/cjs/contract/deployment/deploy-deterministic.js.map +1 -1
- package/dist/cjs/contract/deployment/deploy-via-autofactory.js +3 -1
- package/dist/cjs/contract/deployment/deploy-via-autofactory.js.map +1 -1
- package/dist/cjs/contract/deployment/deploy-with-abi.js +50 -6
- package/dist/cjs/contract/deployment/deploy-with-abi.js.map +1 -1
- package/dist/cjs/contract/deployment/utils/bootstrap.js +23 -8
- package/dist/cjs/contract/deployment/utils/bootstrap.js.map +1 -1
- package/dist/cjs/contract/deployment/utils/clone-factory.js +1 -2
- package/dist/cjs/contract/deployment/utils/clone-factory.js.map +1 -1
- package/dist/cjs/contract/deployment/utils/infra.js +38 -2
- package/dist/cjs/contract/deployment/utils/infra.js.map +1 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployContract.js +7 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployContract.js.map +1 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js +2 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -1
- package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js +5 -4
- package/dist/cjs/contract/deployment/zksync/zkDeployProxy.js.map +1 -1
- package/dist/cjs/exports/contract.js +4 -1
- package/dist/cjs/exports/contract.js.map +1 -1
- package/dist/cjs/exports/deploys.js +8 -3
- package/dist/cjs/exports/deploys.js.map +1 -1
- package/dist/cjs/exports/extensions/erc721.js +4 -2
- package/dist/cjs/exports/extensions/erc721.js.map +1 -1
- package/dist/cjs/exports/utils.js +3 -1
- package/dist/cjs/exports/utils.js.map +1 -1
- package/dist/cjs/extensions/erc721/lazyMinting/read/getBatchesToReveal.js +14 -16
- package/dist/cjs/extensions/erc721/lazyMinting/read/getBatchesToReveal.js.map +1 -1
- package/dist/cjs/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js +19 -0
- package/dist/cjs/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js.map +1 -1
- package/dist/cjs/extensions/erc721/lazyMinting/write/reveal.js +3 -20
- package/dist/cjs/extensions/erc721/lazyMinting/write/reveal.js.map +1 -1
- package/dist/cjs/extensions/erc721/write/updateTokenURI.js +3 -0
- package/dist/cjs/extensions/erc721/write/updateTokenURI.js.map +1 -1
- package/dist/cjs/extensions/marketplace/offers/write/makeOffer.js +0 -1
- package/dist/cjs/extensions/marketplace/offers/write/makeOffer.js.map +1 -1
- package/dist/cjs/extensions/modules/common/getOrDeployModule.js +2 -4
- package/dist/cjs/extensions/modules/common/getOrDeployModule.js.map +1 -1
- package/dist/cjs/extensions/modules/common/installPublishedModule.js +1 -1
- package/dist/cjs/extensions/modules/common/installPublishedModule.js.map +1 -1
- package/dist/cjs/extensions/modules/common/uninstallPublishedModule.js +1 -2
- package/dist/cjs/extensions/modules/common/uninstallPublishedModule.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-erc1155.js +0 -1
- package/dist/cjs/extensions/prebuilts/deploy-erc1155.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-erc20.js +0 -1
- package/dist/cjs/extensions/prebuilts/deploy-erc20.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-erc721.js +0 -1
- package/dist/cjs/extensions/prebuilts/deploy-erc721.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-marketplace.js +5 -7
- package/dist/cjs/extensions/prebuilts/deploy-marketplace.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-modular.js +32 -27
- package/dist/cjs/extensions/prebuilts/deploy-modular.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-published.js +121 -35
- package/dist/cjs/extensions/prebuilts/deploy-published.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-split.js +0 -1
- package/dist/cjs/extensions/prebuilts/deploy-split.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-vote.js +0 -1
- package/dist/cjs/extensions/prebuilts/deploy-vote.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/get-required-transactions.js +66 -0
- package/dist/cjs/extensions/prebuilts/get-required-transactions.js.map +1 -0
- package/dist/cjs/react/core/hooks/others/useProfiles.js +1 -1
- package/dist/cjs/react/core/social/useSocialProfiles.js +2 -0
- package/dist/cjs/react/core/social/useSocialProfiles.js.map +1 -1
- package/dist/cjs/react/core/utils/walletIcon.js +5 -1
- package/dist/cjs/react/core/utils/walletIcon.js.map +1 -1
- package/dist/cjs/react/native/ui/components/Address.js +1 -3
- package/dist/cjs/react/native/ui/components/Address.js.map +1 -1
- package/dist/cjs/react/native/ui/components/WalletImage.js +2 -0
- package/dist/cjs/react/native/ui/components/WalletImage.js.map +1 -1
- package/dist/cjs/react/native/ui/connect/InAppWalletUI.js +1 -0
- package/dist/cjs/react/native/ui/connect/InAppWalletUI.js.map +1 -1
- package/dist/cjs/react/native/ui/icons/svgs.js +2 -1
- package/dist/cjs/react/native/ui/icons/svgs.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +7 -0
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +20 -3
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js +7 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +7 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +7 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +49 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/TransactionButton/TransactionModal.js +20 -0
- package/dist/cjs/react/web/ui/TransactionButton/TransactionModal.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +1 -0
- package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/oauthSignIn.js +1 -0
- package/dist/cjs/react/web/wallets/shared/oauthSignIn.js.map +1 -1
- package/dist/cjs/social/profiles.js +2 -1
- package/dist/cjs/social/profiles.js.map +1 -1
- package/dist/cjs/utils/abi/normalizeFunctionParams.js +24 -0
- package/dist/cjs/utils/abi/normalizeFunctionParams.js.map +1 -0
- package/dist/cjs/utils/any-evm/compute-published-contract-address.js +14 -6
- package/dist/cjs/utils/any-evm/compute-published-contract-address.js.map +1 -1
- package/dist/cjs/utils/any-evm/compute-published-contract-deploy-info.js +17 -5
- package/dist/cjs/utils/any-evm/compute-published-contract-deploy-info.js.map +1 -1
- package/dist/cjs/utils/any-evm/deploy-metadata.js +0 -19
- package/dist/cjs/utils/any-evm/deploy-metadata.js.map +1 -1
- package/dist/cjs/utils/caching/lru.js +15 -14
- package/dist/cjs/utils/caching/lru.js.map +1 -1
- package/dist/cjs/utils/domains.js +1 -1
- package/dist/cjs/utils/domains.js.map +1 -1
- package/dist/cjs/utils/ipfs.js +2 -0
- package/dist/cjs/utils/ipfs.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/authentication/types.js +1 -0
- package/dist/cjs/wallets/in-app/core/authentication/types.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/eip5972/in-app-wallet-calls.js +3 -13
- package/dist/cjs/wallets/in-app/core/eip5972/in-app-wallet-calls.js.map +1 -1
- package/dist/cjs/wallets/in-app/native/native-connector.js +2 -0
- package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/in-app.js +2 -0
- package/dist/cjs/wallets/in-app/web/in-app.js.map +1 -1
- package/dist/cjs/wallets/in-app/web/lib/web-connector.js +2 -0
- package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
- package/dist/cjs/wallets/types.js +1 -0
- package/dist/cjs/wallets/types.js.map +1 -1
- package/dist/esm/analytics/track.js +17 -0
- package/dist/esm/analytics/track.js.map +1 -1
- package/dist/esm/chains/chain-definitions/polygon.js +1 -1
- package/dist/esm/chains/chain-definitions/polygon.js.map +1 -1
- package/dist/esm/contract/deployment/deploy-deterministic.js +19 -1
- package/dist/esm/contract/deployment/deploy-deterministic.js.map +1 -1
- package/dist/esm/contract/deployment/deploy-via-autofactory.js +3 -1
- package/dist/esm/contract/deployment/deploy-via-autofactory.js.map +1 -1
- package/dist/esm/contract/deployment/deploy-with-abi.js +50 -6
- package/dist/esm/contract/deployment/deploy-with-abi.js.map +1 -1
- package/dist/esm/contract/deployment/utils/bootstrap.js +23 -9
- package/dist/esm/contract/deployment/utils/bootstrap.js.map +1 -1
- package/dist/esm/contract/deployment/utils/clone-factory.js +1 -2
- package/dist/esm/contract/deployment/utils/clone-factory.js.map +1 -1
- package/dist/esm/contract/deployment/utils/infra.js +38 -4
- package/dist/esm/contract/deployment/utils/infra.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/zkDeployContract.js +7 -1
- package/dist/esm/contract/deployment/zksync/zkDeployContract.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js +2 -1
- package/dist/esm/contract/deployment/zksync/zkDeployDeterministic.js.map +1 -1
- package/dist/esm/contract/deployment/zksync/zkDeployProxy.js +5 -4
- package/dist/esm/contract/deployment/zksync/zkDeployProxy.js.map +1 -1
- package/dist/esm/exports/contract.js +2 -0
- package/dist/esm/exports/contract.js.map +1 -1
- package/dist/esm/exports/deploys.js +4 -2
- package/dist/esm/exports/deploys.js.map +1 -1
- package/dist/esm/exports/extensions/erc721.js +3 -3
- package/dist/esm/exports/extensions/erc721.js.map +1 -1
- package/dist/esm/exports/utils.js +1 -0
- package/dist/esm/exports/utils.js.map +1 -1
- package/dist/esm/extensions/erc721/lazyMinting/read/getBatchesToReveal.js +13 -15
- package/dist/esm/extensions/erc721/lazyMinting/read/getBatchesToReveal.js.map +1 -1
- package/dist/esm/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js +21 -3
- package/dist/esm/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js.map +1 -1
- package/dist/esm/extensions/erc721/lazyMinting/write/reveal.js +1 -20
- package/dist/esm/extensions/erc721/lazyMinting/write/reveal.js.map +1 -1
- package/dist/esm/extensions/erc721/write/updateTokenURI.js +3 -0
- package/dist/esm/extensions/erc721/write/updateTokenURI.js.map +1 -1
- package/dist/esm/extensions/marketplace/offers/write/makeOffer.js +0 -1
- package/dist/esm/extensions/marketplace/offers/write/makeOffer.js.map +1 -1
- package/dist/esm/extensions/modules/common/getOrDeployModule.js +2 -4
- package/dist/esm/extensions/modules/common/getOrDeployModule.js.map +1 -1
- package/dist/esm/extensions/modules/common/installPublishedModule.js +1 -1
- package/dist/esm/extensions/modules/common/installPublishedModule.js.map +1 -1
- package/dist/esm/extensions/modules/common/uninstallPublishedModule.js +1 -2
- package/dist/esm/extensions/modules/common/uninstallPublishedModule.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-erc1155.js +0 -1
- package/dist/esm/extensions/prebuilts/deploy-erc1155.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-erc20.js +0 -1
- package/dist/esm/extensions/prebuilts/deploy-erc20.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-erc721.js +0 -1
- package/dist/esm/extensions/prebuilts/deploy-erc721.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-marketplace.js +5 -7
- package/dist/esm/extensions/prebuilts/deploy-marketplace.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-modular.js +33 -28
- package/dist/esm/extensions/prebuilts/deploy-modular.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-published.js +121 -35
- package/dist/esm/extensions/prebuilts/deploy-published.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-split.js +0 -1
- package/dist/esm/extensions/prebuilts/deploy-split.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-vote.js +0 -1
- package/dist/esm/extensions/prebuilts/deploy-vote.js.map +1 -1
- package/dist/esm/extensions/prebuilts/get-required-transactions.js +63 -0
- package/dist/esm/extensions/prebuilts/get-required-transactions.js.map +1 -0
- package/dist/esm/react/core/hooks/others/useProfiles.js +1 -1
- package/dist/esm/react/core/social/useSocialProfiles.js +2 -0
- package/dist/esm/react/core/social/useSocialProfiles.js.map +1 -1
- package/dist/esm/react/core/utils/walletIcon.js +4 -0
- package/dist/esm/react/core/utils/walletIcon.js.map +1 -1
- package/dist/esm/react/native/ui/components/Address.js +1 -3
- package/dist/esm/react/native/ui/components/Address.js.map +1 -1
- package/dist/esm/react/native/ui/components/WalletImage.js +3 -1
- package/dist/esm/react/native/ui/components/WalletImage.js.map +1 -1
- package/dist/esm/react/native/ui/connect/InAppWalletUI.js +2 -1
- package/dist/esm/react/native/ui/connect/InAppWalletUI.js.map +1 -1
- package/dist/esm/react/native/ui/icons/svgs.js +1 -0
- package/dist/esm/react/native/ui/icons/svgs.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +7 -0
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +20 -3
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js +7 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +7 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +7 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +49 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/ui/TransactionButton/TransactionModal.js +20 -0
- package/dist/esm/react/web/ui/TransactionButton/TransactionModal.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +1 -0
- package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/oauthSignIn.js +1 -0
- package/dist/esm/react/web/wallets/shared/oauthSignIn.js.map +1 -1
- package/dist/esm/social/profiles.js +2 -1
- package/dist/esm/social/profiles.js.map +1 -1
- package/dist/esm/utils/abi/normalizeFunctionParams.js +21 -0
- package/dist/esm/utils/abi/normalizeFunctionParams.js.map +1 -0
- package/dist/esm/utils/any-evm/compute-published-contract-address.js +15 -7
- package/dist/esm/utils/any-evm/compute-published-contract-address.js.map +1 -1
- package/dist/esm/utils/any-evm/compute-published-contract-deploy-info.js +16 -5
- package/dist/esm/utils/any-evm/compute-published-contract-deploy-info.js.map +1 -1
- package/dist/esm/utils/any-evm/deploy-metadata.js +0 -19
- package/dist/esm/utils/any-evm/deploy-metadata.js.map +1 -1
- package/dist/esm/utils/caching/lru.js +15 -14
- package/dist/esm/utils/caching/lru.js.map +1 -1
- package/dist/esm/utils/domains.js +1 -1
- package/dist/esm/utils/domains.js.map +1 -1
- package/dist/esm/utils/ipfs.js +2 -0
- package/dist/esm/utils/ipfs.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/in-app/core/authentication/types.js +1 -0
- package/dist/esm/wallets/in-app/core/authentication/types.js.map +1 -1
- package/dist/esm/wallets/in-app/core/eip5972/in-app-wallet-calls.js +3 -13
- package/dist/esm/wallets/in-app/core/eip5972/in-app-wallet-calls.js.map +1 -1
- package/dist/esm/wallets/in-app/native/native-connector.js +2 -0
- package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
- package/dist/esm/wallets/in-app/web/in-app.js +2 -0
- package/dist/esm/wallets/in-app/web/in-app.js.map +1 -1
- package/dist/esm/wallets/in-app/web/lib/web-connector.js +2 -0
- package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
- package/dist/esm/wallets/types.js +1 -0
- package/dist/esm/wallets/types.js.map +1 -1
- package/dist/types/analytics/track.d.ts +15 -0
- package/dist/types/analytics/track.d.ts.map +1 -1
- package/dist/types/contract/actions/compiler-metadata.d.ts +2 -2
- package/dist/types/contract/actions/compiler-metadata.d.ts.map +1 -1
- package/dist/types/contract/actions/get-compiler-metadata.d.ts +1 -1
- package/dist/types/contract/actions/get-compiler-metadata.d.ts.map +1 -1
- package/dist/types/contract/deployment/deploy-deterministic.d.ts +12 -1
- package/dist/types/contract/deployment/deploy-deterministic.d.ts.map +1 -1
- package/dist/types/contract/deployment/deploy-via-autofactory.d.ts.map +1 -1
- package/dist/types/contract/deployment/deploy-with-abi.d.ts +33 -10
- package/dist/types/contract/deployment/deploy-with-abi.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/bootstrap.d.ts +8 -3
- package/dist/types/contract/deployment/utils/bootstrap.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/clone-factory.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/infra.d.ts +24 -1
- package/dist/types/contract/deployment/utils/infra.d.ts.map +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts +2 -1
- package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts.map +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployDeterministic.d.ts.map +1 -1
- package/dist/types/contract/deployment/zksync/zkDeployProxy.d.ts.map +1 -1
- package/dist/types/contract/verification/source-files.d.ts +2 -2
- package/dist/types/contract/verification/source-files.d.ts.map +1 -1
- package/dist/types/exports/contract.d.ts +1 -0
- package/dist/types/exports/contract.d.ts.map +1 -1
- package/dist/types/exports/deploys.d.ts +4 -2
- package/dist/types/exports/deploys.d.ts.map +1 -1
- package/dist/types/exports/extensions/erc721.d.ts +3 -3
- package/dist/types/exports/extensions/erc721.d.ts.map +1 -1
- package/dist/types/exports/utils.d.ts +1 -0
- package/dist/types/exports/utils.d.ts.map +1 -1
- package/dist/types/extensions/erc721/lazyMinting/read/getBatchesToReveal.d.ts +1 -1
- package/dist/types/extensions/erc721/lazyMinting/read/getBatchesToReveal.d.ts.map +1 -1
- package/dist/types/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.d.ts +12 -0
- package/dist/types/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.d.ts.map +1 -1
- package/dist/types/extensions/erc721/lazyMinting/write/reveal.d.ts +1 -0
- package/dist/types/extensions/erc721/lazyMinting/write/reveal.d.ts.map +1 -1
- package/dist/types/extensions/erc721/write/updateTokenURI.d.ts +3 -0
- package/dist/types/extensions/erc721/write/updateTokenURI.d.ts.map +1 -1
- package/dist/types/extensions/marketplace/offers/write/makeOffer.d.ts.map +1 -1
- package/dist/types/extensions/modules/common/getOrDeployModule.d.ts +0 -2
- package/dist/types/extensions/modules/common/getOrDeployModule.d.ts.map +1 -1
- package/dist/types/extensions/modules/common/installPublishedModule.d.ts +1 -1
- package/dist/types/extensions/modules/common/installPublishedModule.d.ts.map +1 -1
- package/dist/types/extensions/modules/common/uninstallPublishedModule.d.ts +0 -1
- package/dist/types/extensions/modules/common/uninstallPublishedModule.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-erc1155.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-erc20.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-erc721.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-marketplace.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-modular.d.ts +1 -0
- package/dist/types/extensions/prebuilts/deploy-modular.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-published.d.ts +50 -3
- package/dist/types/extensions/prebuilts/deploy-published.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-split.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-vote.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/get-required-transactions.d.ts +26 -0
- package/dist/types/extensions/prebuilts/get-required-transactions.d.ts.map +1 -0
- package/dist/types/react/core/hooks/others/useProfiles.d.ts +1 -1
- package/dist/types/react/core/social/useSocialProfiles.d.ts +2 -0
- package/dist/types/react/core/social/useSocialProfiles.d.ts.map +1 -1
- package/dist/types/react/core/utils/storage.d.ts +1 -1
- package/dist/types/react/core/utils/storage.d.ts.map +1 -1
- package/dist/types/react/core/utils/walletIcon.d.ts +3 -1
- package/dist/types/react/core/utils/walletIcon.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/Address.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/WalletImage.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts.map +1 -1
- package/dist/types/react/native/ui/icons/svgs.d.ts +1 -0
- package/dist/types/react/native/ui/icons/svgs.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/TransactionButton/TransactionModal.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/oauthSignIn.d.ts.map +1 -1
- package/dist/types/social/profiles.d.ts +2 -1
- package/dist/types/social/profiles.d.ts.map +1 -1
- package/dist/types/utils/abi/normalizeFunctionParams.d.ts +3 -0
- package/dist/types/utils/abi/normalizeFunctionParams.d.ts.map +1 -0
- package/dist/types/utils/any-evm/compute-published-contract-address.d.ts +2 -6
- package/dist/types/utils/any-evm/compute-published-contract-address.d.ts.map +1 -1
- package/dist/types/utils/any-evm/compute-published-contract-deploy-info.d.ts +17 -2
- package/dist/types/utils/any-evm/compute-published-contract-deploy-info.d.ts.map +1 -1
- package/dist/types/utils/any-evm/deploy-metadata.d.ts +3 -6
- package/dist/types/utils/any-evm/deploy-metadata.d.ts.map +1 -1
- package/dist/types/utils/caching/lru.d.ts +4 -13
- package/dist/types/utils/caching/lru.d.ts.map +1 -1
- package/dist/types/utils/ipfs.d.ts +1 -1
- package/dist/types/utils/ipfs.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/authentication/types.d.ts +1 -0
- package/dist/types/wallets/in-app/core/authentication/types.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/eip5972/in-app-wallet-calls.d.ts.map +1 -1
- package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/in-app.d.ts +2 -0
- package/dist/types/wallets/in-app/web/in-app.d.ts.map +1 -1
- package/dist/types/wallets/in-app/web/lib/web-connector.d.ts.map +1 -1
- package/dist/types/wallets/types.d.ts +2 -2
- package/dist/types/wallets/types.d.ts.map +1 -1
- package/package.json +17 -22
- package/src/analytics/track.ts +29 -0
- package/src/chains/chain-definitions/polygon.ts +1 -1
- package/src/contract/actions/compiler-metadata.ts +2 -2
- package/src/contract/deployment/deploy-deterministic.test.ts +16 -5
- package/src/contract/deployment/deploy-deterministic.ts +35 -2
- package/src/contract/deployment/deploy-via-autofactory.test.ts +0 -2
- package/src/contract/deployment/deploy-via-autofactory.ts +3 -0
- package/src/contract/deployment/deploy-with-abi.ts +63 -24
- package/src/contract/deployment/publisher.test.ts +2 -2
- package/src/contract/deployment/utils/bootstrap.test.ts +3 -2
- package/src/contract/deployment/utils/bootstrap.ts +36 -12
- package/src/contract/deployment/utils/clone-factory.ts +1 -2
- package/src/contract/deployment/utils/infra.ts +61 -5
- package/src/contract/deployment/zksync/zkDeployContract.ts +13 -2
- package/src/contract/deployment/zksync/zkDeployDeterministic.ts +4 -3
- package/src/contract/deployment/zksync/zkDeployProxy.ts +5 -4
- package/src/contract/verification/source-files.ts +2 -2
- package/src/exports/contract.ts +6 -0
- package/src/exports/deploys.ts +14 -5
- package/src/exports/extensions/erc721.ts +3 -1
- package/src/exports/utils.ts +2 -0
- package/src/extensions/airdrop/write/airdropERC1155WithSignature.test.ts +4 -1
- package/src/extensions/airdrop/write/airdropERC20WithSignature.test.ts +4 -1
- package/src/extensions/airdrop/write/airdropERC721WithSignature.test.ts +4 -1
- package/src/extensions/airdrop/write/claimERC1155.test.ts +4 -1
- package/src/extensions/airdrop/write/claimERC20.test.ts +4 -1
- package/src/extensions/airdrop/write/claimERC721.test.ts +4 -1
- package/src/extensions/erc1155/write/updateTokenURI.test.ts +54 -0
- package/src/extensions/erc20/write/getApprovalForTransaction.test.ts +112 -0
- package/src/extensions/erc20/write/transferFrom.test.ts +104 -0
- package/src/extensions/erc4337/account/permissions.test.ts +4 -1
- package/src/extensions/erc721/drops/write/updateMetadata.test.ts +29 -0
- package/src/extensions/erc721/lazyMinting/read/getBatchesToReveal.ts +15 -15
- package/src/extensions/erc721/lazyMinting/write/createAndReveal.test.ts +84 -0
- package/src/extensions/erc721/lazyMinting/write/createDelayedRevealBatch.ts +33 -3
- package/src/extensions/erc721/lazyMinting/write/reveal.test.ts +1 -45
- package/src/extensions/erc721/lazyMinting/write/reveal.ts +2 -23
- package/src/extensions/erc721/write/updateTokenURI.test.ts +56 -0
- package/src/extensions/erc721/write/updateTokenURI.ts +3 -0
- package/src/extensions/marketplace/offers/offers.test.ts +0 -1
- package/src/extensions/marketplace/offers/write/makeOffer.ts +0 -1
- package/src/extensions/modules/common/getOrDeployModule.ts +2 -7
- package/src/extensions/modules/common/installPublishedModule.ts +2 -2
- package/src/extensions/modules/common/uninstallPublishedModule.ts +1 -9
- package/src/extensions/prebuilts/deploy-erc1155.ts +0 -1
- package/src/extensions/prebuilts/deploy-erc20.ts +0 -1
- package/src/extensions/prebuilts/deploy-erc721.ts +0 -1
- package/src/extensions/prebuilts/deploy-marketplace.ts +6 -8
- package/src/extensions/prebuilts/deploy-modular-core.test.ts +63 -2
- package/src/extensions/prebuilts/deploy-modular.ts +50 -38
- package/src/extensions/prebuilts/deploy-published.test.ts +61 -4
- package/src/extensions/prebuilts/deploy-published.ts +208 -55
- package/src/extensions/prebuilts/deploy-split.ts +0 -1
- package/src/extensions/prebuilts/deploy-vote.ts +0 -1
- package/src/extensions/prebuilts/get-required-transactions.test.ts +61 -0
- package/src/extensions/prebuilts/get-required-transactions.ts +110 -0
- package/src/react/core/hooks/others/useProfiles.ts +1 -1
- package/src/react/core/social/useSocialProfiles.ts +2 -0
- package/src/react/core/utils/walletIcon.ts +5 -0
- package/src/react/native/ui/components/Address.tsx +1 -3
- package/src/react/native/ui/components/WalletImage.tsx +3 -0
- package/src/react/native/ui/connect/InAppWalletUI.tsx +2 -0
- package/src/react/native/ui/icons/svgs.ts +2 -0
- package/src/react/web/ui/ConnectWallet/Details.tsx +7 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +31 -3
- package/src/react/web/ui/ConnectWallet/screens/Buy/DirectPaymentModeScreen.tsx +7 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx +7 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.tsx +7 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +53 -0
- package/src/react/web/ui/TransactionButton/TransactionModal.tsx +21 -0
- package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +1 -0
- package/src/react/web/wallets/shared/oauthSignIn.ts +1 -0
- package/src/social/profiles.ts +2 -1
- package/src/transaction/actions/zksync/send-eip712-transaction.test.ts +13 -13
- package/src/utils/abi/normalizeFunctionParams.ts +29 -0
- package/src/utils/any-evm/compute-published-contract-address.ts +17 -12
- package/src/utils/any-evm/compute-published-contract-deploy-info.ts +31 -12
- package/src/utils/any-evm/deploy-metadata.ts +9 -34
- package/src/utils/bytecode/resolveImplementation.test.ts +7 -5
- package/src/utils/caching/lru.test.ts +38 -0
- package/src/utils/caching/lru.ts +18 -14
- package/src/utils/domains.ts +1 -1
- package/src/utils/ipfs.ts +3 -1
- package/src/version.ts +1 -1
- package/src/wallets/in-app/core/authentication/types.ts +1 -0
- package/src/wallets/in-app/core/eip5972/in-app-wallet-calls.ts +3 -14
- package/src/wallets/in-app/native/native-connector.ts +2 -0
- package/src/wallets/in-app/web/in-app.ts +2 -0
- package/src/wallets/in-app/web/lib/web-connector.ts +2 -0
- package/src/wallets/types.ts +1 -0
@@ -1,10 +1,17 @@
|
|
1
|
+
import type { Chain } from "../../../chains/types.js";
|
2
|
+
import type { ThirdwebClient } from "../../../client/client.js";
|
1
3
|
import { prepareTransaction } from "../../../transaction/prepare-transaction.js";
|
2
|
-
import {
|
3
|
-
import {
|
4
|
+
import { computeContractAddress } from "../../../utils/any-evm/compute-published-contract-address.js";
|
5
|
+
import {
|
6
|
+
computeDeploymentInfoFromContractId,
|
7
|
+
computeDeploymentInfoFromMetadata,
|
8
|
+
} from "../../../utils/any-evm/compute-published-contract-deploy-info.js";
|
9
|
+
import type { FetchDeployMetadataResult } from "../../../utils/any-evm/deploy-metadata.js";
|
4
10
|
import { isContractDeployed } from "../../../utils/bytecode/is-contract-deployed.js";
|
5
11
|
import type { Prettify } from "../../../utils/type-utils.js";
|
6
12
|
import type { ClientAndChain } from "../../../utils/types.js";
|
7
13
|
import { type ThirdwebContract, getContract } from "../../contract.js";
|
14
|
+
import { fetchPublishedContractMetadata } from "../publisher.js";
|
8
15
|
import { computeCreate2FactoryAddress } from "./create-2-factory.js";
|
9
16
|
|
10
17
|
export type InfraContractId =
|
@@ -17,7 +24,7 @@ export type InfraContractId =
|
|
17
24
|
export type GetDeployedInfraParams = Prettify<
|
18
25
|
ClientAndChain & {
|
19
26
|
contractId: InfraContractId;
|
20
|
-
constructorParams
|
27
|
+
constructorParams?: Record<string, unknown>;
|
21
28
|
publisher?: string;
|
22
29
|
version?: string;
|
23
30
|
}
|
@@ -29,9 +36,31 @@ export type GetDeployedInfraParams = Prettify<
|
|
29
36
|
export async function getDeployedInfraContract(
|
30
37
|
options: GetDeployedInfraParams,
|
31
38
|
): Promise<ThirdwebContract | null> {
|
32
|
-
const
|
33
|
-
|
39
|
+
const contractMetadata = await fetchPublishedContractMetadata({
|
40
|
+
client: options.client,
|
41
|
+
contractId: options.contractId,
|
42
|
+
publisher: options.publisher,
|
43
|
+
version: options.version,
|
44
|
+
});
|
45
|
+
return getDeployedInfraContractFromMetadata({
|
46
|
+
client: options.client,
|
47
|
+
chain: options.chain,
|
48
|
+
contractMetadata,
|
49
|
+
constructorParams: options.constructorParams,
|
34
50
|
});
|
51
|
+
}
|
52
|
+
|
53
|
+
/**
|
54
|
+
* @internal
|
55
|
+
*/
|
56
|
+
export async function getDeployedInfraContractFromMetadata(options: {
|
57
|
+
client: ThirdwebClient;
|
58
|
+
chain: Chain;
|
59
|
+
contractMetadata: FetchDeployMetadataResult;
|
60
|
+
constructorParams?: Record<string, unknown>;
|
61
|
+
salt?: string;
|
62
|
+
}): Promise<ThirdwebContract | null> {
|
63
|
+
const address = await computeContractAddress(options);
|
35
64
|
const factory = getContract({
|
36
65
|
...options,
|
37
66
|
address,
|
@@ -64,3 +93,30 @@ export function prepareInfraContractDeployTransaction(
|
|
64
93
|
},
|
65
94
|
});
|
66
95
|
}
|
96
|
+
|
97
|
+
/**
|
98
|
+
* @internal
|
99
|
+
*/
|
100
|
+
export function prepareInfraContractDeployTransactionFromMetadata(options: {
|
101
|
+
client: ThirdwebClient;
|
102
|
+
chain: Chain;
|
103
|
+
contractMetadata: FetchDeployMetadataResult;
|
104
|
+
constructorParams?: Record<string, unknown>;
|
105
|
+
salt?: string;
|
106
|
+
}) {
|
107
|
+
const { client, chain } = options;
|
108
|
+
return prepareTransaction({
|
109
|
+
client,
|
110
|
+
chain,
|
111
|
+
to: () =>
|
112
|
+
computeCreate2FactoryAddress({
|
113
|
+
client,
|
114
|
+
chain,
|
115
|
+
}),
|
116
|
+
data: async () => {
|
117
|
+
const infraContractInfo =
|
118
|
+
await computeDeploymentInfoFromMetadata(options);
|
119
|
+
return infraContractInfo.initBytecodeWithsalt;
|
120
|
+
},
|
121
|
+
});
|
122
|
+
}
|
@@ -4,9 +4,11 @@ import { parseEventLogs } from "../../../event/actions/parse-logs.js";
|
|
4
4
|
import { contractDeployedEvent } from "../../../extensions/zksync/__generated__/ContractDeployer/events/ContractDeployed.js";
|
5
5
|
import { sendAndConfirmTransaction } from "../../../transaction/actions/send-and-confirm-transaction.js";
|
6
6
|
import { prepareTransaction } from "../../../transaction/prepare-transaction.js";
|
7
|
+
import { normalizeFunctionParams } from "../../../utils/abi/normalizeFunctionParams.js";
|
7
8
|
import { CONTRACT_DEPLOYER_ADDRESS } from "../../../utils/any-evm/zksync/constants.js";
|
8
9
|
import type { Hex } from "../../../utils/encoding/hex.js";
|
9
10
|
import type { ClientAndChainAndAccount } from "../../../utils/types.js";
|
11
|
+
import { zkDeployContractDeterministic } from "./zkDeployDeterministic.js";
|
10
12
|
|
11
13
|
/**
|
12
14
|
* @internal
|
@@ -15,14 +17,23 @@ export async function zkDeployContract(
|
|
15
17
|
options: ClientAndChainAndAccount & {
|
16
18
|
abi: Abi;
|
17
19
|
bytecode: Hex;
|
18
|
-
params?: unknown
|
20
|
+
params?: Record<string, unknown>;
|
21
|
+
salt?: string;
|
19
22
|
},
|
20
23
|
) {
|
24
|
+
if (options.salt !== undefined) {
|
25
|
+
// if a salt is provided, use the deterministic deployer
|
26
|
+
return zkDeployContractDeterministic(options);
|
27
|
+
}
|
28
|
+
|
21
29
|
const data = encodeDeployData({
|
22
30
|
abi: options.abi,
|
23
31
|
bytecode: options.bytecode,
|
24
32
|
deploymentType: "create",
|
25
|
-
args:
|
33
|
+
args: normalizeFunctionParams(
|
34
|
+
options.abi.find((abi) => abi.type === "constructor"),
|
35
|
+
options.params,
|
36
|
+
),
|
26
37
|
});
|
27
38
|
|
28
39
|
const receipt = await sendAndConfirmTransaction({
|
@@ -1,9 +1,10 @@
|
|
1
|
-
import { type Abi, parseAbi } from "abitype";
|
1
|
+
import { type Abi, type AbiConstructor, parseAbi } from "abitype";
|
2
2
|
import { hashBytecode } from "viem/zksync";
|
3
3
|
import { sendAndConfirmTransaction } from "../../../transaction/actions/send-and-confirm-transaction.js";
|
4
4
|
import { prepareContractCall } from "../../../transaction/prepare-contract-call.js";
|
5
5
|
import { readContract } from "../../../transaction/read-contract.js";
|
6
6
|
import { encodeAbiParameters } from "../../../utils/abi/encodeAbiParameters.js";
|
7
|
+
import { normalizeFunctionParams } from "../../../utils/abi/normalizeFunctionParams.js";
|
7
8
|
import { keccakId } from "../../../utils/any-evm/keccak-id.js";
|
8
9
|
import { computeDeploymentAddress } from "../../../utils/any-evm/zksync/computeDeploymentAddress.js";
|
9
10
|
import {
|
@@ -25,7 +26,7 @@ export async function zkDeployContractDeterministic(
|
|
25
26
|
options: ClientAndChainAndAccount & {
|
26
27
|
abi: Abi;
|
27
28
|
bytecode: Hex;
|
28
|
-
params
|
29
|
+
params?: Record<string, unknown>;
|
29
30
|
salt?: string;
|
30
31
|
},
|
31
32
|
) {
|
@@ -34,7 +35,7 @@ export async function zkDeployContractDeterministic(
|
|
34
35
|
) || { inputs: [] };
|
35
36
|
const encodedArgs = encodeAbiParameters(
|
36
37
|
constructorAbi.inputs,
|
37
|
-
options.params
|
38
|
+
normalizeFunctionParams(constructorAbi as AbiConstructor, options.params),
|
38
39
|
);
|
39
40
|
const create2FactoryAddress = await zkDeployCreate2Factory({
|
40
41
|
client: options.client,
|
@@ -44,10 +44,11 @@ export async function zkDeployProxy(
|
|
44
44
|
account: options.account,
|
45
45
|
abi: twProxyAbi,
|
46
46
|
bytecode: twProxyBytecode,
|
47
|
-
params:
|
48
|
-
implementationAddress,
|
49
|
-
await encode(options.initializeTransaction),
|
50
|
-
|
47
|
+
params: {
|
48
|
+
_logic: implementationAddress,
|
49
|
+
_data: await encode(options.initializeTransaction),
|
50
|
+
},
|
51
|
+
salt: options.salt,
|
51
52
|
});
|
52
53
|
|
53
54
|
// return address of proxy
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import type { ThirdwebClient } from "../../client/client.js";
|
2
2
|
import { download } from "../../storage/download.js";
|
3
|
-
import type {
|
3
|
+
import type { CompilerMetadata } from "../actions/compiler-metadata.js";
|
4
4
|
|
5
5
|
type FetchSourceFilesFromMetadataOptions = {
|
6
6
|
client: ThirdwebClient;
|
7
|
-
publishedMetadata:
|
7
|
+
publishedMetadata: CompilerMetadata;
|
8
8
|
};
|
9
9
|
|
10
10
|
type ContractSource = {
|
package/src/exports/contract.ts
CHANGED
@@ -28,6 +28,12 @@ export {
|
|
28
28
|
fetchDeployBytecodeFromPublishedContractMetadata,
|
29
29
|
} from "../contract/deployment/publisher.js";
|
30
30
|
|
31
|
+
// contract metadata
|
32
|
+
export {
|
33
|
+
fetchDeployMetadata,
|
34
|
+
type FetchDeployMetadataResult,
|
35
|
+
} from "../utils/any-evm/deploy-metadata.js";
|
36
|
+
|
31
37
|
// deployment - TODO: these end up looking more like extensions -> should they be?
|
32
38
|
export {
|
33
39
|
prepareDirectDeployTransaction,
|
package/src/exports/deploys.ts
CHANGED
@@ -19,9 +19,22 @@ export {
|
|
19
19
|
deployERC1155Contract,
|
20
20
|
} from "../extensions/prebuilts/deploy-erc1155.js";
|
21
21
|
|
22
|
+
export {
|
23
|
+
deploySplitContract,
|
24
|
+
type SplitContractParams,
|
25
|
+
type DeploySplitContractOptions,
|
26
|
+
} from "../extensions/prebuilts/deploy-split.js";
|
27
|
+
|
28
|
+
export {
|
29
|
+
deployMarketplaceContract,
|
30
|
+
type MarketplaceContractParams,
|
31
|
+
} from "../extensions/prebuilts/deploy-marketplace.js";
|
32
|
+
|
22
33
|
export {
|
23
34
|
deployPublishedContract,
|
24
35
|
type DeployPublishedContractOptions,
|
36
|
+
deployContractfromDeployMetadata,
|
37
|
+
type DeployContractfromDeployMetadataOptions,
|
25
38
|
} from "../extensions/prebuilts/deploy-published.js";
|
26
39
|
|
27
40
|
export { prepareDirectDeployTransaction } from "../contract/deployment/deploy-with-abi.js";
|
@@ -33,8 +46,4 @@ export {
|
|
33
46
|
type PrepareDirectDeployTransactionOptions,
|
34
47
|
} from "../contract/deployment/deploy-with-abi.js";
|
35
48
|
export { computePublishedContractAddress } from "../utils/any-evm/compute-published-contract-address.js";
|
36
|
-
export {
|
37
|
-
deploySplitContract,
|
38
|
-
type SplitContractParams,
|
39
|
-
type DeploySplitContractOptions,
|
40
|
-
} from "../extensions/prebuilts/deploy-split.js";
|
49
|
+
export { getRequiredTransactionCount } from "../extensions/prebuilts/get-required-transactions.js";
|
@@ -191,15 +191,17 @@ export {
|
|
191
191
|
export {
|
192
192
|
type CreateDelayedRevealBatchParams,
|
193
193
|
createDelayedRevealBatch,
|
194
|
+
isCreateDelayedRevealBatchSupported,
|
194
195
|
} from "../../extensions/erc721/lazyMinting/write/createDelayedRevealBatch.js";
|
195
196
|
export {
|
196
197
|
type RevealParams,
|
197
198
|
reveal,
|
199
|
+
isRevealSupported,
|
198
200
|
} from "../../extensions/erc721/lazyMinting/write/reveal.js";
|
199
201
|
export {
|
200
202
|
type BatchToReveal,
|
201
203
|
getBatchesToReveal,
|
202
|
-
|
204
|
+
isGetBatchesToRevealSupported,
|
203
205
|
} from "../../extensions/erc721/lazyMinting/read/getBatchesToReveal.js";
|
204
206
|
export {
|
205
207
|
updateMetadata,
|
package/src/exports/utils.ts
CHANGED
@@ -39,7 +39,10 @@ describe
|
|
39
39
|
chain: ANVIL_CHAIN,
|
40
40
|
client: TEST_CLIENT,
|
41
41
|
contractId: "Airdrop",
|
42
|
-
contractParams:
|
42
|
+
contractParams: {
|
43
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
44
|
+
contractURI: "",
|
45
|
+
},
|
43
46
|
}),
|
44
47
|
chain: ANVIL_CHAIN,
|
45
48
|
client: TEST_CLIENT,
|
@@ -37,7 +37,10 @@ describe
|
|
37
37
|
chain: ANVIL_CHAIN,
|
38
38
|
client: TEST_CLIENT,
|
39
39
|
contractId: "Airdrop",
|
40
|
-
contractParams:
|
40
|
+
contractParams: {
|
41
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
42
|
+
contractURI: "",
|
43
|
+
},
|
41
44
|
}),
|
42
45
|
chain: ANVIL_CHAIN,
|
43
46
|
client: TEST_CLIENT,
|
@@ -39,7 +39,10 @@ describe.runIf(process.env.TW_SECRET_KEY)(
|
|
39
39
|
chain: ANVIL_CHAIN,
|
40
40
|
client: TEST_CLIENT,
|
41
41
|
contractId: "Airdrop",
|
42
|
-
contractParams:
|
42
|
+
contractParams: {
|
43
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
44
|
+
contractURI: "",
|
45
|
+
},
|
43
46
|
}),
|
44
47
|
chain: ANVIL_CHAIN,
|
45
48
|
client: TEST_CLIENT,
|
@@ -38,7 +38,10 @@ describe.runIf(process.env.TW_SECRET_KEY).skip("claimERC1155", () => {
|
|
38
38
|
client: TEST_CLIENT,
|
39
39
|
contractId: "Airdrop",
|
40
40
|
publisher: "0xFD78F7E2dF2B8c3D5bff0413c96f3237500898B3",
|
41
|
-
contractParams:
|
41
|
+
contractParams: {
|
42
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
43
|
+
contractURI: "",
|
44
|
+
},
|
42
45
|
}),
|
43
46
|
chain: ANVIL_CHAIN,
|
44
47
|
client: TEST_CLIENT,
|
@@ -36,7 +36,10 @@ describe.runIf(process.env.TW_SECRET_KEY).skip("claimERC20", () => {
|
|
36
36
|
client: TEST_CLIENT,
|
37
37
|
contractId: "Airdrop",
|
38
38
|
publisher: "0xFD78F7E2dF2B8c3D5bff0413c96f3237500898B3",
|
39
|
-
contractParams:
|
39
|
+
contractParams: {
|
40
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
41
|
+
contractURI: "",
|
42
|
+
},
|
40
43
|
}),
|
41
44
|
chain: ANVIL_CHAIN,
|
42
45
|
client: TEST_CLIENT,
|
@@ -38,7 +38,10 @@ describe.runIf(process.env.TW_SECRET_KEY).skip("claimERC721", () => {
|
|
38
38
|
client: TEST_CLIENT,
|
39
39
|
contractId: "Airdrop",
|
40
40
|
publisher: "0xFD78F7E2dF2B8c3D5bff0413c96f3237500898B3",
|
41
|
-
contractParams:
|
41
|
+
contractParams: {
|
42
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
43
|
+
contractURI: "",
|
44
|
+
},
|
42
45
|
}),
|
43
46
|
chain: ANVIL_CHAIN,
|
44
47
|
client: TEST_CLIENT,
|
@@ -0,0 +1,54 @@
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
2
|
+
import { ANVIL_CHAIN } from "~test/chains.js";
|
3
|
+
import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
|
4
|
+
import { TEST_CLIENT } from "~test/test-clients.js";
|
5
|
+
import { TEST_ACCOUNT_A } from "~test/test-wallets.js";
|
6
|
+
import { getContract } from "../../../contract/contract.js";
|
7
|
+
import { deployERC1155Contract } from "../../../extensions/prebuilts/deploy-erc1155.js";
|
8
|
+
import { sendAndConfirmTransaction } from "../../../transaction/actions/send-and-confirm-transaction.js";
|
9
|
+
import { getNFT } from "../read/getNFT.js";
|
10
|
+
import { mintTo } from "./mintTo.js";
|
11
|
+
import { updateTokenURI } from "./updateTokenURI.js";
|
12
|
+
|
13
|
+
const client = TEST_CLIENT;
|
14
|
+
const chain = ANVIL_CHAIN;
|
15
|
+
const account = TEST_ACCOUNT_A;
|
16
|
+
|
17
|
+
describe.runIf(process.env.TW_SECRET_KEY)("Edition: Update token uri", () => {
|
18
|
+
it("should update token uri", async () => {
|
19
|
+
const address = await deployERC1155Contract({
|
20
|
+
client,
|
21
|
+
chain,
|
22
|
+
account,
|
23
|
+
type: "TokenERC1155",
|
24
|
+
params: {
|
25
|
+
name: "Edition",
|
26
|
+
contractURI: TEST_CONTRACT_URI,
|
27
|
+
},
|
28
|
+
});
|
29
|
+
const contract = getContract({
|
30
|
+
address,
|
31
|
+
client,
|
32
|
+
chain,
|
33
|
+
});
|
34
|
+
await sendAndConfirmTransaction({
|
35
|
+
transaction: mintTo({
|
36
|
+
contract,
|
37
|
+
nft: { name: "Test1" },
|
38
|
+
to: account.address,
|
39
|
+
supply: 1n,
|
40
|
+
}),
|
41
|
+
account,
|
42
|
+
});
|
43
|
+
await sendAndConfirmTransaction({
|
44
|
+
transaction: updateTokenURI({
|
45
|
+
contract,
|
46
|
+
newMetadata: { name: "Test1 Updated" },
|
47
|
+
tokenId: 0n,
|
48
|
+
}),
|
49
|
+
account,
|
50
|
+
});
|
51
|
+
const nft = await getNFT({ contract, tokenId: 0n });
|
52
|
+
expect(nft.metadata.name).toBe("Test1 Updated");
|
53
|
+
});
|
54
|
+
});
|
@@ -0,0 +1,112 @@
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
2
|
+
import { ANVIL_CHAIN } from "~test/chains.js";
|
3
|
+
import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
|
4
|
+
import { TEST_CLIENT } from "~test/test-clients.js";
|
5
|
+
import { TEST_ACCOUNT_A, TEST_ACCOUNT_B } from "~test/test-wallets.js";
|
6
|
+
import { getContract } from "../../../contract/contract.js";
|
7
|
+
import { lazyMint } from "../../../extensions/erc721/write/lazyMint.js";
|
8
|
+
import { deployERC20Contract } from "../../../extensions/prebuilts/deploy-erc20.js";
|
9
|
+
import { deployERC721Contract } from "../../../extensions/prebuilts/deploy-erc721.js";
|
10
|
+
import { sendAndConfirmTransaction } from "../../../transaction/actions/send-and-confirm-transaction.js";
|
11
|
+
import { claimTo } from "../../erc721/drops/write/claimTo.js";
|
12
|
+
import { setClaimConditions } from "../../erc721/drops/write/setClaimConditions.js";
|
13
|
+
import { getApprovalForTransaction } from "./getApprovalForTransaction.js";
|
14
|
+
|
15
|
+
const chain = ANVIL_CHAIN;
|
16
|
+
const client = TEST_CLIENT;
|
17
|
+
const account = TEST_ACCOUNT_A;
|
18
|
+
|
19
|
+
describe.runIf(process.env.TW_SECRET_KEY)(
|
20
|
+
"erc20: getApporvalForTransaction",
|
21
|
+
() => {
|
22
|
+
it("should return an approval tx", async () => {
|
23
|
+
const currencyAddress = await deployERC20Contract({
|
24
|
+
chain,
|
25
|
+
client,
|
26
|
+
account,
|
27
|
+
type: "TokenERC20",
|
28
|
+
params: { name: "erc20token", contractURI: TEST_CONTRACT_URI },
|
29
|
+
});
|
30
|
+
const contract = getContract({
|
31
|
+
address: await deployERC721Contract({
|
32
|
+
client,
|
33
|
+
chain,
|
34
|
+
account,
|
35
|
+
type: "DropERC721",
|
36
|
+
params: { name: "", contractURI: TEST_CONTRACT_URI },
|
37
|
+
}),
|
38
|
+
chain,
|
39
|
+
client,
|
40
|
+
});
|
41
|
+
await sendAndConfirmTransaction({
|
42
|
+
transaction: lazyMint({ contract, nfts: [{ name: "token 0" }] }),
|
43
|
+
account,
|
44
|
+
});
|
45
|
+
await sendAndConfirmTransaction({
|
46
|
+
transaction: setClaimConditions({
|
47
|
+
contract,
|
48
|
+
phases: [
|
49
|
+
{
|
50
|
+
maxClaimableSupply: 100n,
|
51
|
+
maxClaimablePerWallet: 1n,
|
52
|
+
currencyAddress,
|
53
|
+
price: 1,
|
54
|
+
startTime: new Date(),
|
55
|
+
},
|
56
|
+
],
|
57
|
+
}),
|
58
|
+
account,
|
59
|
+
});
|
60
|
+
const approveTx = await getApprovalForTransaction({
|
61
|
+
transaction: claimTo({
|
62
|
+
contract,
|
63
|
+
to: TEST_ACCOUNT_B.address,
|
64
|
+
quantity: 1n,
|
65
|
+
}),
|
66
|
+
account,
|
67
|
+
});
|
68
|
+
expect(approveTx?.to).toBe(currencyAddress);
|
69
|
+
});
|
70
|
+
|
71
|
+
it("should return NULL", async () => {
|
72
|
+
const contract = getContract({
|
73
|
+
address: await deployERC721Contract({
|
74
|
+
client,
|
75
|
+
chain,
|
76
|
+
account,
|
77
|
+
type: "DropERC721",
|
78
|
+
params: { name: "", contractURI: TEST_CONTRACT_URI },
|
79
|
+
}),
|
80
|
+
chain,
|
81
|
+
client,
|
82
|
+
});
|
83
|
+
await sendAndConfirmTransaction({
|
84
|
+
transaction: lazyMint({ contract, nfts: [{ name: "token 0" }] }),
|
85
|
+
account,
|
86
|
+
});
|
87
|
+
await sendAndConfirmTransaction({
|
88
|
+
transaction: setClaimConditions({
|
89
|
+
contract,
|
90
|
+
phases: [
|
91
|
+
{
|
92
|
+
maxClaimableSupply: 100n,
|
93
|
+
maxClaimablePerWallet: 1n,
|
94
|
+
price: 1,
|
95
|
+
startTime: new Date(),
|
96
|
+
},
|
97
|
+
],
|
98
|
+
}),
|
99
|
+
account,
|
100
|
+
});
|
101
|
+
const approveTx = await getApprovalForTransaction({
|
102
|
+
transaction: claimTo({
|
103
|
+
contract,
|
104
|
+
to: TEST_ACCOUNT_B.address,
|
105
|
+
quantity: 1n,
|
106
|
+
}),
|
107
|
+
account,
|
108
|
+
});
|
109
|
+
expect(approveTx).toBe(null);
|
110
|
+
});
|
111
|
+
},
|
112
|
+
);
|
@@ -0,0 +1,104 @@
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
2
|
+
import { ANVIL_CHAIN } from "~test/chains.js";
|
3
|
+
import { TEST_CONTRACT_URI } from "~test/ipfs-uris.js";
|
4
|
+
import { TEST_CLIENT } from "~test/test-clients.js";
|
5
|
+
import { TEST_ACCOUNT_A, TEST_ACCOUNT_B } from "~test/test-wallets.js";
|
6
|
+
import { getContract } from "../../../contract/contract.js";
|
7
|
+
import { sendAndConfirmTransaction } from "../../../transaction/actions/send-and-confirm-transaction.js";
|
8
|
+
import { deployERC20Contract } from "../../prebuilts/deploy-erc20.js";
|
9
|
+
import { balanceOf } from "../__generated__/IERC20/read/balanceOf.js";
|
10
|
+
import { approve } from "./approve.js";
|
11
|
+
import { mintTo } from "./mintTo.js";
|
12
|
+
import { transferFrom } from "./transferFrom.js";
|
13
|
+
|
14
|
+
const chain = ANVIL_CHAIN;
|
15
|
+
const client = TEST_CLIENT;
|
16
|
+
const account = TEST_ACCOUNT_A;
|
17
|
+
|
18
|
+
describe.runIf(process.env.TW_SECRET_KEY)("ERC20 transferFrom", () => {
|
19
|
+
it("should work with `amount`", async () => {
|
20
|
+
const contract = getContract({
|
21
|
+
address: await deployERC20Contract({
|
22
|
+
chain,
|
23
|
+
client,
|
24
|
+
account,
|
25
|
+
params: {
|
26
|
+
name: "erc20token",
|
27
|
+
contractURI: TEST_CONTRACT_URI,
|
28
|
+
},
|
29
|
+
type: "TokenERC20",
|
30
|
+
}),
|
31
|
+
client,
|
32
|
+
chain,
|
33
|
+
});
|
34
|
+
|
35
|
+
await sendAndConfirmTransaction({
|
36
|
+
transaction: mintTo({ contract, to: account.address, amount: 1000 }),
|
37
|
+
account,
|
38
|
+
});
|
39
|
+
|
40
|
+
await sendAndConfirmTransaction({
|
41
|
+
transaction: approve({ contract, amount: 999, spender: account.address }),
|
42
|
+
account,
|
43
|
+
});
|
44
|
+
|
45
|
+
await sendAndConfirmTransaction({
|
46
|
+
transaction: transferFrom({
|
47
|
+
contract,
|
48
|
+
amount: 999,
|
49
|
+
to: TEST_ACCOUNT_B.address,
|
50
|
+
from: account.address,
|
51
|
+
}),
|
52
|
+
account,
|
53
|
+
});
|
54
|
+
|
55
|
+
const balance = await balanceOf({
|
56
|
+
contract,
|
57
|
+
address: TEST_ACCOUNT_B.address,
|
58
|
+
});
|
59
|
+
expect(balance).toBe(999n * 10n ** 18n);
|
60
|
+
});
|
61
|
+
|
62
|
+
it("should work with `amountWei`", async () => {
|
63
|
+
const contract = getContract({
|
64
|
+
address: await deployERC20Contract({
|
65
|
+
chain,
|
66
|
+
client,
|
67
|
+
account,
|
68
|
+
params: {
|
69
|
+
name: "erc20token",
|
70
|
+
contractURI: TEST_CONTRACT_URI,
|
71
|
+
},
|
72
|
+
type: "TokenERC20",
|
73
|
+
}),
|
74
|
+
client,
|
75
|
+
chain,
|
76
|
+
});
|
77
|
+
|
78
|
+
await sendAndConfirmTransaction({
|
79
|
+
transaction: mintTo({ contract, to: account.address, amount: 1000 }),
|
80
|
+
account,
|
81
|
+
});
|
82
|
+
|
83
|
+
await sendAndConfirmTransaction({
|
84
|
+
transaction: approve({ contract, amount: 999, spender: account.address }),
|
85
|
+
account,
|
86
|
+
});
|
87
|
+
|
88
|
+
await sendAndConfirmTransaction({
|
89
|
+
transaction: transferFrom({
|
90
|
+
contract,
|
91
|
+
amountWei: 999n * 10n ** 18n,
|
92
|
+
to: TEST_ACCOUNT_B.address,
|
93
|
+
from: account.address,
|
94
|
+
}),
|
95
|
+
account,
|
96
|
+
});
|
97
|
+
|
98
|
+
const balance = await balanceOf({
|
99
|
+
contract,
|
100
|
+
address: TEST_ACCOUNT_B.address,
|
101
|
+
});
|
102
|
+
expect(balance).toBe(999n * 10n ** 18n);
|
103
|
+
});
|
104
|
+
});
|
@@ -34,7 +34,10 @@ describe.runIf(process.env.TW_SECRET_KEY)("Account Permissions", () => {
|
|
34
34
|
chain: ANVIL_CHAIN,
|
35
35
|
client: TEST_CLIENT,
|
36
36
|
contractId: "AccountFactory",
|
37
|
-
constructorParams:
|
37
|
+
constructorParams: {
|
38
|
+
defaultAdmin: TEST_ACCOUNT_A.address,
|
39
|
+
entrypoint: ENTRYPOINT_ADDRESS_v0_6,
|
40
|
+
},
|
38
41
|
});
|
39
42
|
const transaction = createAccount({
|
40
43
|
contract: accountFactoryContract,
|
@@ -53,4 +53,33 @@ describe.runIf(process.env.TW_SECRET_KEY)("updateMetadata ERC721", () => {
|
|
53
53
|
expect(nfts[1]?.metadata.name).toBe("token 1 - updated");
|
54
54
|
expect(nfts[2]?.metadata.name).toBe("token 2");
|
55
55
|
});
|
56
|
+
|
57
|
+
it("should throw if no nft uploaded", async () => {
|
58
|
+
const address = await deployERC721Contract({
|
59
|
+
client,
|
60
|
+
chain,
|
61
|
+
account,
|
62
|
+
type: "DropERC721",
|
63
|
+
params: {
|
64
|
+
name: "NFT Drop",
|
65
|
+
contractURI: TEST_CONTRACT_URI,
|
66
|
+
},
|
67
|
+
});
|
68
|
+
const contract = getContract({
|
69
|
+
address,
|
70
|
+
client,
|
71
|
+
chain,
|
72
|
+
});
|
73
|
+
const updateTx = updateMetadata({
|
74
|
+
contract,
|
75
|
+
targetTokenId: 0n,
|
76
|
+
newMetadata: { name: "token 1 - updated" },
|
77
|
+
client,
|
78
|
+
});
|
79
|
+
await expect(
|
80
|
+
sendAndConfirmTransaction({ transaction: updateTx, account }),
|
81
|
+
).rejects.toThrowError(
|
82
|
+
"No base URI set. Please set a base URI before updating metadata",
|
83
|
+
);
|
84
|
+
});
|
56
85
|
});
|