mirror of
https://github.com/logto-io/logto.git
synced 2025-03-10 22:22:45 -05:00
feat(phrases): add german language (#2053)
This commit is contained in:
parent
20dbc8a83e
commit
492ce312be
29 changed files with 924 additions and 6 deletions
|
@ -4,6 +4,7 @@ import { languages } from '@logto/language-kit';
|
|||
import type { NormalizeKeyPaths } from '@silverhand/essentials';
|
||||
import { z } from 'zod';
|
||||
|
||||
import de from './locales/de';
|
||||
import en from './locales/en';
|
||||
import fr from './locales/fr';
|
||||
import ko from './locales/ko';
|
||||
|
@ -16,7 +17,7 @@ export type { LocalePhrase } from './types';
|
|||
|
||||
export type I18nKey = NormalizeKeyPaths<typeof en.translation>;
|
||||
|
||||
export const builtInLanguages = ['en', 'fr', 'pt-PT', 'zh-CN', 'ko', 'tr-TR'] as const;
|
||||
export const builtInLanguages = ['de', 'en', 'fr', 'ko', 'pt-PT', 'tr-TR', 'zh-CN'] as const;
|
||||
|
||||
export const builtInLanguageOptions = builtInLanguages.map((languageTag) => ({
|
||||
value: languageTag,
|
||||
|
@ -30,12 +31,13 @@ export type BuiltInLanguageTag = z.infer<typeof builtInLanguageTagGuard>;
|
|||
export type Resource = Record<BuiltInLanguageTag, LocalePhrase>;
|
||||
|
||||
const resource: Resource = {
|
||||
de,
|
||||
en,
|
||||
fr,
|
||||
'pt-PT': ptPT,
|
||||
'zh-CN': zhCN,
|
||||
ko,
|
||||
'pt-PT': ptPT,
|
||||
'tr-TR': trTR,
|
||||
'zh-CN': zhCN,
|
||||
};
|
||||
|
||||
export const getDefaultLanguageTag = (language: string): LanguageTag =>
|
||||
|
|
90
packages/phrases-ui/src/locales/de.ts
Normal file
90
packages/phrases-ui/src/locales/de.ts
Normal file
|
@ -0,0 +1,90 @@
|
|||
import type { LocalePhrase } from '../types';
|
||||
|
||||
const translation = {
|
||||
input: {
|
||||
username: 'Benutzername',
|
||||
password: 'Passwort',
|
||||
email: 'Email',
|
||||
phone_number: 'Telefonnummer',
|
||||
confirm_password: 'Passwort bestätigen',
|
||||
},
|
||||
secondary: {
|
||||
sign_in_with: 'Anmelden mit {{methods, list(type: disjunction;)}}',
|
||||
social_bind_with:
|
||||
'Besitzt du schon ein Konto? Melde dich an, um {{methods, list(type: disjunction;)}} mit deiner Identität zu verbinden.',
|
||||
},
|
||||
action: {
|
||||
sign_in: 'Anmelden',
|
||||
continue: 'Weiter',
|
||||
create_account: 'Konto erstellen',
|
||||
create: 'Erstellen',
|
||||
enter_passcode: 'Bestätigungscode eingeben',
|
||||
confirm: 'Bestätigen',
|
||||
cancel: 'Abbrechen',
|
||||
save_password: 'Speichern',
|
||||
bind: 'Mit {{address}} verknüpfen',
|
||||
back: 'Gehe zurück',
|
||||
nav_back: 'Zurück',
|
||||
agree: 'Zustimmen',
|
||||
got_it: 'Alles klar',
|
||||
sign_in_with: 'Mit {{name}} anmelden',
|
||||
forgot_password: 'Passwort vergessen?',
|
||||
switch_to: 'Zu {{method}} wechseln',
|
||||
},
|
||||
description: {
|
||||
email: 'Email',
|
||||
phone_number: 'Telefonnummer',
|
||||
reminder: 'Erinnerung',
|
||||
not_found: '404 Nicht gefunden',
|
||||
agree_with_terms: 'Ich akzeptiere die ',
|
||||
agree_with_terms_modal: 'Bitte akzeptiere die <link></link>.',
|
||||
terms_of_use: 'Nutzungsbedingungen',
|
||||
create_account: 'Konto erstellen',
|
||||
or: 'oder',
|
||||
enter_passcode: 'Der Bestätigungscode wurde an deine {{address}} gesendet',
|
||||
passcode_sent: 'Der Bestätigungscode wurde erneut gesendet',
|
||||
resend_after_seconds: 'Nach <span>{{seconds}}</span> Sekunden erneut senden',
|
||||
resend_passcode: 'Bestätigungscode erneut senden',
|
||||
continue_with: 'Weiter mit',
|
||||
create_account_id_exists:
|
||||
'Das Konto mit {{type}} {{value}} existiert bereits, möchtest du dich anmelden?',
|
||||
sign_in_id_does_not_exists:
|
||||
'Das Konto mit {{type}} {{value}} existiert nicht, möchtest du ein neues Konto erstellen?',
|
||||
forgot_password_id_does_not_exits: 'Das Konto mit {{type}} {{value}} existiert nicht.',
|
||||
bind_account_title: 'Konto verknüpfen',
|
||||
social_create_account: 'Kein Konto? Du kannst ein neues Konto erstellen und es verknüpfen.',
|
||||
social_bind_account:
|
||||
'Besitzt du schon ein Konto? Melde dich an, um die Identität zu verknüpfen.',
|
||||
social_bind_with_existing: 'Wir haben ein Konto gefunden, das du verknüpfen kannst.',
|
||||
reset_password: 'Passwort zurücksetzen',
|
||||
reset_password_description_email:
|
||||
'Gib die Email Adresse deines Kontos ein und wir senden dir einen Bestätigungscode um dein Passwort zurückzusetzen.',
|
||||
reset_password_description_sms:
|
||||
'Gib die Telefonnummer deines Kontos ein und wir senden dir einen Bestätigungscode um dein Passwort zurückzusetzen.',
|
||||
new_password: 'Neues Passwort',
|
||||
password_changed: 'Passwort geändert',
|
||||
},
|
||||
error: {
|
||||
username_password_mismatch: 'Benutzername oder Passwort ist falsch',
|
||||
username_required: 'Benutzername ist erforderlich',
|
||||
password_required: 'Passwort ist erforderlich',
|
||||
username_exists: 'Benutzername existiert bereits',
|
||||
username_should_not_start_with_number: 'Benutzername darf nicht mit einer Zahl beginnen',
|
||||
username_valid_charset: 'Benutzername darf nur Buchstaben, Zahlen und Unterstriche enthalten',
|
||||
invalid_email: 'Die Email ist ungültig',
|
||||
invalid_phone: 'Die Telefonnummer ist ungültig',
|
||||
password_min_length: 'Passwort muss mindestens {{min}} Zeichen lang sein',
|
||||
passwords_do_not_match: 'Passwörter stimmen nicht überein',
|
||||
invalid_passcode: 'Der Bestätigungscode ist ungültig',
|
||||
invalid_connector_auth: 'Die Autorisierung ist ungültig',
|
||||
invalid_connector_request: 'Connector Daten sind ungültig',
|
||||
unknown: 'Unbekannter Fehler. Versuche es später noch einmal.',
|
||||
invalid_session: 'Die Sitzung ist ungültig. Bitte melde dich erneut an.',
|
||||
},
|
||||
};
|
||||
|
||||
const de: LocalePhrase = Object.freeze({
|
||||
translation,
|
||||
});
|
||||
|
||||
export default de;
|
|
@ -4,6 +4,7 @@ import { languages } from '@logto/language-kit';
|
|||
import type { NormalizeKeyPaths } from '@silverhand/essentials';
|
||||
import { z } from 'zod';
|
||||
|
||||
import de from './locales/de';
|
||||
import en from './locales/en';
|
||||
import fr from './locales/fr';
|
||||
import ko from './locales/ko';
|
||||
|
@ -16,7 +17,7 @@ export type { LocalPhrase } from './types';
|
|||
|
||||
export type I18nKey = NormalizeKeyPaths<typeof en.translation>;
|
||||
|
||||
export const builtInLanguages = ['en', 'fr', 'pt-PT', 'zh-CN', 'ko', 'tr-TR'] as const;
|
||||
export const builtInLanguages = ['de', 'en', 'fr', 'ko', 'pt-PT', 'tr-TR', 'zh-CN'] as const;
|
||||
|
||||
export const builtInLanguageOptions = builtInLanguages.map((languageTag) => ({
|
||||
value: languageTag,
|
||||
|
@ -42,12 +43,13 @@ export const isBuiltInLanguageTag = (language: string): language is BuiltInLangu
|
|||
export type Resource = Record<BuiltInLanguageTag, LocalPhrase>;
|
||||
|
||||
const resource: Resource = {
|
||||
de,
|
||||
en,
|
||||
fr,
|
||||
'pt-PT': ptPT,
|
||||
'zh-CN': zhCN,
|
||||
ko,
|
||||
'pt-PT': ptPT,
|
||||
'tr-TR': trTR,
|
||||
'zh-CN': zhCN,
|
||||
};
|
||||
|
||||
export default resource;
|
||||
|
|
133
packages/phrases/src/locales/de/errors.ts
Normal file
133
packages/phrases/src/locales/de/errors.ts
Normal file
|
@ -0,0 +1,133 @@
|
|||
const errors = {
|
||||
auth: {
|
||||
authorization_header_missing: 'Autorisierungs-Header fehlt.',
|
||||
authorization_token_type_not_supported: 'Autorisierungs-Typ wird nicht unterstützt.',
|
||||
unauthorized: 'Unautorisiert. Bitte überprüfe deine Zugangsdaten.',
|
||||
forbidden: 'Verboten. Bitte überprüfe deine Rollen und Berechtigungen.',
|
||||
expected_role_not_found:
|
||||
'Erwartete Rolle nicht gefunden. Bitte überprüfe deine Rollen und Berechtigungen.',
|
||||
jwt_sub_missing: '`sub` fehlt in JWT.',
|
||||
},
|
||||
guard: {
|
||||
invalid_input: 'Die Anfrage {{type}} ist ungültig.',
|
||||
invalid_pagination: 'Die Paginierung der Anfrage ist ungültig.',
|
||||
},
|
||||
oidc: {
|
||||
aborted: 'Der Endnutzer hat die Interaktion abgebrochen.',
|
||||
invalid_scope: 'Scope {{scope}} wird nicht unterstützt.',
|
||||
invalid_scope_plural: 'Scopes {{scopes}} werden nicht unterstützt.',
|
||||
invalid_token: 'Ungültiger Token übermittelt.',
|
||||
invalid_client_metadata: 'Ungültige Client Metadaten übermittelt.',
|
||||
insufficient_scope: 'Access token fehlen angefragte scope {{scopes}}.',
|
||||
invalid_request: 'Anfrage ist ungültig.',
|
||||
invalid_grant: 'Grant request ist ungültig.',
|
||||
invalid_redirect_uri:
|
||||
'`redirect_uri` stimmt nicht mit den registrierten `redirect_uris` des Clients überein.',
|
||||
access_denied: 'Zugang verweigert.',
|
||||
invalid_target: 'Ungültiger resource indicator.',
|
||||
unsupported_grant_type: 'Nicht unterstützter `grant_type` angefragt.',
|
||||
unsupported_response_mode: 'Nicht unterstützter `response_mode` angefragt.',
|
||||
unsupported_response_type: 'Nicht unterstützter `response_type` angefragt.',
|
||||
provider_error: 'OIDC interner Fehler: {{message}}.',
|
||||
},
|
||||
user: {
|
||||
username_exists_register: 'Der Benutzername wurde registriert.',
|
||||
email_exists_register: 'Die E-Mail wurde registriert.',
|
||||
phone_exists_register: 'Die Telefonnummer wurde registriert.',
|
||||
invalid_email: 'Ungültige E-Mail.',
|
||||
invalid_phone: 'Ungültige Telefonnummer.',
|
||||
email_not_exists: 'Die E-Mail wurde noch nicht registriert.',
|
||||
phone_not_exists: 'Die Telefonnummer wurde noch nicht registriert.',
|
||||
identity_not_exists: 'Die Identität wurde noch nicht registriert.',
|
||||
identity_exists: 'Die Identität wurde registriert.',
|
||||
invalid_role_names: 'Rollennamen ({{roleNames}}) sind ungültig',
|
||||
cannot_delete_self: 'Du kannst dich nicht selbst löschen.',
|
||||
same_password: 'Das neue Passwort muss sich vom alten unterscheiden.',
|
||||
},
|
||||
password: {
|
||||
unsupported_encryption_method: 'Die Verschlüsselungsmethode {{name}} wird nicht unterstützt.',
|
||||
pepper_not_found: 'Password pepper not found. Please check your core envs.',
|
||||
},
|
||||
session: {
|
||||
not_found: 'Sitzung nicht gefunden. Bitte melde dich erneut an.',
|
||||
invalid_credentials: 'Ungültige Zugangsdaten. Überprüfe deine Eingaben.',
|
||||
invalid_sign_in_method: 'Aktuelle Anmeldemethode ist ungültig.',
|
||||
invalid_connector_id: 'Connector mit ID {{connectorId}} wurde nicht gefunden.',
|
||||
insufficient_info: 'Unzureichende Informationen für die Anmeldung.',
|
||||
connector_id_mismatch: 'Connector ID stimmt nicht mit Sitzung überein.',
|
||||
connector_session_not_found: 'Connector Sitzung nicht gefunden. Bitte melde dich erneut an.',
|
||||
verification_session_not_found:
|
||||
'Die Verifizierung war nicht erfolgreich. Starte die Verifizierung neu und versuche es erneut.',
|
||||
verification_expired:
|
||||
'Die Verbindung wurde unterbrochen. Verifiziere erneut, um die Sicherheit deines Kontos zu gewährleisten.',
|
||||
unauthorized: 'Bitte melde dich erst an.',
|
||||
unsupported_prompt_name: 'Nicht unterstützter prompt Name.',
|
||||
},
|
||||
connector: {
|
||||
// UNTRANSLATED
|
||||
general: 'An unexpected error occurred in connector.{{errorDescription}}',
|
||||
not_found: 'Cannot find any available connector for type: {{type}}.',
|
||||
not_enabled: 'The connector is not enabled.',
|
||||
invalid_metadata: "The connector's metadata is invalid.",
|
||||
invalid_config_guard: "The connector's config guard is invalid.",
|
||||
unexpected_type: "The connector's type is unexpected.",
|
||||
invalid_request_parameters: 'The request is with wrong input parameter(s).',
|
||||
insufficient_request_parameters: 'The request might miss some input parameters.',
|
||||
invalid_config: "The connector's config is invalid.",
|
||||
invalid_response: "The connector's response is invalid.",
|
||||
template_not_found: 'Unable to find correct template in connector config.',
|
||||
not_implemented: '{{method}}: has not been implemented yet.',
|
||||
social_invalid_access_token: "The connector's access token is invalid.",
|
||||
invalid_auth_code: "The connector's auth code is invalid.",
|
||||
social_invalid_id_token: "The connector's id token is invalid.",
|
||||
authorization_failed: "The user's authorization process is unsuccessful.",
|
||||
social_auth_code_invalid: 'Unable to get access token, please check authorization code.',
|
||||
more_than_one_sms: 'The number of SMS connectors is larger then 1.',
|
||||
more_than_one_email: 'The number of Email connectors is larger then 1.',
|
||||
db_connector_type_mismatch: 'There is a connector in the DB that does not match the type.',
|
||||
},
|
||||
passcode: {
|
||||
phone_email_empty: 'Telefonnummer oder E-Mail darf nicht leer sein.',
|
||||
not_found: 'Passcode nicht gefunden. Bitte sende erst einen Passcode.',
|
||||
phone_mismatch:
|
||||
'Telefonnummer stimmt nicht mit Passcode überein. Frage einen neuen Passcode an.',
|
||||
email_mismatch: 'E-Mail stimmt nicht mit Passcode überein. Frage einen neuen Passcode an.',
|
||||
code_mismatch: 'Ungültiger Passcode.',
|
||||
expired: 'Passcode ist abgelaufen. Frage einen neuen Passcode an.',
|
||||
exceed_max_try: 'Passcode wurde zu oft versucht. Frage einen neuen Passcode an.',
|
||||
},
|
||||
sign_in_experiences: {
|
||||
empty_content_url_of_terms_of_use:
|
||||
'Leere "Nutzungsbedingungen" URL. Bitte füge die URL hinzu, wenn "Nutzungsbedingungen" aktiviert ist.',
|
||||
empty_logo: 'Bitte füge eine Logo URL hinzu.',
|
||||
empty_slogan:
|
||||
'Leerer Branding-Slogan. Bitte füge einen Branding-Slogan hinzu, wenn ein UI-Stil ausgewählt wird, der den Slogan enthält.',
|
||||
empty_social_connectors:
|
||||
'Leere Social Connectors. Bitte füge aktivierte Social Connectoren hinzu, wenn Social Anmeldung aktiviert ist.',
|
||||
enabled_connector_not_found: 'Aktivierter {{type}} Connector nicht gefunden.',
|
||||
not_one_and_only_one_primary_sign_in_method:
|
||||
'Es darf nur eine primäre Anmeldemethode geben. Bitte überprüfe deine Eingabe.',
|
||||
unsupported_default_language: 'Die Sprache - {{language}} wird momentan nicht unterstützt.',
|
||||
},
|
||||
localization: {
|
||||
cannot_delete_default_language:
|
||||
'{{languageTag}} ist die Standard-Sprache und kann nicht gelöscht werden.',
|
||||
invalid_translation_structure: 'Ungültige Übersetzungsstruktur. Bitte überprüfe deine Eingabe.',
|
||||
},
|
||||
swagger: {
|
||||
invalid_zod_type: 'Ungültiger Zod Typ. Überprüfe deine route guard Konfiguration.',
|
||||
not_supported_zod_type_for_params:
|
||||
'Nicht unterstützter Zod Typ für diese Parameter. Überprüfe deine route guard Konfiguration.',
|
||||
},
|
||||
entity: {
|
||||
create_failed: 'Fehler beim erstellen von {{name}}.',
|
||||
not_exists: '{{name}} existiert nicht.',
|
||||
not_exists_with_id: '{{name}} mit ID `{{id}}` existiert nicht.',
|
||||
not_found: 'Die Ressource wurde nicht gefunden.',
|
||||
},
|
||||
log: {
|
||||
invalid_type: 'Der Log Typ ist ungültig.',
|
||||
},
|
||||
};
|
||||
|
||||
export default errors;
|
10
packages/phrases/src/locales/de/index.ts
Normal file
10
packages/phrases/src/locales/de/index.ts
Normal file
|
@ -0,0 +1,10 @@
|
|||
import type { LocalPhrase } from '../../types';
|
||||
import errors from './errors';
|
||||
import translation from './translation';
|
||||
|
||||
const de: LocalPhrase = Object.freeze({
|
||||
translation,
|
||||
errors,
|
||||
});
|
||||
|
||||
export default de;
|
|
@ -0,0 +1,11 @@
|
|||
const api_resource_details = {
|
||||
back_to_api_resources: 'Zurück zu API Ressourcen',
|
||||
token_expiration_time_in_seconds: 'Token Ablaufzeit (in Sekunden)',
|
||||
token_expiration_time_in_seconds_placeholder: 'Gib die Ablaufzeit des Tokens ein',
|
||||
delete_description:
|
||||
'Diese Aktion kann nicht rückgängig gemacht werden. Die API Ressource wird permanent gelöscht. Bitte gib den API Ressourcennamen <span>{{name}}</span> zur Bestätigung ein.',
|
||||
enter_your_api_resource_name: 'Gib einen API Ressourcennamen ein',
|
||||
api_resource_deleted: 'Die API Ressource {{name}} wurde erfolgreich gelöscht',
|
||||
};
|
||||
|
||||
export default api_resource_details;
|
|
@ -0,0 +1,14 @@
|
|||
const api_resources = {
|
||||
title: 'API Ressourcen',
|
||||
subtitle: 'Lege APIs an, die du in deinen autorisierten Anwendungen verwenden kannst',
|
||||
create: 'Erstelle API Ressource',
|
||||
api_name: 'API Name',
|
||||
api_name_placeholder: 'Gib einen API Namen ein',
|
||||
api_identifier: 'API Identifikator',
|
||||
api_identifier_tip:
|
||||
'Der eindeutige Identifikator der API Ressource muss eine absolute URI ohne Fragmentbezeichner (#) sein. Entspricht dem Ressourcen Parameter in OAuth 2.0.',
|
||||
api_resource_created: 'Die API Ressource {{name}} wurde erfolgreich angelegt',
|
||||
api_identifier_placeholder: 'https://dein-api-identifikator/',
|
||||
};
|
||||
|
||||
export default api_resources;
|
|
@ -0,0 +1,44 @@
|
|||
const application_details = {
|
||||
back_to_applications: 'Zurück zu Anwendungen',
|
||||
check_guide: 'Zur Anleitung',
|
||||
advanced_settings: 'Erweiterte Einstellungen',
|
||||
application_name: 'Anwendungsname',
|
||||
application_name_placeholder: 'Meine App',
|
||||
description: 'Beschreibung',
|
||||
description_placeholder: 'Gib eine Beschreibung ein',
|
||||
authorization_endpoint: 'Autorisierungs-Endpoint',
|
||||
authorization_endpoint_tip:
|
||||
'Der Endpoint, der für die Authentifizierung und Autorisierung via OpenID Connect verwendet wird.',
|
||||
application_id: 'App ID',
|
||||
application_secret: 'App Geheimnis',
|
||||
redirect_uri: 'Umleitungs-URI',
|
||||
redirect_uris: 'Umleitungs-URIs',
|
||||
redirect_uri_placeholder: 'https://deine.website.de/app',
|
||||
redirect_uri_placeholder_native: 'io.logto://callback',
|
||||
redirect_uri_tip:
|
||||
'URI zu der der Benutzer nach der Anmeldung (egal ob erfolgreich oder nicht) weitergeleitet wird. See OpenID Connect AuthRequest for more info.',
|
||||
post_sign_out_redirect_uri: 'Post Sign-out Umleitungs-URI',
|
||||
post_sign_out_redirect_uris: 'Post Sign-out Umleitungs-URIs',
|
||||
post_sign_out_redirect_uri_placeholder: 'https://deine.website.de/home',
|
||||
post_sign_out_redirect_uri_tip:
|
||||
'URI zu der der Benutzer nach dem Abmelden weitergeleitet wird (optional). Hat bei einigen Anwendungstypen keine Auswirkungen.',
|
||||
cors_allowed_origins: 'CORS allowed origins',
|
||||
cors_allowed_origins_placeholder: 'https://your.website.de',
|
||||
cors_allowed_origins_tip:
|
||||
'Es sind standardmäßig alle Umleitungs-URI Origins erlaubt. Normalerweise ist dieses Feld nicht erforderlich.',
|
||||
add_another: 'Weitere hinzufügen',
|
||||
id_token_expiration: 'ID Token Ablaufzeit',
|
||||
refresh_token_expiration: 'Refresh Token Ablaufzeit',
|
||||
token_endpoint: 'Token Endpoint',
|
||||
user_info_endpoint: 'Benutzerinformations-Endpoint',
|
||||
enable_admin_access: 'Admin-Zugang aktivieren',
|
||||
enable_admin_access_label:
|
||||
'Zugang zur Management API aktivieren oder deaktivieren. Falls aktiviert, können access tokens verwendet werden, um die Management API im Namen der Anwendung aufzurufen.',
|
||||
delete_description:
|
||||
'Diese Aktion kann nicht rückgängig gemacht werden. Die Anwendung wird permanent gelöscht. Bitte gib den Anwendungsnamen <span>{{name}}</span> zur Bestätigung ein.',
|
||||
enter_your_application_name: 'Gib einen Anwendungsnamen ein',
|
||||
application_deleted: 'Anwendung {{name}} wurde erfolgreich gelöscht',
|
||||
redirect_uri_required: 'Gebe mindestens eine Umleitungs-URI an',
|
||||
};
|
||||
|
||||
export default application_details;
|
|
@ -0,0 +1,50 @@
|
|||
const applications = {
|
||||
title: 'Anwendungen',
|
||||
subtitle:
|
||||
'Richte eine native, Single Page oder herkömmliche Anwendung ein, die Logto zur Authentifizierung nutzt.',
|
||||
create: 'Anwendung erstellen',
|
||||
application_name: 'Anwendungsname',
|
||||
application_name_placeholder: 'Meine App',
|
||||
application_description: 'Anwendungsbeschreibung',
|
||||
application_description_placeholder: 'Gib eine Beschreibung ein',
|
||||
select_application_type: 'Wähle einen Anwendungstyp',
|
||||
no_application_type_selected: 'Du hast noch keinen Anwendungstyp ausgewählt',
|
||||
application_created:
|
||||
'Die Anwendung {{name}} wurde erfolgreich erstellt! \nKonfiguriere jetzt die Anwendung.',
|
||||
app_id: 'App ID',
|
||||
type: {
|
||||
native: {
|
||||
title: 'Native App',
|
||||
subtitle: 'Eine Anwendung, die in einer nativen Umgebung läuft',
|
||||
description: 'z.B. iOS app, Android app',
|
||||
},
|
||||
spa: {
|
||||
title: 'Single Page App',
|
||||
subtitle:
|
||||
'Eine Anwendung, die in einem Webbrowser ausgeführt wird und Daten dynamisch an Ort und Stelle aktualisiert',
|
||||
description: 'z.B. React DOM app, Vue app',
|
||||
},
|
||||
traditional: {
|
||||
title: 'Herkömmliche Website',
|
||||
subtitle: 'Eine Anwendung, die Seiten allein durch den Webserver rendert und aktualisiert',
|
||||
description: 'z.B. Next.js, PHP',
|
||||
},
|
||||
machine_to_machine: {
|
||||
title: 'Machine to Machine',
|
||||
subtitle: 'Eine Anwendung (normalerweise ein Dienst), die direkt mit Ressourcen kommuniziert',
|
||||
description: 'z.B. Backend Dienst',
|
||||
},
|
||||
},
|
||||
guide: {
|
||||
get_sample_file: 'Zum Beispielprojekt',
|
||||
header_description:
|
||||
'Folge der Schritt-für-Schritt-Anleitung, um die Anwendung zu integrieren, oder klick auf die rechte Schaltfläche, um unser Beispielprojekt zu erhalten',
|
||||
title: 'Die Anwendung wurde erfolgreich erstellt',
|
||||
subtitle:
|
||||
'Folge nun den folgenden Schritten, um deine App-Einstellungen abzuschließen. Bitte wähle den SDK-Typ aus, um fortzufahren.',
|
||||
description_by_sdk:
|
||||
'Diese Schnellstart-Anleitung zeigt, wie man Logto in die {{sdk}} App integriert',
|
||||
},
|
||||
};
|
||||
|
||||
export default applications;
|
|
@ -0,0 +1,22 @@
|
|||
const connector_details = {
|
||||
back_to_connectors: 'Zurück zu Connectoren',
|
||||
check_readme: 'Zur README',
|
||||
save_error_empty_config: 'Bitte fülle die Konfiguration aus',
|
||||
send: 'Senden',
|
||||
send_error_invalid_format: 'Ungültige Eingabe',
|
||||
edit_config_label: 'Gib deine JSON-Konfiguration ein',
|
||||
test_email_sender: 'Teste den E-Mail Connector',
|
||||
test_sms_sender: 'Teste den SMS Connector',
|
||||
test_email_placeholder: 'Gib eine Test-E-Mail ein',
|
||||
test_sms_placeholder: 'Gib eine Test-Telefonnummer ein',
|
||||
test_message_sent: 'Testnachricht wurde gesendet!',
|
||||
test_sender_description: 'Wenn dein JSON richtig konfiguriert ist, erhältst du eine Nachricht.',
|
||||
options_change_email: 'E-Mail Connector bearbeiten',
|
||||
options_change_sms: 'SMS Connector bearbeiten',
|
||||
connector_deleted: 'Der Connector wurde erfolgreich gelöscht',
|
||||
type_email: 'E-Mail connector',
|
||||
type_sms: 'SMS connector',
|
||||
type_social: 'Social connector',
|
||||
};
|
||||
|
||||
export default connector_details;
|
|
@ -0,0 +1,37 @@
|
|||
const connectors = {
|
||||
title: 'Connectoren',
|
||||
subtitle: 'Richte Connectoren ein um passwortlose und Social Anmeldung zu aktivieren',
|
||||
create: 'Social Connector erstellen',
|
||||
tab_email_sms: 'E-Mail und SMS Connectoren',
|
||||
tab_social: 'Social Connectoren',
|
||||
connector_name: 'Connectorname',
|
||||
connector_type: 'Typ',
|
||||
connector_status: 'Anmeldeoberfläche',
|
||||
connector_status_in_use: 'In Benutzung',
|
||||
connector_status_not_in_use: 'Nicht in Benutzung',
|
||||
social_connector_eg: 'z.B. Google, Facebook, Github',
|
||||
save_and_done: 'Speichern und fertigstellen',
|
||||
type: {
|
||||
email: 'E-Mail Connector',
|
||||
sms: 'SMS Connector',
|
||||
social: 'Social Connector',
|
||||
},
|
||||
setup_title: {
|
||||
email: 'E-Mail Connector einrichten',
|
||||
sms: 'SMS Connector einrichten',
|
||||
social: 'Social Connector erstellen',
|
||||
},
|
||||
guide: {
|
||||
subtitle: 'Eine Schritt-für-Schritt-Anleitung zur Konfiguration deines Connectors',
|
||||
},
|
||||
platform: {
|
||||
universal: 'Universal',
|
||||
web: 'Web',
|
||||
native: 'Nativ',
|
||||
},
|
||||
add_multi_platform: ' unterstützt mehrere Plattformen, wähle eine Plattform aus, um fortzufahren',
|
||||
drawer_title: 'Connector Anleitung',
|
||||
drawer_subtitle: 'Folge den Anweisungen, um deinen Connector zu integrieren',
|
||||
};
|
||||
|
||||
export default connectors;
|
|
@ -0,0 +1,22 @@
|
|||
const contact = {
|
||||
title: 'Kontakt',
|
||||
description:
|
||||
'Tritt unserer Community bei, um Feedback zu geben, um Hilfe zu bitten und deine Gedanken mit anderen Entwicklern zu teilen',
|
||||
discord: {
|
||||
title: 'Discord channel',
|
||||
description: 'Tritt unserem öffentlichen Kanal bei, um mit anderen Entwicklern zu chatten',
|
||||
button: 'Beitreten',
|
||||
},
|
||||
github: {
|
||||
title: 'GitHub',
|
||||
description: 'Erstelle ein Issue bei GitHub',
|
||||
button: 'Öffnen',
|
||||
},
|
||||
email: {
|
||||
title: 'E-Mail senden',
|
||||
description: 'Schick uns eine E-Mail für weitere Informationen und Hilfe',
|
||||
button: 'Senden',
|
||||
},
|
||||
};
|
||||
|
||||
export default contact;
|
|
@ -0,0 +1,22 @@
|
|||
const dashboard = {
|
||||
title: 'Dashboard',
|
||||
description: 'Verschaffe dir einen Überblick über die Leistung deiner App',
|
||||
total_users: 'Gesamtzahl der Benutzer',
|
||||
total_users_tip: 'Gesamtzahl der Benutzer',
|
||||
new_users_today: 'Neue Benutzer heute',
|
||||
new_users_today_tip: 'Neue Benutzer, die sich heute in deinen Anwendungen registriert haben',
|
||||
new_users_7_days: 'Neue Benutzer in den letzten 7 Tagen',
|
||||
new_users_7_days_tip:
|
||||
'Neue Benutzer, die sich in den letzten 7 Tagen in deinen Anwendungen registriert haben',
|
||||
daily_active_users: 'Täglich aktive Benutzer',
|
||||
daily_active_users_tip:
|
||||
'Die Anzahl der einzelnen Benutzer, die heute Token in deinen Anwendungen ausgetauscht haben',
|
||||
weekly_active_users: 'Wöchentlich aktive Benutzer',
|
||||
weekly_active_users_tip:
|
||||
'Die Anzahl der einzelnen Benutzer, die in den letzten 7 Tagen Token in deinen Anwendungen ausgetauscht haben',
|
||||
monthly_active_users: 'Monatlich aktive Benutzer',
|
||||
monthly_active_users_tip:
|
||||
'Die Anzahl der einzelnen Benutzer, die in den letzten 30 Tagen Token in deinen Anwendungen ausgetauscht haben',
|
||||
};
|
||||
|
||||
export default dashboard;
|
|
@ -0,0 +1,21 @@
|
|||
const errors = {
|
||||
something_went_wrong: 'Ups, da ist etwas schief gelaufen.',
|
||||
page_not_found: 'Seite nicht gefunden',
|
||||
unknown_server_error: 'Unbekannter Serverfehler',
|
||||
empty: 'Keine Daten verfügbar',
|
||||
missing_total_number: 'Total-Number wurde nicht in Response Headern gefunden',
|
||||
invalid_uri_format: 'Ungültiges URI-Format',
|
||||
invalid_origin_format: 'Ungültiges URI Origin-Format',
|
||||
invalid_json_format: 'Ungültiges JSON-Format',
|
||||
invalid_error_message_format: 'Ungültiges Fehlermeldung-Format.',
|
||||
required_field_missing: 'Bitte fülle {{field}} aus',
|
||||
required_field_missing_plural: 'Mindestens ein {{field}} muss ausgefüllt sein',
|
||||
more_details: 'Mehr Details',
|
||||
username_pattern_error:
|
||||
'Der Benutzername sollte nur Buchstaben, Zahlen oder Unterstriche enthalten und nicht mit einer Zahl beginnen.',
|
||||
password_pattern_error: 'Das Passwort muss aus mindestens 6 Zeichen lang sein',
|
||||
insecure_contexts: 'Unsichere Kontexte (nicht-HTTPS) werden nicht unterstützt.',
|
||||
unexpected_error: 'Ein unerwarteter Fehler ist aufgetreten',
|
||||
};
|
||||
|
||||
export default errors;
|
|
@ -0,0 +1,42 @@
|
|||
const general = {
|
||||
placeholder: 'Platzhalter',
|
||||
skip: 'Überspringen',
|
||||
next: 'Weiter',
|
||||
retry: 'Erneut versuchen',
|
||||
done: 'Fertig',
|
||||
search: 'Suche',
|
||||
search_placeholder: 'Suchen',
|
||||
clear_result: 'Ergebnisse löschen',
|
||||
save: 'Speichern',
|
||||
save_changes: 'Änderungen speichern',
|
||||
saved: 'Gespeichert!',
|
||||
loading: 'Lade...',
|
||||
redirecting: 'Weiterleiten...',
|
||||
add: 'Hinzufügen',
|
||||
added: 'Hinzugefügt',
|
||||
cancel: 'Abbrechen',
|
||||
confirm: 'Bestätigen',
|
||||
check_out: 'Ansehen',
|
||||
create: 'Erstellen',
|
||||
set_up: 'Einrichten',
|
||||
customize: 'Anpassen',
|
||||
enable: 'Aktivieren',
|
||||
reminder: 'Erinnerung',
|
||||
delete: 'Löschen',
|
||||
more_options: 'MEHR OPTIONEN',
|
||||
close: 'Schließen',
|
||||
copy: 'Kopieren',
|
||||
copying: 'Kopiere',
|
||||
copied: 'Kopiert',
|
||||
required: 'Erforderlich',
|
||||
add_another: '+ Weitere hinzufügen',
|
||||
deletion_confirmation: 'Willst du {{title}} wirklich löschen?',
|
||||
settings_nav: 'Einstellungen',
|
||||
unsaved_changes_warning:
|
||||
'Du hast ungespeicherte Änderungen. Willst du diese Seite wirklich verlassen?',
|
||||
leave_page: 'Seite verlassen',
|
||||
stay_on_page: 'Auf Seite bleiben',
|
||||
type_to_search: 'Tippe um zu suchen',
|
||||
};
|
||||
|
||||
export default general;
|
|
@ -0,0 +1,29 @@
|
|||
const get_started = {
|
||||
progress: 'Erste Schritte: {{completed}}/{{total}}',
|
||||
progress_dropdown_title: 'Was du machen kannst...',
|
||||
title: 'Wie willst du mit Logto loslegen?',
|
||||
subtitle_part1: 'Ein paar Dinge, die du tun kannst, um schnell von Logto zu profitieren',
|
||||
subtitle_part2: 'Ich bin fertig mit der Einrichtung.',
|
||||
hide_this: 'Ausblenden',
|
||||
confirm_message:
|
||||
'Bist du sicher, dass du diese Seite ausblenden willst? Diese Aktion kann nicht rückgängig gemacht werden.',
|
||||
card1_title: 'Zur Demo',
|
||||
card1_subtitle: 'Probiere die Logto-Anmeldung jetzt aus, um zu sehen, wie sie funktioniert',
|
||||
card2_title: 'Erste Anwendung erstellen und integrieren',
|
||||
card2_subtitle:
|
||||
'Richte eine native, Single Page oder herkömmliche Anwendung ein, die Logto zur Authentifizierung nutzt.',
|
||||
card3_title: 'Anmeldeoberfläche anpassen',
|
||||
card3_subtitle:
|
||||
'Passe die Benutzeroberfläche für die Anmeldung an deine Marke an und zeige eine Vorschau in Echtzeit an',
|
||||
card4_title: 'SMS- und E-Mail-Verbindung einrichten',
|
||||
card4_subtitle:
|
||||
'Probiere die passwortlose Anmeldung mit Telefonnummer oder E-Mail aus, um ein sicheres und reibungsloses Kundenerlebnis zu ermöglichen.',
|
||||
card5_title: 'Social Connector hinzufügen',
|
||||
card5_subtitle:
|
||||
'Lass deine Kunden sich mit einem Klick mit ihren sozialen Identitäten bei deiner App anmelden',
|
||||
card6_title: 'Weitere Informationen',
|
||||
card6_subtitle:
|
||||
'Schau dir unsere schrittweisen, szenariobasierten Dokumentationen ohne langweilige Konzepte an',
|
||||
};
|
||||
|
||||
export default get_started;
|
|
@ -0,0 +1,52 @@
|
|||
import api_resource_details from './api-resource-details';
|
||||
import api_resources from './api-resources';
|
||||
import application_details from './application-details';
|
||||
import applications from './applications';
|
||||
import connector_details from './connector-details';
|
||||
import connectors from './connectors';
|
||||
import contact from './contact';
|
||||
import dashboard from './dashboard';
|
||||
import errors from './errors';
|
||||
import general from './general';
|
||||
import get_started from './get-started';
|
||||
import log_details from './log-details';
|
||||
import logs from './logs';
|
||||
import session_expired from './session-expired';
|
||||
import settings from './settings';
|
||||
import sign_in_exp from './sign-in-exp';
|
||||
import tab_sections from './tab-sections';
|
||||
import tabs from './tabs';
|
||||
import user_details from './user-details';
|
||||
import users from './users';
|
||||
import welcome from './welcome';
|
||||
|
||||
const admin_console = {
|
||||
title: 'Admin Konsole',
|
||||
sign_out: 'Abmelden',
|
||||
profile: 'Profil',
|
||||
admin_user: 'Admin',
|
||||
system_app: 'System',
|
||||
general,
|
||||
errors,
|
||||
tab_sections,
|
||||
tabs,
|
||||
applications,
|
||||
application_details,
|
||||
api_resources,
|
||||
api_resource_details,
|
||||
connectors,
|
||||
connector_details,
|
||||
get_started,
|
||||
users,
|
||||
user_details,
|
||||
contact,
|
||||
sign_in_exp,
|
||||
settings,
|
||||
dashboard,
|
||||
logs,
|
||||
log_details,
|
||||
session_expired,
|
||||
welcome,
|
||||
};
|
||||
|
||||
export default admin_console;
|
|
@ -0,0 +1,17 @@
|
|||
const log_details = {
|
||||
back_to_logs: 'Zurück zu Audit Logs',
|
||||
back_to_user: 'Zurück zu {{name}}',
|
||||
success: 'Erfolgreich',
|
||||
failed: 'Fehlgeschlagen',
|
||||
event_type: 'Event Typ',
|
||||
application: 'Anwendung',
|
||||
ip_address: 'IP Adresse',
|
||||
user: 'Benutzer',
|
||||
log_id: 'Log ID',
|
||||
time: 'Zeit',
|
||||
user_agent: 'User agent',
|
||||
tab_details: 'Details',
|
||||
raw_data: 'Rohe Daten',
|
||||
};
|
||||
|
||||
export default log_details;
|
|
@ -0,0 +1,12 @@
|
|||
const logs = {
|
||||
title: 'Audit Logs',
|
||||
subtitle:
|
||||
'Anzeige der Log Daten von Authentifizierungsereignissen, die von Admins und Benutzern stammen',
|
||||
event: 'Event',
|
||||
user: 'Benutzer',
|
||||
application: 'Anwendung',
|
||||
time: 'Zeit',
|
||||
filter_by: 'Filter nach',
|
||||
};
|
||||
|
||||
export default logs;
|
|
@ -0,0 +1,8 @@
|
|||
const session_expired = {
|
||||
title: 'Sitzung abgelaufen',
|
||||
subtitle:
|
||||
'Deine Sitzung ist möglicherweise abgelaufen und deine Verbindung wurde unterbrochen. Klicke auf die Schaltfläche unten, um dich erneut an der Admin Konsole anzumelden.',
|
||||
button: 'Erneut anmelden',
|
||||
};
|
||||
|
||||
export default session_expired;
|
|
@ -0,0 +1,27 @@
|
|||
const settings = {
|
||||
title: 'Einstellungen',
|
||||
description: 'Verwalte die globalen Einstellungen',
|
||||
tabs: {
|
||||
general: 'Allgemein',
|
||||
},
|
||||
custom_domain: 'Benutzerdefinierte Domain',
|
||||
language: 'Sprache',
|
||||
appearance: 'Darstellung',
|
||||
appearance_system: 'Synchonisiere mit Systemeinstellungen',
|
||||
appearance_light: 'Hell',
|
||||
appearance_dark: 'Dunkel',
|
||||
saved: 'Gespeichert!',
|
||||
change_password: 'Passwort ändern',
|
||||
change_password_description:
|
||||
'Du kannst das Passwort für dieses Konto ändern. Du verwendest den aktuellen Benutzernamen mit dem neuen Passwort, um dich in der Admin Konsole anzumelden.',
|
||||
change_modal_title: 'Account Password ändern',
|
||||
change_modal_description:
|
||||
'Du verwendest den aktuellen Benutzernamen mit dem neuen Passwort, um dich in der Admin Konsole anzumelden.',
|
||||
new_password: 'Neues Passwort',
|
||||
new_password_placeholder: 'Gib ein neues Passwort ein',
|
||||
confirm_password: 'Passwort bestätigen',
|
||||
confirm_password_placeholder: 'Bestätige das neue Passwort',
|
||||
password_changed: 'Passwort geändert!',
|
||||
};
|
||||
|
||||
export default settings;
|
|
@ -0,0 +1,140 @@
|
|||
const sign_in_exp = {
|
||||
title: 'Anmeldeoberfläche',
|
||||
description:
|
||||
'Passe die Benutzeroberfläche für die Anmeldung an deine Marke an und zeige eine Vorschau in Echtzeit an',
|
||||
tabs: {
|
||||
branding: 'Branding',
|
||||
methods: 'Anmeldemethoden',
|
||||
others: 'Andere',
|
||||
},
|
||||
welcome: {
|
||||
title:
|
||||
'Dies ist das erste Mal, dass du deine Anmeldeoberfläche anpasst. Diese Anleitung hilft dir, alle notwendigen Einstellungen vorzunehmen und schnell loszulegen.',
|
||||
get_started: 'Erste Schritte',
|
||||
apply_remind:
|
||||
'Bitte beachte, dass die Anmeldeoberfläche für alle Anwendungen unter diesem Konto gilt.',
|
||||
got_it: 'Alles klar',
|
||||
},
|
||||
color: {
|
||||
title: 'FARBE',
|
||||
primary_color: 'Markenfarbe',
|
||||
dark_primary_color: 'Markenfarbe (Dunkler Modus)',
|
||||
dark_mode: 'Aktiviere Dunklen Modus',
|
||||
dark_mode_description:
|
||||
'Deine App erhält einen automatisch generierten Dunklen Modus, der auf deiner Markenfarbe und dem Logto-Algorithmus basiert. Du kannst diesen nach Belieben anpassen.',
|
||||
dark_mode_reset_tip: 'Neuberechnung der Farbe des dunklen Modus basierend auf der Markenfarbe.',
|
||||
reset: 'Neuberechnen',
|
||||
},
|
||||
branding: {
|
||||
title: 'BRANDING',
|
||||
ui_style: 'Stil',
|
||||
styles: {
|
||||
logo_slogan: 'App logo mit Slogan',
|
||||
logo: 'Nur App logo',
|
||||
},
|
||||
logo_image_url: 'App logo URL',
|
||||
logo_image_url_placeholder: 'https://dein.cdn.domain/logo.png',
|
||||
dark_logo_image_url: 'App logo URL (Dunkler Modus)',
|
||||
dark_logo_image_url_placeholder: 'https://dein.cdn.domain/logo-dark.png',
|
||||
slogan: 'Slogan',
|
||||
slogan_placeholder: 'Entfessle deine Kreativität',
|
||||
},
|
||||
sign_in_methods: {
|
||||
title: 'ANMELDEMETHODEN',
|
||||
primary: 'Primäre Anmeldemethode',
|
||||
enable_secondary: 'Aktiviere sekundäre Anmeldemethoden',
|
||||
enable_secondary_description:
|
||||
'Sobald sie aktiviert ist, unterstützt deine App neben der primären Anmeldemethode noch weitere Anmeldemethoden. ',
|
||||
methods: 'Anmeldemethode',
|
||||
methods_sms: 'SMS Anmeldung',
|
||||
methods_email: 'E-Mail Anmeldung',
|
||||
methods_social: 'Social Anmeldung',
|
||||
methods_username: 'Benutzername-und-Passwort Anmeldung',
|
||||
methods_primary_tag: '(Primär)',
|
||||
define_social_methods: 'Definiere die unterstützten Social Anmeldemethoden',
|
||||
transfer: {
|
||||
title: 'Social Connectoren',
|
||||
footer: {
|
||||
not_in_list: 'Nicht in der Liste?',
|
||||
set_up_more: 'Mehr Social Connectoren einrichten',
|
||||
go_to: 'oder "Connectoren" aufrufen.',
|
||||
},
|
||||
},
|
||||
},
|
||||
others: {
|
||||
terms_of_use: {
|
||||
title: 'NUTZUNGSBEDINGUNGEN',
|
||||
enable: 'Aktiviere Nutzungsbedingungen',
|
||||
description: 'Füge die rechtlichen Vereinbarungen für die Nutzung deines Produkts hinzu',
|
||||
terms_of_use: 'Nutzungsbedingungen',
|
||||
terms_of_use_placeholder: 'https://beispiel.de/nutzungsbedingungen',
|
||||
terms_of_use_tip: 'URL zu den Nutzungsbedingungen',
|
||||
},
|
||||
languages: {
|
||||
title: 'SPRACHEN',
|
||||
enable_auto_detect: 'Aktiviere automatische Spracherkennung',
|
||||
description:
|
||||
'Deine Software erkennt die Sprach-Einstellung des Nutzers und schaltet auf die lokale Sprache um. Du kannst neue Sprachen hinzufügen, indem du die Benutzeroberfläche vom Englischen in eine andere Sprache übersetzt.',
|
||||
manage_language: 'Sprachen verwalten',
|
||||
default_language: 'Standard-Sprache',
|
||||
default_language_description_auto:
|
||||
'Die Standardsprache wird verwendet, wenn die erkannte Benutzersprache nicht in der aktuellen Sprachbibliothek enthalten ist.',
|
||||
default_language_description_fixed:
|
||||
'Wenn die automatische Erkennung deaktiviert ist, ist die Standardsprache die einzige Sprache, die deine Software anzeigt. Schalte die automatische Erkennung ein um weitere Sprachen anzuzeigen.',
|
||||
},
|
||||
manage_language: {
|
||||
title: 'Sprachen verwalten',
|
||||
subtitle:
|
||||
'Erweitere die Anmeldeoberfläche durch neue Sprachen und Übersetzungen. Deine Übersetzung kann als Standard-Sprache verwendet werden.',
|
||||
add_language: 'Sprache hinzufügen',
|
||||
logto_provided: 'Von Logto bereitgestellt',
|
||||
key: 'Schlüssel',
|
||||
logto_source_values: 'Logto Übersetzungen',
|
||||
custom_values: 'Benutzerdefinierte Übersetzungen',
|
||||
clear_all_tip: 'Alle benutzerdefinierten Übersetzungen löschen',
|
||||
unsaved_description:
|
||||
'Wenn du diese Seite verlässt, ohne zu speichern, werden die Änderungen nicht gespeichert.',
|
||||
deletion_tip: 'Sprache löschen',
|
||||
deletion_title: 'Willst du diese Sprache wirklich löschen?',
|
||||
deletion_description:
|
||||
'Nach dem Löschen können deine Benutzer diese Sprache nicht mehr nutzen.',
|
||||
default_language_deletion_title: 'Die Standardsprache kann nicht gelöscht werden.',
|
||||
default_language_deletion_description:
|
||||
'{{language}} ist als Standardsprache eingestellt und kann nicht gelöscht werden. ',
|
||||
got_it: 'Alles klar',
|
||||
},
|
||||
authentication: {
|
||||
title: 'AUTHENTIFIZIERUNG',
|
||||
enable_create_account: 'Aktiviere Registrierung',
|
||||
enable_create_account_description:
|
||||
'Aktiviere oder deaktiviere Konto Registrierung. Wenn diese Funktion deaktiviert ist, können deine Kunden keine Konten über die Anmeldeoberfläche erstellen, aber du kannst immer noch Benutzer in der Admin Konsole hinzufügen.',
|
||||
},
|
||||
},
|
||||
setup_warning: {
|
||||
no_connector: '',
|
||||
no_connector_sms:
|
||||
'Du hast noch keinen SMS Connector eingerichtet. Deine Anmeldung wird erst freigeschaltet, wenn du die Einstellungen abgeschlossen hast. ',
|
||||
no_connector_email:
|
||||
'Du hast noch keinen E-Mail Connector eingerichtet. Deine Anmeldung wird erst freigeschaltet, wenn du die Einstellungen abgeschlossen hast. ',
|
||||
no_connector_social:
|
||||
'Du hast noch keinen Social Connector eingerichtet. Deine Anmeldung wird erst freigeschaltet, wenn du die Einstellungen abgeschlossen hast. ',
|
||||
no_added_social_connector:
|
||||
'Du hast jetzt ein paar Social Connectoren eingerichtet. Füge jetzt einige zu deinem Anmeldeerlebnis hinzu.',
|
||||
},
|
||||
save_alert: {
|
||||
description:
|
||||
'Du änderst die Anmeldemethoden. Das wird sich auf einige deiner Benutzer auswirken. Bist du sicher, dass du das tun willst?',
|
||||
before: 'Vorher',
|
||||
after: 'Nachher',
|
||||
},
|
||||
preview: {
|
||||
title: 'Vorschau',
|
||||
dark: 'Dunkel',
|
||||
light: 'Hell',
|
||||
native: 'Nativ',
|
||||
desktop_web: 'Desktop Web',
|
||||
mobile_web: 'Mobil Web',
|
||||
},
|
||||
};
|
||||
|
||||
export default sign_in_exp;
|
|
@ -0,0 +1,8 @@
|
|||
const tab_sections = {
|
||||
overview: 'Übersicht',
|
||||
resource_management: 'Ressourcenverwaltung',
|
||||
user_management: 'Benutzerverwaltung',
|
||||
help_and_support: 'Hilfe und Support',
|
||||
};
|
||||
|
||||
export default tab_sections;
|
|
@ -0,0 +1,15 @@
|
|||
const tabs = {
|
||||
get_started: 'Erste Schritte',
|
||||
dashboard: 'Dashboard',
|
||||
applications: 'Anwendungen',
|
||||
api_resources: 'API Ressourcen',
|
||||
sign_in_experience: 'Anmeldeoberfläche',
|
||||
connectors: 'Connectoren',
|
||||
users: 'Benutzerverwaltung',
|
||||
audit_logs: 'Audit Logs',
|
||||
docs: 'Dokumentation',
|
||||
contact_us: 'Kontakt',
|
||||
settings: 'Einstellungen',
|
||||
};
|
||||
|
||||
export default tabs;
|
|
@ -0,0 +1,41 @@
|
|||
const user_details = {
|
||||
back_to_users: 'Zurück zur Benutzerverwaltung',
|
||||
created_title: 'Der Benutzer wurde erfolgreich erstellt',
|
||||
created_guide: 'Sende dem Benutzer folgende Anmeldeinformationen',
|
||||
created_username: 'Benutzername:',
|
||||
created_password: 'Passwort:',
|
||||
menu_delete: 'Löschen',
|
||||
delete_description:
|
||||
'Diese Aktion kann nicht rückgängig gemacht werden. Der Benutzer wird permanent gelöscht.',
|
||||
deleted: 'Der Benutzer wurde erfolgreich gelöscht',
|
||||
reset_password: {
|
||||
reset_password: 'Passwort zurücksetzen',
|
||||
title: 'Willst du das Passwort wirklich zurücksetzen?',
|
||||
content:
|
||||
'Diese Aktion kann nicht rückgängig gemacht werden. Das Anmeldeinformationen werden zurückgesetzt.',
|
||||
congratulations: 'Der Benutzer wurde erfolgreich zurückgesetzt',
|
||||
new_password: 'Neues Passwort:',
|
||||
},
|
||||
tab_logs: 'Benutzer-Logs',
|
||||
field_email: 'Primäre E-Mail',
|
||||
field_phone: 'Primäre Telefonnummer',
|
||||
field_username: 'Benutzername',
|
||||
field_name: 'Name',
|
||||
field_avatar: 'Profilbild URL',
|
||||
field_avatar_placeholder: 'https://dein.cdn.domain/profilbild.png',
|
||||
field_custom_data: 'Benutzerdefinierte Daten',
|
||||
field_custom_data_tip:
|
||||
'Zusätzliche Benutzerinformationen, die nicht in den vordefinierten Benutzereigenschaften aufgeführt sind, wie z. B. die vom Benutzer bevorzugte Farbe und Sprache.',
|
||||
field_connectors: 'Social Connections',
|
||||
custom_data_invalid: 'Benutzerdefinierte Daten müssen ein gültiges JSON-Objekt sein.',
|
||||
connectors: {
|
||||
connectors: 'Connectoren',
|
||||
user_id: 'Benutzer ID',
|
||||
remove: 'Löschen',
|
||||
not_connected: 'Der Nutzer ist nicht mit einem Social Connector verbunden',
|
||||
deletion_confirmation:
|
||||
'Du entfernst die bestehende <name/> Identität. Bist du sicher, dass du das tun willst?',
|
||||
},
|
||||
};
|
||||
|
||||
export default user_details;
|
|
@ -0,0 +1,15 @@
|
|||
const users = {
|
||||
title: 'Benutzerverwaltung',
|
||||
subtitle:
|
||||
'Verwalten von Benutzeridentitäten, einschließlich des Anlegens von Benutzern, Bearbeiten von Benutzerinformationen, Anzeigen von Benutzer-Logs, Zurücksetzen von Passwörtern und Löschen von Benutzern',
|
||||
create: 'Benutzer hinzufügen',
|
||||
user_name: 'Benutzer',
|
||||
application_name: 'Anwendungsname',
|
||||
latest_sign_in: 'Letzte Anmeldung',
|
||||
create_form_username: 'Benutzername',
|
||||
create_form_password: 'Passwort',
|
||||
create_form_name: 'Name',
|
||||
unnamed: 'Unbenannt',
|
||||
};
|
||||
|
||||
export default users;
|
|
@ -0,0 +1,8 @@
|
|||
const welcome = {
|
||||
title: 'Willkommen in der Admin Konsole',
|
||||
description:
|
||||
'Die Admin-Konsole ist eine Web-App, mit der du Logto verwalten kannst, ohne programmieren zu müssen. Legen wir zunächst ein Konto an. Mit diesem Konto kannst du Logto selbst oder im Namen deines Unternehmens verwalten.',
|
||||
create_account: 'Konto erstellen',
|
||||
};
|
||||
|
||||
export default welcome;
|
15
packages/phrases/src/locales/de/translation/demo-app.ts
Normal file
15
packages/phrases/src/locales/de/translation/demo-app.ts
Normal file
|
@ -0,0 +1,15 @@
|
|||
const demo_app = {
|
||||
notification:
|
||||
'Nutze dein existierendes Admin Konto oder erstelle ein neues Konto um dich in die Demo App einzuloggen.',
|
||||
title: 'Du hast dich erfolgreich in der Demo App angemeldet!',
|
||||
subtitle: 'Here is your log in information:',
|
||||
username: 'Benutzername: ',
|
||||
user_id: 'Benutzer ID: ',
|
||||
sign_out: 'Aus der Demo App ausloggen',
|
||||
continue_explore: 'Oder weiter zum Entdecken',
|
||||
customize_sign_in_experience: 'Anmeldeoberfläche anpassen',
|
||||
enable_passwordless: 'Passwordless einschalten',
|
||||
add_social_connector: 'Social Connector hinzufügen',
|
||||
};
|
||||
|
||||
export default demo_app;
|
9
packages/phrases/src/locales/de/translation/index.ts
Normal file
9
packages/phrases/src/locales/de/translation/index.ts
Normal file
|
@ -0,0 +1,9 @@
|
|||
import admin_console from './admin-console';
|
||||
import demo_app from './demo-app';
|
||||
|
||||
const translation = {
|
||||
admin_console,
|
||||
demo_app,
|
||||
};
|
||||
|
||||
export default translation;
|
Loading…
Add table
Reference in a new issue