diff --git a/src/languages/de.ts b/src/languages/de.ts index 09121353a227..02cbc14f1ccd 100644 --- a/src/languages/de.ts +++ b/src/languages/de.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5457,11 +5458,10 @@ const translations = { upgradeToUnlock: 'Diese Funktion freischalten', completed: { headline: `Sie haben Ihren Arbeitsbereich aktualisiert!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `Sie haben ${policyName} erfolgreich auf den Control-Plan hochgestuft!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Sie haben ${policyName} erfolgreich auf den Control-Tarif upgegradet! Sehen Sie sich Ihr Abonnement für weitere Details an.`, categorizeMessage: `Sie haben erfolgreich auf einen Workspace im Collect-Plan upgegradet. Jetzt können Sie Ihre Ausgaben kategorisieren!`, travelMessage: `Sie haben erfolgreich auf einen Workspace im Collect-Plan aufgerüstet. Jetzt können Sie mit der Buchung und Verwaltung von Reisen beginnen!`, - viewSubscription: 'Abonnements anzeigen', - moreDetails: 'für mehr Details.', gotIt: 'Verstanden, danke', }, commonFeatures: { diff --git a/src/languages/en.ts b/src/languages/en.ts index 6027bab24c54..a52654e2d873 100755 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -249,6 +249,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5434,11 +5435,10 @@ const translations = { upgradeToUnlock: 'Unlock this feature', completed: { headline: `You've upgraded your workspace!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `You've successfully upgraded ${policyName} to the Control plan!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `You've successfully upgraded ${policyName} to the Control plan! View your subscription for more details.`, categorizeMessage: `You've successfully upgraded to a workspace on the Collect plan. Now you can categorize your expenses!`, travelMessage: `You've successfully upgraded to a workspace on the Collect plan. Now you can start booking and managing travel!`, - viewSubscription: 'View your subscription', - moreDetails: 'for more details.', gotIt: 'Got it, thanks', }, commonFeatures: { diff --git a/src/languages/es.ts b/src/languages/es.ts index fa98c6548046..4fba0e08af08 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -247,6 +247,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5469,9 +5470,8 @@ const translations = { headline: 'Has mejorado tu espacio de trabajo.', categorizeMessage: `Has actualizado con éxito a un espacio de trabajo en el plan Recopilar. ¡Ahora puedes categorizar tus gastos!`, travelMessage: 'Has mejorado con éxito a un espacio de trabajo en el plan Recopilar. ¡Ahora puedes comenzar a reservar y gestionar viajes!', - successMessage: ({policyName}: ReportPolicyNameParams) => `Has actualizado con éxito ${policyName} al plan Controlar.`, - viewSubscription: 'Ver su suscripción', - moreDetails: 'para obtener más información.', + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Has actualizado con éxito ${policyName} al plan Controlar. Ver su suscripción para obtener más información.`, gotIt: 'Entendido, gracias.', }, commonFeatures: { diff --git a/src/languages/fr.ts b/src/languages/fr.ts index 2edaa8282df9..9b5250e3bca5 100644 --- a/src/languages/fr.ts +++ b/src/languages/fr.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5470,11 +5471,10 @@ const translations = { upgradeToUnlock: 'Débloquez cette fonctionnalité', completed: { headline: `Vous avez amélioré votre espace de travail !`, - successMessage: ({policyName}: ReportPolicyNameParams) => `Vous avez réussi à passer ${policyName} au plan Control !`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Vous avez réussi à passer de ${policyName} au forfait Control ! Consultez votre abonnement pour plus de détails.`, categorizeMessage: `Vous avez réussi à passer à un espace de travail sur le plan Collect. Vous pouvez maintenant catégoriser vos dépenses !`, travelMessage: `Vous avez réussi à passer à un espace de travail sur le plan Collect. Vous pouvez maintenant commencer à réserver et gérer vos voyages !`, - viewSubscription: 'Voir votre abonnement', - moreDetails: 'pour plus de détails.', gotIt: 'Compris, merci', }, commonFeatures: { diff --git a/src/languages/it.ts b/src/languages/it.ts index b18546c176bb..6c69294fe692 100644 --- a/src/languages/it.ts +++ b/src/languages/it.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5469,11 +5470,10 @@ const translations = { upgradeToUnlock: 'Sblocca questa funzione', completed: { headline: `Hai aggiornato il tuo spazio di lavoro!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `Hai aggiornato con successo ${policyName} al piano Control!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Hai aggiornato con successo ${policyName} al piano Control! Visualizza il tuo abbonamento per maggiori dettagli.`, categorizeMessage: `Hai effettuato con successo l'upgrade a un workspace con il piano Collect. Ora puoi categorizzare le tue spese!`, travelMessage: `Hai eseguito con successo l'upgrade a un workspace con il piano Collect. Ora puoi iniziare a prenotare e gestire i viaggi!`, - viewSubscription: 'Visualizza il tuo abbonamento', - moreDetails: 'per maggiori dettagli.', gotIt: 'Ricevuto, grazie', }, commonFeatures: { diff --git a/src/languages/ja.ts b/src/languages/ja.ts index 2f9698d448fc..e07d09ef4d5a 100644 --- a/src/languages/ja.ts +++ b/src/languages/ja.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5439,11 +5440,10 @@ const translations = { upgradeToUnlock: 'この機能をアンロックする', completed: { headline: `ワークスペースをアップグレードしました!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `${policyName}をコントロールプランにアップグレードしました!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `${policyName}をコントロールプランにアップグレードしました!詳細については、サブスクリプションをご確認ください。`, categorizeMessage: `Collectプランのワークスペースに正常にアップグレードされました。これで経費を分類できます!`, travelMessage: `Collectプランのワークスペースに正常にアップグレードされました。これで、旅行の予約と管理を開始できます!`, - viewSubscription: 'サブスクリプションを表示', - moreDetails: '詳細については。', gotIt: '了解しました、ありがとうございます。', }, commonFeatures: { diff --git a/src/languages/nl.ts b/src/languages/nl.ts index 0e0bfd7311ba..5f25fcfa8fe3 100644 --- a/src/languages/nl.ts +++ b/src/languages/nl.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5467,11 +5468,10 @@ const translations = { upgradeToUnlock: 'Ontgrendel deze functie', completed: { headline: `Je hebt je werkruimte geüpgraded!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `Je hebt ${policyName} met succes geüpgraded naar het Control-plan!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Je hebt ${policyName} succesvol geüpgraded naar het Control-abonnement! Bekijk je abonnement voor meer informatie.`, categorizeMessage: `Je bent succesvol geüpgraded naar een werkruimte op het Collect-plan. Nu kun je je uitgaven categoriseren!`, travelMessage: `Je bent succesvol geüpgraded naar een werkruimte op het Collect-plan. Nu kun je beginnen met het boeken en beheren van reizen!`, - viewSubscription: 'Bekijk je abonnement', - moreDetails: 'voor meer details.', gotIt: 'Begrepen, bedankt.', }, commonFeatures: { diff --git a/src/languages/params.ts b/src/languages/params.ts index 6db4f1b39a3f..cf68fa558bbc 100644 --- a/src/languages/params.ts +++ b/src/languages/params.ts @@ -850,6 +850,11 @@ type MergeFailureDescriptionGenericParams = { email: string; }; +type UpgradeSuccessMessageParams = { + policyName: string; + subscriptionLink: string; +}; + type DomainPermissionInfoRestrictionParams = { domain: string; }; @@ -1147,6 +1152,7 @@ export type { MergeSuccessDescriptionParams, MergeFailureUncreatedAccountDescriptionParams, MergeFailureDescriptionGenericParams, + UpgradeSuccessMessageParams, DomainPermissionInfoRestrictionParams, SubmittedWithMemoParams, }; diff --git a/src/languages/pl.ts b/src/languages/pl.ts index 138e8275708d..d93bf3f4a1c8 100644 --- a/src/languages/pl.ts +++ b/src/languages/pl.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5455,11 +5456,10 @@ const translations = { upgradeToUnlock: 'Odblokuj tę funkcję', completed: { headline: `Zaktualizowałeś swoje miejsce pracy!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `Pomyślnie zaktualizowano ${policyName} do planu Control!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Pomyślnie zaktualizowano ${policyName} do planu Control! Aby uzyskać więcej informacji, sprawdź swoją subskrypcję.`, categorizeMessage: `Pomyślnie zaktualizowano do przestrzeni roboczej w planie Collect. Teraz możesz kategoryzować swoje wydatki!`, travelMessage: `Pomyślnie zaktualizowano do przestrzeni roboczej w planie Collect. Teraz możesz zacząć rezerwować i zarządzać podróżami!`, - viewSubscription: 'Zobacz swoją subskrypcję', - moreDetails: 'aby uzyskać więcej szczegółów.', gotIt: 'Zrozumiałem, dzięki', }, commonFeatures: { diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts index 2ee919995630..30c4104277b3 100644 --- a/src/languages/pt-BR.ts +++ b/src/languages/pt-BR.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5465,11 +5466,10 @@ const translations = { upgradeToUnlock: 'Desbloquear este recurso', completed: { headline: `Você atualizou seu espaço de trabalho!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `Você atualizou com sucesso ${policyName} para o plano Control!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `Você atualizou com sucesso o ${policyName} para o plano Controle! Veja sua assinatura para mais detalhes.`, categorizeMessage: `Você atualizou com sucesso para um workspace no plano Collect. Agora você pode categorizar suas despesas!`, travelMessage: `Você atualizou com sucesso para um espaço de trabalho no plano Collect. Agora você pode começar a reservar e gerenciar viagens!`, - viewSubscription: 'Ver sua assinatura', - moreDetails: 'para mais detalhes.', gotIt: 'Entendi, obrigado', }, commonFeatures: { diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts index b9090c410c0e..b0a1e3fb3dd1 100644 --- a/src/languages/zh-hans.ts +++ b/src/languages/zh-hans.ts @@ -260,6 +260,7 @@ import type { UpdatePolicyCustomUnitParams, UpdatePolicyCustomUnitTaxEnabledParams, UpdateRoleParams, + UpgradeSuccessMessageParams, UsePlusButtonParams, UserIsAlreadyMemberParams, UserSplitParams, @@ -5371,11 +5372,10 @@ const translations = { upgradeToUnlock: '解锁此功能', completed: { headline: `您的工作区已升级!`, - successMessage: ({policyName}: ReportPolicyNameParams) => `您已成功将 ${policyName} 升级到 Control 计划!`, + successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) => + `您已成功将 ${policyName} 升级到控制计划!查看订阅详情`, categorizeMessage: `您已成功升级到 Collect 计划的工作区。现在您可以对费用进行分类了!`, travelMessage: `您已成功升级到 Collect 计划的工作区。现在您可以开始预订和管理旅行了!`, - viewSubscription: '查看您的订阅', - moreDetails: '了解更多详情。', gotIt: '知道了,谢谢', }, commonFeatures: { diff --git a/src/pages/workspace/upgrade/UpgradeConfirmation.tsx b/src/pages/workspace/upgrade/UpgradeConfirmation.tsx index 794223132082..438ac3e60348 100644 --- a/src/pages/workspace/upgrade/UpgradeConfirmation.tsx +++ b/src/pages/workspace/upgrade/UpgradeConfirmation.tsx @@ -1,6 +1,9 @@ import React, {useMemo} from 'react'; +import {View} from 'react-native'; import ConfirmationPage from '@components/ConfirmationPage'; -import TextLink from '@components/TextLink'; +import RenderHTML from '@components/RenderHTML'; +import Text from '@components/Text'; +import useEnvironment from '@hooks/useEnvironment'; import useLocalize from '@hooks/useLocalize'; import useThemeStyles from '@hooks/useThemeStyles'; import Navigation from '@libs/Navigation/Navigation'; @@ -16,34 +19,31 @@ type Props = { function UpgradeConfirmation({policyName, onConfirmUpgrade, isCategorizing, isTravelUpgrade}: Props) { const {translate} = useLocalize(); const styles = useThemeStyles(); + const {environmentURL} = useEnvironment(); const description = useMemo(() => { if (isCategorizing) { - return translate('workspace.upgrade.completed.categorizeMessage'); + return {translate('workspace.upgrade.completed.categorizeMessage')}; } if (isTravelUpgrade) { - return translate('workspace.upgrade.completed.travelMessage'); + return {translate('workspace.upgrade.completed.travelMessage')}; } + const backTo = Navigation.getActiveRoute(); + const subscriptionLink = `${environmentURL}/${ROUTES.SETTINGS_SUBSCRIPTION.getRoute(backTo)}`; + return ( - <> - {translate('workspace.upgrade.completed.successMessage', {policyName})}{' '} - Navigation.navigate(ROUTES.SETTINGS_SUBSCRIPTION.getRoute(Navigation.getActiveRoute()))} - > - {translate('workspace.upgrade.completed.viewSubscription')} - {' '} - {translate('workspace.upgrade.completed.moreDetails')} - + + + ); - }, [isCategorizing, isTravelUpgrade, policyName, styles.link, translate]); + }, [environmentURL, isCategorizing, isTravelUpgrade, policyName, styles.renderHTML, styles.textAlignCenter, styles.w100, translate]); return ( (); const renderPage = (initialRouteName: typeof SCREENS.WORKSPACE.UPGRADE, initialParams: SettingsNavigatorParamList[typeof SCREENS.WORKSPACE.UPGRADE]) => { return render( - - - + + + + + , ); };