-
Notifications
You must be signed in to change notification settings - Fork 3.5k
[Domain control] [Release 1] Remove Admins "beta" - add Admins button
#79765
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
[Domain control] [Release 1] Remove Admins "beta" - add Admins button
#79765
Conversation
|
Hey, I noticed you changed If you want to automatically generate translations for other locales, an Expensify employee will have to:
Alternatively, if you are an external contributor, you can run the translation script locally with your own OpenAI API key. To learn more, try running: npx ts-node ./scripts/generateTranslations.ts --helpTypically, you'd want to translate only what you changed by running |
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
🦜 Polyglot Parrot! 🦜Squawk! Looks like you added some shiny new English strings. Allow me to parrot them back to you in other tongues: View the translation diffdiff --git a/src/languages/de.ts b/src/languages/de.ts
index a22d5ea9..bc9ef4de 100644
--- a/src/languages/de.ts
+++ b/src/languages/de.ts
@@ -8010,6 +8010,7 @@ Hier ist ein *Testbeleg*, um dir zu zeigen, wie es funktioniert:`,
resetDomainInfo: `Diese Aktion ist <strong>dauerhaft</strong> und die folgenden Daten werden gelöscht: <br/> <ul><li>Firmenkarten-Verbindungen und alle nicht eingereichten Ausgaben von diesen Karten</li> <li>SAML- und Gruppeneinstellungen</li> </ul> Alle Konten, Workspaces, Berichte, Ausgaben und anderen Daten bleiben erhalten. <br/><br/>Hinweis: Sie können diese Domain aus Ihrer Domainliste entfernen, indem Sie die zugehörige E-Mail aus Ihren <a href="#">Kontaktmethoden</a> löschen.`,
},
members: {title: 'Mitglieder', findMember: 'Mitglied suchen'},
+ domainAdmins: 'Domain-Admins',
},
gps: {
tooltip: 'GPS-Verfolgung läuft! Wenn du fertig bist, stoppe die Verfolgung unten.',
diff --git a/src/languages/fr.ts b/src/languages/fr.ts
index 223cfc0d..50141443 100644
--- a/src/languages/fr.ts
+++ b/src/languages/fr.ts
@@ -8014,6 +8014,7 @@ Voici un *reçu test* pour vous montrer comment cela fonctionne :`,
resetDomainInfo: `Cette action est <strong>définitive</strong> et les données suivantes seront supprimées : <br/> <ul><li>Connexions aux cartes d'entreprise et toutes les dépenses non déclarées de ces cartes</li> <li>Paramètres SAML et de groupe</li> </ul> Tous les comptes, espaces de travail, rapports, dépenses et autres données seront conservés. <br/><br/>Remarque : Vous pouvez supprimer ce domaine de votre liste de domaines en retirant l'adresse e-mail associée de vos <a href="#">méthodes de contact</a>.`,
},
members: {title: 'Membres', findMember: 'Rechercher un membre'},
+ domainAdmins: 'Administrateurs de domaine',
},
gps: {
tooltip: 'Suivi GPS en cours ! Quand vous avez terminé, arrêtez le suivi ci-dessous.',
diff --git a/src/languages/it.ts b/src/languages/it.ts
index b0b6d393..525e333f 100644
--- a/src/languages/it.ts
+++ b/src/languages/it.ts
@@ -7992,6 +7992,7 @@ Ecco una *ricevuta di prova* per mostrarti come funziona:`,
resetDomainInfo: `Questa azione è <strong>permanente</strong> e i seguenti dati verranno eliminati: <br/> <ul><li>Connessioni alle carte aziendali e tutte le spese non riportate da tali carte</li> <li>Impostazioni SAML e di gruppo</li> </ul> Tutti gli account, gli spazi di lavoro, i report, le spese e gli altri dati rimarranno. <br/><br/>Nota: puoi rimuovere questo dominio dall'elenco dei tuoi domini eliminando l'email associata dalle tue <a href="#">modalità di contatto</a>.`,
},
members: {title: 'Membri', findMember: 'Trova membro'},
+ domainAdmins: 'Amministratori di dominio',
},
gps: {
tooltip: 'Monitoraggio GPS in corso! Quando hai finito, interrompi il monitoraggio qui sotto.',
diff --git a/src/languages/ja.ts b/src/languages/ja.ts
index 88848b5f..929a2479 100644
--- a/src/languages/ja.ts
+++ b/src/languages/ja.ts
@@ -7931,6 +7931,7 @@ Expensify の使い方をお見せするための*テストレシート*がこ
resetDomainInfo: `この操作は<strong>永久的</strong>であり、次のデータが削除されます:<br/> <ul><li>会社カードの接続およびそれらのカードからの未報告の経費</li> <li>SAML とグループ設定</li> </ul> すべてのアカウント、ワークスペース、レポート、経費、およびその他のデータは保持されます。<br/><br/>注:関連付けられているメールアドレスを<a href="#">連絡先方法</a>から削除することで、このドメインをドメイン一覧から消去できます。`,
},
members: {title: 'メンバー', findMember: 'メンバーを検索'},
+ domainAdmins: 'ドメイン管理者',
},
gps: {
tooltip: 'GPS 追跡を進行中です!完了したら、下で追跡を停止してください。',
diff --git a/src/languages/nl.ts b/src/languages/nl.ts
index 62f4fbfe..6aa30acc 100644
--- a/src/languages/nl.ts
+++ b/src/languages/nl.ts
@@ -7981,6 +7981,7 @@ Hier is een *testbon* om je te laten zien hoe het werkt:`,
resetDomainInfo: `Deze actie is <strong>definitief</strong> en de volgende gegevens worden verwijderd: <br/> <ul><li>Bedrijfskaartverbindingen en niet-ingediende uitgaven van die kaarten</li> <li>SAML- en groepsinstellingen</li> </ul> Alle accounts, werkruimten, rapporten, uitgaven en andere gegevens blijven behouden. <br/><br/>Opmerking: je kunt dit domein uit je domeinenlijst verwijderen door het gekoppelde e-mailadres uit je <a href="#">contactmethoden</a> te verwijderen.`,
},
members: {title: 'Leden', findMember: 'Lid zoeken'},
+ domainAdmins: 'Domeinbeheerders',
},
gps: {
tooltip: 'GPS-tracking bezig! Als je klaar bent, stop dan hieronder met tracken.',
@@ -8003,7 +8004,6 @@ Hier is een *testbon* om je te laten zien hoe het werkt:`,
confirm: 'Afstandstracking negeren',
},
zeroDistanceTripModal: {title: 'Kan geen uitgave aanmaken', prompt: 'Je kunt geen uitgave aanmaken met dezelfde begin- en eindlocatie.'},
-
locationRequiredModal: {
title: 'Locatietoegang vereist',
prompt: 'Sta locatietoegang toe in de instellingen van je apparaat om GPS-afstandsregistratie te starten.',
diff --git a/src/languages/pl.ts b/src/languages/pl.ts
index e8a1cd1e..6ab67b78 100644
--- a/src/languages/pl.ts
+++ b/src/languages/pl.ts
@@ -7961,6 +7961,7 @@ Oto *paragon testowy*, który pokazuje, jak to działa:`,
resetDomainInfo: `Ta akcja jest <strong>trwała</strong> i następujące dane zostaną usunięte: <br/> <ul><li>Połączenia kart firmowych i wszystkie nierozliczone wydatki z tych kart</li> <li>Ustawienia SAML i grup</li> </ul> Wszystkie konta, przestrzenie robocze, raporty, wydatki i inne dane pozostaną bez zmian. <br/><br/>Uwaga: Możesz usunąć tę domenę z listy swoich domen, usuwając powiązany adres e-mail z <a href="#">metod kontaktu</a>.`,
},
members: {title: 'Członkowie', findMember: 'Znajdź członka'},
+ domainAdmins: 'Administratorzy domeny',
},
gps: {
tooltip: 'Śledzenie GPS w toku! Gdy skończysz, zatrzymaj śledzenie poniżej.',
@@ -7978,7 +7979,6 @@ Oto *paragon testowy*, który pokazuje, jak to działa:`,
confirm: 'Odrzuć śledzenie dystansu',
},
zeroDistanceTripModal: {title: 'Nie można utworzyć wydatku', prompt: 'Nie możesz utworzyć wydatku z tym samym miejscem początkowym i końcowym.'},
-
locationRequiredModal: {
title: 'Wymagany dostęp do lokalizacji',
prompt: 'Aby rozpocząć śledzenie dystansu GPS, zezwól na dostęp do lokalizacji w ustawieniach swojego urządzenia.',
diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts
index d0be8f8d..dd96d6e5 100644
--- a/src/languages/pt-BR.ts
+++ b/src/languages/pt-BR.ts
@@ -7966,6 +7966,7 @@ Aqui está um *recibo de teste* para mostrar como funciona:`,
resetDomainInfo: `Esta ação é <strong>permanente</strong> e os seguintes dados serão excluídos: <br/> <ul><li>Conexões de cartão corporativo e quaisquer despesas não reportadas desses cartões</li> <li>Configurações de SAML e de grupo</li> </ul> Todas as contas, workspaces, relatórios, despesas e outros dados permanecerão. <br/><br/>Observação: Você pode remover este domínio da sua lista de domínios excluindo o e-mail associado dos seus <a href="#">métodos de contato</a>.`,
},
members: {title: 'Membros', findMember: 'Encontrar membro'},
+ domainAdmins: 'Administradores de domínio',
},
gps: {
tooltip: 'Rastreamento por GPS em andamento! Quando terminar, pare o rastreamento abaixo.',
@@ -7988,7 +7989,6 @@ Aqui está um *recibo de teste* para mostrar como funciona:`,
confirm: 'Descartar rastreamento de distância',
},
zeroDistanceTripModal: {title: 'Não é possível criar a despesa', prompt: 'Você não pode criar uma despesa com o mesmo local de partida e de chegada.'},
-
locationRequiredModal: {
title: 'Acesso à localização necessário',
prompt: 'Permita o acesso à localização nas configurações do seu dispositivo para iniciar o rastreamento de distância por GPS.',
diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts
index 242c23c0..bce549b4 100644
--- a/src/languages/zh-hans.ts
+++ b/src/languages/zh-hans.ts
@@ -7781,6 +7781,7 @@ ${reportName}
resetDomainInfo: `此操作是<strong>永久性的</strong>,并且以下数据将被删除:<br/> <ul><li>公司卡连接以及这些卡片上所有未报销的费用</li> <li>SAML 和群组设置</li> </ul> 所有账户、工作区、报表、费用以及其他数据将会保留。<br/><br/>注意:您可以通过从<a href="#">联系方法</a>中移除关联的邮箱,将此域名从您的域名列表中清除。`,
},
members: {title: '成员', findMember: '查找成员'},
+ domainAdmins: '域管理员',
},
gps: {
tooltip: 'GPS 跟踪进行中!完成后,请在下方停止跟踪。',
@@ -7794,7 +7795,6 @@ ${reportName}
stopGpsTrackingModal: {title: '停止 GPS 追踪', prompt: '你确定吗?这将结束你当前的旅程。', cancel: '恢复追踪', confirm: '停止 GPS 追踪'},
discardDistanceTrackingModal: {title: '丢弃距离跟踪', prompt: '您确定吗?这将放弃您当前的流程,且无法撤销。', confirm: '丢弃距离跟踪'},
zeroDistanceTripModal: {title: '无法创建报销', prompt: '你不能创建起点和终点相同的报销。'},
-
locationRequiredModal: {title: '需要访问位置信息', prompt: '请在设备设置中允许位置访问以开始 GPS 距离跟踪。', allow: '允许'},
androidBackgroundLocationRequiredModal: {title: '需要后台位置访问权限', prompt: '请在设备设置中允许应用使用“始终允许”位置访问权限,以开始 GPS 距离跟踪。'},
preciseLocationRequiredModal: {title: '需要精确位置', prompt: '请在设备设置中启用“精确位置”以开始 GPS 距离跟踪。'},
Note You can apply these changes to your branch by copying the patch to your clipboard, then running |
Explanation of Change
Fixed Issues
$
PROPOSAL:
Tests
workspacesDomainssectionDomain adminitemOffline tests
Same as tests
QA Steps
workspacesDomainssectionDomain adminitemPR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari