thirdweb 5.29.6 → 5.30.0-nightly-33777df88fb190c2af8ad25e4930040884996f1e-20240620000630
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/exports/extensions/erc1155.js +3 -1
- package/dist/cjs/exports/extensions/erc1155.js.map +1 -1
- package/dist/cjs/exports/wallets/wallet-connect.js +1 -1
- package/dist/cjs/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.js +28 -0
- package/dist/cjs/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.js.map +1 -0
- package/dist/cjs/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.js +71 -0
- package/dist/cjs/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.js.map +1 -0
- package/dist/cjs/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.js +115 -0
- package/dist/cjs/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.js.map +1 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.js +116 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.js.map +1 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.js +126 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.js.map +1 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.js +126 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.js.map +1 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.js +123 -0
- package/dist/cjs/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.js.map +1 -0
- package/dist/cjs/extensions/erc1155/drops/write/updateMetadata.js +89 -0
- package/dist/cjs/extensions/erc1155/drops/write/updateMetadata.js.map +1 -0
- package/dist/cjs/pay/buyWithCrypto/getQuote.js +19 -21
- package/dist/cjs/pay/buyWithCrypto/getQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getStatus.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getQuote.js +19 -20
- package/dist/cjs/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getStatus.js.map +1 -1
- package/dist/cjs/react/core/hooks/contract/useContractEvents.js +1 -1
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/native/hooks/wallets/useActiveWalletChain.js +1 -1
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js +1 -0
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/web/hooks/wallets/useActiveWalletChain.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +63 -118
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/MenuButton.js +53 -0
- package/dist/cjs/react/web/ui/ConnectWallet/MenuButton.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/CoinsIcon.js +12 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/CoinsIcon.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/{WalletIcon.js → GenericWalletIcon.js} +4 -4
- package/dist/cjs/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.js +12 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/WalletConnectIcon.js +12 -0
- package/dist/cjs/react/web/ui/ConnectWallet/icons/WalletConnectIcon.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +3 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js +57 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js +3 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.js +78 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.js +2 -4
- package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/useConnectModal.js.map +1 -1
- package/dist/cjs/react/web/ui/components/CopyIcon.js +2 -1
- package/dist/cjs/react/web/ui/components/CopyIcon.js.map +1 -1
- package/dist/cjs/react/web/utils/canFitWideModal.js +1 -1
- package/dist/cjs/react/web/wallets/in-app/InputSelectionUI.js +2 -2
- package/dist/cjs/react/web/wallets/in-app/InputSelectionUI.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/ConnectingScreen.js +2 -2
- package/dist/cjs/react/web/wallets/shared/ConnectingScreen.js.map +1 -1
- package/dist/cjs/transaction/read-contract.js +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/injected/index.js +7 -0
- package/dist/cjs/wallets/injected/index.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/controller.js +6 -6
- package/dist/cjs/wallets/wallet-connect/controller.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/index.js +17 -4
- package/dist/cjs/wallets/wallet-connect/receiver/index.js.map +1 -0
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.js +1 -1
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/receiver/request-handlers/switch-chain.js +20 -0
- package/dist/cjs/wallets/wallet-connect/receiver/request-handlers/switch-chain.js.map +1 -0
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/session-proposal.js +13 -10
- package/dist/cjs/wallets/wallet-connect/receiver/session-proposal.js.map +1 -0
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/session-request.js +28 -0
- package/dist/cjs/wallets/wallet-connect/receiver/session-request.js.map +1 -0
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/session-store.js.map +1 -1
- package/dist/cjs/wallets/wallet-connect/receiver/types.js.map +1 -0
- package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/utils.js +2 -1
- package/dist/cjs/wallets/wallet-connect/receiver/utils.js.map +1 -0
- package/dist/esm/exports/extensions/erc1155.js +1 -0
- package/dist/esm/exports/extensions/erc1155.js.map +1 -1
- package/dist/esm/exports/wallets/wallet-connect.js +1 -1
- package/dist/esm/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.js +24 -0
- package/dist/esm/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.js.map +1 -0
- package/dist/esm/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.js +65 -0
- package/dist/esm/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.js.map +1 -0
- package/dist/esm/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.js +107 -0
- package/dist/esm/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.js.map +1 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.js +109 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.js.map +1 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.js +119 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.js.map +1 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.js +119 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.js.map +1 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.js +116 -0
- package/dist/esm/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.js.map +1 -0
- package/dist/esm/extensions/erc1155/drops/write/updateMetadata.js +84 -0
- package/dist/esm/extensions/erc1155/drops/write/updateMetadata.js.map +1 -0
- package/dist/esm/pay/buyWithCrypto/getQuote.js +19 -21
- package/dist/esm/pay/buyWithCrypto/getQuote.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getStatus.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getQuote.js +19 -20
- package/dist/esm/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getStatus.js.map +1 -1
- package/dist/esm/react/core/hooks/contract/useContractEvents.js +1 -1
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/native/hooks/wallets/useActiveWalletChain.js +1 -1
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js +1 -0
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/web/hooks/wallets/useActiveWalletChain.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +23 -78
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/MenuButton.js +50 -0
- package/dist/esm/react/web/ui/ConnectWallet/MenuButton.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/CoinsIcon.js +8 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/CoinsIcon.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/{WalletIcon.js → GenericWalletIcon.js} +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/icons/GenericWalletIcon.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.js +8 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/WalletConnectIcon.js +8 -0
- package/dist/esm/react/web/ui/ConnectWallet/icons/WalletConnectIcon.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +3 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js +53 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/ManageWalletScreen.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js +3 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.js +74 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.js +2 -4
- package/dist/esm/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/useConnectModal.js.map +1 -1
- package/dist/esm/react/web/ui/components/CopyIcon.js +2 -1
- package/dist/esm/react/web/ui/components/CopyIcon.js.map +1 -1
- package/dist/esm/react/web/utils/canFitWideModal.js +1 -1
- package/dist/esm/react/web/wallets/in-app/InputSelectionUI.js +2 -2
- package/dist/esm/react/web/wallets/in-app/InputSelectionUI.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/ConnectingScreen.js +2 -2
- package/dist/esm/react/web/wallets/shared/ConnectingScreen.js.map +1 -1
- package/dist/esm/transaction/read-contract.js +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/injected/index.js +7 -0
- package/dist/esm/wallets/injected/index.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/controller.js +6 -6
- package/dist/esm/wallets/wallet-connect/controller.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/index.js +15 -3
- package/dist/esm/wallets/wallet-connect/receiver/index.js.map +1 -0
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.js +1 -1
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/receiver/request-handlers/switch-chain.js +16 -0
- package/dist/esm/wallets/wallet-connect/receiver/request-handlers/switch-chain.js.map +1 -0
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/session-proposal.js +13 -10
- package/dist/esm/wallets/wallet-connect/receiver/session-proposal.js.map +1 -0
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/session-request.js +28 -0
- package/dist/esm/wallets/wallet-connect/receiver/session-request.js.map +1 -0
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/session-store.js.map +1 -1
- package/dist/esm/wallets/wallet-connect/receiver/types.js.map +1 -0
- package/dist/esm/wallets/wallet-connect/{consumer → receiver}/utils.js +2 -1
- package/dist/esm/wallets/wallet-connect/receiver/utils.js.map +1 -0
- package/dist/types/exports/extensions/erc1155.d.ts +1 -0
- package/dist/types/exports/extensions/erc1155.d.ts.map +1 -1
- package/dist/types/exports/wallets/wallet-connect.d.ts +2 -2
- package/dist/types/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.d.ts +29 -0
- package/dist/types/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.d.ts +46 -0
- package/dist/types/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.d.ts +85 -0
- package/dist/types/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.d.ts +80 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.d.ts +87 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.d.ts +87 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.d.ts +87 -0
- package/dist/types/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.d.ts.map +1 -0
- package/dist/types/extensions/erc1155/drops/write/updateMetadata.d.ts +37 -0
- package/dist/types/extensions/erc1155/drops/write/updateMetadata.d.ts.map +1 -0
- package/dist/types/pay/buyWithCrypto/getQuote.d.ts +6 -0
- package/dist/types/pay/buyWithCrypto/getQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getStatus.d.ts +1 -0
- package/dist/types/pay/buyWithCrypto/getStatus.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getQuote.d.ts +11 -1
- package/dist/types/pay/buyWithFiat/getQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getStatus.d.ts +4 -0
- package/dist/types/pay/buyWithFiat/getStatus.d.ts.map +1 -1
- package/dist/types/react/core/hooks/contract/useContractEvents.d.ts +1 -1
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts +1 -0
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/native/hooks/wallets/useActiveWalletChain.d.ts +1 -1
- package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/web/hooks/wallets/useActiveWalletChain.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/ConnectButtonProps.d.ts +44 -4
- package/dist/types/react/web/ui/ConnectWallet/ConnectButtonProps.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/MenuButton.d.ts +10 -0
- package/dist/types/react/web/ui/ConnectWallet/MenuButton.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/CoinsIcon.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/CoinsIcon.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/GenericWalletIcon.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/GenericWalletIcon.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/WalletConnectIcon.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/icons/WalletConnectIcon.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/ManageWalletScreen.d.ts +14 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/ManageWalletScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/SignatureScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.d.ts +12 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.d.ts +3 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/useConnectModal.d.ts +1 -1
- package/dist/types/react/web/ui/components/CopyIcon.d.ts.map +1 -1
- package/dist/types/react/web/utils/canFitWideModal.d.ts +1 -1
- package/dist/types/react/web/wallets/in-app/InputSelectionUI.d.ts +1 -0
- package/dist/types/react/web/wallets/in-app/InputSelectionUI.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/ConnectingScreen.d.ts.map +1 -1
- package/dist/types/transaction/read-contract.d.ts +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/injected/index.d.ts.map +1 -1
- package/dist/types/wallets/interfaces/wallet.d.ts +21 -0
- package/dist/types/wallets/interfaces/wallet.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/controller.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/index.d.ts +7 -1
- package/dist/types/wallets/wallet-connect/receiver/index.d.ts.map +1 -0
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/receiver/request-handlers/switch-chain.d.ts +11 -0
- package/dist/types/wallets/wallet-connect/receiver/request-handlers/switch-chain.d.ts.map +1 -0
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/session-proposal.d.ts +4 -1
- package/dist/types/wallets/wallet-connect/receiver/session-proposal.d.ts.map +1 -0
- package/dist/types/wallets/wallet-connect/receiver/session-request.d.ts.map +1 -0
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/session-store.d.ts.map +1 -1
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/types.d.ts +25 -3
- package/dist/types/wallets/wallet-connect/receiver/types.d.ts.map +1 -0
- package/dist/types/wallets/wallet-connect/{consumer → receiver}/utils.d.ts +1 -1
- package/dist/types/wallets/wallet-connect/receiver/utils.d.ts.map +1 -0
- package/package.json +3 -3
- package/src/exports/extensions/erc1155.ts +5 -0
- package/src/exports/wallets/wallet-connect.ts +2 -2
- package/src/extensions/erc1155/__generated__/BatchMintMetadata/events/BatchMetadataUpdate.ts +25 -0
- package/src/extensions/erc1155/__generated__/BatchMintMetadata/read/getBaseURICount.ts +74 -0
- package/src/extensions/erc1155/__generated__/BatchMintMetadata/read/getBatchIdAtIndex.ts +131 -0
- package/src/extensions/erc1155/__generated__/DropERC1155/write/freezeBatchBaseURI.ts +141 -0
- package/src/extensions/erc1155/__generated__/DropERC1155/write/setMaxTotalSupply.ts +155 -0
- package/src/extensions/erc1155/__generated__/DropERC1155/write/setSaleRecipientForToken.ts +157 -0
- package/src/extensions/erc1155/__generated__/DropERC1155/write/updateBatchBaseURI.ts +149 -0
- package/src/extensions/erc1155/drops/write/claimTo.test.ts +73 -0
- package/src/extensions/erc1155/drops/write/updateMetadata.test.ts +127 -0
- package/src/extensions/erc1155/drops/write/updateMetadata.ts +125 -0
- package/src/extensions/erc721/write/mintTo.test.ts +67 -0
- package/src/pay/buyWithCrypto/getQuote.ts +27 -27
- package/src/pay/buyWithCrypto/getStatus.ts +1 -0
- package/src/pay/buyWithFiat/getQuote.ts +33 -27
- package/src/pay/buyWithFiat/getStatus.ts +5 -0
- package/src/react/core/hooks/contract/useContractEvents.ts +1 -1
- package/src/react/core/hooks/transaction/useSendTransaction.ts +1 -0
- package/src/react/native/hooks/wallets/useActiveWalletChain.ts +1 -1
- package/src/react/web/hooks/transaction/useSendTransaction.tsx +1 -0
- package/src/react/web/hooks/wallets/useActiveWalletChain.ts +1 -1
- package/src/react/web/ui/ConnectWallet/ConnectButtonProps.ts +45 -4
- package/src/react/web/ui/ConnectWallet/Details.tsx +46 -145
- package/src/react/web/ui/ConnectWallet/MenuButton.tsx +55 -0
- package/src/react/web/ui/ConnectWallet/icons/CoinsIcon.tsx +46 -0
- package/src/react/web/ui/ConnectWallet/icons/{WalletIcon.tsx → GenericWalletIcon.tsx} +1 -1
- package/src/react/web/ui/ConnectWallet/icons/OutlineWalletIcon.tsx +32 -0
- package/src/react/web/ui/ConnectWallet/icons/WalletConnectIcon.tsx +22 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +3 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx +2 -2
- package/src/react/web/ui/ConnectWallet/screens/ManageWalletScreen.tsx +122 -0
- package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.tsx +7 -1
- package/src/react/web/ui/ConnectWallet/screens/WalletConnectReceiverScreen.tsx +165 -0
- package/src/react/web/ui/ConnectWallet/screens/WalletLogoSpinner.tsx +30 -24
- package/src/react/web/ui/ConnectWallet/screens/types.ts +13 -0
- package/src/react/web/ui/ConnectWallet/useConnectModal.tsx +1 -1
- package/src/react/web/ui/components/CopyIcon.tsx +5 -6
- package/src/react/web/utils/canFitWideModal.ts +1 -1
- package/src/react/web/wallets/in-app/InputSelectionUI.tsx +3 -0
- package/src/react/web/wallets/shared/ConnectingScreen.tsx +2 -1
- package/src/transaction/read-contract.ts +1 -1
- package/src/version.ts +1 -1
- package/src/wallets/injected/index.ts +10 -0
- package/src/wallets/interfaces/wallet.ts +22 -0
- package/src/wallets/smart/smart-wallet-integration.test.ts +1 -2
- package/src/wallets/wallet-connect/controller.ts +6 -5
- package/src/wallets/wallet-connect/{consumer → receiver}/index.ts +29 -4
- package/src/wallets/wallet-connect/{consumer/consumer.test.ts → receiver/receiver.test.ts} +5 -0
- package/src/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.ts +1 -1
- package/src/wallets/wallet-connect/receiver/request-handlers/switch-chain.ts +21 -0
- package/src/wallets/wallet-connect/{consumer → receiver}/session-proposal.test.ts +37 -18
- package/src/wallets/wallet-connect/{consumer → receiver}/session-proposal.ts +23 -15
- package/src/wallets/wallet-connect/{consumer → receiver}/session-request.test.ts +85 -0
- package/src/wallets/wallet-connect/{consumer → receiver}/session-request.ts +39 -1
- package/src/wallets/wallet-connect/{consumer → receiver}/types.ts +27 -3
- package/src/wallets/wallet-connect/{consumer → receiver}/utils.ts +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/icons/WalletIcon.js.map +0 -1
- package/dist/cjs/wallets/wallet-connect/consumer/index.js.map +0 -1
- package/dist/cjs/wallets/wallet-connect/consumer/session-proposal.js.map +0 -1
- package/dist/cjs/wallets/wallet-connect/consumer/session-request.js.map +0 -1
- package/dist/cjs/wallets/wallet-connect/consumer/types.js.map +0 -1
- package/dist/cjs/wallets/wallet-connect/consumer/utils.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/icons/WalletIcon.js.map +0 -1
- package/dist/esm/wallets/wallet-connect/consumer/index.js.map +0 -1
- package/dist/esm/wallets/wallet-connect/consumer/session-proposal.js.map +0 -1
- package/dist/esm/wallets/wallet-connect/consumer/session-request.js.map +0 -1
- package/dist/esm/wallets/wallet-connect/consumer/types.js.map +0 -1
- package/dist/esm/wallets/wallet-connect/consumer/utils.js.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/icons/WalletIcon.d.ts +0 -6
- package/dist/types/react/web/ui/ConnectWallet/icons/WalletIcon.d.ts.map +0 -1
- package/dist/types/wallets/wallet-connect/consumer/index.d.ts.map +0 -1
- package/dist/types/wallets/wallet-connect/consumer/session-proposal.d.ts.map +0 -1
- package/dist/types/wallets/wallet-connect/consumer/session-request.d.ts.map +0 -1
- package/dist/types/wallets/wallet-connect/consumer/types.d.ts.map +0 -1
- package/dist/types/wallets/wallet-connect/consumer/utils.d.ts.map +0 -1
- /package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.js +0 -0
- /package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.js +0 -0
- /package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.js +0 -0
- /package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.js +0 -0
- /package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/session-store.js +0 -0
- /package/dist/cjs/wallets/wallet-connect/{consumer → receiver}/types.js +0 -0
- /package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.js +0 -0
- /package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.js +0 -0
- /package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.js +0 -0
- /package/dist/esm/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.js +0 -0
- /package/dist/esm/wallets/wallet-connect/{consumer → receiver}/session-store.js +0 -0
- /package/dist/esm/wallets/wallet-connect/{consumer → receiver}/types.js +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.d.ts +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.d.ts +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.d.ts +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.d.ts +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign.d.ts +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/session-request.d.ts +0 -0
- /package/dist/types/wallets/wallet-connect/{consumer → receiver}/session-store.d.ts +0 -0
- /package/src/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-raw-transaction.ts +0 -0
- /package/src/wallets/wallet-connect/{consumer → receiver}/request-handlers/send-transaction.ts +0 -0
- /package/src/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-transaction.ts +0 -0
- /package/src/wallets/wallet-connect/{consumer → receiver}/request-handlers/sign-typed-data.ts +0 -0
- /package/src/wallets/wallet-connect/{consumer → receiver}/session-store.test.ts +0 -0
- /package/src/wallets/wallet-connect/{consumer → receiver}/session-store.ts +0 -0
@@ -0,0 +1,46 @@
|
|
1
|
+
import type { IconFC } from "./types.js";
|
2
|
+
|
3
|
+
/**
|
4
|
+
* @internal
|
5
|
+
*/
|
6
|
+
export const CoinsIcon: IconFC = (props) => {
|
7
|
+
return (
|
8
|
+
<svg
|
9
|
+
width={props.size}
|
10
|
+
height={props.size}
|
11
|
+
role="presentation"
|
12
|
+
viewBox="0 0 24 24"
|
13
|
+
fill="none"
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
15
|
+
>
|
16
|
+
<path
|
17
|
+
d="M8 14C11.3137 14 14 11.3137 14 8C14 4.68629 11.3137 2 8 2C4.68629 2 2 4.68629 2 8C2 11.3137 4.68629 14 8 14Z"
|
18
|
+
stroke="currentColor"
|
19
|
+
strokeWidth="1.5"
|
20
|
+
strokeLinecap="round"
|
21
|
+
strokeLinejoin="round"
|
22
|
+
/>
|
23
|
+
<path
|
24
|
+
d="M18.0901 10.37C19.0354 10.7224 19.8766 11.3075 20.5358 12.0712C21.1951 12.8349 21.6512 13.7524 21.8618 14.7391C22.0725 15.7257 22.031 16.7495 21.7411 17.7158C21.4513 18.6822 20.9224 19.5598 20.2035 20.2676C19.4846 20.9754 18.5988 21.4905 17.6281 21.7652C16.6573 22.04 15.633 22.0655 14.6498 21.8395C13.6666 21.6134 12.7562 21.1431 12.0029 20.472C11.2496 19.8009 10.6777 18.9507 10.3401 18"
|
25
|
+
stroke="currentColor"
|
26
|
+
strokeWidth="1.5"
|
27
|
+
strokeLinecap="round"
|
28
|
+
strokeLinejoin="round"
|
29
|
+
/>
|
30
|
+
<path
|
31
|
+
d="M7 6H8V10"
|
32
|
+
stroke="currentColor"
|
33
|
+
strokeWidth="1.5"
|
34
|
+
strokeLinecap="round"
|
35
|
+
strokeLinejoin="round"
|
36
|
+
/>
|
37
|
+
<path
|
38
|
+
d="M16.7101 13.88L17.4101 14.59L14.5901 17.41"
|
39
|
+
stroke="currentColor"
|
40
|
+
strokeWidth="1.5"
|
41
|
+
strokeLinecap="round"
|
42
|
+
strokeLinejoin="round"
|
43
|
+
/>
|
44
|
+
</svg>
|
45
|
+
);
|
46
|
+
};
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import type { IconFC } from "./types.js";
|
2
|
+
|
3
|
+
/**
|
4
|
+
* @internal
|
5
|
+
*/
|
6
|
+
export const OutlineWalletIcon: IconFC = (props) => {
|
7
|
+
return (
|
8
|
+
<svg
|
9
|
+
width={props.size}
|
10
|
+
height={props.size}
|
11
|
+
viewBox="0 0 24 24"
|
12
|
+
role="presentation"
|
13
|
+
fill="none"
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
15
|
+
>
|
16
|
+
<path
|
17
|
+
d="M19 7V4C19 3.73478 18.8946 3.48043 18.7071 3.29289C18.5196 3.10536 18.2652 3 18 3H5C4.46957 3 3.96086 3.21071 3.58579 3.58579C3.21071 3.96086 3 4.46957 3 5C3 5.53043 3.21071 6.03914 3.58579 6.41421C3.96086 6.78929 4.46957 7 5 7H20C20.2652 7 20.5196 7.10536 20.7071 7.29289C20.8946 7.48043 21 7.73478 21 8V12M21 12H18C17.4696 12 16.9609 12.2107 16.5858 12.5858C16.2107 12.9609 16 13.4696 16 14C16 14.5304 16.2107 15.0391 16.5858 15.4142C16.9609 15.7893 17.4696 16 18 16H21C21.2652 16 21.5196 15.8946 21.7071 15.7071C21.8946 15.5196 22 15.2652 22 15V13C22 12.7348 21.8946 12.4804 21.7071 12.2929C21.5196 12.1054 21.2652 12 21 12Z"
|
18
|
+
stroke="currentColor"
|
19
|
+
strokeWidth="1.5"
|
20
|
+
strokeLinecap="round"
|
21
|
+
strokeLinejoin="round"
|
22
|
+
/>
|
23
|
+
<path
|
24
|
+
d="M3 5V19C3 19.5304 3.21071 20.0391 3.58579 20.4142C3.96086 20.7893 4.46957 21 5 21H20C20.2652 21 20.5196 20.8946 20.7071 20.7071C20.8946 20.5196 21 20.2652 21 20V16"
|
25
|
+
stroke="currentColor"
|
26
|
+
strokeWidth="1.5"
|
27
|
+
strokeLinecap="round"
|
28
|
+
strokeLinejoin="round"
|
29
|
+
/>
|
30
|
+
</svg>
|
31
|
+
);
|
32
|
+
};
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import type { IconFC } from "./types.js";
|
2
|
+
|
3
|
+
/**
|
4
|
+
* @internal
|
5
|
+
*/
|
6
|
+
export const WalletConnectIcon: IconFC = (props) => {
|
7
|
+
return (
|
8
|
+
<svg
|
9
|
+
width={props.size}
|
10
|
+
height={props.size}
|
11
|
+
viewBox="0 0 24 24"
|
12
|
+
fill="none"
|
13
|
+
role="presentation"
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
15
|
+
>
|
16
|
+
<path
|
17
|
+
d="M4.91334 7.73539C8.82714 4.0882 15.1729 4.0882 19.0867 7.73539L19.5577 8.17432C19.7534 8.35664 19.7534 8.65232 19.5577 8.83464L17.9464 10.3362C17.8485 10.4274 17.6899 10.4274 17.5921 10.3362L16.9439 9.73217C14.2134 7.18782 9.7866 7.18782 7.05614 9.73217L6.36193 10.379C6.26407 10.4702 6.10547 10.4702 6.0076 10.379L4.39629 8.87747C4.20056 8.69515 4.20056 8.39947 4.39629 8.21715L4.91334 7.73539ZM22.4191 10.8407L23.8532 12.1771C24.0489 12.3594 24.0489 12.6551 23.8532 12.8374L17.3867 18.8632C17.1911 19.0456 16.8738 19.0456 16.6781 18.8632L12.0886 14.5865C12.0397 14.5409 11.9604 14.5409 11.9115 14.5865L7.32202 18.8632C7.12638 19.0456 6.8091 19.0456 6.61337 18.8632L0.146771 12.8373C-0.0489237 12.655 -0.0489237 12.3593 0.146771 12.177L1.58087 10.8406C1.77657 10.6582 2.09384 10.6582 2.28954 10.8406L6.87907 15.1173C6.928 15.163 7.0073 15.163 7.05623 15.1173L11.6456 10.8406C11.8412 10.6582 12.1585 10.6582 12.3542 10.8406L16.9438 15.1173C16.9927 15.163 17.072 15.163 17.1209 15.1173L21.7105 10.8407C21.9061 10.6583 22.2234 10.6583 22.4191 10.8407Z"
|
18
|
+
fill="currentColor"
|
19
|
+
/>
|
20
|
+
</svg>
|
21
|
+
);
|
22
|
+
};
|
@@ -604,6 +604,7 @@ function SwapScreenContent(
|
|
604
604
|
: toToken.address,
|
605
605
|
toAmount: tokenAmount,
|
606
606
|
client,
|
607
|
+
purchaseData: payOptions.purchaseData,
|
607
608
|
}
|
608
609
|
: undefined;
|
609
610
|
|
@@ -799,6 +800,8 @@ function FiatScreenContent(
|
|
799
800
|
toAmount: tokenAmount,
|
800
801
|
client,
|
801
802
|
isTestMode: buyWithFiatOptions?.testMode,
|
803
|
+
purchaseData: props.payOptions.purchaseData,
|
804
|
+
fromAddress: account.address,
|
802
805
|
}
|
803
806
|
: undefined,
|
804
807
|
);
|
@@ -18,7 +18,7 @@ import { Button } from "../../../../components/buttons.js";
|
|
18
18
|
import { Text } from "../../../../components/text.js";
|
19
19
|
import { TokenSymbol } from "../../../../components/token/TokenSymbol.js";
|
20
20
|
import type { TokenInfo } from "../../../defaultTokens.js";
|
21
|
-
import {
|
21
|
+
import { GenericWalletIcon } from "../../../icons/GenericWalletIcon.js";
|
22
22
|
import { formatTokenBalance } from "../../formatTokenBalance.js";
|
23
23
|
import { type NativeToken, isNativeToken } from "../../nativeToken.js";
|
24
24
|
|
@@ -126,7 +126,7 @@ export function PayWithCrypto(props: {
|
|
126
126
|
)}
|
127
127
|
|
128
128
|
<Container flex="row" gap="xxs" center="y" color="secondaryText">
|
129
|
-
<
|
129
|
+
<GenericWalletIcon size={fontSize.xs} />
|
130
130
|
{balanceQuery.data ? (
|
131
131
|
<Text size="xs" color="secondaryText" weight={500}>
|
132
132
|
{formatTokenBalance(balanceQuery.data, true)}
|
@@ -0,0 +1,122 @@
|
|
1
|
+
"use client";
|
2
|
+
import { ShuffleIcon } from "@radix-ui/react-icons";
|
3
|
+
import type { ThirdwebClient } from "../../../../../client/client.js";
|
4
|
+
import { isInAppWallet } from "../../../../../wallets/in-app/core/wallet/index.js";
|
5
|
+
import { injectedProvider } from "../../../../../wallets/injected/mipdStore.js";
|
6
|
+
import { fontSize, iconSize } from "../../../../core/design-system/index.js";
|
7
|
+
import { useActiveWallet } from "../../../hooks/wallets/useActiveWallet.js";
|
8
|
+
import { Spacer } from "../../components/Spacer.js";
|
9
|
+
import { Container, Line, ModalHeader } from "../../components/basic.js";
|
10
|
+
import { Text } from "../../components/text.js";
|
11
|
+
import { MenuButton } from "../MenuButton.js";
|
12
|
+
import { KeyIcon } from "../icons/KeyIcon.js";
|
13
|
+
import { WalletConnectIcon } from "../icons/WalletConnectIcon.js";
|
14
|
+
import type { ConnectLocale } from "../locale/types.js";
|
15
|
+
import type { WalletDetailsModalScreen } from "./types.js";
|
16
|
+
|
17
|
+
/**
|
18
|
+
* @internal
|
19
|
+
*/
|
20
|
+
export function ManageWalletScreen(props: {
|
21
|
+
onBack: () => void;
|
22
|
+
setScreen: (screen: WalletDetailsModalScreen) => void;
|
23
|
+
closeModal: () => void;
|
24
|
+
locale: ConnectLocale;
|
25
|
+
client: ThirdwebClient;
|
26
|
+
}) {
|
27
|
+
const activeWallet = useActiveWallet();
|
28
|
+
|
29
|
+
return (
|
30
|
+
<Container
|
31
|
+
style={{
|
32
|
+
minHeight: "300px",
|
33
|
+
}}
|
34
|
+
>
|
35
|
+
<Container p="lg">
|
36
|
+
<ModalHeader title="Manage Wallet" onBack={props.onBack} />
|
37
|
+
</Container>
|
38
|
+
<Line />
|
39
|
+
<Container
|
40
|
+
px="sm"
|
41
|
+
scrollY
|
42
|
+
style={{
|
43
|
+
maxHeight: "500px",
|
44
|
+
}}
|
45
|
+
>
|
46
|
+
<Spacer y="md" />
|
47
|
+
<Container style={{ position: "relative", height: "250px" }}>
|
48
|
+
{/* Switch Metamask Account (only shows if the active wallet is MetaMask) */}
|
49
|
+
<SwitchMetamaskAccount
|
50
|
+
closeModal={props.closeModal}
|
51
|
+
connectLocale={props.locale}
|
52
|
+
/>
|
53
|
+
|
54
|
+
{/* Wallet Connect Receiver */}
|
55
|
+
<MenuButton
|
56
|
+
onClick={() => {
|
57
|
+
props.setScreen("wallet-connect-receiver");
|
58
|
+
}}
|
59
|
+
style={{
|
60
|
+
fontSize: fontSize.sm,
|
61
|
+
}}
|
62
|
+
>
|
63
|
+
<WalletConnectIcon size={iconSize.md} />
|
64
|
+
<Text color="primaryText">Connect an App</Text>
|
65
|
+
</MenuButton>
|
66
|
+
|
67
|
+
{/* Private Key Export (if enabled) */}
|
68
|
+
{activeWallet &&
|
69
|
+
isInAppWallet(activeWallet) &&
|
70
|
+
!activeWallet.getConfig()?.hidePrivateKeyExport && (
|
71
|
+
<MenuButton
|
72
|
+
onClick={() => {
|
73
|
+
props.setScreen("private-key");
|
74
|
+
}}
|
75
|
+
style={{
|
76
|
+
fontSize: fontSize.sm,
|
77
|
+
}}
|
78
|
+
>
|
79
|
+
<KeyIcon size={iconSize.md} />
|
80
|
+
<Text color="primaryText">Export Private Key</Text>
|
81
|
+
</MenuButton>
|
82
|
+
)}
|
83
|
+
</Container>
|
84
|
+
<Spacer y="lg" />
|
85
|
+
</Container>
|
86
|
+
</Container>
|
87
|
+
);
|
88
|
+
}
|
89
|
+
|
90
|
+
function SwitchMetamaskAccount(props: {
|
91
|
+
closeModal: () => void;
|
92
|
+
connectLocale: ConnectLocale;
|
93
|
+
}) {
|
94
|
+
const wallet = useActiveWallet();
|
95
|
+
const connectLocale = props.connectLocale;
|
96
|
+
|
97
|
+
if (wallet?.id !== "io.metamask") {
|
98
|
+
return null;
|
99
|
+
}
|
100
|
+
|
101
|
+
const injectedMetamaskProvider = injectedProvider("io.metamask");
|
102
|
+
|
103
|
+
if (!injectedMetamaskProvider) {
|
104
|
+
return null;
|
105
|
+
}
|
106
|
+
|
107
|
+
return (
|
108
|
+
<MenuButton
|
109
|
+
type="button"
|
110
|
+
onClick={async () => {
|
111
|
+
await injectedMetamaskProvider.request({
|
112
|
+
method: "wallet_requestPermissions",
|
113
|
+
params: [{ eth_accounts: {} }],
|
114
|
+
});
|
115
|
+
props.closeModal();
|
116
|
+
}}
|
117
|
+
>
|
118
|
+
<ShuffleIcon width={iconSize.md} height={iconSize.md} />
|
119
|
+
<Text color="primaryText">{connectLocale.switchAccount}</Text>
|
120
|
+
</MenuButton>
|
121
|
+
);
|
122
|
+
}
|
@@ -10,6 +10,7 @@ import {
|
|
10
10
|
spacing,
|
11
11
|
} from "../../../../core/design-system/index.js";
|
12
12
|
import { useSiweAuth } from "../../../../core/hooks/auth/useSiweAuth.js";
|
13
|
+
import { useConnectUI } from "../../../../core/hooks/others/useWalletConnectionCtx.js";
|
13
14
|
import { wait } from "../../../../core/utils/wait.js";
|
14
15
|
import { useActiveWallet } from "../../../hooks/wallets/useActiveWallet.js";
|
15
16
|
import { useDisconnect } from "../../../hooks/wallets/useDisconnect.js";
|
@@ -37,6 +38,7 @@ export const SignatureScreen: React.FC<{
|
|
37
38
|
client: ThirdwebClient;
|
38
39
|
auth: ConnectButtonProps["auth"];
|
39
40
|
}> = (props) => {
|
41
|
+
const { client } = useConnectUI();
|
40
42
|
const {
|
41
43
|
onDone,
|
42
44
|
modalSize,
|
@@ -146,7 +148,11 @@ export const SignatureScreen: React.FC<{
|
|
146
148
|
) : (
|
147
149
|
<>
|
148
150
|
<Container py="3xl">
|
149
|
-
<WalletLogoSpinner
|
151
|
+
<WalletLogoSpinner
|
152
|
+
client={client}
|
153
|
+
error={status === "failed"}
|
154
|
+
id={wallet.id}
|
155
|
+
/>
|
150
156
|
</Container>
|
151
157
|
|
152
158
|
<Container flex="column" gap="md" animate="fadein" key={status}>
|
@@ -0,0 +1,165 @@
|
|
1
|
+
"use client";
|
2
|
+
import { ReloadIcon } from "@radix-ui/react-icons";
|
3
|
+
import { useEffect, useState } from "react";
|
4
|
+
import type { Chain } from "../../../../../chains/types.js";
|
5
|
+
import type { ThirdwebClient } from "../../../../../client/client.js";
|
6
|
+
import {
|
7
|
+
createWalletConnectClient,
|
8
|
+
createWalletConnectSession,
|
9
|
+
} from "../../../../../wallets/wallet-connect/receiver/index.js";
|
10
|
+
import type { WalletConnectClient } from "../../../../../wallets/wallet-connect/receiver/types.js";
|
11
|
+
import { iconSize, spacing } from "../../../../core/design-system/index.js";
|
12
|
+
import { useActiveWallet } from "../../../hooks/wallets/useActiveWallet.js";
|
13
|
+
import { InputSelectionUI } from "../../../wallets/in-app/InputSelectionUI.js";
|
14
|
+
import { Spacer } from "../../components/Spacer.js";
|
15
|
+
import { Container, Line, ModalHeader } from "../../components/basic.js";
|
16
|
+
import { Button } from "../../components/buttons.js";
|
17
|
+
import { Text } from "../../components/text.js";
|
18
|
+
import { WalletLogoSpinner } from "./WalletLogoSpinner.js";
|
19
|
+
|
20
|
+
/**
|
21
|
+
* @internal
|
22
|
+
*/
|
23
|
+
export function WalletConnectReceiverScreen(props: {
|
24
|
+
onBack: () => void;
|
25
|
+
closeModal: () => void;
|
26
|
+
client: ThirdwebClient;
|
27
|
+
chains?: Chain[];
|
28
|
+
}) {
|
29
|
+
const [walletConnectClient, setWalletConnectClient] = useState<
|
30
|
+
WalletConnectClient | undefined
|
31
|
+
>();
|
32
|
+
const activeWallet = useActiveWallet();
|
33
|
+
const [loading, setLoading] = useState(false);
|
34
|
+
const [errorConnecting, setErrorConnecting] = useState<false | string>(false);
|
35
|
+
|
36
|
+
useEffect(() => {
|
37
|
+
if (!activeWallet || !!errorConnecting) return;
|
38
|
+
createWalletConnectClient({
|
39
|
+
wallet: activeWallet,
|
40
|
+
client: props.client,
|
41
|
+
chains: props.chains,
|
42
|
+
onConnect: () => {
|
43
|
+
props.closeModal();
|
44
|
+
setLoading(false);
|
45
|
+
},
|
46
|
+
})
|
47
|
+
.then((wcClient) => {
|
48
|
+
setWalletConnectClient(wcClient);
|
49
|
+
})
|
50
|
+
.catch(() => {
|
51
|
+
setErrorConnecting("Failed to establish WalletConnect connection");
|
52
|
+
});
|
53
|
+
}, [
|
54
|
+
activeWallet,
|
55
|
+
props.client,
|
56
|
+
props.closeModal,
|
57
|
+
errorConnecting,
|
58
|
+
props.chains,
|
59
|
+
]);
|
60
|
+
|
61
|
+
return (
|
62
|
+
<Container
|
63
|
+
style={{
|
64
|
+
minHeight: "300px",
|
65
|
+
}}
|
66
|
+
>
|
67
|
+
<Container p="lg">
|
68
|
+
<ModalHeader title="Connect an App" onBack={props.onBack} />
|
69
|
+
</Container>
|
70
|
+
<Line />
|
71
|
+
<Container
|
72
|
+
px="lg"
|
73
|
+
scrollY
|
74
|
+
style={{
|
75
|
+
maxHeight: "500px",
|
76
|
+
}}
|
77
|
+
>
|
78
|
+
<Container py="sm" style={{ position: "relative" }}>
|
79
|
+
<Container py="md">
|
80
|
+
<WalletLogoSpinner
|
81
|
+
client={props.client}
|
82
|
+
error={false}
|
83
|
+
id={"walletConnect"}
|
84
|
+
hideSpinner={!loading}
|
85
|
+
/>
|
86
|
+
</Container>
|
87
|
+
<Container
|
88
|
+
animate="fadein"
|
89
|
+
style={{
|
90
|
+
animationDuration: "200ms",
|
91
|
+
}}
|
92
|
+
>
|
93
|
+
{!errorConnecting ? (
|
94
|
+
<>
|
95
|
+
<Text balance center multiline size="sm">
|
96
|
+
Copy your connection URI from the external app.
|
97
|
+
</Text>
|
98
|
+
<Spacer y="xl" />
|
99
|
+
<InputSelectionUI
|
100
|
+
type="text"
|
101
|
+
disabled={
|
102
|
+
loading || !!errorConnecting || !walletConnectClient
|
103
|
+
}
|
104
|
+
onSelect={async (value) => {
|
105
|
+
setLoading(true);
|
106
|
+
if (!walletConnectClient) {
|
107
|
+
setErrorConnecting("No WalletConnect client found");
|
108
|
+
} else {
|
109
|
+
try {
|
110
|
+
createWalletConnectSession({
|
111
|
+
uri: value,
|
112
|
+
walletConnectClient,
|
113
|
+
});
|
114
|
+
} catch (e) {
|
115
|
+
setErrorConnecting(
|
116
|
+
"Error creating WalletConnect session",
|
117
|
+
);
|
118
|
+
}
|
119
|
+
}
|
120
|
+
}}
|
121
|
+
placeholder="WalletConnect URI"
|
122
|
+
name="wcUri"
|
123
|
+
emptyErrorMessage="Please enter a valid URI"
|
124
|
+
submitButtonText="Connect"
|
125
|
+
/>
|
126
|
+
</>
|
127
|
+
) : (
|
128
|
+
<>
|
129
|
+
<Text center balance multiline size="sm">
|
130
|
+
{errorConnecting}
|
131
|
+
</Text>
|
132
|
+
<Spacer y="md" />
|
133
|
+
<Container flex="row" center="x" animate="fadein">
|
134
|
+
<Button
|
135
|
+
fullWidth
|
136
|
+
variant="accent"
|
137
|
+
onClick={() => setErrorConnecting(false)}
|
138
|
+
style={{
|
139
|
+
gap: spacing.xs,
|
140
|
+
alignItems: "center",
|
141
|
+
}}
|
142
|
+
>
|
143
|
+
<ReloadIcon width={iconSize.sm} height={iconSize.sm} />{" "}
|
144
|
+
Retry
|
145
|
+
</Button>
|
146
|
+
</Container>
|
147
|
+
</>
|
148
|
+
)}
|
149
|
+
</Container>
|
150
|
+
</Container>
|
151
|
+
</Container>
|
152
|
+
<Container>
|
153
|
+
<Spacer y="lg" />
|
154
|
+
<Line />
|
155
|
+
<Container flex="row" center="x" p="lg">
|
156
|
+
<a href="https://google.com">
|
157
|
+
<Button variant="link" onClick={() => {}}>
|
158
|
+
Where do I find the URI?
|
159
|
+
</Button>
|
160
|
+
</a>
|
161
|
+
</Container>
|
162
|
+
</Container>
|
163
|
+
</Container>
|
164
|
+
);
|
165
|
+
}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import { keyframes } from "@emotion/react";
|
2
|
+
import type { ThirdwebClient } from "../../../../../client/client.js";
|
2
3
|
import type { WalletId } from "../../../../../wallets/wallet-types.js";
|
3
4
|
import { useCustomTheme } from "../../../../core/design-system/CustomThemeProvider.js";
|
4
5
|
import { radius, spacing } from "../../../../core/design-system/index.js";
|
5
|
-
import { useConnectUI } from "../../../../core/hooks/others/useWalletConnectionCtx.js";
|
6
6
|
import { WalletImage } from "../../components/WalletImage.js";
|
7
7
|
import { fadeInAnimation } from "../../design-system/animations.js";
|
8
8
|
import { StyledDiv } from "../../design-system/elements.js";
|
@@ -11,8 +11,12 @@ import { StyledDiv } from "../../design-system/elements.js";
|
|
11
11
|
*
|
12
12
|
* @internal
|
13
13
|
*/
|
14
|
-
export function WalletLogoSpinner(props: {
|
15
|
-
|
14
|
+
export function WalletLogoSpinner(props: {
|
15
|
+
client: ThirdwebClient;
|
16
|
+
error: boolean;
|
17
|
+
id: WalletId;
|
18
|
+
hideSpinner?: boolean;
|
19
|
+
}) {
|
16
20
|
const loaderRadius = 20;
|
17
21
|
const radiusFactor = 36 - loaderRadius;
|
18
22
|
const dashArrayStart = 116 + radiusFactor;
|
@@ -31,29 +35,31 @@ export function WalletLogoSpinner(props: { error: boolean; id: WalletId }) {
|
|
31
35
|
}}
|
32
36
|
>
|
33
37
|
<div data-img-container>
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
38
|
+
{!props.hideSpinner && (
|
39
|
+
<svg
|
40
|
+
viewBox="0 0 110 110"
|
41
|
+
style={{
|
42
|
+
display: props.error ? "none" : "block",
|
43
|
+
}}
|
44
|
+
role="presentation"
|
45
|
+
>
|
46
|
+
<rect
|
47
|
+
x="2"
|
48
|
+
y="2"
|
49
|
+
width="106"
|
50
|
+
height="106"
|
51
|
+
rx={loaderRadius}
|
52
|
+
strokeDasharray={`${dashArrayStart} ${dashArrayEnd}`}
|
53
|
+
strokeDashoffset={dashOffset}
|
54
|
+
strokeLinecap="round"
|
55
|
+
fill="none"
|
56
|
+
strokeWidth={4}
|
57
|
+
/>
|
58
|
+
</svg>
|
59
|
+
)}
|
54
60
|
|
55
61
|
<WalletBg>
|
56
|
-
<WalletImage id={props.id} size={"68"} client={client} />
|
62
|
+
<WalletImage id={props.id} size={"68"} client={props.client} />
|
57
63
|
</WalletBg>
|
58
64
|
</div>
|
59
65
|
</div>
|
@@ -58,3 +58,16 @@ export type WelcomeScreen =
|
|
58
58
|
};
|
59
59
|
}
|
60
60
|
| (() => React.ReactNode);
|
61
|
+
|
62
|
+
export type WalletDetailsModalScreen =
|
63
|
+
| "main"
|
64
|
+
| "export"
|
65
|
+
| "send"
|
66
|
+
| "receive"
|
67
|
+
| "buy"
|
68
|
+
| "network-switcher"
|
69
|
+
| "pending-tx"
|
70
|
+
| "view-funds"
|
71
|
+
| "private-key"
|
72
|
+
| "manage-wallet"
|
73
|
+
| "wallet-connect-receiver";
|
@@ -55,7 +55,7 @@ export function useConnectModal() {
|
|
55
55
|
setRootEl(undefined);
|
56
56
|
}
|
57
57
|
|
58
|
-
return new Promise((resolve, reject) => {
|
58
|
+
return new Promise<Wallet>((resolve, reject) => {
|
59
59
|
setIsConnecting(true);
|
60
60
|
getConnectLocale(props.locale || "en_US")
|
61
61
|
.then((locale) => {
|
@@ -15,6 +15,7 @@ export const CopyIcon: React.FC<{
|
|
15
15
|
hasCopied?: boolean;
|
16
16
|
}> = (props) => {
|
17
17
|
const { hasCopied, onCopy } = useClipboard(props.text);
|
18
|
+
const showCheckIcon = props.hasCopied || hasCopied;
|
18
19
|
|
19
20
|
return (
|
20
21
|
<div
|
@@ -31,13 +32,11 @@ export const CopyIcon: React.FC<{
|
|
31
32
|
}}
|
32
33
|
>
|
33
34
|
<ToolTip tip={props.tip} side={props.side} align={props.align}>
|
34
|
-
|
35
|
-
<Container color="success">
|
36
|
-
<CheckIcon />
|
35
|
+
<div>
|
36
|
+
<Container color={showCheckIcon ? "success" : undefined}>
|
37
|
+
{showCheckIcon ? <CheckIcon /> : <CopyIconSVG />}
|
37
38
|
</Container>
|
38
|
-
|
39
|
-
<CopyIconSVG />
|
40
|
-
)}
|
39
|
+
</div>
|
41
40
|
</ToolTip>
|
42
41
|
</div>
|
43
42
|
);
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { wideModalScreenThreshold } from "../ui/ConnectWallet/constants.js";
|
2
2
|
|
3
3
|
/**
|
4
|
-
* Return true if the current screen size can fit the
|
4
|
+
* Return true if the current screen size can fit the wide connect modal
|
5
5
|
* @internal
|
6
6
|
*/
|
7
7
|
export function canFitWideModal(): boolean {
|
@@ -21,6 +21,7 @@ export function InputSelectionUI(props: {
|
|
21
21
|
emptyErrorMessage?: string;
|
22
22
|
submitButtonText: string;
|
23
23
|
format?: "phone";
|
24
|
+
disabled?: boolean;
|
24
25
|
}) {
|
25
26
|
const [countryCodeInfo, setCountryCodeInfo] = useState("US +1");
|
26
27
|
const [input, setInput] = useState("");
|
@@ -77,6 +78,7 @@ export function InputSelectionUI(props: {
|
|
77
78
|
type={props.type}
|
78
79
|
name={props.name}
|
79
80
|
value={input}
|
81
|
+
disabled={props.disabled}
|
80
82
|
onChange={(e) => {
|
81
83
|
setInput(e.target.value);
|
82
84
|
if (props.errorMessage) {
|
@@ -93,6 +95,7 @@ export function InputSelectionUI(props: {
|
|
93
95
|
/>
|
94
96
|
<IconButton
|
95
97
|
onClick={handleSelect}
|
98
|
+
disabled={props.disabled}
|
96
99
|
style={{
|
97
100
|
padding: spacing.md,
|
98
101
|
borderRadius: `0 ${radius.lg} ${radius.lg} 0`,
|
@@ -27,7 +27,7 @@ export const ConnectingScreen: React.FC<{
|
|
27
27
|
};
|
28
28
|
}> = (props) => {
|
29
29
|
const { locale } = props;
|
30
|
-
const { connectModal } = useConnectUI();
|
30
|
+
const { client, connectModal } = useConnectUI();
|
31
31
|
return (
|
32
32
|
<Container animate="fadein" fullHeight flex="column">
|
33
33
|
<Container
|
@@ -51,6 +51,7 @@ export const ConnectingScreen: React.FC<{
|
|
51
51
|
>
|
52
52
|
<Container py="3xl">
|
53
53
|
<WalletLogoSpinner
|
54
|
+
client={client}
|
54
55
|
error={props.errorConnecting}
|
55
56
|
id={props.walletId}
|
56
57
|
/>
|
package/src/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = "5.
|
1
|
+
export const version = "5.30.0-nightly-33777df88fb190c2af8ad25e4930040884996f1e-20240620000630";
|