Arcana Auth SDK provides user authentication and blockchain signing functionality via the embedded Web3 wallet - the Arcana wallet. The Arcana wallet works in the context of the application and allows authenticated users to add and configure any EVM-compatible network or switch between the configured networks.
Configuring, adding, and switching network features in the Arcana wallet behave differently depending upon how an application developer has integrated and initialized the Arcana Auth SDK.
Network Switching Behavior
alwaysVisible input parameter configured by the application developer at the time of instantiating the
AuthProvider, controls the blockchain transaction signing experience for the user.
Let's take a look and how network switching behavior varies depending on
alwaysVisible configuration settings.
In the widget mode,
alwaysVisible = false.
In this case a network change can be triggered only programmatically by the application after the following conditions are met:
- The wallet has been instantiated by the application,
- The application user must approve network change requests explicitly via the pop-up wallet screen.
The application user alone, independently cannot switch the blockchain network in the Arcana wallet. Only the application developer can initiate a network switch programmatically but that itself will not suffice. The application user is also required to approve the programmatically initiated network change by the application developer before a network switch can happen.
Full UI Mode
In the full UI mode,
alwaysVisible = true (default).
In this case, the Arcana wallet will always be visible in the application context. The wallet UI can be minimized and expanded by the user. Both application developer as well as users can switch and add networks.
The application developer can programmatically add to the built-in list of networks and the wallet displays them for the user to choose from.
Application users can use the wallet UI to either switch to a different network from the list of available networks or they can add and configure a new network in the wallet UI.
Custom Network Added by Users
Only the list of networks configured by the developer programmatically is persisted across the user login sessions. Any additional blockchain network configurations added by the application users are only stored locally. Users have to add those custom network configuration settings every time they log in.