Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/languages/de.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Sie haben ${policyName} erfolgreich auf den Control-Tarif upgegradet! <a href="${subscriptionLink}">Sehen Sie sich Ihr Abonnement</a> für weitere Details an.</centered-text>`,
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: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -249,6 +249,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>You've successfully upgraded ${policyName} to the Control plan! <a href="${subscriptionLink}">View your subscription</a> for more details.</centered-text>`,
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: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/es.ts
Original file line number Diff line number Diff line change
Expand Up @@ -247,6 +247,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Has actualizado con éxito ${policyName} al plan Controlar. <a href="${subscriptionLink}">Ver su suscripción</a> para obtener más información.</centered-text>`,
gotIt: 'Entendido, gracias.',
},
commonFeatures: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/fr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Vous avez réussi à passer de ${policyName} au forfait Control ! <a href="${subscriptionLink}">Consultez votre abonnement</a> pour plus de détails.</centered-text>`,
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: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/it.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Hai aggiornato con successo ${policyName} al piano Control! <a href="${subscriptionLink}">Visualizza il tuo abbonamento</a> per maggiori dettagli.</centered-text>`,
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: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/ja.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -5439,11 +5440,10 @@ const translations = {
upgradeToUnlock: 'この機能をアンロックする',
completed: {
headline: `ワークスペースをアップグレードしました!`,
successMessage: ({policyName}: ReportPolicyNameParams) => `${policyName}をコントロールプランにアップグレードしました!`,
successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) =>
`<centered-text>${policyName}をコントロールプランにアップグレードしました!詳細については、<a href="${subscriptionLink}">サブスクリプションをご確認</a>ください。</centered-text>`,
categorizeMessage: `Collectプランのワークスペースに正常にアップグレードされました。これで経費を分類できます!`,
travelMessage: `Collectプランのワークスペースに正常にアップグレードされました。これで、旅行の予約と管理を開始できます!`,
viewSubscription: 'サブスクリプションを表示',
moreDetails: '詳細については。',
gotIt: '了解しました、ありがとうございます。',
},
commonFeatures: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/nl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Je hebt ${policyName} succesvol geüpgraded naar het Control-abonnement! <a href="${subscriptionLink}">Bekijk je abonnement</a> voor meer informatie.</centered-text>`,
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: {
Expand Down
6 changes: 6 additions & 0 deletions src/languages/params.ts
Original file line number Diff line number Diff line change
Expand Up @@ -850,6 +850,11 @@ type MergeFailureDescriptionGenericParams = {
email: string;
};

type UpgradeSuccessMessageParams = {
policyName: string;
subscriptionLink: string;
};

type DomainPermissionInfoRestrictionParams = {
domain: string;
};
Expand Down Expand Up @@ -1147,6 +1152,7 @@ export type {
MergeSuccessDescriptionParams,
MergeFailureUncreatedAccountDescriptionParams,
MergeFailureDescriptionGenericParams,
UpgradeSuccessMessageParams,
DomainPermissionInfoRestrictionParams,
SubmittedWithMemoParams,
};
6 changes: 3 additions & 3 deletions src/languages/pl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Pomyślnie zaktualizowano ${policyName} do planu Control! Aby uzyskać więcej informacji, <a href="${subscriptionLink}">sprawdź swoją subskrypcję</a>.</centered-text>`,
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: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/pt-BR.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -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) =>
`<centered-text>Você atualizou com sucesso o ${policyName} para o plano Controle! <a href="${subscriptionLink}">Veja sua assinatura</a> para mais detalhes.</centered-text>`,
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: {
Expand Down
6 changes: 3 additions & 3 deletions src/languages/zh-hans.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ import type {
UpdatePolicyCustomUnitParams,
UpdatePolicyCustomUnitTaxEnabledParams,
UpdateRoleParams,
UpgradeSuccessMessageParams,
UsePlusButtonParams,
UserIsAlreadyMemberParams,
UserSplitParams,
Expand Down Expand Up @@ -5371,11 +5372,10 @@ const translations = {
upgradeToUnlock: '解锁此功能',
completed: {
headline: `您的工作区已升级!`,
successMessage: ({policyName}: ReportPolicyNameParams) => `您已成功将 ${policyName} 升级到 Control 计划!`,
successMessage: ({policyName, subscriptionLink}: UpgradeSuccessMessageParams) =>
`<centered-text>您已成功将 ${policyName} 升级到控制计划!<a href="${subscriptionLink}">查看订阅详情</a>。</centered-text>`,
categorizeMessage: `您已成功升级到 Collect 计划的工作区。现在您可以对费用进行分类了!`,
travelMessage: `您已成功升级到 Collect 计划的工作区。现在您可以开始预订和管理旅行了!`,
viewSubscription: '查看您的订阅',
moreDetails: '了解更多详情。',
gotIt: '知道了,谢谢',
},
commonFeatures: {
Expand Down
30 changes: 15 additions & 15 deletions src/pages/workspace/upgrade/UpgradeConfirmation.tsx
Original file line number Diff line number Diff line change
@@ -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';
Expand All @@ -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 <Text style={[styles.textAlignCenter, styles.w100]}>{translate('workspace.upgrade.completed.categorizeMessage')}</Text>;
}

if (isTravelUpgrade) {
return translate('workspace.upgrade.completed.travelMessage');
return <Text style={[styles.textAlignCenter, styles.w100]}>{translate('workspace.upgrade.completed.travelMessage')}</Text>;
}

const backTo = Navigation.getActiveRoute();
const subscriptionLink = `${environmentURL}/${ROUTES.SETTINGS_SUBSCRIPTION.getRoute(backTo)}`;

return (
<>
{translate('workspace.upgrade.completed.successMessage', {policyName})}{' '}
<TextLink
style={styles.link}
onPress={() => Navigation.navigate(ROUTES.SETTINGS_SUBSCRIPTION.getRoute(Navigation.getActiveRoute()))}
>
{translate('workspace.upgrade.completed.viewSubscription')}
</TextLink>{' '}
{translate('workspace.upgrade.completed.moreDetails')}
</>
<View style={[styles.renderHTML, styles.w100]}>
<RenderHTML html={translate('workspace.upgrade.completed.successMessage', {policyName, subscriptionLink})} />
</View>
);
}, [isCategorizing, isTravelUpgrade, policyName, styles.link, translate]);
}, [environmentURL, isCategorizing, isTravelUpgrade, policyName, styles.renderHTML, styles.textAlignCenter, styles.w100, translate]);

return (
<ConfirmationPage
heading={translate('workspace.upgrade.completed.headline')}
description={description}
descriptionComponent={description}
shouldShowButton
onButtonPress={onConfirmUpgrade}
buttonText={translate('workspace.upgrade.completed.gotIt')}
Expand Down
17 changes: 10 additions & 7 deletions tests/ui/WorkspaceUpgradeTest.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import {NavigationContainer} from '@react-navigation/native';
import {act, fireEvent, render, screen} from '@testing-library/react-native';
import React from 'react';
import Onyx from 'react-native-onyx';
import HTMLEngineProvider from '@components/HTMLEngineProvider';
import {WRITE_COMMANDS} from '@libs/API/types';
import {convertToShortDisplayString} from '@libs/CurrencyUtils';
import createPlatformStackNavigator from '@libs/Navigation/PlatformStackNavigation/createPlatformStackNavigator';
Expand All @@ -25,13 +26,15 @@ const Stack = createPlatformStackNavigator<SettingsNavigatorParamList>();
const renderPage = (initialRouteName: typeof SCREENS.WORKSPACE.UPGRADE, initialParams: SettingsNavigatorParamList[typeof SCREENS.WORKSPACE.UPGRADE]) => {
return render(
<NavigationContainer>
<Stack.Navigator initialRouteName={initialRouteName}>
<Stack.Screen
name={SCREENS.WORKSPACE.UPGRADE}
component={WorkspaceUpgradePage}
initialParams={initialParams}
/>
</Stack.Navigator>
<HTMLEngineProvider>
<Stack.Navigator initialRouteName={initialRouteName}>
<Stack.Screen
name={SCREENS.WORKSPACE.UPGRADE}
component={WorkspaceUpgradePage}
initialParams={initialParams}
/>
</Stack.Navigator>
</HTMLEngineProvider>
</NavigationContainer>,
);
};
Expand Down
Loading