{ "accounts": "Accounts", "actions": { "actionFailed": "Action failed.", "backToActions": "Back to actions", "execute": "Execute", "executeAnother": "Execute another action", "executedSuccess": "Action executed successfully.", "executing": "Executing {{label}}...", "failedTitle": "Action failed", "noAdditionalData": "No additional data returned.", "otherGroup": "Other", "title": "Actions" }, "bootstrap": { "clipboardBlocked": "Your browser blocked clipboard access.", "complete": "Setup complete", "configuredSuccessfully": "Stalwart has been configured successfully.", "copyFailed": "Copy failed", "credentialsCreated": "Your administrator account has been created. Write these down now: the password will not be shown again.", "emptyForm": "Setup form is empty. The server did not return any bootstrap fields.", "failedToComplete": "Failed to complete setup.", "failedToLoad": "Failed to load bootstrap state.", "finishSetup": "Finish setup", "loadingSetup": "Loading setup...", "nextStepBody": "restart Stalwart for the new configuration to take effect. Once restarted, sign in with the credentials above to continue administering your server.", "nextStepLabel": "Next step:", "noConfirm": "The server did not confirm the update.", "stepOf": "Step {{current}} of {{total}}", "welcome": "Welcome to Stalwart", "welcomeSubtitle": "Let's get your server set up." }, "common": { "apply": "Apply", "back": "Back", "cancel": "Cancel", "clear": "Clear", "confirm": "Confirm", "continue": "Continue", "create": "Create", "delete": "Delete", "loading": "Loading...", "next": "Next", "no": "No", "noResultsDot": "No results.", "save": "Save", "search": "Search", "searchPlaceholder": "Search...", "yes": "Yes", "close": "Close" }, "dashboard": { "customEllipsis": "Custom...", "customRange": "Custom range", "failedFetchMetrics": "Failed to fetch metrics", "from": "From", "liveMetricsDisconnected": "Live metrics stream disconnected after multiple retries.", "liveMetricsFailed": "Failed to connect to live metrics.", "preset24h": "Last 24 hours", "preset30d": "Last 30 days", "preset7d": "Last 7 days", "preset90d": "Last 90 days", "to": "To" }, "deliveryTrace": { "attemptCount_one": "{{count}} attempt", "attemptCount_other": "{{count}} attempts", "attemptLabel": "Delivery Attempt: {{hostname}}", "body": { "connectionStart": "Connecting to {{ip}}", "connectionSuccess": "Connected", "daneVerifySuccess": "DANE verification passed", "ehloSuccess": "EHLO accepted", "ipLookupOverflow": "{{shown}} +{{extra}} more", "mailFromSuccess": "Sender accepted", "mtaStsFetchSuccess": "Policy fetched successfully", "mtaStsNotFound": "No MTA-STS policy published", "mtaStsVerifySuccess": "MTA-STS hostname verified", "mxLookupStart": "Looking up MX for {{domain}}", "mxLookupSuccess_one": "Resolved {{count}} MX record", "mxLookupSuccess_other": "Resolved {{count}} MX records", "quitCompleted": "Session closed", "rcptToSuccess": "Recipient accepted", "readGreetingSuccess": "Server greeting received", "startTlsSuccess": "TLS negotiated", "tlsRptLookupSuccess_one": "Found {{count}} reporting URI", "tlsRptLookupSuccess_other": "Found {{count}} reporting URIs", "tlsRptNotFound": "No TLS-RPT record published", "tlsaLookupSuccess": "TLSA record found", "tlsaNotFound": "No TLSA record found" }, "cancelTrace": "Cancel trace", "connectionLost": "Connection lost before trace completed.", "deliveryFailed": "Delivery failed", "deliverySuccessful": "Delivery successful", "failedToStart": "Failed to start trace.", "inDuration": "in {{elapsed}}", "invalidTarget": "Enter a valid email address or domain.", "phase": { "connection": "TCP Connection", "daneVerify": "DANE Verify", "ipLookup": "IP Lookup", "mtaStsFetch": "MTA-STS Policy Fetch", "mtaStsVerify": "MTA-STS Verify", "mxLookup": "MX Lookup", "readGreeting": "Read Greeting", "tlsRptLookup": "TLS-RPT Lookup", "tlsaLookup": "TLSA / DANE Lookup" }, "runAnother": "Run another trace", "startTrace": "Start trace", "startedAgoMin": "Started {{m}}m {{s}}s ago", "startedAgoSec": "Started {{s}}s ago", "subtitle": "Run a real outbound SMTP delivery attempt and watch every DNS lookup, TLS handshake, and SMTP command as it happens.", "targetLabel": "Target address or domain", "targetPlaceholder": "john@example.org or example.org", "timedOut": "Trace timed out after 120 seconds.", "title": "Delivery Trace", "traceCompletedFor": "Trace completed for {{target}}", "traceFailedFor": "Trace failed for {{target}}", "tracingDelivery": "Tracing delivery to {{target}}", "viewDetails": "View details", "waiting": "Waiting for more events" }, "duration": { "days": "Days", "hours": "Hours", "milliseconds": "Milliseconds", "minutes": "Minutes", "seconds": "Seconds" }, "enterprise": { "featureDisabled": "This feature requires an Enterprise license.", "trialTitle": "Unlock Enterprise Features", "trialDescription": "Get access to advanced features including multi-tenancy, AI-powered spam filtering, alerts, and more.", "trialButton": "Start 30-Day Free Trial", "requestTrial": "Request a free trial to unlock this feature.", "ossHidden": "This feature is not available in the open-source edition." }, "errorBoundary": { "title": "Something went wrong", "tryAgain": "Try Again" }, "errors": { "unexpectedError": "An unexpected error occurred.", "viewNotFound": "View not found", "loadSchemaFailed": "Failed to load the admin panel configuration.", "notFound": "The requested resource was not found." }, "expression": { "addCondition": "Add condition", "condition": "Condition", "defaultValue": "Default value", "else": "ELSE", "if": "IF", "result": "Result", "then": "THEN", "value": "Value" }, "field": { "add": "Add", "addItem": "Add item", "contentModified": "Content modified (will be saved as a new blob)", "enable": "Enable", "key": "Key...", "loadingContent": "Loading content...", "noMatches": "No matches", "noPermissionToView": "You do not have permission to view {{name}}", "none": "None", "notSet": "Not set", "optional": "(optional)", "required": "required", "selectEllipsis": "Select...", "selectKey": "Select key...", "selectOptions": "Select options...", "type": "Type", "typeAndPressEnter": "Type and press Enter...", "unknownObjectType": "Unknown object type: {{name}}" }, "filters": { "after": "After", "all": "All", "before": "Before" }, "form": { "correctErrorsBelow": "Please correct the errors below.", "createTitle": "Create {{name}}", "createdServerGenerated": "The following values were generated by the server. Please save them now, they may not be retrievable later.", "createdSuccess": "Created successfully", "deleteDescription": "This action cannot be undone. This will permanently delete this {{name}}.", "deleteTitle": "Delete {{name}}?", "deletedSuccess": "{{name}} deleted successfully", "editTitle": "Edit {{name}}", "editTitleWithValue": "Edit {{name}}: {{value}}", "failedToDelete": "Failed to delete.", "failedToLoadData": "Failed to load data.", "failedToSave": "Failed to save.", "invalidValue": "Invalid value.", "item": "item", "leave": "Leave", "loadingData": "Loading data...", "loadingSchema": "Loading schema...", "maxLengthIs": "Maximum length is {{max}}.", "maxValueIs": "Maximum value is {{max}}.", "minLengthIs": "Minimum length is {{min}}.", "minValueIs": "Minimum value is {{min}}.", "noChangesToSave": "No changes to save", "objectNotFound": "Object not found.", "otpCodeRequired": "Enter your current authenticator code to authorise this change.", "required": "This field is required.", "savedSuccess": "Saved successfully", "selectType": "Select type...", "stay": "Stay", "unsavedChanges": "You have unsaved changes. Are you sure you want to leave?", "unsavedChangesLabel": "Unsaved changes", "unsavedChangesTitle": "Unsaved changes" }, "globalSearch": { "create": "Create", "fields": "Fields", "formSections": "Form Sections", "list": "List", "noResults": "No results found.", "pages": "Pages", "settings": "Settings" }, "jmapErrors": { "addressBookHasContents": "This address book has contacts. Remove them first.", "alreadyExists": "An item with the same identifier already exists.", "calendarHasEvent": "This calendar contains events. Remove them first.", "forbidden": "You do not have permission to perform this action.", "invalidForeignKey": "This item references another item that does not exist.", "mailboxHasChild": "This mailbox has child mailboxes. Delete them first.", "mailboxHasEmail": "This mailbox contains messages. Remove them first.", "nodeHasChildren": "This item has children. Delete them first.", "notFound": "The item was not found. It may have been already deleted.", "objectIsLinked": "This item is referenced by other items and cannot be deleted.", "overQuota": "The operation exceeds your storage quota.", "primaryKeyViolation": "An item with the same key already exists.", "rateLimit": "Too many requests. Please try again later.", "singleton": "This item is a singleton and cannot be deleted.", "tooLarge": "The item is too large.", "unexpected": "Unexpected error ({{type}}).", "validationFailed": "The data did not pass validation." }, "list": { "actionWithCount": "{{action}} ({{count}} {{name}})", "actions": "Actions", "allItemsSelected": "All {{total}} items matching filters are selected.", "allPageSelected": "All {{count}} items on this page are selected.", "bulkErrorGrouped": "{{count}} items: {{message}}", "bulkErrorMore": "…and {{count}} more.", "bulkFailDelete_one": "Failed to delete {{count}} item.", "bulkFailDelete_other": "Failed to delete {{count}} items.", "bulkFailUpdate_one": "Failed to update {{count}} item.", "bulkFailUpdate_other": "Failed to update {{count}} items.", "bulkMixedDelete": "{{success}} deleted, {{failed}} failed.", "bulkMixedUpdate": "{{success}} updated, {{failed}} failed.", "bulkSuccessDelete_one": "{{count}} item deleted successfully.", "bulkSuccessDelete_other": "{{count}} items deleted successfully.", "bulkSuccessUpdate_one": "{{count}} item updated successfully.", "bulkSuccessUpdate_other": "{{count}} items updated successfully.", "clearSelection": "Clear selection", "confirmDescription": "Are you sure you want to proceed with: {{action}}?", "confirmTitle": "Confirm Action", "create": "Create {{name}}", "delete": "Delete", "deleteNotConfirmed": "Delete failed: item was not confirmed as destroyed by the server.", "filterPlaceholder": "Search {{label}}...", "filters": "Filters", "massAction": "Actions", "next": "Next", "noResults": "No results found", "previous": "Previous", "resetFilters": "Reset", "searchFilters": "Search", "selectAll": "Select all", "selectAllMatching": "Select all {{total}} items matching filters", "selectFilterPlaceholder": "Select {{label}}...", "selectItem": "Select item", "showing": "Showing {{from}}-{{to}} of {{total}} {{name}}", "showingItems": "Showing {{count}} items", "sort": "Sort", "unknownError": "Unknown error" }, "login": { "continue": "Continue", "error": "An unexpected error occurred", "prompt": "Enter your account name to continue", "usernamePlaceholder": "user@example.com" }, "logo": { "alt": "Logo", "stalwartAlt": "Stalwart Logo" }, "logout": "Logout", "oauth": { "backToLogin": "Back to login", "discoveryFailed": "Discovery failed for \"{{username}}\": {{status}} {{statusText}}", "error": "Authentication failed", "missingData": "Missing OAuth session data. Please try logging in again.", "missingParams": "Missing authorization code or state parameter", "processing": "Completing sign in...", "stateMismatch": "State parameter mismatch. Please try logging in again.", "tokenExchangeFailed": "Token exchange failed: {{status}} {{statusText}}" }, "otp": { "codeIncorrect": "That code is incorrect. Make sure your authenticator clock is in sync.", "confirmationCodeLabel": "Confirmation code", "currentCodeLabel": "Current code", "currentCodePrompt": "Enter your current 6-digit code to authorise any change to this account (including disabling two-factor authentication).", "disable": "Disable", "enterCodePrompt": "Enter the code shown in your authenticator.", "qrCodeAlt": "TOTP QR code", "scanDescription": "Scan the QR code below with Google Authenticator, 1Password, Authy, or any other TOTP app, then enter the 6-digit code it shows to confirm setup.", "scanPrompt": "Scan with your authenticator app", "setUp": "Set up TOTP", "statusDisabled": "Two-factor authentication is not enabled.", "statusEnabled": "Two-factor authentication is enabled." }, "rate": { "count": "Count", "per": "per", "periodValue": "Period value" }, "sections": "Sections", "toggleTheme": "Toggle theme", "tracing": { "addFilter": "Add filter", "bufferFull": "(buffer full)", "connecting": "Connecting...", "date": "Date", "disabled": "disabled", "duration": "Duration", "enabled": "enabled", "eventCount_one": "{{count}} event", "eventCount_other": "{{count}} events", "events": "Events", "failedToLoadTrace": "Failed to load trace", "keywordsLabel": "Keywords (optional)", "keywordsPlaceholder": "Enter keywords to filter events...", "liveDisconnected": "Live tracing stream disconnected after multiple retries.", "liveFailedStart": "Failed to start live tracing.", "liveSubtitle": "Stream server events in real time.", "liveTitle": "Live Tracing", "noEvents": "No trace events to display.", "restart": "Restart", "spanType": "Span Type", "startTracing": "Start tracing", "stopTracing": "Stop tracing", "stopped": "Stopped", "streamingEvents": "Streaming events...", "traceNotFound": "Trace not found", "valuePlaceholder": "Value..." }, "tryEnterprise": "Try Enterprise", "userMenu": "User menu", "view": { "couldNotResolve": "Could not resolve object", "failedToLoad": "Failed to load", "noGetResponse": "No get response", "objectNotFound": "Object not found" } }