diff --git a/src/languages/de.ts b/src/languages/de.ts
index 88b84fe9b7d4..6a355f583d42 100644
--- a/src/languages/de.ts
+++ b/src/languages/de.ts
@@ -5634,8 +5634,8 @@ _Für ausführlichere Anweisungen [besuchen Sie unsere Hilfeseite](${CONST.NETSU
emptyCategories: {
title: 'Noch keine Kategorien',
subtitle: 'Füge eine Kategorie hinzu, um deine Ausgaben zu organisieren.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Ihre Kategorien werden derzeit über eine Buchhaltungsverbindung importiert. Gehen Sie zu Buchhaltung, um Änderungen vorzunehmen.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Ihre Kategorien werden derzeit über eine Buchhaltungsverbindung importiert.${canManage ? ` Gehen Sie zu Buchhaltung, um Änderungen vorzunehmen.` : ''}`,
},
updateFailureMessage: 'Beim Aktualisieren der Kategorie ist ein Fehler aufgetreten, bitte versuche es erneut.',
createFailureMessage: 'Beim Erstellen der Kategorie ist ein Fehler aufgetreten, bitte versuche es erneut.',
@@ -5993,14 +5993,14 @@ _Für ausführlichere Anweisungen [besuchen Sie unsere Hilfeseite](${CONST.NETSU
editTags: 'Tags bearbeiten',
findTag: 'Tag finden',
subtitle: 'Tags bieten detailliertere Möglichkeiten, Kosten zu klassifizieren.',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `Tags bieten detailliertere Möglichkeiten, Kosten zu klassifizieren. Sie verwenden abhängige Tags. Sie können eine Tabelle erneut importieren, um Ihre Tags zu aktualisieren.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `Tags bieten detailliertere Möglichkeiten, Kosten zu klassifizieren. Sie verwenden abhängige Tags.${canReimport ? ` Sie können eine Tabelle erneut importieren, um Ihre Tags zu aktualisieren.` : ''}`,
emptyTags: {
title: 'Noch keine Tags',
subtitle: 'Füge ein Tag hinzu, um Projekte, Standorte, Abteilungen und mehr zu verfolgen.',
subtitleHTML: `Fügen Sie Tags hinzu, um Projekte, Standorte, Abteilungen und mehr nachzuverfolgen. Erfahren Sie mehr über das Formatieren von Tag-Dateien für den Import.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Ihre Tags werden derzeit über eine Buchhaltungsverbindung importiert. Gehen Sie zu Buchhaltung, um Änderungen vorzunehmen.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Ihre Tags werden derzeit über eine Buchhaltungsverbindung importiert.${canManage ? ` Gehen Sie zu Buchhaltung, um Änderungen vorzunehmen.` : ''}`,
},
deleteTag: 'Tag löschen',
deleteTags: 'Tags löschen',
diff --git a/src/languages/en.ts b/src/languages/en.ts
index d89d45dff485..60d6a6dd2426 100644
--- a/src/languages/en.ts
+++ b/src/languages/en.ts
@@ -5665,8 +5665,8 @@ const translations = {
emptyCategories: {
title: 'No categories yet',
subtitle: 'Add a category to organize your spend.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Your categories are currently importing from an accounting connection. Head over to accounting to make any changes.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Your categories are currently importing from an accounting connection.${canManage ? ` Head over to accounting to make any changes.` : ''}`,
},
updateFailureMessage: 'An error occurred while updating the category, please try again',
createFailureMessage: 'An error occurred while creating the category, please try again',
@@ -6038,15 +6038,15 @@ const translations = {
findTag: 'Find tag',
subtitle: 'Tags add more detailed ways to classify costs.',
// TODO: Add a actual link to the help article https://github.com/Expensify/App/issues/63612
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `Tags add more detailed ways to classify costs. You are using dependent tags. You can reimport a spreadsheet to update your tags.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `Tags add more detailed ways to classify costs. You are using dependent tags.${canReimport ? ` You can reimport a spreadsheet to update your tags.` : ''}`,
emptyTags: {
title: 'No tags yet',
// We need to remove the subtitle and use the below one when we remove the canUseMultiLevelTags beta
subtitle: 'Add a tag to track projects, locations, departments, and more.',
subtitleHTML: `Add tags to track projects, locations, departments, and more. Learn more about formatting tag files for import.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Your tags are currently importing from an accounting connection. Head over to accounting to make any changes.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Your tags are currently importing from an accounting connection.${canManage ? ` Head over to accounting to make any changes.` : ''}`,
},
deleteTag: 'Delete tag',
deleteTags: 'Delete tags',
diff --git a/src/languages/es.ts b/src/languages/es.ts
index 767f4f52565e..4f436137875e 100644
--- a/src/languages/es.ts
+++ b/src/languages/es.ts
@@ -5464,8 +5464,8 @@ ${amount} para ${merchant} - ${date}`,
emptyCategories: {
title: 'Todavía no hay categorías',
subtitle: 'Añade una categoría para organizar tu gasto.',
- subtitleWithAccounting: (accountingPageURL) =>
- `Tus categorías se están importando actualmente desde una conexión de contabilidad. Dirígete a contabilidad para hacer cualquier cambio.`,
+ subtitleWithAccounting: (accountingPageURL, canManage = true) =>
+ `Tus categorías se están importando actualmente desde una conexión de contabilidad.${canManage ? ` Dirígete a contabilidad para hacer cualquier cambio.` : ''}`,
},
updateFailureMessage: 'Se ha producido un error al intentar eliminar la categoría. Por favor, inténtalo más tarde.',
createFailureMessage: 'Se ha producido un error al intentar crear la categoría. Por favor, inténtalo más tarde.',
@@ -5831,14 +5831,14 @@ ${amount} para ${merchant} - ${date}`,
editTags: 'Editar etiquetas',
findTag: 'Encontrar etiquetas',
subtitle: 'Las etiquetas añaden formas más detalladas de clasificar los costos.',
- subtitleWithDependentTags: (importSpreadsheetLink) =>
- `Las etiquetas añaden formas más detalladas de clasificar los costos. Estás usando etiquetas dependientes. Puedes reimportar una hoja de cálculo para actualizar tus etiquetas.`,
+ subtitleWithDependentTags: (importSpreadsheetLink, canReimport = true) =>
+ `Las etiquetas añaden formas más detalladas de clasificar los costos. Estás usando etiquetas dependientes.${canReimport ? ` Puedes reimportar una hoja de cálculo para actualizar tus etiquetas.` : ''}`,
emptyTags: {
title: 'Aún no hay etiquetas',
subtitle: 'Añade una etiqueta para realizar el seguimiento de proyectos, ubicaciones, departamentos y otros.',
subtitleHTML: `Importa una hoja de cálculo para añadir etiquetas y organizar proyectos, ubicaciones, departamentos y más. Obtén más información sobre cómo dar formato a los archivos de etiquetas.`,
- subtitleWithAccounting: (accountingPageURL) =>
- `Tus etiquetas se están importando actualmente desde una conexión de contabilidad. Dirígete a contabilidad para hacer cualquier cambio.`,
+ subtitleWithAccounting: (accountingPageURL, canManage = true) =>
+ `Tus etiquetas se están importando actualmente desde una conexión de contabilidad.${canManage ? ` Dirígete a contabilidad para hacer cualquier cambio.` : ''}`,
},
deleteTag: 'Eliminar etiqueta',
deleteTags: 'Eliminar etiquetas',
diff --git a/src/languages/fr.ts b/src/languages/fr.ts
index 810dd316f484..c5c758e7c063 100644
--- a/src/languages/fr.ts
+++ b/src/languages/fr.ts
@@ -5646,8 +5646,8 @@ _Pour des instructions plus détaillées, [visitez notre site d’aide](${CONST.
emptyCategories: {
title: 'Aucune catégorie pour le moment',
subtitle: 'Ajoutez une catégorie pour organiser vos dépenses.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Vos catégories sont actuellement importées depuis une connexion comptable. Rendez-vous dans la section comptabilité pour effectuer des modifications.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Vos catégories sont actuellement importées depuis une connexion comptable.${canManage ? ` Rendez-vous dans la section comptabilité pour effectuer des modifications.` : ''}`,
},
updateFailureMessage: 'Une erreur s’est produite lors de la mise à jour de la catégorie, veuillez réessayer.',
createFailureMessage: 'Une erreur s’est produite lors de la création de la catégorie, veuillez réessayer.',
@@ -6019,14 +6019,14 @@ _Pour des instructions plus détaillées, [visitez notre site d’aide](${CONST.
editTags: 'Modifier les tags',
findTag: 'Trouver un tag',
subtitle: 'Les tags ajoutent des moyens plus détaillés de classer les coûts.',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `Les tags ajoutent des moyens plus détaillés de classer les coûts. Vous utilisez des tags dépendants. Vous pouvez réimporter une feuille de calcul pour mettre à jour vos tags.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `Les tags ajoutent des moyens plus détaillés de classer les coûts. Vous utilisez des tags dépendants.${canReimport ? ` Vous pouvez réimporter une feuille de calcul pour mettre à jour vos tags.` : ''}`,
emptyTags: {
title: 'Aucun tag pour le moment',
subtitle: 'Ajoutez un tag pour suivre les projets, les lieux, les services et plus encore.',
subtitleHTML: `Ajoutez des tags pour suivre les projets, les emplacements, les services, et plus encore. En savoir plus sur le formatage des fichiers de tags pour l’importation.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Vos tags sont actuellement importés depuis une connexion comptable. Rendez-vous dans la section comptabilité pour effectuer des modifications.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Vos tags sont actuellement importés depuis une connexion comptable.${canManage ? ` Rendez-vous dans la section comptabilité pour effectuer des modifications.` : ''}`,
},
deleteTag: 'Supprimer le tag',
deleteTags: 'Supprimer les tags',
diff --git a/src/languages/it.ts b/src/languages/it.ts
index ed0026f2fa51..5c17caea14ad 100644
--- a/src/languages/it.ts
+++ b/src/languages/it.ts
@@ -5615,8 +5615,8 @@ _Per istruzioni più dettagliate, [visita il nostro sito di assistenza](${CONST.
emptyCategories: {
title: 'Nessuna categoria ancora',
subtitle: 'Aggiungi una categoria per organizzare le tue spese.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Le tue categorie sono attualmente importate da una connessione contabile. Vai alla sezione contabilità per apportare modifiche.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Le tue categorie sono attualmente importate da una connessione contabile.${canManage ? ` Vai alla sezione contabilità per apportare modifiche.` : ''}`,
},
updateFailureMessage: 'Si è verificato un errore durante l’aggiornamento della categoria, riprova per favore',
createFailureMessage: 'Si è verificato un errore durante la creazione della categoria, riprova per favore',
@@ -5983,14 +5983,14 @@ _Per istruzioni più dettagliate, [visita il nostro sito di assistenza](${CONST.
editTags: 'Modifica tag',
findTag: 'Trova tag',
subtitle: 'I tag aggiungono modi più dettagliati per classificare i costi.',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `I tag aggiungono modi più dettagliati per classificare i costi. Stai usando i tag dipendenti. Puoi importare nuovamente un foglio di calcolo per aggiornare i tuoi tag.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `I tag aggiungono modi più dettagliati per classificare i costi. Stai usando i tag dipendenti.${canReimport ? ` Puoi importare nuovamente un foglio di calcolo per aggiornare i tuoi tag.` : ''}`,
emptyTags: {
title: 'Nessun tag ancora',
subtitle: 'Aggiungi un tag per tenere traccia di progetti, sedi, reparti e altro ancora.',
subtitleHTML: `Aggiungi tag per tenere traccia di progetti, sedi, reparti e altro ancora. Scopri di più sulla formattazione dei file dei tag da importare.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `I tuoi tag vengono attualmente importati da una connessione di contabilità. Vai alla sezione Contabilità per apportare qualsiasi modifica.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `I tuoi tag vengono attualmente importati da una connessione di contabilità.${canManage ? ` Vai alla sezione Contabilità per apportare qualsiasi modifica.` : ''}`,
},
deleteTag: 'Elimina tag',
deleteTags: 'Elimina tag',
diff --git a/src/languages/ja.ts b/src/languages/ja.ts
index 0459b6af774a..8846234f5b1d 100644
--- a/src/languages/ja.ts
+++ b/src/languages/ja.ts
@@ -5560,8 +5560,8 @@ _詳しい手順については、[ヘルプサイトをご覧ください](${CO
emptyCategories: {
title: 'カテゴリはまだありません',
subtitle: '支出を整理するカテゴリを追加してください。',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `現在、お客様のカテゴリは会計連携からインポートされています。変更するには、会計に移動してください。`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `現在、お客様のカテゴリは会計連携からインポートされています。${canManage ? `変更するには、会計に移動してください。` : ''}`,
},
updateFailureMessage: 'カテゴリの更新中にエラーが発生しました。もう一度お試しください。',
createFailureMessage: 'カテゴリの作成中にエラーが発生しました。もう一度お試しください。',
@@ -5912,14 +5912,14 @@ _詳しい手順については、[ヘルプサイトをご覧ください](${CO
editTags: 'タグを編集',
findTag: 'タグを検索',
subtitle: 'タグを使うと、コストをより詳しく分類できます。',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `タグを使うと、コストをより詳しく分類できます。あなたは連動タグを使用しています。タグを更新するには、スプレッドシートを再インポートできます。`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `タグを使うと、コストをより詳しく分類できます。あなたは連動タグを使用しています。${canReimport ? `タグを更新するには、スプレッドシートを再インポートできます。` : ''}`,
emptyTags: {
title: 'タグはまだありません',
subtitle: 'タグを追加して、プロジェクト、所在地、部署などを追跡しましょう。',
subtitleHTML: `タグを追加して、プロジェクト、所在地、部門などを追跡しましょう。インポート用のタグファイルの書式設定については、詳しくはこちらをご覧ください。`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `現在、タグは会計連携からインポートされています。変更するには会計に移動してください。`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `現在、タグは会計連携からインポートされています。${canManage ? `変更するには会計に移動してください。` : ''}`,
},
deleteTag: 'タグを削除',
deleteTags: 'タグを削除',
diff --git a/src/languages/nl.ts b/src/languages/nl.ts
index b925e063f75e..1777b68d159e 100644
--- a/src/languages/nl.ts
+++ b/src/languages/nl.ts
@@ -5605,8 +5605,8 @@ _Voor meer gedetailleerde instructies, [bezoek onze help-site](${CONST.NETSUITE_
emptyCategories: {
title: 'Nog geen categorieën',
subtitle: 'Voeg een categorie toe om je uitgaven te organiseren.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Je categorieën worden momenteel geïmporteerd vanuit een boekhoudkoppeling. Ga naar Boekhouding om wijzigingen aan te brengen.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Je categorieën worden momenteel geïmporteerd vanuit een boekhoudkoppeling.${canManage ? ` Ga naar Boekhouding om wijzigingen aan te brengen.` : ''}`,
},
updateFailureMessage: 'Er is een fout opgetreden bij het bijwerken van de categorie, probeer het opnieuw',
createFailureMessage: 'Er is een fout opgetreden bij het aanmaken van de categorie, probeer het opnieuw.',
@@ -5962,14 +5962,14 @@ _Voor meer gedetailleerde instructies, [bezoek onze help-site](${CONST.NETSUITE_
editTags: 'Tags bewerken',
findTag: 'Tag zoeken',
subtitle: 'Labels bieden meer gedetailleerde manieren om kosten te classificeren.',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `Labels bieden meer gedetailleerde manieren om kosten te classificeren. Je gebruikt afhankelijke labels. Je kunt een spreadsheet opnieuw importeren om je labels bij te werken.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `Labels bieden meer gedetailleerde manieren om kosten te classificeren. Je gebruikt afhankelijke labels.${canReimport ? ` Je kunt een spreadsheet opnieuw importeren om je labels bij te werken.` : ''}`,
emptyTags: {
title: 'Nog geen tags',
subtitle: 'Voeg een tag toe om projecten, locaties, afdelingen en meer bij te houden.',
subtitleHTML: `Voeg tags toe om projecten, locaties, afdelingen en meer bij te houden. Meer informatie over het formatteren van tagbestanden voor import.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Je tags worden momenteel geïmporteerd via een boekhoudkoppeling. Ga naar Boekhouding om wijzigingen aan te brengen.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Je tags worden momenteel geïmporteerd via een boekhoudkoppeling.${canManage ? ` Ga naar Boekhouding om wijzigingen aan te brengen.` : ''}`,
},
deleteTag: 'Tag verwijderen',
deleteTags: 'Labels verwijderen',
diff --git a/src/languages/pl.ts b/src/languages/pl.ts
index 175b8df70e89..bb8565f92251 100644
--- a/src/languages/pl.ts
+++ b/src/languages/pl.ts
@@ -5593,8 +5593,8 @@ _Aby uzyskać bardziej szczegółowe instrukcje, [odwiedź naszą stronę pomocy
emptyCategories: {
title: 'Brak kategorii',
subtitle: 'Dodaj kategorię, aby uporządkować swoje wydatki.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Twoje kategorie są obecnie importowane z połączenia księgowego. Przejdź do sekcji księgowość, aby wprowadzić zmiany.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Twoje kategorie są obecnie importowane z połączenia księgowego.${canManage ? ` Przejdź do sekcji księgowość, aby wprowadzić zmiany.` : ''}`,
},
updateFailureMessage: 'Wystąpił błąd podczas aktualizowania kategorii, spróbuj ponownie',
createFailureMessage: 'Wystąpił błąd podczas tworzenia kategorii, spróbuj ponownie',
@@ -5956,14 +5956,14 @@ _Aby uzyskać bardziej szczegółowe instrukcje, [odwiedź naszą stronę pomocy
editTags: 'Edytuj tagi',
findTag: 'Znajdź tag',
subtitle: 'Tagi umożliwiają bardziej szczegółowe klasyfikowanie kosztów.',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `Tagi umożliwiają bardziej szczegółowe klasyfikowanie kosztów. Używasz zależnych tagów. Możesz ponownie zaimportować arkusz kalkulacyjny, aby zaktualizować swoje tagi.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `Tagi umożliwiają bardziej szczegółowe klasyfikowanie kosztów. Używasz zależnych tagów.${canReimport ? ` Możesz ponownie zaimportować arkusz kalkulacyjny, aby zaktualizować swoje tagi.` : ''}`,
emptyTags: {
title: 'Brak tagów',
subtitle: 'Dodaj tag, aby śledzić projekty, lokalizacje, działy i inne.',
subtitleHTML: `Dodaj tagi, aby śledzić projekty, lokalizacje, działy i nie tylko. Dowiedz się więcej o formatowaniu plików tagów do importu.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Twoje tagi są obecnie importowane z połączenia księgowego. Przejdź do sekcji Księgowość, aby wprowadzić zmiany.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Twoje tagi są obecnie importowane z połączenia księgowego.${canManage ? ` Przejdź do sekcji Księgowość, aby wprowadzić zmiany.` : ''}`,
},
deleteTag: 'Usuń tag',
deleteTags: 'Usuń tagi',
diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts
index 61f6f2b32e53..253593feee98 100644
--- a/src/languages/pt-BR.ts
+++ b/src/languages/pt-BR.ts
@@ -5596,8 +5596,8 @@ _Para instruções mais detalhadas, [visite nossa central de ajuda](${CONST.NETS
emptyCategories: {
title: 'Ainda não há categorias',
subtitle: 'Adicione uma categoria para organizar seus gastos.',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Suas categorias estão sendo importadas de uma conexão de contabilidade. Vá até contabilidade para fazer qualquer alteração.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Suas categorias estão sendo importadas de uma conexão de contabilidade.${canManage ? ` Vá até contabilidade para fazer qualquer alteração.` : ''}`,
},
updateFailureMessage: 'Ocorreu um erro ao atualizar a categoria, tente novamente',
createFailureMessage: 'Ocorreu um erro ao criar a categoria, tente novamente.',
@@ -5961,14 +5961,14 @@ _Para instruções mais detalhadas, [visite nossa central de ajuda](${CONST.NETS
editTags: 'Editar tags',
findTag: 'Encontrar tag',
subtitle: 'As tags acrescentam maneiras mais detalhadas de classificar custos.',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `As tags acrescentam maneiras mais detalhadas de classificar custos. Você está usando tags dependentes. Você pode reimportar uma planilha para atualizar suas tags.`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `As tags acrescentam maneiras mais detalhadas de classificar custos. Você está usando tags dependentes.${canReimport ? ` Você pode reimportar uma planilha para atualizar suas tags.` : ''}`,
emptyTags: {
title: 'Ainda não há tags',
subtitle: 'Adicione uma tag para acompanhar projetos, locais, departamentos e mais.',
subtitleHTML: `Adicione tags para acompanhar projetos, locais, departamentos e mais. Saiba mais sobre como formatar arquivos de tags para importação.`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `Suas tags estão sendo importadas de uma conexão contábil. Vá até a página de contabilidade para fazer alterações.`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `Suas tags estão sendo importadas de uma conexão contábil.${canManage ? ` Vá até a página de contabilidade para fazer alterações.` : ''}`,
},
deleteTag: 'Excluir etiqueta',
deleteTags: 'Excluir tags',
diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts
index eb1ceadae944..f4747cc221eb 100644
--- a/src/languages/zh-hans.ts
+++ b/src/languages/zh-hans.ts
@@ -5462,8 +5462,8 @@ _如需更详细的说明,请[访问我们的帮助网站](${CONST.NETSUITE_IM
emptyCategories: {
title: '尚无类别',
subtitle: '添加类别来整理您的支出。',
- subtitleWithAccounting: (accountingPageURL: string) =>
- `您的类别目前正从会计连接中导入。前往会计页面进行任何更改。`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `您的类别目前正从会计连接中导入。${canManage ? `前往会计页面进行任何更改。` : ''}`,
},
updateFailureMessage: '更新类别时出错,请重试',
createFailureMessage: '创建类别时出错,请重试',
@@ -5803,14 +5803,14 @@ _如需更详细的说明,请[访问我们的帮助网站](${CONST.NETSUITE_IM
editTags: '编辑标签',
findTag: '查找标签',
subtitle: '标签可用于以更细致的方式分类成本。',
- subtitleWithDependentTags: (importSpreadsheetLink: string) =>
- `标签可用于以更细致的方式分类成本。您正在使用依赖标签。您可以重新导入电子表格来更新您的标签。`,
+ subtitleWithDependentTags: (importSpreadsheetLink: string, canReimport = true) =>
+ `标签可用于以更细致的方式分类成本。您正在使用依赖标签。${canReimport ? `您可以重新导入电子表格来更新您的标签。` : ''}`,
emptyTags: {
title: '尚无标签',
subtitle: '添加标签,以跟踪项目、地点、部门等。',
subtitleHTML: `添加标签以跟踪项目、地点、部门等。了解更多关于用于导入的标签文件格式。`,
- subtitleWithAccounting: (accountingPageURL: string) =>
- `您的标签目前正从会计连接中导入。前往会计以进行任何更改。`,
+ subtitleWithAccounting: (accountingPageURL: string, canManage = true) =>
+ `您的标签目前正从会计连接中导入。${canManage ? `前往会计以进行任何更改。` : ''}`,
},
deleteTag: '删除标签',
deleteTags: '删除标签',
diff --git a/src/pages/workspace/accounting/PolicyAccountingPage.tsx b/src/pages/workspace/accounting/PolicyAccountingPage.tsx
index 33e3dee838f7..3067703ab07f 100644
--- a/src/pages/workspace/accounting/PolicyAccountingPage.tsx
+++ b/src/pages/workspace/accounting/PolicyAccountingPage.tsx
@@ -360,11 +360,12 @@ function PolicyAccountingPage({policy}: PolicyAccountingPageProps) {
shouldShowRightComponent: true,
title: integrationData?.title,
badgeText: isXero ? translate('workspace.accounting.claimOffer.badgeText') : undefined,
- onBadgePress: isXero
- ? () => {
- Navigation.navigate(ROUTES.POLICY_ACCOUNTING_CLAIM_OFFER.getRoute(policyID, CONST.POLICY.CONNECTIONS.NAME.XERO));
- }
- : undefined,
+ onBadgePress:
+ isXero && canWriteAccounting
+ ? () => {
+ Navigation.navigate(ROUTES.POLICY_ACCOUNTING_CLAIM_OFFER.getRoute(policyID, CONST.POLICY.CONNECTIONS.NAME.XERO));
+ }
+ : undefined,
badgeStyle: styles.mr3,
isBadgeSuccess: isXero,
shouldShowBadgeBelow: shouldUseNarrowLayout,
diff --git a/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx
index 2cd08d921f23..8eed58012ccc 100644
--- a/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx
+++ b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx
@@ -386,7 +386,7 @@ function WorkspaceCategoriesPage({route}: WorkspaceCategoriesPageProps) {
{translate('common.approver')}
)}
-
+ {translate('common.enabled')}
@@ -735,10 +735,23 @@ function WorkspaceCategoriesPage({route}: WorkspaceCategoriesPageProps) {
}
return (
-
+
);
- }, [policyHasAccountingConnections, styles.renderHTML, styles.textAlignCenter, styles.alignItemsCenter, styles.textSupporting, styles.textNormal, translate, environmentURL, policyId]);
+ }, [
+ policyHasAccountingConnections,
+ styles.renderHTML,
+ styles.textAlignCenter,
+ styles.alignItemsCenter,
+ styles.textSupporting,
+ styles.textNormal,
+ translate,
+ environmentURL,
+ policyId,
+ canWriteCategories,
+ ]);
return (
;
+ canWriteCompanyCards: boolean;
+ onReadOnlyAction: () => void;
};
-function WorkspaceCompanyCardExpensifyCardPromotionBanner({policy}: WorkspaceCompanyCardExpensifyCardPromotionBannerProps) {
+function WorkspaceCompanyCardExpensifyCardPromotionBanner({policy, canWriteCompanyCards, onReadOnlyAction}: WorkspaceCompanyCardExpensifyCardPromotionBannerProps) {
const theme = useTheme();
const styles = useThemeStyles();
const {translate} = useLocalize();
@@ -47,14 +49,16 @@ function WorkspaceCompanyCardExpensifyCardPromotionBanner({policy}: WorkspaceCom
);
- }, [styles, shouldUseNarrowLayout, isInLandscapeMode, translate, handleLearnMore]);
+ }, [styles, shouldUseNarrowLayout, isInLandscapeMode, translate, canWriteCompanyCards, handleLearnMore, onReadOnlyAction]);
return (
diff --git a/src/pages/workspace/companyCards/WorkspaceCompanyCardFeedSelectorPage.tsx b/src/pages/workspace/companyCards/WorkspaceCompanyCardFeedSelectorPage.tsx
index 743050d350de..9cb1bdf4a498 100644
--- a/src/pages/workspace/companyCards/WorkspaceCompanyCardFeedSelectorPage.tsx
+++ b/src/pages/workspace/companyCards/WorkspaceCompanyCardFeedSelectorPage.tsx
@@ -23,6 +23,7 @@ import useOnyx from '@hooks/useOnyx';
import useOtherFeedsForFeedSelector from '@hooks/useOtherFeedsForFeedSelector';
import type {CardFeedListItem} from '@hooks/useOtherFeedsForFeedSelector';
import usePolicy from '@hooks/usePolicy';
+import usePolicyFeatureWriteAccess from '@hooks/usePolicyFeatureWriteAccess';
import usePrimaryContactMethod from '@hooks/usePrimaryContactMethod';
import useThemeIllustrations from '@hooks/useThemeIllustrations';
import useThemeStyles from '@hooks/useThemeStyles';
@@ -62,6 +63,7 @@ function WorkspaceCompanyCardFeedSelectorPage({route}: WorkspaceCompanyCardFeedS
const illustrations = useThemeIllustrations();
const companyCardFeedIcons = useCompanyCardFeedIcons();
const {isBlockedToAddNewFeeds} = useIsBlockedToAddFeed(policyID);
+ const {canWrite: canWriteCompanyCards} = usePolicyFeatureWriteAccess(policy, CONST.POLICY.POLICY_FEATURE.COMPANY_CARDS);
const icons = useMemoizedLazyExpensifyIcons(['Plus']);
const [feedWithError, setFeedWithError] = useState<{feed?: string; error?: Errors} | undefined>(undefined);
@@ -162,7 +164,7 @@ function WorkspaceCompanyCardFeedSelectorPage({route}: WorkspaceCompanyCardFeedS
setFeedWithError(undefined);
};
- const otherMenuItemFeeds = (
+ const otherMenuItemFeeds = canWriteCompanyCards ? (
)}
- );
+ ) : null;
return (
- {shouldShowExpensifyCardPromotionBanner && }
+ {shouldShowExpensifyCardPromotionBanner && (
+
+ )}
{translate('common.approver')}
)}
-
+ {translate('common.enabled')}
@@ -854,20 +854,17 @@ function WorkspaceTagsPage({route}: WorkspaceTagsPageProps) {
);
}
+ const importSpreadsheetURL = isQuickSettingsFlow
+ ? `${environmentURL}/${ROUTES.SETTINGS_TAGS_IMPORT.getRoute(policyID, ROUTES.SETTINGS_TAGS_ROOT.getRoute(policyID, backTo))}`
+ : `${environmentURL}/${ROUTES.WORKSPACE_TAGS_IMPORT_OPTIONS.getRoute(policyID)}`;
+ let subtitleHTML = `${translate('workspace.tags.subtitle')}`;
+ if (hasDependentTags) {
+ subtitleHTML = translate('workspace.tags.subtitleWithDependentTags', importSpreadsheetURL, canWriteTags);
+ }
+
return (
- ${translate('workspace.tags.subtitle')}`
- }
- />
+
);
};
@@ -888,14 +885,14 @@ function WorkspaceTagsPage({route}: WorkspaceTagsPageProps) {
const subtitleText = useMemo(() => {
const emptyTagsSubtitle = hasAccountingConnections
- ? translate('workspace.tags.emptyTags.subtitleWithAccounting', `${environmentURL}/${ROUTES.POLICY_ACCOUNTING.getRoute(policyID)}`)
+ ? translate('workspace.tags.emptyTags.subtitleWithAccounting', `${environmentURL}/${ROUTES.POLICY_ACCOUNTING.getRoute(policyID)}`, canWriteTags)
: translate('workspace.tags.emptyTags.subtitleHTML');
return (
);
- }, [hasAccountingConnections, translate, environmentURL, policyID, styles.renderHTML, styles.textAlignCenter, styles.alignItemsCenter]);
+ }, [hasAccountingConnections, translate, environmentURL, policyID, canWriteTags, styles.renderHTML, styles.textAlignCenter, styles.alignItemsCenter]);
return (
<>