OneSignal/react-onesignal

[Bug]: Adding promptOptions to init shows a premature prompt

DanyPell opened this issue · 3 comments

What happened?

Using 3.0.1.

When filling promptOptions, a prompt shows on page load (with my updated text), however, since it is only an init method, it should not do that. My config to reproduce (uncomment promptOptions).

await OneSignal.init({
    appId: oneSignalAppId,
    safari_web_id: oneSignalSafariId,
    notifyButton: { enable: false },
    allowLocalhostAsSecureOrigin: !isProduction,
    autoPrompt: false,
    autoResubscribe: true,
    // Maybe a but in the library because although it works (proper text shown in prompt), it immediately shows a prompt on page load...
    // promptOptions: {
    //     actionMessage: 'Get notified when someone accepts your friend requests and for new messages.',
    //     acceptButton: 'ALLOW',
    //     cancelButton: 'No Thanks',
    // }

});

I tried adding the promptOptions in the OneSignal.Slidedown.promptPush method but it does not accept such options. Which would be a better place to add them, by the way.

What browsers are you seeing the problem on?

Chrome (Chromium)

What operating system are you running?

Latest iOS in Mac M1 but it is likely just a library issue

Steps to reproduce?

As explained

What did you expect to happen?

A prompt should not show on page load simply because of adding promptOptions in the init method.

Relevant log output

No response

I add the same issue, and I just had my Init parameters in the wrong format.

Try with something like that :
{ promptOptions: { slidedown: { prompts: [{ type: "push", autoPrompt: false, text: { actionMessage: 'Get notified when someone accepts your friend requests and for new messages.', acceptButton: 'ALLOW', cancelButton: 'No Thanks', } delay: { pageViews: 1, timeDelay: 10 }, }] } }, }