Safari Blocking Popups, is there a redirect option for Plug and Play

Multiple users are saying that popups now blocked by safari devices by default. This results in a perceived “infinite loader” for social logins when it is supposed to generate a popup. Is redirect an option for Plug and Play, if not can it be added as an option? This will block out a lot of users from easy use of web3auth’s otherwise great onboarding.

Please provide the following details too when asking for help in this category:

  • SDK Version: 7.0.2
  • Platform: Ios Iphone
  • Browser Console Screenshots:
  • Related to Custom Authentication? Please provide the following info too: (Optional)
    • Verifier Name:
    • JWKS Endpoint:
    • Sample idToken(JWT)

Please provide the Web3Auth initialization and login code snippet below:

@vjgee hi team looks like there are a few options one is to give us an option for a redirect in PnP, another is potentially to launch as a tab (like dashboard.web3auth.io does currently) and finally you can use a diff methodology to launch for safari which works even if popups blocked. Whichever solution, I think this is critical for broader user base adoption

@andrew please see here, how redirect mode is selected instead of popup. If your user base has a lot of safari users, please use redirect instead of popup.

1 Like

thank you @maharshi! quick follow up, i implemented this and the redirect works! however, upon connecting, getting this error:

Uncaught Error: Provider does not have a request or send method to use.

any idea what may be causing this? If i remove the openloginadapter const i do not get this error.

@one2all.test There are few things that I suspect,

  1. What’s the type of provider you are using, is it SafeEventEmitterProvider or IProvider?
  2. Are you using web3.js or ethers.js? If web3.js which version it is?

Iprovider and 1.7.5 web3.js thx

Web3.js v4 would work with IProvider. Try upgrading it using the migration guide they provide. If you want you can take a look at the pnp examples repo using web3.js v4.

hm we have a bit of an issue as we are using plain vanilla JS and i believe web3.js v4 uses typescript. i don’t see a web3.min.js like i did for v1.7+ . is there a reason why openlogin adapter needs web3 v4 for the provider to be recognized? trying to understand thx

@maharshi quick update i think this works once we update to latest v7.0.2 which is awesome! However, we then run into the whitelabel error for Base vs Growth plans. Can the team please look into that there are several posts about it.

I think the issue is with the torus signer logic. it is basically returning everything as “is_whitelabel=true” in the header

if you manually set that “is_whitelabel=false” you get a success: true message

So the question is, what is causing that is_whitelabel to be set to true and can we fix that? I have yet to be able to get it to return “false” even after removing a ton of stuff like uiconfig etc.

@maharshi i’m going to comment in this thread just to stay on topic:

Hello everyone,
Apologies for the delay in this.
whitelabel setting was falsely triggered due to default language and browser auto mode settings.
This is fixed now on our end and the false prompt won’t be shown anymore.

Thanks for your patience

1 Like

works now thank you!