@cosmicdrift/kumiko-locale-de 0.208.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/LICENSE +57 -0
- package/README.md +11 -0
- package/package.json +42 -0
- package/src/__tests__/completeness.test.ts +27 -0
- package/src/__tests__/en-catalog.ts +838 -0
- package/src/__tests__/mount.test.ts +17 -0
- package/src/index.ts +17 -0
- package/src/strings.ts +859 -0
- package/src/web.ts +10 -0
|
@@ -0,0 +1,838 @@
|
|
|
1
|
+
// Auto-harvested en copy for framework UI + mail. Do not edit by hand
|
|
2
|
+
// unless you are fixing a translation; add new English keys in the framework
|
|
3
|
+
// and extend this table (completeness test will fail otherwise).
|
|
4
|
+
|
|
5
|
+
export const frameworkEnCatalog: Readonly<Record<string, string>> = {
|
|
6
|
+
"admin-shell:nav.platformOverview": "Overview",
|
|
7
|
+
"admin-shell:nav.tenantOverview": "Overview",
|
|
8
|
+
"admin-shell:nav.tenants": "Tenants",
|
|
9
|
+
"admin-shell:nav.tierAdmin": "Assign tier",
|
|
10
|
+
"admin-shell:overview.failedJobs": "Failed jobs",
|
|
11
|
+
"admin-shell:overview.failedJobsHint": "Review job runs",
|
|
12
|
+
"admin-shell:overview.loading": "Loading…",
|
|
13
|
+
"admin-shell:overview.members": "Members",
|
|
14
|
+
"admin-shell:overview.missingConfig": "Missing configuration",
|
|
15
|
+
"admin-shell:overview.missingConfigHint": "Check required settings",
|
|
16
|
+
"admin-shell:overview.pendingInvitations": "Pending invitations",
|
|
17
|
+
"admin-shell:overview.platformTitle": "Platform",
|
|
18
|
+
"admin-shell:overview.tenantTitle": "Administration",
|
|
19
|
+
"admin-shell:overview.tenants": "Tenants",
|
|
20
|
+
"admin-shell:overview.users": "Users",
|
|
21
|
+
"admin-shell:workspace.platform": "Platform",
|
|
22
|
+
"admin-shell:workspace.tenant": "Administration",
|
|
23
|
+
"audit.log.col.actor": "Actor",
|
|
24
|
+
"audit.log.col.aggregate": "Aggregate",
|
|
25
|
+
"audit.log.col.type": "Event",
|
|
26
|
+
"audit.log.col.when": "When",
|
|
27
|
+
"audit.log.detail.field.id": "Event ID",
|
|
28
|
+
"audit.log.detail.loading": "Loading event…",
|
|
29
|
+
"audit.log.detail.metadata": "Metadata",
|
|
30
|
+
"audit.log.detail.missing": "Event not found.",
|
|
31
|
+
"audit.log.detail.payload": "Event payload",
|
|
32
|
+
"audit.log.details": "Details",
|
|
33
|
+
"audit.log.empty": "No events.",
|
|
34
|
+
"audit.log.filter.aggregateType": "Aggregate type",
|
|
35
|
+
"audit.log.filter.apply": "Filter",
|
|
36
|
+
"audit.log.filter.eventType": "Event type",
|
|
37
|
+
"audit.log.filter.from": "From",
|
|
38
|
+
"audit.log.filter.reset": "Reset",
|
|
39
|
+
"audit.log.filter.to": "To",
|
|
40
|
+
"audit.log.loading": "Loading events…",
|
|
41
|
+
"audit.log.newest": "Newest",
|
|
42
|
+
"audit.log.older": "Load older",
|
|
43
|
+
"audit.log.title": "Audit log",
|
|
44
|
+
"audit:nav.auditLog": "Audit",
|
|
45
|
+
"auth.errors.accountLocked": "Account temporarily locked.",
|
|
46
|
+
"auth.errors.accountLockedRetry": "Account locked. Try again in {minutes} minutes.",
|
|
47
|
+
"auth.errors.accountRestricted":
|
|
48
|
+
"Account paused (GDPR Art. 18). Please lift the restriction to sign in again.",
|
|
49
|
+
"auth.errors.emailNotVerified": "Email address not yet verified.",
|
|
50
|
+
"auth.errors.invalidBody": "Invalid input.",
|
|
51
|
+
"auth.errors.invalidCredentials": "Invalid email or password.",
|
|
52
|
+
"auth.errors.invalidResetToken": "Link is invalid or expired. Please request a new one.",
|
|
53
|
+
"auth.errors.invalidSignupToken":
|
|
54
|
+
"Activation link is invalid or expired. Please request a new one.",
|
|
55
|
+
"auth.errors.invalidUnlockToken": "Unlock link is invalid or expired. Please request a new one.",
|
|
56
|
+
"auth.errors.invalidVerificationToken": "Verification link is invalid or expired.",
|
|
57
|
+
"auth.errors.loginFailed": "Login failed.",
|
|
58
|
+
"auth.errors.mfaNotSupported":
|
|
59
|
+
"This app doesn't support two-factor verification. Please contact support.",
|
|
60
|
+
"auth.errors.mfaSetupRequired":
|
|
61
|
+
"Two-factor authentication required. Please contact your administrator.",
|
|
62
|
+
"auth.errors.noMembership": "This account has no tenant access.",
|
|
63
|
+
"auth.errors.originNotAllowed": "Requests from this origin are not allowed.",
|
|
64
|
+
"auth.errors.rateLimited": "Too many login attempts. Please wait briefly.",
|
|
65
|
+
"auth.errors.signupEmailAlreadyRegistered":
|
|
66
|
+
"An account already exists for this email. Please sign in or reset your password.",
|
|
67
|
+
"auth.errors.unknownError": "Something went wrong. Please try again.",
|
|
68
|
+
"auth.forgotPassword.backToLogin": "Back to sign in",
|
|
69
|
+
"auth.forgotPassword.email": "Email",
|
|
70
|
+
"auth.forgotPassword.intro":
|
|
71
|
+
"Enter your email. If an account exists, we'll send you a reset link.",
|
|
72
|
+
"auth.forgotPassword.submit": "Request link",
|
|
73
|
+
"auth.forgotPassword.submitting": "…",
|
|
74
|
+
"auth.forgotPassword.successBody":
|
|
75
|
+
"If your email exists in our system, a reset link is on its way. Please check your inbox.",
|
|
76
|
+
"auth.forgotPassword.successTitle": "Email sent",
|
|
77
|
+
"auth.forgotPassword.title": "Reset password",
|
|
78
|
+
"auth.inviteAccept.acceptButton": "Accept",
|
|
79
|
+
"auth.inviteAccept.email": "Email",
|
|
80
|
+
"auth.inviteAccept.goToLogin": "Go to sign in",
|
|
81
|
+
"auth.inviteAccept.intro": "You've been invited to a workspace. Click 'Accept' to join.",
|
|
82
|
+
"auth.inviteAccept.loggedInAs": "Signed in as {email}",
|
|
83
|
+
"auth.inviteAccept.missingToken": "The invitation link is missing or invalid.",
|
|
84
|
+
"auth.inviteAccept.password": "Password",
|
|
85
|
+
"auth.inviteAccept.submit": "Accept + sign in",
|
|
86
|
+
"auth.inviteAccept.submitting": "…",
|
|
87
|
+
"auth.inviteAccept.title": "Accept invitation",
|
|
88
|
+
"auth.inviteAccept.toggleExisting": "I already have an account",
|
|
89
|
+
"auth.inviteAccept.toggleNew": "I don't have an account yet",
|
|
90
|
+
"auth.inviteAccept.useOtherAccount": "Sign in with a different account",
|
|
91
|
+
"auth.login.email": "Email",
|
|
92
|
+
"auth.login.forgotPassword": "Forgot password?",
|
|
93
|
+
"auth.login.password": "Password",
|
|
94
|
+
"auth.login.resendError": "Could not send. Please try again.",
|
|
95
|
+
"auth.login.resendRateLimited": "Please wait a moment and try again.",
|
|
96
|
+
"auth.login.resendSuccess": "We've sent you a new verification email.",
|
|
97
|
+
"auth.login.resendVerification": "Send verification email again",
|
|
98
|
+
"auth.login.submit": "Sign in",
|
|
99
|
+
"auth.login.submitting": "…",
|
|
100
|
+
"auth.login.title": "Sign in",
|
|
101
|
+
"auth.login.unlockAccount": "Unlock account?",
|
|
102
|
+
"auth.mail.activation.button": "Activate account",
|
|
103
|
+
"auth.mail.activation.expiry": "The link expires on {when}.",
|
|
104
|
+
"auth.mail.activation.greeting": "Welcome,",
|
|
105
|
+
"auth.mail.activation.ignore":
|
|
106
|
+
"If you didn't sign up, you can ignore this email — no account is created until you open the link.",
|
|
107
|
+
"auth.mail.activation.intro":
|
|
108
|
+
"click the link below to activate your {app} account. The next step is choosing your password:",
|
|
109
|
+
"auth.mail.activation.subject": "{app} — Activate your account",
|
|
110
|
+
"auth.mail.appNameDefault": "Account",
|
|
111
|
+
"auth.mail.invite.button": "Accept invitation",
|
|
112
|
+
"auth.mail.invite.expiry": "The link expires on {when}.",
|
|
113
|
+
"auth.mail.invite.greeting": "Hi,",
|
|
114
|
+
"auth.mail.invite.ignore": "If you weren't expecting this invitation, you can ignore this email.",
|
|
115
|
+
"auth.mail.invite.intro":
|
|
116
|
+
"you've been invited to a {app} workspace as {role}. Click the link below to accept:",
|
|
117
|
+
"auth.mail.invite.subject": "{app} — Workspace invitation",
|
|
118
|
+
"auth.mail.reset.button": "Reset password",
|
|
119
|
+
"auth.mail.reset.expiry": "The link expires on {when}.",
|
|
120
|
+
"auth.mail.reset.greeting": "Hi,",
|
|
121
|
+
"auth.mail.reset.ignore":
|
|
122
|
+
"If you didn't request a reset, you can safely ignore this email — your password won't change.",
|
|
123
|
+
"auth.mail.reset.intro":
|
|
124
|
+
"you requested a password reset for {app}. Click the link below to set a new password:",
|
|
125
|
+
"auth.mail.reset.subject": "{app} — Reset your password",
|
|
126
|
+
"auth.mail.unlock.button": "Unlock account",
|
|
127
|
+
"auth.mail.unlock.expiry": "The link expires on {when}.",
|
|
128
|
+
"auth.mail.unlock.greeting": "Hi,",
|
|
129
|
+
"auth.mail.unlock.ignore":
|
|
130
|
+
"If you didn't trigger this lock, you can ignore this email — the lock expires on its own.",
|
|
131
|
+
"auth.mail.unlock.intro":
|
|
132
|
+
"your {app} account was temporarily locked after several failed sign-in attempts. Click the link below to unlock it immediately:",
|
|
133
|
+
"auth.mail.unlock.subject": "{app} — Unlock your account",
|
|
134
|
+
"auth.mail.verify.button": "Verify email",
|
|
135
|
+
"auth.mail.verify.expiry": "The link expires on {when}.",
|
|
136
|
+
"auth.mail.verify.greeting": "Welcome,",
|
|
137
|
+
"auth.mail.verify.ignore": "If you didn't create this account, you can ignore this email.",
|
|
138
|
+
"auth.mail.verify.intro": "please verify your email address for {app} to activate your account:",
|
|
139
|
+
"auth.mail.verify.subject": "{app} — Verify your email",
|
|
140
|
+
"auth.mfa.disable.cancel": "Cancel",
|
|
141
|
+
"auth.mfa.disable.code": "Code from your authenticator app or a recovery code",
|
|
142
|
+
"auth.mfa.disable.confirm": "Disable",
|
|
143
|
+
"auth.mfa.disable.description":
|
|
144
|
+
"Confirm with a code from your authenticator app or a recovery code. Your account will then be protected by your password alone.",
|
|
145
|
+
"auth.mfa.disable.title": "Disable two-factor authentication",
|
|
146
|
+
"auth.mfa.disable.trigger": "Disable two-factor authentication",
|
|
147
|
+
"auth.mfa.enable.acknowledge": "I've saved my recovery codes.",
|
|
148
|
+
"auth.mfa.enable.cancel": "Cancel",
|
|
149
|
+
"auth.mfa.enable.code": "Code from your authenticator app",
|
|
150
|
+
"auth.mfa.enable.confirm": "Enable",
|
|
151
|
+
"auth.mfa.enable.intro":
|
|
152
|
+
"Add an extra layer of protection with an authenticator app (e.g. Google Authenticator, 1Password).",
|
|
153
|
+
"auth.mfa.enable.manualEntry": "Or enter manually:",
|
|
154
|
+
"auth.mfa.enable.recoveryHint":
|
|
155
|
+
"Save these codes somewhere safe. They're shown only this once and let you back in if you lose your device.",
|
|
156
|
+
"auth.mfa.enable.recoveryTitle": "Recovery codes",
|
|
157
|
+
"auth.mfa.enable.scanTitle": "Scan the QR code",
|
|
158
|
+
"auth.mfa.enable.start": "Start setup",
|
|
159
|
+
"auth.mfa.enable.success": "Two-factor authentication is now enabled.",
|
|
160
|
+
"auth.mfa.enable.title": "Two-factor authentication",
|
|
161
|
+
"auth.mfa.errors.challengeExpired": "Your sign-in has expired. Please sign in again.",
|
|
162
|
+
"auth.mfa.errors.invalidChallengeToken": "Your sign-in has expired. Please sign in again.",
|
|
163
|
+
"auth.mfa.errors.invalidCode": "Invalid code. Please try again.",
|
|
164
|
+
"auth.mfa.errors.invalidRecoveryCode": "Invalid recovery code.",
|
|
165
|
+
"auth.mfa.errors.invalidSetupToken": "Setup expired. Please start again.",
|
|
166
|
+
"auth.mfa.errors.invalidTotpCode": "Invalid code. Please try again.",
|
|
167
|
+
"auth.mfa.errors.mfaAlreadyEnabled": "Two-factor authentication is already enabled.",
|
|
168
|
+
"auth.mfa.errors.mfaNotEnabled": "Two-factor authentication is not enabled.",
|
|
169
|
+
"auth.mfa.errors.setupFailed": "Setup failed. Please try again.",
|
|
170
|
+
"auth.mfa.errors.tooManyAttempts": "Too many failed attempts. Please sign in again.",
|
|
171
|
+
"auth.mfa.errors.tooManyAttemptsWithSeconds":
|
|
172
|
+
"Too many failed attempts. Try again in {seconds} seconds, or sign in again.",
|
|
173
|
+
"auth.mfa.errors.verifyFailed": "Verification failed.",
|
|
174
|
+
"auth.mfa.regenerate.acknowledge": "I've saved my new recovery codes.",
|
|
175
|
+
"auth.mfa.regenerate.cancel": "Cancel",
|
|
176
|
+
"auth.mfa.regenerate.code": "Code from your authenticator app",
|
|
177
|
+
"auth.mfa.regenerate.confirm": "Generate new codes",
|
|
178
|
+
"auth.mfa.regenerate.description":
|
|
179
|
+
"Confirm with a code from your authenticator app. All existing recovery codes stop working immediately.",
|
|
180
|
+
"auth.mfa.regenerate.done": "Done",
|
|
181
|
+
"auth.mfa.regenerate.newCodesHint":
|
|
182
|
+
"Save these codes somewhere safe. The old codes stop working immediately.",
|
|
183
|
+
"auth.mfa.regenerate.newCodesTitle": "Your new recovery codes",
|
|
184
|
+
"auth.mfa.regenerate.title": "Generate new recovery codes",
|
|
185
|
+
"auth.mfa.regenerate.trigger": "Generate new recovery codes",
|
|
186
|
+
"auth.mfa.setup.confirm": "Complete setup",
|
|
187
|
+
"auth.mfa.setup.intro":
|
|
188
|
+
"Scan the QR code with an authenticator app (e.g. Google Authenticator, 1Password).",
|
|
189
|
+
"auth.mfa.setup.start": "Start setup",
|
|
190
|
+
"auth.mfa.setup.subtitle":
|
|
191
|
+
"Your account requires two-factor authentication. Set it up now to sign in.",
|
|
192
|
+
"auth.mfa.setup.title": "Two-factor authentication required",
|
|
193
|
+
"auth.mfa.verify.backToLogin": "Back to login",
|
|
194
|
+
"auth.mfa.verify.code": "Code",
|
|
195
|
+
"auth.mfa.verify.submit": "Verify",
|
|
196
|
+
"auth.mfa.verify.submitting": "…",
|
|
197
|
+
"auth.mfa.verify.subtitle": "Enter the 6-digit code from your authenticator app.",
|
|
198
|
+
"auth.mfa.verify.title": "Two-factor verification",
|
|
199
|
+
"auth.requestUnlock.backToLogin": "Back to sign in",
|
|
200
|
+
"auth.requestUnlock.email": "Email",
|
|
201
|
+
"auth.requestUnlock.intro":
|
|
202
|
+
"Enter your email address. If your account is locked, we'll send you an unlock link.",
|
|
203
|
+
"auth.requestUnlock.rateLimited": "Too many requests. Try again in {minutes} minutes.",
|
|
204
|
+
"auth.requestUnlock.submit": "Request link",
|
|
205
|
+
"auth.requestUnlock.submitting": "…",
|
|
206
|
+
"auth.requestUnlock.successBody":
|
|
207
|
+
"If that email exists in our system and is locked, a message with an unlock link is on its way. Please check your inbox.",
|
|
208
|
+
"auth.requestUnlock.successTitle": "Email sent",
|
|
209
|
+
"auth.requestUnlock.title": "Unlock account",
|
|
210
|
+
"auth.resetPassword.confirmPassword": "Confirm password",
|
|
211
|
+
"auth.resetPassword.goToLogin": "Go to sign in",
|
|
212
|
+
"auth.resetPassword.intro": "Choose a new password (at least 8 characters).",
|
|
213
|
+
"auth.resetPassword.mismatch": "Passwords do not match.",
|
|
214
|
+
"auth.resetPassword.missingToken": "Reset link is missing a token. Please request a new one.",
|
|
215
|
+
"auth.resetPassword.newPassword": "New password",
|
|
216
|
+
"auth.resetPassword.submit": "Save password",
|
|
217
|
+
"auth.resetPassword.submitting": "…",
|
|
218
|
+
"auth.resetPassword.successBody": "You can now sign in with your new password.",
|
|
219
|
+
"auth.resetPassword.successTitle": "Password set",
|
|
220
|
+
"auth.resetPassword.title": "Set new password",
|
|
221
|
+
"auth.resetPassword.tooShort": "Password must be at least 8 characters.",
|
|
222
|
+
"auth.signup.email": "Email",
|
|
223
|
+
"auth.signup.haveAccount": "Already have an account? Sign in",
|
|
224
|
+
"auth.signup.intro": "Enter your email. We'll send you an activation link to set your password.",
|
|
225
|
+
"auth.signup.resend": "Send email again",
|
|
226
|
+
"auth.signup.submit": "Send activation link",
|
|
227
|
+
"auth.signup.submitting": "…",
|
|
228
|
+
"auth.signup.successBody":
|
|
229
|
+
"We've sent you an activation link. Click it to set your password and sign in.",
|
|
230
|
+
"auth.signup.successTitle": "Email sent",
|
|
231
|
+
"auth.signup.title": "Create account",
|
|
232
|
+
"auth.signupComplete.confirmPassword": "Confirm password",
|
|
233
|
+
"auth.signupComplete.intro": "Choose a password (at least 8 characters) for your new account.",
|
|
234
|
+
"auth.signupComplete.mismatch": "Passwords do not match.",
|
|
235
|
+
"auth.signupComplete.missingToken":
|
|
236
|
+
"Activation link is missing a token. Please request a new one.",
|
|
237
|
+
"auth.signupComplete.password": "Password",
|
|
238
|
+
"auth.signupComplete.submit": "Activate account",
|
|
239
|
+
"auth.signupComplete.submitting": "…",
|
|
240
|
+
"auth.signupComplete.title": "Set password",
|
|
241
|
+
"auth.signupComplete.tooShort": "Password must be at least 8 characters.",
|
|
242
|
+
"auth.tenant.switcher.label": "Tenant",
|
|
243
|
+
"auth.tenant.switcher.none": "No tenant",
|
|
244
|
+
"auth.unlockAccount.errorBody": "Link is invalid or expired. Please request a new unlock link.",
|
|
245
|
+
"auth.unlockAccount.errorTitle": "Unlock failed",
|
|
246
|
+
"auth.unlockAccount.goToLogin": "Go to sign in",
|
|
247
|
+
"auth.unlockAccount.missingToken": "Unlock link is missing a token.",
|
|
248
|
+
"auth.unlockAccount.successBody": "Your account is unlocked again. You can sign in now.",
|
|
249
|
+
"auth.unlockAccount.successTitle": "Account unlocked",
|
|
250
|
+
"auth.unlockAccount.verifying": "Unlocking account …",
|
|
251
|
+
"auth.user.menu.label": "Account",
|
|
252
|
+
"auth.user.menu.logout": "Sign out",
|
|
253
|
+
"auth.verifyEmail.errorBody":
|
|
254
|
+
"Link is invalid or expired. Please request a new verification email.",
|
|
255
|
+
"auth.verifyEmail.errorTitle": "Verification failed",
|
|
256
|
+
"auth.verifyEmail.goToLogin": "Go to sign in",
|
|
257
|
+
"auth.verifyEmail.missingToken": "Verification link is missing a token.",
|
|
258
|
+
"auth.verifyEmail.successBody": "Thanks! You can sign in now.",
|
|
259
|
+
"auth.verifyEmail.successTitle": "Email verified",
|
|
260
|
+
"auth.verifyEmail.verifying": "Verifying email …",
|
|
261
|
+
"cap-counter:entity:cap-counter:field:capName": "Cap",
|
|
262
|
+
"cap-counter:entity:cap-counter:field:lastSoftWarnedAt": "Last soft warning",
|
|
263
|
+
"cap-counter:entity:cap-counter:field:periodStart": "Period start",
|
|
264
|
+
"cap-counter:entity:cap-counter:field:value": "Value",
|
|
265
|
+
"compliance-profiles:nav.profilePicker": "Compliance",
|
|
266
|
+
"compliance.profile.catalog": "Available profiles",
|
|
267
|
+
"compliance.profile.current": "Current",
|
|
268
|
+
"compliance.profile.loading": "Loading compliance profiles…",
|
|
269
|
+
"compliance.profile.save": "Save profile",
|
|
270
|
+
"compliance.profile.saving": "Saving…",
|
|
271
|
+
"compliance.profile.select": "Profile",
|
|
272
|
+
"compliance.profile.title": "Compliance profile",
|
|
273
|
+
"config.errors.invalidScope": "This scope is not allowed for this key.",
|
|
274
|
+
"config.errors.systemOnly": "This value can only be set by the system.",
|
|
275
|
+
"config.errors.unknownKey": "Unknown configuration key.",
|
|
276
|
+
"config.settings.system": "Platform",
|
|
277
|
+
"config.settings.tenant": "Organization",
|
|
278
|
+
"config.settings.title": "Settings",
|
|
279
|
+
"config.settings.user": "Personal",
|
|
280
|
+
"custom-fields.errors.saveFailed": "Save failed.",
|
|
281
|
+
"custom-fields.form.createMode": "Save the entity first to add custom field values.",
|
|
282
|
+
"custom-fields.form.empty": 'No custom fields defined for "{entityName}".',
|
|
283
|
+
"custom-fields.form.loading": "Loading…",
|
|
284
|
+
"custom-fields.form.save": "Save custom fields",
|
|
285
|
+
"custom-fields.form.saving": "Saving…",
|
|
286
|
+
"delivery.log.col.channel": "Channel",
|
|
287
|
+
"delivery.log.col.recipient": "Recipient",
|
|
288
|
+
"delivery.log.col.status": "Status",
|
|
289
|
+
"delivery.log.col.type": "Type",
|
|
290
|
+
"delivery.log.empty": "No delivery attempts.",
|
|
291
|
+
"delivery.log.loading": "Loading delivery attempts…",
|
|
292
|
+
"delivery.log.title": "Delivery log",
|
|
293
|
+
"delivery:nav.deliveryLog": "Delivery",
|
|
294
|
+
"dispatcher.errors.aborted": "Request was cancelled.",
|
|
295
|
+
"dispatcher.errors.network": "Network error. Please check your connection and try again.",
|
|
296
|
+
"errors.access.denied": "You don't have permission to do this.",
|
|
297
|
+
"errors.cap.exceeded": "Limit reached. Upgrade your plan or wait for the next period.",
|
|
298
|
+
"errors.conflict": "Conflict — the operation could not be completed.",
|
|
299
|
+
"errors.download.urlMissing": "Download unavailable — please try again.",
|
|
300
|
+
"errors.feature.disabled": "This feature is currently unavailable.",
|
|
301
|
+
"errors.internal": "Something went wrong. Please try again later.",
|
|
302
|
+
"errors.notFound": "Not found.",
|
|
303
|
+
"errors.rate_limited": "Too many requests. Please try again shortly.",
|
|
304
|
+
"errors.unconfigured": "This feature isn't configured yet.",
|
|
305
|
+
"errors.uniqueViolation": "This entry already exists.",
|
|
306
|
+
"errors.unprocessable": "The request could not be processed.",
|
|
307
|
+
"errors.validation.custom": "Invalid value.",
|
|
308
|
+
"errors.validation.failed": "Validation failed.",
|
|
309
|
+
"errors.validation.invalid_element": "Invalid entry.",
|
|
310
|
+
"errors.validation.invalid_format": "Invalid format.",
|
|
311
|
+
"errors.validation.invalid_key": "Invalid key.",
|
|
312
|
+
"errors.validation.invalid_option": "Invalid choice.",
|
|
313
|
+
"errors.validation.invalid_type": "Invalid value.",
|
|
314
|
+
"errors.validation.invalid_union": "Invalid value.",
|
|
315
|
+
"errors.validation.invalid_value": "Invalid choice.",
|
|
316
|
+
"errors.validation.not_multiple_of": "Must be a multiple of {divisor}.",
|
|
317
|
+
"errors.validation.out_of_bounds": "Value out of allowed range.",
|
|
318
|
+
"errors.validation.too_big": "Too big or too long (maximum: {maximum}).",
|
|
319
|
+
"errors.validation.too_small": "Too small or too short (minimum: {minimum}).",
|
|
320
|
+
"errors.validation.unexpected_field": "Unknown field.",
|
|
321
|
+
"errors.validation.unrecognized_keys": "Unknown fields.",
|
|
322
|
+
"errors.versionConflict": "The record was modified in the meantime. Reload and try again.",
|
|
323
|
+
"feature-toggles.admin.alwaysOn": "always on",
|
|
324
|
+
"feature-toggles.admin.col.default": "Default",
|
|
325
|
+
"feature-toggles.admin.col.effective": "Effective",
|
|
326
|
+
"feature-toggles.admin.col.feature": "Feature",
|
|
327
|
+
"feature-toggles.admin.col.override": "Override",
|
|
328
|
+
"feature-toggles.admin.loading": "Loading feature toggles…",
|
|
329
|
+
"feature-toggles.admin.saving": "Saving…",
|
|
330
|
+
"feature-toggles.admin.title": "Feature toggles",
|
|
331
|
+
"feature-toggles.admin.toggle": "Toggle",
|
|
332
|
+
"feature-toggles:nav.toggleAdmin": "Feature toggles",
|
|
333
|
+
"folders.manager.add": "Create",
|
|
334
|
+
"folders.manager.addChild": "Subfolder",
|
|
335
|
+
"folders.manager.cancel": "Cancel",
|
|
336
|
+
"folders.manager.delete": "Delete",
|
|
337
|
+
"folders.manager.deleteBlocked": "Remove subfolders first.",
|
|
338
|
+
"folders.manager.deleteConfirmBody":
|
|
339
|
+
"The folder will be removed. Filed entries move back to Unfiled.",
|
|
340
|
+
"folders.manager.deleteConfirmTitle": "Delete folder?",
|
|
341
|
+
"folders.manager.loading": "Loading…",
|
|
342
|
+
"folders.manager.newRoot": "New folder",
|
|
343
|
+
"folders.manager.rename": "Rename",
|
|
344
|
+
"folders.manager.save": "Save",
|
|
345
|
+
"folders.manager.working": "Saving…",
|
|
346
|
+
"folders.section.create": "Create & file",
|
|
347
|
+
"folders.section.createMode": "Save the entity first to pick a folder.",
|
|
348
|
+
"folders.section.empty": "No folders found.",
|
|
349
|
+
"folders.section.label": "Folder",
|
|
350
|
+
"folders.section.loading": "Loading…",
|
|
351
|
+
"folders.section.newLabel": "New folder",
|
|
352
|
+
"folders.section.none": "— No folder —",
|
|
353
|
+
"folders.section.placeholder": "Select a folder…",
|
|
354
|
+
"folders.section.working": "Saving…",
|
|
355
|
+
"gdpr.mail.appNameDefault": "Account",
|
|
356
|
+
"gdpr.mail.deletionExecuted.intro":
|
|
357
|
+
"your {app} account and the associated personal data were deleted on {when}. This action is permanent.",
|
|
358
|
+
"gdpr.mail.deletionExecuted.subject": "{app} — Your account has been deleted",
|
|
359
|
+
"gdpr.mail.deletionRequested.cancel":
|
|
360
|
+
"If you didn't request this, sign in and cancel the deletion in your account settings before the deadline.",
|
|
361
|
+
"gdpr.mail.deletionRequested.intro":
|
|
362
|
+
"we received your request to delete your {app} account. Your account and associated data will be permanently deleted on {when}.",
|
|
363
|
+
"gdpr.mail.deletionRequested.subject": "{app} — Account deletion requested",
|
|
364
|
+
"gdpr.mail.exportFailed.intro":
|
|
365
|
+
"your requested data export for {app} could not be created. Please request the export again.",
|
|
366
|
+
"gdpr.mail.exportFailed.subject": "{app} — Your data export failed",
|
|
367
|
+
"gdpr.mail.exportReady.button": "Download data export",
|
|
368
|
+
"gdpr.mail.exportReady.expiry": "The download link expires on {when}.",
|
|
369
|
+
"gdpr.mail.exportReady.intro":
|
|
370
|
+
"your requested data export for {app} is ready. Download it using the link below:",
|
|
371
|
+
"gdpr.mail.exportReady.subject": "{app} — Your data export is ready",
|
|
372
|
+
"gdpr.mail.fallbackUrl": "If the button doesn't work, copy this link into your browser:",
|
|
373
|
+
"gdpr.mail.greeting": "Hi,",
|
|
374
|
+
"jobs.detail.field.duration": "Duration (ms)",
|
|
375
|
+
"jobs.detail.field.error": "Error",
|
|
376
|
+
"jobs.detail.field.finished": "Finished",
|
|
377
|
+
"jobs.detail.field.id": "Run ID",
|
|
378
|
+
"jobs.detail.field.job": "Job",
|
|
379
|
+
"jobs.detail.field.started": "Started",
|
|
380
|
+
"jobs.detail.field.status": "Status",
|
|
381
|
+
"jobs.detail.loading": "Loading details…",
|
|
382
|
+
"jobs.detail.logs": "Logs",
|
|
383
|
+
"jobs.detail.logs.empty": "No log lines.",
|
|
384
|
+
"jobs.detail.missing": "Run not found.",
|
|
385
|
+
"jobs.detail.retry": "Retry",
|
|
386
|
+
"jobs.detail.retrying": "Retrying…",
|
|
387
|
+
"jobs.errors.notFound": "Not found.",
|
|
388
|
+
"jobs.errors.notManual": "This job cannot be triggered manually.",
|
|
389
|
+
"jobs.errors.onlyFailedCanRetry": "Only failed runs can be retried.",
|
|
390
|
+
"jobs.errors.unknownJob": "Unknown job.",
|
|
391
|
+
"jobs.runs.col.duration": "Duration (ms)",
|
|
392
|
+
"jobs.runs.col.job": "Job",
|
|
393
|
+
"jobs.runs.col.started": "Started",
|
|
394
|
+
"jobs.runs.col.status": "Status",
|
|
395
|
+
"jobs.runs.empty": "No job runs.",
|
|
396
|
+
"jobs.runs.filter.all": "All",
|
|
397
|
+
"jobs.runs.filter.completed": "Completed",
|
|
398
|
+
"jobs.runs.filter.failed": "Failed",
|
|
399
|
+
"jobs.runs.filter.queued": "Queued",
|
|
400
|
+
"jobs.runs.filter.running": "Running",
|
|
401
|
+
"jobs.runs.filter.status": "Status",
|
|
402
|
+
"jobs.runs.loading": "Loading runs…",
|
|
403
|
+
"jobs.runs.open": "Details",
|
|
404
|
+
"jobs.runs.title": "Job runs",
|
|
405
|
+
"jobs.trigger.empty": "No manually triggerable jobs are registered.",
|
|
406
|
+
"jobs.trigger.explainer":
|
|
407
|
+
"Only manually triggerable jobs. After starting, the run appears in the history below.",
|
|
408
|
+
"jobs.trigger.job": "Job",
|
|
409
|
+
"jobs.trigger.payload": "Payload (JSON)",
|
|
410
|
+
"jobs.trigger.payload.hint": "Schema hint",
|
|
411
|
+
"jobs.trigger.payload.invalidJson": "Payload is not a valid JSON object.",
|
|
412
|
+
"jobs.trigger.perTenant": "Runs once per active tenant.",
|
|
413
|
+
"jobs.trigger.submit": "Run",
|
|
414
|
+
"jobs.trigger.submitting": "Starting…",
|
|
415
|
+
"jobs.trigger.success": "Job started.",
|
|
416
|
+
"jobs.trigger.title": "Run a job",
|
|
417
|
+
"jobs:nav.jobRuns": "Jobs",
|
|
418
|
+
"kumiko.actions.back": "Back",
|
|
419
|
+
"kumiko.actions.cancel": "Cancel",
|
|
420
|
+
"kumiko.actions.copyLink": "Copy link",
|
|
421
|
+
"kumiko.actions.copyLinkCopied": "Copied!",
|
|
422
|
+
"kumiko.actions.create": "New",
|
|
423
|
+
"kumiko.actions.delete": "Delete",
|
|
424
|
+
"kumiko.actions.delete-confirm": "Confirm delete?",
|
|
425
|
+
"kumiko.actions.edit": "Edit",
|
|
426
|
+
"kumiko.actions.finish": "Finish",
|
|
427
|
+
"kumiko.actions.next": "Next",
|
|
428
|
+
"kumiko.actions.reload": "Reload",
|
|
429
|
+
"kumiko.actions.save": "Save",
|
|
430
|
+
"kumiko.aiText.acceptHint": "Tab = accept, Esc = discard",
|
|
431
|
+
"kumiko.aiText.capExceeded": "Monthly AI limit reached.",
|
|
432
|
+
"kumiko.aiText.correct": "Correct",
|
|
433
|
+
"kumiko.aiText.diff.after": "After",
|
|
434
|
+
"kumiko.aiText.diff.before": "Before",
|
|
435
|
+
"kumiko.aiText.diff.generating": "Generating…",
|
|
436
|
+
"kumiko.aiText.rewrite": "Rewrite",
|
|
437
|
+
"kumiko.aiText.style.casual": "Casual",
|
|
438
|
+
"kumiko.aiText.style.concise": "Concise",
|
|
439
|
+
"kumiko.aiText.style.expand": "Expand",
|
|
440
|
+
"kumiko.aiText.style.formal": "Formal",
|
|
441
|
+
"kumiko.aiText.translate": "Translate",
|
|
442
|
+
"kumiko.combobox.empty": "No matches.",
|
|
443
|
+
"kumiko.combobox.loading": "Loading…",
|
|
444
|
+
"kumiko.combobox.placeholder": "—",
|
|
445
|
+
"kumiko.combobox.search-placeholder": "Search…",
|
|
446
|
+
"kumiko.config.cascade.activeMarker": "active",
|
|
447
|
+
"kumiko.config.cascade.noValue": "No value set",
|
|
448
|
+
"kumiko.config.cascade.resetTo": "Reset override ({scope})",
|
|
449
|
+
"kumiko.config.source.appOverride": "App override",
|
|
450
|
+
"kumiko.config.source.computed": "Computed",
|
|
451
|
+
"kumiko.config.source.default": "Default",
|
|
452
|
+
"kumiko.config.source.missing": "Missing",
|
|
453
|
+
"kumiko.config.source.system": "System",
|
|
454
|
+
"kumiko.config.source.tenant": "Tenant",
|
|
455
|
+
"kumiko.config.source.user": "My value",
|
|
456
|
+
"kumiko.contentEditor.bold": "Bold",
|
|
457
|
+
"kumiko.contentEditor.bulletList": "Bullet list",
|
|
458
|
+
"kumiko.contentEditor.editMode": "Edit",
|
|
459
|
+
"kumiko.contentEditor.heading1": "Heading 1",
|
|
460
|
+
"kumiko.contentEditor.heading2": "Heading 2",
|
|
461
|
+
"kumiko.contentEditor.insertVariable": "Insert {name}",
|
|
462
|
+
"kumiko.contentEditor.italic": "Italic",
|
|
463
|
+
"kumiko.contentEditor.orderedList": "Numbered list",
|
|
464
|
+
"kumiko.contentEditor.preview": "Preview",
|
|
465
|
+
"kumiko.dashboard.filter.all": "All",
|
|
466
|
+
"kumiko.dialog.cancel": "Cancel",
|
|
467
|
+
"kumiko.dialog.close": "Close",
|
|
468
|
+
"kumiko.dialog.confirm": "Confirm",
|
|
469
|
+
"kumiko.field.dateField.placeholderDay": "D",
|
|
470
|
+
"kumiko.field.dateField.placeholderMonth": "M",
|
|
471
|
+
"kumiko.field.dateField.placeholderYear": "Y",
|
|
472
|
+
"kumiko.field.embedded-list.add-row": "Add row",
|
|
473
|
+
"kumiko.field.embedded-list.duplicate-row": "Duplicate row",
|
|
474
|
+
"kumiko.field.embedded-list.empty": "No rows yet.",
|
|
475
|
+
"kumiko.field.embedded-list.empty-cta": "Add first row",
|
|
476
|
+
"kumiko.field.embedded-list.move-down": "Move down",
|
|
477
|
+
"kumiko.field.embedded-list.move-up": "Move up",
|
|
478
|
+
"kumiko.field.embedded-list.paste-cells-unmatched":
|
|
479
|
+
"{count} cell(s) had no matching option and were left unchanged.",
|
|
480
|
+
"kumiko.field.embedded-list.paste-rows-truncated":
|
|
481
|
+
"{count} pasted row(s) were dropped (max row count reached).",
|
|
482
|
+
"kumiko.field.embedded-list.remove-row": "Remove row",
|
|
483
|
+
"kumiko.field.locatedTzHint": "Time local to the given location",
|
|
484
|
+
"kumiko.field.open-calendar": "Open calendar",
|
|
485
|
+
"kumiko.field.reference-created-no-id":
|
|
486
|
+
"Record was created but could not be selected automatically. Please select it manually.",
|
|
487
|
+
"kumiko.field.time": "Time",
|
|
488
|
+
"kumiko.field.timezone": "Time zone",
|
|
489
|
+
"kumiko.field.unsupported": "This field type can't be edited here yet.",
|
|
490
|
+
"kumiko.form.draft.resume-multiple":
|
|
491
|
+
"Found multiple open drafts for this form. Which one do you want to resume?",
|
|
492
|
+
"kumiko.form.draft.resume-single": "Found an open draft for this form. Do you want to resume it?",
|
|
493
|
+
"kumiko.form.draft.start-new": "Start new",
|
|
494
|
+
"kumiko.form.error.generic": "Something went wrong.",
|
|
495
|
+
"kumiko.form.error.version-conflict":
|
|
496
|
+
"Record was modified in the meantime. Reload and try again.",
|
|
497
|
+
"kumiko.form.extension.save-failed": "A custom field could not be saved.",
|
|
498
|
+
"kumiko.list.empty.hint": "Create the first one to get started.",
|
|
499
|
+
"kumiko.list.empty.title": "No entries yet.",
|
|
500
|
+
"kumiko.list.end-of-list": "— End of list —",
|
|
501
|
+
"kumiko.list.no-entries": "No entries.",
|
|
502
|
+
"kumiko.list.search-placeholder": "Search…",
|
|
503
|
+
"kumiko.nav.collapse": "Collapse",
|
|
504
|
+
"kumiko.nav.expand": "Expand",
|
|
505
|
+
"kumiko.nav.language": "Language",
|
|
506
|
+
"kumiko.nav.search": "Search navigation…",
|
|
507
|
+
"kumiko.pager.nextPage": "Next page",
|
|
508
|
+
"kumiko.pager.page": "Page {entry}",
|
|
509
|
+
"kumiko.pager.previousPage": "Previous page",
|
|
510
|
+
"kumiko.pager.status": "{from}–{to} of {total}",
|
|
511
|
+
"kumiko.rowAction.failed": "Action failed",
|
|
512
|
+
"kumiko.toast.learn-more": "Learn more",
|
|
513
|
+
"kumiko.validation.invalid": "Invalid value.",
|
|
514
|
+
"kumiko.validation.out-of-range": "Value out of allowed range.",
|
|
515
|
+
"kumiko.validation.required": "Required.",
|
|
516
|
+
"kumiko.validation.too-long": "Too long (at most {max} characters).",
|
|
517
|
+
"kumiko.validation.too-short": "Too short (at least {min} characters).",
|
|
518
|
+
"kumiko.version.update-available": "A new version is available.",
|
|
519
|
+
"kumiko.widget.drawer.maximize": "Maximize drawer width",
|
|
520
|
+
"kumiko.widget.drawer.resize": "Resize drawer",
|
|
521
|
+
"kumiko.widget.drawer.restore": "Restore drawer width",
|
|
522
|
+
"kumiko.widget.error.title": "Couldn't load.",
|
|
523
|
+
"kumiko.widget.loading": "Loading…",
|
|
524
|
+
"kumiko.widget.step-bar.done": "Done",
|
|
525
|
+
"kumiko.widget.upload.done": "Uploaded",
|
|
526
|
+
"kumiko.widget.upload.error": "Failed",
|
|
527
|
+
"kumiko.widget.upload.rejected-type": "File type not allowed",
|
|
528
|
+
"kumiko.widget.upload.uploading": "Uploading…",
|
|
529
|
+
"kumiko.wizard.step": "Step {current} of {total}",
|
|
530
|
+
"kumiko.wizard.step-with-title": "Step {current} of {total} · {title}",
|
|
531
|
+
"kumiko.workspace.select": "Select workspace",
|
|
532
|
+
"kumiko.workspace.switch": "Switch workspace",
|
|
533
|
+
"managed-pages:actions.delete": "Delete",
|
|
534
|
+
"managed-pages:actions.edit": "Edit",
|
|
535
|
+
"managed-pages:branding.section.custom-css": "Custom CSS",
|
|
536
|
+
"managed-pages:branding.section.identity": "Identity",
|
|
537
|
+
"managed-pages:confirms.page-delete": "Delete this page?",
|
|
538
|
+
"managed-pages:entity:__config-edit__:field:accentColor": "Accent color",
|
|
539
|
+
"managed-pages:entity:__config-edit__:field:customCss": "Custom CSS",
|
|
540
|
+
"managed-pages:entity:__config-edit__:field:description": "Description",
|
|
541
|
+
"managed-pages:entity:__config-edit__:field:layoutPreset": "Layout",
|
|
542
|
+
"managed-pages:entity:__config-edit__:field:logoUrl": "Logo URL",
|
|
543
|
+
"managed-pages:entity:__config-edit__:field:siteUrl": "Site URL",
|
|
544
|
+
"managed-pages:entity:__config-edit__:field:title": "Site title",
|
|
545
|
+
"managed-pages:entity:page:field:body": "Content",
|
|
546
|
+
"managed-pages:entity:page:field:description": "Description",
|
|
547
|
+
"managed-pages:entity:page:field:lang": "Language",
|
|
548
|
+
"managed-pages:entity:page:field:ogImage": "OG image",
|
|
549
|
+
"managed-pages:entity:page:field:published": "Published",
|
|
550
|
+
"managed-pages:entity:page:field:published:option:false": "Draft",
|
|
551
|
+
"managed-pages:entity:page:field:published:option:true": "Published",
|
|
552
|
+
"managed-pages:entity:page:field:slug": "Slug",
|
|
553
|
+
"managed-pages:entity:page:field:title": "Title",
|
|
554
|
+
"managed-pages:section.body": "Content",
|
|
555
|
+
"managed-pages:section.meta": "Metadata",
|
|
556
|
+
"notesHistory.section.add": "Add note",
|
|
557
|
+
"notesHistory.section.createMode": "Save the entity first to add notes.",
|
|
558
|
+
"notesHistory.section.empty": "No notes yet.",
|
|
559
|
+
"notesHistory.section.loading": "Loading…",
|
|
560
|
+
"notesHistory.section.meta": "{author} · {date}",
|
|
561
|
+
"notesHistory.section.working": "Saving…",
|
|
562
|
+
"pat.create.currentPassword": "Password (to confirm)",
|
|
563
|
+
"pat.create.expiry": "Expiration",
|
|
564
|
+
"pat.create.mfaCode": "2FA code (if enabled)",
|
|
565
|
+
"pat.create.mfaCodePlaceholder": "6-digit code",
|
|
566
|
+
"pat.create.name": "Name",
|
|
567
|
+
"pat.create.namePlaceholder": "e.g. CLI automation",
|
|
568
|
+
"pat.create.needName": "Please enter a name.",
|
|
569
|
+
"pat.create.needPassword": "Please enter your password to confirm.",
|
|
570
|
+
"pat.create.needScope": "Please select at least one permission.",
|
|
571
|
+
"pat.create.scopes": "Per-API access",
|
|
572
|
+
"pat.create.submit": "Create token",
|
|
573
|
+
"pat.create.subtitle": "Pick permissions and an expiration. The token is shown only once.",
|
|
574
|
+
"pat.create.title": "Create a new token",
|
|
575
|
+
"pat.created.copied": "Copied ✓",
|
|
576
|
+
"pat.created.copy": "Copy",
|
|
577
|
+
"pat.created.dismiss": "Done",
|
|
578
|
+
"pat.created.hint": "Copy this token now — for security it is shown only this once.",
|
|
579
|
+
"pat.error.generic": "Action failed.",
|
|
580
|
+
"pat.expiry.1y": "1 year",
|
|
581
|
+
"pat.expiry.30d": "30 days",
|
|
582
|
+
"pat.expiry.90d": "90 days",
|
|
583
|
+
"pat.expiry.never": "No expiration",
|
|
584
|
+
"pat.level.none": "No access",
|
|
585
|
+
"pat.level.read": "Read",
|
|
586
|
+
"pat.level.write": "Read & write",
|
|
587
|
+
"pat.list.created": "Created {date}",
|
|
588
|
+
"pat.list.empty": "No tokens yet.",
|
|
589
|
+
"pat.list.neverExpires": "Never expires",
|
|
590
|
+
"pat.list.revoke": "Revoke",
|
|
591
|
+
"pat.list.revoked": "Revoked",
|
|
592
|
+
"pat.list.title": "Your tokens",
|
|
593
|
+
"pat.list.validUntil": "Valid until {date}",
|
|
594
|
+
"pat.title": "Personal Access Tokens",
|
|
595
|
+
"profile.danger.cancelDeletion": "Cancel deletion",
|
|
596
|
+
"profile.danger.cancelSuccess": "Deletion cancelled. Your account stays.",
|
|
597
|
+
"profile.danger.delete": "Delete account",
|
|
598
|
+
"profile.danger.dialogDescription":
|
|
599
|
+
"After the grace period your data will be permanently deleted. Until then you can cancel.",
|
|
600
|
+
"profile.danger.dialogTitle": "Really delete your account?",
|
|
601
|
+
"profile.danger.explainer":
|
|
602
|
+
"Your account will be permanently deleted after a grace period. Until then you can cancel the deletion at any time.",
|
|
603
|
+
"profile.danger.requested":
|
|
604
|
+
"Deletion requested — your account will be permanently deleted on {date}.",
|
|
605
|
+
"profile.danger.title": "Delete account",
|
|
606
|
+
"profile.email.current": "Current email",
|
|
607
|
+
"profile.email.currentPassword": "Current password",
|
|
608
|
+
"profile.email.new": "New email",
|
|
609
|
+
"profile.email.submit": "Change email",
|
|
610
|
+
"profile.email.success": "Email changed. Please confirm your new address.",
|
|
611
|
+
"profile.email.title": "Email address",
|
|
612
|
+
"profile.errors.emailUnchanged": "That is already your email address.",
|
|
613
|
+
"profile.errors.generic": "Something went wrong.",
|
|
614
|
+
"profile.password.confirm": "Confirm new password",
|
|
615
|
+
"profile.password.mismatch": "Passwords do not match.",
|
|
616
|
+
"profile.password.new": "New password",
|
|
617
|
+
"profile.password.old": "Current password",
|
|
618
|
+
"profile.password.submit": "Change password",
|
|
619
|
+
"profile.password.success": "Password changed.",
|
|
620
|
+
"profile.password.title": "Password",
|
|
621
|
+
"profile.title": "Profile",
|
|
622
|
+
"screen:api-tokens.title": "Personal Access Tokens",
|
|
623
|
+
"screen:audit-log-detail.title": "Event",
|
|
624
|
+
"screen:audit-log.title": "Audit log",
|
|
625
|
+
"screen:auth-mfa-enable.title": "Two-factor authentication",
|
|
626
|
+
"screen:branding-settings.title": "Branding",
|
|
627
|
+
"screen:cap-list.title": "Usage caps",
|
|
628
|
+
"screen:delivery-log.title": "Delivery log",
|
|
629
|
+
"screen:download-attempt-list.title": "Download attempts",
|
|
630
|
+
"screen:export-job-detail.title": "Export job",
|
|
631
|
+
"screen:export-job-list.title": "GDPR exports",
|
|
632
|
+
"screen:job-run-detail.title": "Job run",
|
|
633
|
+
"screen:job-runs.title": "Job runs",
|
|
634
|
+
"screen:members.title": "Team",
|
|
635
|
+
"screen:page-edit.title": "Edit page",
|
|
636
|
+
"screen:page-list.title": "Pages",
|
|
637
|
+
"screen:platform-overview.title": "Overview",
|
|
638
|
+
"screen:privacy-center.title": "Privacy",
|
|
639
|
+
"screen:profile-picker.title": "Compliance profile",
|
|
640
|
+
"screen:session-detail.title": "Session",
|
|
641
|
+
"screen:session-list.title": "Sessions",
|
|
642
|
+
"screen:tag-list.title": "Tags",
|
|
643
|
+
"screen:tenant-edit.title": "Edit tenant",
|
|
644
|
+
"screen:tenant-list.title": "Tenants",
|
|
645
|
+
"screen:tenant-overview.title": "Overview",
|
|
646
|
+
"screen:tier-admin.title": "Assign tier manually",
|
|
647
|
+
"screen:toggle-admin.title": "Feature toggles",
|
|
648
|
+
"screen:user-edit.title": "Edit user",
|
|
649
|
+
"screen:user-list.title": "Users",
|
|
650
|
+
"sessions.detail.field.createdAt": "Created",
|
|
651
|
+
"sessions.detail.field.expiresAt": "Expires",
|
|
652
|
+
"sessions.detail.field.id": "ID",
|
|
653
|
+
"sessions.detail.field.ip": "IP address",
|
|
654
|
+
"sessions.detail.field.revokedAt": "Revoked",
|
|
655
|
+
"sessions.detail.field.userAgent": "User agent",
|
|
656
|
+
"sessions.detail.field.userId": "User ID",
|
|
657
|
+
"sessions.list.action.open": "Details",
|
|
658
|
+
"sessions.list.col.createdAt": "Created",
|
|
659
|
+
"sessions.list.col.expiresAt": "Expires",
|
|
660
|
+
"sessions.list.col.id": "ID",
|
|
661
|
+
"sessions.list.col.revokedAt": "Revoked",
|
|
662
|
+
"sessions.list.col.userId": "User ID",
|
|
663
|
+
"sessions:nav.sessionList": "Sessions",
|
|
664
|
+
"tags.filter.clear": "Clear",
|
|
665
|
+
"tags.filter.label": "Filter by tag",
|
|
666
|
+
"tags.manage.cancel": "Cancel",
|
|
667
|
+
"tags.manage.create": "Create label",
|
|
668
|
+
"tags.manage.delete": "Delete",
|
|
669
|
+
"tags.manage.deleteConfirmDesc": "Removes it from {count} objects. This can't be undone.",
|
|
670
|
+
"tags.manage.deleteConfirmTitle": "Delete label “{name}”?",
|
|
671
|
+
"tags.manage.edit": "Edit",
|
|
672
|
+
"tags.manage.namePlaceholder": "Label name",
|
|
673
|
+
"tags.manage.newLabel": "New label",
|
|
674
|
+
"tags.manage.save": "Save",
|
|
675
|
+
"tags.manage.scopeLabel": "Scope (entity type, empty = global)",
|
|
676
|
+
"tags.manage.scopePlaceholder": "e.g. note (empty = everywhere)",
|
|
677
|
+
"tags.manage.toggle": "Toggle label",
|
|
678
|
+
"tags.manage.usage": "{count}×",
|
|
679
|
+
"tags.picker.done": "Done",
|
|
680
|
+
"tags.picker.title": "Tags",
|
|
681
|
+
"tags.section.createMode": "Save the entity first to add tags.",
|
|
682
|
+
"tags.section.edit": "Edit tags",
|
|
683
|
+
"tags.section.empty": "No tags found.",
|
|
684
|
+
"tags.section.loading": "Loading…",
|
|
685
|
+
"tags.section.none": "No tags",
|
|
686
|
+
"tags.section.working": "Saving…",
|
|
687
|
+
"template-resolver.editor.contentLabel": "Content",
|
|
688
|
+
"template-resolver.editor.created": "Created.",
|
|
689
|
+
"template-resolver.editor.loadFailed": "Could not load block",
|
|
690
|
+
"template-resolver.editor.loading": "Loading current version…",
|
|
691
|
+
"template-resolver.editor.networkError": "Network error while saving.",
|
|
692
|
+
"template-resolver.editor.readOnly":
|
|
693
|
+
"Read-only — TenantAdmin or SystemAdmin role required to make changes.",
|
|
694
|
+
"template-resolver.editor.save": "Save",
|
|
695
|
+
"template-resolver.editor.saveFailed": "Save failed.",
|
|
696
|
+
"template-resolver.editor.saved": "Saved.",
|
|
697
|
+
"template-resolver.editor.saving": "Saving…",
|
|
698
|
+
"template-resolver.editor.titleLabel": "Title",
|
|
699
|
+
"tenant.members.active": "Active members",
|
|
700
|
+
"tenant.members.cancel": "Cancel",
|
|
701
|
+
"tenant.members.col.email": "Email",
|
|
702
|
+
"tenant.members.col.expires": "Valid until",
|
|
703
|
+
"tenant.members.col.roles": "Roles",
|
|
704
|
+
"tenant.members.col.userId": "User ID",
|
|
705
|
+
"tenant.members.invite.email": "Email",
|
|
706
|
+
"tenant.members.invite.role": "Role",
|
|
707
|
+
"tenant.members.invite.submit": "Send invitation",
|
|
708
|
+
"tenant.members.invite.submitting": "Sending invitation…",
|
|
709
|
+
"tenant.members.invite.success": "Invitation sent to {email}",
|
|
710
|
+
"tenant.members.invite.title": "New invitation",
|
|
711
|
+
"tenant.members.loading": "Loading members…",
|
|
712
|
+
"tenant.members.pending": "Pending invitations",
|
|
713
|
+
"tenant.members.pending.empty": "No pending invitations.",
|
|
714
|
+
"tenant.members.title": "Members",
|
|
715
|
+
"tenant.nav.members": "Team",
|
|
716
|
+
"tenant:entity:tenant:field:isEnabled": "Enabled",
|
|
717
|
+
"tenant:entity:tenant:field:isEnabled:option:false": "No",
|
|
718
|
+
"tenant:entity:tenant:field:isEnabled:option:true": "Yes",
|
|
719
|
+
"tenant:entity:tenant:field:key": "Key",
|
|
720
|
+
"tenant:entity:tenant:field:name": "Name",
|
|
721
|
+
"tenant:entity:tenant:field:status": "Status",
|
|
722
|
+
"tenant:entity:tenant:field:status:option:active": "Active",
|
|
723
|
+
"tenant:entity:tenant:field:status:option:destroyFailed": "Destroy failed",
|
|
724
|
+
"tenant:entity:tenant:field:status:option:destroyRequested": "Destroy requested",
|
|
725
|
+
"tenant:entity:tenant:field:status:option:destroyed": "Destroyed",
|
|
726
|
+
"tenant:entity:tenant:field:status:option:destroying": "Destroying",
|
|
727
|
+
"tier-admin.current.label": "Current tier",
|
|
728
|
+
"tier-admin.current.none": "— none yet —",
|
|
729
|
+
"tier-admin.error.generic": "Could not assign the tier.",
|
|
730
|
+
"tier-admin.error.load": "Failed to load tenants.",
|
|
731
|
+
"tier-admin.error.noTiers": "This app has no TierMap configured — there are no assignable tiers.",
|
|
732
|
+
"tier-admin.explainer":
|
|
733
|
+
"Grant a tenant a tier without a purchase. The grant is marked as “manual” and a later billing sync won't overwrite it.",
|
|
734
|
+
"tier-admin.submit": "Assign tier",
|
|
735
|
+
"tier-admin.success": "Assigned tier “{tier}”.",
|
|
736
|
+
"tier-admin.tenant.label": "Tenant",
|
|
737
|
+
"tier-admin.tier.label": "New tier",
|
|
738
|
+
"tier-admin.title": "Assign tier manually",
|
|
739
|
+
"user-data-rights:entity:download-attempt:field:attemptedAt": "Attempted at",
|
|
740
|
+
"user-data-rights:entity:download-attempt:field:attemptedByUserId": "User",
|
|
741
|
+
"user-data-rights:entity:download-attempt:field:ip": "IP",
|
|
742
|
+
"user-data-rights:entity:download-attempt:field:jobId": "Job",
|
|
743
|
+
"user-data-rights:entity:download-attempt:field:result": "Result",
|
|
744
|
+
"user-data-rights:entity:download-attempt:field:via": "Via",
|
|
745
|
+
"user-data-rights:entity:export-job:field:bytesWritten": "Bytes",
|
|
746
|
+
"user-data-rights:entity:export-job:field:completedAt": "Completed",
|
|
747
|
+
"user-data-rights:entity:export-job:field:downloadStorageKey": "Storage key",
|
|
748
|
+
"user-data-rights:entity:export-job:field:errorMessage": "Error",
|
|
749
|
+
"user-data-rights:entity:export-job:field:expiresAt": "Expires",
|
|
750
|
+
"user-data-rights:entity:export-job:field:requestedAt": "Requested",
|
|
751
|
+
"user-data-rights:entity:export-job:field:requestedFromTenantId": "Tenant",
|
|
752
|
+
"user-data-rights:entity:export-job:field:startedAt": "Started",
|
|
753
|
+
"user-data-rights:entity:export-job:field:status": "Status",
|
|
754
|
+
"user-data-rights:entity:export-job:field:userId": "User",
|
|
755
|
+
"user-data-rights:nav.exportJobs": "GDPR exports",
|
|
756
|
+
"user.errors.emailAlreadyExists": "This email address is already in use.",
|
|
757
|
+
"user:entity:user:field:displayName": "Display name",
|
|
758
|
+
"user:entity:user:field:email": "Email",
|
|
759
|
+
"user:entity:user:field:emailVerified": "Email verified",
|
|
760
|
+
"user:entity:user:field:emailVerified:option:false": "No",
|
|
761
|
+
"user:entity:user:field:emailVerified:option:true": "Yes",
|
|
762
|
+
"user:entity:user:field:locale": "Locale",
|
|
763
|
+
"user:entity:user:field:status": "Status",
|
|
764
|
+
"user:entity:user:field:status:option:active": "Active",
|
|
765
|
+
"user:entity:user:field:status:option:deleted": "Deleted",
|
|
766
|
+
"user:entity:user:field:status:option:deletionRequested": "Deletion requested",
|
|
767
|
+
"user:entity:user:field:status:option:restricted": "Restricted",
|
|
768
|
+
"user:entity:user:field:timezone": "Timezone",
|
|
769
|
+
"userDataRights.deletion.confirm.error": "Something went wrong. Please try again.",
|
|
770
|
+
"userDataRights.deletion.confirm.intro":
|
|
771
|
+
"Confirming starts the deletion grace period. Until it ends you can cancel the deletion from your logged-in account.",
|
|
772
|
+
"userDataRights.deletion.confirm.invalidToken":
|
|
773
|
+
"The link is invalid or expired. Please request a new one.",
|
|
774
|
+
"userDataRights.deletion.confirm.missingToken":
|
|
775
|
+
"No token found in the link. Please open the link from the email again.",
|
|
776
|
+
"userDataRights.deletion.confirm.submit": "Confirm deletion",
|
|
777
|
+
"userDataRights.deletion.confirm.submitting": "…",
|
|
778
|
+
"userDataRights.deletion.confirm.successBody":
|
|
779
|
+
"Your account will be deleted after the grace period. You can cancel the deletion from your logged-in account until then.",
|
|
780
|
+
"userDataRights.deletion.confirm.successTitle": "Deletion scheduled",
|
|
781
|
+
"userDataRights.deletion.confirm.title": "Confirm account deletion",
|
|
782
|
+
"userDataRights.deletion.request.email": "Email",
|
|
783
|
+
"userDataRights.deletion.request.error": "Something went wrong. Please try again.",
|
|
784
|
+
"userDataRights.deletion.request.intro":
|
|
785
|
+
"Enter the email address of your account. If an account exists, we'll send you a confirmation link to delete it.",
|
|
786
|
+
"userDataRights.deletion.request.submit": "Request confirmation link",
|
|
787
|
+
"userDataRights.deletion.request.submitting": "…",
|
|
788
|
+
"userDataRights.deletion.request.successBody":
|
|
789
|
+
"If the email exists in our system, a message with a confirmation link is on its way. Please check your inbox.",
|
|
790
|
+
"userDataRights.deletion.request.successTitle": "Email sent",
|
|
791
|
+
"userDataRights.deletion.request.title": "Request account deletion",
|
|
792
|
+
"userDataRights.errors.download.expired":
|
|
793
|
+
"Your download has expired. Please request a new export.",
|
|
794
|
+
"userDataRights.errors.download.notFound":
|
|
795
|
+
"The download link is invalid or belongs to a different account.",
|
|
796
|
+
"userDataRights.errors.download.signedUrlNotSupported":
|
|
797
|
+
"The download is currently unavailable due to a server configuration issue. The operator has been notified.",
|
|
798
|
+
"userDataRights.errors.download.unavailable":
|
|
799
|
+
"The export is not yet ready or has failed. Please check the status endpoint.",
|
|
800
|
+
"userDataRights.privacyCenter.deletion.cancel": "Cancel deletion",
|
|
801
|
+
"userDataRights.privacyCenter.deletion.cancelSuccess": "The deletion was cancelled.",
|
|
802
|
+
"userDataRights.privacyCenter.deletion.delete": "Delete account",
|
|
803
|
+
"userDataRights.privacyCenter.deletion.dialogDescription":
|
|
804
|
+
"Confirming starts the deletion grace period. You can cancel the deletion until it ends.",
|
|
805
|
+
"userDataRights.privacyCenter.deletion.dialogTitle": "Delete your account?",
|
|
806
|
+
"userDataRights.privacyCenter.deletion.explainer":
|
|
807
|
+
"Request deletion of your account. Until the grace period ends you can cancel the deletion.",
|
|
808
|
+
"userDataRights.privacyCenter.deletion.requested": "Your account will be deleted on {date}.",
|
|
809
|
+
"userDataRights.privacyCenter.deletion.title": "Delete account (Art. 17)",
|
|
810
|
+
"userDataRights.privacyCenter.errors.generic": "Something went wrong. Please try again.",
|
|
811
|
+
"userDataRights.privacyCenter.export.availableUntil": "Available until {date}",
|
|
812
|
+
"userDataRights.privacyCenter.export.download": "Download export",
|
|
813
|
+
"userDataRights.privacyCenter.export.failed":
|
|
814
|
+
"The last export failed to build. You can try again.",
|
|
815
|
+
"userDataRights.privacyCenter.export.intro":
|
|
816
|
+
"Request a copy of your data. It is prepared in the background; once ready you can download it here.",
|
|
817
|
+
"userDataRights.privacyCenter.export.pending":
|
|
818
|
+
"Your export is being prepared. Please check back later.",
|
|
819
|
+
"userDataRights.privacyCenter.export.ready": "Your export is ready.",
|
|
820
|
+
"userDataRights.privacyCenter.export.request": "Request data export",
|
|
821
|
+
"userDataRights.privacyCenter.export.requestNew": "Request a new export",
|
|
822
|
+
"userDataRights.privacyCenter.export.requesting": "Requesting …",
|
|
823
|
+
"userDataRights.privacyCenter.export.title": "Export your data (Art. 20)",
|
|
824
|
+
"userDataRights.privacyCenter.intro":
|
|
825
|
+
"Manage your GDPR rights: access, export, restrict, and delete your account.",
|
|
826
|
+
"userDataRights.privacyCenter.loadError": "Your data could not be loaded.",
|
|
827
|
+
"userDataRights.privacyCenter.loading": "Loading …",
|
|
828
|
+
"userDataRights.privacyCenter.restriction.dialogDescription":
|
|
829
|
+
"You will be signed out immediately and cannot sign in again until support lifts the restriction.",
|
|
830
|
+
"userDataRights.privacyCenter.restriction.dialogTitle": "Restrict your account?",
|
|
831
|
+
"userDataRights.privacyCenter.restriction.explainer":
|
|
832
|
+
"Freeze your account: processing of your data is paused and you are signed out. Lifting the restriction afterwards is only possible via support.",
|
|
833
|
+
"userDataRights.privacyCenter.restriction.restrict": "Restrict account",
|
|
834
|
+
"userDataRights.privacyCenter.restriction.restricted":
|
|
835
|
+
"Your account is restricted. Contact support to lift the restriction.",
|
|
836
|
+
"userDataRights.privacyCenter.restriction.title": "Restrict processing (Art. 18)",
|
|
837
|
+
"userDataRights.privacyCenter.title": "Privacy",
|
|
838
|
+
};
|