From 641c9230240dc45bb071375c9e9b40a52c4c6997 Mon Sep 17 00:00:00 2001 From: Ben Limpich Date: Fri, 29 May 2026 13:34:39 -0700 Subject: [PATCH 1/3] Lock workspace Travel toggle while Travel Invoicing is enabled --- src/languages/de.ts | 3 +++ src/languages/en.ts | 3 +++ src/languages/es.ts | 3 +++ src/languages/fr.ts | 3 +++ src/languages/it.ts | 3 +++ src/languages/ja.ts | 3 +++ src/languages/nl.ts | 3 +++ src/languages/pl.ts | 3 +++ src/languages/pt-BR.ts | 3 +++ src/languages/zh-hans.ts | 3 +++ .../WorkspaceMoreFeaturesPage/index.tsx | 19 +++++++++++++++++++ 11 files changed, 49 insertions(+) diff --git a/src/languages/de.ts b/src/languages/de.ts index 6b593d1ea205..0ee96e9b5f5b 100644 --- a/src/languages/de.ts +++ b/src/languages/de.ts @@ -5632,6 +5632,9 @@ _Für ausführlichere Anweisungen [besuchen Sie unsere Hilfeseite](${CONST.NETSU travel: { title: 'Reisen', subtitle: 'Buchen, verwalten und abstimmen Sie all Ihre Geschäftsreisen.', + disableTravelTitle: 'Deaktivieren Sie zuerst die Reiseabrechnung', + disableTravelPrompt: 'Die Reiseabrechnung ist für diesen Arbeitsbereich aktiviert. Deaktivieren Sie sie, bevor Sie Reisen deaktivieren können.', + disableTravelButton: 'Zu den Reiseeinstellungen', getStarted: { title: 'Los geht’s mit Expensify Travel', subtitle: 'Wir brauchen nur noch ein paar weitere Informationen zu deinem Unternehmen, dann bist du startklar.', diff --git a/src/languages/en.ts b/src/languages/en.ts index 3a645ca2c9d9..c8d34cffca4d 100644 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -5653,6 +5653,9 @@ const translations = { travel: { title: 'Travel', subtitle: 'Book, manage, and reconcile all your business travel.', + disableTravelTitle: 'Turn off Travel Invoicing first', + disableTravelPrompt: 'Travel Invoicing is enabled for this workspace. Turn it off before you can disable Travel.', + disableTravelButton: 'Go to Travel settings', getStarted: { title: 'Get started with Expensify Travel', subtitle: "We just need a few more pieces of info about your business, then you'll be ready for takeoff.", diff --git a/src/languages/es.ts b/src/languages/es.ts index 13e627a7495a..876ac9d33be8 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -5465,6 +5465,9 @@ ${amount} para ${merchant} - ${date}`, travel: { title: 'Viajes', subtitle: 'Reserva, gestiona y concilia todos tus viajes de negocios.', + disableTravelTitle: 'Desactiva primero la facturación de viajes', + disableTravelPrompt: 'La facturación de viajes está activada para este espacio de trabajo. Desactívala antes de poder desactivar Viajes.', + disableTravelButton: 'Ir a la configuración de Viajes', getStarted: { title: 'Comienza con Expensify Travel', subtitle: 'Solo necesitamos algunos datos más sobre tu empresa y estarás listo para despegar.', diff --git a/src/languages/fr.ts b/src/languages/fr.ts index 0f21d01d498c..0c79e98d83c8 100644 --- a/src/languages/fr.ts +++ b/src/languages/fr.ts @@ -5644,6 +5644,9 @@ _Pour des instructions plus détaillées, [visitez notre site d’aide](${CONST. travel: { title: 'Déplacements', subtitle: 'Réservez, gérez et rapprochez tous vos déplacements professionnels.', + disableTravelTitle: "Désactivez d'abord la facturation des déplacements", + disableTravelPrompt: 'La facturation des déplacements est activée pour cet espace de travail. Désactivez-la avant de pouvoir désactiver Déplacements.', + disableTravelButton: 'Aller aux paramètres de déplacement', getStarted: { title: 'Commencez avec Expensify Travel', subtitle: 'Nous avons simplement besoin de quelques informations supplémentaires sur votre entreprise, puis vous serez prêt à décoller.', diff --git a/src/languages/it.ts b/src/languages/it.ts index b3a2897424b5..b074d28414bf 100644 --- a/src/languages/it.ts +++ b/src/languages/it.ts @@ -5613,6 +5613,9 @@ _Per istruzioni più dettagliate, [visita il nostro sito di assistenza](${CONST. travel: { title: 'Viaggi', subtitle: 'Prenota, gestisci e riconcilia tutti i viaggi di lavoro.', + disableTravelTitle: 'Disattiva prima la fatturazione viaggi', + disableTravelPrompt: 'La fatturazione viaggi è attiva per questo spazio di lavoro. Disattivala prima di poter disattivare Viaggi.', + disableTravelButton: 'Vai alle impostazioni di Viaggi', getStarted: { title: 'Inizia con Expensify Travel', subtitle: 'Ci servono solo ancora alcune informazioni sulla tua attività, poi sarai pronto al decollo.', diff --git a/src/languages/ja.ts b/src/languages/ja.ts index b1240afd09a1..15c6f3ce4881 100644 --- a/src/languages/ja.ts +++ b/src/languages/ja.ts @@ -5564,6 +5564,9 @@ _詳しい手順については、[ヘルプサイトをご覧ください](${CO travel: { title: '出張', subtitle: '出張の予約、管理、精算をすべて一元管理。', + disableTravelTitle: '先に出張請求をオフにしてください', + disableTravelPrompt: 'このワークスペースでは出張請求が有効になっています。出張をオフにする前に、出張請求をオフにしてください。', + disableTravelButton: '出張設定に移動', getStarted: { title: 'Expensify Travel を使い始める', subtitle: 'ビジネスについてあと少しだけ情報を教えてください。準備が整い次第、すぐに開始できます。', diff --git a/src/languages/nl.ts b/src/languages/nl.ts index 38e0ed77bcd4..62475ad56262 100644 --- a/src/languages/nl.ts +++ b/src/languages/nl.ts @@ -5602,6 +5602,9 @@ _Voor meer gedetailleerde instructies, [bezoek onze help-site](${CONST.NETSUITE_ travel: { title: 'Reizen', subtitle: 'Boek, beheer en reconcilieer al je zakelijke reizen.', + disableTravelTitle: 'Schakel eerst reisfacturering uit', + disableTravelPrompt: 'Reisfacturering is ingeschakeld voor deze werkruimte. Schakel het uit voordat je Reizen kunt uitschakelen.', + disableTravelButton: 'Ga naar reisinstellingen', getStarted: { title: 'Aan de slag met Expensify Travel', subtitle: 'We hebben nog maar een paar extra gegevens over je bedrijf nodig, dan ben je klaar voor vertrek.', diff --git a/src/languages/pl.ts b/src/languages/pl.ts index 1ec5471d709e..3e33a5935549 100644 --- a/src/languages/pl.ts +++ b/src/languages/pl.ts @@ -5590,6 +5590,9 @@ _Aby uzyskać bardziej szczegółowe instrukcje, [odwiedź naszą stronę pomocy travel: { title: 'Podróże', subtitle: 'Rezerwuj, zarządzaj i uzgadniaj wszystkie wyjazdy służbowe.', + disableTravelTitle: 'Najpierw wyłącz fakturowanie podróży', + disableTravelPrompt: 'Fakturowanie podróży jest włączone dla tego obszaru roboczego. Wyłącz je, zanim będzie można wyłączyć Podróże.', + disableTravelButton: 'Przejdź do ustawień podróży', getStarted: { title: 'Pierwsze kroki z Expensify Travel', subtitle: 'Potrzebujemy jeszcze tylko kilku informacji o Twojej firmie, a potem będziesz gotowy do startu.', diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts index efe5f5795c6c..c675e0d93e82 100644 --- a/src/languages/pt-BR.ts +++ b/src/languages/pt-BR.ts @@ -5594,6 +5594,9 @@ _Para instruções mais detalhadas, [visite nossa central de ajuda](${CONST.NETS travel: { title: 'Viagens', subtitle: 'Reserve, gerencie e reconcilie todas as viagens de negócios da sua empresa.', + disableTravelTitle: 'Desative primeiro o faturamento de viagens', + disableTravelPrompt: 'O faturamento de viagens está ativado para este espaço de trabalho. Desative-o antes de poder desativar Viagens.', + disableTravelButton: 'Ir para as configurações de Viagens', getStarted: { title: 'Comece a usar o Expensify Travel', subtitle: 'Só precisamos de mais algumas informações sobre sua empresa e você estará pronto para decolar.', diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts index c24e73d2f61b..937455e5ab3b 100644 --- a/src/languages/zh-hans.ts +++ b/src/languages/zh-hans.ts @@ -5466,6 +5466,9 @@ _如需更详细的说明,请[访问我们的帮助网站](${CONST.NETSUITE_IM travel: { title: '差旅', subtitle: '预订、管理并对账您所有的商务差旅。', + disableTravelTitle: '请先关闭差旅开票', + disableTravelPrompt: '此工作区已启用差旅开票。请先将其关闭,然后才能关闭差旅功能。', + disableTravelButton: '前往差旅设置', getStarted: { title: '开始使用 Expensify Travel', subtitle: '我们只需要再获取一些关于您企业的信息,之后您就可以准备起飞了。', diff --git a/src/pages/workspace/WorkspaceMoreFeaturesPage/index.tsx b/src/pages/workspace/WorkspaceMoreFeaturesPage/index.tsx index ab5ee21d8d3b..03bc8f039493 100644 --- a/src/pages/workspace/WorkspaceMoreFeaturesPage/index.tsx +++ b/src/pages/workspace/WorkspaceMoreFeaturesPage/index.tsx @@ -35,6 +35,7 @@ import { isTimeTrackingEnabled, tryNavigateToSubmitWorkspaceUpgrade, } from '@libs/PolicyUtils'; +import {getIsTravelInvoicingEnabled, getTravelInvoicingCardSettingsKey} from '@libs/TravelInvoicingUtils'; import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper'; import type {WithPolicyAndFullscreenLoadingProps} from '@pages/workspace/withPolicyAndFullscreenLoading'; import withPolicyAndFullscreenLoading from '@pages/workspace/withPolicyAndFullscreenLoading'; @@ -120,10 +121,13 @@ function WorkspaceMoreFeaturesPage({policy, route}: WorkspaceMoreFeaturesPagePro const [cardList] = useOnyx(`${ONYXKEYS.COLLECTION.WORKSPACE_CARDS_LIST}`); const [cardSettings] = useOnyx(`${ONYXKEYS.COLLECTION.PRIVATE_EXPENSIFY_CARD_SETTINGS}${defaultFundID}`); + const [travelCardSettings] = useOnyx(getTravelInvoicingCardSettingsKey(workspaceAccountID)); + const workspaceCards = getAllCardsForWorkspace(workspaceAccountID, cardList, cardFeeds); const isSmartLimitEnabled = isSmartLimitEnabledUtil(workspaceCards); const settings = getCardSettings(cardSettings); const paymentBankAccountID = settings?.paymentBankAccountID; + const isTravelInvoicingEnabled = getIsTravelInvoicingEnabled(getCardSettings(travelCardSettings, CONST.TRAVEL.PROGRAM_TRAVEL_US)); const warnAccountingManagesOrganizeFeature = async () => { if (!hasAccountingConnection || !policyID) { @@ -202,6 +206,19 @@ function WorkspaceMoreFeaturesPage({policy, route}: WorkspaceMoreFeaturesPagePro navigateToConciergeChat(conciergeReportID, introSelected, currentUserAccountID, isSelfTourViewed, betas, false); }; + const promptDisableTravelViaInvoicing = async () => { + const {action} = await showConfirmModal({ + title: translate('workspace.moreFeatures.travel.disableTravelTitle'), + prompt: translate('workspace.moreFeatures.travel.disableTravelPrompt'), + confirmText: translate('workspace.moreFeatures.travel.disableTravelButton'), + cancelText: translate('common.cancel'), + }); + if (action !== ModalActions.CONFIRM || !policyID) { + return; + } + Navigation.navigate(ROUTES.WORKSPACE_TRAVEL.getRoute(policyID)); + }; + const promptDisableCompanyCardsViaConcierge = async () => { const {action} = await showConfirmModal({ title: translate('workspace.moreFeatures.companyCards.disableCardTitle'), @@ -491,6 +508,8 @@ function WorkspaceMoreFeaturesPage({policy, route}: WorkspaceMoreFeaturesPagePro subtitle={translate('workspace.moreFeatures.travel.subtitle')} isActive={policy?.isTravelEnabled ?? false} pendingAction={policy?.pendingFields?.isTravelEnabled} + disabled={isTravelInvoicingEnabled} + disabledAction={promptDisableTravelViaInvoicing} onToggle={(isEnabled) => { if (!policyID) { return; From 88f61ba5ef096f000fa153d2c917c312160a7593 Mon Sep 17 00:00:00 2001 From: Ben Limpich Date: Fri, 29 May 2026 13:34:39 -0700 Subject: [PATCH 2/3] Add tests for locked Travel toggle when Travel Invoicing enabled --- tests/ui/WorkspaceMoreFeaturesPageTest.tsx | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/tests/ui/WorkspaceMoreFeaturesPageTest.tsx b/tests/ui/WorkspaceMoreFeaturesPageTest.tsx index 87767b1b349c..9e62e5e7ac79 100644 --- a/tests/ui/WorkspaceMoreFeaturesPageTest.tsx +++ b/tests/ui/WorkspaceMoreFeaturesPageTest.tsx @@ -15,6 +15,7 @@ import * as CardUtils from '@libs/CardUtils'; import Navigation from '@libs/Navigation/Navigation'; import createPlatformStackNavigator from '@libs/Navigation/PlatformStackNavigation/createPlatformStackNavigator'; import * as PolicyUtils from '@libs/PolicyUtils'; +import {getTravelInvoicingCardSettingsKey} from '@libs/TravelInvoicingUtils'; import type {WorkspaceSplitNavigatorParamList} from '@navigation/types'; import WorkspaceMoreFeaturesPage from '@pages/workspace/WorkspaceMoreFeaturesPage'; import * as ReportActions from '@userActions/Report'; @@ -246,6 +247,57 @@ describe('WorkspaceMoreFeaturesPage', () => { }); }); + describe('Travel toggle (locked when Travel Invoicing is enabled)', () => { + const workspaceAccountID = LHNTestUtils.getFakePolicy().workspaceAccountID ?? CONST.DEFAULT_NUMBER_ID; + + const enableTravelInvoicing = () => Onyx.merge(getTravelInvoicingCardSettingsKey(workspaceAccountID), {[CONST.TRAVEL.PROGRAM_TRAVEL_US]: {isEnabled: true}}); + + it('locks the Travel switch when Travel Invoicing is enabled', async () => { + await TestHelper.signInWithTestUser(); + await act(async () => { + await Onyx.merge(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildPolicy({id: POLICY_ID, isTravelEnabled: true})); + await enableTravelInvoicing(); + }); + + renderPage({policyID: POLICY_ID}); + await waitForBatchedUpdatesWithAct(); + + await expect(findLockedSwitch('workspace.moreFeatures.travel.subtitle')).resolves.toBeOnTheScreen(); + }); + + it('leaves the Travel switch interactive when Travel Invoicing is not enabled', async () => { + await TestHelper.signInWithTestUser(); + await act(async () => { + await Onyx.merge(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildPolicy({id: POLICY_ID, isTravelEnabled: true})); + }); + + renderPage({policyID: POLICY_ID}); + await waitForBatchedUpdatesWithAct(); + + await expect(findUnlockedSwitch('workspace.moreFeatures.travel.subtitle')).resolves.toBeOnTheScreen(); + }); + + it('navigates to Travel settings when the user confirms the disable-Travel warning', async () => { + await TestHelper.signInWithTestUser(); + await act(async () => { + await Onyx.merge(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildPolicy({id: POLICY_ID, isTravelEnabled: true})); + await enableTravelInvoicing(); + }); + + renderPage({policyID: POLICY_ID}); + await waitForBatchedUpdatesWithAct(); + fireEvent.press(await findLockedSwitch('workspace.moreFeatures.travel.subtitle')); + + await waitFor(() => { + expect(screen.getByText(TestHelper.translateLocal('workspace.moreFeatures.travel.disableTravelPrompt'))).toBeOnTheScreen(); + }); + fireEvent.press(await screen.findByLabelText(TestHelper.translateLocal('workspace.moreFeatures.travel.disableTravelButton'))); + await waitForBatchedUpdatesWithAct(); + + expect(navigateSpy).toHaveBeenCalledWith(ROUTES.WORKSPACE_TRAVEL.getRoute(POLICY_ID)); + }); + }); + describe('Accounting toggle (locked when an integration is connected)', () => { it('locks the Accounting switch when the policy has an active connection', async () => { await TestHelper.signInWithTestUser(); From b8fa6c820d7a926cbd9fc1233e275a0b5f71a521 Mon Sep 17 00:00:00 2001 From: Ben Limpich Date: Fri, 29 May 2026 14:02:57 -0700 Subject: [PATCH 3/3] Apply Polyglot Parrot translation suggestions for Travel lock strings --- src/languages/de.ts | 4 ++-- src/languages/es.ts | 4 ++-- src/languages/fr.ts | 6 +++--- src/languages/it.ts | 4 ++-- src/languages/ja.ts | 6 +++--- src/languages/nl.ts | 6 +++--- src/languages/pl.ts | 4 ++-- src/languages/pt-BR.ts | 4 ++-- src/languages/zh-hans.ts | 2 +- 9 files changed, 20 insertions(+), 20 deletions(-) diff --git a/src/languages/de.ts b/src/languages/de.ts index 0ee96e9b5f5b..be42824abae8 100644 --- a/src/languages/de.ts +++ b/src/languages/de.ts @@ -5633,8 +5633,8 @@ _Für ausführlichere Anweisungen [besuchen Sie unsere Hilfeseite](${CONST.NETSU title: 'Reisen', subtitle: 'Buchen, verwalten und abstimmen Sie all Ihre Geschäftsreisen.', disableTravelTitle: 'Deaktivieren Sie zuerst die Reiseabrechnung', - disableTravelPrompt: 'Die Reiseabrechnung ist für diesen Arbeitsbereich aktiviert. Deaktivieren Sie sie, bevor Sie Reisen deaktivieren können.', - disableTravelButton: 'Zu den Reiseeinstellungen', + disableTravelPrompt: 'Reiseabrechnung ist für diesen Workspace aktiviert. Schalten Sie sie aus, bevor Sie Reisen deaktivieren können.', + disableTravelButton: 'Zu den Reiseeinstellungen gehen', getStarted: { title: 'Los geht’s mit Expensify Travel', subtitle: 'Wir brauchen nur noch ein paar weitere Informationen zu deinem Unternehmen, dann bist du startklar.', diff --git a/src/languages/es.ts b/src/languages/es.ts index 876ac9d33be8..985d0f022c8c 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -5466,8 +5466,8 @@ ${amount} para ${merchant} - ${date}`, title: 'Viajes', subtitle: 'Reserva, gestiona y concilia todos tus viajes de negocios.', disableTravelTitle: 'Desactiva primero la facturación de viajes', - disableTravelPrompt: 'La facturación de viajes está activada para este espacio de trabajo. Desactívala antes de poder desactivar Viajes.', - disableTravelButton: 'Ir a la configuración de Viajes', + disableTravelPrompt: 'La facturación de viajes está habilitada para este espacio de trabajo. Desactívala antes de poder deshabilitar Viajes.', + disableTravelButton: 'Ve a la configuración de Viajes', getStarted: { title: 'Comienza con Expensify Travel', subtitle: 'Solo necesitamos algunos datos más sobre tu empresa y estarás listo para despegar.', diff --git a/src/languages/fr.ts b/src/languages/fr.ts index 0c79e98d83c8..1b52d788d9a1 100644 --- a/src/languages/fr.ts +++ b/src/languages/fr.ts @@ -5644,9 +5644,9 @@ _Pour des instructions plus détaillées, [visitez notre site d’aide](${CONST. travel: { title: 'Déplacements', subtitle: 'Réservez, gérez et rapprochez tous vos déplacements professionnels.', - disableTravelTitle: "Désactivez d'abord la facturation des déplacements", - disableTravelPrompt: 'La facturation des déplacements est activée pour cet espace de travail. Désactivez-la avant de pouvoir désactiver Déplacements.', - disableTravelButton: 'Aller aux paramètres de déplacement', + disableTravelTitle: 'Désactivez d’abord la facturation des déplacements', + disableTravelPrompt: 'La facturation de voyage est activée pour cet espace de travail. Désactivez-la avant de pouvoir désactiver Travel.', + disableTravelButton: 'Accéder aux paramètres de voyage', getStarted: { title: 'Commencez avec Expensify Travel', subtitle: 'Nous avons simplement besoin de quelques informations supplémentaires sur votre entreprise, puis vous serez prêt à décoller.', diff --git a/src/languages/it.ts b/src/languages/it.ts index b074d28414bf..dfb0adb25a60 100644 --- a/src/languages/it.ts +++ b/src/languages/it.ts @@ -5614,8 +5614,8 @@ _Per istruzioni più dettagliate, [visita il nostro sito di assistenza](${CONST. title: 'Viaggi', subtitle: 'Prenota, gestisci e riconcilia tutti i viaggi di lavoro.', disableTravelTitle: 'Disattiva prima la fatturazione viaggi', - disableTravelPrompt: 'La fatturazione viaggi è attiva per questo spazio di lavoro. Disattivala prima di poter disattivare Viaggi.', - disableTravelButton: 'Vai alle impostazioni di Viaggi', + disableTravelPrompt: 'La fatturazione Viaggi è abilitata per questo spazio di lavoro. Disattivala prima di poter disabilitare Viaggi.', + disableTravelButton: 'Vai alle impostazioni Viaggio', getStarted: { title: 'Inizia con Expensify Travel', subtitle: 'Ci servono solo ancora alcune informazioni sulla tua attività, poi sarai pronto al decollo.', diff --git a/src/languages/ja.ts b/src/languages/ja.ts index 15c6f3ce4881..79876ab41319 100644 --- a/src/languages/ja.ts +++ b/src/languages/ja.ts @@ -5564,9 +5564,9 @@ _詳しい手順については、[ヘルプサイトをご覧ください](${CO travel: { title: '出張', subtitle: '出張の予約、管理、精算をすべて一元管理。', - disableTravelTitle: '先に出張請求をオフにしてください', - disableTravelPrompt: 'このワークスペースでは出張請求が有効になっています。出張をオフにする前に、出張請求をオフにしてください。', - disableTravelButton: '出張設定に移動', + disableTravelTitle: '先に Travel Invoicing をオフにしてください', + disableTravelPrompt: 'このワークスペースでは旅行請求書作成が有効になっています。Travel を無効にする前にオフにしてください。', + disableTravelButton: '出張設定に移動します', getStarted: { title: 'Expensify Travel を使い始める', subtitle: 'ビジネスについてあと少しだけ情報を教えてください。準備が整い次第、すぐに開始できます。', diff --git a/src/languages/nl.ts b/src/languages/nl.ts index 62475ad56262..fa4b720a703a 100644 --- a/src/languages/nl.ts +++ b/src/languages/nl.ts @@ -5602,9 +5602,9 @@ _Voor meer gedetailleerde instructies, [bezoek onze help-site](${CONST.NETSUITE_ travel: { title: 'Reizen', subtitle: 'Boek, beheer en reconcilieer al je zakelijke reizen.', - disableTravelTitle: 'Schakel eerst reisfacturering uit', - disableTravelPrompt: 'Reisfacturering is ingeschakeld voor deze werkruimte. Schakel het uit voordat je Reizen kunt uitschakelen.', - disableTravelButton: 'Ga naar reisinstellingen', + disableTravelTitle: 'Schakel eerst Reisfacturatie uit', + disableTravelPrompt: 'Reisfacturatie is ingeschakeld voor deze workspace. Schakel dit uit voordat je Reis kunt uitschakelen.', + disableTravelButton: 'Ga naar Reisinstellingen', getStarted: { title: 'Aan de slag met Expensify Travel', subtitle: 'We hebben nog maar een paar extra gegevens over je bedrijf nodig, dan ben je klaar voor vertrek.', diff --git a/src/languages/pl.ts b/src/languages/pl.ts index 3e33a5935549..e795407db7d3 100644 --- a/src/languages/pl.ts +++ b/src/languages/pl.ts @@ -5591,8 +5591,8 @@ _Aby uzyskać bardziej szczegółowe instrukcje, [odwiedź naszą stronę pomocy title: 'Podróże', subtitle: 'Rezerwuj, zarządzaj i uzgadniaj wszystkie wyjazdy służbowe.', disableTravelTitle: 'Najpierw wyłącz fakturowanie podróży', - disableTravelPrompt: 'Fakturowanie podróży jest włączone dla tego obszaru roboczego. Wyłącz je, zanim będzie można wyłączyć Podróże.', - disableTravelButton: 'Przejdź do ustawień podróży', + disableTravelPrompt: 'Fakturowanie podróży jest włączone dla tego obszaru roboczego. Wyłącz je, zanim będziesz mógł wyłączyć funkcję Podróże.', + disableTravelButton: 'Przejdź do ustawień Podróży', getStarted: { title: 'Pierwsze kroki z Expensify Travel', subtitle: 'Potrzebujemy jeszcze tylko kilku informacji o Twojej firmie, a potem będziesz gotowy do startu.', diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts index c675e0d93e82..47411989db58 100644 --- a/src/languages/pt-BR.ts +++ b/src/languages/pt-BR.ts @@ -5595,8 +5595,8 @@ _Para instruções mais detalhadas, [visite nossa central de ajuda](${CONST.NETS title: 'Viagens', subtitle: 'Reserve, gerencie e reconcilie todas as viagens de negócios da sua empresa.', disableTravelTitle: 'Desative primeiro o faturamento de viagens', - disableTravelPrompt: 'O faturamento de viagens está ativado para este espaço de trabalho. Desative-o antes de poder desativar Viagens.', - disableTravelButton: 'Ir para as configurações de Viagens', + disableTravelPrompt: 'O faturamento de viagens está ativado para este workspace. Desative-o antes de desativar o Travel.', + disableTravelButton: 'Ir para as configurações de Viagem', getStarted: { title: 'Comece a usar o Expensify Travel', subtitle: 'Só precisamos de mais algumas informações sobre sua empresa e você estará pronto para decolar.', diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts index 937455e5ab3b..13871547b630 100644 --- a/src/languages/zh-hans.ts +++ b/src/languages/zh-hans.ts @@ -5467,7 +5467,7 @@ _如需更详细的说明,请[访问我们的帮助网站](${CONST.NETSUITE_IM title: '差旅', subtitle: '预订、管理并对账您所有的商务差旅。', disableTravelTitle: '请先关闭差旅开票', - disableTravelPrompt: '此工作区已启用差旅开票。请先将其关闭,然后才能关闭差旅功能。', + disableTravelPrompt: '此工作区已启用差旅开票。要禁用差旅功能,请先将其关闭。', disableTravelButton: '前往差旅设置', getStarted: { title: '开始使用 Expensify Travel',