thirdweb 5.31.1 → 5.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/exports/react.js +4 -4
- package/dist/cjs/exports/react.js.map +1 -1
- package/dist/cjs/exports/react.native.js +14 -6
- package/dist/cjs/exports/react.native.js.map +1 -1
- package/dist/cjs/exports/wallets/in-app.js +1 -1
- package/dist/cjs/exports/wallets/in-app.js.map +1 -1
- package/dist/cjs/pay/utils/definitions.js +17 -10
- package/dist/cjs/pay/utils/definitions.js.map +1 -1
- package/dist/cjs/react/core/hooks/connection/ConnectButtonProps.js.map +1 -0
- package/dist/cjs/react/core/hooks/connection/ConnectEmbedProps.js +3 -0
- package/dist/cjs/react/core/hooks/connection/ConnectEmbedProps.js.map +1 -0
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/core/hooks/wallets/useAutoConnect.js.map +1 -1
- package/dist/cjs/react/core/hooks/wallets/useSendToken.js +81 -0
- package/dist/cjs/react/core/hooks/wallets/useSendToken.js.map +1 -0
- package/dist/cjs/react/{web/ui/ConnectWallet → core/utils}/defaultTokens.js +20 -25
- package/dist/cjs/react/core/utils/defaultTokens.js.map +1 -0
- package/dist/cjs/react/core/utils/isSmartWallet.js.map +1 -0
- package/dist/cjs/react/{web/ui/ConnectWallet/icons/dataUris.js → core/utils/socialIcons.js} +19 -2
- package/dist/cjs/react/core/utils/socialIcons.js.map +1 -0
- package/dist/cjs/react/core/utils/storage.js.map +1 -0
- package/dist/cjs/react/core/utils/wallet.js +85 -0
- package/dist/cjs/react/core/utils/wallet.js.map +1 -0
- package/dist/cjs/react/native/design-system/index.js +33 -0
- package/dist/cjs/react/native/design-system/index.js.map +1 -0
- package/dist/cjs/react/native/hooks/wallets/useAutoConnect.js +5 -1
- package/dist/cjs/react/native/hooks/wallets/useAutoConnect.js.map +1 -1
- package/dist/cjs/react/native/hooks/wallets/useSendToken.js +31 -0
- package/dist/cjs/react/native/hooks/wallets/useSendToken.js.map +1 -0
- package/dist/cjs/react/native/ui/components/Address.js +31 -0
- package/dist/cjs/react/native/ui/components/Address.js.map +1 -0
- package/dist/cjs/react/native/ui/components/ChainIcon.js +30 -0
- package/dist/cjs/react/native/ui/components/ChainIcon.js.map +1 -0
- package/dist/cjs/react/native/ui/components/Header.js +30 -0
- package/dist/cjs/react/native/ui/components/Header.js.map +1 -0
- package/dist/cjs/react/native/ui/components/RNImage.js +43 -0
- package/dist/cjs/react/native/ui/components/RNImage.js.map +1 -0
- package/dist/cjs/react/native/ui/components/Skeleton.js +62 -0
- package/dist/cjs/react/native/ui/components/Skeleton.js.map +1 -0
- package/dist/cjs/react/native/ui/components/TokenIcon.js +16 -0
- package/dist/cjs/react/native/ui/components/TokenIcon.js.map +1 -0
- package/dist/cjs/react/native/ui/components/WalletImage.js +69 -0
- package/dist/cjs/react/native/ui/components/WalletImage.js.map +1 -0
- package/dist/cjs/react/native/ui/components/button.js +23 -8
- package/dist/cjs/react/native/ui/components/button.js.map +1 -1
- package/dist/cjs/react/native/ui/components/input.js +64 -0
- package/dist/cjs/react/native/ui/components/input.js.map +1 -0
- package/dist/cjs/react/native/ui/components/spacer.js +10 -0
- package/dist/cjs/react/native/ui/components/spacer.js.map +1 -0
- package/dist/cjs/react/native/ui/components/text.js +10 -7
- package/dist/cjs/react/native/ui/components/text.js.map +1 -1
- package/dist/cjs/react/native/ui/connect/ConnectButton.js +106 -0
- package/dist/cjs/react/native/ui/connect/ConnectButton.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/ConnectModal.js +133 -0
- package/dist/cjs/react/native/ui/connect/ConnectModal.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/ConnectedButton.js +42 -0
- package/dist/cjs/react/native/ui/connect/ConnectedButton.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/ConnectedModal.js +175 -0
- package/dist/cjs/react/native/ui/connect/ConnectedModal.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/ErrorView.js +25 -0
- package/dist/cjs/react/native/ui/connect/ErrorView.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/ExternalWalletsList.js +67 -0
- package/dist/cjs/react/native/ui/connect/ExternalWalletsList.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/InAppWalletUI.js +167 -0
- package/dist/cjs/react/native/ui/connect/InAppWalletUI.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/ReceiveScreen.js +42 -0
- package/dist/cjs/react/native/ui/connect/ReceiveScreen.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/SendScreen.js +82 -0
- package/dist/cjs/react/native/ui/connect/SendScreen.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/SuccessView.js +25 -0
- package/dist/cjs/react/native/ui/connect/SuccessView.js.map +1 -0
- package/dist/cjs/react/native/ui/connect/TokenListScreen.js +59 -0
- package/dist/cjs/react/native/ui/connect/TokenListScreen.js.map +1 -0
- package/dist/cjs/react/native/ui/icons/svgs.js +236 -0
- package/dist/cjs/react/native/ui/icons/svgs.js.map +1 -0
- package/dist/cjs/react/native/ui/{TransactionButton/TrabsactionButton.js → transaction/TransactionButton.js} +1 -1
- package/dist/cjs/react/native/ui/transaction/TransactionButton.js.map +1 -0
- package/dist/cjs/react/native/wallets/defaultWallets.js +22 -0
- package/dist/cjs/react/native/wallets/defaultWallets.js.map +1 -0
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/web/hooks/wallets/useAutoConnect.js +7 -2
- package/dist/cjs/react/web/hooks/wallets/useAutoConnect.js.map +1 -1
- package/dist/cjs/react/web/hooks/wallets/useSendToken.js +31 -0
- package/dist/cjs/react/web/hooks/wallets/useSendToken.js.map +1 -0
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +7 -51
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +2 -8
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +0 -4
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js +3 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/WalletEntryButton.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/WalletEntryButton.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js +4 -15
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/TokenSelector.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ViewFunds.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/ViewFunds.js.map +1 -1
- package/dist/cjs/react/web/ui/PayEmbed.js.map +1 -1
- package/dist/cjs/react/web/ui/components/ChainIcon.js.map +1 -1
- package/dist/cjs/react/web/ui/components/TokenIcon.js +2 -2
- package/dist/cjs/react/web/ui/components/TokenIcon.js.map +1 -1
- package/dist/cjs/react/web/ui/components/WalletImage.js +12 -13
- package/dist/cjs/react/web/ui/components/WalletImage.js.map +1 -1
- package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletHeader.js +2 -2
- package/dist/cjs/react/web/wallets/ecosystem/EcosystemWalletHeader.js.map +1 -1
- package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js +8 -4
- package/dist/cjs/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js +5 -6
- package/dist/cjs/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js +1 -1
- package/dist/cjs/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js +1 -1
- package/dist/cjs/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
- package/dist/cjs/react/web/wallets/shared/SocialLogin.js +1 -1
- package/dist/cjs/react/web/wallets/shared/SocialLogin.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/in-app/native/native-connector.js +3 -4
- package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
- package/dist/cjs/wallets/manager/index.js +3 -2
- package/dist/cjs/wallets/manager/index.js.map +1 -1
- package/dist/esm/exports/react.js +4 -3
- package/dist/esm/exports/react.js.map +1 -1
- package/dist/esm/exports/react.native.js +6 -2
- package/dist/esm/exports/react.native.js.map +1 -1
- package/dist/esm/exports/wallets/in-app.js +1 -1
- package/dist/esm/exports/wallets/in-app.js.map +1 -1
- package/dist/esm/pay/utils/definitions.js +15 -9
- package/dist/esm/pay/utils/definitions.js.map +1 -1
- package/dist/esm/react/core/hooks/connection/ConnectButtonProps.js.map +1 -0
- package/dist/esm/react/core/hooks/connection/ConnectEmbedProps.js +2 -0
- package/dist/esm/react/core/hooks/connection/ConnectEmbedProps.js.map +1 -0
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/core/hooks/wallets/useAutoConnect.js.map +1 -1
- package/dist/esm/react/core/hooks/wallets/useSendToken.js +78 -0
- package/dist/esm/react/core/hooks/wallets/useSendToken.js.map +1 -0
- package/dist/esm/react/{web/ui/ConnectWallet → core/utils}/defaultTokens.js +10 -15
- package/dist/esm/react/core/utils/defaultTokens.js.map +1 -0
- package/dist/esm/react/core/utils/isSmartWallet.js.map +1 -0
- package/dist/esm/react/{web/ui/ConnectWallet/icons/dataUris.js → core/utils/socialIcons.js} +18 -1
- package/dist/esm/react/core/utils/socialIcons.js.map +1 -0
- package/dist/esm/react/core/utils/storage.js.map +1 -0
- package/dist/esm/react/core/utils/wallet.js +80 -0
- package/dist/esm/react/core/utils/wallet.js.map +1 -0
- package/dist/esm/react/native/design-system/index.js +30 -0
- package/dist/esm/react/native/design-system/index.js.map +1 -0
- package/dist/esm/react/native/hooks/wallets/useAutoConnect.js +5 -1
- package/dist/esm/react/native/hooks/wallets/useAutoConnect.js.map +1 -1
- package/dist/esm/react/native/hooks/wallets/useSendToken.js +28 -0
- package/dist/esm/react/native/hooks/wallets/useSendToken.js.map +1 -0
- package/dist/esm/react/native/ui/components/Address.js +27 -0
- package/dist/esm/react/native/ui/components/Address.js.map +1 -0
- package/dist/esm/react/native/ui/components/ChainIcon.js +26 -0
- package/dist/esm/react/native/ui/components/ChainIcon.js.map +1 -0
- package/dist/esm/react/native/ui/components/Header.js +27 -0
- package/dist/esm/react/native/ui/components/Header.js.map +1 -0
- package/dist/esm/react/native/ui/components/RNImage.js +39 -0
- package/dist/esm/react/native/ui/components/RNImage.js.map +1 -0
- package/dist/esm/react/native/ui/components/Skeleton.js +58 -0
- package/dist/esm/react/native/ui/components/Skeleton.js.map +1 -0
- package/dist/esm/react/native/ui/components/TokenIcon.js +13 -0
- package/dist/esm/react/native/ui/components/TokenIcon.js.map +1 -0
- package/dist/esm/react/native/ui/components/WalletImage.js +65 -0
- package/dist/esm/react/native/ui/components/WalletImage.js.map +1 -0
- package/dist/esm/react/native/ui/components/button.js +24 -10
- package/dist/esm/react/native/ui/components/button.js.map +1 -1
- package/dist/esm/react/native/ui/components/input.js +60 -0
- package/dist/esm/react/native/ui/components/input.js.map +1 -0
- package/dist/esm/react/native/ui/components/spacer.js +7 -0
- package/dist/esm/react/native/ui/components/spacer.js.map +1 -0
- package/dist/esm/react/native/ui/components/text.js +10 -7
- package/dist/esm/react/native/ui/components/text.js.map +1 -1
- package/dist/esm/react/native/ui/connect/ConnectButton.js +103 -0
- package/dist/esm/react/native/ui/connect/ConnectButton.js.map +1 -0
- package/dist/esm/react/native/ui/connect/ConnectModal.js +129 -0
- package/dist/esm/react/native/ui/connect/ConnectModal.js.map +1 -0
- package/dist/esm/react/native/ui/connect/ConnectedButton.js +39 -0
- package/dist/esm/react/native/ui/connect/ConnectedButton.js.map +1 -0
- package/dist/esm/react/native/ui/connect/ConnectedModal.js +172 -0
- package/dist/esm/react/native/ui/connect/ConnectedModal.js.map +1 -0
- package/dist/esm/react/native/ui/connect/ErrorView.js +21 -0
- package/dist/esm/react/native/ui/connect/ErrorView.js.map +1 -0
- package/dist/esm/react/native/ui/connect/ExternalWalletsList.js +64 -0
- package/dist/esm/react/native/ui/connect/ExternalWalletsList.js.map +1 -0
- package/dist/esm/react/native/ui/connect/InAppWalletUI.js +163 -0
- package/dist/esm/react/native/ui/connect/InAppWalletUI.js.map +1 -0
- package/dist/esm/react/native/ui/connect/ReceiveScreen.js +38 -0
- package/dist/esm/react/native/ui/connect/ReceiveScreen.js.map +1 -0
- package/dist/esm/react/native/ui/connect/SendScreen.js +78 -0
- package/dist/esm/react/native/ui/connect/SendScreen.js.map +1 -0
- package/dist/esm/react/native/ui/connect/SuccessView.js +21 -0
- package/dist/esm/react/native/ui/connect/SuccessView.js.map +1 -0
- package/dist/esm/react/native/ui/connect/TokenListScreen.js +54 -0
- package/dist/esm/react/native/ui/connect/TokenListScreen.js.map +1 -0
- package/dist/esm/react/native/ui/icons/svgs.js +233 -0
- package/dist/esm/react/native/ui/icons/svgs.js.map +1 -0
- package/dist/esm/react/native/ui/{TransactionButton/TrabsactionButton.js → transaction/TransactionButton.js} +1 -1
- package/dist/esm/react/native/ui/transaction/TransactionButton.js.map +1 -0
- package/dist/esm/react/native/wallets/defaultWallets.js +19 -0
- package/dist/esm/react/native/wallets/defaultWallets.js.map +1 -0
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/web/hooks/wallets/useAutoConnect.js +7 -2
- package/dist/esm/react/web/hooks/wallets/useAutoConnect.js.map +1 -1
- package/dist/esm/react/web/hooks/wallets/useSendToken.js +28 -0
- package/dist/esm/react/web/hooks/wallets/useSendToken.js.map +1 -0
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButton.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +7 -51
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js +2 -8
- package/dist/esm/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js +1 -5
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectEmbed.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js +3 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/ConnectModalContent.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/WalletEntryButton.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/WalletEntryButton.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/WalletSelector.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js +5 -16
- package/dist/esm/react/web/ui/ConnectWallet/screens/SendFunds.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/SignatureScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/TokenSelector.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/ViewFunds.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/ViewFunds.js.map +1 -1
- package/dist/esm/react/web/ui/PayEmbed.js.map +1 -1
- package/dist/esm/react/web/ui/components/ChainIcon.js.map +1 -1
- package/dist/esm/react/web/ui/components/TokenIcon.js +1 -1
- package/dist/esm/react/web/ui/components/WalletImage.js +3 -4
- package/dist/esm/react/web/ui/components/WalletImage.js.map +1 -1
- package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletHeader.js +1 -1
- package/dist/esm/react/web/wallets/ecosystem/EcosystemWalletHeader.js.map +1 -1
- package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js +8 -4
- package/dist/esm/react/web/wallets/in-app/InAppWalletConnectUI.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js +2 -3
- package/dist/esm/react/web/wallets/shared/ConnectWalletSocialOptions.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/OTPLoginUI.js +1 -1
- package/dist/esm/react/web/wallets/shared/OTPLoginUI.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/PassKeyLogin.js +1 -1
- package/dist/esm/react/web/wallets/shared/PassKeyLogin.js.map +1 -1
- package/dist/esm/react/web/wallets/shared/SocialLogin.js +1 -1
- package/dist/esm/react/web/wallets/shared/SocialLogin.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/in-app/native/native-connector.js +3 -4
- package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
- package/dist/esm/wallets/manager/index.js +3 -2
- package/dist/esm/wallets/manager/index.js.map +1 -1
- package/dist/types/exports/react.d.ts +7 -6
- package/dist/types/exports/react.d.ts.map +1 -1
- package/dist/types/exports/react.native.d.ts +7 -2
- package/dist/types/exports/react.native.d.ts.map +1 -1
- package/dist/types/exports/wallets/in-app.d.ts +1 -1
- package/dist/types/exports/wallets/in-app.d.ts.map +1 -1
- package/dist/types/pay/utils/definitions.d.ts +1 -0
- package/dist/types/pay/utils/definitions.d.ts.map +1 -1
- package/dist/types/react/{web/ui/ConnectWallet → core/hooks/connection}/ConnectButtonProps.d.ts +6 -6
- package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts.map +1 -0
- package/dist/types/react/core/hooks/connection/ConnectEmbedProps.d.ts +264 -0
- package/dist/types/react/core/hooks/connection/ConnectEmbedProps.d.ts.map +1 -0
- package/dist/types/react/core/hooks/connection/types.d.ts +1 -1
- package/dist/types/react/core/hooks/connection/types.d.ts.map +1 -1
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts +1 -1
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/core/hooks/wallets/useAutoConnect.d.ts +3 -1
- package/dist/types/react/core/hooks/wallets/useAutoConnect.d.ts.map +1 -1
- package/dist/types/react/core/hooks/wallets/useSendToken.d.ts +12 -0
- package/dist/types/react/core/hooks/wallets/useSendToken.d.ts.map +1 -0
- package/dist/types/react/{web/ui/ConnectWallet → core/utils}/defaultTokens.d.ts +1 -0
- package/dist/types/react/core/utils/defaultTokens.d.ts.map +1 -0
- package/dist/types/react/core/utils/isSmartWallet.d.ts.map +1 -0
- package/dist/types/react/{web/ui/ConnectWallet/icons/dataUris.d.ts → core/utils/socialIcons.d.ts} +17 -1
- package/dist/types/react/core/utils/socialIcons.d.ts.map +1 -0
- package/dist/types/react/core/utils/storage.d.ts +5 -0
- package/dist/types/react/core/utils/storage.d.ts.map +1 -0
- package/dist/types/react/core/utils/wallet.d.ts +26 -0
- package/dist/types/react/core/utils/wallet.d.ts.map +1 -0
- package/dist/types/react/native/design-system/index.d.ts +30 -0
- package/dist/types/react/native/design-system/index.d.ts.map +1 -0
- package/dist/types/react/native/hooks/wallets/useAutoConnect.d.ts.map +1 -1
- package/dist/types/react/{web/ui/hooks → native/hooks/wallets}/useSendToken.d.ts +18 -1
- package/dist/types/react/native/hooks/wallets/useSendToken.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/Address.d.ts +9 -0
- package/dist/types/react/native/ui/components/Address.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/ChainIcon.d.ts +11 -0
- package/dist/types/react/native/ui/components/ChainIcon.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/Header.d.ts +10 -0
- package/dist/types/react/native/ui/components/Header.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/RNImage.d.ts +10 -0
- package/dist/types/react/native/ui/components/RNImage.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/Skeleton.d.ts +11 -0
- package/dist/types/react/native/ui/components/Skeleton.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/TokenIcon.d.ts +15 -0
- package/dist/types/react/native/ui/components/TokenIcon.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/WalletImage.d.ts +9 -0
- package/dist/types/react/native/ui/components/WalletImage.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/button.d.ts +5 -1
- package/dist/types/react/native/ui/components/button.d.ts.map +1 -1
- package/dist/types/react/native/ui/components/input.d.ts +12 -0
- package/dist/types/react/native/ui/components/input.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/spacer.d.ts +5 -0
- package/dist/types/react/native/ui/components/spacer.d.ts.map +1 -0
- package/dist/types/react/native/ui/components/text.d.ts +1 -1
- package/dist/types/react/native/ui/components/text.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/ConnectButton.d.ts +18 -0
- package/dist/types/react/native/ui/connect/ConnectButton.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/ConnectModal.d.ts +40 -0
- package/dist/types/react/native/ui/connect/ConnectModal.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/ConnectedButton.d.ts +9 -0
- package/dist/types/react/native/ui/connect/ConnectedButton.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/ConnectedModal.d.ts +14 -0
- package/dist/types/react/native/ui/connect/ConnectedModal.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/ErrorView.d.ts +7 -0
- package/dist/types/react/native/ui/connect/ErrorView.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/ExternalWalletsList.d.ts +15 -0
- package/dist/types/react/native/ui/connect/ExternalWalletsList.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts +19 -0
- package/dist/types/react/native/ui/connect/InAppWalletUI.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/ReceiveScreen.d.ts +13 -0
- package/dist/types/react/native/ui/connect/ReceiveScreen.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/SendScreen.d.ts +14 -0
- package/dist/types/react/native/ui/connect/SendScreen.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/SuccessView.d.ts +7 -0
- package/dist/types/react/native/ui/connect/SuccessView.d.ts.map +1 -0
- package/dist/types/react/native/ui/connect/TokenListScreen.d.ts +20 -0
- package/dist/types/react/native/ui/connect/TokenListScreen.d.ts.map +1 -0
- package/dist/types/react/native/ui/icons/svgs.d.ts +22 -0
- package/dist/types/react/native/ui/icons/svgs.d.ts.map +1 -0
- package/dist/types/react/native/ui/{TransactionButton/TrabsactionButton.d.ts → transaction/TransactionButton.d.ts} +1 -1
- package/dist/types/react/native/ui/transaction/TransactionButton.d.ts.map +1 -0
- package/dist/types/react/native/wallets/defaultWallets.d.ts +11 -0
- package/dist/types/react/native/wallets/defaultWallets.d.ts.map +1 -0
- package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/web/hooks/wallets/useAutoConnect.d.ts.map +1 -1
- package/dist/types/react/web/hooks/wallets/useSendToken.d.ts +28 -0
- package/dist/types/react/web/hooks/wallets/useSendToken.d.ts.map +1 -0
- package/dist/types/react/web/ui/ConnectWallet/ConnectButton.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/ConnectButton.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts +2 -2
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
- 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 +1 -267
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectEmbed.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Modal/ConnectModalContent.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/WalletEntryButton.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/WalletSelector.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts +2 -2
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/SendFunds.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/SendFunds.d.ts.map +1 -1
- 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/TokenSelector.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/TokenSelector.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/ViewFunds.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/ViewFunds.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/nativeToken.d.ts +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/nativeToken.d.ts.map +1 -1
- package/dist/types/react/web/ui/PayEmbed.d.ts +2 -2
- package/dist/types/react/web/ui/PayEmbed.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/ChainIcon.d.ts.map +1 -1
- package/dist/types/react/web/ui/components/WalletImage.d.ts.map +1 -1
- package/dist/types/react/web/wallets/in-app/InAppWalletConnectUI.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/ConnectWalletSocialOptions.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/OTPLoginUI.d.ts.map +1 -1
- package/dist/types/react/web/wallets/shared/SocialLogin.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/in-app/native/native-connector.d.ts.map +1 -1
- package/dist/types/wallets/manager/index.d.ts +1 -0
- package/dist/types/wallets/manager/index.d.ts.map +1 -1
- package/package.json +19 -3
- package/src/exports/react.native.ts +19 -5
- package/src/exports/react.ts +7 -12
- package/src/exports/wallets/in-app.ts +1 -1
- package/src/pay/utils/definitions.ts +16 -9
- package/src/react/{web/ui/ConnectWallet → core/hooks/connection}/ConnectButtonProps.ts +7 -10
- package/src/react/core/hooks/connection/ConnectEmbedProps.ts +285 -0
- package/src/react/core/hooks/connection/types.ts +1 -1
- package/src/react/core/hooks/transaction/useSendTransaction.ts +1 -1
- package/src/react/core/hooks/wallets/useAutoConnect.ts +1 -1
- package/src/react/core/hooks/wallets/useSendToken.ts +94 -0
- package/src/react/{web/ui/ConnectWallet → core/utils}/defaultTokens.ts +10 -15
- package/src/react/{web/ui/ConnectWallet/icons/dataUris.ts → core/utils/socialIcons.ts} +30 -0
- package/src/react/{web/wallets/shared → core/utils}/storage.ts +2 -2
- package/src/react/core/utils/wallet.ts +101 -0
- package/src/react/native/design-system/index.ts +31 -0
- package/src/react/native/hooks/wallets/useAutoConnect.ts +5 -1
- package/src/react/native/hooks/wallets/useSendToken.ts +29 -0
- package/src/react/native/ui/components/Address.tsx +52 -0
- package/src/react/native/ui/components/ChainIcon.tsx +42 -0
- package/src/react/native/ui/components/Header.tsx +84 -0
- package/src/react/native/ui/components/RNImage.tsx +71 -0
- package/src/react/native/ui/components/Skeleton.tsx +93 -0
- package/src/react/native/ui/components/TokenIcon.tsx +31 -0
- package/src/react/native/ui/components/WalletImage.tsx +81 -0
- package/src/react/native/ui/components/button.tsx +41 -9
- package/src/react/native/ui/components/input.tsx +128 -0
- package/src/react/native/ui/components/spacer.tsx +6 -0
- package/src/react/native/ui/components/text.tsx +17 -8
- package/src/react/native/ui/connect/ConnectButton.tsx +188 -0
- package/src/react/native/ui/connect/ConnectModal.tsx +301 -0
- package/src/react/native/ui/connect/ConnectedButton.tsx +94 -0
- package/src/react/native/ui/connect/ConnectedModal.tsx +434 -0
- package/src/react/native/ui/connect/ErrorView.tsx +44 -0
- package/src/react/native/ui/connect/ExternalWalletsList.tsx +162 -0
- package/src/react/native/ui/connect/InAppWalletUI.tsx +320 -0
- package/src/react/native/ui/connect/ReceiveScreen.tsx +81 -0
- package/src/react/native/ui/connect/SendScreen.tsx +238 -0
- package/src/react/native/ui/connect/SuccessView.tsx +44 -0
- package/src/react/native/ui/connect/TokenListScreen.tsx +147 -0
- package/src/react/native/ui/icons/svgs.ts +252 -0
- package/src/react/native/wallets/defaultWallets.ts +30 -0
- package/src/react/web/hooks/transaction/useSendTransaction.tsx +2 -2
- package/src/react/web/hooks/wallets/useAutoConnect.ts +18 -8
- package/src/react/web/hooks/wallets/useSendToken.ts +29 -0
- package/src/react/web/ui/ConnectWallet/ConnectButton.tsx +2 -2
- package/src/react/web/ui/ConnectWallet/Details.tsx +26 -78
- package/src/react/web/ui/ConnectWallet/Modal/AnyWalletConnectUI.tsx +2 -9
- package/src/react/web/ui/ConnectWallet/Modal/ConnectEmbed.tsx +6 -285
- package/src/react/web/ui/ConnectWallet/Modal/ConnectModalContent.tsx +3 -1
- package/src/react/web/ui/ConnectWallet/Modal/SmartWalletConnectUI.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/WalletEntryButton.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/WalletSelector.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +2 -2
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/useEnabledPaymentMethods.ts +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/useUISelectionStates.ts +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/PayWithCrypto.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/SendFunds.tsx +8 -21
- package/src/react/web/ui/ConnectWallet/screens/SignatureScreen.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/TokenSelector.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/ViewFunds.tsx +4 -1
- package/src/react/web/ui/ConnectWallet/screens/nativeToken.ts +1 -1
- package/src/react/web/ui/PayEmbed.tsx +3 -3
- package/src/react/web/ui/components/ChainIcon.tsx +0 -1
- package/src/react/web/ui/components/TokenIcon.tsx +1 -1
- package/src/react/web/ui/components/WalletImage.tsx +7 -9
- package/src/react/web/wallets/ecosystem/EcosystemWalletHeader.tsx +1 -1
- package/src/react/web/wallets/in-app/InAppWalletConnectUI.tsx +8 -4
- package/src/react/web/wallets/shared/ConnectWalletSocialOptions.tsx +6 -6
- package/src/react/web/wallets/shared/OTPLoginUI.tsx +1 -1
- package/src/react/web/wallets/shared/PassKeyLogin.tsx +1 -1
- package/src/react/web/wallets/shared/SocialLogin.tsx +1 -1
- package/src/version.ts +1 -1
- package/src/wallets/in-app/native/native-connector.ts +4 -6
- package/src/wallets/manager/index.ts +4 -2
- package/dist/cjs/react/native/ui/TransactionButton/TrabsactionButton.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/ConnectButtonProps.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/defaultTokens.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/icons/dataUris.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/icons/socialLogins.js +0 -15
- package/dist/cjs/react/web/ui/ConnectWallet/icons/socialLogins.js.map +0 -1
- package/dist/cjs/react/web/ui/hooks/useSendToken.js +0 -57
- package/dist/cjs/react/web/ui/hooks/useSendToken.js.map +0 -1
- package/dist/cjs/react/web/ui/hooks/useWalletInfo.js +0 -37
- package/dist/cjs/react/web/ui/hooks/useWalletInfo.js.map +0 -1
- package/dist/cjs/react/web/utils/isSmartWallet.js.map +0 -1
- package/dist/cjs/react/web/wallets/in-app/socialIcons.js +0 -10
- package/dist/cjs/react/web/wallets/in-app/socialIcons.js.map +0 -1
- package/dist/cjs/react/web/wallets/shared/storage.js.map +0 -1
- package/dist/esm/react/native/ui/TransactionButton/TrabsactionButton.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/ConnectButtonProps.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/defaultTokens.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/icons/dataUris.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/icons/socialLogins.js +0 -12
- package/dist/esm/react/web/ui/ConnectWallet/icons/socialLogins.js.map +0 -1
- package/dist/esm/react/web/ui/hooks/useSendToken.js +0 -54
- package/dist/esm/react/web/ui/hooks/useSendToken.js.map +0 -1
- package/dist/esm/react/web/ui/hooks/useWalletInfo.js +0 -33
- package/dist/esm/react/web/ui/hooks/useWalletInfo.js.map +0 -1
- package/dist/esm/react/web/utils/isSmartWallet.js.map +0 -1
- package/dist/esm/react/web/wallets/in-app/socialIcons.js +0 -7
- package/dist/esm/react/web/wallets/in-app/socialIcons.js.map +0 -1
- package/dist/esm/react/web/wallets/shared/storage.js.map +0 -1
- package/dist/types/react/native/ui/TransactionButton/TrabsactionButton.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/ConnectButtonProps.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/defaultTokens.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/icons/dataUris.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/icons/socialLogins.d.ts +0 -12
- package/dist/types/react/web/ui/ConnectWallet/icons/socialLogins.d.ts.map +0 -1
- package/dist/types/react/web/ui/hooks/useSendToken.d.ts.map +0 -1
- package/dist/types/react/web/ui/hooks/useWalletInfo.d.ts +0 -13
- package/dist/types/react/web/ui/hooks/useWalletInfo.d.ts.map +0 -1
- package/dist/types/react/web/utils/isSmartWallet.d.ts.map +0 -1
- package/dist/types/react/web/wallets/in-app/socialIcons.d.ts +0 -6
- package/dist/types/react/web/wallets/in-app/socialIcons.d.ts.map +0 -1
- package/dist/types/react/web/wallets/shared/storage.d.ts +0 -5
- package/dist/types/react/web/wallets/shared/storage.d.ts.map +0 -1
- package/src/react/web/ui/ConnectWallet/icons/socialLogins.ts +0 -22
- package/src/react/web/ui/hooks/useSendToken.ts +0 -66
- package/src/react/web/ui/hooks/useWalletInfo.ts +0 -37
- package/src/react/web/wallets/in-app/socialIcons.ts +0 -11
- /package/dist/cjs/react/{web/ui/ConnectWallet → core/hooks/connection}/ConnectButtonProps.js +0 -0
- /package/dist/cjs/react/{web → core}/utils/isSmartWallet.js +0 -0
- /package/dist/cjs/react/{web/wallets/shared → core/utils}/storage.js +0 -0
- /package/dist/esm/react/{web/ui/ConnectWallet → core/hooks/connection}/ConnectButtonProps.js +0 -0
- /package/dist/esm/react/{web → core}/utils/isSmartWallet.js +0 -0
- /package/dist/esm/react/{web/wallets/shared → core/utils}/storage.js +0 -0
- /package/dist/types/react/{web → core}/utils/isSmartWallet.d.ts +0 -0
- /package/src/react/{web → core}/utils/isSmartWallet.ts +0 -0
- /package/src/react/native/ui/{TransactionButton/TrabsactionButton.tsx → transaction/TransactionButton.tsx} +0 -0
@@ -0,0 +1,93 @@
|
|
1
|
+
import type React from "react";
|
2
|
+
import { useEffect, useRef } from "react";
|
3
|
+
import {
|
4
|
+
Animated,
|
5
|
+
Dimensions,
|
6
|
+
StyleSheet,
|
7
|
+
View,
|
8
|
+
type ViewStyle,
|
9
|
+
} from "react-native";
|
10
|
+
import type { Theme } from "../../../core/design-system/index.js";
|
11
|
+
import { radius } from "../../design-system/index.js";
|
12
|
+
|
13
|
+
const { width } = Dimensions.get("window");
|
14
|
+
|
15
|
+
interface SkeletonLoaderProps {
|
16
|
+
theme: Theme;
|
17
|
+
color?: string;
|
18
|
+
style?: ViewStyle;
|
19
|
+
}
|
20
|
+
|
21
|
+
export const Skeleton: React.FC<SkeletonLoaderProps> = ({
|
22
|
+
style,
|
23
|
+
color,
|
24
|
+
theme,
|
25
|
+
}) => {
|
26
|
+
const translateX = useRef(new Animated.Value(-width));
|
27
|
+
|
28
|
+
useEffect(() => {
|
29
|
+
const animation = Animated.loop(
|
30
|
+
Animated.sequence([
|
31
|
+
Animated.timing(translateX.current, {
|
32
|
+
toValue: width,
|
33
|
+
duration: 2500,
|
34
|
+
useNativeDriver: true,
|
35
|
+
}),
|
36
|
+
Animated.timing(translateX.current, {
|
37
|
+
toValue: -width,
|
38
|
+
duration: 0,
|
39
|
+
useNativeDriver: true,
|
40
|
+
}),
|
41
|
+
]),
|
42
|
+
);
|
43
|
+
animation.start();
|
44
|
+
|
45
|
+
return () => animation.stop();
|
46
|
+
}, []);
|
47
|
+
|
48
|
+
return (
|
49
|
+
<View
|
50
|
+
style={[
|
51
|
+
styles.container,
|
52
|
+
{ backgroundColor: color || theme.colors.borderColor },
|
53
|
+
style,
|
54
|
+
]}
|
55
|
+
>
|
56
|
+
<View style={styles.skeleton} />
|
57
|
+
<Animated.View
|
58
|
+
style={[
|
59
|
+
styles.gradient,
|
60
|
+
{
|
61
|
+
transform: [{ translateX: translateX.current }],
|
62
|
+
},
|
63
|
+
]}
|
64
|
+
>
|
65
|
+
<View style={styles.innerGradient} />
|
66
|
+
</Animated.View>
|
67
|
+
</View>
|
68
|
+
);
|
69
|
+
};
|
70
|
+
|
71
|
+
const styles = StyleSheet.create({
|
72
|
+
container: {
|
73
|
+
overflow: "hidden",
|
74
|
+
borderRadius: radius.lg,
|
75
|
+
},
|
76
|
+
skeleton: {
|
77
|
+
height: "100%",
|
78
|
+
width: "100%",
|
79
|
+
},
|
80
|
+
gradient: {
|
81
|
+
position: "absolute",
|
82
|
+
top: 0,
|
83
|
+
bottom: 0,
|
84
|
+
width: "100%",
|
85
|
+
},
|
86
|
+
innerGradient: {
|
87
|
+
width: "100%",
|
88
|
+
height: "100%",
|
89
|
+
backgroundColor: "rgba(255,255,255,0.5)",
|
90
|
+
opacity: 0.3,
|
91
|
+
transform: [{ skewX: "-20deg" }],
|
92
|
+
},
|
93
|
+
});
|
@@ -0,0 +1,31 @@
|
|
1
|
+
"use client";
|
2
|
+
import type { Chain } from "../../../../chains/types.js";
|
3
|
+
import type { ThirdwebClient } from "../../../../client/client.js";
|
4
|
+
import type { Theme } from "../../../core/design-system/index.js";
|
5
|
+
import type { TokenInfo } from "../../../core/utils/defaultTokens.js";
|
6
|
+
import { genericTokenIcon } from "../../../core/utils/socialIcons.js";
|
7
|
+
import { ChainIcon } from "./ChainIcon.js";
|
8
|
+
import { RNImage } from "./RNImage.js";
|
9
|
+
|
10
|
+
// Note: Must not use useConnectUI here
|
11
|
+
|
12
|
+
/**
|
13
|
+
* @internal
|
14
|
+
*/
|
15
|
+
export function TokenIcon(props: {
|
16
|
+
theme: Theme;
|
17
|
+
size: number;
|
18
|
+
token?: TokenInfo;
|
19
|
+
chain?: Chain;
|
20
|
+
client: ThirdwebClient;
|
21
|
+
}) {
|
22
|
+
return props.token ? (
|
23
|
+
<RNImage
|
24
|
+
theme={props.theme}
|
25
|
+
data={props.token?.icon || genericTokenIcon}
|
26
|
+
size={props.size}
|
27
|
+
/>
|
28
|
+
) : (
|
29
|
+
<ChainIcon {...props} />
|
30
|
+
);
|
31
|
+
}
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import { useQuery } from "@tanstack/react-query";
|
2
|
+
import { nativeLocalStorage } from "../../../../utils/storage/nativeStorage.js";
|
3
|
+
import { getWalletInfo } from "../../../../wallets/__generated__/getWalletInfo.js";
|
4
|
+
import type { Wallet } from "../../../../wallets/interfaces/wallet.js";
|
5
|
+
import { getStoredActiveWalletId } from "../../../../wallets/manager/index.js";
|
6
|
+
import type { Theme } from "../../../core/design-system/index.js";
|
7
|
+
import { getLastAuthProvider } from "../../../core/utils/storage.js";
|
8
|
+
import {
|
9
|
+
APPLE_ICON,
|
10
|
+
EMAIL_ICON,
|
11
|
+
FACEBOOK_ICON,
|
12
|
+
GOOGLE_ICON,
|
13
|
+
PHONE_ICON,
|
14
|
+
WALLET_ICON,
|
15
|
+
} from "../icons/svgs.js";
|
16
|
+
import { RNImage } from "./RNImage.js";
|
17
|
+
|
18
|
+
export const WalletImage = (props: {
|
19
|
+
theme: Theme;
|
20
|
+
wallet: Wallet;
|
21
|
+
size: number;
|
22
|
+
ensAvatar?: string | null;
|
23
|
+
}) => {
|
24
|
+
const { wallet, ensAvatar, size } = props;
|
25
|
+
|
26
|
+
const { data: imageData } = useQuery({
|
27
|
+
queryKey: ["wallet-image", wallet.id, wallet.getAccount()?.address],
|
28
|
+
queryFn: async (): Promise<string> => {
|
29
|
+
let activeEOAId = wallet.id;
|
30
|
+
if (wallet.id === "smart") {
|
31
|
+
// TODO (rn) investigate why the first render this returns null from storage
|
32
|
+
const storedId = await getStoredActiveWalletId(nativeLocalStorage);
|
33
|
+
if (storedId) {
|
34
|
+
activeEOAId = storedId;
|
35
|
+
} else {
|
36
|
+
throw new Error("No active EOA wallet");
|
37
|
+
}
|
38
|
+
}
|
39
|
+
let imageData: string;
|
40
|
+
if (
|
41
|
+
activeEOAId === "inApp" &&
|
42
|
+
(wallet.id === "inApp" || wallet.id === "smart")
|
43
|
+
) {
|
44
|
+
const lastAuthProvider = await getLastAuthProvider(nativeLocalStorage);
|
45
|
+
switch (lastAuthProvider) {
|
46
|
+
case "phone":
|
47
|
+
imageData = PHONE_ICON;
|
48
|
+
break;
|
49
|
+
case "email":
|
50
|
+
imageData = EMAIL_ICON;
|
51
|
+
break;
|
52
|
+
case "google":
|
53
|
+
imageData = GOOGLE_ICON;
|
54
|
+
break;
|
55
|
+
case "apple":
|
56
|
+
imageData = APPLE_ICON;
|
57
|
+
break;
|
58
|
+
case "facebook":
|
59
|
+
imageData = FACEBOOK_ICON;
|
60
|
+
break;
|
61
|
+
default:
|
62
|
+
imageData = WALLET_ICON;
|
63
|
+
break;
|
64
|
+
}
|
65
|
+
return imageData;
|
66
|
+
}
|
67
|
+
try {
|
68
|
+
const externalWalletImage = await getWalletInfo(activeEOAId, true);
|
69
|
+
if (externalWalletImage) {
|
70
|
+
return externalWalletImage;
|
71
|
+
}
|
72
|
+
} catch {}
|
73
|
+
|
74
|
+
return WALLET_ICON;
|
75
|
+
},
|
76
|
+
enabled: !ensAvatar,
|
77
|
+
});
|
78
|
+
|
79
|
+
const data = ensAvatar || imageData || WALLET_ICON;
|
80
|
+
return <RNImage theme={props.theme} data={data} size={size} />;
|
81
|
+
};
|
@@ -2,27 +2,36 @@ import {
|
|
2
2
|
StyleSheet,
|
3
3
|
TouchableOpacity,
|
4
4
|
type TouchableOpacityProps,
|
5
|
+
View,
|
5
6
|
} from "react-native";
|
6
7
|
import type { Theme } from "../../../core/design-system/index.js";
|
8
|
+
import { radius, spacing } from "../../design-system/index.js";
|
9
|
+
import { RNImage } from "./RNImage.js";
|
10
|
+
import { ThemedText } from "./text.js";
|
7
11
|
|
8
12
|
export type ThemedButtonProps = TouchableOpacityProps & {
|
9
13
|
theme: Theme;
|
10
|
-
variant?: "primary" | "secondary";
|
14
|
+
variant?: "primary" | "secondary" | "accent";
|
11
15
|
};
|
12
16
|
|
13
17
|
export function ThemedButton(props: ThemedButtonProps) {
|
14
18
|
const variant = props.variant ?? "primary";
|
15
|
-
const
|
16
|
-
const { style: styleOverride, ...restProps } = props;
|
19
|
+
const { style: styleOverride, theme, ...restProps } = props;
|
17
20
|
return (
|
18
21
|
<TouchableOpacity
|
19
22
|
activeOpacity={0.5}
|
20
23
|
style={[
|
21
24
|
styles.button,
|
22
25
|
{
|
23
|
-
borderColor:
|
26
|
+
borderColor:
|
27
|
+
variant === "secondary" ? theme.colors.borderColor : "transparent",
|
24
28
|
borderWidth: variant === "secondary" ? 1 : 0,
|
25
|
-
backgroundColor:
|
29
|
+
backgroundColor:
|
30
|
+
variant === "secondary"
|
31
|
+
? "transparent"
|
32
|
+
: variant === "accent"
|
33
|
+
? props.theme.colors.accentButtonBg
|
34
|
+
: props.theme.colors.primaryButtonBg,
|
26
35
|
},
|
27
36
|
styleOverride,
|
28
37
|
]}
|
@@ -33,13 +42,36 @@ export function ThemedButton(props: ThemedButtonProps) {
|
|
33
42
|
);
|
34
43
|
}
|
35
44
|
|
45
|
+
export function ThemedButtonWithIcon(
|
46
|
+
props: ThemedButtonProps & {
|
47
|
+
title: string;
|
48
|
+
icon: string;
|
49
|
+
},
|
50
|
+
) {
|
51
|
+
const { theme, title, icon, onPress } = props;
|
52
|
+
return (
|
53
|
+
<ThemedButton theme={theme} variant="secondary" onPress={onPress}>
|
54
|
+
<View
|
55
|
+
style={{
|
56
|
+
flexDirection: "row",
|
57
|
+
gap: spacing.md,
|
58
|
+
paddingLeft: spacing.sm,
|
59
|
+
alignContent: "center",
|
60
|
+
width: "100%",
|
61
|
+
}}
|
62
|
+
>
|
63
|
+
<RNImage theme={theme} size={24} data={icon} />
|
64
|
+
<ThemedText theme={theme}>{title}</ThemedText>
|
65
|
+
</View>
|
66
|
+
</ThemedButton>
|
67
|
+
);
|
68
|
+
}
|
69
|
+
|
36
70
|
const styles = StyleSheet.create({
|
37
71
|
button: {
|
38
|
-
flex: 1,
|
39
72
|
flexDirection: "row",
|
40
|
-
|
41
|
-
|
42
|
-
borderRadius: 6,
|
73
|
+
padding: spacing.md,
|
74
|
+
borderRadius: radius.lg,
|
43
75
|
justifyContent: "center",
|
44
76
|
alignItems: "center",
|
45
77
|
},
|
@@ -0,0 +1,128 @@
|
|
1
|
+
import { useState } from "react";
|
2
|
+
import {
|
3
|
+
StyleSheet,
|
4
|
+
TextInput,
|
5
|
+
type TextInputProps,
|
6
|
+
TouchableOpacity,
|
7
|
+
View,
|
8
|
+
} from "react-native";
|
9
|
+
import { SvgXml } from "react-native-svg";
|
10
|
+
import type { Theme } from "../../../core/design-system/index.js";
|
11
|
+
import { radius, spacing } from "../../design-system/index.js";
|
12
|
+
import { RIGHT_ARROW } from "../icons/svgs.js";
|
13
|
+
import { ThemedSpinner } from "./spinner.js";
|
14
|
+
|
15
|
+
export type ThemedInputProps = {
|
16
|
+
theme: Theme;
|
17
|
+
rightView?: React.ReactNode;
|
18
|
+
} & TextInputProps;
|
19
|
+
|
20
|
+
export function ThemedInput(props: ThemedInputProps) {
|
21
|
+
const { theme, rightView } = props;
|
22
|
+
const [isFocused, setIsFocused] = useState(false);
|
23
|
+
return (
|
24
|
+
<View
|
25
|
+
style={[
|
26
|
+
styles.container,
|
27
|
+
{
|
28
|
+
borderColor: isFocused
|
29
|
+
? theme.colors.accentButtonBg
|
30
|
+
: theme.colors.borderColor,
|
31
|
+
},
|
32
|
+
]}
|
33
|
+
>
|
34
|
+
<TextInput
|
35
|
+
placeholderTextColor={theme.colors.secondaryText}
|
36
|
+
style={[styles.input, { color: theme.colors.primaryText }]}
|
37
|
+
onFocus={() => setIsFocused(true)}
|
38
|
+
onBlur={() => setIsFocused(false)}
|
39
|
+
{...props}
|
40
|
+
/>
|
41
|
+
{rightView && (
|
42
|
+
<>
|
43
|
+
<View style={{ flex: 1 }} />
|
44
|
+
{rightView}
|
45
|
+
</>
|
46
|
+
)}
|
47
|
+
</View>
|
48
|
+
);
|
49
|
+
}
|
50
|
+
|
51
|
+
export function ThemedInputWithSubmit(
|
52
|
+
props: ThemedInputProps & {
|
53
|
+
onSubmit?: (value: string) => void;
|
54
|
+
isSubmitting?: boolean;
|
55
|
+
},
|
56
|
+
) {
|
57
|
+
const { theme, onSubmit } = props;
|
58
|
+
const [isFocused, setIsFocused] = useState(false);
|
59
|
+
const [val, setVal] = useState("");
|
60
|
+
return (
|
61
|
+
<View
|
62
|
+
style={[
|
63
|
+
styles.container,
|
64
|
+
{
|
65
|
+
borderColor: isFocused
|
66
|
+
? theme.colors.accentButtonBg
|
67
|
+
: theme.colors.borderColor,
|
68
|
+
},
|
69
|
+
]}
|
70
|
+
>
|
71
|
+
<TextInput
|
72
|
+
placeholderTextColor={theme.colors.secondaryText}
|
73
|
+
style={[
|
74
|
+
styles.input,
|
75
|
+
{
|
76
|
+
color: theme.colors.primaryText,
|
77
|
+
},
|
78
|
+
]}
|
79
|
+
value={val}
|
80
|
+
onChangeText={setVal}
|
81
|
+
onFocus={() => setIsFocused(true)}
|
82
|
+
onBlur={() => setIsFocused(false)}
|
83
|
+
{...props}
|
84
|
+
/>
|
85
|
+
{onSubmit && (
|
86
|
+
<TouchableOpacity
|
87
|
+
onPress={() => onSubmit(val)}
|
88
|
+
disabled={props.isSubmitting}
|
89
|
+
style={{
|
90
|
+
paddingHorizontal: spacing.lg,
|
91
|
+
}}
|
92
|
+
>
|
93
|
+
{props.isSubmitting ? (
|
94
|
+
<ThemedSpinner size={24} color={theme.colors.secondaryIconColor} />
|
95
|
+
) : (
|
96
|
+
<SvgXml
|
97
|
+
width={24}
|
98
|
+
height={24}
|
99
|
+
xml={RIGHT_ARROW}
|
100
|
+
color={theme.colors.secondaryIconColor}
|
101
|
+
/>
|
102
|
+
)}
|
103
|
+
</TouchableOpacity>
|
104
|
+
)}
|
105
|
+
</View>
|
106
|
+
);
|
107
|
+
}
|
108
|
+
|
109
|
+
const styles = StyleSheet.create({
|
110
|
+
container: {
|
111
|
+
flexDirection: "row",
|
112
|
+
alignItems: "center",
|
113
|
+
borderRadius: radius.lg,
|
114
|
+
borderWidth: 1,
|
115
|
+
borderStyle: "solid",
|
116
|
+
},
|
117
|
+
input: {
|
118
|
+
flex: 1,
|
119
|
+
flexDirection: "row",
|
120
|
+
fontSize: 16,
|
121
|
+
height: 56,
|
122
|
+
gap: spacing.md,
|
123
|
+
paddingLeft: spacing.lg,
|
124
|
+
paddingVertical: spacing.md,
|
125
|
+
justifyContent: "center",
|
126
|
+
alignItems: "center",
|
127
|
+
},
|
128
|
+
});
|
@@ -3,7 +3,13 @@ import type { Theme } from "../../../core/design-system/index.js";
|
|
3
3
|
|
4
4
|
export type ThemedTextProps = TextProps & {
|
5
5
|
theme: Theme;
|
6
|
-
type?:
|
6
|
+
type?:
|
7
|
+
| "default"
|
8
|
+
| "title"
|
9
|
+
| "defaultSemiBold"
|
10
|
+
| "subtitle"
|
11
|
+
| "link"
|
12
|
+
| "subtext";
|
7
13
|
};
|
8
14
|
|
9
15
|
export function ThemedText({
|
@@ -21,6 +27,9 @@ export function ThemedText({
|
|
21
27
|
type === "defaultSemiBold" ? styles.defaultSemiBold : undefined,
|
22
28
|
type === "subtitle" ? styles.subtitle : undefined,
|
23
29
|
type === "link" ? styles.link : undefined,
|
30
|
+
type === "subtext"
|
31
|
+
? { ...styles.subtext, color: theme.colors.secondaryText }
|
32
|
+
: undefined,
|
24
33
|
style,
|
25
34
|
]}
|
26
35
|
{...rest}
|
@@ -31,24 +40,24 @@ export function ThemedText({
|
|
31
40
|
const styles = StyleSheet.create({
|
32
41
|
default: {
|
33
42
|
fontSize: 16,
|
34
|
-
lineHeight: 24,
|
35
43
|
},
|
36
44
|
defaultSemiBold: {
|
37
45
|
fontSize: 16,
|
38
|
-
lineHeight: 24,
|
39
46
|
fontWeight: "600",
|
40
47
|
},
|
48
|
+
subtext: {
|
49
|
+
fontSize: 14,
|
50
|
+
},
|
41
51
|
title: {
|
42
|
-
fontSize:
|
52
|
+
fontSize: 24,
|
43
53
|
fontWeight: "bold",
|
44
|
-
lineHeight:
|
54
|
+
lineHeight: 28,
|
45
55
|
},
|
46
56
|
subtitle: {
|
47
|
-
fontSize:
|
48
|
-
fontWeight: "
|
57
|
+
fontSize: 18,
|
58
|
+
fontWeight: "600",
|
49
59
|
},
|
50
60
|
link: {
|
51
|
-
lineHeight: 30,
|
52
61
|
fontSize: 16,
|
53
62
|
},
|
54
63
|
});
|
@@ -0,0 +1,188 @@
|
|
1
|
+
import { useCallback, useRef, useState } from "react";
|
2
|
+
import {
|
3
|
+
Animated,
|
4
|
+
Dimensions,
|
5
|
+
Easing,
|
6
|
+
KeyboardAvoidingView,
|
7
|
+
Modal,
|
8
|
+
Pressable,
|
9
|
+
StyleSheet,
|
10
|
+
View,
|
11
|
+
} from "react-native";
|
12
|
+
import { parseTheme } from "../../../core/design-system/CustomThemeProvider.js";
|
13
|
+
import type { ConnectButtonProps } from "../../../core/hooks/connection/ConnectButtonProps.js";
|
14
|
+
import { useActiveAccount } from "../../hooks/wallets/useActiveAccount.js";
|
15
|
+
import { useActiveWallet } from "../../hooks/wallets/useActiveWallet.js";
|
16
|
+
import { useActiveWalletConnectionStatus } from "../../hooks/wallets/useActiveWalletConnectionStatus.js";
|
17
|
+
import { useAutoConnect } from "../../hooks/wallets/useAutoConnect.js";
|
18
|
+
import { ThemedButton } from "../components/button.js";
|
19
|
+
import { ThemedSpinner } from "../components/spinner.js";
|
20
|
+
import { ThemedText } from "../components/text.js";
|
21
|
+
import { ConnectModal } from "./ConnectModal.js";
|
22
|
+
import { ConnectedButton } from "./ConnectedButton.js";
|
23
|
+
import { ConnectedModal } from "./ConnectedModal.js";
|
24
|
+
|
25
|
+
/**
|
26
|
+
* A component that allows the user to connect their wallet.
|
27
|
+
* It renders a button which when clicked opens a modal to allow users to connect to wallets specified in `wallets` prop.
|
28
|
+
* @example
|
29
|
+
* ```tsx
|
30
|
+
* <ConnectButton
|
31
|
+
* client={client}
|
32
|
+
* />
|
33
|
+
* ```
|
34
|
+
* @param props
|
35
|
+
* Props for the `ConnectButton` component
|
36
|
+
*
|
37
|
+
* Refer to [ConnectButtonProps](https://portal.thirdweb.com/references/typescript/v5/ConnectButtonProps) to see the available props.
|
38
|
+
* @component
|
39
|
+
*/
|
40
|
+
export function ConnectButton(props: ConnectButtonProps) {
|
41
|
+
const theme = parseTheme(props.theme);
|
42
|
+
const [visible, setVisible] = useState(false);
|
43
|
+
const wallet = useActiveWallet();
|
44
|
+
const account = useActiveAccount();
|
45
|
+
const status = useActiveWalletConnectionStatus();
|
46
|
+
useAutoConnect(props);
|
47
|
+
|
48
|
+
const fadeAnim = useRef(new Animated.Value(0)); // For background opacity
|
49
|
+
const slideAnim = useRef(new Animated.Value(screenHeight)); // For bottom sheet position
|
50
|
+
|
51
|
+
const openModal = useCallback(() => {
|
52
|
+
setVisible(true);
|
53
|
+
Animated.parallel([
|
54
|
+
Animated.timing(fadeAnim.current, {
|
55
|
+
toValue: 1,
|
56
|
+
duration: 300,
|
57
|
+
useNativeDriver: true,
|
58
|
+
}),
|
59
|
+
Animated.timing(slideAnim.current, {
|
60
|
+
toValue: 0,
|
61
|
+
duration: 300,
|
62
|
+
useNativeDriver: true,
|
63
|
+
easing: Easing.out(Easing.exp),
|
64
|
+
}),
|
65
|
+
]).start();
|
66
|
+
}, []);
|
67
|
+
|
68
|
+
const closeModal = useCallback(() => {
|
69
|
+
Animated.parallel([
|
70
|
+
Animated.timing(fadeAnim.current, {
|
71
|
+
toValue: 0,
|
72
|
+
duration: 300,
|
73
|
+
useNativeDriver: true,
|
74
|
+
}),
|
75
|
+
Animated.timing(slideAnim.current, {
|
76
|
+
toValue: screenHeight,
|
77
|
+
duration: 300,
|
78
|
+
useNativeDriver: true,
|
79
|
+
easing: Easing.in(Easing.exp),
|
80
|
+
}),
|
81
|
+
]).start(() => {
|
82
|
+
setVisible(false);
|
83
|
+
fadeAnim.current.setValue(0);
|
84
|
+
slideAnim.current.setValue(screenHeight);
|
85
|
+
});
|
86
|
+
}, []);
|
87
|
+
|
88
|
+
return (
|
89
|
+
<View>
|
90
|
+
{wallet && account ? (
|
91
|
+
<ConnectedButton
|
92
|
+
openModal={() => openModal()}
|
93
|
+
onClose={closeModal}
|
94
|
+
wallet={wallet}
|
95
|
+
account={account}
|
96
|
+
{...props}
|
97
|
+
/>
|
98
|
+
) : (
|
99
|
+
<ThemedButton theme={theme} onPress={() => openModal()}>
|
100
|
+
{status === "connecting" ? (
|
101
|
+
<>
|
102
|
+
<ThemedSpinner color={theme.colors.primaryButtonText} />
|
103
|
+
</>
|
104
|
+
) : (
|
105
|
+
<ThemedText
|
106
|
+
theme={theme}
|
107
|
+
type="defaultSemiBold"
|
108
|
+
style={{ color: theme.colors.primaryButtonText }}
|
109
|
+
>
|
110
|
+
Connect Wallet
|
111
|
+
</ThemedText>
|
112
|
+
)}
|
113
|
+
</ThemedButton>
|
114
|
+
)}
|
115
|
+
<Modal
|
116
|
+
visible={visible}
|
117
|
+
animationType="none"
|
118
|
+
transparent={true}
|
119
|
+
onRequestClose={closeModal}
|
120
|
+
>
|
121
|
+
<KeyboardAvoidingView behavior={"padding"} style={{ flex: 1 }}>
|
122
|
+
<Animated.View
|
123
|
+
style={[styles.modalOverlay, { opacity: fadeAnim.current }]}
|
124
|
+
/>
|
125
|
+
<Animated.View
|
126
|
+
style={[
|
127
|
+
{ flex: 1, transform: [{ translateY: slideAnim.current }] },
|
128
|
+
]}
|
129
|
+
>
|
130
|
+
<Pressable style={styles.dismissArea} onPress={closeModal} />
|
131
|
+
<View style={styles.bottomSheetContainer}>
|
132
|
+
{wallet && account ? (
|
133
|
+
<ConnectedModal
|
134
|
+
{...props}
|
135
|
+
theme={theme}
|
136
|
+
onClose={closeModal}
|
137
|
+
containerType="modal"
|
138
|
+
wallet={wallet}
|
139
|
+
account={account}
|
140
|
+
/>
|
141
|
+
) : status === "connecting" ? (
|
142
|
+
<View
|
143
|
+
style={{
|
144
|
+
flexDirection: "column",
|
145
|
+
flex: 1,
|
146
|
+
alignItems: "center",
|
147
|
+
justifyContent: "center",
|
148
|
+
}}
|
149
|
+
>
|
150
|
+
<ThemedSpinner color={theme.colors.primaryText} size={32} />
|
151
|
+
</View>
|
152
|
+
) : (
|
153
|
+
<ConnectModal
|
154
|
+
{...props}
|
155
|
+
theme={theme}
|
156
|
+
onClose={closeModal}
|
157
|
+
containerType="modal"
|
158
|
+
/>
|
159
|
+
)}
|
160
|
+
</View>
|
161
|
+
</Animated.View>
|
162
|
+
</KeyboardAvoidingView>
|
163
|
+
</Modal>
|
164
|
+
</View>
|
165
|
+
);
|
166
|
+
}
|
167
|
+
|
168
|
+
const screenHeight = Dimensions.get("window").height;
|
169
|
+
const modalHeight = 480;
|
170
|
+
const screenWidth = Dimensions.get("window").width;
|
171
|
+
|
172
|
+
const styles = StyleSheet.create({
|
173
|
+
modalOverlay: {
|
174
|
+
position: "absolute",
|
175
|
+
width: screenWidth,
|
176
|
+
height: screenHeight,
|
177
|
+
backgroundColor: "rgba(0,0,0,0.8)",
|
178
|
+
},
|
179
|
+
dismissArea: {
|
180
|
+
width: "100%",
|
181
|
+
flex: 1,
|
182
|
+
},
|
183
|
+
bottomSheetContainer: {
|
184
|
+
height: modalHeight,
|
185
|
+
width: screenWidth,
|
186
|
+
flexDirection: "column",
|
187
|
+
},
|
188
|
+
});
|