thirdweb 5.32.2-nightly-a6ed6e66dae7f2fa239c76a57e93b545e5d8da8d-20240704000330 → 5.32.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/gas/fee-data.js +13 -6
- package/dist/cjs/gas/fee-data.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getQuote.js +1 -0
- package/dist/cjs/pay/buyWithCrypto/getQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getPostOnRampQuote.js +5 -0
- package/dist/cjs/pay/buyWithFiat/getPostOnRampQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/cjs/react/core/hooks/auth/useSiweAuth.js +4 -1
- package/dist/cjs/react/core/hooks/auth/useSiweAuth.js.map +1 -1
- package/dist/cjs/react/native/ui/components/Header.js +1 -1
- package/dist/cjs/react/native/ui/components/Header.js.map +1 -1
- package/dist/cjs/react/native/ui/components/button.js +1 -1
- package/dist/cjs/react/native/ui/components/button.js.map +1 -1
- package/dist/cjs/react/native/ui/connect/ConnectButton.js +1 -1
- package/dist/cjs/react/native/ui/connect/ConnectButton.js.map +1 -1
- package/dist/cjs/react/native/ui/connect/ConnectModal.js +7 -8
- package/dist/cjs/react/native/ui/connect/ConnectModal.js.map +1 -1
- package/dist/cjs/react/native/ui/connect/InAppWalletUI.js +1 -1
- package/dist/cjs/react/native/ui/connect/InAppWalletUI.js.map +1 -1
- package/dist/cjs/react/native/ui/icons/svgs.js +5 -5
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js +2 -2
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +12 -2
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +19 -5
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +5 -4
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +5 -4
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModal.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModal.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js +11 -8
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js +12 -12
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/WalletEntryButton.js +3 -5
- package/dist/cjs/react/web/ui/ConnectWallet/WalletEntryButton.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js +24 -14
- package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +144 -87
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js +49 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +32 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +6 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +2 -4
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +18 -17
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +2 -6
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +26 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js +12 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js +8 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/types.js +3 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/types.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js +55 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js +78 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js +3 -4
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js +31 -0
- package/dist/cjs/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/MediaRenderer/MediaRenderer.js +19 -26
- package/dist/cjs/react/web/ui/MediaRenderer/MediaRenderer.js.map +1 -1
- package/dist/cjs/react/web/ui/MediaRenderer/ModelViewer.js +2 -2
- package/dist/cjs/react/web/ui/MediaRenderer/ModelViewer.js.map +1 -1
- package/dist/cjs/react/web/ui/PayEmbed.js +3 -17
- package/dist/cjs/react/web/ui/PayEmbed.js.map +1 -1
- package/dist/cjs/react/web/ui/components/CopyIcon.js +1 -1
- package/dist/cjs/react/web/ui/components/CopyIcon.js.map +1 -1
- package/dist/cjs/react/web/ui/components/Drawer.js +51 -17
- package/dist/cjs/react/web/ui/components/Drawer.js.map +1 -1
- package/dist/cjs/react/web/ui/components/SwitchNetwork.js +1 -3
- package/dist/cjs/react/web/ui/components/SwitchNetwork.js.map +1 -1
- package/dist/cjs/react/web/ui/components/WalletImage.js +1 -0
- package/dist/cjs/react/web/ui/components/WalletImage.js.map +1 -1
- package/dist/cjs/react/web/ui/components/buttons.js +5 -1
- package/dist/cjs/react/web/ui/components/buttons.js.map +1 -1
- package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +2 -1
- package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js +2 -1
- package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/wallets/in-app/InAppWalletSelectionUI.js +2 -2
- package/dist/cjs/react/web/wallets/in-app/InAppWalletSelectionUI.js.map +1 -1
- package/dist/cjs/utils/formatNumber.js +4 -1
- package/dist/cjs/utils/formatNumber.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/gas/fee-data.js +13 -6
- package/dist/esm/gas/fee-data.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getQuote.js +1 -0
- package/dist/esm/pay/buyWithCrypto/getQuote.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getPostOnRampQuote.js +5 -0
- package/dist/esm/pay/buyWithFiat/getPostOnRampQuote.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/esm/react/core/hooks/auth/useSiweAuth.js +4 -1
- package/dist/esm/react/core/hooks/auth/useSiweAuth.js.map +1 -1
- package/dist/esm/react/native/ui/components/Header.js +1 -1
- package/dist/esm/react/native/ui/components/Header.js.map +1 -1
- package/dist/esm/react/native/ui/components/button.js +1 -1
- package/dist/esm/react/native/ui/components/button.js.map +1 -1
- package/dist/esm/react/native/ui/connect/ConnectButton.js +1 -1
- package/dist/esm/react/native/ui/connect/ConnectButton.js.map +1 -1
- package/dist/esm/react/native/ui/connect/ConnectModal.js +8 -9
- package/dist/esm/react/native/ui/connect/ConnectModal.js.map +1 -1
- package/dist/esm/react/native/ui/connect/InAppWalletUI.js +1 -1
- package/dist/esm/react/native/ui/connect/InAppWalletUI.js.map +1 -1
- package/dist/esm/react/native/ui/icons/svgs.js +5 -5
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js +2 -2
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +12 -2
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +20 -6
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/AllWalletsUI.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +5 -4
- package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +2 -2
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModal.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModal.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js +11 -8
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalInline.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js +12 -12
- package/dist/esm/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/WalletEntryButton.js +2 -4
- package/dist/esm/react/web/ui/ConnectWallet/WalletEntryButton.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js +25 -15
- package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/locale/en.js +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/locale/es.js +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/locale/es.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/locale/ja.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/locale/tl.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +145 -88
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js +46 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js +29 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +6 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +2 -4
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +18 -17
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js +3 -7
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js +23 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js +12 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js +8 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/types.js +2 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/types.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js +52 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js +75 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js +4 -5
- package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js +28 -0
- package/dist/esm/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.js.map +1 -0
- package/dist/esm/react/web/ui/MediaRenderer/MediaRenderer.js +19 -26
- package/dist/esm/react/web/ui/MediaRenderer/MediaRenderer.js.map +1 -1
- package/dist/esm/react/web/ui/MediaRenderer/ModelViewer.js +2 -2
- package/dist/esm/react/web/ui/MediaRenderer/ModelViewer.js.map +1 -1
- package/dist/esm/react/web/ui/PayEmbed.js +3 -17
- package/dist/esm/react/web/ui/PayEmbed.js.map +1 -1
- package/dist/esm/react/web/ui/components/CopyIcon.js +1 -1
- package/dist/esm/react/web/ui/components/CopyIcon.js.map +1 -1
- package/dist/esm/react/web/ui/components/Drawer.js +54 -20
- package/dist/esm/react/web/ui/components/Drawer.js.map +1 -1
- package/dist/esm/react/web/ui/components/SwitchNetwork.js +1 -3
- package/dist/esm/react/web/ui/components/SwitchNetwork.js.map +1 -1
- package/dist/esm/react/web/ui/components/WalletImage.js +1 -0
- package/dist/esm/react/web/ui/components/WalletImage.js.map +1 -1
- package/dist/esm/react/web/ui/components/buttons.js +5 -1
- package/dist/esm/react/web/ui/components/buttons.js.map +1 -1
- package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js +2 -1
- package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js +2 -1
- package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/wallets/in-app/InAppWalletSelectionUI.js +2 -2
- package/dist/esm/react/web/wallets/in-app/InAppWalletSelectionUI.js.map +1 -1
- package/dist/esm/utils/formatNumber.js +4 -1
- package/dist/esm/utils/formatNumber.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/types/gas/fee-data.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getQuote.d.ts +5 -1
- package/dist/types/pay/buyWithCrypto/getQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getPostOnRampQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getQuote.d.ts +4 -0
- package/dist/types/pay/buyWithFiat/getQuote.d.ts.map +1 -1
- package/dist/types/react/core/hooks/auth/useSiweAuth.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/Header.d.ts +1 -1
- package/dist/types/react/native/ui/components/Header.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/button.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/ConnectModal.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 +3 -3
- package/dist/types/react/native/ui/icons/svgs.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts +21 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/AllWalletsUI.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.d.ts +0 -2
- package/dist/types/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModal.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts +7 -3
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.d.ts +0 -2
- package/dist/types/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/WalletEntryButton.d.ts +3 -1
- package/dist/types/react/web/ui/ConnectWallet/WalletEntryButton.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/WalletSelector.d.ts +7 -5
- package/dist/types/react/web/ui/ConnectWallet/WalletSelector.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/locale/en.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/locale/es.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/locale/ja.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/locale/tl.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/locale/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts +5 -4
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.d.ts +8 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts +13 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.d.ts +2 -0
- 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/fiat/FiatTxDetailsTable.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +12 -3
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.d.ts +2 -2
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts +12 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/types.d.ts +9 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/types.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.d.ts +6 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.d.ts +9 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/SignatureScreen.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/SignatureScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.d.ts +25 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/MediaRenderer/MediaRenderer.d.ts.map +1 -1
- package/dist/types/react/web/ui/MediaRenderer/ModelViewer.d.ts +1 -1
- package/dist/types/react/web/ui/MediaRenderer/ModelViewer.d.ts.map +1 -1
- package/dist/types/react/web/ui/MediaRenderer/types.d.ts +0 -2
- package/dist/types/react/web/ui/MediaRenderer/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/PayEmbed.d.ts +1 -1
- package/dist/types/react/web/ui/PayEmbed.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/CopyIcon.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/Drawer.d.ts +2 -1
- package/dist/types/react/web/ui/components/Drawer.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/SwitchNetwork.d.ts +1 -2
- package/dist/types/react/web/ui/components/SwitchNetwork.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/WalletImage.d.ts +1 -0
- package/dist/types/react/web/ui/components/WalletImage.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/buttons.d.ts.map +1 -1
- package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts +0 -2
- package/dist/types/react/web/wallets/ecosystem/EcosystemWalletConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts +0 -2
- package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/wallets/in-app/InAppWalletSelectionUI.d.ts +0 -2
- package/dist/types/react/web/wallets/in-app/InAppWalletSelectionUI.d.ts.map +1 -1
- package/dist/types/utils/formatNumber.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/gas/fee-data.ts +14 -6
- package/src/pay/buyWithCrypto/getQuote.ts +7 -3
- package/src/pay/buyWithFiat/getPostOnRampQuote.ts +5 -0
- package/src/pay/buyWithFiat/getQuote.ts +4 -0
- package/src/react/core/hooks/auth/useSiweAuth.ts +4 -1
- package/src/react/native/ui/components/Header.tsx +2 -2
- package/src/react/native/ui/components/button.tsx +6 -1
- package/src/react/native/ui/connect/ConnectButton.tsx +1 -1
- package/src/react/native/ui/connect/ConnectModal.tsx +9 -4
- package/src/react/native/ui/connect/InAppWalletUI.tsx +24 -20
- package/src/react/native/ui/icons/svgs.ts +5 -5
- package/src/react/web/hooks/transaction/useSendTransaction.tsx +30 -17
- package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +12 -1
- package/src/react/web/ui/ConnectWallet/Details.tsx +73 -2
- package/src/react/web/ui/ConnectWallet/Modal/AllWalletsUI.tsx +2 -0
- package/src/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.tsx +3 -6
- package/src/react/web/ui/ConnectWallet/Modal/ConnectEmbed.tsx +3 -2
- package/src/react/web/ui/ConnectWallet/Modal/ConnectModal.tsx +2 -1
- package/src/react/web/ui/ConnectWallet/Modal/ConnectModalContent.tsx +17 -11
- package/src/react/web/ui/ConnectWallet/Modal/ConnectModalInline.tsx +2 -1
- package/src/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.tsx +14 -15
- package/src/react/web/ui/ConnectWallet/WalletEntryButton.tsx +12 -13
- package/src/react/web/ui/ConnectWallet/WalletSelector.tsx +35 -20
- package/src/react/web/ui/ConnectWallet/locale/en.ts +1 -0
- package/src/react/web/ui/ConnectWallet/locale/es.ts +1 -0
- package/src/react/web/ui/ConnectWallet/locale/ja.ts +1 -0
- package/src/react/web/ui/ConnectWallet/locale/tl.ts +1 -0
- package/src/react/web/ui/ConnectWallet/locale/types.ts +3 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +435 -266
- package/src/react/web/ui/ConnectWallet/screens/Buy/ReceiverWalletSelectionScreen.tsx +118 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/WalletSelectorButton.tsx +86 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatFlow.tsx +3 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.tsx +2 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.tsx +23 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.tsx +4 -5
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.tsx +3 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +15 -4
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +43 -32
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx +4 -7
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.tsx +3 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletSwitcherDrawerContent.tsx +66 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/BuyTxHistory.tsx +16 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/FiatDetailsScreen.tsx +3 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/SwapDetailsScreen.tsx +27 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/tx-history/TxDetailsScreen.tsx +3 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/types.ts +9 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/usePayerSetup.tsx +63 -0
- package/src/react/web/ui/ConnectWallet/screens/Details/WalletManagerScreen.tsx +203 -0
- package/src/react/web/ui/ConnectWallet/screens/SendFunds.tsx +1 -13
- package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.tsx +2 -2
- package/src/react/web/ui/ConnectWallet/screens/WalletSwitcherConnectionScreen.tsx +83 -0
- package/src/react/web/ui/ConnectWallet/screens/types.ts +2 -1
- package/src/react/web/ui/MediaRenderer/MediaRenderer.tsx +151 -111
- package/src/react/web/ui/MediaRenderer/ModelViewer.tsx +5 -5
- package/src/react/web/ui/MediaRenderer/types.ts +0 -3
- package/src/react/web/ui/PayEmbed.tsx +7 -29
- package/src/react/web/ui/components/CopyIcon.tsx +5 -1
- package/src/react/web/ui/components/Drawer.tsx +91 -40
- package/src/react/web/ui/components/SwitchNetwork.tsx +2 -5
- package/src/react/web/ui/components/WalletImage.tsx +2 -0
- package/src/react/web/ui/components/buttons.tsx +5 -1
- package/src/react/web/wallets/ecosystem/EcosystemWalletConnectUI.tsx +2 -3
- package/src/react/web/wallets/in-app/InAppWalletConnectUI.tsx +2 -3
- package/src/react/web/wallets/in-app/InAppWalletSelectionUI.tsx +3 -3
- package/src/utils/format-number.test.ts +23 -8
- package/src/utils/formatNumber.ts +4 -1
- package/src/version.ts +1 -1
@@ -0,0 +1,66 @@
|
|
1
|
+
import { PlusIcon } from "@radix-ui/react-icons";
|
2
|
+
import type { ThirdwebClient } from "../../../../../../../client/client.js";
|
3
|
+
import type { Wallet } from "../../../../../../../wallets/interfaces/wallet.js";
|
4
|
+
import { iconSize } from "../../../../../../core/design-system/index.js";
|
5
|
+
import { useConnectedWallets } from "../../../../../hooks/wallets/useConnectedWallets.js";
|
6
|
+
import { Spacer } from "../../../../components/Spacer.js";
|
7
|
+
import { Container } from "../../../../components/basic.js";
|
8
|
+
import { Button } from "../../../../components/buttons.js";
|
9
|
+
import { Text } from "../../../../components/text.js";
|
10
|
+
import { WalletSelectorButton } from "../WalletSelectorButton.js";
|
11
|
+
|
12
|
+
export function WalletSwitcherDrawerContent(props: {
|
13
|
+
client: ThirdwebClient;
|
14
|
+
showAllWallets: boolean;
|
15
|
+
wallets: Wallet[] | undefined;
|
16
|
+
onSelect: (wallet: Wallet) => void;
|
17
|
+
onBack: () => void;
|
18
|
+
onConnect: () => void;
|
19
|
+
selectedAddress: string;
|
20
|
+
}) {
|
21
|
+
const connectedWallets = useConnectedWallets();
|
22
|
+
|
23
|
+
// if all wallets are connected and showAll wallets is disabled, hide the connect button
|
24
|
+
const hideConnectButton =
|
25
|
+
!props.showAllWallets &&
|
26
|
+
props.wallets?.every((w) => connectedWallets.includes(w));
|
27
|
+
|
28
|
+
return (
|
29
|
+
<Container>
|
30
|
+
<Text size="lg" color="primaryText">
|
31
|
+
Pay with
|
32
|
+
</Text>
|
33
|
+
|
34
|
+
<Spacer y="lg" />
|
35
|
+
|
36
|
+
<Container flex="column" gap="xs">
|
37
|
+
{connectedWallets.map((w) => {
|
38
|
+
const address = w.getAccount()?.address;
|
39
|
+
return (
|
40
|
+
<WalletSelectorButton
|
41
|
+
key={w.id}
|
42
|
+
walletId={w.id}
|
43
|
+
client={props.client}
|
44
|
+
address={address || ""}
|
45
|
+
onClick={() => {
|
46
|
+
props.onSelect(w);
|
47
|
+
props.onBack();
|
48
|
+
}}
|
49
|
+
disableChevron
|
50
|
+
checked={address === props.selectedAddress}
|
51
|
+
/>
|
52
|
+
);
|
53
|
+
})}
|
54
|
+
</Container>
|
55
|
+
|
56
|
+
<Spacer y="xxl" />
|
57
|
+
|
58
|
+
{!hideConnectButton && (
|
59
|
+
<Button variant="accent" fullWidth onClick={props.onConnect} gap="xs">
|
60
|
+
<PlusIcon width={iconSize.sm} height={iconSize.sm} />
|
61
|
+
Connect Wallet
|
62
|
+
</Button>
|
63
|
+
)}
|
64
|
+
</Container>
|
65
|
+
);
|
66
|
+
}
|
@@ -13,12 +13,15 @@ import {
|
|
13
13
|
} from "../../../../../../core/design-system/index.js";
|
14
14
|
import { useChainExplorers } from "../../../../../../core/hooks/others/useChainQuery.js";
|
15
15
|
import { useActiveAccount } from "../../../../../hooks/wallets/useActiveAccount.js";
|
16
|
+
import { useActiveWallet } from "../../../../../hooks/wallets/useActiveWallet.js";
|
16
17
|
import { useActiveWalletChain } from "../../../../../hooks/wallets/useActiveWalletChain.js";
|
18
|
+
import { LoadingScreen } from "../../../../../wallets/shared/LoadingScreen.js";
|
17
19
|
import { Skeleton } from "../../../../components/Skeleton.js";
|
18
20
|
import { Spinner } from "../../../../components/Spinner.js";
|
19
21
|
import { Container, Line, ModalHeader } from "../../../../components/basic.js";
|
20
22
|
import { Button, ButtonLink } from "../../../../components/buttons.js";
|
21
23
|
import { Text } from "../../../../components/text.js";
|
24
|
+
import type { PayerInfo } from "../types.js";
|
22
25
|
import {
|
23
26
|
BuyTxHistoryButton,
|
24
27
|
BuyTxHistoryButtonHeight,
|
@@ -40,6 +43,18 @@ export function BuyTxHistory(props: {
|
|
40
43
|
isEmbed: boolean;
|
41
44
|
}) {
|
42
45
|
const [selectedTx, setSelectedTx] = useState<TxStatusInfo | null>(null);
|
46
|
+
const activeChain = useActiveWalletChain();
|
47
|
+
const activeWallet = useActiveWallet();
|
48
|
+
const activeAccount = useActiveAccount();
|
49
|
+
|
50
|
+
const payer: PayerInfo | undefined =
|
51
|
+
activeChain && activeAccount && activeWallet
|
52
|
+
? { chain: activeChain, account: activeAccount, wallet: activeWallet }
|
53
|
+
: undefined;
|
54
|
+
|
55
|
+
if (!payer) {
|
56
|
+
return <LoadingScreen />;
|
57
|
+
}
|
43
58
|
|
44
59
|
if (selectedTx) {
|
45
60
|
return (
|
@@ -50,6 +65,7 @@ export function BuyTxHistory(props: {
|
|
50
65
|
onDone={props.onDone}
|
51
66
|
isBuyForTx={props.isBuyForTx}
|
52
67
|
isEmbed={props.isEmbed}
|
68
|
+
payer={payer}
|
53
69
|
/>
|
54
70
|
);
|
55
71
|
}
|
@@ -8,6 +8,7 @@ import { useBuyWithFiatStatus } from "../../../../../../core/hooks/pay/useBuyWit
|
|
8
8
|
import { Container, Line, ModalHeader } from "../../../../components/basic.js";
|
9
9
|
import { OnRampTxDetailsTable } from "../fiat/FiatTxDetailsTable.js";
|
10
10
|
import { PostOnRampSwapFlow } from "../fiat/PostOnRampSwapFlow.js";
|
11
|
+
import type { PayerInfo } from "../types.js";
|
11
12
|
import { getBuyWithFiatStatusMeta } from "./statusMeta.js";
|
12
13
|
|
13
14
|
export function FiatDetailsScreen(props: {
|
@@ -17,6 +18,7 @@ export function FiatDetailsScreen(props: {
|
|
17
18
|
onDone: () => void;
|
18
19
|
isBuyForTx: boolean;
|
19
20
|
isEmbed: boolean;
|
21
|
+
payer: PayerInfo;
|
20
22
|
}) {
|
21
23
|
const initialStatus = props.status;
|
22
24
|
const [stopPolling, setStopPolling] = useState(false);
|
@@ -69,6 +71,7 @@ export function FiatDetailsScreen(props: {
|
|
69
71
|
onSwapFlowStarted={() => {
|
70
72
|
setStopPolling(true);
|
71
73
|
}}
|
74
|
+
payer={props.payer}
|
72
75
|
/>
|
73
76
|
);
|
74
77
|
}
|
@@ -3,6 +3,7 @@ import { getCachedChain } from "../../../../../../../chains/utils.js";
|
|
3
3
|
import type { ThirdwebClient } from "../../../../../../../client/client.js";
|
4
4
|
import type { BuyWithCryptoQuote } from "../../../../../../../pay/buyWithCrypto/getQuote.js";
|
5
5
|
import type { ValidBuyWithCryptoStatus } from "../../../../../../../pay/buyWithCrypto/getStatus.js";
|
6
|
+
import { shortenAddress } from "../../../../../../../utils/address.js";
|
6
7
|
import {
|
7
8
|
fontSize,
|
8
9
|
iconSize,
|
@@ -79,6 +80,8 @@ type SwapTxDetailsData = {
|
|
79
80
|
destinationTxHash?: string;
|
80
81
|
isPartialSuccess: boolean;
|
81
82
|
estimatedDuration: number;
|
83
|
+
fromAddress: string;
|
84
|
+
toAddress: string;
|
82
85
|
};
|
83
86
|
|
84
87
|
export function SwapTxDetailsTable(
|
@@ -132,6 +135,8 @@ export function SwapTxDetailsTable(
|
|
132
135
|
isPartialSuccess,
|
133
136
|
destinationTxHash: status.destination?.transactionHash,
|
134
137
|
sourceTxHash: status.source?.transactionHash,
|
138
|
+
fromAddress: status.fromAddress,
|
139
|
+
toAddress: status.toAddress,
|
135
140
|
};
|
136
141
|
} else {
|
137
142
|
const quote = props.quote;
|
@@ -150,6 +155,8 @@ export function SwapTxDetailsTable(
|
|
150
155
|
},
|
151
156
|
isPartialSuccess: false,
|
152
157
|
estimatedDuration: quote.swapDetails.estimated.durationSeconds || 0,
|
158
|
+
fromAddress: quote.swapDetails.fromAddress,
|
159
|
+
toAddress: quote.swapDetails.toAddress,
|
153
160
|
};
|
154
161
|
}
|
155
162
|
|
@@ -270,6 +277,26 @@ export function SwapTxDetailsTable(
|
|
270
277
|
</>
|
271
278
|
)}
|
272
279
|
|
280
|
+
{uiData.fromAddress.toLowerCase() !== uiData.toAddress.toLowerCase() && (
|
281
|
+
<>
|
282
|
+
{lineSpacer}
|
283
|
+
<Container
|
284
|
+
flex="row"
|
285
|
+
center="y"
|
286
|
+
style={{
|
287
|
+
justifyContent: "space-between",
|
288
|
+
}}
|
289
|
+
>
|
290
|
+
<Text>Send to</Text>
|
291
|
+
<Container flex="row" gap="xs" center="y">
|
292
|
+
<Text color="primaryText">
|
293
|
+
{shortenAddress(uiData.toAddress)}
|
294
|
+
</Text>
|
295
|
+
</Container>
|
296
|
+
</Container>
|
297
|
+
</>
|
298
|
+
)}
|
299
|
+
|
273
300
|
{lineSpacer}
|
274
301
|
|
275
302
|
{/* source chain Tx hash link */}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import type { ThirdwebClient } from "../../../../../../../client/client.js";
|
2
|
+
import type { PayerInfo } from "../types.js";
|
2
3
|
import { FiatDetailsScreen } from "./FiatDetailsScreen.js";
|
3
4
|
import { SwapDetailsScreen } from "./SwapDetailsScreen.js";
|
4
5
|
import type { TxStatusInfo } from "./useBuyTransactionsToShow.js";
|
@@ -10,6 +11,7 @@ export function TxDetailsScreen(props: {
|
|
10
11
|
onDone: () => void;
|
11
12
|
isBuyForTx: boolean;
|
12
13
|
isEmbed: boolean;
|
14
|
+
payer: PayerInfo;
|
13
15
|
}) {
|
14
16
|
const { statusInfo } = props;
|
15
17
|
|
@@ -32,6 +34,7 @@ export function TxDetailsScreen(props: {
|
|
32
34
|
onDone={props.onDone}
|
33
35
|
isBuyForTx={props.isBuyForTx}
|
34
36
|
isEmbed={props.isEmbed}
|
37
|
+
payer={props.payer}
|
35
38
|
/>
|
36
39
|
);
|
37
40
|
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import type { Chain } from "../../../../../../chains/types.js";
|
2
|
+
import type { Wallet } from "../../../../../../wallets/interfaces/wallet.js";
|
3
|
+
import type { Account } from "../../../../../../wallets/interfaces/wallet.js";
|
4
|
+
|
5
|
+
export type PayerInfo = {
|
6
|
+
wallet: Wallet;
|
7
|
+
chain: Chain;
|
8
|
+
account: Account;
|
9
|
+
};
|
@@ -0,0 +1,63 @@
|
|
1
|
+
import { useEffect, useState } from "react";
|
2
|
+
import { useActiveAccount } from "../../../../hooks/wallets/useActiveAccount.js";
|
3
|
+
import { useActiveWallet } from "../../../../hooks/wallets/useActiveWallet.js";
|
4
|
+
import { useActiveWalletChain } from "../../../../hooks/wallets/useActiveWalletChain.js";
|
5
|
+
import type { PayerInfo } from "./types.js";
|
6
|
+
|
7
|
+
export function usePayerSetup() {
|
8
|
+
const wallet = useActiveWallet();
|
9
|
+
const account = useActiveAccount();
|
10
|
+
const activeChain = useActiveWalletChain();
|
11
|
+
|
12
|
+
const [_payer, setPayer] = useState<PayerInfo | undefined>();
|
13
|
+
|
14
|
+
useEffect(() => {
|
15
|
+
const wallet = _payer?.wallet;
|
16
|
+
|
17
|
+
function update() {
|
18
|
+
if (!wallet) {
|
19
|
+
setPayer(undefined);
|
20
|
+
return;
|
21
|
+
}
|
22
|
+
|
23
|
+
const account = wallet.getAccount();
|
24
|
+
const chain = wallet.getChain();
|
25
|
+
if (account && chain) {
|
26
|
+
console.log("updated to", account, chain);
|
27
|
+
|
28
|
+
setPayer({
|
29
|
+
account,
|
30
|
+
chain,
|
31
|
+
wallet,
|
32
|
+
});
|
33
|
+
} else {
|
34
|
+
setPayer(undefined);
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
if (wallet) {
|
39
|
+
const unsubChainChanged = wallet.subscribe("chainChanged", update);
|
40
|
+
const unsubAccountChanged = wallet.subscribe("accountChanged", update);
|
41
|
+
return () => {
|
42
|
+
unsubChainChanged();
|
43
|
+
unsubAccountChanged();
|
44
|
+
};
|
45
|
+
}
|
46
|
+
|
47
|
+
return undefined;
|
48
|
+
}, [_payer]);
|
49
|
+
|
50
|
+
const initialPayer =
|
51
|
+
account && activeChain && wallet
|
52
|
+
? { account, chain: activeChain, wallet }
|
53
|
+
: undefined;
|
54
|
+
|
55
|
+
// return the payer state if its set
|
56
|
+
// otherwise return the active wallet as payer
|
57
|
+
const payer: PayerInfo | undefined = _payer || initialPayer;
|
58
|
+
|
59
|
+
return {
|
60
|
+
payer,
|
61
|
+
setPayer,
|
62
|
+
};
|
63
|
+
}
|
@@ -0,0 +1,203 @@
|
|
1
|
+
import { CheckIcon, CrossCircledIcon, PlusIcon } from "@radix-ui/react-icons";
|
2
|
+
import { useState } from "react";
|
3
|
+
import type { Chain } from "../../../../../../chains/types.js";
|
4
|
+
import type { ThirdwebClient } from "../../../../../../client/client.js";
|
5
|
+
import { shortenAddress } from "../../../../../../utils/address.js";
|
6
|
+
import type {
|
7
|
+
Account,
|
8
|
+
Wallet,
|
9
|
+
} from "../../../../../../wallets/interfaces/wallet.js";
|
10
|
+
import { useCustomTheme } from "../../../../../core/design-system/CustomThemeProvider.js";
|
11
|
+
import {
|
12
|
+
fontSize,
|
13
|
+
iconSize,
|
14
|
+
spacing,
|
15
|
+
} from "../../../../../core/design-system/index.js";
|
16
|
+
import { useWalletBalance } from "../../../../../core/hooks/others/useWalletBalance.js";
|
17
|
+
import { useActiveWallet } from "../../../../hooks/wallets/useActiveWallet.js";
|
18
|
+
import { useConnectedWallets } from "../../../../hooks/wallets/useConnectedWallets.js";
|
19
|
+
import { useDisconnect } from "../../../../hooks/wallets/useDisconnect.js";
|
20
|
+
import { useSetActiveWallet } from "../../../../hooks/wallets/useSetActiveWallet.js";
|
21
|
+
import { Skeleton } from "../../../components/Skeleton.js";
|
22
|
+
import { Spacer } from "../../../components/Spacer.js";
|
23
|
+
import { ToolTip } from "../../../components/Tooltip.js";
|
24
|
+
import { WalletImage } from "../../../components/WalletImage.js";
|
25
|
+
import { Container, Line, ModalHeader } from "../../../components/basic.js";
|
26
|
+
import { Button, IconButton } from "../../../components/buttons.js";
|
27
|
+
import { Text } from "../../../components/text.js";
|
28
|
+
import { WalletButtonEl } from "../../WalletEntryButton.js";
|
29
|
+
import {
|
30
|
+
WalletSwitcherConnectionScreen,
|
31
|
+
type WalletSwitcherConnectionScreenProps,
|
32
|
+
} from "../WalletSwitcherConnectionScreen.js";
|
33
|
+
import { formatTokenBalance } from "../formatTokenBalance.js";
|
34
|
+
|
35
|
+
export function WalletManagerScreen(
|
36
|
+
props: Omit<
|
37
|
+
WalletSwitcherConnectionScreenProps,
|
38
|
+
"onSelect" | "isEmbed" | "selectedWallet"
|
39
|
+
> & {
|
40
|
+
activeAccount: Account;
|
41
|
+
activeWallet: Wallet;
|
42
|
+
activeChain: Chain;
|
43
|
+
},
|
44
|
+
) {
|
45
|
+
const [screen, setScreen] = useState<"wallets" | "connect">("wallets");
|
46
|
+
const connectedWallets = useConnectedWallets();
|
47
|
+
const setActive = useSetActiveWallet();
|
48
|
+
|
49
|
+
// if all wallets are connected and showAll wallets is disabled, hide the connect button
|
50
|
+
const hideConnectButton =
|
51
|
+
!props.showAllWallets &&
|
52
|
+
props.wallets?.every((w) => connectedWallets.includes(w));
|
53
|
+
|
54
|
+
if (screen === "connect") {
|
55
|
+
return (
|
56
|
+
<WalletSwitcherConnectionScreen
|
57
|
+
{...props}
|
58
|
+
isEmbed={false}
|
59
|
+
onSelect={(w) => {
|
60
|
+
setActive(w);
|
61
|
+
props.onBack();
|
62
|
+
}}
|
63
|
+
/>
|
64
|
+
);
|
65
|
+
}
|
66
|
+
|
67
|
+
return (
|
68
|
+
<Container>
|
69
|
+
<Container p="lg">
|
70
|
+
<ModalHeader title="Wallets" onBack={props.onBack} />
|
71
|
+
</Container>
|
72
|
+
|
73
|
+
<Line />
|
74
|
+
<Spacer y="md" />
|
75
|
+
|
76
|
+
<Container
|
77
|
+
px="md"
|
78
|
+
style={{
|
79
|
+
minHeight: "150px",
|
80
|
+
}}
|
81
|
+
>
|
82
|
+
<Container flex="column" gap="xs">
|
83
|
+
{connectedWallets.map((w) => {
|
84
|
+
return (
|
85
|
+
<WalletManangerButton
|
86
|
+
key={w.id}
|
87
|
+
client={props.client}
|
88
|
+
// address={address || ""}
|
89
|
+
onClick={() => {
|
90
|
+
setActive(w);
|
91
|
+
props.onBack();
|
92
|
+
}}
|
93
|
+
chain={props.activeChain}
|
94
|
+
wallet={w}
|
95
|
+
/>
|
96
|
+
);
|
97
|
+
})}
|
98
|
+
</Container>
|
99
|
+
</Container>
|
100
|
+
|
101
|
+
<Spacer y="xxl" />
|
102
|
+
|
103
|
+
<Container p="lg">
|
104
|
+
{!hideConnectButton && (
|
105
|
+
<Button
|
106
|
+
variant="accent"
|
107
|
+
fullWidth
|
108
|
+
onClick={() => {
|
109
|
+
setScreen("connect");
|
110
|
+
}}
|
111
|
+
gap="xs"
|
112
|
+
>
|
113
|
+
<PlusIcon width={iconSize.sm} height={iconSize.sm} />
|
114
|
+
Connect Wallet
|
115
|
+
</Button>
|
116
|
+
)}
|
117
|
+
</Container>
|
118
|
+
</Container>
|
119
|
+
);
|
120
|
+
}
|
121
|
+
|
122
|
+
function WalletManangerButton(props: {
|
123
|
+
wallet: Wallet;
|
124
|
+
client: ThirdwebClient;
|
125
|
+
chain: Chain;
|
126
|
+
onClick: () => void;
|
127
|
+
}) {
|
128
|
+
const theme = useCustomTheme();
|
129
|
+
const activeWallet = useActiveWallet();
|
130
|
+
const { disconnect } = useDisconnect();
|
131
|
+
const walletId = props.wallet.id;
|
132
|
+
const address = props.wallet.getAccount()?.address;
|
133
|
+
const balanceQuery = useWalletBalance({
|
134
|
+
address: address,
|
135
|
+
chain: props.chain,
|
136
|
+
client: props.client,
|
137
|
+
});
|
138
|
+
|
139
|
+
return (
|
140
|
+
<div
|
141
|
+
style={{
|
142
|
+
position: "relative",
|
143
|
+
}}
|
144
|
+
>
|
145
|
+
<WalletButtonEl
|
146
|
+
onClick={props.onClick}
|
147
|
+
style={{
|
148
|
+
justifyContent: "space-between",
|
149
|
+
}}
|
150
|
+
>
|
151
|
+
<Container flex="row" gap="sm" center="y">
|
152
|
+
<WalletImage client={props.client} id={walletId} size={iconSize.xl} />
|
153
|
+
|
154
|
+
<div>
|
155
|
+
<Text color="primaryText">{shortenAddress(address || "")}</Text>
|
156
|
+
<Spacer y="xxs" />
|
157
|
+
{balanceQuery.data ? (
|
158
|
+
<Text size="sm" color="secondaryText">
|
159
|
+
{formatTokenBalance(balanceQuery.data)}
|
160
|
+
</Text>
|
161
|
+
) : (
|
162
|
+
<Skeleton width="100px" height={fontSize.sm} />
|
163
|
+
)}
|
164
|
+
</div>
|
165
|
+
</Container>
|
166
|
+
</WalletButtonEl>
|
167
|
+
|
168
|
+
<div
|
169
|
+
style={{
|
170
|
+
position: "absolute",
|
171
|
+
zIndex: 1,
|
172
|
+
right: spacing.xxs,
|
173
|
+
top: "50%",
|
174
|
+
transform: "translateY(-50%)",
|
175
|
+
}}
|
176
|
+
>
|
177
|
+
{activeWallet?.id === props.wallet.id ? (
|
178
|
+
<ToolTip tip="Active Wallet">
|
179
|
+
<IconButton>
|
180
|
+
<CheckIcon width={iconSize.md} height={iconSize.md} />
|
181
|
+
</IconButton>
|
182
|
+
</ToolTip>
|
183
|
+
) : (
|
184
|
+
<ToolTip tip="Disconnect">
|
185
|
+
<IconButton
|
186
|
+
onClick={() => {
|
187
|
+
disconnect(props.wallet);
|
188
|
+
}}
|
189
|
+
>
|
190
|
+
<CrossCircledIcon
|
191
|
+
width={iconSize.md}
|
192
|
+
height={iconSize.md}
|
193
|
+
style={{
|
194
|
+
color: theme.colors.danger,
|
195
|
+
}}
|
196
|
+
/>
|
197
|
+
</IconButton>
|
198
|
+
</ToolTip>
|
199
|
+
)}
|
200
|
+
</div>
|
201
|
+
</div>
|
202
|
+
);
|
203
|
+
}
|
@@ -136,8 +136,6 @@ function SendFundsForm(props: {
|
|
136
136
|
});
|
137
137
|
|
138
138
|
const { receiverAddress, setReceiverAddress, amount, setAmount } = props;
|
139
|
-
const showInvalidAddressError = receiverAddress;
|
140
|
-
|
141
139
|
const sendTokenMutation = useSendToken(props.client);
|
142
140
|
|
143
141
|
function getErrorMessage(error?: TXError) {
|
@@ -155,7 +153,7 @@ function SendFundsForm(props: {
|
|
155
153
|
return locale.insufficientFunds;
|
156
154
|
}
|
157
155
|
|
158
|
-
return
|
156
|
+
return message;
|
159
157
|
}
|
160
158
|
|
161
159
|
if (!activeChain) {
|
@@ -281,7 +279,6 @@ function SendFundsForm(props: {
|
|
281
279
|
</Label>
|
282
280
|
<Spacer y="sm" />
|
283
281
|
<Input
|
284
|
-
data-error={showInvalidAddressError}
|
285
282
|
required
|
286
283
|
id="receiver"
|
287
284
|
placeholder={"0x... or ENS name"}
|
@@ -292,15 +289,6 @@ function SendFundsForm(props: {
|
|
292
289
|
}}
|
293
290
|
/>
|
294
291
|
|
295
|
-
{showInvalidAddressError && (
|
296
|
-
<>
|
297
|
-
<Spacer y="xs" />
|
298
|
-
<Text color="danger" size="sm">
|
299
|
-
{locale.invalidAddress}
|
300
|
-
</Text>
|
301
|
-
</>
|
302
|
-
)}
|
303
|
-
|
304
292
|
<Spacer y="lg" />
|
305
293
|
|
306
294
|
{/* Amount */}
|
@@ -29,7 +29,7 @@ import { WalletLogoSpinner } from "./WalletLogoSpinner.js";
|
|
29
29
|
type Status = "signing" | "failed" | "idle";
|
30
30
|
|
31
31
|
export const SignatureScreen: React.FC<{
|
32
|
-
onDone: () => void;
|
32
|
+
onDone: (() => void) | undefined;
|
33
33
|
modalSize: "compact" | "wide";
|
34
34
|
termsOfServiceUrl?: string;
|
35
35
|
privacyPolicyUrl?: string;
|
@@ -56,7 +56,7 @@ export const SignatureScreen: React.FC<{
|
|
56
56
|
try {
|
57
57
|
setStatus("signing");
|
58
58
|
await siweAuth.doLogin();
|
59
|
-
onDone();
|
59
|
+
onDone?.();
|
60
60
|
} catch (err) {
|
61
61
|
await wait(1000);
|
62
62
|
setStatus("failed");
|
@@ -0,0 +1,83 @@
|
|
1
|
+
import type { Chain } from "../../../../../chains/types.js";
|
2
|
+
import type { ThirdwebClient } from "../../../../../client/client.js";
|
3
|
+
import type { Wallet } from "../../../../../wallets/interfaces/wallet.js";
|
4
|
+
import type { SmartWalletOptions } from "../../../../../wallets/smart/types.js";
|
5
|
+
import type { AppMetadata } from "../../../../../wallets/types.js";
|
6
|
+
import { useConnectedWallets } from "../../../hooks/wallets/useConnectedWallets.js";
|
7
|
+
import { getDefaultWallets } from "../../../wallets/defaultWallets.js";
|
8
|
+
import { ConnectModalContent } from "../Modal/ConnectModalContent.js";
|
9
|
+
import { useSetupScreen } from "../Modal/screen.js";
|
10
|
+
import type { ConnectLocale } from "../locale/types.js";
|
11
|
+
|
12
|
+
export type WalletSwitcherConnectionScreenProps = {
|
13
|
+
chain: Chain | undefined;
|
14
|
+
chains: Chain[] | undefined;
|
15
|
+
client: ThirdwebClient;
|
16
|
+
wallets: Wallet[] | undefined;
|
17
|
+
appMetadata: AppMetadata | undefined;
|
18
|
+
connectLocale: ConnectLocale;
|
19
|
+
isEmbed: boolean;
|
20
|
+
accountAbstraction: SmartWalletOptions | undefined;
|
21
|
+
onSelect: (wallet: Wallet) => void;
|
22
|
+
recommendedWallets: Wallet[] | undefined;
|
23
|
+
showAllWallets: boolean;
|
24
|
+
walletConnect:
|
25
|
+
| {
|
26
|
+
projectId?: string;
|
27
|
+
}
|
28
|
+
| undefined;
|
29
|
+
onBack: () => void;
|
30
|
+
};
|
31
|
+
|
32
|
+
export function WalletSwitcherConnectionScreen(
|
33
|
+
props: WalletSwitcherConnectionScreenProps,
|
34
|
+
) {
|
35
|
+
const connectedWallets = useConnectedWallets();
|
36
|
+
const wallets =
|
37
|
+
props.wallets ||
|
38
|
+
getDefaultWallets({
|
39
|
+
appMetadata: props.appMetadata,
|
40
|
+
chains: props.chains,
|
41
|
+
});
|
42
|
+
|
43
|
+
const screenSetup = useSetupScreen({
|
44
|
+
size: "compact",
|
45
|
+
welcomeScreen: undefined,
|
46
|
+
wallets: wallets,
|
47
|
+
});
|
48
|
+
|
49
|
+
return (
|
50
|
+
<ConnectModalContent
|
51
|
+
accountAbstraction={props.accountAbstraction}
|
52
|
+
auth={undefined}
|
53
|
+
chain={props.chain}
|
54
|
+
chains={props.chains}
|
55
|
+
client={props.client}
|
56
|
+
connectLocale={props.connectLocale}
|
57
|
+
isEmbed={props.isEmbed}
|
58
|
+
isOpen={true}
|
59
|
+
meta={{
|
60
|
+
showThirdwebBranding: false,
|
61
|
+
}}
|
62
|
+
onClose={() => {}}
|
63
|
+
onConnect={(w) => {
|
64
|
+
props.onSelect(w);
|
65
|
+
props.onBack();
|
66
|
+
}}
|
67
|
+
recommendedWallets={props.recommendedWallets}
|
68
|
+
screenSetup={screenSetup}
|
69
|
+
welcomeScreen={undefined}
|
70
|
+
wallets={wallets}
|
71
|
+
setModalVisibility={() => {}}
|
72
|
+
shouldSetActive={false}
|
73
|
+
showAllWallets={props.showAllWallets}
|
74
|
+
size="compact"
|
75
|
+
walletConnect={props.walletConnect}
|
76
|
+
modalHeader={{
|
77
|
+
title: "Connect",
|
78
|
+
onBack: props.onBack,
|
79
|
+
}}
|
80
|
+
walletIdsToHide={connectedWallets.map((x) => x.id)}
|
81
|
+
/>
|
82
|
+
);
|
83
|
+
}
|