diff --git a/packages/web/src/javascripts/Utils/ManageSubscription.ts b/packages/web/src/javascripts/Utils/ManageSubscription.ts index 3b3c9a01c..112736533 100644 --- a/packages/web/src/javascripts/Utils/ManageSubscription.ts +++ b/packages/web/src/javascripts/Utils/ManageSubscription.ts @@ -1,14 +1,18 @@ -import { SNApplication } from '@standardnotes/snjs' +import { Environment, SNApplication } from '@standardnotes/snjs' + +export async function openSubscriptionDashboard(application: SNApplication) { + const token = await application.getNewSubscriptionToken() + if (!token) { + return + } + + const url = `${window.dashboardUrl}?subscription_token=${token}` + + if (application.deviceInterface.environment === Environment.NativeMobileWeb) { + application.deviceInterface.openUrl(url) + return + } -export function openSubscriptionDashboard(application: SNApplication): void { const windowProxy = window.open('', '_blank') - application - .getNewSubscriptionToken() - .then((token) => { - if (!token) { - return - } - ;(windowProxy as WindowProxy).location = `${window.dashboardUrl}?subscription_token=${token}` - }) - .catch(console.error) + ;(windowProxy as WindowProxy).location = url }