Hooks
useDynamicContext
Dynamic’s React Context which is set via DynamicContextProvider
Method | Description |
---|---|
accountSwitchState: AccountSwitchState | This enum type specifies the current state of switching or linking wallets in a multi-wallet enabled environment. This can be idle, linking_new_wallet, switching_primary, primary_not_connected |
authMode: AuthModeType | This enum type specifies whether the SDK\’s users will need to sign to authenticate and prove ownership of their account, or just connect is enough. This can be connect-only or connect-and-sign |
authToken: getAuthToken() | JSON web token (JWT) stored if the user is authenticated. This is the authenticated user’s token. See: backend verification. |
awaitingSignatureState: AwaitingSignatureState | This enum type specifies the current state while waiting for a signature of a new wallet to link in a multi-wallet enabled environment. This can be idle, linking_new_wallet, transferring_wallet |
handleLogOut: () => Promise | A helper-method to log-out the currently authenticated user account. |
handleUnlinkWallet(walletId: string): Promise | Helper function to unlink a wallet given a wallet ID from the user account. |
isFullyConnected: boolean | Indicates that all wallets specified in WalletsByChain are fully connected. If no WalletsByChain prop is provided, indicates whether the user has connected a single wallet. |
isVerificationInProgress: boolean | Whether any verifications are in progress for the current user (ex. connect, sign and email login verifications). |
loadingNetwork: boolean | Returns true when the SDK is looking for the network of the primary wallet\’s wallet connector. |
multiWalletWidgetState: MultiWalletWidgetState | This enum type specifies the current state of the widget in a multi-wallet enabled environment. This can be idle, awaiting_account_switch, awaiting_connection, awaiting_signature, detected_known_secondary_wallet, detected_new_wallet |
network: number | undefined | This represents the current network selected for the primary wallet |
networkConfigurations: NetworkConfigurationMap | undefined | This contains the current network configurations for various EVM and Solana chains. These information includes chain ID, RPC URLs, and other important information. |
primaryWallet: Wallet | null | An instance of a Wallet that represents the most recent connected Wallet. |
qrcodeUri: string | URI for the QR code to scan in the current modal. |
redirectUrl?: string | URL used for redirecting back after connecting with farcaster |
rpcProviders: DynamicRPCProviders | List of RPC providers and their settings to communicate with web3 services. These providers are configured on Dynamic’s dashboard. |
sdkHasLoaded: boolean | Whether the sdk’s data is done loading — useful for avoiding stale data flashes by not rendering until the sdk is done loading. |
selectedTabIndex: number | The selected tab index when using the wallet list view tabs feature |
setAuthMode: Dispatch<SetStateAction<AuthModeType>> | Sets the current authentication mode of branded wallets (“connect-and-sign” or “connect-only”). Note: does nothing if the user is already logged in. You might also want to toggle the initialAuthenticationMode prop. |
setDefaultTabIndex: (tabIndex: number) => void | Sets the default tab index when using the wallet list view tabs feature |
setMultiWalletWidgetState: MultiWalletWidgetStateSetter | It controls the intended state for a multi-wallet enabled environment. |
setPrimaryWallet: (walletId: string) => void | In a multi-wallet environment, this function can be used to indicate that a wallet, given the wallet ID, should be considered the primary wallet. |
setSelectedTabIndex: Dispatch<SetStateAction<number>> | Sets the selected tab index when using the wallet list view tabs feature |
setShowAuthFlow: Dispatch<SetStateAction> | It controls whether or not to display the DynamicAuthFlow SDK component. |
setShowQrcodeModal: Dispatch<SetStateAction> | It controls whether or not to display a QR code modal. |
showAuthFlow: boolean | The value set by setShowAuthFlow, it controls whether or not to display the DynamicAuthFlow SDK component. |
showQrcodeModal: boolean | Value set by setShowQrcodeModal, it controls whether or not to display a QR code modal. |
user: UserProfile | null | The user object of the currently authenticated user. |
userWithMissingInfo: UserProfile | undefined | Present if the user is authenticated but hasn’t finished onboarding (i.e. mandatory info capture/MFA), undefined if the user hasn’t started the login/signup process or has already fully completed it. |
walletConnector: WalletConnector | null | An instance of a WalletConnector that represents the most recent connected Wallet. |
walletConnectorOptions: WalletOption[] | List of all available wallet options the environment’s SDK users can select. |
If you’re looking to access the current user or session’s wallets, like you
would with linkedWallets
, secondaryWallets
and connectedWallets
in
previous versions, check out the new
useUserWallets hook.
Examples
setShowAuthFlow
- use it to start signature request from user
primaryWallet
- use it to make operations on the currently active wallet
- method to simply fetch balance of users wallet:
- get users primary wallet
- get all connected wallets by primary wallet connector
walletConnector
- use it to use currently connected walletConnector instead of primaryWallet
handleLogOut
- use it to log out currently logged in user
authToken
- use it to get authenticated user jwt
isVerificationInProgress
- use it along with onAuthFlowClose to tell whether it was manually closed or closed due to a verification process
Was this page helpful?