@eifi1/ui-kit 0.29.0 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -6
- package/dist/account/account-parts.d.ts +21 -0
- package/dist/account/account-parts.js +40 -0
- package/dist/account/account-parts.js.map +1 -0
- package/dist/account/data-export-setting.d.ts +73 -0
- package/dist/account/data-export-setting.js +114 -0
- package/dist/account/data-export-setting.js.map +1 -0
- package/dist/account/delete-account-setting.d.ts +95 -0
- package/dist/account/delete-account-setting.js +200 -0
- package/dist/account/delete-account-setting.js.map +1 -0
- package/dist/account/email-change-setting.d.ts +136 -0
- package/dist/account/email-change-setting.js +278 -0
- package/dist/account/email-change-setting.js.map +1 -0
- package/dist/account/sessions-setting.d.ts +110 -0
- package/dist/account/sessions-setting.js +147 -0
- package/dist/account/sessions-setting.js.map +1 -0
- package/dist/admin/admin-action-confirm.d.ts +95 -0
- package/dist/admin/admin-action-confirm.js +276 -0
- package/dist/admin/admin-action-confirm.js.map +1 -0
- package/dist/admin/admin-action-log.d.ts +105 -0
- package/dist/admin/admin-action-log.js +153 -0
- package/dist/admin/admin-action-log.js.map +1 -0
- package/dist/admin/admin-parts.d.ts +40 -0
- package/dist/admin/admin-parts.js +45 -0
- package/dist/admin/admin-parts.js.map +1 -0
- package/dist/admin/invitations-panel.d.ts +95 -0
- package/dist/admin/invitations-panel.js +290 -0
- package/dist/admin/invitations-panel.js.map +1 -0
- package/dist/admin/reviewer-scope-editor.d.ts +95 -0
- package/dist/admin/reviewer-scope-editor.js +134 -0
- package/dist/admin/reviewer-scope-editor.js.map +1 -0
- package/dist/admin/role-select.d.ts +95 -0
- package/dist/admin/role-select.js +128 -0
- package/dist/admin/role-select.js.map +1 -0
- package/dist/admin/transfer-ownership-dialog.d.ts +95 -0
- package/dist/admin/transfer-ownership-dialog.js +83 -0
- package/dist/admin/transfer-ownership-dialog.js.map +1 -0
- package/dist/admin/user-roster.d.ts +95 -0
- package/dist/admin/user-roster.js +285 -0
- package/dist/admin/user-roster.js.map +1 -0
- package/dist/auth/auth-errors.d.ts +103 -6
- package/dist/auth/auth-errors.js +68 -2
- package/dist/auth/auth-errors.js.map +1 -1
- package/dist/auth/forgot-password-form.d.ts +10 -3
- package/dist/auth/forgot-password-form.js +6 -3
- package/dist/auth/forgot-password-form.js.map +1 -1
- package/dist/auth/register-form.d.ts +21 -12
- package/dist/auth/register-form.js +6 -4
- package/dist/auth/register-form.js.map +1 -1
- package/dist/auth/reset-password-form.d.ts +10 -3
- package/dist/auth/reset-password-form.js +6 -3
- package/dist/auth/reset-password-form.js.map +1 -1
- package/dist/auth/sign-in-form.d.ts +75 -9
- package/dist/auth/sign-in-form.js +105 -15
- package/dist/auth/sign-in-form.js.map +1 -1
- package/dist/auth/verify-email.d.ts +7 -2
- package/dist/auth/verify-email.js +44 -8
- package/dist/auth/verify-email.js.map +1 -1
- package/dist/chart.d.ts +20 -11
- package/dist/components/account-chips.d.ts +47 -7
- package/dist/components/account-chips.js +19 -3
- package/dist/components/account-chips.js.map +1 -1
- package/dist/components/account-settings-labels.d.ts +24 -1
- package/dist/components/account-settings-labels.js +6 -2
- package/dist/components/account-settings-labels.js.map +1 -1
- package/dist/components/account-settings.d.ts +69 -8
- package/dist/components/account-settings.js +133 -25
- package/dist/components/account-settings.js.map +1 -1
- package/dist/components/amount-input.d.ts +21 -12
- package/dist/components/button-group.d.ts +21 -12
- package/dist/components/calculator.d.ts +21 -12
- package/dist/components/confirm-dialog.d.ts +21 -12
- package/dist/components/copy-button.d.ts +18 -9
- package/dist/components/danger-confirm.d.ts +21 -12
- package/dist/components/data-table.js +8 -1
- package/dist/components/data-table.js.map +1 -1
- package/dist/components/date-picker.js +9 -4
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/facing-pair.d.ts +21 -12
- package/dist/components/file-button.d.ts +21 -12
- package/dist/components/file-dropzone.d.ts +21 -12
- package/dist/components/form-actions.d.ts +21 -12
- package/dist/components/iban-input.d.ts +21 -12
- package/dist/components/language-select.d.ts +21 -12
- package/dist/components/legal-page.d.ts +21 -12
- package/dist/components/legal.d.ts +21 -12
- package/dist/components/money-field.d.ts +21 -12
- package/dist/components/number-field.d.ts +21 -12
- package/dist/components/number-input.d.ts +21 -12
- package/dist/components/numpad-sheet.d.ts +21 -12
- package/dist/components/passkeys-setting.js +2 -1
- package/dist/components/passkeys-setting.js.map +1 -1
- package/dist/components/phone-input.d.ts +21 -12
- package/dist/components/series-chart.d.ts +21 -12
- package/dist/components/settings-fields.d.ts +55 -13
- package/dist/components/settings-fields.js +20 -1
- package/dist/components/settings-fields.js.map +1 -1
- package/dist/components/share-card.d.ts +20 -11
- package/dist/components/text-link.d.ts +21 -12
- package/dist/components/time-input.d.ts +21 -12
- package/dist/components/ui.d.ts +17 -8
- package/dist/{register-form-V1OeNlMr.d.ts → delete-account-setting-DCFS5Vof.d.ts} +6612 -5612
- package/dist/demo/demo-banner.d.ts +51 -0
- package/dist/demo/demo-banner.js +97 -0
- package/dist/demo/demo-banner.js.map +1 -0
- package/dist/demo/demo-countdown.d.ts +58 -0
- package/dist/demo/demo-countdown.js +79 -0
- package/dist/demo/demo-countdown.js.map +1 -0
- package/dist/demo/demo-ended.d.ts +45 -0
- package/dist/demo/demo-ended.js +42 -0
- package/dist/demo/demo-ended.js.map +1 -0
- package/dist/demo/demo-labels.d.ts +53 -0
- package/dist/demo/demo-labels.js +29 -0
- package/dist/demo/demo-labels.js.map +1 -0
- package/dist/demo/demo-session.d.ts +30 -0
- package/dist/demo/demo-session.js +8 -0
- package/dist/demo/demo-session.js.map +1 -0
- package/dist/demo/demo-start.d.ts +54 -0
- package/dist/demo/demo-start.js +68 -0
- package/dist/demo/demo-start.js.map +1 -0
- package/dist/feedback/feedback-attachment.d.ts +21 -12
- package/dist/feedback/feedback-context.d.ts +21 -12
- package/dist/feedback/feedback-crash.d.ts +21 -12
- package/dist/feedback/feedback-dialog.d.ts +21 -12
- package/dist/feedback/feedback-inbox.d.ts +21 -12
- package/dist/feedback/feedback-inbox.js +12 -2
- package/dist/feedback/feedback-inbox.js.map +1 -1
- package/dist/feedback/feedback-labels.d.ts +21 -12
- package/dist/feedback/feedback-labels.js +1 -0
- package/dist/feedback/feedback-labels.js.map +1 -1
- package/dist/feedback/feedback-menu.d.ts +21 -12
- package/dist/feedback/feedback-record.d.ts +21 -12
- package/dist/feedback/feedback-record.js +2 -0
- package/dist/feedback/feedback-record.js.map +1 -1
- package/dist/feedback/feedback-row-detail.d.ts +21 -12
- package/dist/feedback/feedback-row-detail.js +7 -0
- package/dist/feedback/feedback-row-detail.js.map +1 -1
- package/dist/feedback/feedback-status-undo.d.ts +21 -12
- package/dist/feedback/feedback-submit.d.ts +21 -12
- package/dist/feedback/feedback-swipe.d.ts +22 -13
- package/dist/feedback/feedback-swipe.js.map +1 -1
- package/dist/feedback/feedback-table.d.ts +18 -9
- package/dist/feedback/feedback-thread.d.ts +21 -12
- package/dist/feedback.d.ts +21 -12
- package/dist/hooks/use-anchored-panel.d.ts +6 -2
- package/dist/hooks/use-anchored-panel.js +2 -1
- package/dist/hooks/use-anchored-panel.js.map +1 -1
- package/dist/hooks/use-file-drop.d.ts +21 -12
- package/dist/i18n/defaults.d.ts +21 -12
- package/dist/i18n/defaults.js +28 -0
- package/dist/i18n/defaults.js.map +1 -1
- package/dist/i18n/german.d.ts +21 -12
- package/dist/i18n/german.js +298 -12
- package/dist/i18n/german.js.map +1 -1
- package/dist/i18n/kit-labels.d.ts +14 -5
- package/dist/i18n/kit-labels.js.map +1 -1
- package/dist/i18n/languages.d.ts +15 -6
- package/dist/i18n/locales/de-CH.d.ts +21 -12
- package/dist/i18n/locales/en.d.ts +21 -12
- package/dist/i18n/locales/es.d.ts +21 -12
- package/dist/i18n/locales/es.js +287 -10
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +21 -12
- package/dist/i18n/locales/fr.js +290 -7
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hu.d.ts +21 -12
- package/dist/i18n/locales/hu.js +288 -12
- package/dist/i18n/locales/hu.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +21 -12
- package/dist/i18n/locales/it.js +289 -7
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +21 -12
- package/dist/i18n/locales/zh.js +279 -7
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.d.ts +21 -12
- package/dist/i18n/review.js +50 -1
- package/dist/i18n/review.js.map +1 -1
- package/dist/index.d.ts +31 -4
- package/dist/index.js +148 -0
- package/dist/index.js.map +1 -1
- package/dist/landing/access.d.ts +48 -0
- package/dist/landing/access.js +38 -0
- package/dist/landing/access.js.map +1 -0
- package/dist/landing/landing-actions.d.ts +138 -0
- package/dist/landing/landing-actions.js +39 -0
- package/dist/landing/landing-actions.js.map +1 -0
- package/dist/landing/landing-labels.d.ts +43 -0
- package/dist/landing/landing-labels.js +23 -0
- package/dist/landing/landing-labels.js.map +1 -0
- package/dist/landing/landing-sections.d.ts +218 -0
- package/dist/landing/landing-sections.js +167 -0
- package/dist/landing/landing-sections.js.map +1 -0
- package/dist/landing/page-seo.d.ts +99 -0
- package/dist/landing/page-seo.js +121 -0
- package/dist/landing/page-seo.js.map +1 -0
- package/dist/landing/public-header.d.ts +148 -0
- package/dist/landing/public-header.js +49 -0
- package/dist/landing/public-header.js.map +1 -0
- package/dist/landing/routing.d.ts +218 -0
- package/dist/landing/routing.js +81 -0
- package/dist/landing/routing.js.map +1 -0
- package/dist/rhf/fields.d.ts +21 -12
- package/dist/rhf/form.d.ts +21 -12
- package/dist/rhf.d.ts +21 -12
- package/dist/settings/settings-catalogue.d.ts +84 -0
- package/dist/settings/settings-catalogue.js +47 -0
- package/dist/settings/settings-catalogue.js.map +1 -0
- package/dist/settings/settings-context.d.ts +31 -0
- package/dist/settings/settings-context.js +11 -0
- package/dist/settings/settings-context.js.map +1 -0
- package/dist/settings/settings-heading.d.ts +50 -0
- package/dist/settings/settings-heading.js +27 -0
- package/dist/settings/settings-heading.js.map +1 -0
- package/dist/settings/settings-labels.d.ts +41 -0
- package/dist/settings/settings-labels.js +38 -0
- package/dist/settings/settings-labels.js.map +1 -0
- package/dist/settings/settings-layout.d.ts +77 -0
- package/dist/settings/settings-layout.js +242 -0
- package/dist/settings/settings-layout.js.map +1 -0
- package/dist/settings/settings-section.d.ts +133 -0
- package/dist/settings/settings-section.js +63 -0
- package/dist/settings/settings-section.js.map +1 -0
- package/dist/settings/use-account-language.d.ts +83 -0
- package/dist/settings/use-account-language.js +62 -0
- package/dist/settings/use-account-language.js.map +1 -0
- package/dist/settings/use-settings-focus.d.ts +34 -0
- package/dist/settings/use-settings-focus.js +77 -0
- package/dist/settings/use-settings-focus.js.map +1 -0
- package/dist/settings/use-settings-route.d.ts +118 -0
- package/dist/settings/use-settings-route.js +120 -0
- package/dist/settings/use-settings-route.js.map +1 -0
- package/dist/shell/app-shell.d.ts +27 -12
- package/dist/shell/app-shell.js +3 -2
- package/dist/shell/app-shell.js.map +1 -1
- package/dist/shell/top-bar-brand.d.ts +21 -12
- package/dist/shell.d.ts +25 -6
- package/dist/shell.js +56 -0
- package/dist/shell.js.map +1 -1
- package/dist/wizard/stepper-nav.d.ts +21 -12
- package/dist/wizard.d.ts +21 -12
- package/package.json +2 -1
- package/src/account/account-parts.ts +67 -0
- package/src/account/data-export-setting.tsx +219 -0
- package/src/account/delete-account-setting.tsx +363 -0
- package/src/account/email-change-setting.tsx +454 -0
- package/src/account/sessions-setting.tsx +284 -0
- package/src/admin/admin-action-confirm.tsx +495 -0
- package/src/admin/admin-action-log.tsx +297 -0
- package/src/admin/admin-parts.ts +82 -0
- package/src/admin/invitations-panel.tsx +523 -0
- package/src/admin/reviewer-scope-editor.tsx +234 -0
- package/src/admin/role-select.tsx +286 -0
- package/src/admin/transfer-ownership-dialog.tsx +172 -0
- package/src/admin/user-roster.tsx +573 -0
- package/src/auth/auth-errors.ts +196 -8
- package/src/auth/forgot-password-form.tsx +21 -5
- package/src/auth/register-form.tsx +24 -6
- package/src/auth/reset-password-form.tsx +19 -5
- package/src/auth/sign-in-form.tsx +241 -38
- package/src/auth/verify-email.tsx +59 -8
- package/src/components/account-chips.tsx +64 -7
- package/src/components/account-settings-labels.ts +28 -1
- package/src/components/account-settings.tsx +231 -34
- package/src/components/data-table.tsx +8 -0
- package/src/components/date-picker.tsx +9 -4
- package/src/components/passkeys-setting.tsx +2 -1
- package/src/components/settings-fields.tsx +50 -1
- package/src/demo/demo-banner.tsx +159 -0
- package/src/demo/demo-countdown.ts +141 -0
- package/src/demo/demo-ended.tsx +89 -0
- package/src/demo/demo-labels.ts +78 -0
- package/src/demo/demo-session.ts +32 -0
- package/src/demo/demo-start.tsx +150 -0
- package/src/feedback/feedback-inbox.tsx +21 -8
- package/src/feedback/feedback-labels.ts +2 -1
- package/src/feedback/feedback-record.ts +10 -7
- package/src/feedback/feedback-row-detail.tsx +28 -4
- package/src/feedback/feedback-swipe.tsx +1 -1
- package/src/hooks/use-anchored-panel.ts +14 -3
- package/src/i18n/defaults.ts +28 -0
- package/src/i18n/german.ts +327 -5
- package/src/i18n/kit-labels.tsx +42 -0
- package/src/i18n/locales/es.ts +313 -3
- package/src/i18n/locales/fr.ts +316 -0
- package/src/i18n/locales/hu.ts +308 -5
- package/src/i18n/locales/it.ts +313 -0
- package/src/i18n/locales/zh.ts +286 -0
- package/src/i18n/review.ts +49 -0
- package/src/index.ts +184 -0
- package/src/landing/access.ts +97 -0
- package/src/landing/landing-actions.tsx +92 -0
- package/src/landing/landing-labels.ts +59 -0
- package/src/landing/landing-sections.tsx +337 -0
- package/src/landing/page-seo.ts +251 -0
- package/src/landing/public-header.tsx +120 -0
- package/src/landing/routing.tsx +209 -0
- package/src/settings/settings-catalogue.ts +132 -0
- package/src/settings/settings-context.ts +33 -0
- package/src/settings/settings-heading.tsx +65 -0
- package/src/settings/settings-labels.ts +75 -0
- package/src/settings/settings-layout.tsx +379 -0
- package/src/settings/settings-section.tsx +108 -0
- package/src/settings/use-account-language.ts +146 -0
- package/src/settings/use-settings-focus.ts +120 -0
- package/src/settings/use-settings-route.ts +258 -0
- package/src/shell/app-shell.tsx +10 -2
- package/src/shell.ts +45 -0
package/dist/i18n/german.js
CHANGED
|
@@ -3,6 +3,8 @@ import { formatFileSize } from "./kit-labels.js";
|
|
|
3
3
|
function germanLabels(numberLocale) {
|
|
4
4
|
const num = new Intl.NumberFormat(numberLocale);
|
|
5
5
|
const n = (value) => num.format(value);
|
|
6
|
+
const wait = (seconds) => seconds < 60 ? `${n(Math.ceil(seconds))} s` : `${n(Math.ceil(seconds / 60))} min`;
|
|
7
|
+
const rateLimited = (seconds) => !seconds || seconds <= 0 ? "Zu viele Versuche. Bitte warten Sie einen Moment und versuchen Sie es dann noch einmal." : `Zu viele Versuche. Versuchen Sie es in ${wait(seconds)} erneut.`;
|
|
6
8
|
return {
|
|
7
9
|
feedbackAttachment: {
|
|
8
10
|
attachmentAdd: "Anhang hinzuf\xFCgen",
|
|
@@ -51,6 +53,7 @@ function germanLabels(numberLocale) {
|
|
|
51
53
|
// written here with "ß" like the rest of this source; `swiss()` makes it "grösser".
|
|
52
54
|
feedbackStatus: {
|
|
53
55
|
OPEN: "Offen",
|
|
56
|
+
READY: "Bereit zur Umsetzung",
|
|
54
57
|
IN_PROGRESS: "In Bearbeitung",
|
|
55
58
|
IN_EVALUATION: "Zur Pr\xFCfung",
|
|
56
59
|
NEEDS_LIVE_TEST: "Live testen",
|
|
@@ -109,6 +112,7 @@ function germanLabels(numberLocale) {
|
|
|
109
112
|
phoneActions: "Feedback-Aktionen"
|
|
110
113
|
},
|
|
111
114
|
feedbackDetail: {
|
|
115
|
+
subject: "Betreff",
|
|
112
116
|
body: "Beschreibung",
|
|
113
117
|
edit: "Bearbeiten",
|
|
114
118
|
editDescription: "Beschreibung bearbeiten",
|
|
@@ -139,7 +143,10 @@ function germanLabels(numberLocale) {
|
|
|
139
143
|
role: "Rolle",
|
|
140
144
|
memberSince: "Mitglied seit",
|
|
141
145
|
displayName: "Anzeigename",
|
|
142
|
-
save: "Speichern"
|
|
146
|
+
save: "Speichern",
|
|
147
|
+
firstName: "Vorname",
|
|
148
|
+
lastName: "Nachname",
|
|
149
|
+
nameRequired: "Geben Sie Vor- und Nachnamen ein."
|
|
143
150
|
},
|
|
144
151
|
password: {
|
|
145
152
|
title: "Passwort \xE4ndern",
|
|
@@ -163,7 +170,9 @@ function germanLabels(numberLocale) {
|
|
|
163
170
|
disable: "Deaktivieren",
|
|
164
171
|
qrAlt: "QR-Code f\xFCr die Authenticator-App",
|
|
165
172
|
secretHint: "Scannen nicht m\xF6glich? Stattdessen diesen Schl\xFCssel in der App eingeben:",
|
|
166
|
-
copySecret: "Schl\xFCssel kopieren"
|
|
173
|
+
copySecret: "Schl\xFCssel kopieren",
|
|
174
|
+
// 0.31.0: the card's title; the state ("Aktiv") stands beside it.
|
|
175
|
+
title: "Zwei-Faktor-Authentifizierung"
|
|
167
176
|
},
|
|
168
177
|
passkeys: {
|
|
169
178
|
title: "Passkeys",
|
|
@@ -680,7 +689,9 @@ function germanLabels(numberLocale) {
|
|
|
680
689
|
invited: "Eingeladen",
|
|
681
690
|
registered: "Registriert",
|
|
682
691
|
unverified: "Nicht best\xE4tigt",
|
|
683
|
-
passwordChange: "Passwort\xE4nderung erforderlich"
|
|
692
|
+
passwordChange: "Passwort\xE4nderung erforderlich",
|
|
693
|
+
deletion: "L\xF6schung beantragt",
|
|
694
|
+
deletionOn: (date) => `L\xF6schung am ${date}`
|
|
684
695
|
},
|
|
685
696
|
shareCard: {
|
|
686
697
|
dialogTitle: "Teilen",
|
|
@@ -845,7 +856,18 @@ Die vollst\xE4ndige Postanschrift wird betroffenen Personen und Aufsichtsbeh\xF6
|
|
|
845
856
|
setPasswordSubmit: "Passwort vergeben und anmelden",
|
|
846
857
|
setPasswordFailed: "Das Passwort konnte nicht vergeben werden.",
|
|
847
858
|
expired: "Diese Anmeldung ist abgelaufen. Bitte melden Sie sich erneut an.",
|
|
848
|
-
backToSignIn: "Zur\xFCck zur Anmeldung"
|
|
859
|
+
backToSignIn: "Zur\xFCck zur Anmeldung",
|
|
860
|
+
// kastlan's backup-code words ("Backup-Code" — not keksdose's
|
|
861
|
+
// "Wiederherstellungscode", which is the key of its end-to-end encryption).
|
|
862
|
+
useRecoveryCode: "Backup-Code verwenden",
|
|
863
|
+
useAuthenticatorCode: "Authenticator-App verwenden",
|
|
864
|
+
recoveryCode: "Backup-Code",
|
|
865
|
+
recoveryIntro: "Geben Sie einen der Backup-Codes ein, die Sie beim Einrichten der Zwei-Faktor-Authentifizierung gespeichert haben.",
|
|
866
|
+
recoveryCodeHint: (length) => `${n(length)} Buchstaben und Ziffern. Bindestriche und Leerzeichen spielen keine Rolle.`,
|
|
867
|
+
recoveryCodeInvalid: "Dieser Backup-Code ist ung\xFCltig oder wurde schon verwendet.",
|
|
868
|
+
rateLimited,
|
|
869
|
+
// 0.31.0: the same words as `landing.requestAccess`.
|
|
870
|
+
requestAccess: "Zugang anfragen"
|
|
849
871
|
},
|
|
850
872
|
register: {
|
|
851
873
|
firstName: "Vorname",
|
|
@@ -866,7 +888,8 @@ Die vollst\xE4ndige Postanschrift wird betroffenen Personen und Aufsichtsbeh\xF6
|
|
|
866
888
|
registrationClosed: "Neue Konten gibt es nur auf Einladung. Bitten Sie den Betreiber, Ihre E-Mail-Adresse einzuladen.",
|
|
867
889
|
invitationInvalid: "Dieser Einladungslink ist ung\xFCltig.",
|
|
868
890
|
invitationExpired: "Diese Einladung ist abgelaufen. Bitten Sie um eine neue.",
|
|
869
|
-
failed: "Registrierung fehlgeschlagen. Bitte versuchen Sie es erneut."
|
|
891
|
+
failed: "Registrierung fehlgeschlagen. Bitte versuchen Sie es erneut.",
|
|
892
|
+
rateLimited
|
|
870
893
|
},
|
|
871
894
|
completeName: {
|
|
872
895
|
title: "Namen vervollst\xE4ndigen",
|
|
@@ -885,7 +908,8 @@ Die vollst\xE4ndige Postanschrift wird betroffenen Personen und Aufsichtsbeh\xF6
|
|
|
885
908
|
sent: (email) => `Falls es ein Konto zu ${email} gibt, ist der Link unterwegs.`,
|
|
886
909
|
sentHint: "Der Link gilt eine Stunde und funktioniert genau einmal. Sehen Sie auch im Spam-Ordner nach.",
|
|
887
910
|
backToSignIn: "Zur\xFCck zur Anmeldung",
|
|
888
|
-
error: "Anfrage fehlgeschlagen. Bitte versuchen Sie es sp\xE4ter noch einmal."
|
|
911
|
+
error: "Anfrage fehlgeschlagen. Bitte versuchen Sie es sp\xE4ter noch einmal.",
|
|
912
|
+
rateLimited
|
|
889
913
|
},
|
|
890
914
|
resetPassword: {
|
|
891
915
|
title: "Neues Passwort vergeben",
|
|
@@ -902,7 +926,8 @@ Die vollst\xE4ndige Postanschrift wird betroffenen Personen und Aufsichtsbeh\xF6
|
|
|
902
926
|
requestNew: "Neuen Link anfordern",
|
|
903
927
|
success: "Ihr Passwort ist ge\xE4ndert. Sie k\xF6nnen sich jetzt damit anmelden.",
|
|
904
928
|
sessionsEnded: "Angemeldete Ger\xE4te wurden abgemeldet \u2013 dort m\xFCssen Sie sich neu anmelden.",
|
|
905
|
-
signIn: "Zur Anmeldung"
|
|
929
|
+
signIn: "Zur Anmeldung",
|
|
930
|
+
rateLimited
|
|
906
931
|
},
|
|
907
932
|
verifyEmail: {
|
|
908
933
|
title: "E-Mail-Adresse best\xE4tigen",
|
|
@@ -946,12 +971,197 @@ Die vollst\xE4ndige Postanschrift wird betroffenen Personen und Aufsichtsbeh\xF6
|
|
|
946
971
|
register: "Registrieren"
|
|
947
972
|
},
|
|
948
973
|
companySwitcher: {
|
|
949
|
-
// "
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
974
|
+
// "Unternehmen" (0.30), the word kastlan's admin strings use ("Aus dem Unternehmen
|
|
975
|
+
// entfernen"), so one German word names a company across the kit.
|
|
976
|
+
switchCompany: "Unternehmen wechseln",
|
|
977
|
+
heading: "Unternehmen",
|
|
978
|
+
current: (name) => `Unternehmen: ${name}`,
|
|
953
979
|
currentMark: "(aktuell)",
|
|
954
|
-
switching: "
|
|
980
|
+
switching: "Unternehmen wird gewechselt\u2026"
|
|
981
|
+
},
|
|
982
|
+
// 0.30.0 — docs/user-admin-harmonization.md: keksdose's reviewed de-CH for the admin
|
|
983
|
+
// words (admin.users.*), Kurvenschmiede's for transfer, invitations and sessions,
|
|
984
|
+
// kastlan's for "Unternehmen", the throttle and "Überall abmelden"; written fresh where
|
|
985
|
+
// no app had the sentence. Formal "Sie". "Administratorrechte" rather than "der letzte
|
|
986
|
+
// Administrator", which would give the reader a gender.
|
|
987
|
+
emailChange: {
|
|
988
|
+
title: "E-Mail-Adresse",
|
|
989
|
+
current: "Aktuelle Adresse",
|
|
990
|
+
newEmail: "Neue E-Mail-Adresse",
|
|
991
|
+
password: "Aktuelles Passwort",
|
|
992
|
+
passwordHint: "Mit Ihrer Adresse melden Sie sich an \u2013 deshalb braucht eine \xC4nderung Ihr Passwort.",
|
|
993
|
+
emailTagUse: (address) => `${address} verwenden`,
|
|
994
|
+
emailTagHint: "Viele Anbieter stellen name+kennung@\u2026 an dasselbe Postfach zu, damit Post von dieser App filter- und zuordenbar wird. Pr\xFCfen Sie vorher, ob Ihrer das tut: Angemeldet wird dann mit der markierten Adresse.",
|
|
995
|
+
submit: "E-Mail-Adresse \xE4ndern",
|
|
996
|
+
sameAsCurrent: "Das ist bereits Ihre Adresse.",
|
|
997
|
+
emailTaken: "Ein Konto mit dieser E-Mail-Adresse existiert bereits.",
|
|
998
|
+
wrongPassword: "Das Passwort ist falsch.",
|
|
999
|
+
pending: (newEmail) => `Best\xE4tigen Sie den Link, den wir an ${newEmail} geschickt haben.`,
|
|
1000
|
+
pendingHint: (currentEmail) => `Bis dahin melden Sie sich weiterhin mit ${currentEmail} an. Sehen Sie auch im Spam-Ordner nach.`,
|
|
1001
|
+
resend: "Link erneut senden",
|
|
1002
|
+
resent: "Wir haben den Link erneut gesendet.",
|
|
1003
|
+
cancel: "\xC4nderung abbrechen",
|
|
1004
|
+
confirmed: (email) => `Ihre E-Mail-Adresse ist jetzt ${email}.`,
|
|
1005
|
+
passkeyNote: "Ihre Passkeys funktionieren weiterhin. Ihr Ger\xE4t zeigt sie eventuell noch unter der alten Adresse an.",
|
|
1006
|
+
rateLimited,
|
|
1007
|
+
failed: "Das hat nicht geklappt. Bitte erneut versuchen."
|
|
1008
|
+
},
|
|
1009
|
+
sessions: {
|
|
1010
|
+
title: "Sitzungen",
|
|
1011
|
+
description: "Auf einem Ger\xE4t angemeldet, das Sie nicht mehr nutzen oder dem Sie nicht trauen? Melden Sie sich \xFCberall ab.",
|
|
1012
|
+
signOutEverywhere: "\xDCberall abmelden\u2026",
|
|
1013
|
+
signOutEverywherePrompt: "Damit enden alle Sitzungen, auch diese: Sie werden auch auf diesem Ger\xE4t abgemeldet und melden sich hier neu an.",
|
|
1014
|
+
confirmSignOutEverywhere: "\xDCberall abmelden",
|
|
1015
|
+
list: "Wo Sie angemeldet sind",
|
|
1016
|
+
loading: "Sitzungen werden geladen\u2026",
|
|
1017
|
+
empty: "Keine Sitzungen vorhanden.",
|
|
1018
|
+
current: "Dieses Ger\xE4t",
|
|
1019
|
+
unknownDevice: "Unbekanntes Ger\xE4t",
|
|
1020
|
+
// A colon: `when` is either "vor 3 Stunden" or a date.
|
|
1021
|
+
lastActive: (when) => `Zuletzt aktiv: ${when}`,
|
|
1022
|
+
ip: (address) => `IP ${address}`,
|
|
1023
|
+
revoke: "Abmelden",
|
|
1024
|
+
// Starts with `revoke`, the button's visible text, for voice control.
|
|
1025
|
+
revokeItem: (device) => `Abmelden: ${device}`,
|
|
1026
|
+
failed: "Das hat nicht geklappt. Bitte erneut versuchen."
|
|
1027
|
+
},
|
|
1028
|
+
deleteAccount: {
|
|
1029
|
+
title: "Konto l\xF6schen",
|
|
1030
|
+
afterDays: (days) => days === 1 ? "Ihr Konto wird sofort deaktiviert und 1 Tag sp\xE4ter endg\xFCltig gel\xF6scht." : `Ihr Konto wird sofort deaktiviert und ${n(days)} Tage sp\xE4ter endg\xFCltig gel\xF6scht.`,
|
|
1031
|
+
operator: "Ihr Konto wird sofort deaktiviert und anschlie\xDFend vom Betreiber endg\xFCltig gel\xF6scht.",
|
|
1032
|
+
arm: "Konto l\xF6schen\u2026",
|
|
1033
|
+
prompt: "Sie werden auf allen Ger\xE4ten abgemeldet, und Ihr Konto kann nicht mehr verwendet werden.",
|
|
1034
|
+
handOver: (count) => count === 1 ? "1 Element, das andere sehen k\xF6nnen, geht an einen Administrator \xFCber." : `${n(count)} Elemente, die andere sehen k\xF6nnen, gehen an einen Administrator \xFCber.`,
|
|
1035
|
+
confirm: "Mein Konto l\xF6schen",
|
|
1036
|
+
done: "Ihr Konto ist deaktiviert. Sie werden abgemeldet.",
|
|
1037
|
+
wrongPassword: "Das Passwort ist falsch.",
|
|
1038
|
+
confirmationMismatch: "Das ist nicht die Adresse Ihres Kontos.",
|
|
1039
|
+
lastAdmin: "Ihr Konto ist das letzte mit Administratorrechten. Geben Sie zuerst einem anderen Konto Administratorrechte.",
|
|
1040
|
+
lastAdminOf: (companies) => `Ihr Konto ist das letzte mit Administratorrechten bei ${companies}. Geben Sie dort zuerst einem anderen Konto Administratorrechte.`,
|
|
1041
|
+
// keksdose's "Haushalt".
|
|
1042
|
+
householdHasMembers: "Ihr Haushalt hat weitere Mitglieder, deshalb kann das Konto hier nicht gel\xF6scht werden. Bitte schreiben Sie dem Betreiber.",
|
|
1043
|
+
rateLimited,
|
|
1044
|
+
failed: "Ihr Konto konnte nicht gel\xF6scht werden. Bitte versuchen Sie es erneut."
|
|
1045
|
+
},
|
|
1046
|
+
dataExport: {
|
|
1047
|
+
title: "Ihre Daten exportieren",
|
|
1048
|
+
description: "Laden Sie eine Kopie der Daten Ihres Kontos als JSON-Datei herunter.",
|
|
1049
|
+
download: "Meine Daten herunterladen",
|
|
1050
|
+
started: "Ihr Download hat begonnen.",
|
|
1051
|
+
saveAgain: "Nicht gestartet? Datei speichern",
|
|
1052
|
+
rateLimited: (seconds) => seconds && seconds > 0 ? `Sie haben Ihre Daten gerade erst exportiert. Versuchen Sie es in ${wait(seconds)} erneut.` : "Sie haben Ihre Daten gerade erst exportiert. Bitte versuchen Sie es in einer Minute erneut.",
|
|
1053
|
+
failed: "Der Export ist fehlgeschlagen. Bitte versuchen Sie es erneut."
|
|
1054
|
+
},
|
|
1055
|
+
userRoster: {
|
|
1056
|
+
name: "Name",
|
|
1057
|
+
email: "E-Mail",
|
|
1058
|
+
role: "Rolle",
|
|
1059
|
+
state: "Status",
|
|
1060
|
+
created: "Erstellt",
|
|
1061
|
+
lastLogin: "Letzte Anmeldung",
|
|
1062
|
+
never: "Nie",
|
|
1063
|
+
actions: "Aktionen",
|
|
1064
|
+
actionsFor: (name) => `Aktionen f\xFCr ${name}`
|
|
1065
|
+
},
|
|
1066
|
+
roleSelect: {
|
|
1067
|
+
label: "Rolle",
|
|
1068
|
+
rolesLegend: "Rollen",
|
|
1069
|
+
roleOf: (name) => `Rolle von ${name}`,
|
|
1070
|
+
lockedLastAdmin: "Das letzte aktive Konto mit Administratorrechten beh\xE4lt diese Rolle.",
|
|
1071
|
+
lockedSelf: "Ihre eigene Rolle k\xF6nnen Sie nicht \xE4ndern.",
|
|
1072
|
+
notForLastAdmin: "nicht f\xFCr das letzte Administratorkonto",
|
|
1073
|
+
notForSelf: "nicht f\xFCr Ihr eigenes Konto",
|
|
1074
|
+
unavailable: (role, reason) => `${role} (${reason})`
|
|
1075
|
+
},
|
|
1076
|
+
reviewerScope: {
|
|
1077
|
+
languages: "Sprachen",
|
|
1078
|
+
hint: "Kreuzen Sie die Sprachen an, die diese Person pr\xFCft.",
|
|
1079
|
+
none: "Keine Sprache: Beim Speichern wird die Pr\xFCfrolle entzogen.",
|
|
1080
|
+
areas: "Beschr\xE4nken auf",
|
|
1081
|
+
legalOnly: "Nur die rechtlichen Seiten",
|
|
1082
|
+
legalOnlyHint: "Impressum, Datenschutzerkl\xE4rung und Nutzungsbedingungen \u2013 f\xFCr eine Juristin oder einen Juristen statt f\xFCr Muttersprachler.",
|
|
1083
|
+
failed: "Die Pr\xFCfrolle konnte nicht gespeichert werden. Bitte versuchen Sie es erneut."
|
|
1084
|
+
},
|
|
1085
|
+
adminAction: {
|
|
1086
|
+
confirm: "Best\xE4tigen",
|
|
1087
|
+
cancel: "Abbrechen",
|
|
1088
|
+
close: "Schlie\xDFen",
|
|
1089
|
+
lastAdmin: "Dies ist das letzte aktive Konto mit Administratorrechten. Geben Sie zuerst einem anderen Konto Administratorrechte.",
|
|
1090
|
+
self: "Mit Ihrem eigenen Konto ist das nicht m\xF6glich.",
|
|
1091
|
+
confirmationMismatch: "Die Adresse passt nicht zu diesem Konto. Pr\xFCfen Sie, bei welchem Konto Sie sind.",
|
|
1092
|
+
otherCompanies: "Dieses Konto geh\xF6rt auch zu anderen Unternehmen, deshalb kann nur der Plattformbetreiber das tun. Sie k\xF6nnen es stattdessen aus diesem Unternehmen entfernen.",
|
|
1093
|
+
removeFromCompany: "Aus dem Unternehmen entfernen",
|
|
1094
|
+
failed: "Das hat nicht geklappt. Bitte erneut versuchen."
|
|
1095
|
+
},
|
|
1096
|
+
adminActionLog: {
|
|
1097
|
+
title: "Admin-Aktionen",
|
|
1098
|
+
empty: "Noch keine Admin-Aktionen.",
|
|
1099
|
+
loading: "Wird geladen\u2026",
|
|
1100
|
+
// "durch", not "von": it takes the accusative, so `erased` ("ein gelöschtes Konto")
|
|
1101
|
+
// reads right both on its own and after it.
|
|
1102
|
+
by: (actor) => `durch ${actor}`,
|
|
1103
|
+
bySelf: "durch die Person selbst",
|
|
1104
|
+
automatic: "automatisch",
|
|
1105
|
+
erased: "ein gel\xF6schtes Konto",
|
|
1106
|
+
filteredTo: (target) => `Nur ${target}`,
|
|
1107
|
+
showAll: "Alle Aktionen zeigen",
|
|
1108
|
+
filterBy: (target) => `Nur Aktionen zu ${target} zeigen`,
|
|
1109
|
+
actions: {
|
|
1110
|
+
deactivate: "Deaktiviert",
|
|
1111
|
+
reactivate: "Reaktiviert",
|
|
1112
|
+
role: "Rolle ge\xE4ndert",
|
|
1113
|
+
membership_remove: "Aus dem Unternehmen entfernt",
|
|
1114
|
+
password_change_require: "Neues Passwort verlangt",
|
|
1115
|
+
password_change_withdraw: "Passwortforderung zur\xFCckgenommen",
|
|
1116
|
+
mail_verification: "Best\xE4tigungsmail gesendet",
|
|
1117
|
+
mail_reset: "Mail zum Zur\xFCcksetzen des Passworts gesendet",
|
|
1118
|
+
reviewer: "Pr\xFCfrolle ge\xE4ndert",
|
|
1119
|
+
invite: "Eingeladen",
|
|
1120
|
+
invite_resend: "Einladung erneut gesendet",
|
|
1121
|
+
invite_revoke: "Einladung zur\xFCckgezogen",
|
|
1122
|
+
transfer: "Arbeit \xFCbergeben",
|
|
1123
|
+
deletion_request: "L\xF6schung beantragt",
|
|
1124
|
+
deletion_cancel: "L\xF6schung aufgehoben",
|
|
1125
|
+
erase: "Konto endg\xFCltig gel\xF6scht"
|
|
1126
|
+
}
|
|
1127
|
+
},
|
|
1128
|
+
transferOwnership: {
|
|
1129
|
+
title: (name) => `Arbeit von ${name} \xFCbergeben`,
|
|
1130
|
+
body: "Alles, was diesem Konto geh\xF6rt, geht in einem Schritt an das gew\xE4hlte Konto.",
|
|
1131
|
+
recipient: "\xDCbergeben an",
|
|
1132
|
+
choose: "Konto w\xE4hlen\u2026",
|
|
1133
|
+
chooseFirst: "W\xE4hlen Sie, wer die Arbeit erh\xE4lt",
|
|
1134
|
+
confirm: "\xDCbergeben",
|
|
1135
|
+
customer: "Kundenkonto",
|
|
1136
|
+
deactivated: "deaktiviert",
|
|
1137
|
+
self: "dasselbe Konto",
|
|
1138
|
+
unavailable: (account, reason) => `${account} (${reason})`,
|
|
1139
|
+
noCandidates: "Kein anderes Konto kann sie erhalten."
|
|
1140
|
+
},
|
|
1141
|
+
invitations: {
|
|
1142
|
+
email: "E-Mail-Adresse",
|
|
1143
|
+
invalidEmail: "Bitte eine vollst\xE4ndige E-Mail-Adresse eingeben.",
|
|
1144
|
+
role: "Rolle",
|
|
1145
|
+
scope: "Bereich",
|
|
1146
|
+
scopeNone: "Keiner",
|
|
1147
|
+
language: "Sprache der Einladung",
|
|
1148
|
+
note: "Notiz",
|
|
1149
|
+
invite: "Einladen",
|
|
1150
|
+
listTitle: "Einladungen",
|
|
1151
|
+
empty: "Noch niemand ist eingeladen.",
|
|
1152
|
+
loading: "Wird geladen\u2026",
|
|
1153
|
+
status: { open: "Offen", accepted: "Angenommen", expired: "Abgelaufen", revoked: "Zur\xFCckgezogen" },
|
|
1154
|
+
sent: (date) => `Gesendet am ${date}`,
|
|
1155
|
+
// kastlan's "Gültig bis".
|
|
1156
|
+
expires: (date) => `G\xFCltig bis ${date}`,
|
|
1157
|
+
invitedBy: (name) => `von ${name}`,
|
|
1158
|
+
resend: (email) => `${email} einen neuen Link senden`,
|
|
1159
|
+
copyLink: "Einladungslink kopieren",
|
|
1160
|
+
revoke: (email) => `Einladung an ${email} zur\xFCckziehen`,
|
|
1161
|
+
consoleHint: "Dieser Server verschickt keine Mails \u2013 sie werden ins Server-Log geschrieben. Kopieren Sie jeden Einladungslink hier und geben Sie ihn selbst weiter: Er wird nur einmal angezeigt.",
|
|
1162
|
+
linkReady: (email) => `Der Einladungslink f\xFCr ${email}, nur dieses eine Mal angezeigt:`,
|
|
1163
|
+
notSent: (email) => `${email} ist eingeladen, aber die Mail konnte nicht gesendet werden. Senden Sie sie erneut.`,
|
|
1164
|
+
failed: "Das hat nicht geklappt. Bitte erneut versuchen."
|
|
955
1165
|
},
|
|
956
1166
|
characterCount: {
|
|
957
1167
|
// "Zeichen" is the same in singular and plural.
|
|
@@ -1071,6 +1281,82 @@ Die vollst\xE4ndige Postanschrift wird betroffenen Personen und Aufsichtsbeh\xF6
|
|
|
1071
1281
|
// The group's name quoted, as `columnMapper.roleOf`'s column: it is often a key
|
|
1072
1282
|
// ("billing"), which unquoted would read as part of the sentence.
|
|
1073
1283
|
confirmGroup: (count, group) => count === 1 ? `Den ungepr\xFCften Text in \u201E${group}\u201C best\xE4tigen?` : `Alle ${n(count)} ungepr\xFCften Texte in \u201E${group}\u201C best\xE4tigen \u2013 auch die nicht angezeigten?`
|
|
1284
|
+
},
|
|
1285
|
+
// 0.31.0 — docs/settings-harmonization.md §4.3 and docs/landing-demo-harmonization.md
|
|
1286
|
+
// §4–§5: the settings shell, the landing page's generic words and the demo. The group
|
|
1287
|
+
// names are the contracts' ("Darstellung", "Konto", "Sicherheit", "Benachrichtigungen",
|
|
1288
|
+
// "Daten"); the help lines name things as `accountSettings`, `sessions` and
|
|
1289
|
+
// `dataExport` do. Formal "Sie".
|
|
1290
|
+
settings: {
|
|
1291
|
+
title: "Einstellungen",
|
|
1292
|
+
search: "Einstellungen durchsuchen",
|
|
1293
|
+
searchPlaceholder: "Einstellungen durchsuchen\u2026",
|
|
1294
|
+
results: "Passende Einstellungen",
|
|
1295
|
+
noMatches: (query) => `Keine Einstellung passt zu \u201E${query}\u201C.`,
|
|
1296
|
+
// As `commandPalette.clear`.
|
|
1297
|
+
clearSearch: "Suche l\xF6schen",
|
|
1298
|
+
back: "Zur\xFCck zu den Einstellungen",
|
|
1299
|
+
sections: "Einstellungsbereiche",
|
|
1300
|
+
// "Treffer" is the same in singular and plural.
|
|
1301
|
+
matchCount: (count) => `${n(count)} Treffer`,
|
|
1302
|
+
groups: {
|
|
1303
|
+
appearance: {
|
|
1304
|
+
title: "Darstellung",
|
|
1305
|
+
// "Theme", as `topBar.theme`.
|
|
1306
|
+
help: "Sprache, Theme und wie die App auf diesem Ger\xE4t aussieht."
|
|
1307
|
+
},
|
|
1308
|
+
account: {
|
|
1309
|
+
title: "Konto",
|
|
1310
|
+
help: "Ihr Profil und Ihre E-Mail-Adresse."
|
|
1311
|
+
},
|
|
1312
|
+
security: {
|
|
1313
|
+
title: "Sicherheit",
|
|
1314
|
+
help: "Wie Sie sich anmelden: Passwort, Zwei-Faktor-Codes, Passkeys und Sitzungen."
|
|
1315
|
+
},
|
|
1316
|
+
notifications: {
|
|
1317
|
+
title: "Benachrichtigungen",
|
|
1318
|
+
help: "Wor\xFCber Sie informiert werden, wann und auf welchen Ger\xE4ten."
|
|
1319
|
+
},
|
|
1320
|
+
data: {
|
|
1321
|
+
title: "Daten",
|
|
1322
|
+
help: "Ihre Daten exportieren oder zusammen mit Ihrem Konto l\xF6schen."
|
|
1323
|
+
}
|
|
1324
|
+
}
|
|
1325
|
+
},
|
|
1326
|
+
landing: {
|
|
1327
|
+
signIn: "Anmelden",
|
|
1328
|
+
requestAccess: "Zugang anfragen",
|
|
1329
|
+
getStarted: "Jetzt starten",
|
|
1330
|
+
tryDemo: "Demo ausprobieren",
|
|
1331
|
+
openApp: "App \xF6ffnen",
|
|
1332
|
+
continueDemo: "Demo fortsetzen",
|
|
1333
|
+
beta: "Beta",
|
|
1334
|
+
// Plain text: a mail's subject and body lines, never HTML.
|
|
1335
|
+
accessSubject: (app) => app ? `Zugang zu ${app}` : "Zugangsanfrage",
|
|
1336
|
+
accessName: "Name:",
|
|
1337
|
+
// "Unternehmen", as `companySwitcher`.
|
|
1338
|
+
accessCompany: "Unternehmen:",
|
|
1339
|
+
accessUse: "Wof\xFCr Sie die App nutzen m\xF6chten:"
|
|
1340
|
+
},
|
|
1341
|
+
demo: {
|
|
1342
|
+
starting: "Demo wird gestartet\u2026",
|
|
1343
|
+
rateLimited: (minutes) => minutes ? `Zu viele Demos aus diesem Netzwerk. Versuchen Sie es in ${n(minutes)} min erneut.` : "Zu viele Demos aus diesem Netzwerk. Versuchen Sie es sp\xE4ter erneut.",
|
|
1344
|
+
capacity: "Die Demo ist gerade ausgelastet. Versuchen Sie es sp\xE4ter erneut.",
|
|
1345
|
+
unavailable: "Die Demo ist gerade nicht verf\xFCgbar.",
|
|
1346
|
+
failed: "Die Demo konnte nicht gestartet werden. Bitte versuchen Sie es erneut.",
|
|
1347
|
+
// As `legal.backHome`.
|
|
1348
|
+
backToStart: "Zur\xFCck zur Startseite",
|
|
1349
|
+
hoursLeft: (hours, minutes) => `Demo \xB7 noch ${n(hours)} h ${n(minutes)} min`,
|
|
1350
|
+
minutesLeft: (minutes) => `Demo \xB7 noch ${n(minutes)} min`,
|
|
1351
|
+
badge: "Demo",
|
|
1352
|
+
readOnly: "Sie sehen Beispieldaten. \xC4nderungen sind nicht m\xF6glich.",
|
|
1353
|
+
sandbox: "Was Sie selbst anlegen, wird gel\xF6scht, wenn die Demo endet.",
|
|
1354
|
+
details: "Demo-Details",
|
|
1355
|
+
writeLocked: "In der Demo nicht m\xF6glich.",
|
|
1356
|
+
endedTitle: "Die Demo ist beendet",
|
|
1357
|
+
endedReadOnly: "Die Beispieldaten werden regelm\xE4\xDFig zur\xFCckgesetzt.",
|
|
1358
|
+
endedSandbox: "Die Beispieldaten werden regelm\xE4\xDFig zur\xFCckgesetzt; was Sie in der Demo selbst angelegt haben, wird gel\xF6scht.",
|
|
1359
|
+
restart: "Neue Demo starten"
|
|
1074
1360
|
}
|
|
1075
1361
|
};
|
|
1076
1362
|
}
|