Files
Oxicloud/frontend/static/locales/en.json
T

1828 lines
75 KiB
JSON
Raw Normal View History

2026-06-17 17:06:30 -06:00
{
2026-06-17 22:52:06 -06:00
"server": {
"magic_link": {
"page": {
"expired_title": "This sign-in link is no longer valid",
"expired_body": "The link may have expired or already been used. We can send you a fresh one — it'll arrive in your inbox in a few seconds.",
"resend_to": "Send a fresh link to {{email}}",
"generic_unavailable": "This sign-in link is no longer valid. It may have already been used or expired. Request a fresh link from the login page.",
"service_unavailable": "Magic-link sign-in is not enabled on this server.",
"internal_error": "Something went wrong while signing you in. Please try again.",
"resend_failure": "Something went wrong while sending the link. Please try again.",
"cross_browser_title": "Continue signing in on this device?",
"cross_browser_body": "You opened this sign-in link in a different browser or device than the one where you requested it.",
"cross_browser_warning": "If you requested this link, it's safe to continue. If you didn't, close this page — clicking Continue would sign someone else into your account.",
"cross_browser_continue": "Continue and sign in",
"resend_confirmation_title": "Check your inbox",
"resend_confirmation_body": "If the sign-in link belonged to an active account, a fresh link has just been sent. Please check your inbox.",
"return_link": "Return to OxiCloud"
},
"email": {
"invitation": {
"subject": "{{inviter}} shared a {{kind}} with you on OxiCloud",
"body": "{{inviter_full}} shared a {{kind}} with you on OxiCloud.\n\nOpen it by clicking the link below:\n{{link}}\n\nThe link works once and expires in {{ttl_hours}} hours.\nIf you didn't expect this invitation, you can safely ignore this message.\n\n— OxiCloud"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"login": {
"subject": "Sign in to OxiCloud",
"body": "Hello,\n\nUse the link below to sign in to OxiCloud. The link works once and expires in {{ttl_minutes}} minutes. Open it on the same device where you requested it.\n\n{{link}}\n\nIf you didn't request this sign-in link, you can safely ignore this message — no further action is needed.\n\n— OxiCloud"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"kind_file": "file",
"kind_folder": "folder",
"english_fallback_divider": "--- English version below ---"
}
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"notification": {
"share": {
"subject": "{{inviter}} shared a {{kind}} with you on OxiCloud",
"body": "{{inviter_full}} shared a {{kind}} with you on OxiCloud.\n\nOpen OxiCloud to see your new share:\n{{login_link}}\n\nYou may have additional new shares from {{inviter}} — sign in to see all your shared items.\n\n— OxiCloud\n\nYou're receiving this message because you have an OxiCloud account and your share-notification preference is on. You can turn it off in your profile (Email me when someone shares with me)."
}
2026-08-05 23:35:05 +02:00
},
"security": {
"password_changed": {
"subject": "Your OxiCloud password was changed",
"body": "Hello,\n\nYour OxiCloud password was just changed at {{timestamp}} (UTC) from IP address {{ip}}.\n\nIf this was you, no action is needed — you can ignore this message.\n\nIf this was NOT you, contact your administrator immediately. Someone may have gained access to your account.\n\n— OxiCloud"
}
2026-06-17 22:52:06 -06:00
}
},
"server_status": {
"readonly_banner_aria": "Server maintenance in progress",
"readonly_title": "Server maintenance in progress",
"readonly_progress": "Migrating storage to `{{target}}` — {{percent}}% ({{migrated}} / {{total}} blobs). Uploads, renames, deletes, and shares are refused; reads and downloads work as normal.",
"readonly_body": "Uploads, renames, deletes, and shares are refused temporarily. Reads and downloads work as normal."
},
2026-06-17 22:52:06 -06:00
"app": {
"title": "OxiCloud",
"description": "Minimalist cloud storage system"
},
"myshares": {
"resendInvitation": "Resend invitation email",
"notifyByEmail": "Notify by email",
"notifyGroupMembers": "Notify group members",
"notifyRateLimited": "Too many notifications for this recipient — try again later.",
"notifyFailed": "Could not send notification.",
"removeAccess": "Remove access",
"copyLink": "Copy link",
"deleteLink": "Delete link",
"editSharing": "Edit sharing",
"emptyStateDesc": "Items you share with others will appear here",
"emptyStateTitle": "You haven't shared anything yet",
"manageAccess": "Manage access",
"notifySent": "Notification sent.",
"passwordLinks": "Password-protected links",
"publicLinks": "Public links",
"filter": {
"button": "Kinds",
"title": "Filter by kind",
"files": "Files",
"folders": "Folders",
"drives": "Drives",
"emptyTitle": "No shares match the current filter",
"emptyHint": "Adjust the kind filter or reset it to the default (Files + Folders).",
"reset": "Reset filter"
}
2026-06-17 22:52:06 -06:00
},
"nav": {
"files": "Files",
"shared": "My shares",
"sharedwithme": "Shared with me",
"recent": "Recent",
"favorites": "Favorites",
"photos": "Photos",
"music": "Music",
"trash": "Trash",
"groups": "Groups",
"primary": "Primary",
"admin_sections": "Admin sections",
"back_to_app": "Back to OxiCloud",
2026-06-17 22:52:06 -06:00
"profile": "Profile",
"shared_with_me": "Shared with me",
"toggle": "Toggle navigation menu"
},
"photos": {
"empty_state": "No photos yet",
"empty_hint": "Upload images or videos to see them here",
"empty_hidden": "{{n}} photo(s) hidden by your dotfile preference",
"empty_hidden_hint": "Turn off \"Hide dotfiles\" in your profile to see them.",
2026-06-17 22:52:06 -06:00
"items_selected": "selected",
"view_daily": "Day",
"view_monthly": "Month",
"view_yearly": "Year",
"confirm_delete": "Move {{n}} photos to trash?",
"confirm_delete_one": "Delete {{name}}?",
"delete": "Delete photos",
"empty": "No photos yet.",
"full_resolution": "Full resolution",
"group_by": "Group by",
"trash_partial": "{{ok}} of {{total}} moved to trash.",
"trashed": "{{n}} moved to trash.",
"layout_square": "Grid",
"layout_justified": "Justified",
"tab_moments": "Moments",
"tab_places": "Places",
"tab_people": "People",
"map_loading": "Loading map…",
"map_error": "Could not load the map"
},
"people": {
"unnamed": "Unnamed",
"empty": "No people yet",
"disabled": "Face recognition is disabled",
"rename_title": "Name this person",
"name_label": "Name",
"back": "Back"
2026-06-17 22:52:06 -06:00
},
"music": {
"create_playlist": "Create Playlist",
"playlists": "Playlists",
"no_playlists": "No playlists yet",
"empty_hint": "Create your first playlist to start organizing your music",
"select_playlist": "Select a playlist",
"select_hint": "Choose a playlist from the sidebar or create a new one",
"add_tracks": "Add Tracks",
"add_to_playlist": "Add to Playlist",
"add": "Add",
"added": "Added!",
"added_to_playlist": "added to playlist",
"load_error": "Error loading playlists",
"add_error": "Could not add tracks to playlist",
"no_playlists_yet": "No playlists yet. Create one first!",
"selected_files": "Selected:",
"no_tracks": "No tracks in this playlist",
"unknown_artist": "Unknown Artist",
"unknown_title": "Unknown",
"confirm_delete": "Delete this playlist?",
"playlist_name": "Playlist name",
"create": "Create",
"delete": "Delete",
"share": "Share",
"edit": "Edit",
"play_all": "Play All",
"shuffle": "Shuffle",
"repeat": "Repeat",
"repeat_one": "Repeat One",
"queue": "Queue",
"queue_empty": "Queue is empty",
"not_playing": "Not playing",
"play": "Play",
"pause": "Pause",
"previous": "Previous",
"next": "Next",
"volume": "Volume",
"mute": "Mute",
"unmute": "Unmute",
"title": "Title",
"artist": "Artist",
"album": "Album",
"tracks": "tracks",
"share_with_user": "User ID or email",
"playback_error": "Playback failed",
"error": "Error",
"remove": "Remove",
"track_removed": "Track removed",
"manage_shares": "Manage Shares",
"no_shares": "No shares yet",
"remove_share": "Remove share",
"can_write": "Can edit",
"read_only": "Read only",
"public": "Public",
"private": "Private",
"toggle_public": "Visibility",
"make_public": "Make public",
"make_private": "Make private",
"set_cover": "Set cover",
"cover_updated": "Cover updated",
"search_audio": "Search audio files…",
"no_audio_files": "No audio files found",
"selected": "selected",
"loading": "Loading…",
"search_error": "Could not load audio files",
"adding": "Adding…",
"add_selected": "Add selected",
"create_playlist_hint": "Type a playlist name to create one.",
"created": "Created “{{name}}”.",
"delete_playlist": "Delete playlist",
"deleted": "Deleted “{{name}}”.",
"edit_description": "Edit description",
"empty_playlist": "This playlist has no tracks yet.",
"new_playlist": "New playlist",
"no_audio": "No audio files found.",
"now_private": "Playlist is now private.",
"now_public": "Playlist is now public.",
"pick_or_create": "Existing: {{list}}. Type a name to add or create.",
"prev": "Previous",
"rename_playlist": "Rename playlist",
"reordered": "Playlist reordered.",
"seek": "Seek",
"selected_count": "{{n}} selected",
"share_added": "Shared.",
"track_count": "{{n}} tracks",
"tracks_added": "Added {{n}} track(s)."
},
"actions": {
"search": "Search files...",
"new_folder": "New folder",
"upload": "Upload",
"upload_files": "Upload files",
"upload_folder": "Upload folder",
"upload.uploading": "Uploading...",
"upload.complete": "{count} / {total} uploaded",
"upload.files": "files",
"rename": "Rename",
"move": "Move to...",
"move_to": "Move to",
"delete": "Delete",
"download": "Download",
"view": "View",
"cancel": "Cancel",
"confirm": "Confirm",
"share": "Share",
"favorite": "Add to favorites",
"unfavorite": "Remove from favorites",
"copy": "Copy",
"notify": "Notify",
"send": "Send",
"clear_recent": "Clear recent",
"logout": "Log out",
"create": "Create",
"search_btn": "Search",
"close": "Close",
"delete_permanently": "Delete permanently",
"empty_trash": "Empty trash",
"open_parent_folder": "Go to parent folder",
"add": "Add",
"apply": "Apply",
"clear": "Clear",
"remove": "Remove"
},
"user_menu": {
"appearance": "Appearance",
"about": "About OxiCloud",
"about_description": "Cloud storage platform built with Rust & Clean Architecture. Fast, secure, and private.",
"admin_panel": "Admin Panel",
"profile": "My Profile",
"role_user": "User",
"theme": {
"light": "Light",
"dark": "Dark",
"auto": "Like OS"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"manage_groups": "Manage groups",
"admin": "Admin",
"mit_license": "MIT License",
"title": "User menu"
},
"share": {
"dialogTitle": "Share Link",
"linkLabel": "Share Link:",
"copyLink": "Copy",
"permissions": "Permissions:",
"permissionRead": "Read",
"permissionWrite": "Write",
"permissionReshare": "Reshare",
"password": "Password Protection:",
"generatePassword": "Generate",
"expiration": "Expiration Date:",
"update": "Update Share",
"remove": "Remove Share",
"notifyTitle": "Send Notification",
"notifyEmailLabel": "Email Address:",
"notifyMessageLabel": "Message (optional):",
"notifySend": "Send Notification",
"shareWithOthers": "Share with others",
"sharePublicly": "Share publicly",
"shareSettings": "Sharing settings",
"shareCopied": "Link copied to clipboard",
"shareCreated": "Share link created successfully",
"shareUpdated": "Share settings updated successfully",
"shareRemoved": "Share removed successfully",
"inviteByEmail": "Invite by email — invitation will be sent",
"directoryUnavailable": "User directory unavailable",
"linkNamePlaceholder": "Link name (optional)",
"newLink": "New link",
"noExpiry": "No expiry",
"pending": "Pending",
"people": "People",
"publicLinks": "Public links",
"role": {
"canEdit": "Can edit",
"canManage": "Can manage",
"canView": "Can view"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"searchPlaceholder": "Search people…",
"shareOf": "Share of:",
"sharedLink": "Shared link",
"addPassword": "Add password",
"add_people": "Add people, groups, or email…",
"bad_password": "Incorrect password. Please try again.",
"changePassword": "Change password",
"copied": "Link copied",
"copy": "Copy",
"copy_failed": "Could not copy link",
"create_link": "Create link",
"created": "Public link created",
"dialog_title": "Share “{{name}}”",
"download": "Download",
"download_zip": "Download ZIP",
"empty_folder": "This folder is empty.",
"error": "Something went wrong. Please try again.",
"expired": "This share link is no longer available.",
"expires_optional": "Expires (optional)",
"expiry": "Expiry",
"files": "Files",
"folders": "Folders",
"invalid": "This share link is invalid.",
"link": "Link",
"link_name": "Link name (optional)",
"no_people": "Not shared with anyone yet.",
"none": "No public links yet.",
"notify": {
"coalesced": "{{n}} already notified recently.",
"rateLimited": "{{n}} hit the rate limit — try later.",
"sent": "{{n}} notified by email.",
"skipped": "{{n}} skipped (no email / opted out)."
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"notifyByEmail": "Notify by email",
"passwordPrompt": "Set a password:",
"passwordPrompt_clear": "New password (blank to remove):",
"password_cleared": "Password removed",
"password_optional": "Password (optional)",
"password_set": "Password updated",
"password_title": "Password required",
"public_link": "Public link",
"revoke": "Remove",
"set_expiry": "Set expiry",
"title": "Shared",
"unlock": "Unlock",
2026-07-20 21:16:41 +02:00
"role_label": "Role",
"col_shared_by": "Shared by",
"col_shared": "Shared"
2026-06-17 22:52:06 -06:00
},
"share_dialogTitle": "Share Link",
"share_linkLabel": "Share Link:",
"share_copyLink": "Copy",
"share_permissions": "Permissions:",
"share_permissionRead": "Read",
"share_permissionWrite": "Write",
"share_permissionReshare": "Reshare",
"share_password": "Password Protection:",
"share_generatePassword": "Generate",
"share_expiration": "Expiration Date:",
"share_update": "Update Share",
"share_remove": "Remove Share",
"share_notifyTitle": "Send Notification",
"share_notifyEmailLabel": "Email Address:",
"share_notifyMessageLabel": "Message (optional):",
"share_notifySend": "Send Notification",
"shared": {
"backToFiles": "Back to Files",
"pageTitle": "Shared Resources",
"pageDescription": "Manage your shared files and folders",
"filterType": "Type:",
"filterAll": "All",
"filterFiles": "Files",
"filterFolders": "Folders",
"sortBy": "Sort by:",
"sortByName": "Name",
"sortByDate": "Date shared",
"sortByExpiration": "Expiration",
"search": "Search",
"colName": "Name",
"colType": "Type",
"colDateShared": "Date Shared",
"colExpiration": "Expiration",
"colPermissions": "Permissions",
"colPassword": "Password",
"colActions": "Actions",
"emptyStateTitle": "No shared resources yet",
"emptyStateDesc": "When you share files or folders, they will appear here",
"goToFiles": "Go to Files",
"typeFile": "File",
"typeFolder": "Folder",
"noExpiration": "No expiration",
"hasPassword": "Yes",
"noPassword": "No",
"editShare": "Edit Share",
"notifyShare": "Notify Someone",
"copyLink": "Copy Link",
"removeShare": "Remove Share",
"linkCopied": "Link copied to clipboard!",
"linkCopyFailed": "Failed to copy link",
"itemUpdated": "Share settings updated successfully",
"itemRemoved": "Share removed successfully",
"invalidEmail": "Please enter a valid email address",
"notificationSent": "Notification sent successfully",
"notificationFailed": "Failed to send notification",
"shared_backToFiles": "Back to Files",
"shared_pageTitle": "Shared Resources",
"shared_pageDescription": "Manage your shared files and folders",
"shared_filterType": "Type:",
"shared_filterAll": "All",
"shared_filterFiles": "Files",
"shared_filterFolders": "Folders",
"shared_sortBy": "Sort by:",
"shared_sortByName": "Name",
"shared_sortByDate": "Date shared",
"shared_sortByExpiration": "Expiration",
"shared_search": "Search",
"shared_colName": "Name",
"shared_colType": "Type",
"shared_colDateShared": "Date Shared",
"shared_colExpiration": "Expiration",
"shared_colPermissions": "Permissions",
"shared_colPassword": "Password",
"shared_colActions": "Actions",
"shared_emptyStateTitle": "No shared resources yet",
"shared_emptyStateDesc": "When you share files or folders, they will appear here",
"shared_goToFiles": "Go to Files",
"shared_typeFile": "File",
"shared_typeFolder": "Folder",
"shared_noExpiration": "No expiration",
"shared_hasPassword": "Yes",
"shared_noPassword": "No",
"shared_editShare": "Edit Share",
"shared_notifyShare": "Notify Someone",
"shared_copyLink": "Copy Link",
"shared_removeShare": "Remove Share",
"shared_linkCopied": "Link copied to clipboard!",
"shared_linkCopyFailed": "Failed to copy link",
"shared_itemUpdated": "Share settings updated successfully",
"shared_itemRemoved": "Share removed successfully",
"shared_invalidEmail": "Please enter a valid email address",
"shared_notificationSent": "Notification sent successfully",
"shared_notificationFailed": "Failed to send notification"
},
"files": {
"name": "Name",
"type": "Type",
"size": "Size",
"modified": "Modified",
"no_files": "No files in this folder",
"empty_hint": "Upload files or create folders to get started",
"drop_to_upload": "Drop files here to upload",
2026-06-17 22:52:06 -06:00
"loading": "Loading files…",
"view_grid": "Grid view",
"view_list": "List view",
"file_types": {
"document": "Document",
"image": "Image",
"video": "Video",
"audio": "Audio",
"pdf": "PDF",
"text": "Text",
"folder": "Folder",
"spreadsheet": "Spreadsheet",
"presentation": "Presentation",
"archive": "Archive",
"installer": "Installer",
"code": "Code"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"owner": "Owner",
"add_favorites": "Add to favorites",
"added_favorites": "Added to favorites",
"already_favorites": "All selected items are already favorites",
"batch_delete": "Delete selected",
"breadcrumb": "Breadcrumb",
"cancel_selection": "Cancel selection",
2026-07-20 21:16:41 +02:00
"col_modified": "Modified",
"col_added": "Added",
"col_created_by": "Created by",
"col_opened": "Opened",
2026-06-17 22:52:06 -06:00
"col_name": "Name",
"col_owner": "Owner",
"col_path": "Location",
"col_size": "Size",
"col_type": "Type",
"confirm_batch_delete": "Move {{n}} items to trash?",
"confirm_delete": "Move \"{{name}}\" to trash?",
"confirm_delete_n": "Delete {{count}} item(s)?",
"copied": "Copied",
"copy": "Copy",
"copy_here": "Copy here",
"copy_n": "Copy {{n}} items",
"copy_title": "Copy “{{name}}”",
"download_zip": "Download as ZIP",
"edit": "Edit",
"edit_new_tab": "Edit in new tab",
"editor": "Document editor",
"empty_title": "This folder is empty",
"favorite": "Add favorite",
"favorited": "Favorite",
"file": "File",
"folder": "Folder",
"grid": "Grid",
"list": "List",
"more_actions": "More actions",
"move": "Move",
"move_here": "Move here",
"move_n": "Move {{n}} items",
"move_title": "Move “{{name}}”",
"moved": "Moved",
"new_folder": "New folder",
"new_folder_prompt": "New folder name",
"new_elements": "New elements",
2026-06-17 22:52:06 -06:00
"no_home": "No home folder available.",
"no_preview": "No preview available for this file type.",
"no_subfolders": "No subfolders here.",
"open": "Open",
"open_parent": "Open parent folder",
"owner_me": "Me",
"preview_failed": "Could not load preview.",
"select_all": "Select all",
"selected_count": "{{count}} selected",
"selection": "Selection",
"share": "Share",
"shared": "Shared",
"unfavorite": "Remove favorite",
"uploaded": "Upload complete",
"uploaded_saved": "Upload complete — {{mb}} MB deduplicated",
"uploaded_partial": "{{ok}} uploaded, {{failed}} failed",
"uploaded_skipped": "{{ok}} uploaded · {{skipped}} skipped (not regular files)",
"upload_failed": "Upload failed",
2026-06-17 22:52:06 -06:00
"uploading": "Uploading…",
"uploading_file": "Uploading {{name}}…",
"uploading_n": "Uploading {{done}}/{{total}} files…",
"view": "View",
"empty_hidden_title": "{{n}} hidden item(s) in this folder",
"empty_hidden_hint": "Files whose name starts with '.' are hidden. Toggle the setting to see them.",
"show_hidden": "Show hidden files",
"upload_dotfile_hidden": "{{n}} file(s) uploaded but hidden by your dotfile preference.",
"rename_dotfile_hidden": "Renamed to '{{name}}' — now hidden by your preference.",
"new_folder_dotfile_hidden": "Created folder '{{name}}' — hidden by your dotfile preference.",
"dotfiles_hidden_toast": "Dotfiles hidden",
"dotfiles_shown_toast": "Dotfiles shown"
2026-06-17 22:52:06 -06:00
},
"dialogs": {
"rename_folder": "Rename folder",
"rename_file": "Rename file",
"new_name": "New name",
"new_folder_title": "New folder",
"folder_name": "Folder name",
"folder_placeholder": "My folder",
"rename_title": "Rename",
"move_file": "Move file",
"move_folder": "Move folder",
"select_destination": "Select destination folder:",
"select_this_folder": "Select this folder",
"go_to_parent": ".. (parent folder)",
"no_subfolders": "No subfolders",
"root": "Root",
"delete_confirmation": "Are you sure you want to delete",
"and_contents": "and all its contents",
"no_undo": "This action cannot be undone",
"confirm_title": "Confirm action",
"confirm_delete": "Move to trash",
"confirm_delete_file": "Are you sure you want to move the file \"{{name}}\" to trash?",
"confirm_delete_folder": "Are you sure you want to move the folder \"{{name}}\" and all its contents to trash?",
"confirm_permanent_delete": "Delete permanently",
"confirm_permanent_delete_msg": "Are you sure you want to permanently delete this item? This action cannot be undone.",
"confirm_empty_trash": "Empty trash",
"confirm_delete_share": "Delete share link",
"confirm_delete_share_msg": "Are you sure you want to delete this shared link?",
"share_file": "Share File",
"share_folder": "Share Folder",
"existing_shares": "Existing Shares",
"share_options": "Share Options",
"password": "Password",
"expiration": "Expiration",
"permissions": "Permissions",
"generated_link": "Generated Link",
"notify": "Send Notification",
"recipient": "Recipient",
"message": "Message",
"move_to_home": "Move to Home folder"
},
"dropzone": {
"drag_files": "Drag files here or click to select",
"drop_files": "Drop files to upload"
},
"permissions": {
"read": "Read",
"write": "Write",
"reshare": "Reshare"
},
"errors": {
"file_not_found": "File not found",
"folder_not_found": "Folder not found",
"delete_error": "Error deleting",
"upload_error": "Error uploading file",
"rename_error": "Error renaming",
"move_error": "Error moving",
"empty_name": "Name cannot be empty",
"name_exists": "A file or folder with that name already exists",
"generic_error": "An error has occurred",
"group_name_invalid": "Group name must match the email-prefix format (letters, digits, dot, dash, underscore; 1–64 chars).",
"group_cycle": "This member would create a circular group reference.",
"group_depth_exceeded": "This nesting depth exceeds the maximum allowed (8).",
"group_virtual_immutable": "The 'Internal' group is system-managed and cannot be modified.",
"group_not_found": "Group not found.",
"group_name_taken": "A group with this name already exists.",
"forbidden": "Could not load files"
},
"breadcrumb": {
"home": "Home",
"aria": "Breadcrumb",
"root": {
"personal_drive": "Personal drive: {{name}}",
"shared_drive": "Shared drive: {{name}}",
"direct_share": "Shared with you",
"token": "Via shared link"
}
2026-06-17 22:52:06 -06:00
},
"trash": {
"empty_trash": "Empty Trash",
"empty_state": "Trash is empty",
"original_location": "Original location",
"deleted_date": "Deletion date",
"remaining": "Remaining",
"actions": "Actions",
"restore": "Restore",
"delete_permanently": "Delete permanently",
"empty_confirm": "Are you sure you want to empty the trash? This will permanently delete all items.",
2026-06-17 17:06:30 -06:00
"groupby": {
2026-06-17 22:52:06 -06:00
"remaining_days": "Remaining days",
"trashed_time": "Trashed time"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"confirm_delete": "Permanently delete this item? This cannot be undone.",
"confirm_empty": "Empty the trash? This cannot be undone.",
"delete": "Delete permanently",
"empty_action": "Empty trash",
2026-07-19 23:58:26 +02:00
"restored": "Restored",
"expires_at": "Expires at"
2026-06-17 22:52:06 -06:00
},
"daysRemaining": {
"expired": "Expired",
"today": "Today",
"tomorrow": "Tomorrow",
"inDays": "{{count}} days"
},
"expiryChip": {
"never": "Never expires",
"expired": "Expired",
"today": "Expires today",
"tomorrow": "Expires tomorrow",
"inDays": "Expires in {{count}} days",
"onDate": "Expires {{date}}"
},
"auth": {
"login_title": "Sign in",
"username": "Username",
"username_placeholder": "Enter your username",
"login_identifier": "Username or email",
"login_identifier_placeholder": "Enter your username or email",
"password": "Password",
"password_placeholder": "Enter your password",
"password_or_link_hint": "Password (leave blank for a sign-in link)",
2026-06-17 22:52:06 -06:00
"login_button": "Sign in",
"no_account": "Don't have an account?",
"register": "Sign up",
"admin_setup": "First time?",
"setup": "Setup administrator",
"register_title": "Create account",
"email": "Email",
"email_placeholder": "Enter your email",
"confirm_password": "Confirm password",
"confirm_password_placeholder": "Confirm your password",
"register_button": "Create account",
"have_account": "Already have an account?",
"login": "Sign in",
"setup_title": "Initial setup",
"setup_step1": "Admin",
"setup_step2": "System",
"setup_step3": "Complete",
"admin_username": "Admin username",
"admin_email": "Admin email",
"admin_password": "Admin password",
"create_admin": "Create administrator",
"back_to_login": "Already set up?",
"admin_success": "Administrator account created successfully! You can now sign in.",
"account_success": "Account created successfully! You can now sign in.",
"passwords_mismatch": "Passwords do not match",
"admin_create_error": "Error creating administrator account",
"or": "or",
"sso_login": "Sign in with SSO",
"sso_login_provider": "Sign in with {{provider}}",
"magicLinkHint": "No password? Enter your email and we'll send you a one-time sign-in link.",
"magicLinkEmailLabel": "Email address",
"magicLinkEmailPlaceholder": "you@example.com",
"magicLinkSubmit": "Send sign-in link",
"magicLinkSent": "If an account exists for that email, a sign-in link has been sent. Check your inbox.",
"magicLinkUnavailable": "Sign-in by email is not available on this server.",
"magicLinkNetworkError": "Could not reach the server: {{message}}",
"magicLinkToggle": "No password? Email me a sign-in link",
"passwordsMatch": "Passwords match",
"capsLock": "Caps Lock is on",
"caps_lock": "Caps Lock is on",
"cookie_rejected": "Login succeeded but the browser rejected the session cookie. If you are on HTTP, set OXICLOUD_COOKIE_SECURE=false or use HTTPS.",
"login_error": "Error logging in",
"magic_email_label": "Email address",
"magic_error": "Something went wrong. Try again.",
"magic_hint": "No password? Enter your email and we'll send you a one-time sign-in link.",
"magic_prompt": "No password? Sign in with an email link",
"magic_send": "Send link",
"magic_sent": "If an account exists, a sign-in link has been sent. Check your inbox.",
"magic_unavailable": "Sign-in by email is not available on this server.",
"passwords_match": "Passwords match",
"register_error": "Registration failed",
"session_expired": "Your session expired. Please sign in again.",
"logged_out": "Successfully signed out.",
2026-06-17 22:52:06 -06:00
"sign_in": "Sign in",
"signing_in": "Signing in…",
"sending": "Sending…",
2026-08-08 20:49:09 +02:00
"toggle_password": "Show password",
"login_error_title": "Sign-in failed",
"login_error_back_to_login": "Back to login",
"login_error_auto_link_disabled": "This server does not auto-link SSO accounts. Sign in with your existing credentials, then connect SSO from your profile.",
"login_error_auto_link_email_not_verified": "Your SSO provider did not confirm your email address. Verify your email at your identity provider, then try again.",
"login_error_already_linked_elsewhere": "A local account with this email already exists and is linked to a different SSO identity. Contact your administrator.",
2026-08-08 21:19:40 +02:00
"login_error_email_ambiguous": "Multiple local accounts match this email address. Contact your administrator to resolve.",
2026-08-08 20:49:09 +02:00
"login_error_callback_denied": "Your sign-in link expired or was already used. Please try signing in again.",
"login_error_callback_failed": "SSO sign-in couldn't complete. Please try again.",
"login_error_generic": "SSO sign-in was refused. Please try again."
2026-06-17 22:52:06 -06:00
},
"storage": {
"title": "Storage",
"calculating": "Calculating...",
"used": "{{percentage}}% used ({{used}} / {{total}})"
},
"viewer": {
"unsupported_file": "This file type cannot be previewed.",
"download_file": "Download file",
"zoom_in": "Zoom in",
"zoom_out": "Zoom out",
"zoom_reset": "Reset zoom",
"zoom": "Zoom"
},
"language_selector": {
"title": "Welcome!",
"subtitle": "Select your language to continue",
"continue": "Continue",
"languages": {
"en": "English",
"es": "Español",
"zh": "中文",
"fa": "فارسی",
"fr": "Français",
"de": "Deutsch",
"pt": "Português",
"ar": "العربية",
"hi": "हिन्दी",
"it": "Italiano",
"ja": "日本語",
"ko": "한국어",
"nl": "Nederlands",
"ru": "Русский"
}
},
"favorites": {
"empty_state": "No favorites yet",
"empty_hint": "Star files or folders to add them to your favorites",
"add": "Add to favorites",
"remove": "Remove from favorites",
"added_title": "Added to favorites",
"added_msg": "added to favorites",
"removed_title": "Removed from favorites",
"removed_msg": "removed from favorites"
},
"recent": {
"title": "Recent",
"clear": "Clear recent",
"accessed": "Accessed",
"empty_state": "No recent files",
"empty_hint": "Files you open will appear here",
"empty_hidden_state": "{{n}} recent item(s) hidden by your dotfile preference",
"empty_hidden_hint": "Turn off \"Hide dotfiles\" in your profile to see them.",
2026-06-17 22:52:06 -06:00
"loadMore": "Load more",
"confirm_clear": "Clear your recent items?",
"remove_item": "Remove from recent"
2026-06-17 22:52:06 -06:00
},
"notifications": {
"file_renamed": "File renamed",
"file_renamed_to": "File renamed to \"{{name}}\"",
"folder_renamed": "Folder renamed",
"folder_renamed_to": "Folder renamed to \"{{name}}\"",
"file_uploaded": "File uploaded",
"file_deleted": "File moved to trash",
"folder_deleted": "Folder moved to trash",
"item_deleted_permanently": "Item permanently deleted",
"trash_emptied": "Trash emptied successfully",
"title": "Notifications",
"empty": "No notifications",
"link_created": "Link created",
"share_success": "Shared link created successfully",
"upload_files_section_title": "Upload not available here",
"upload_files_section_body": "Go to the Files section to upload files",
"clear": "Clear all"
},
"batch": {
"one_selected": "1 item selected",
"n_selected": "{{count}} items selected",
"confirm_delete": "Are you sure you want to move {{count}} items to trash?",
"move_title": "Move {{count}} item(s)",
"add_favorites": "Add to favorites",
"move_copy": "Move or copy"
},
"admin": {
"page_title": "Admin Panel",
"back_to_app": "Back to OxiCloud",
"loading": "Loading…",
"access_denied": "Access Denied",
"access_denied_desc": "Administrator privileges required to access this panel.",
"sign_in": "Sign in",
"tab_dashboard": "Dashboard",
"tab_users": "Users",
"tab_oidc": "SSO / OIDC",
"total_users": "Total Users",
"active_users": "Active Users",
"admins": "Admins",
"version": "Version",
"storage_overview": "Storage Overview",
"used": "Used",
"total_quota": "Total Quota",
"usage_pct": "Usage %",
"users_over_80": "Users >80% quota",
"users_over_quota": "Users over quota",
"system": "System",
"auth_label": "Auth",
"oidc_label": "OIDC",
"quotas_label": "Quotas",
"enabled": "Enabled",
"disabled": "Disabled",
"active": "Active",
"off": "Off",
"allow_registration": "Allow public self-registration",
"registration_warning": "Public registration is disabled. Only admins can create new users.",
"user_management": "User Management",
"create_user": "Create User",
"col_user": "User",
"col_role": "Role",
"col_auth": "Auth",
"col_status": "Status",
"col_storage": "Storage",
"col_last_login": "Last Login",
"col_actions": "Actions",
"loading_users": "Loading users…",
"failed_load_users": "Failed to load users",
"no_users_found": "No users found",
"showing_users": "Showing {{from}}-{{to}} of {{total}}",
"prev": "Prev",
"next": "Next",
"inactive": "Inactive",
"you_badge": "(you)",
"local": "Local",
"never": "Never",
"just_now": "Just now",
"minutes_ago": "{{n}}m ago",
"hours_ago": "{{n}}h ago",
"days_ago": "{{n}}d ago",
"edit_quota_title": "Edit quota",
"reset_password_title": "Reset password",
"toggle_role_title": "Toggle role",
"deactivate_title": "Deactivate",
"activate_title": "Activate",
"delete_title": "Delete",
"sso_title": "Single Sign-On (OIDC / SSO)",
"enable_sso": "Enable SSO Authentication",
"provider_name": "Provider Name",
"issuer_url": "Issuer URL",
"issuer_url_hint": "OpenID Connect issuer URL of your identity provider",
"auto_discover": "Auto-discover",
"discovering": "Discovering…",
"client_id": "Client ID",
"client_secret": "Client Secret",
"client_secret_placeholder": "Leave empty to keep current value",
"secret_configured": "A client secret is already configured",
"callback_url": "Callback URL",
"callback_url_hint": "(register in your IdP)",
"advanced_settings": "Advanced Settings",
"scopes": "Scopes",
"auto_provision": "Auto-provision users on first login",
"admin_groups": "Admin Groups",
"admin_groups_hint": "Comma-separated OIDC group names that map to admin role",
"disable_password": "Disable password login (OIDC only)",
"password_warning": "This will prevent ALL password-based logins!",
"test_btn": "Test",
"save_btn": "Save",
"saving": "Saving…",
"settings_saved": "Settings saved — OIDC is now {{status}}",
"quota_modal_title": "Update Storage Quota",
"quota_user_label": "User:",
"new_quota": "New Quota",
"quota_unlimited_hint": "Set to 0 for unlimited",
"cancel": "Cancel",
"create_user_title": "Create New User",
"username_label": "Username",
"username_placeholder": "johndoe",
"username_hint": "3–32 characters",
"password_label": "Password",
"password_placeholder": "Min 8 characters",
"email_label": "Email",
"email_optional": "(optional)",
"email_placeholder": "user@example.com (auto-generated if empty)",
"role_label": "Role",
"role_user": "User",
"role_admin": "Admin",
"quota_label": "Quota",
"creating": "Creating…",
"reset_pw_title": "Reset Password",
"new_password_label": "New Password",
"resetting": "Resetting…",
"reset_btn": "Reset",
"confirm_role_change": "Change role to {{role}}?",
"confirm_deactivate": "Are you sure you want to deactivate this user?",
"confirm_activate": "Are you sure you want to activate this user?",
"confirm_delete_user": "DELETE user \"{{name}}\"? This cannot be undone!",
"confirm_action": "Confirm Action",
"confirm_yes": "Confirm",
"confirm_no": "Cancel",
"error_username_short": "Username must be at least 3 characters",
"error_password_short": "Password must be at least 8 characters",
"error_generic": "Failed",
"error_network": "Network error: {{message}}",
"error_create_user": "Failed to create user",
"tab_storage": "Storage",
"storage_title": "Storage Backend",
"storage_current_backend": "Active Backend",
"storage_total_blobs": "Total Blobs",
"storage_total_size": "Total Size",
"storage_dedup_ratio": "Dedup Ratio",
"storage_backend": "Backend Type",
"storage_local": "Local Filesystem",
"storage_s3": "S3-Compatible",
"storage_provider_preset": "Provider Preset",
"storage_preset_custom": "Custom",
"storage_endpoint_url": "Endpoint URL",
"storage_endpoint_hint": "Leave empty for Amazon S3 default",
"storage_bucket": "Bucket",
"storage_region": "Region",
"storage_access_key": "Access Key ID",
"storage_secret_key": "Secret Access Key",
"storage_secret_configured": "A secret key is already configured",
"storage_key_placeholder": "Leave empty to keep current value",
"storage_path_style": "Force Path Style",
"storage_path_style_hint": "Required for MinIO and some S3-compatible providers",
"storage_test_connection": "Test Connection",
"storage_test_success": "Connection successful",
"storage_test_failure": "Connection failed",
"storage_save": "Save",
"storage_saved": "Storage settings saved successfully",
"storage_migration": "Backend Migration",
"storage_migration_coming_soon": "Backend migration will be available in a future update.",
"migration_status_label": "Status:",
"migration_start": "Start Migration",
"migration_pause": "Pause",
"migration_resume": "Resume",
"migration_verify": "Verify Integrity",
"migration_complete": "Finalize",
"migration_started": "Migration started",
"migration_paused_msg": "Migration paused",
"migration_resumed_msg": "Migration resumed",
"migration_completed_msg": "Migration finalized. Restart the server to use the new backend.",
"migration_verifying": "Verifying…",
"migration_verify_passed": "Verification passed",
"migration_verify_failed": "Verification failed",
"migration_failed_blobs": "failed blobs",
"testing": "Testing…",
"tab_plugins": "Plugins",
"plugins_title": "Plugins",
"plugins_disabled": "Plugins are disabled on this server. Set OXICLOUD_ENABLE_PLUGINS=true (and build with the \"plugins\" feature) to manage WASM plugins here.",
"plugins_install_title": "Install a plugin",
"plugins_install_intro": "Upload a plugin bundle (.zip) containing plugin.toml and its compiled WebAssembly module (.wasm). The manifest is validated and the module is probed before installation.",
"plugins_bundle_label": "Plugin bundle (.zip)",
"plugins_install": "Install plugin",
"plugins_installed_title": "Installed plugins",
"plugins_col_name": "Name",
"plugins_col_id": "ID",
"plugins_col_version": "Version",
"plugins_col_events": "Events",
"plugins_col_status": "Status",
"plugins_col_actions": "Actions",
"plugins_loading": "Loading plugins…",
"plugins_none": "No plugins installed.",
"plugins_enabled": "Enabled",
"plugins_disabled_badge": "Disabled",
"plugins_enable": "Enable",
"plugins_disable": "Disable",
"plugins_delete": "Delete",
"plugins_confirm_delete": "Delete plugin \"{{name}}\"? Its files will be removed from the server.",
"plugins_installing": "Installing…",
"plugins_installed": "Installed {{name}}.",
"plugins_install_missing_bundle": "Select a plugin bundle (.zip).",
"plugins_details": "Logs & details",
"plugins_back": "Back to plugins",
"plugins_retention_title": "Log retention",
"plugins_retention_intro": "Rotated log segments older than the retention window, or beyond the size cap, are pruned on a schedule.",
"plugins_retention_days": "Retention (days)",
"plugins_retention_max_mb": "Max log size (MB)",
"plugins_retention_save": "Save retention",
"plugins_retention_saved": "Retention saved.",
"plugins_retention_invalid": "Enter non-negative numbers.",
"plugins_logs_title": "Logs",
"plugins_logs_level_all": "All levels",
"plugins_logs_search": "Search messages…",
"plugins_logs_live": "Live",
"plugins_logs_clear": "Clear",
"plugins_logs_confirm_clear": "Clear all logs for this plugin?",
"plugins_logs_none": "No log entries.",
"plugins_logs_col_time": "Time",
"plugins_logs_col_level": "Level",
"plugins_logs_col_kind": "Kind",
"plugins_logs_col_invocation": "Invocation",
"plugins_logs_col_message": "Message",
"plugins_logs_showing": "Showing {{from}}–{{to}} of {{total}}",
"tab_smtp": "SMTP",
"smtp_title": "Outbound Email (SMTP)",
"smtp_intro": "SMTP is configured exclusively via environment variables (OXICLOUD_SMTP_*). The values below are read from the running server — to change them, edit the environment and restart OxiCloud.",
"smtp_enabled_label": "Status",
"smtp_enabled": "Enabled",
"smtp_disabled": "Disabled (host unset)",
"smtp_test_title": "Send a test email",
"smtp_test_intro": "Sends a hardcoded diagnostic message to the recipient below and reports the SMTP server's response so you can correlate it with your relay logs.",
"smtp_test_to": "Recipient address",
"smtp_send_test": "Send test email",
"smtp_sending": "Sending…",
"smtp_sent": "Test email sent.",
"smtp_send_failed": "Send failed.",
"smtp_server_code": "Server replied",
"smtp_test_missing_to": "Enter a recipient address.",
"smtp_not_configured": "SMTP is not configured on this server.",
"admin_users": "Admins",
"auth": "Authentication",
"available": "available",
"confirm_delete_plugin": "Delete plugin {{name}}?",
"confirm_role": "Change role to {{role}}?",
"dashboard": "Dashboard",
"disable": "Disable",
"email": "Email",
"email_auto": "Auto-generated if left blank",
"enable": "Enable",
"env_locked": "Set by an environment variable",
"last_login": "Last login",
"logs_all": "All levels",
"logs_empty": "No log entries.",
"logs_invocation": "Invocation",
"logs_kind": "Kind",
"logs_level": "Level",
"logs_live": "Live",
"logs_message": "Message",
"logs_search": "Search…",
"logs_showing": "Showing {{from}}–{{to}} of {{total}}",
"logs_time": "Time",
"mig_complete": "Finalize",
"mig_eta": "~{{min}} min remaining",
"mig_failed": "{{n}} failed blobs",
"mig_pause": "Pause",
"mig_resume": "Resume",
"mig_start": "Start",
"mig_verify": "Verify integrity",
"mig_verify_failed": "Verification failed",
"mig_verify_mismatch": "{{n}} size mismatches",
"mig_verify_missing": "{{n}} missing",
"mig_verify_passed": "Verification passed",
"mig_verify_summary": "{{checked}} blobs checked, {{total}} total in database",
"mig_verifying": "Verifying…",
"migration": "Storage migration",
"new_password": "New password",
"no_plugins": "No plugins installed.",
"oidc": "OIDC / SSO",
"oidc_admin_groups": "Admin groups",
"oidc_auth_endpoint": "Auth endpoint",
"oidc_auto_provision": "Auto-provision users on first login",
"oidc_callback": "Callback URL",
"oidc_client_id": "Client ID",
"oidc_client_secret": "Client secret",
"oidc_disable_pw": "Disable password login (OIDC only)",
"oidc_discover": "Test / discover",
"oidc_enabled": "Enable OIDC login",
"oidc_issuer": "Issuer URL",
"oidc_provider_name": "Provider name",
"oidc_scopes": "Scopes",
"oidc_secret_set": "A client secret is already configured.",
"over_80": "{{n}} users over 80% quota",
"over_quota": "{{n}} users over quota",
"password": "Password",
"password_reset": "Password reset",
"plugin": "Plugin",
"plugin_logs": "Plugin logs",
"plugins": "Plugins",
"plugins_clear_logs": "Clear logs",
"plugins_install_hint": "Upload a plugin bundle (.zip).",
"plugins_retention": "Log retention",
"plugins_retention_max": "Max size (MB)",
"plugins_upload": "Upload .zip",
"quota": "Storage usage",
"quota_for": "Quota for",
"quotas": "Quotas",
"registration": "Registration",
"registration_disabled_warning": "Public registration is disabled. Only admins can create new accounts.",
"reset_pw_for": "New password for",
"role": "Role",
2026-08-09 14:04:42 +02:00
"sessions": {
"filter_user": "User (UUID)",
"include_revoked": "Include revoked / expired",
"refresh": "Refresh",
"col_user": "User",
"col_origin": "Origin",
2026-08-09 14:04:42 +02:00
"col_created": "Created",
"col_expires": "Expires",
"col_ip": "IP",
"col_user_agent": "User agent",
"col_bound": "Bound",
"col_status": "Status",
"current_tooltip": "This is the session you're using right now — revoking it will log you out.",
"bound_tooltip": "DPoP-bound (jkt {{prefix}}…)",
"unbound": "unbound",
"revoked": "revoked",
"expired": "expired",
"active": "active",
"revoke": "Revoke",
"empty": "No sessions match the current filter.",
"revoke_self_confirm": "⚠️ This is YOUR current session. Revoking it will log YOU out immediately and you'll have to sign back in. Continue?",
"revoke_confirm": "Revoke this session? The next request from that browser will 401.",
"revoke_lag_notice": "Revoking a session breaks its refresh path immediately, but any JWT already in the browser stays valid for up to {{secs}} seconds until the next refresh attempt.",
"origin": {
"password": "Password",
"opaque": "OPAQUE",
"magic_link": "Magic link",
"oidc": "SSO",
"device": "Device",
"unknown": "Unknown"
}
2026-08-09 14:04:42 +02:00
},
2026-06-17 22:52:06 -06:00
"settings_saved_ok": "Settings saved.",
"smtp": "Email (SMTP)",
"smtp_fail": "Send failed.",
"smtp_from": "From",
"smtp_host": "Host",
"smtp_port": "Port",
"smtp_send": "Send",
"smtp_status": "SMTP status",
"smtp_test": "Send test email",
"smtp_to": "recipient@example.com",
"smtp_user_state": "Auth",
"status": "Status",
"storage": "Storage",
"storage_blobs": "Blobs",
"storage_current": "Current backend",
"storage_dedup": "Dedup ratio",
"storage_endpoint": "Endpoint URL",
"storage_preset": "Preset",
"storage_size": "Stored",
"storage_tab": "Storage",
2026-08-02 00:06:08 +02:00
"storage_test": "Test",
"storage_backend_audit": "Backend consistency",
2026-08-12 23:35:30 +02:00
"storage_backend_audit_triggered": "backend_consistency triggered for `{{name}}` — watch it on the Background tasks tab.",
2026-06-17 22:52:06 -06:00
"time_day_ago": "{{n}} d ago",
"time_hour_ago": "{{n}} h ago",
"time_just_now": "just now",
"time_min_ago": "{{n}} min ago",
"title": "Admin",
"unchanged": "Leave blank to keep current",
"user": "User",
"username": "Username",
2026-06-20 19:13:18 +02:00
"users": "Users",
"running": "Running…",
"maintenance": "Maintenance",
"maintenance_hint": "Re-scan existing files to backfill metadata. Safe to re-run; processes the whole library and may take a while.",
"reextract_audio": "Re-extract audio metadata",
"reextract_photos": "Re-extract photo & video capture dates",
"reextract_done": "{{processed}}/{{total}} processed · {{failed}} failed",
"encryption": "Encryption",
"encryption_hint": "Generate an AES-256 key for at-rest blob encryption, then set it as OXICLOUD_STORAGE_ENCRYPTION_KEY in your server environment.",
"gen_key": "Generate key",
2026-06-26 18:08:34 +02:00
"gen_key_warning": "Store this key securely. If it is lost, the encrypted data is irrecoverably lost.",
"drive_manage_policies": "Manage policies",
"drive_manage_policies_for": "Manage policies — {{name}}",
"drive_manage_policies_help": "Policies are admin-only — drive owners cannot mutate them. Each toggle controls one enforcement gate.",
"drive_policy": {
"forbid_sharing": "Forbid per-resource sharing",
"forbid_sharing_help": "Block per-file / per-folder grants (covers public links and external sharing as well). Drive-level membership still works.",
"forbid_public_links": "Forbid public links",
"forbid_public_links_help": "Block anonymous share links on resources in this drive.",
"forbid_external_sharing": "Forbid external sharing",
"forbid_external_sharing_help": "Block grants to external users (email invitations and pre-existing external accounts).",
"forbid_cross_drive_move": "Forbid cross-drive move",
"forbid_cross_drive_move_help": "Block moving files or folders out to another drive. Does not stop download + re-upload.",
"forbid_owner_role_change": "Lock Owner roster",
"forbid_owner_role_change_help": "Only admin can add, remove, or demote drive Owners while this is on.",
"include_in_photo_index": "Include in Photos",
"include_in_photo_index_help": "Show image and video files from this drive in the Photos timeline and on the Places map. Default personal drives are opted in automatically; turn on for shared drives that genuinely hold photos (e.g. \"Family Photos\").",
"include_in_music_index": "Include in Music",
"include_in_music_index_help": "Include audio files from this drive in the Music library. Default personal drives are opted in automatically; turn on for shared drives that genuinely hold a music collection (e.g. \"Family Music\", \"Band Collaboration\").",
2026-07-15 22:21:15 +02:00
"implied_by_forbid_sharing": "Already enforced by Forbid per-resource sharing.",
"read_only": "Read-only (freeze)",
"read_only_help": "Freeze the drive entirely — every mutation is refused (uploads, edits, deletes, renames, sharing, membership changes). Reads and downloads keep working. The trash-retention janitor also pauses. Use for archives, legal holds, or account wind-downs. Only an admin can un-freeze."
2026-07-19 14:21:44 +02:00
},
"drives": "Drives",
"drive_name": "Name",
"drive_kind": "Kind",
"drive_owners": "Owners",
"drive_usage": "Usage",
"drive_created_at": "Created",
"drive_kind_shared": "Shared",
"drive_kind_personal": "Personal",
"drive_kind_default_suffix": "(default)",
"drive_manage_owners": "Manage owners",
"drive_manage_owners_for": "Manage owners — {{name}}",
"drive_edit_quota": "Edit quota",
"drive_delete": "Delete drive",
"drive_delete_confirm": "Delete drive \"{{name}}\"? This cannot be undone.",
"drive_deleted": "Drive deleted.",
"drive_created": "Drive created.",
"drive_add_owner": "Add owner",
"drive_current_owners": "Current owners",
"drive_no_owners": "No owners",
"drive_owner": "Owner",
"drive_owner_hint": "Pick a user (sole Owner) or a group (every member becomes Owner via subject expansion).",
"drive_owner_picked": "Owner: {{name}}",
"drive_owner_placeholder": "Search a user or group…",
"drive_owner_remove_confirm": "Remove this owner from the drive?",
"drive_name_placeholder": "e.g. Engineering",
"drive_error_name_required": "Drive name is required.",
"drive_error_owner_required": "Pick a user or group as the drive owner.",
"create_drive": "Create shared drive",
"no_drives": "No drives yet.",
"external_user": "external",
"external_user_hint": "Grant-only account (magic-link or OCM). Cannot be admin and has no storage envelope.",
"no_storage_for_external": "External accounts have no storage envelope.",
"promote_to_internal_title": "Promote to internal user",
"confirm_promote_user": "Promote {{name}} to an internal user? This provisions a home drive and gives the account a normal storage envelope. The account keeps its identity; magic-link login stays the way in unless a password is set later.",
"delete_user_title": "Delete user",
"delete_user_warning": "You are about to permanently delete \"{{name}}\". This will remove the account, revoke every session, and reap the personal drive. This cannot be undone.",
"delete_user_confirm_hint": "To confirm, type the account email below: {{email}}",
2026-07-29 07:57:34 +02:00
"deleting": "Deleting…",
"jobs": {
2026-08-12 23:35:30 +02:00
"tab": "Background tasks",
"title": "Background tasks",
"hint": "This section concerns internal background tasks: periodic + on-demand tasks. Consistency checks are safe to run at any time — they are read-only.",
2026-07-29 07:57:34 +02:00
"run_all_consistency": "Run all consistency checks",
"run_deep": "Run deep",
"run_deep_hint": "Also runs slow variants (blob re-hash, bitrot detection).",
"col_name": "Name",
"col_cadence": "Cadence",
"col_last_run": "Last run",
"col_outcome": "Outcome",
"col_state": "State",
"col_actions": "Actions",
"col_started_at": "Started",
"col_status": "Status",
"col_duration": "Duration",
"col_scanned": "Scanned",
2026-07-29 08:41:19 +02:00
"col_progress": "Progress",
2026-07-29 07:57:34 +02:00
"col_findings": "Findings",
2026-07-29 08:41:19 +02:00
"progress_exact_tooltip": "{{pct}} ({{scanned}} / {{total}})",
"progress_approx_tooltip": "{{pct}} ({{scanned}} / {{total}} — approximate, backend proxy)",
"progress_scanned_only": "{{n}} scanned",
"progress_scanned_only_tooltip": "No total available for this run (pre-progress-bar deploy or the tenant does not report a countable subject).",
"findings_present_tooltip": "Expand this run to see per-finding detail.",
2026-07-29 07:57:34 +02:00
"col_error": "Error",
"col_kind": "Kind",
"col_severity": "Severity",
"col_resource": "Resource",
"col_detail": "Detail",
"run": "Run",
"cancel": "Cancel",
"refresh": "Refresh",
"runs_title": "Recent runs",
"run_json": "Run summary (JSON)",
"findings_title": "Findings",
"no_runs": "No runs yet.",
"no_findings": "No findings — clean run.",
2026-08-12 23:35:30 +02:00
"none_registered": "No background tasks registered.",
2026-07-29 07:57:34 +02:00
"on_demand": "on-demand",
"every_h": "every {{n}} h",
"every_min": "every {{n}} min",
"every_sec": "every {{n}} s",
"outcome_ok": "ok",
"outcome_err": "err",
"outcome_issues": "issues",
"outcome_notices": "notices",
"n_findings": "{{n}} findings",
"n_notices": "{{n}} notices",
"notices_present_tooltip": "Informational findings — no action required. Expand for detail.",
"purge": "Purge old runs",
"purge_hint": "Delete completed and failed run history older than the chosen retention window. Findings drop with their parent runs. Non-terminal runs are always preserved.",
2026-08-12 23:35:30 +02:00
"purge_title": "Purge old task history",
"purge_body": "Delete completed and failed run history older than the chosen number of days. Findings drop with their parent runs. Non-terminal runs (running, paused, cancel-requested) are always preserved.",
"purge_days_label": "Retention (days)",
"purge_confirm": "Purge",
"purge_done": "{{n}} old run(s) purged (retention {{days}} days)",
2026-07-29 07:57:34 +02:00
"state_running": "running",
"never": "never",
"just_now": "just now",
"n_min_ago": "{{n}} min ago",
"n_h_ago": "{{n}} h ago",
"n_d_ago": "{{n}} d ago",
"triggered_ok": "{{name}} triggered successfully",
"triggered_err": "{{name}} failed: {{message}}",
"cancel_requested": "Cancel requested — {{name}} will pause at the next safe boundary",
"cancel_noop": "Nothing to cancel — {{name}} is not running"
}
2026-06-17 22:52:06 -06:00
},
"profile": {
"page_title": "Profile",
"back_to_app": "Back to OxiCloud",
"loading": "Loading…",
"not_authenticated": "Not Authenticated",
"not_authenticated_desc": "Please sign in to view your profile.",
"sign_in": "Sign in",
"role_admin": "Administrator",
"role_user": "User",
"account_details": "Account Details",
"username": "Username",
"email": "Email",
"role": "Role",
"last_login": "Last Login",
"storage": "Storage",
"used": "Used",
"quota": "Quota",
"usage": "Usage",
"unlimited": "Unlimited",
"app_passwords": "App Passwords",
"app_pw_desc": "Generate passwords for WebDAV, CalDAV, and CardDAV clients. Each password is shown only once.",
"app_pw_label_placeholder": "Label (e.g. Thunderbird, macOS)",
"generate": "Generate",
"generating": "Generating…",
"new_password_for": "New password for",
"copy_warning": "Copy this password now. You won't be able to see it again.",
"copy_to_clipboard": "Copy to clipboard",
"col_label": "Label",
"col_created": "Created",
"col_last_used": "Last Used",
"col_status": "Status",
"active": "Active",
"revoked": "Revoked",
"revoke_title": "Revoke",
"no_app_passwords": "No app passwords yet.",
"client_sessions": "Client sessions",
"client_sessions_desc": "Auto-generated when you connect a Nextcloud-compatible client.",
"col_client": "Client",
"never": "Never",
"just_now": "Just now",
"minutes_ago": "{{n}} min ago",
"hours_ago": "{{n}}h ago",
"days_ago": "{{n}} days ago",
"edit_profile": "Edit Profile",
"edit_oidc_managed": "To change your information (name, first name, profile picture, …), please update it at your identity provider. Your changes will appear on your next sign-in.",
"username_claim_hint": "2–64 characters, letters/digits/dot/dash/underscore. Once chosen, the username can't be changed (DAV/NextCloud clients depend on it).",
"username_already_claimed": "Username is set and can't be changed (DAV/NextCloud clients depend on it).",
"given_name": "First name",
"family_name": "Last name",
"notify_on_share": "Email me when someone shares with me",
"notify_on_share_hint": "When unchecked, shares still appear in your account — you just won't get an email about them.",
"hide_dotfiles": "Hide files whose name starts with a dot (.env, .git, …)",
2026-06-17 22:52:06 -06:00
"save_profile": "Save changes",
"profile_saved": "Profile updated",
"profile_no_changes": "No changes to save.",
"profile_save_failed": "Save failed",
"username_taken_error": "That username is already taken.",
"username_immutable_error": "Your username is already set and can't be changed here. Contact an administrator if you need a rename.",
"change_password": "Change Password",
"current_password": "Current Password",
"new_password": "New Password",
"min_8_chars": "At least 8 characters",
"confirm_password": "Confirm New Password",
"update_password": "Update Password",
"updating": "Updating…",
"password_updated": "Password updated successfully",
"passwords_no_match": "Passwords do not match",
"password_too_short": "Password must be at least 8 characters",
"password_change_failed": "Failed to change password",
"error_network": "Network error: {{message}}",
"error_label_required": "Please enter a label",
"error_create_pw": "Failed to create app password",
"confirm_revoke": "Revoke app password \"{{label}}\"? Clients using this password will stop working.",
"error_revoke": "Failed to revoke app password",
"edit_photo": "Edit photo",
"photo_tab_url": "URL",
"photo_tab_upload": "Upload",
"photo_url_placeholder": "https://example.com/photo.jpg",
"photo_url_hint": "https://, http://, or data:image/…;base64,… accepted",
"photo_choose_file": "Choose a photo (PNG, JPEG, WebP)",
"photo_resize_note": "Images larger than 512 × 512 px are automatically resized.",
"photo_save": "Save photo",
"photo_remove": "Remove photo",
"photo_cancel": "Cancel",
"photo_save_failed": "Failed to save photo",
"photo_no_file": "Please select a file first",
"photo_managed_by_oidc": "Photo managed by your identity provider.",
"app_pw_revoke": "Revoke app password",
"avatar": "Avatar",
"copied": "Copied",
"copy_failed": "Could not copy",
"language": "Language",
"language_auto": "Automatic",
"password_mismatch": "Passwords do not match",
2026-08-08 20:49:09 +02:00
"saved": "Profile saved",
"sso_connect_title": "Connect Single Sign-On",
"sso_connect_description": "Link your account to {{provider}} so you can sign in with SSO instead of your password.",
"sso_connect_button": "Connect with {{provider}}",
"sso_disconnect_title": "Single Sign-On",
"sso_disconnect_description": "Your account is connected to {{provider}}. Disconnecting will require you to sign in with your password from now on.",
"sso_disconnect_button": "Disconnect Single Sign-On",
"sso_disconnect_confirm_title": "Disconnect Single Sign-On?",
"sso_disconnect_confirm_message": "You'll only be able to sign in with your password or OPAQUE credential after this.",
"sso_disconnect_confirm_button": "Disconnect",
"sso_unlinked_success": "Single sign-on disconnected.",
"sso_unlink_no_alt_auth": "Set a password first — otherwise you would be locked out."
2026-06-17 22:52:06 -06:00
},
"upload": {
"uploading": "Uploading...",
"files": "files",
"complete": "{{count}} / {{total}} uploaded",
"files_counter": "{{completed}} / {{total}} files"
},
"storage_quota_exceeded": "Storage quota exceeded",
"sharedwithme": {
"pageTitle": "Shared with me",
"pageDescription": "Files and folders others have shared with you",
"emptyStateTitle": "Nothing shared with you yet",
"emptyStateDesc": "Items shared with you by other users will appear here",
"loadMore": "Load more",
"sharedBy": "Shared by",
"colName": "Name",
"colType": "Type",
"colSharedBy": "Shared by",
"colDate": "Date shared",
"colPermissions": "Permissions"
},
"groupby": {
"none": "None",
"byFiles": "By files",
"sharedWith": "Shared with",
"title": "Group by",
"type": "Type",
"type.folders": "Folders",
"owner": "Owner",
"shareDate": "Share date",
"favoriteDate": "Favorite date",
"accessedAt": "Accessed date",
"modifiedAt": "Modified date",
"createdAt": "Created date",
"size": "Size",
"justAdded": "New",
"folders": "Folders"
},
"dateBucket": {
"today": "Today",
"last7days": "Last 7 days",
"last30days": "Last 30 days",
"unknown": "Unknown"
},
"groups": {
"title": "Manage groups",
"create_button": "Create group",
"create_dialog_title": "New group",
"edit_dialog_title": "Rename group",
"name_label": "Name",
"name_placeholder": "engineering",
"description_label": "Description (optional)",
"members_section": "Members",
"members_loading": "Loading members…",
"members_empty": "No members",
"add_member_placeholder": "Add a user or group…",
"no_members": "No members yet.",
"remove_member": "Remove",
"delete_group": "Delete group",
"delete_confirm": "Delete the group \"{name}\"? Grants referencing this group will be revoked.",
"empty_state": "No groups yet.",
"load_more": "Load more",
"back_to_list": "Back",
"loading": "Loading…",
"virtual_badge": "System",
"member_count_zero": "no members",
"member_count_one": "1 member",
"member_count_other": "{count} members",
"delete_confirm_label": "Type the group name to confirm:",
"delete_confirm_mismatch": "Type the group name exactly to confirm.",
"virtual_internal_name": "Internal",
"virtual_internal_explanation": "Every internal user on this server",
"add_member_search": "Search users or groups to add…",
"create": "Create group",
"empty": "No groups yet.",
"members": "Members",
"nested": "Group"
},
"sort": {
"asc": "ascending",
"desc": "descending",
"direction": "Sort direction"
},
"notif": {
"errorTitle": "Error",
"searchError": "Error performing search",
"cleanupCompleted": "Cleanup completed",
"cleanupCompletedBody": "Recent files history has been cleared",
"batchCopy": "Batch copy",
"batchCopyBody": "{{success}} copied, {{errors}} failed",
"itemsCopied": "Items copied",
"itemsCopiedBody": "{{count}} items copied successfully",
"batchMove": "Batch move",
"batchMoveBody": "{{success}} moved, {{errors}} failed",
"itemsMoved": "Items moved",
"itemsMovedBody": "{{count}} items moved successfully",
"batchDelete": "Batch delete",
"batchDeleteBody": "{{success}} moved to trash, {{errors}} failed",
"movedToTrash": "Moved to trash",
"movedToTrashBody": "{{count}} items moved to trash",
"trashItemsError": "Could not move items to trash",
"preparingDownload": "Preparing download",
"preparingDownloadBody": "Preparing your download…",
"downloadItemsError": "Could not download selected items",
"favoritesAddError": "Could not add items to favorites",
"invalidEmail": "Please enter a valid email address",
"notificationSendError": "Could not send notification",
"folderCreated": "Folder created",
"folderCreatedBody": "\"{{name}}\" created successfully",
"fileMoved": "File moved",
"fileMovedBody": "File moved successfully",
"fileMoveError": "Error moving the file: {{error}}",
"fileMoveErrorGeneric": "Error moving the file",
"folderMoved": "Folder moved",
"folderMovedBody": "Folder moved successfully",
"folderMoveError": "Error moving the folder: {{error}}",
"folderMoveErrorGeneric": "Error moving the folder",
"fileCopied": "File copied",
"fileCopiedBody": "File copied successfully",
"fileCopyError": "Error copying the file: {{error}}",
"fileCopyErrorGeneric": "Error copying the file",
"folderRenamed": "Folder renamed",
"folderRenamedBody": "Folder renamed to \"{{name}}\"",
"fileTrashed": "File moved to trash",
"fileTrashedBody": "\"{{name}}\" moved to trash",
"fileDeleted": "File deleted",
"fileDeletedBody": "\"{{name}}\" deleted successfully",
"fileDeleteError": "Error deleting the file",
"folderTrashed": "Folder moved to trash",
"folderTrashedBody": "\"{{name}}\" moved to trash",
"folderDeleted": "Folder deleted",
"folderDeletedBody": "\"{{name}}\" deleted successfully",
"folderDeleteError": "Error deleting the folder",
"itemRestored": "Item restored",
"itemRestoredBody": "Item restored successfully",
"itemRestoreError": "Error restoring the item",
"itemDeleted": "Item deleted",
"itemDeletedBody": "Item permanently deleted",
"itemDeleteError": "Error deleting the item",
"trashEmptied": "Trash emptied",
"trashEmptiedBody": "The trash has been emptied successfully",
"trashEmptyError": "Error emptying the trash",
"cacheCleared": "Cache cleared",
"cacheClearedBody": "Search cache cleared successfully",
"cacheClearError": "Error clearing search cache",
"wopiOpenError": "Could not open the document editor.",
"linkCopied": "Link copied",
"linkCopiedBody": "Link copied to clipboard",
"linkCopyError": "Could not copy link",
"notificationSent": "Notification sent",
"notificationSentBody": "Notification sent to {{email}}"
},
"about": {
"description": "OxiCloud — a fast, self-hosted file storage and sync server."
},
"category": {
"archives": "Archives",
"audio": "Audio",
"code": "Code",
"documents": "Documents",
"images": "Images",
"installers": "Installers",
"markdown": "Markdown",
"presentations": "Presentations",
"spreadsheets": "Spreadsheets",
"text": "Text",
"videos": "Videos"
},
"cmdk": {
"no_results": "No matching commands",
"placeholder": "Type a command or search…",
"title": "Command palette",
"toggle_theme": "Toggle theme"
},
"common": {
"add": "Add",
"cancel": "Cancel",
"clear": "Clear",
"close": "Close",
"confirm": "Confirm",
"copied": "Copied to clipboard",
"copy": "Copy",
"copy_failed": "Copy failed",
"create": "Create",
"delete": "Delete",
"download": "Download",
"empty": "Nothing here yet.",
"error": "unknown error",
"favorite": "Favorite",
"load_more": "Load more",
"loading": "Loading…",
"next": "Next",
"no": "No",
"ok": "OK",
"optional": "optional",
"previous": "Previous",
"remove": "Remove",
"rename": "Rename",
"retry": "Try Again",
"save": "Save",
"search": "Search",
"select": "Select",
"select_all": "Select all",
"yes": "Yes",
2026-06-26 18:08:34 +02:00
"dismiss": "Dismiss",
"saving": "Saving…",
"deleting": "Deleting…"
2026-06-17 22:52:06 -06:00
},
"device": {
"approve": "Approve",
"approved": "Device approved. You can return to your device.",
"client": "Application",
"continue": "Continue",
"denied": "Device access denied.",
"deny": "Deny",
"enter_code": "Enter the code shown on your device",
"lookup_failed": "Failed to verify code. Please try again.",
"not_found": "Code not found or expired. Please check and try again.",
"scopes": "Access",
"title": "Device verification",
"unauthorized": "You must be logged in to authorize a device. Please log in first.",
"unknown": "Unknown"
},
"errors_loadFailed": "Failed to load items",
"expiryBucket": {
"expired": "Expired",
"later": "Later",
"month": "In less than 30 days",
"noExpiry": "No expiration",
"today": "Today",
"tomorrow": "Tomorrow",
"week": "In less than 7 days"
},
"nextcloud": {
"close_window": "Close Window",
"error_expired_body": "Your session has expired. Please try again.",
"error_expired_title": "Session Expired",
"error_generic_body": "An unexpected error occurred. Please try again.",
"error_invalid_body": "Invalid username or password. Please check your credentials and try again.",
"error_invalid_title": "Login Failed",
"error_notfound_body": "The requested page was not found.",
"error_notfound_title": "Not Found",
"error_title": "Error",
"grant": "Grant access",
"grant_subtitle": "A Nextcloud client is requesting access to your account.",
"grant_title": "Grant access",
"invalid_token": "Invalid session token.",
"sign_in_with": "Sign in with {{provider}}",
"success_body": "You can now return to your application — it is connected.",
"success_title": "Access granted"
},
"search": {
"clear_filters": "Clear filters",
"date": {
"all": "Any time",
"day": "Past 24 hours",
"month": "Past month",
"week": "Past week",
"year": "Past year"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"date_label": "Date",
"everywhere": "Everywhere",
"no_results": "No results found for this search",
"prompt": "Type a query in the search bar above.",
"results_for": "Results for “{{q}}”",
"scope": "Scope",
"searching_for": "Searching for “{{q}}”…",
"see_all": "See all results",
"size": {
"all": "Any size",
"large": "> 100 MB",
"medium": "1–100 MB",
"small": "< 1 MB"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"size_label": "Size",
2026-06-17 17:06:30 -06:00
"sort": {
2026-06-17 22:52:06 -06:00
"largest": "Largest",
"name_asc": "Name A-Z",
"name_desc": "Name Z-A",
"newest": "Newest",
"oldest": "Oldest",
"relevance": "Relevance",
"smallest": "Smallest"
2026-06-17 17:06:30 -06:00
},
2026-06-17 22:52:06 -06:00
"sort_by": "Sort by",
"this_folder": "This folder",
"title": "Search",
"type": {
"all": "All types",
"archive": "Archives",
"audio": "Audio",
"document": "Documents",
"image": "Images",
"video": "Videos"
},
2026-07-26 18:03:47 +02:00
"type_label": "Type",
"results_summary": "Results for “{{q}}” · {{n}} results in {{ms}} ms",
"results_summary_no_total": "Results for “{{q}}” · {{ms}} ms",
"this_folder_disabled": "Open a folder in Files to scope search to it"
2026-06-17 22:52:06 -06:00
},
"settings": {
"language": "Language"
},
"shared_with_me": {
"empty": "Nothing has been shared with you yet.",
"from": "Shared by {{who}}"
},
"sizeBucket": {
"empty": "Empty (0 B)",
"folders": "Folders",
"huge": "> 5 GB",
"large": "1 – 5 GB",
"medium": "100 MB – 1 GB",
"small": "1 – 100 MB",
"tiny": "< 1 MB"
},
"sortdir": {
"title": "Sort direction"
},
"view": {
"grid": "Grid view",
"label": "View options",
"list": "List view",
"hide_dotfiles": "Hide hidden files",
"show_dotfiles": "Show hidden files"
},
"preferences": {
"save_failed": "Couldn't save your preference. Please try again."
2026-07-14 11:40:16 +02:00
},
"upgrade": {
"title": "Upgrade to a full account",
"lede": "Get your own storage and start uploading files. Your existing shares stay untouched.",
"busy": "Upgrading…",
"submit": "Upgrade my account",
"cancel": "Not now — back to shared with me",
"success": "Your account has been upgraded. Redirecting to your files…",
"error": "Upgrade failed.",
"password_required": "Password is required — this deployment does not offer email-link login.",
"password_too_short": "Password must be at least 8 characters long.",
"oidc_user": "SSO/OIDC accounts are managed by your identity provider. Upgrade is not available.",
"domain_not_allowed": "This deployment does not accept new accounts from your email domain. Contact the administrator to enable it.",
"banner_aria": "Upgrade prompt",
"banner_title": "Get your own storage",
"banner_body": "You're using a guest account. Upgrade to get a personal drive and start uploading files.",
"banner_cta": "Upgrade"
2026-07-15 22:21:15 +02:00
},
"drive": {
"read_only_banner": {
"title": "This drive is read-only",
"title_named": "Drive \"{{name}}\" is read-only",
"body": "Uploads, edits, deletes, renames, sharing and membership changes are refused. Reads and downloads keep working. Contact an administrator to un-freeze the drive.",
"aria": "This drive is read-only"
},
"back_to_files": "Back to Files",
"danger_zone": "Danger zone",
"delete": "Delete drive",
"delete_confirm": "Delete drive \"{{name}}\"? This cannot be undone — the drive must be empty first or the server will refuse.",
"delete_hint": "Deleting a drive removes it permanently. The drive must be empty (no live files or folders) before delete is allowed.",
"deleted": "Drive deleted.",
"field": {
"created": "Created",
"default": "Default",
"default_yes": "This is your home drive",
"id": "Identifier",
"kind": "Kind",
"updated": "Last updated"
},
"info": "Drive info",
"kind_personal": "Personal drive",
"kind_shared": "Shared drive",
"manage_members": "Manage members",
"members": "Members",
"members_empty": "No members.",
"not_found_body": "This drive doesn't exist or you don't have access to it.",
"not_found_title": "Drive not found",
"policies": "Policies",
"policies_help": "Rules an OxiCloud admin has set for this drive. Only admins can change them; you're seeing the current state.",
"quota": "Quota",
"rename": "Rename drive",
"role": {
"commenter": "Commenter",
"contributor": "Contributor",
"editor": "Editor",
"owner": "Owner",
"viewer": "Viewer"
},
"storage": "Storage",
"usage": "Usage",
"used": "Used",
"members_personal_immutable": "Personal drives have a fixed single-owner membership."
},
"group": {
"members_empty": "No members",
"member_count": "{{n}} members"
2026-07-19 23:58:26 +02:00
},
"resource_list": {
"location": "Location",
"wrong_drop_zone_msg": "Uploads only work in Files — open the Files section and drop there.",
"wrong_drop_zone_action": "Go to Files"
2026-06-17 22:52:06 -06:00
}
2026-08-12 23:35:30 +02:00
}