feat: i18n for emails (#1442)

## Description

Support setting a document language that will control the language used
for sending emails to recipients. Additional work has been done to
convert all emails to using our i18n implementation so we can later add
controls for sending other kinds of emails in a users target language.

## Related Issue

N/A

## Changes Made

- Added `<Trans>` and `msg` macros to emails
- Introduced a new `renderEmailWithI18N` utility in the lib package
- Updated all emails to use the `<Tailwind>` component at the top level
due to rendering constraints
- Updated the `i18n.server.tsx` file to not use a top level await

## Testing Performed

- Configured document language and verified emails were sent in the
expected language
- Created a document from a template and verified that the templates
language was transferred to the document
This commit is contained in:
Lucas Smith
2024-11-05 11:52:54 +11:00
committed by GitHub
parent 04b1ce1aab
commit 4dd95016b1
163 changed files with 3549 additions and 1461 deletions

View File

@ -260,12 +260,12 @@ msgstr "Aktive Abonnements"
msgid "Add"
msgstr "Hinzufügen"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:175
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:87
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:176
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:88
msgid "Add all relevant fields for each recipient."
msgstr "Fügen Sie alle relevanten Felder für jeden Empfänger hinzu."
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:82
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:83
msgid "Add all relevant placeholders for each recipient."
msgstr "Fügen Sie alle relevanten Platzhalter für jeden Empfänger hinzu."
@ -281,8 +281,8 @@ msgstr "Fügen Sie einen Authenticator hinzu, um als sekundäre Authentifizierun
msgid "Add email"
msgstr "E-Mail hinzufügen"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:174
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:86
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:175
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:87
msgid "Add Fields"
msgstr "Felder hinzufügen"
@ -295,15 +295,15 @@ msgstr "Mehr hinzufügen"
msgid "Add passkey"
msgstr "Passkey hinzufügen"
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:81
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:82
msgid "Add Placeholders"
msgstr "Platzhalter hinzufügen"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:169
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:170
msgid "Add Signers"
msgstr "Unterzeichner hinzufügen"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:179
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:180
msgid "Add Subject"
msgstr "Betreff hinzufügen"
@ -311,7 +311,7 @@ msgstr "Betreff hinzufügen"
msgid "Add team email"
msgstr "Team-E-Mail hinzufügen"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:170
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:171
msgid "Add the people who will sign the document."
msgstr "Fügen Sie die Personen hinzu, die das Dokument unterschreiben werden."
@ -319,7 +319,7 @@ msgstr "Fügen Sie die Personen hinzu, die das Dokument unterschreiben werden."
msgid "Add the recipients to create the document with"
msgstr "Fügen Sie die Empfänger hinzu, um das Dokument zu erstellen"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:180
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:181
msgid "Add the subject and message you wish to send to signers."
msgstr "Fügen Sie den Betreff und die Nachricht hinzu, die Sie den Unterzeichnern senden möchten."
@ -414,13 +414,13 @@ msgstr "Eine E-Mail, in der die Übertragung dieses Teams angefordert wird, wurd
msgid "An error occurred"
msgstr "Ein Fehler ist aufgetreten"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:266
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:197
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:231
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:268
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:201
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:235
msgid "An error occurred while adding signers."
msgstr "Ein Fehler ist aufgetreten, während Unterzeichner hinzugefügt wurden."
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:301
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:303
msgid "An error occurred while adding the fields."
msgstr "Ein Fehler ist aufgetreten, während die Felder hinzugefügt wurden."
@ -482,7 +482,7 @@ msgstr "Ein Fehler ist aufgetreten, während die Unterschrift entfernt wurde."
msgid "An error occurred while removing the text."
msgstr "Ein Fehler ist aufgetreten, während der Text entfernt wurde."
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:332
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:334
msgid "An error occurred while sending the document."
msgstr "Ein Fehler ist aufgetreten, während das Dokument gesendet wurde."
@ -507,8 +507,8 @@ msgstr "Ein Fehler ist aufgetreten, während das Dokument unterzeichnet wurde."
msgid "An error occurred while trying to create a checkout session."
msgstr "Ein Fehler ist aufgetreten, während versucht wurde, eine Checkout-Sitzung zu erstellen."
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:232
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:166
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:234
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:170
msgid "An error occurred while updating the document settings."
msgstr "Ein Fehler ist aufgetreten, während die Dokumenteinstellungen aktualisiert wurden."
@ -869,11 +869,11 @@ msgstr "Abgeschlossene Dokumente"
msgid "Completed Documents"
msgstr "Abgeschlossene Dokumente"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:165
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:166
msgid "Configure general settings for the document."
msgstr "Konfigurieren Sie die allgemeinen Einstellungen für das Dokument."
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:77
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:78
msgid "Configure general settings for the template."
msgstr "Konfigurieren Sie die allgemeinen Einstellungen für die Vorlage."
@ -1350,7 +1350,7 @@ msgstr "Dokument erneut gesendet"
msgid "Document resealed"
msgstr "Dokument wieder versiegelt"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:321
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:323
msgid "Document sent"
msgstr "Dokument gesendet"
@ -1579,16 +1579,16 @@ msgstr "Geben Sie hier Ihren Text ein"
#: apps/web/src/app/(dashboard)/admin/documents/[id]/admin-actions.tsx:41
#: apps/web/src/app/(dashboard)/admin/users/[id]/page.tsx:78
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:231
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:265
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:300
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:331
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:233
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:267
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:302
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:333
#: apps/web/src/app/(dashboard)/documents/move-document-dialog.tsx:57
#: apps/web/src/app/(dashboard)/documents/upload-document.tsx:106
#: apps/web/src/app/(dashboard)/documents/upload-document.tsx:112
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:165
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:196
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:230
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:169
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:200
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:234
#: apps/web/src/app/(dashboard)/templates/duplicate-template-dialog.tsx:51
#: apps/web/src/app/(dashboard)/templates/move-template-dialog.tsx:56
#: apps/web/src/app/(dashboard)/templates/use-template-dialog.tsx:160
@ -1679,8 +1679,8 @@ msgstr "Haben Sie Ihr Passwort vergessen?"
msgid "Full Name"
msgstr "Vollständiger Name"
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:164
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:76
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:165
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:77
#: apps/web/src/app/(recipient)/d/[token]/direct-template.tsx:60
#: apps/web/src/components/(teams)/settings/layout/desktop-nav.tsx:43
#: apps/web/src/components/(teams)/settings/layout/mobile-nav.tsx:51
@ -3244,7 +3244,7 @@ msgstr "Vorlage wurde aktualisiert."
msgid "Template moved"
msgstr "Vorlage verschoben"
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:219
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:223
msgid "Template saved"
msgstr "Vorlage gespeichert"
@ -4521,7 +4521,7 @@ msgstr "Ihr Dokument wurde erfolgreich aus der Vorlage erstellt."
msgid "Your document has been re-sent successfully."
msgstr "Ihr Dokument wurde erfolgreich erneut gesendet."
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:322
#: apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx:324
msgid "Your document has been sent successfully."
msgstr "Ihr Dokument wurde erfolgreich gesendet."
@ -4612,7 +4612,7 @@ msgstr "Ihre Vorlage wurde erfolgreich gelöscht."
msgid "Your template will be duplicated."
msgstr "Ihre Vorlage wird dupliziert."
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:220
#: apps/web/src/app/(dashboard)/templates/[id]/edit-template.tsx:224
msgid "Your templates has been saved successfully."
msgstr "Ihre Vorlagen wurden erfolgreich gespeichert."
@ -4628,4 +4628,3 @@ msgstr "Ihr Token wurde erfolgreich erstellt! Stellen Sie sicher, dass Sie es ko
#: apps/web/src/app/(teams)/t/[teamUrl]/settings/tokens/page.tsx:86
msgid "Your tokens will be shown here once you create them."
msgstr "Ihre Tokens werden hier angezeigt, sobald Sie sie erstellt haben."