diff --git a/web/account/siwe-login-form.react.js b/web/account/siwe-login-form.react.js --- a/web/account/siwe-login-form.react.js +++ b/web/account/siwe-login-form.react.js @@ -48,7 +48,10 @@ import { useSelector } from '../redux/redux-utils.js'; import { getVersionUnsupportedError } from '../utils/version-utils.js'; -type SIWELogInError = 'account_does_not_exist' | 'client_version_unsupported'; +type SIWELogInError = + | 'account_does_not_exist' + | 'client_version_unsupported' + | 'retry_from_native'; type SIWELoginFormProps = { +cancelSIWEAuthFlow: () => void, @@ -181,6 +184,8 @@ messageForException === 'unsupported_version' ) { setError('client_version_unsupported'); + } else if (messageForException === 'retry_from_native') { + setError('retry_from_native'); } throw e; } @@ -280,6 +285,31 @@ ); } else if (error === 'client_version_unsupported') { errorText =

{getVersionUnsupportedError()}

; + } else if (error === 'retry_from_native') { + errorText = ( + <> +

+ No primary device found for that Ethereum wallet! +

+

+ Please try logging in from a mobile device to establish your primary + device. Comm relies on a primary device capable of scanning QR codes + in order to authorize secondary devices. Once you’ve logged in + from a mobile device, you will be able to log in from your browser. +

+

+ You can install our iOS app  + + here + + , or our Android app  + + here + + . +

+ + ); } return (