{ "common": { "submit": "Submit", "cancel": "Cancel", "save": "Save", "save_changes": "Save Changes", "delete": "Delete", "edit": "Edit", "search": "Search", "add": "Add", "remove": "Remove", "create": "Create", "update": "Update", "confirm": "Confirm", "close": "Close", "yes": "Yes", "no": "No", "ok": "OK", "loading": "Loading...", "empty": "Empty", "noData": "No Data", "table": { "noResults": "No results." }, "failed": "Failed", "notFound": "Not Found", "back": "Back", "goBack": "Go Back", "backToHome": "Back to Home", "tryAgain": "Try Again", "more": "More", "actions": "Actions", "filter": "Filter", "reset": "Reset", "clear": "Clear", "error": "Error", "apply": "Apply", "select": "Select", "selectAll": "Select All", "deselectAll": "Deselect All", "all": "All", "none": "None", "showLess": "Show Less", "showMore": "Show More...", "project_description": "Bichon is an open-source project.", "view_on_github_button": "View on GitHub", "op_failed": "Operation failed", "na": "N/A", "retry": "Retry", "deleting": "Deleting..." }, "navigation": { "home": "Home", "settings": "Settings", "accounts": "Accounts", "dashboard": "Dashboard", "mailbox": "Mailbox", "oauth2": "OAuth2", "accessTokens": "Access Tokens", "apiDocs": "API Documentation", "general": "General", "auth": "Auth", "other": "Other", "users": "System Users" }, "auth": { "welcome": "Welcome to Bichon", "username": "Username", "password": "Password", "login": "Login", "loginFailed": "Login Failed", "invalidPassword": "Invalid password. Please try again.", "somethingWentWrong": "Something went wrong", "sessionExpired": "Session expired!", "sessionExpiredDesc": "Your session has ended due to inactivity. Please log in again to continue.", "logout": "Log out", "areYouSureYouWantToLogOut": "Are you sure you want to log out?", "youWillNeedToLogInAgain": "You will need to log in again to access your account." }, "errors": { "pageNotFound": "Oops! Page Not Found!", "pageNotFoundDesc": "It seems like the page you're looking for does not exist or might have been removed.", "somethingWentWrong": "Oops! Something went wrong :')", "somethingWentWrongDesc": "We apologize for the inconvenience. Please try again later.", "internalServerError": "Internal Server Error!", "contentNotModified": "Content not modified!", "networkError": "Network Error", "networkErrorDesc": "Unable to connect to the server. Please check your internet connection and try again.", "forbidden": "Forbidden", "forbiddenTitle": "Access Forbidden", "forbiddenDesc": "You don't have necessary permission to view this resource.", "unauthorized": "Unauthorized", "unauthorizedTitle": "Unauthorized Access", "unauthorizedDesc": "Please log in with the appropriate credentials to access this resource.", "maintenance": "Maintenance", "maintenanceTitle": "Website is under maintenance!", "maintenanceDesc": "The site is not available at the moment. We'll be back online shortly.", "learnMore": "Learn more" }, "dashboard": { "title": "Dashboard", "mailAccounts": "Mail Accounts", "connected": "Connected", "totalEmails": "Total Emails", "syncedLocally": "Synced locally", "totalEmailSize": "Total Email Size", "logicalVolume": "Logical volume", "localDataFiles": "Local Data Files", "actualDiskUsage": "Actual disk usage", "indexSize": "Index Size", "tantivyIndex": "Tantivy index", "dayTrend": "30-Day Trend", "attachments": "Attachments", "topLists": "Top Lists", "newEmails": "New Emails", "messageDistribution": "Message distribution", "attachmentRatio": "Attachment Ratio", "attachmentRatioDesc": "{{percent}}% of emails have attachments", "noEmailsSynced": "No emails synced yet", "withAttachments": "With Attachments", "noAttachments": "No Attachments", "top10Senders": "Top 10 Senders", "byMessageCount": "By message count", "sender": "Sender", "count": "Count", "top10LargestEmails": "Top 10 Largest Emails", "byMessageSize": "By message size", "subject": "Subject", "size": "Size", "noSubject": "(No Subject)", "top10Accounts": "Top 10 Accounts", "emails": "Emails", "account": "Account", "noRecentActivity": "No recent activity", "noSendersData": "No senders data", "noLargeEmails": "No large emails", "noAccountData": "No account data", "systemVersion": "System Version" }, "accounts": { "beforeRelativeValue": "Sync emails before {{value}} {{unit}} ago", "sinceRelativeValue": "Sync emails from the last", "syncBatchSize": "Sync batch size", "syncBatchSizeDescription": "Number of messages fetched per IMAP request", "incrementalSyncDescription": "How often incremental email synchronization is performed (in minutes)", "syncScopeDescription": "Choose which emails should be indexed and archived.", "syncScope": "Sync Strategy", "selectMode": "Select filter mode", "syncAll": "Sync All Emails", "sinceFixed": "Since Specific Date", "sinceRelative": "Sync Recent Emails Only", "beforeRelative": "Archive Old Emails Only", "duration": "Duration", "unit": "Unit", "accessControl": "Access Control", "owner": "Creator", "access_control": { "title": "Account Access Assignment", "description": "Assign roles and authorized users to {{email}}", "role_label": "Access Role", "role_placeholder": "Select a role", "role_loading": "Loading roles...", "user_label": "Select Authorized Users", "user_search_placeholder": "Search by username or email...", "user_empty": "No users found", "user_selected_count": "Selected: {{count}} user(s)", "buttons": { "cancel": "Cancel", "save": "Save Assignment" }, "validation": { "user_required": "Please select at least one user", "role_required": "Please select a role to assign" }, "toast": { "success_title": "Assignment Successful", "success_desc": "Permissions have been successfully assigned to {{email}}", "failed_title": "Assignment Failed" } }, "title": "Email Accounts", "description": "Manage and configure your email accounts.", "addImap": "Add IMAP", "addNoSync": "Add NoSync", "moreAccountTypes": "More account types", "noAccountConfigurations": "No Account Configurations", "noAccountConfigurationsDesc": "You haven't added any Account configurations yet. Add one to start using Account features.", "addConfiguration": "Add Configuration", "name": "Login Name", "email": "Email", "status": "Status", "type": "Type", "lastSync": "Last Sync", "actions": "Actions", "edit": "Edit", "delete": "Delete", "detail": "Detail", "syncFolders": "Sync Folders", "oauth2Tokens": "OAuth2 Tokens", "id": "ID", "enabled": "Enabled", "auth": "Auth", "incSync": "Inc Sync", "state": "State", "createdAt": "Created At", "updatedAt": "Updated At", "openMenu": "Open menu", "emailAccountRegistration": "Email Account Registration", "emailAccountRegistrationDesc": "Please provide your email address. In the next steps, you will configure the IMAP/SMTP details. Using this email address, we will attempt to automatically retrieve the SMTP/IMAP server addresses.", "emailAddress": "Email Address", "emailPlaceholder": "e.g john.doe@example.com", "namePlaceholder": "e.g john.doe", "optional": "Optional", "nameDescription": "IMAP Connection Username. Leave this field blank if you use your full email address as the connection username.", "emailCannotBeModified": "The email account address cannot be modified when editing.", "addAccount": "Add Account", "updateAccount": "Update Account", "accountUpdated": "Account Updated", "accountCreated": "Account Created", "accountUpdatedDesc": "Your account has been successfully updated.", "accountCreatedDesc": "Your account has been successfully created.", "accountUpdateFailed": "Account Update Failed", "accountCreationFailed": "Account Creation Failed", "updateFailed": "Update failed, please try again later", "creationFailed": "Creation failed, please try again later", "selectSyncFolders": "Select Sync Folders", "allMailFolderSelected": "Heads Up: \"All Mail\" Folder Selected", "accountSyncFoldersUpdated": "Account Sync Folders Updated", "accountSyncFoldersUpdateFailed": "Account Sync Folders Update Failed", "serverConfiguration": "Server Configuration (IMAP)", "syncFoldersTitle": "Sync Folders", "allMailFolderSelectedDesc": "Selecting folders with the \"All Mail\" attribute will likely lead to duplicating messages already synced from folders like Inbox and Sent. This may consume significantly more storage space.", "allMailSkipped": "Selected standard folders. 'All Mail' was skipped to avoid duplicates.", "selectAtLeastOneFolder": "Please select at least one folder", "chooseFoldersToSync": "Choose folders to sync for {{email}}, Newly added folders will begin downloading during the next sync cycle.", "accountDetails": "Account Details", "capabilities": "Capabilities", "folderLimit": "Folder Limit", "incrementalSyncInterval": "Incremental Sync Interval", "everyMinutes": "every {{minutes}} minutes", "foldersConfiguredForSync": "{{count}} folder(s) configured for sync", "foldersSelected": "{{count}} folder(s) selected", "imapHost": "IMAP Host", "imapHostPlaceholder": "e.g imap.example.com", "imapPort": "IMAP Port", "imapPortPlaceholder": "e.g 993", "imapEncryption": "IMAP Encryption", "selectEncryptionMethod": "Select an encryption method", "chooseEncryptionMethod": "Choose the encryption method for IMAP.", "imapAuthMethod": "IMAP Auth Method", "selectAuthMethod": "Select an authentication method", "chooseAuthMethod": "Choose the authentication method for IMAP.", "imapPassword": "IMAP Password", "leaveEmptyToKeepPassword": "Leave empty to keep current password", "enterPassword": "Enter your password", "leaveEmptyToKeepExisting": "Leave empty to keep the existing password, or enter a new password to update it.", "useProxy": "Use Proxy", "selectProxy": "Select a proxy", "incrementalSync": "Incremental Sync(minutes)", "incrementalSyncPlaceholder": "e.g 300", "enabledDescription": "Determines whether this account is active. If disabled, related syncs will not run.", "dateSince": "Date Since", "none": "None", "fixed": "Fixed", "relative": "Relative", "selectDate": "Select a date", "selectUnit": "Select a unit", "days": "Days", "months": "Months", "years": "Years", "enterValue": "Please enter a value", "mustBeAtLeast1": "Must be at least 1", "dateSelection": "Date Selection", "since": "since", "recent": "recent", "notAvailable": "n/a", "host": "host", "port": "port", "encryption": "encryption", "authType": "auth_type", "password": "password", "useProxyField": "use proxy", "clickSaveWhenDone": "Click save when you're done.", "step": "Step {{index}}", "goBack": "Go Back", "autoConfiguring": "Auto-configuring...", "continue": "Continue", "saveChanges": "Save changes", "submit": "Submit", "field": "Field", "value": "Value", "refreshToken": "Refresh Token", "accessTokenCopiedToClipboard": "Access token copied to clipboard", "refreshTokenCopiedToClipboard": "Refresh token copied to clipboard", "noOAuth2Tokens": "No OAuth2 Tokens", "theAccountHasNotCompletedTheAuthorizationProcess": "The account has not completed the authorization process. Please ", "clickHere": "click here", "toAuthorizeTheAccount": " to authorize the account.", "detailsOfTheOAuth2TokensForTheAccount": "Details of the OAuth2 tokens for the account.", "updateTheEmailAccountHere": "Update the email account here. ", "addNewEmailAccountHere": "Add new email account here. ", "thisAccountIsUsedForIdentificationPurposesOnly": "This account is used for identification purposes only and does not require syncing with an email server. It helps with importing email data.", "determinesWhetherThisAccountIsActiveNoSync": "Determines whether this account is active. If disabled, the account will not be able to import data.", "folderSync": { "noData": "No Data", "noFolders": "No folders to sync", "batches": "batches", "autoSelectDescendants": "Auto select descendants", "autoSelectParents": "Auto select parents", "expandAll": "Expand all", "collapseAll": "Collapse all", "loadingMailboxFolders": "Loading mailbox folders…" }, "viewDetails": "view details", "runningState": { "notStarted": "Not Started", "inProgress": "In Progress", "calculating": "Calculating...", "initialSync": "Initial Sync", "completed": "Completed", "duration": "Duration", "startTime": "Start Time:", "endTime": "End Time:", "syncProgress": "Sync Progress", "incrementalSync": "Incremental Sync", "syncInterval": "Sync Interval:", "everyMinutes": "Every {{minutes}} minutes", "errorLogs": "Error Logs", "noErrorLogs": "No error logs available.", "noActiveState": "No active state available", "accountNotStarted": "Account synchronization may not have started yet", "close": "Close" }, "steps": { "complete": "Complete", "emailAddress": "Email Address", "imap": "IMAP", "syncPreferences": "Sync Preferences", "summary": "Summary" }, "imapProxy": "Use a SOCKS5 proxy for IMAP connections.", "syncStartDateDescription": "Defines the sync start date — either specific or relative to now. Preceding emails are excluded, {{fixedPart}}.", "syncAfterDate": "syncs data after a set date", "syncRecentData": "shifts the sync date over time, syncing only recent data", "folderLimitDescription": "Limit the number of emails to sync per folder (minimum 100). Leave empty for no limit.", "folderLimitPlaceholder": "e.g. 1000", "imap": "IMAP", "minutes": "minutes", "accountHasBeenSuccessfully": "Account has been successfully {{action}}", "enableAccount": "Enable account", "disableAccount": "Disable account", "areYouSureYouWantTo": "Are you sure you want to {{action}} this account?", "enable": "Enable", "disable": "Disable", "thisWillPreventTheAccountFromBeingUsed": "This account will no longer sync data from the IMAP server, but existing data will still be accessible.", "disabled": "Disabled", "useDangerous": "Trust Any TLS Certificate", "useDangerousDescription": "Enable this option only if you are connecting to an IMAP server with a public or self-signed certificate that may not be recognized by your system. Using this setting bypasses standard certificate validation, which can expose you to man-in-the-middle attacks. Only enable if you understand the risks." }, "mailbox": { "deleteMailboxDialog": { "title": "Delete Mailbox Folder", "desc": "Are you sure you want to delete this mailbox folder? This action cannot be undone.", "warningTitle": "Warning", "warningDesc": "Deleting this folder will also permanently remove all archived emails and subfolders contained within it.", "confirm": "Delete Permanently", "successTitle": "Deleted successfully", "successDesc": "The mailbox folder and its contents have been successfully removed.", "errorTitle": "Delete failed" }, "title": "Mailbox", "folders": "Folders", "messages": "Messages", "noMessages": "No messages", "selectFolder": "Select a folder to view messages", "deleteDialog": { "title": "Delete Email", "desc": "Are you sure you want to delete {{countText}}? This action will delete the selected email(s) from local database. The email(s) will be permanently deleted and cannot be recovered.", "descCountSingle": "this email", "descCountMultiple": "these {{count}} emails", "warningTitle": "Warning!", "warningDesc": "Please be cautious before proceeding.", "confirm": "Delete", "successTitle": "Messages deleted successfully", "successDesc": "The messages have been deleted.", "errorTitle": "Failed to delete messages" }, "thread": { "title": "Thread ({{count}} {{messageLabel}})", "message": "message", "messages": "messages", "noSubject": "(No subject)", "invalidDate": "Invalid Date", "empty": "No messages in this thread.", "loadError": "Failed to load thread", "loadingMore": "Loading more...", "loadMore": "Load more" }, "bulkActions": { "ariaLabel": "Bulk actions for {{count}} selected {{emailLabel}}", "email": "email", "emails": "emails", "selected": "selected", "clearSelection": "Clear selection", "clearSelectionWithKey": "Clear selection ({{key}})", "delete": "Delete", "deleteTooltip": "Delete selected emails" } }, "search": { "size": "Size", "any": "Any", "tiny": "Tiny (<15 KB)", "small": "Small (<2 MB)", "medium": "Medium (2 - 10 MB)", "large": "Large (10 - 20 MB)", "huge": "Huge (≥20 MB)", "sort": "Sort", "sizeDescription": "The size refers to the total email size, including attachments.", "title": "Search", "searching": "Searching, please wait…", "noEmailsFound": "No emails found", "startSearching": "Start by entering a keyword, sender, or using advanced filters.", "adjustSearch": "Try adjusting your search criteria or clearing filters.", "tagFilter": "Tag Filter", "from": "From", "to": "To", "subject": "Subject", "date": "Date", "editTag": "Edit Tag", "keyword": "Keyword", "sender": "Sender", "recipient": "Recipient", "hasAttachment": "Has Attachment", "yes": "Yes", "no": "No", "dateRange": "Date Range", "startDate": "Start Date", "endDate": "End Date", "advancedFilters": "Advanced Filters", "searchArchivedEmails": "Search Archived Emails", "fullTextMultiAccount": "Full-text · Multi-account · Advanced filters", "account": "Account", "mailbox": "Mailbox", "selectAccount": "Select account", "selectMailbox": "Select mailbox", "noActiveEmailAccount": "No active email account.", "addEmailAccount": "Add Email Account", "noMailboxSelectAccount": "No mailbox. Please select an account first.", "searchInSubjectBody": "Search in subject, body, attachments...", "searchingButton": "Searching...", "searchButton": "Search", "advanced": "Advanced", "clear": "Clear", "since": "Since:", "before": "Before:", "selectDate": "Select a date", "pleaseSelectAtLeastOne": "Please select at least one search condition", "cc": "CC", "bcc": "BCC", "attachmentName": "Attachment Name", "messageId": "Message ID", "minSize": "Min Size", "maxSize": "Max Size", "senderRecipients": "Sender / Recipients", "attachmentsSize": "Attachments & Size", "minimumBytes": "Minimum", "maximumBytes": "Maximum", "originalMessageIdHeader": "Original email Message-ID header", "addTags": { "title": "Edit Tags", "none": "No tags added", "searchPlaceholder": "Search or create tag...", "createHint": "Create new tag: {{tag}}", "invalidTitle": "Invalid Tag", "updatedTitle": "Tags Updated", "updatedDesc": "Tags have been successfully updated", "updateFailedTitle": "Update Failed", "tryAgain": "Please try again later", "selectedCount": "{{count}} tags selected", "cancel": "Cancel", "save": "Save", "saving": "Saving..." }, "thread": { "title": "Thread · {{count}} messages", "error": "Failed to load thread", "empty": "No messages in this thread", "invalidDate": "Invalid date", "noSubject": "(No subject)", "loadingMore": "Loading...", "loadMore": "Load more" }, "bulkActions": { "ariaLabel": "{{count}} messages selected. Bulk actions toolbar", "delete": "Delete", "deleteDesc": "Delete selected messages", "selected": "{{count}} selected", "clear": "Clear selection" }, "delete": { "title": "Delete messages", "confirmPrefix": "Are you sure you want to delete", "countLabel": "{{count}} message", "confirmDetail": "This action cannot be undone.", "confirmButton": "Delete", "warningTitle": "Warning", "warningDesc": "Deleted messages will be permanently removed and cannot be recovered.", "successTitle": "Messages deleted", "successDesc": "The selected messages have been deleted successfully.", "errorTitle": "Delete failed" } }, "mail": { "emailViewer": "Email Viewer", "noMessageSelected": "No message selected", "account": "Account", "from": "From", "to": "To", "subject": "Subject", "date": "Date", "tags": "Tags", "noTagsYet": "No tags yet", "id": "ID", "cc": "CC", "bcc": "BCC", "attachments": "Attachments", "download": "Download", "delete": "Delete", "viewThread": "View Thread", "downloadStarted": "Download started", "downloadComplete": "Download complete", "downloadFailed": "Download failed", "failedToDownloadFile": "Failed to download file", "failedToLoadEmail": "Failed to load email message.", "isBeingDownloaded": "{{id}} is being downloaded", "downloaded": "{{id}} downloaded", "showLess": "show less", "showMore": "show more...", "onlyNonInlineAttachments": "Only non-inline attachments are shown here.", "noAttachments": "No attachments" }, "oauth2": { "title": "OAuth2", "addConfiguration": "Add Configuration", "id": "ID", "provider": "Provider", "clientId": "Client ID", "clientSecret": "Client Secret", "redirectUri": "Redirect URI", "scopes": "Scopes", "status": "Status", "enabled": "Enabled", "disabled": "Disabled", "edit": "Edit", "delete": "Delete", "enable": "Enable", "disable": "Disable", "noConfigurations": "No OAuth2 Configurations", "noConfigurationsDesc": "You haven't added any OAuth2 configurations yet. Add one to start using OAuth2 features.", "description": "Automatically handling access token retrieval, storage, and refreshing, ensuring a seamless and always-ready authentication experience.", "addNew": "Add New", "updateHere": "Update here.", "createNewHere": "Create new here.", "clickSaveWhenDone": "Click save when you're done.", "quickPresets": "Quick presets:", "gmail": "Gmail", "outlook": "Outlook", "whenDisabled": "When disabled: - New authorization flows will be rejected immediately - Existing access tokens and refresh tokens will be revoked within 1 minute - Users must re-authorize when re-enabled", "clientIdLabel": "Client Id:", "enterYourClientId": "Enter your client ID", "theUniqueIdentifierForYourApplication": "The unique identifier for your application, provided by the OAuth provider.", "clientSecretLabel": "Client Secret:", "leaveEmptyToKeepExistingSecret": "Leave empty to keep existing secret", "enterYourClientSecret": "Enter your client secret", "leaveEmptyToKeepTheExistingSecret": "Leave empty to keep the existing secret. Only enter a new value if you want to change it.", "aSecretKeyProvidedByTheOAuthProvider": "A secret key provided by the OAuth provider to authenticate your application.", "authUrlLabel": "Auth Url:", "enterTheAuthorizationUrl": "Enter the authorization URL", "theUrlWhereUsersWillBeRedirected": "The URL where users will be redirected to authorize your application.", "tokenUrlLabel": "Token Url:", "enterTheTokenUrl": "Enter the token URL", "theUrlUsedToExchange": "The URL used to exchange the authorization code for an access token.", "redirectUrlLabel": "Redirect Url:", "enterYourRedirectUrl": "Enter your redirect URL", "theRedirectUrlAfterAuthorization": "The redirect URL after authorization. It must match the one registered with the OAuth provider. Use the format http://[host]:[port]/oauth2/callback (or https://), where [host] and [port] match your RustMailer deployment. The path /oauth2/callback is fixed.", "scope": "Scope:", "enterTheScopeHere": "Enter the scope here.", "addScope": "Add Scope", "key": "Key:", "enterTheKeyHere": "Enter the key here.", "value": "Value:", "enterTheValueHere": "Enter the value here.", "addExtraParams": "Add Extra Params", "useProxyOptional": "Use Proxy (optional):", "selectAProxy": "Select a proxy", "noProxyAvailable": "No proxy available", "useSocks5ProxyForOAuthRequests": "Use SOCKS5 proxy for OAuth requests when direct access is blocked.", "descriptionLabel": "Description:", "describeThePurposeOfTheOauth2Application": "Describe the purpose of the oauth2 application", "optional": "Optional", "saving": "Saving...", "creating": "Creating...", "saveChanges": "Save changes", "save": "Save", "updated": "Updated", "created": "Created", "yourOAuth2ApplicationHasBeenSuccessfully": "Your OAuth2 application has been successfully {{action}}.", "updateFailed": "Update Failed", "creationFailed": "Creation Failed", "updateOrCreationFailed": "{{action}} failed, please try again later", "clientSecretIsRequired": "Client Secret is required", "clientSecretCannotBeEmpty": "Client Secret cannot be empty", "keyIsRequired": "Key is required", "keyCannotBeEmpty": "Key cannot be empty", "valueIsRequired": "Value is required", "valueCannotBeEmpty": "Value cannot be empty", "descriptionMustNotExceed255Characters": "Description must not exceed 255 characters.", "clientIdIsRequired": "Client ID is required", "clientIdCannotBeEmpty": "Client ID cannot be empty", "authorizationUrlIsRequired": "Authorization URL is required", "authorizationUrlCannotBeEmpty": "Authorization URL cannot be empty", "invalidAuthorizationUrlFormat": "Invalid Authorization URL format", "tokenUrlIsRequired": "Token URL is required", "tokenUrlCannotBeEmpty": "Token URL cannot be empty", "invalidTokenUrlFormat": "Invalid Token URL format", "redirectUriIsRequired": "Redirect URI is required", "redirectUriCannotBeEmpty": "Redirect URI cannot be empty", "invalidRedirectUriFormat": "Invalid Redirect URI format", "authorizeEmailAccount": "Authorize Email Account", "authorizeAnEmailAccountToStartTheOAuth2AuthorizationProcess": "Authorize an email account to start the OAuth2 authorization process.", "loadingAccounts": "Loading Accounts...", "selectAnAccount": "Select an account", "noEmailAccountsRegistered": "No email accounts registered. Please create one.", "pleaseCreateOne": "Please create one.", "createAccount": "Create Account", "authorize": "Authorize", "getAuthorizeUrlFailed": "Get Authorize Url Failed", "getAuthorizeUrlFailedDesc": "get authorize url failed, please try again later", "oauth2ClientUpdated": "OAuth2 client Updated", "oauth2ClientHasBeenSuccessfully": "OAuth2 client has been successfully {{action}}.", "statusUpdateFailed": "Status update failed, please try again later", "disableOAuth2Client": "Disable OAuth2 Client", "enableOAuth2Client": "Enable OAuth2 Client", "areYouSureYouWantTo": "Are you sure you want to {{action}} this OAuth2 client?", "thisWillPreventTheOAuth2ClientFromBeingUsed": "This will prevent the OAuth2 client from being used.", "deleteToken": "Delete Token", "areYouSureYouWantToDelete": "Are you sure you want to delete", "thisActionWillPermanentlyRemoveTheOauth2Record": "This action will permanently remove the oauth2 record from the system. This cannot be undone.", "enterIdToConfirmDeletion": "Enter id to confirm deletion.", "warning": "Warning!", "pleaseBeCareful": "Please be carefull, this operation can not be rolled back.", "deleteSuccess": "Delete Success", "yourOAuth2ApplicationHasBeenSuccessfullyDeleted": "Your OAuth2 application has been successfully deleted.", "oauth2DeleteFailed": "OAuth2 delete Failed", "deleteFailed": "Delete failed, please try again later", "actions": { "openMenu": "Open menu", "edit": "Edit", "authorize": "Authorize", "delete": "Delete" }, "authFailed": "OAuth2 Authentication Failed", "error": "Error", "unknownError": "An unknown error occurred.", "tryAgain": "Try Again", "goHome": "Go Home", "authSuccess": "OAuth2 Authentication Successful", "success": "Success", "successMessage": "Your email account has been successfully authenticated via OAuth2. The Access Token has been saved by the system and will be automatically updated as needed.", "goToAccounts": "Go to Accounts", "authAtatus": "OAuth2 Authentication Status", "information": "Information", "noStatus": "This page displays the result of your OAuth2 authentication. Currently, no specific status is available. Please try again if needed.", "backToLogin": "Back to Login" }, "accessTokens": { "title": "Access Tokens", "name": "Name", "accounts": "Accounts", "token": "Token", "createdAt": "Created At", "expiresAt": "Expires At", "edit": "Edit", "delete": "Delete", "create": "Create", "noTokens": "No Access Tokens", "noTokensDesc": "You haven't created any access tokens yet. Create one to start using API features.", "description": "Manage your access tokens, their access controls, IP whitelists, and rate-limiting settings here.", "editToken": "Edit Token", "addNew": "Add New", "updateTheAccessTokenHere": "Update the access token here.", "createNewAccessTokenHere": "Create new access token here.", "selectAccounts": "Select accounts", "selectMultipleAccountsForTheAccessToken": "Select multiple accounts for the access token's authorization scope.", "enterOneIpAddressPerLine": "Enter one IP address per line, e.g.:\n192.168.1.1\n192.168.1.2", "aListOfIpAddressesAllowed": "A list of IP addresses allowed to access the resource. Enter one IP address per line. (Optional)", "enterQuota": "Enter quota, e.g., 100", "theMaximumNumberOfRequestsAllowed": "The maximum number of requests allowed within the interval. (Optional)", "enterIntervalInSeconds": "Enter interval in seconds, e.g., 60", "theTimeWindowForTheRateLimit": "The time window (in seconds) for the rate limit. (Optional)", "describeThePurposeOfTheAccessToken": "Describe the purpose of the access token", "updating": "Updating...", "saving": "Saving...", "creating": "Creating...", "saveChanges": "Save changes", "save": "Save", "updated": "Updated", "created": "Created", "yourAccessTokenHasBeenSuccessfully": "Your access token has been successfully {{action}}.", "updateFailed": "Update Failed", "creationFailed": "Creation Failed", "updateOrCreationFailed": "{{action}} failed, please try again later", "quotaMustBeAPositiveInteger": "Quota must be a positive integer.", "intervalMustBeAPositiveInteger": "Interval must be a positive integer.", "invalidIpAddressesFound": "Invalid IP addresses found. Please enter valid IPv4 or IPv6 addresses.", "atLeastOneAccountIsRequired": "At least one account is required.", "descriptionMustNotExceed255Characters": "Description must not exceed 255 characters.", "notUsedYet": "Not used yet", "theListOfAccountsThatCanBeQueried": "The list of accounts that can be queried using an access token.", "accountId": "Account ID", "filterByEmailAddressOrAccountId": "Filter by email address or account ID...", "aclRulesForAccessTokens": "ACL rules for access tokens include IP whitelist verification and rate limit enforcement.", "actions": { "openMenu": "Open menu", "edit": "Edit", "delete": "Delete" }, "quota": "Quota", "interval": "Interval" }, "settings": { "appearance": { "title": "Appearance", "field": { "language": "Language", "theme": "Interface Theme" }, "description": { "language": "Select the language used in the Web UI.", "theme": "Choose between light or dark mode for the interface." }, "placeholder": { "select_language": "Select language" }, "command": { "search": "Search language...", "no_results": "No language found." }, "theme": { "light": "Light", "dark": "Dark" }, "button": { "update": "Update preferences" }, "validation": { "language": { "required": "Please select a language." }, "theme": { "required": "Please select a theme." } } }, "title": "Settings", "general": "General", "proxy": "Proxy", "name": "Name", "host": "Host", "port": "Port", "username": "Username", "password": "Password", "type": "Type", "actions": "Actions", "edit": "Edit", "delete": "Delete", "add": "Add", "noProxies": "No Proxies", "noProxiesDesc": "You haven't added any proxy configurations yet. Add one to start using proxy features.", "root": "Root", "rootTitle": "Root", "rootDesc": "Manage root access credentials including token and password.", "rootAccessManagement": "Root Access Management", "manageRootTokenAndPassword": "Manage root token and password securely.", "resetRootToken": "Reset Root Token", "generateNewToken": "Generate new token, old one expires immediately.", "reset": "Reset", "resetRootPassword": "Reset Root Password", "changePasswordForFutureLogins": "Change password for future logins.", "youAreAboutToResetTheRootToken": "You are about to reset the root token. This action cannot be undone.", "confirmReset": "Confirm Reset", "youAreAboutToResetTheRootPassword": "You are about to reset the root password. Make sure to store it securely.", "enterNewRootPassword": "Enter new root password", "theRootTokenHasBeenReset": "The root token has been reset", "yourLoginInformationHasBeenUpdated": "Your login information has been updated. No need to log in again.", "invalidPassword": "Invalid password", "rootPasswordMustBeAtLeast6Characters": "The root password must be at least 6 characters long.", "theRootPasswordHasBeenReset": "The root password has been reset", "useNewPasswordForNextLogin": "Use the new password for your next login.", "failedToCopyText": "Failed to copy text", "filterProxy": "Filter Proxy...", "filterOauth2": "Filter oauth2...", "filterAccount": "Filter account...", "filterAccessToken": "Filter access token...", "selectAll": "Select all", "theme": "Theme", "id": "Id", "url": "Url", "createdAt": "Created At", "updatedAt": "Updated At", "enabled": "Enabled", "useProxy": "Use Proxy", "authUrl": "Auth Url", "tokenUrl": "Token Url", "description": "Description", "token": "Token", "accounts": "Accounts", "acl": "Acl", "lastAccess": "Last Access", "enterProxyIdToConfirmDeletion": "Enter Proxy Id to confirm deletion.", "updateTheProxyHere": "Update the Proxy here. ", "addNewProxyHere": "Add new Proxy here. ", "pleaseUseAnIpAddressForBetterReliability": "Please use an IP address (e.g., 127.0.0.1) rather than a hostname or domain for better reliability.", "adding": "Adding...", "yourProxyHasBeenSuccessfully": "Your Proxy has been successfully {{action}}.", "proxyUpdateOrAddFailed": "{{action}} failed, please try again later", "sidebar": { "profile": "Profile", "apiTokens": "API Tokens", "proxy": "Network Proxy", "configurations": "System Configurations" }, "profile": { "loadError": "Failed to load user information.", "uploadTitle": "Upload avatar", "maxSize": "Up to {{size}}", "avatarAlt": "Avatar", "removeAvatar": "Remove avatar", "uploadError": "File upload error(s)", "field": { "username": "Username", "email": "Email", "password": "Password" }, "placeholder": { "password_keep": "Leave blank to keep current password" }, "button": { "update_profile": "Update profile", "permissions": "Permissions", "view_global_permissions": "View global permissions" }, "section": { "roles": "Roles", "accounts": "{{count}} linked accounts" }, "account": { "id": "Account ID: {{id}}" }, "toast": { "updated": "Profile updated successfully", "update_failed": "Failed to update profile" }, "validation": { "username": { "required": "Username is required", "min": "Username must be at least 5 characters", "max": "Username must be at most 32 characters" }, "email": { "required": "Email is required", "invalid": "Please enter a valid email address" }, "password": { "min": "Password must be at least 8 characters", "max": "Password must be at most 256 characters" } } } }, "apiDocs": { "choosePreferredType": "Choose your preferred API documentation type", "swaggerUI": "Swagger UI", "reDoc": "ReDoc", "openAPIExplorer": "OpenAPI Explorer", "scalar": "Scalar", "downloadSpecYAML": "Download Spec YAML" }, "dialogs": { "confirmDelete": "Confirm Delete", "confirmDeleteDesc": "Are you sure you want to delete this item? This action cannot be undone.", "deleteSuccess": "Deleted successfully", "deleteFailed": "Failed to delete", "saveSuccess": "Saved successfully", "saveFailed": "Failed to save", "createSuccess": "Created successfully", "createFailed": "Failed to create", "updateSuccess": "Updated successfully", "updateFailed": "Failed to update", "continue": "Continue", "deleting": "Deleting...", "accountDeleted": "Account Deleted", "accountDeletedDesc": "Your account has been successfully deleted.", "accountDeleteFailed": "Account delete Failed", "deleteAccountPermanently": "Delete Account Permanently", "youAreDeleting": "You are deleting {{email}}. This will permanently remove:", "accountCredentials": "Account credentials and settings", "localCachedMetadata": "Local cached metadata and sync status", "imapSyncData": "IMAP synchronization data", "oauthTokens": "OAuth tokens and API credentials", "typeEmailToConfirm": "Type the account email to confirm:", "typeToConfirm": "Type \"{{email}}\" to confirm", "cannotBeUndone": "This action cannot be undone!", "allResourcesErased": "All related resources will be permanently erased.", "permanentlyDeleteAccount": "Permanently Delete Account" }, "command": { "typeCommandOrSearch": "Type a command or search...", "noResultsFound": "No results found.", "theme": "Theme", "light": "Light", "dark": "Dark" }, "validation": { "required": "This field is required", "invalidEmail": "Invalid email address", "invalidUrl": "Invalid URL", "passwordMinLength": "Password must be at least {{min}} characters long", "pleaseEnterPassword": "Please enter your password", "passwordRequired": "Password is required when auth method is Password", "emailRequired": "Email is required", "imapHostRequired": "IMAP host is required", "imapHostCannotBeEmpty": "IMAP host cannot be empty", "imapPortMustBePositive": "IMAP port must be a positive integer", "imapPortMustBeLessThan65536": "IMAP port must be less than 65536", "folderLimitMustBeNumber": "Folder limit must be a number", "folderLimitMustBeAtLeast100": "Folder limit must be at least 100", "incrementalSyncMustBeNumber": "Incremental sync interval must be a number", "incrementalSyncMustBeAtLeast10": "Incremental sync interval must be at least 10 minutes", "pleaseEnterUsernameOrEmail": "Please enter your username or email", "singleRequestBatchSizeMustBeNumber": "Batch size must be a number", "singleRequestBatchSizeTooSmall": "Batch size must be at least 10", "singleRequestBatchSizeTooLarge": "Batch size must be at most 200" }, "table": { "noResults": "No results found", "loading": "Loading...", "page": "Page", "of": "of", "rowsPerPage": "Rows per page", "showing": "Showing", "to": "to", "results": "results", "asc": "Asc", "desc": "Desc", "hide": "Hide", "edit": "Edit", "delete": "Delete", "pagination": { "selected": "Selected {{selected}} / {{total}} row(s).", "fixed_page_size": "{{size}} rows per page.", "rows_per_page": "Rows per page", "page_info": "Page {{page}} of {{total}}", "first": "Go to first page", "previous": "Previous page", "next": "Next page", "last": "Go to last page" } }, "proxyDelete": { "title": "Delete Proxy", "successTitle": "Delete Success", "successDesc": "Proxy has been successfully deleted.", "close": "Close", "failedTitle": "Proxy delete Failed", "failedDesc": "Delete failed, please try again later", "tryAgain": "Try again", "confirmText": "Are you sure you want to delete", "permanent": "This action will permanently remove the Proxy from the system. This cannot be undone.", "proxyIdLabel": "Proxy Id:", "proxyIdPlaceholder": "Enter Proxy Id to confirm deletion.", "warningTitle": "Warning!", "warningDesc": "Please be careful, this operation cannot be rolled back.", "deleteBtn": "Delete" }, "systemConfig": { "pageTitle": "System-level Configurations", "pageDescription": "These parameters are initialized via CLI flags or Environment Variables. They are currently read-only to ensure environment consistency.", "status": { "enabled": "Enabled", "disabled": "Disabled", "configured": "Configured", "missing": "Missing", "auto": "Auto", "notSet": "Not set" }, "sections": { "network": { "title": "Network", "desc": "HTTP and public access" }, "cors": { "title": "CORS", "desc": "Cross-origin access rules" }, "logging": { "title": "Logging", "desc": "Log output behavior" }, "storage": { "title": "Storage & Cache", "desc": "Database paths and limits" }, "security": { "title": "Security", "desc": "Authentication & encryption" }, "performance": { "title": "Performance", "desc": "Concurrency & compression" } } }, "apiTokens": { "page": { "loadError": "Failed to load API tokens.", "emptyTitle": "No API tokens", "emptyDescription": "You haven’t created any API tokens yet. Click below to create one.", "addBtn": "Add Token" }, "list": { "unnamedToken": "Unnamed Token", "statusActive": "Active", "statusExpired": "Expired", "neverExpires": "Never expires", "expiresOnShort": "Expires on {{date}}", "tokenLabel": "Token", "createdLabel": "Created", "lastUsedLabel": "Last used", "expiresOnLabel": "Expires on", "neverUsed": "Never", "neverLabel": "Never", "deleteBtn": "Delete token" }, "dialog": { "createTitle": "Create Access Token", "editTitle": "Edit Access Token", "description": "Click save when you are done.", "save": "Save", "saveChanges": "Save Changes" }, "deleteDialog": { "title": "Delete access token?", "description": "This action cannot be undone. Any application using this token will immediately lose access.", "cancel": "Cancel", "confirm": "Delete", "deleting": "Deleting..." }, "form": { "nameLabel": "Name", "namePlaceholder": "Give this access token a short name", "nameDescription": "Optional · Max 32 characters", "expirationLabel": "Expiration", "expirationPlaceholder": "Select expiration", "expirationDescription": "Tokens will automatically expire after the selected time.", "never": "Never", "1day": "1 day", "7days": "7 days", "30days": "30 days", "errorMax": "Max 32 characters", "errorNumber": "Must be a number", "errorInt": "Must be an integer", "errorPositive": "Must be greater than 0" }, "notifications": { "createSuccess": "Access Token Created", "createSuccessDesc": "The access token has been created successfully.", "updateSuccess": "Access Token Updated", "updateSuccessDesc": "The access token has been updated successfully.", "createFailed": "Creation Failed", "updateFailed": "Update Failed", "deleteSuccess": "Access token deleted successfully", "deleteFailed": "Failed to delete access token", "copied": "Copied to clipboard", "genericError": "Operation failed. Please try again.", "close": "Close", "tryAgain": "Try again" } }, "permission": { "scope": { "global": "Global", "account": "Account #{{id}}" }, "dialog": { "global_title": "Global Permissions", "account_title": "Account Permissions", "global_description": "System-wide permissions granted to this user.", "account_description": "Permissions scoped to the selected account." }, "category": { "system_identity": "System & Identity", "global_data": "Global Data (Admin)", "account": "Account Permissions" }, "system": { "access": "Basic System Access", "root": "Root System Control" }, "user": { "manage": "Manage All Users", "view": "List Basic Usernames" }, "token": { "manage": "Manage Access Tokens" }, "account": { "create": "Create Email Accounts", "manage": "Manage Assigned Accounts", "manage_all": "Manage All Account Configs", "read_details": "Read Assigned Account Details" }, "data": { "read": "Read Assigned Email Data", "read_all": "Read All Email Data", "manage": "Manage Assigned Email Metadata", "manage_all": "Manage All Email Metadata", "raw_download": "Download Assigned Raw Emails", "raw_download_all": "Download All Raw Emails", "delete": "Delete Assigned Emails", "delete_all": "Delete Emails from All Accounts", "export_batch": "Batch Export Assigned Data", "export_batch_all": "Batch Export All Data", "import_batch": "Batch Import Email Data" } }, "users": { "columns": { "id": "ID", "avatar": "Avatar", "username": "Username", "email": "Email Address", "roles": "Roles", "created_at": "Created At", "updated_at": "Updated At", "actions": "Actions" }, "buttons": { "add": "Add User", "add_new": "Add New User" }, "empty": { "title": "No users found", "description": "Click the button below to start adding your first user." }, "nav": { "users": "Users", "roles": "Roles", "api_tokens": "API Tokens" }, "api_tokens": { "empty": { "title": "No API tokens found", "description": "No API tokens have been generated in the system yet" }, "button": { "generate": "Generate New Token" }, "toolbar": { "search_placeholder": "Search by name, owner or token..." }, "table": { "name": "Name", "type": "Type", "last_used": "Last Used", "expires_at": "Expires At", "owner": "Owner", "created": "Created", "api_key": "API Key", "web_ui": "Web UI", "never": "Never", "permanent": "Permanent", "expired": "Expired", "unnamed": "Unnamed Token" }, "unnamed": "Unnamed Token", "delete": { "title": "Delete API Token", "desc": "You are about to permanently delete this API token", "prefix": "Token Prefix", "irreversible": "This action cannot be undone. Any applications using this token will immediately lose access.", "confirm_label": "To confirm, please type {{word}} below:", "confirm_placeholder": "Type \"{{word}}\" to confirm", "warning_title": "Warning", "warning_desc": "Any scripts, services, or integrations using this token will fail. Please ensure you have updated your systems before proceeding.", "confirm_button": "Delete Token", "deleting": "Deleting..." }, "toast": { "deleted_title": "API Token Deleted", "deleted_desc": "The token \"{{name}}\" has been successfully removed.", "delete_failed_title": "Delete Failed", "delete_failed": "Failed to delete the token, please try again." } }, "tokens": { "schema": { "name_max": "Max 32 characters", "expire_number": "Must be a number", "expire_int": "Must be an integer", "expire_positive": "Must be greater than 0" }, "toast": { "update_success_title": "Access Token Updated", "update_success_desc": "Access token has been successfully updated.", "create_success_title": "Access Token Created", "create_success_desc": "Access token has been successfully created.", "update_failed_title": "Update Failed", "create_failed_title": "Creation Failed" }, "error": { "fallback": "Operation failed, please try again later." }, "dialog": { "edit_title": "Edit Access Token", "create_title": "Create Access Token", "description": "Click save when you're done." }, "fields": { "name_label": "Name", "name_placeholder": "Give this access token a short name", "name_hint": "Optional · Max 32 characters", "expire_label": "Expiration", "expire_placeholder": "Select expiration", "expire_hint": "The token will automatically expire after the selected time." }, "expire_options": { "never": "Never expires", "1_day": "1 Day", "7_days": "7 Days", "30_days": "30 Days" } }, "tokens_action": { "dialog": { "title": "API Tokens", "description": "Manage API tokens for this user." }, "empty": { "title": "No API Tokens", "description": "This user currently has no API tokens." }, "buttons": { "add": "Add Token" }, "list": { "unnamed_token": "Unnamed Token", "status_expired": "Expired", "status_active": "Active", "expires_on_brief": "Expires on {{date}}", "never_expires": "Never expires", "label_token": "Token", "label_created": "Created At", "label_last_used": "Last Used", "label_expires_at": "Expires At", "never": "Never", "button_delete": "Delete Token" }, "delete_dialog": { "title": "Delete Access Token?", "description": "This action cannot be undone." } }, "actions": { "schema": { "account_required": "Please select an account", "role_required": "Please select a role", "username_required": "Username is required", "username_min": "Username must be at least 3 characters", "username_max": "Username cannot exceed 32 characters", "email_required": "Email address is required", "email_invalid": "Please enter a valid email address", "global_role_required": "Assign at least one global role to this user", "description_max": "Description cannot exceed 256 characters", "ip_invalid": "Invalid IP address detected", "password_required": "Password is required", "password_min": "Password must be at least 8 characters", "password_max": "Password cannot exceed 256 characters" }, "toast": { "updated": "User updated", "created": "User created" }, "dialog": { "edit_title": "Edit User: {{name}}", "create_title": "Create New User", "subtitle": "Configure identity, access levels, and security policies." }, "tabs": { "general": "General", "permissions": "Account Permissions", "security": "Security & ACL" }, "sections": { "basic": "Basic Identity", "global": "Global Permissions", "mail_access": "Mail Access Control", "mail_access_subtitle": "Define which mail accounts this user can manage.", "policy": "Policy Toggles" }, "fields": { "username": "Username", "username_hint": "Unique identifier for system login.", "email": "Email Address", "email_hint": "Primary contact and notification address.", "password": "Password", "password_placeholder_create": "At least 8 characters", "password_placeholder_edit": "Leave blank to keep current password", "password_hint_create": "Secure password for initial user setup.", "password_hint_edit": "Only enter a new password if you wish to change it.", "global_roles_hint": "Assign high-level system permissions.", "description": "Description (Optional)", "description_placeholder": "Add some notes about this user...", "description_hint": "Internal notes (max 256 characters).", "select_account": "Select Account", "assign_role": "Assign Role", "ip_whitelist": "IP Whitelist", "ip_whitelist_hint": "Restrict login to these IPs (one per line).", "rate_quota": "Rate Quota", "burst_interval": "Burst Interval (sec)" }, "buttons": { "add_account": "Add Account", "update": "Update User", "create": "Create User" }, "states": { "full_access": "Full Access Mode", "full_access_desc": "System administrators have inherent access to all accounts.", "no_accounts": "No specific accounts assigned.", "security_disabled": "Security policies are currently disabled." }, "api_tokens": "API Tokens", "placeholder": { "filter": "Search users..." }, "delete": { "title": "Delete User", "confirm_msg": "You are about to permanently delete user {{name}} (ID: {{id}}).", "irreversible": "This action cannot be undone.", "input_label": "To confirm, please type the User ID below:", "placeholder": "Type \"{{id}}\" to confirm", "alert_title": "Warning: Permanent action.", "alert_desc": "Once deleted, the user and all associated data will be wiped.", "button_confirm": "Delete User", "button_deleting": "Deleting...", "toast": { "success_title": "User Deleted", "success_desc": "User \"{{name}}\" has been successfully removed.", "failed_title": "Delete Failed", "failed_fallback": "Failed to delete user." } } } }, "roles": { "title": { "create": "Create New Role", "edit": "Edit Role: {{name}}" }, "description_hint": "Define access scope and functional permissions.", "form": { "name_label": "Role Name", "type_label": "Role Type", "desc_label": "Description", "matrix_label": "{{type}} Permission Matrix", "builtin_badge": "Built-in Role", "builtin_desc": "This role is predefined and read-only." }, "types": { "Global": "Global", "Account": "Account" }, "categories": { "identity": "Identity & Management", "global_data": "Global Data Access", "account_resource": "Account Resource Access" }, "actions": { "cancel": "Cancel", "submit_create": "Create Role", "submit_update": "Update Role", "success_create": "Role created successfully", "success_update": "Role updated successfully", "failed": "Operation failed", "close": "Close", "retry": "Retry", "add": "Add Role" }, "validation": { "name_required": "Role name is required", "perm_required": "Select at least one permission" }, "columns": { "id": "ID", "name": "Name", "role_type": "Role Type", "permissions": "Permissions", "created_at": "Created At", "updated_at": "Updated At" }, "placeholder": { "filter": "Search roles..." }, "delete": { "dialog_title": "Delete User Role", "warning_text": "You are about to permanently delete role {{name}} (ID: {{id}}).", "irreversible": "This action cannot be undone.", "confirm_label": "Please type the role ID to confirm:", "placeholder": "Type \"{{id}}\" to confirm", "alert_title": "Warning: Permanent action.", "alert_desc": "Deleting this role will remove it from all assigned users.", "confirm_btn": "Delete Role", "deleting": "Deleting...", "success_title": "Role Deleted", "success_desc": "Role \"{{name}}\" has been successfully removed.", "error_title": "Delete Failed", "error_fallback": "Could not delete the role." }, "details": { "title": "Role Permissions: {{name}}", "unknown": "Unknown Role", "role_badge": "{{type}} Role", "desc_global": "Global management and system-level access.", "desc_account": "Access and data operations for single accounts.", "close_btn": "Close Details", "view_permissions": "Permission Details" }, "empty": { "title": "No Roles Found", "desc": "You haven't created any custom roles yet." } }, "profile": { "avatar_alt": "Avatar", "menu": { "profile": "Profile", "settings": "Settings", "sign_out": "Sign out" } }, "sign_out": { "title": "Sign out", "desc": "Are you sure you want to sign out? You will need to sign in again to access your account.", "confirm": "Sign out" }, "restore_message": { "title": "Restore Single Message", "bulkTitle": "Bulk Restore Messages", "bulkWarning": "Note: Messages will be restored to their original storage folders.", "accountsInvolved": "Accounts involved", "summary": "Restoration Details", "messages": "messages", "desc": "This action will re-upload selected messages from Bichon and restore them to their corresponding mailboxes on the IMAP server.", "confirm": "Restore Now", "restore_to_imap": "Restore Message", "success": "Messages Restored", "successDesc": "The selected messages have been successfully restored to the IMAP server.", "failed": "Restore Failed", "failedTitle": "Failed to Restore" }, "time": { "label": "Time", "since": "Since", "before": "Before", "recent_range": "Recent range (since...)", "historical": "Historical range (before...)", "absolute_range": "Absolute date range", "last_day": "Last 1 day", "last_days": "Last {{count}} days", "last_months": "Last {{count}} months", "over_years_ago": "{{count}} {{unit}} ago", "year": "year", "years": "years", "recent_prefix": "Recent:", "days_ago_to_now": "days ago to now", "apply": "Apply", "start_date": "Start date", "end_date": "End date", "clear_filters": "Clear time filters", "format": "yyyy-MM-dd" }, "tag": { "label": "Tags", "search_placeholder": "Search tags...", "clear_all": "Clear all tags", "no_tags_found": "No tags found" }, "search_accounts": { "label": "Mail accounts", "search_placeholder": "Search mail accounts...", "clear_accounts": "Clear selected accounts", "no_accounts_found": "No accounts found" }, "search_mailbox": { "label": "Mailboxes", "search_placeholder": "Search mailboxes", "clear_mailboxes": "Clear selected mailboxes", "select_account_first": "Please select an account first", "no_mailbox_found": "No mailbox found" }, "search_contacts": { "label": "Contacts", "label_with_count": "Contacts ({{count}})", "any": "Any", "search_placeholder": "Search {{field}}...", "reset_all": "Reset all contacts", "no_contact_found": "No contacts found", "loading": "Loading...", "showing_limit": "Showing first 100 results • Total {{total}}" }, "search_more": { "trigger_label": "Advanced", "title": "Advanced filters", "reset": "Reset", "has_attachment": "Has attachment", "attachment_name_label": "Attachment name", "attachment_name_placeholder": "e.g. invoice.pdf", "message_size_label": "Message size", "message_id_label": "Original Message-ID", "message_id_description": "Search by Message-ID header", "apply": "Apply filters", "size_presets": { "any": "Any size", "tiny": "Tiny (< 15 KB)", "small": "Small (< 2 MB)", "medium": "Medium (2 – 10 MB)", "large": "Large (10 – 20 MB)", "huge": "Huge (> 20 MB)" } }, "search_view": { "button_label": "View", "menu_title": "Column settings" }, "search_reset": { "label": "Reset", "tooltip": "Clear all filters" }, "search_input": { "placeholder": "Search emails... (Regex supported)", "button": "Search", "recent_title": "Recent searches", "clear_history": "Clear history", "no_history": "No search history", "hint": "Default scope: subject, body and attachment names" } }