Skip to content
2 changes: 1 addition & 1 deletion src/components/MagicCodeInput.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,7 @@ function MagicCodeInput({
}}
selectionColor="transparent"
inputStyle={[styles.inputTransparent]}
accessibilityLabel={`${accessibilityLabel ?? translate('common.magicCode')}, ${maxLength} ${translate('common.digits')}`}
accessibilityLabel={`${accessibilityLabel ?? translate('common.securityCode')}, ${maxLength} ${translate('common.digits')}`}
style={[styles.inputTransparent]}
textInputContainerStyles={[styles.borderTransparent, styles.bgTransparent]}
testID={testID}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -305,12 +305,12 @@ function BaseValidateCodeForm({
clearDefaultValidationCodeError();
setCanShowError(true);
if (!validateCode.trim()) {
setFormError({validateCode: 'validateCodeForm.error.pleaseFillMagicCode'});
setFormError({validateCode: 'validateCodeForm.error.pleaseFillSecurityCode'});
return;
}

if (!isValidValidateCode(validateCode)) {
setFormError({validateCode: 'validateCodeForm.error.incorrectMagicCode'});
setFormError({validateCode: 'validateCodeForm.error.incorrectSecurityCode'});
return;
}

Expand Down Expand Up @@ -374,10 +374,10 @@ function BaseValidateCodeForm({
hoverDimmingValue={1}
pressDimmingValue={0.2}
role={CONST.ROLE.BUTTON}
accessibilityLabel={translate('validateCodeForm.magicCodeNotReceived')}
accessibilityLabel={translate('validateCodeForm.securityCodeNotReceived')}
sentryLabel={CONST.SENTRY_LABEL.VALIDATE_CODE.RESEND_CODE}
>
<Text style={[StyleUtils.getDisabledLinkStyles(shouldDisableResendValidateCode)]}>{translate('validateCodeForm.magicCodeNotReceived')}</Text>
<Text style={[StyleUtils.getDisabledLinkStyles(shouldDisableResendValidateCode)]}>{translate('validateCodeForm.securityCodeNotReceived')}</Text>
</PressableWithFeedback>
</View>
)}
Expand Down
57 changes: 29 additions & 28 deletions src/languages/de.ts
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ const translations: TranslationDeepObject<typeof en> = {
rotate: 'Drehen',
zoom: 'Zoom',
password: 'Passwort',
magicCode: 'Magischer Code',
securityCode: 'Sicherheitscode',
digits: 'Ziffern',
twoFactorCode: 'Zwei-Faktor-Code',
workspaces: 'Workspaces',
Expand Down Expand Up @@ -701,23 +701,23 @@ const translations: TranslationDeepObject<typeof en> = {
revoke: {
title: 'Gesicht/Fingerabdruck & Zugangsschlüssel',
explanation:
'Gesichts-/Fingerabdruck- oder Passkey-Verifizierung ist auf einem oder mehreren Geräten aktiviert. Beim Entziehen des Zugriffs ist für die nächste Verifizierung auf diesem Gerät ein magischer Code erforderlich.',
confirmationPrompt: 'Sind Sie sicher? Sie benötigen einen magischen Code für die nächste Verifizierung auf diesem Gerät.',
'Gesichts-/Fingerabdruck- oder Passkey-Verifizierung ist auf einem oder mehreren Geräten aktiviert. Das Entziehen des Zugriffs erfordert für die nächste Verifizierung auf diesem Gerät einen Sicherheitscode.',
confirmationPrompt: 'Sind Sie sicher? Sie benötigen einen Sicherheitscode für die nächste Verifizierung auf diesem Gerät.',
cta: 'Zugriff entziehen',
noDevices: 'Sie haben keine Geräte für Gesichts-/Fingerabdruck- oder Passkey-Verifizierung registriert. Wenn Sie welche registrieren, können Sie deren Zugriff hier widerrufen.',
dismiss: 'Verstanden',
error: 'Anfrage fehlgeschlagen. Versuche es später noch einmal.',
revoke: 'Widerrufen',
confirmationPromptAll: 'Sind Sie sicher? Sie benötigen einen Magic Code für die nächste Verifizierung auf jedem Gerät.',
confirmationPromptAll: 'Sind Sie sicher? Sie benötigen einen Sicherheitscode für die nächste Verifizierung auf jedem Gerät.',
ctaAll: 'Alle widerrufen',
thisDevice: 'Dieses Gerät',
otherDevices: (otherDeviceCount?: number) => {
const numberWords = ['Eins', 'Zwei', 'Drei', 'Vier', 'Fünf', 'Sechs', 'Sieben', 'Acht', 'Neun'];
const displayCount = otherDeviceCount !== undefined && otherDeviceCount >= 1 && otherDeviceCount <= 9 ? numberWords.at(otherDeviceCount - 1) : `${otherDeviceCount}`;
return `${displayCount} weitere ${otherDeviceCount === 1 ? 'Gerät' : 'Geräte'}`;
},
confirmationPromptThisDevice: 'Sind Sie sicher? Sie benötigen einen Magic-Code für die nächste Verifizierung auf diesem Gerät.',
confirmationPromptMultiple: 'Sind Sie sicher? Sie benötigen einen magischen Code für die nächste Verifizierung auf diesen Geräten.',
confirmationPromptThisDevice: 'Sind Sie sicher? Sie benötigen einen Sicherheitscode für die nächste Verifizierung auf diesem Gerät.',
confirmationPromptMultiple: 'Sind Sie sicher? Sie benötigen einen Sicherheitscode für die nächste Verifizierung auf diesen Geräten.',
},
unsupportedDevice: {
unsupportedDevice: 'Nicht unterstütztes Gerät',
Expand All @@ -736,7 +736,7 @@ const translations: TranslationDeepObject<typeof en> = {
du bist angemeldet!
`),
successfulSignInDescription: 'Wechsle zurück zu deinem ursprünglichen Tab, um fortzufahren.',
title: 'Hier ist dein magischer Code',
title: 'Hier ist Ihr Sicherheitscode',
description: Str.dedent(`
Bitte gib den Code von dem Gerät ein,
auf dem er ursprünglich angefordert wurde
Expand All @@ -747,7 +747,7 @@ const translations: TranslationDeepObject<typeof en> = {
`),
or: 'oder',
signInHere: 'melde dich einfach hier an',
expiredCodeTitle: 'Magic Code abgelaufen',
expiredCodeTitle: 'Sicherheitscode abgelaufen',
expiredCodeDescription: 'Gehe zurück zum ursprünglichen Gerät und fordere einen neuen Code an',
successfulNewCodeRequest: 'Code angefordert. Bitte überprüfe dein Gerät.',
tfaRequiredTitle: Str.dedent(`
Expand Down Expand Up @@ -790,7 +790,7 @@ const translations: TranslationDeepObject<typeof en> = {
phrase3: 'Deine Zahlungen kommen so schnell bei dir an, wie du deinen Standpunkt klarmachen kannst.',
enterPassword: 'Bitte geben Sie Ihr Passwort ein',
welcomeNewFace: (login: string) => `${login}, es ist immer schön, ein neues Gesicht hier zu sehen!`,
welcomeEnterMagicCode: (login: string) => `Bitte gib den magischen Code ein, der an ${login} gesendet wurde. Er sollte innerhalb einer oder zwei Minuten ankommen.`,
welcomeEnterSecurityCode: (login: string) => `Bitte geben Sie den an ${login} gesendeten Sicherheitscode ein. Er sollte innerhalb von ein bis zwei Minuten ankommen.`,
},
login: {
hero: {
Expand All @@ -800,9 +800,9 @@ const translations: TranslationDeepObject<typeof en> = {
},
samlSignIn: {
welcomeSAMLEnabled: 'Mit Single Sign-On weiter anmelden:',
orContinueWithMagicCode: 'Sie können sich auch mit einem magischen Code anmelden',
orContinueWithSecurityCode: 'Sie können sich auch mit einem Sicherheitscode anmelden',
useSingleSignOn: 'Einmalanmeldung verwenden',
useMagicCode: 'Magischen Code verwenden',
useSecurityCode: 'Sicherheitscode verwenden',
launching: 'Wird gestartet ...',
oneMoment: 'Einen Moment, wir leiten dich zum Single-Sign-On-Portal deines Unternehmens weiter.',
},
Expand Down Expand Up @@ -2118,16 +2118,16 @@ const translations: TranslationDeepObject<typeof en> = {
`Füge weitere Möglichkeiten hinzu, dich anzumelden und Belege an Expensify zu senden.<br/><br/>Füge eine E‑Mail-Adresse hinzu, um Belege an <a href="mailto:${email}">${email}</a> weiterzuleiten, oder füge eine Telefonnummer hinzu, um Belege per SMS an 47777 zu senden (nur US-Nummern).`,
pleaseVerify: 'Bitte bestätige diese Kontaktmethode.',
getInTouch: 'Wir verwenden diese Methode, um Sie zu kontaktieren.',
enterMagicCode: (contactMethod: string) => `Bitte gib den magischen Code ein, der an ${contactMethod} gesendet wurde. Er sollte innerhalb einer oder zwei Minuten ankommen.`,
enterSecurityCode: (contactMethod: string) => `Bitte geben Sie den Sicherheitscode ein, der an ${contactMethod} gesendet wurde. Er sollte innerhalb ein bis zwei Minuten ankommen.`,
setAsDefault: 'Als Standard festlegen',
yourDefaultContactMethod:
'Dies ist Ihre aktuelle Standard-Kontaktmethode. Bevor Sie sie löschen können, müssen Sie eine andere Kontaktmethode auswählen und auf „Als Standard festlegen“ klicken.',
removeContactMethod: 'Kontaktmethode entfernen',
removeAreYouSure: 'Sind Sie sicher, dass Sie diese Kontaktmethode entfernen möchten? Diese Aktion kann nicht rückgängig gemacht werden.',
failedNewContact: 'Das Hinzufügen dieser Kontaktmethode ist fehlgeschlagen.',
genericFailureMessages: {
requestContactMethodValidateCode: 'Senden eines neuen Magic-Codes fehlgeschlagen. Bitte warten Sie einen Moment und versuchen Sie es erneut.',
validateSecondaryLogin: 'Falscher oder ungültiger Magic-Code. Bitte versuche es erneut oder fordere einen neuen Code an.',
requestContactMethodValidateCode: 'Neuer Sicherheitscode konnte nicht gesendet werden. Bitte warten Sie einen Moment und versuchen Sie es erneut.',
validateSecondaryLogin: 'Falscher oder ungültiger Sicherheitscode. Bitte versuchen Sie es erneut oder fordern Sie einen neuen Code an.',
deleteContactMethod: 'Kontaktmethode konnte nicht gelöscht werden. Bitte wende dich für Hilfe an Concierge.',
setDefaultContactMethod: 'Fehler beim Festlegen einer neuen Standardkontaktmethode. Bitte wende dich für Hilfe an Concierge.',
addContactMethod: 'Diese Kontaktmethode konnte nicht hinzugefügt werden. Bitte wende dich für Hilfe an Concierge.',
Expand Down Expand Up @@ -2291,9 +2291,9 @@ const translations: TranslationDeepObject<typeof en> = {
accountValidate: {
confirmMerge: 'Sind Sie sicher, dass Sie Konten zusammenführen möchten?',
lossOfUnsubmittedData: (login: string) => `Das Zusammenführen Ihrer Konten ist endgültig und führt zum Verlust aller nicht eingereichten Ausgaben für <strong>${login}</strong>.`,
enterMagicCode: (login: string) => `Um fortzufahren, gib bitte den magischen Code ein, der an <strong>${login}</strong> gesendet wurde.`,
enterSecurityCode: (login: string) => `Um fortzufahren, geben Sie bitte den Sicherheitscode ein, der an <strong>${login}</strong> gesendet wurde.`,
errors: {
incorrectMagicCode: 'Falscher oder ungültiger Magic-Code. Bitte versuche es erneut oder fordere einen neuen Code an.',
incorrectSecurityCode: 'Falscher oder ungültiger Sicherheitscode. Bitte versuchen Sie es erneut oder fordern Sie einen neuen Code an.',
fallback: 'Etwas ist schiefgelaufen. Bitte versuchen Sie es später noch einmal.',
},
},
Expand Down Expand Up @@ -2649,8 +2649,8 @@ const translations: TranslationDeepObject<typeof en> = {
cardAddedToWallet: ({platform}: {platform: 'Google' | 'Apple'}) => `Zu ${platform} Wallet hinzugefügt`,
cardDetailsLoadingFailure: 'Beim Laden der Kartendetails ist ein Fehler aufgetreten. Bitte überprüfe deine Internetverbindung und versuche es erneut.',
validateCardTitle: 'Stellen wir sicher, dass du es bist',
enterMagicCode: (contactMethod: string) =>
`Bitte gib den magischen Code ein, der an ${contactMethod} gesendet wurde, um deine Kartendetails anzusehen. Er sollte innerhalb ein bis zwei Minuten ankommen.`,
enterSecurityCode: (contactMethod: string) =>
`Bitte geben Sie den Sicherheitscode ein, der an ${contactMethod} gesendet wurde, um Ihre Kartendetails anzuzeigen. Er sollte innerhalb einer oder zwei Minuten ankommen.`,
unexpectedError: 'Beim Abrufen deiner Expensify-Kartendaten ist ein Fehler aufgetreten. Bitte versuche es erneut.',
cardFraudAlert: {
confirmButtonText: 'Ja, das tue ich',
Expand Down Expand Up @@ -3083,7 +3083,7 @@ ${amount} für ${merchant} – ${date}`,
license: `Die Geldübermittlung wird von ${CONST.WALLET.PROGRAM_ISSUERS.EXPENSIFY_PAYMENTS} (NMLS-ID:2017010) gemäß seinen <a href="${CONST.OLD_DOT_PUBLIC_URLS.LICENSES_URL}">Lizenzen</a> bereitgestellt.`,
},
validateCodeForm: {
magicCodeNotReceived: 'Keinen magischen Code erhalten?',
securityCodeNotReceived: 'Keinen Sicherheitscode erhalten?',
avoidScamsMessage:
'<strong>Vermeiden Sie Betrug. Geben Sie Ihren Code nicht an andere weiter.</strong> Unser Team wird Sie niemals anrufen, per SMS kontaktieren oder Ihnen eine E-Mail senden, um diesen Code zu erfragen.',
enterAuthenticatorCode: 'Bitte gib deinen Authentifizierungscode ein',
Expand All @@ -3094,8 +3094,8 @@ ${amount} für ${merchant} – ${date}`,
timeRemainingAnnouncement: ({timeRemaining}) => `Verbleibende Zeit: ${timeRemaining} ${timeRemaining === 1 ? 'Sekunde' : 'Sekunden'}`,
timeExpiredAnnouncement: 'Die Zeit ist abgelaufen',
error: {
pleaseFillMagicCode: 'Bitte gib deinen Magic Code ein',
incorrectMagicCode: 'Falscher oder ungültiger Magic-Code. Bitte versuche es erneut oder fordere einen neuen Code an.',
pleaseFillSecurityCode: 'Bitte geben Sie Ihren Sicherheitscode ein',
incorrectSecurityCode: 'Falscher oder ungültiger Sicherheitscode. Bitte versuchen Sie es erneut oder fordern Sie einen neuen Code an.',
pleaseFillTwoFactorAuth: 'Bitte gib deinen Zwei-Faktor-Authentifizierungscode ein',
},
},
Expand Down Expand Up @@ -3197,7 +3197,7 @@ ${amount} für ${merchant} – ${date}`,
},
workEmailValidation: {
title: 'Bestätige deine Arbeits-E-Mail-Adresse',
magicCodeSent: (workEmail: string | undefined) => `Bitte gib den magischen Code ein, der an ${workEmail} gesendet wurde. Er sollte in ein bis zwei Minuten ankommen.`,
securityCodeSent: (workEmail: string | undefined) => `Bitte geben Sie den Sicherheitscode ein, der an ${workEmail} gesendet wurde. Er sollte in ein bis zwei Minuten ankommen.`,
},
workEmailValidationError: {
publicEmail: 'Bitte gib eine gültige geschäftliche E-Mail-Adresse von einer privaten Domain ein, z. B. mitch@company.com',
Expand Down Expand Up @@ -3525,12 +3525,13 @@ ${amount} für ${merchant} – ${date}`,
},
resendValidationForm: {
linkHasBeenResent: 'Link wurde erneut gesendet',
weSentYouMagicSignInLink: (login: string, loginType: string) => `Ich habe einen magischen Anmeldelink an ${login} gesendet. Bitte überprüfe dein ${loginType}, um dich anzumelden.`,
weSentYouSecuritySignInLink: (login: string, loginType: string) =>
`Ich habe einen sicheren Anmeldelink an ${login} gesendet. Bitte überprüfen Sie Ihr ${loginType}, um sich anzumelden.`,
resendLink: 'Link erneut senden',
},
unlinkLoginForm: {
toValidateLogin: (primaryLogin: string, secondaryLogin: string) =>
`Um ${secondaryLogin} zu bestätigen, sende den magischen Code bitte erneut aus den Kontoeinstellungen von ${primaryLogin}.`,
`Um ${secondaryLogin} zu bestätigen, senden Sie bitte den Sicherheitscode aus den Kontoeinstellungen von ${primaryLogin} erneut.`,
noLongerHaveAccess: (primaryLogin: string) => `Wenn du keinen Zugriff mehr auf ${primaryLogin} hast, trenne bitte die Verknüpfung deiner Konten.`,
unlink: 'Verknüpfung aufheben',
linkSent: 'Link gesendet!',
Expand All @@ -3552,7 +3553,7 @@ ${amount} für ${merchant} – ${date}`,
smsDeliveryFailurePage: {
smsDeliveryFailureMessage: (login: string) =>
`Wir konnten SMS-Nachrichten nicht an ${login} zustellen und haben es daher vorübergehend deaktiviert. Bitte versuche, deine Nummer zu bestätigen:`,
validationSuccess: 'Deine Nummer wurde bestätigt! Klicke unten, um einen neuen magischen Anmeldecode zu senden.',
validationSuccess: 'Ihre Nummer wurde bestätigt! Klicken Sie unten, um einen neuen Sicherheits-Anmeldecode zu senden.',
validationFailed: ({
timeData,
}: {
Expand Down Expand Up @@ -10037,9 +10038,9 @@ Fügen Sie weitere Ausgabelimits hinzu, um den Cashflow Ihres Unternehmens zu sc
removeCopilotConfirmation: 'Sind Sie sicher, dass Sie diesen Copilot entfernen möchten?',
changeAccessLevel: 'Zugriffsebene ändern',
makeSureItIsYou: 'Stellen wir sicher, dass du es bist',
enterMagicCode: (contactMethod: string) =>
`Bitte gib den magischen Code ein, der an ${contactMethod} gesendet wurde, um eine:n Copilot:in hinzuzufügen. Er sollte innerhalb ein bis zwei Minuten ankommen.`,
enterMagicCodeUpdate: (contactMethod: string) => `Bitte gib den magischen Code ein, der an ${contactMethod} gesendet wurde, um deinen Copilot zu aktualisieren.`,
enterSecurityCode: (contactMethod: string) =>
`Bitte geben Sie den Sicherheitscode ein, der an ${contactMethod} gesendet wurde, um eine:n Copilot:in hinzuzufügen. Er sollte innerhalb von ein bis zwei Minuten ankommen.`,
enterSecurityCodeUpdate: (contactMethod: string) => `Bitte geben Sie den an ${contactMethod} gesendeten Sicherheitscode ein, um Ihre Copilot-Einstellungen zu aktualisieren.`,
notAllowed: 'Nicht so schnell ...',
noAccessMessage: Str.dedent(`
Als Copilot hast du keinen Zugriff auf diese Seite. Entschuldigung!
Expand Down
Loading
Loading