New Crowdin updates (#1579)

* New translations quickvaultunlocksection.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations recentauthlogssection.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations showrecoverycodes.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations twofactorauthenticationsection.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations createnewidentitywidget.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations searchwidget.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations footer.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations topmenu.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations forgotpassword.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations logout.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations setup.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations start.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations unlock.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations addedit.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations delete.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations view.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations apps.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations general.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations importexport.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations security.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations creating.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations errorvaultdecrypt.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations vaultdecryptionprogress.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations sync.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations welcome.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations apierrors.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations changepassword.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations deleteaccount.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations enable2fa.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations validationmessages.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations resetvault.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations resetvaultsection.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations disable2fa.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations infoplist.strings (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations strings.xml (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations localizable.strings (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations pendingmigrations.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations localizable.strings (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations clipboardcountdownbar.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations mobileunlockmodal.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations mobilelogin.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations mobilelogin.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations fieldblock.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations deletefoldermodal.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations foldermodal.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations editablefieldlabel.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations addfieldmenu.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations folderselector.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations itemtypeselector.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations recentlydeleted.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations fieldhistorymodal.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (French)
Update translations from Crowdin [ci skip]

* New translations en.json (Spanish)
Update translations from Crowdin [ci skip]

* New translations en.json (Catalan)
Update translations from Crowdin [ci skip]

* New translations en.json (German)
Update translations from Crowdin [ci skip]

* New translations en.json (Finnish)
Update translations from Crowdin [ci skip]

* New translations en.json (Hebrew)
Update translations from Crowdin [ci skip]

* New translations en.json (Italian)
Update translations from Crowdin [ci skip]

* New translations en.json (Dutch)
Update translations from Crowdin [ci skip]

* New translations en.json (Polish)
Update translations from Crowdin [ci skip]

* New translations en.json (Russian)
Update translations from Crowdin [ci skip]

* New translations en.json (Swedish)
Update translations from Crowdin [ci skip]

* New translations en.json (Turkish)
Update translations from Crowdin [ci skip]

* New translations en.json (Ukrainian)
Update translations from Crowdin [ci skip]

* New translations en.json (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations en.json (Portuguese, Brazilian)
Update translations from Crowdin [ci skip]

* New translations en.json (Romanian)
Update translations from Crowdin [ci skip]

* New translations en.json (Persian)
Update translations from Crowdin [ci skip]

* New translations en.json (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (French)
Update translations from Crowdin [ci skip]

* New translations en.json (Romanian)
Update translations from Crowdin [ci skip]

* New translations en.json (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (Spanish)
Update translations from Crowdin [ci skip]

* New translations en.json (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations sharedresources.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations sharedresources.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations sharedresources.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (Italian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Italian)
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Italian)
Update translations from Crowdin [ci skip]

* New translations en.json (Italian)
Update translations from Crowdin [ci skip]

* New translations en.json (Dutch)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Dutch)
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Dutch)
Update translations from Crowdin [ci skip]

* New translations en.json (French)
Update translations from Crowdin [ci skip]

* New translations en.json (Spanish)
Update translations from Crowdin [ci skip]

* New translations en.json (Catalan)
Update translations from Crowdin [ci skip]

* New translations en.json (German)
Update translations from Crowdin [ci skip]

* New translations en.json (Finnish)
Update translations from Crowdin [ci skip]

* New translations en.json (Hebrew)
Update translations from Crowdin [ci skip]

* New translations en.json (Italian)
Update translations from Crowdin [ci skip]

* New translations en.json (Dutch)
Update translations from Crowdin [ci skip]

* New translations en.json (Polish)
Update translations from Crowdin [ci skip]

* New translations en.json (Russian)
Update translations from Crowdin [ci skip]

* New translations en.json (Swedish)
Update translations from Crowdin [ci skip]

* New translations en.json (Turkish)
Update translations from Crowdin [ci skip]

* New translations en.json (Ukrainian)
Update translations from Crowdin [ci skip]

* New translations en.json (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations en.json (Portuguese, Brazilian)
Update translations from Crowdin [ci skip]

* New translations en.json (Romanian)
Update translations from Crowdin [ci skip]

* New translations en.json (Persian)
Update translations from Crowdin [ci skip]

* New translations en.json (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations en.json (Italian)
Update translations from Crowdin [ci skip]

* New translations en.json (French)
Update translations from Crowdin [ci skip]

* New translations en.json (Romanian)
Update translations from Crowdin [ci skip]

* New translations en.json (Romanian)
Update translations from Crowdin [ci skip]

* New translations en.json (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (French)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Spanish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Catalan)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (German)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Finnish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Hebrew)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Italian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Dutch)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Polish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Russian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Swedish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Turkish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Ukrainian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Portuguese, Brazilian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Romanian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Persian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (French)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Spanish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Polish)
Update translations from Crowdin [ci skip]

* New translations en.json (Spanish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Romanian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations en.json (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations sharedresources.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations en.json (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations login.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations register.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations passwordstep.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations termsandconditionsstep.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations usernamestep.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations totpcodes.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations totpviewer.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations emailmodal.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations emailpreview.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations emailrow.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations recentemails.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations emaildomainfield.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations defaultpasswordsettings.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations passwordsettingspopup.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations activesessionssection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations deleteaccountsection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations passwordchangesection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations quickvaultunlocksection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations recentauthlogssection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations showrecoverycodes.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations twofactorauthenticationsection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations createnewidentitywidget.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations searchwidget.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations footer.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations topmenu.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations forgotpassword.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations logout.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations setup.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations start.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations unlock.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations addedit.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations delete.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations view.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations apps.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations general.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importexport.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations security.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations creating.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations errorvaultdecrypt.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations vaultdecryptionprogress.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations sync.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations welcome.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations apierrors.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations changepassword.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations deleteaccount.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations enable2fa.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations validationmessages.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations en.json (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations resetvault.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations resetvaultsection.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations disable2fa.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations infoplist.strings (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations strings.xml (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations localizable.strings (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations pendingmigrations.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations localizable.strings (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations clipboardcountdownbar.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations mobileunlockmodal.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations mobilelogin.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations mobilelogin.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations fieldblock.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations deletefoldermodal.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations foldermodal.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations editablefieldlabel.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations addfieldmenu.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations folderselector.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations itemtypeselector.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations recentlydeleted.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations fieldhistorymodal.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Russian)
Update translations from Crowdin [ci skip]

* New translations en.json (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations en.json (Russian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Russian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Russian)
Update translations from Crowdin [ci skip]

* New translations home.en.resx (Russian)
Update translations from Crowdin [ci skip]

* New translations en.json (Russian)
Update translations from Crowdin [ci skip]

* New translations strings.xml (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (French)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Spanish)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Catalan)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (German)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Finnish)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Hebrew)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Italian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Dutch)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Polish)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Russian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Swedish)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Turkish)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Ukrainian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Portuguese, Brazilian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Romanian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Persian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Urdu (Pakistan))
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Dutch)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Dutch)
Update translations from Crowdin [ci skip]

* New translations en.json (Dutch)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Romanian)
Update translations from Crowdin [ci skip]

* New translations en.json (Bulgarian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Polish)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Italian)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Italian)
Update translations from Crowdin [ci skip]

* New translations importservicecard.en.resx (Polish)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (French)
Update translations from Crowdin [ci skip]

* New translations importservices.en.resx (Russian)
Update translations from Crowdin [ci skip]
This commit is contained in:
Leendert de Borst
2026-02-09 13:54:59 +01:00
committed by GitHub
parent f9986894d1
commit fbb359c18d
294 changed files with 19311 additions and 772 deletions

View File

@@ -0,0 +1,521 @@
{
"auth": {
"loginTitle": "Log in to AliasVault",
"username": "Username or email",
"usernamePlaceholder": "name / name@company.com",
"passwordPlaceholder": "Enter your password",
"rememberMe": "Remember me",
"loginButton": "Log in",
"noAccount": "No account yet?",
"createVault": "Create new vault",
"twoFactorTitle": "Please enter the authentication code from your authenticator app.",
"authCode": "Authentication Code",
"authCodePlaceholder": "Enter 6-digit code",
"verify": "Провери",
"twoFactorNote": "Note: if you don't have access to your authenticator device, you can reset your 2FA with a recovery code by logging in via the website.",
"masterPassword": "Master Password",
"unlockVault": "Отключи",
"unlockWithPin": "Unlock with PIN",
"enterPinToUnlock": "Enter your PIN to unlock your vault",
"useMasterPassword": "Use Master Password",
"unlockTitle": "Unlock Your Vault",
"logoutConfirm": "Are you sure you want to logout?",
"unlockSuccessTitle": "Your vault is successfully unlocked",
"unlockSuccessDescription": "You can now use autofill in login forms in your browser.",
"closePopup": "Close this popup",
"browseVault": "Browse vault contents",
"connectingTo": "Connecting to",
"switchAccounts": "Switch accounts?",
"loginWithMobile": "Log in using Mobile App",
"unlockWithMobile": "Unlock using Mobile App",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault."
},
"menu": {
"vault": "Vault",
"emails": "Emails"
},
"common": {
"loading": "Loading...",
"notice": "Notice",
"error": "Error",
"cancel": "Cancel",
"confirm": "Confirm",
"back": "Back",
"next": "Next",
"use": "Use",
"add": "Add",
"delete": "Delete",
"undo": "Undo",
"save": "Save",
"saving": "Saving...",
"create": "Create",
"or": "Or",
"close": "Close",
"logout": "Logout",
"copied": "Copied!",
"openInNewWindow": "Open in new window",
"enabled": "Enabled",
"disabled": "Disabled",
"showPassword": "Show password",
"hidePassword": "Hide password",
"showDetails": "Show details",
"hideDetails": "Hide details",
"copyToClipboard": "Copy to clipboard",
"loadingEmails": "Loading emails...",
"loadingTotpCodes": "Loading TOTP codes...",
"attachments": "Attachments",
"loadingAttachments": "Loading attachments...",
"settings": "Settings",
"recentEmails": "Recent emails",
"credentials": "Credentials",
"customFields": "Custom Fields",
"twoFactorAuthentication": "Two-factor authentication",
"alias": "Alias",
"notes": "Notes",
"email": "Email",
"username": "Username",
"password": "Password",
"generate": "Generate",
"serviceName": "Service Name",
"loggedIn": "Logged in",
"syncingVault": "Syncing vault",
"checkingVaultUpdates": "Checking for vault updates",
"syncingUpdatedVault": "Syncing updated vault",
"loadMore": "Load more",
"offline": "Offline",
"offlineMode": "Operating in offline mode",
"pendingSync": "Syncing...",
"mergingVaultChanges": "Merging vault changes...",
"uploadingVault": "Uploading vault...",
"errors": {
"serverNotAvailable": "The AliasVault server is not available. Please try again later or contact support if the problem persists.",
"clientVersionNotSupported": "This version of the AliasVault browser extension is not supported by the server anymore. Please update your browser extension to the latest version.",
"browserExtensionOutdated": "This browser extension is outdated and cannot be used to access this vault. Please update this browser extension to continue.",
"serverVersionNotSupported": "The AliasVault server needs to be updated to a newer version in order to use this browser extension. Please contact support if you need help.",
"serverVersionTooOld": "The AliasVault server needs to be updated to a newer version in order to use this feature. Please contact the server admin if you need help.",
"unknownError": "An unknown error occurred",
"unknownErrorTryAgain": "An unknown error occurred. Please try again.",
"vaultNotAvailable": "Vault not available",
"vaultIsLocked": "Vault is locked",
"passwordChanged": "Your password has changed since the last time you logged in. Please login again for security reasons.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
"ACCOUNT_LOCKED": "Account temporarily locked due to too many failed attempts. Please try again later.",
"ACCOUNT_BLOCKED": "Your account has been disabled. If you believe this is a mistake, please contact support.",
"USER_NOT_FOUND": "Invalid username or password. Please try again.",
"INVALID_AUTHENTICATOR_CODE": "Invalid authenticator code. Please try again.",
"INVALID_RECOVERY_CODE": "Invalid recovery code. Please try again.",
"REFRESH_TOKEN_REQUIRED": "Refresh token is required.",
"INVALID_REFRESH_TOKEN": "Invalid refresh token.",
"PUBLIC_REGISTRATION_DISABLED": "New account registration is currently disabled on this server. Please contact the administrator.",
"USERNAME_REQUIRED": "Username is required.",
"USERNAME_ALREADY_IN_USE": "Username is already in use.",
"USERNAME_AVAILABLE": "Username is available.",
"USERNAME_MISMATCH": "Username does not match the current user.",
"PASSWORD_MISMATCH": "The provided password does not match your current password.",
"ACCOUNT_SUCCESSFULLY_DELETED": "Account successfully deleted.",
"USERNAME_EMPTY_OR_WHITESPACE": "Username cannot be empty or whitespace.",
"USERNAME_TOO_SHORT": "Username too short: must be at least 3 characters long.",
"USERNAME_TOO_LONG": "Username too long: cannot be longer than 40 characters.",
"USERNAME_INVALID_EMAIL": "Invalid email address.",
"USERNAME_INVALID_CHARACTERS": "Username is invalid, can only contain letters or digits.",
"VAULT_NOT_UP_TO_DATE": "Your vault is not up-to-date. Please synchronize your vault and try again.",
"INTERNAL_SERVER_ERROR": "Internal server error.",
"VAULT_ERROR": "The local vault is not up-to-date. Please synchronize your vault by refreshing the page and try again."
}
},
"content": {
"or": "or",
"new": "New",
"vaultLocked": "AliasVault is locked.",
"creatingNewAlias": "Creating new alias...",
"noMatchesFound": "No matches found",
"searchVault": "Search vault...",
"enterServiceName": "Enter service name",
"enterEmailAddress": "Enter email address",
"enterUsername": "Enter username",
"hideFor1Hour": "Hide for 1 hour (current site)",
"hidePermanently": "Hide permanently (current site)",
"createRandomAlias": "Create random alias",
"createUsernamePassword": "Create username/password",
"randomAlias": "Random alias",
"usernamePassword": "Username/password",
"createAndSaveAlias": "Create and save alias",
"createAndSaveCredential": "Create and save credential",
"randomIdentityDescription": "Generate a random identity with a random email address accessible in AliasVault.",
"randomIdentityDescriptionDropdown": "Random identity with random email",
"manualCredentialDescription": "Specify your own email address and username.",
"manualCredentialDescriptionDropdown": "Manual username and password",
"failedToCreateIdentity": "Failed to create identity. Please try again.",
"enterEmailAndOrUsername": "Enter email and/or username",
"autofillWithAliasVault": "Autofill with AliasVault",
"generateRandomPassword": "Generate random password (copy to clipboard)",
"generateNewPassword": "Generate new password",
"togglePasswordVisibility": "Toggle password visibility",
"passwordCopiedToClipboard": "Password copied to clipboard",
"openAliasVaultToUpgrade": "Open AliasVault to upgrade",
"vaultUpgradeRequired": "Vault upgrade required.",
"dismissPopup": "Dismiss popup"
},
"items": {
"title": "Items",
"itemName": "Name",
"loginCredentials": "Login Credentials",
"cardInformation": "Card Information",
"addItem": "Add Item",
"addNewItem": "Add new item",
"saveItem": "Save Item",
"itemDetails": "Item Details",
"editItem": "Edit Item",
"untitled": "Untitled",
"newFolder": "New Folder",
"createFolder": "Create Folder",
"editFolder": "Edit Folder",
"folderName": "Folder Name",
"folderNameRequired": "Folder name is required",
"folder": "Folder",
"welcomeTitle": "Welcome to AliasVault!",
"welcomeDescription": "To use the AliasVault browser extension: navigate to a website and use the AliasVault autofill popup to create a new credential.",
"noPasskeysFound": "No passkeys have been created yet. Passkeys are created by visiting a website that offers passkeys as an authentication method.",
"noAttachmentsFound": "No items with attachments found",
"noItemsOfTypeFound": "No {{type}} items found",
"noMatchingItems": "No matching items found",
"noMatchingItemsSearch": "No items matching \"{{search}}\"",
"noMatchingItemsWithFilter": "No {{filter}} items matching \"{{search}}\"",
"clearSearch": "Clear search",
"clearFilter": "Clear filter",
"emptyFolderHint": "This folder is empty. To move items to this folder, edit the item and tap the folder icon in the name field.",
"allItemsInFolders": "All your items are organized in folders. Click a folder above to view your credentials, or use the search to find specific items.",
"deleteFolder": "Delete Folder",
"deleteFolderKeepItems": "Delete folder only",
"deleteFolderKeepItemsDescription": "Items will be moved back to the main list.",
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
},
"deleteItemTitle": "Delete Item",
"deleteItemConfirm": "Are you sure you want to delete this item?",
"viewHistory": "View history",
"history": "History",
"noHistoryAvailable": "No history available",
"tags": "Tags",
"changePasswordComplexity": "Change password complexity",
"passwordLength": "Password length",
"includeLowercase": "Include lowercase letters",
"includeUppercase": "Include uppercase letters",
"includeNumbers": "Include numbers",
"includeSpecialChars": "Include special characters",
"avoidAmbiguousChars": "Avoid ambiguous characters (o, 0, etc.)",
"privateEmailTitle": "Private Email",
"privateEmailAliasVaultServer": "AliasVault server",
"privateEmailDescription": "E2E encrypted, fully private.",
"publicEmailTitle": "Public Temp Email Providers",
"publicEmailDescription": "Anonymous but limited privacy. Email content is readable by anyone that knows the address.",
"validation": {
"required": "This field is required"
}
},
"itemTypes": {
"selectType": "Add New Item",
"typeLabel": "Item Type",
"creating": "Creating",
"editing": "Editing",
"regenerateAlias": "Regenerate alias",
"addCustomField": "Add custom field",
"fieldLabel": "Field Label",
"enterFieldName": "Enter field name",
"fieldType": "Field Type",
"fieldTypes": {
"text": "Text",
"hidden": "Hidden (masked text)",
"email": "Email",
"url": "URL",
"phone": "Phone",
"number": "Number",
"date": "Date",
"textArea": "Text Area"
},
"login": {
"title": "Login"
},
"alias": {
"title": "Alias"
},
"creditCard": {
"title": "Credit Card"
},
"note": {
"title": "Secure Note"
}
},
"fieldLabels": {
"login.url": "Website URL",
"login.username": "Username",
"login.password": "Password",
"alias.first_name": "First Name",
"alias.last_name": "Last Name",
"alias.gender": "Gender",
"alias.birthdate": "Birthdate",
"login.email": "Email",
"notes.content": "Notes",
"card.cardholder_name": "Cardholder Name",
"card.number": "Card Number",
"card.expiry_month": "Expiry Month",
"card.expiry_year": "Expiry Year",
"card.cvv": "CVV",
"card.pin": "PIN"
},
"totp": {
"addCode": "Add 2FA Code",
"instructions": "Enter the secret key shown by the website where you want to add two-factor authentication.",
"nameOptional": "Name (optional)",
"secretKey": "Secret Key",
"saveToViewCode": "Save to view code",
"defaultName": "Authenticator",
"errors": {
"invalidSecretKey": "Invalid secret key format."
}
},
"attachmentUploader": {
"uploading": "Uploading...",
"uploadSuccess": "Files uploaded successfully.",
"deleteSuccess": "Attachment deleted successfully.",
"firefoxExpandRequired": "To upload files, use the expanded window.",
"openExpandedWindow": "Open Expanded Window"
},
"emails": {
"title": "Emails",
"deleteEmailTitle": "Delete Email",
"deleteEmailConfirm": "Are you sure you want to permanently delete this email?",
"from": "From",
"to": "To",
"date": "Date",
"emailContent": "Email content",
"emailNotFound": "Email not found",
"noEmails": "No emails found",
"noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.",
"offlineMessage": "You are offline. Please connect to the internet to load your emails.",
"dateFormat": {
"justNow": "just now",
"minutesAgo_single": "{{count}} min ago",
"minutesAgo_plural": "{{count}} mins ago",
"hoursAgo_single": "{{count}} hr ago",
"hoursAgo_plural": "{{count}} hrs ago",
"yesterday": "yesterday"
},
"apiErrors": {
"CLAIM_DOES_NOT_MATCH_USER": "The current chosen email address is already in use. Please change the email address by editing this credential.",
"CLAIM_DOES_NOT_EXIST": "An error occurred while trying to load the emails. Please try to edit and save the credential entry to synchronize the database, then try again."
}
},
"settings": {
"serverUrl": "Server URL",
"language": "Language",
"autofillEnabled": "Enable Autofill",
"version": "Version",
"openWebApp": "Open web app",
"lock": "Lock",
"globalSettings": "Global Settings",
"autofillPopup": "Autofill popup",
"activeOnAllSites": "Active on all sites (unless disabled below)",
"disabledOnAllSites": "Disabled on all sites",
"rightClickContextMenu": "Right-click context menu",
"autofillMatching": "Autofill Matching",
"autofillMatchingMode": "Autofill matching mode",
"autofillMatchingModeDescription": "Determines which credentials are considered a match and shown as suggestions in the autofill popup for a given website.",
"autofillMatchingDefault": "URL + subdomain + name wildcard",
"autofillMatchingUrlSubdomain": "URL + subdomain",
"autofillMatchingUrlExact": "Exact URL domain only",
"siteSpecificSettings": "Site-Specific Settings",
"autofillPopupOn": "Autofill popup on: ",
"enabledForThisSite": "Enabled for this site",
"disabledForThisSite": "Disabled for this site",
"temporarilyDisabledUntil": "Temporarily disabled until ",
"resetAllSiteSettings": "Reset all site-specific settings",
"appearance": "Appearance",
"theme": "Theme",
"useDefault": "Use default",
"light": "Light",
"dark": "Dark",
"keyboardShortcuts": "Keyboard Shortcuts",
"configureKeyboardShortcuts": "Configure keyboard shortcuts",
"configure": "Configure",
"clipboardClearTimeout": "Clear clipboard after copying",
"clipboardClearTimeoutDescription": "Automatically clear the clipboard after copying sensitive data",
"clipboardClearDisabled": "Never clear",
"clipboardClear5Seconds": "Clear after 5 seconds",
"clipboardClear10Seconds": "Clear after 10 seconds",
"clipboardClear15Seconds": "Clear after 15 seconds",
"autoLockTimeout": "Auto-lock Timeout",
"autoLockTimeoutDescription": "Automatically lock the vault after a period of inactivity",
"autoLockTimeoutHelp": "The vault will only lock after the specified period of inactivity (no autofill usage or extension popup opened). The vault will always lock when the browser is closed, regardless of this setting.",
"autoLockNever": "Never",
"autoLock15Seconds": "15 seconds",
"autoLock1Minute": "1 minute",
"autoLock5Minutes": "5 minutes",
"autoLock15Minutes": "15 minutes",
"autoLock30Minutes": "30 minutes",
"autoLock1Hour": "1 hour",
"autoLock4Hours": "4 hours",
"autoLock8Hours": "8 hours",
"autoLock24Hours": "24 hours",
"versionPrefix": "Version ",
"autofillSettings": "Autofill Settings",
"clipboardSettings": "Clipboard Settings",
"contextMenuSettings": "Context Menu Settings",
"passkeySettings": "Passkey Settings",
"contextMenu": "Context Menu",
"contextMenuEnabled": "Context menu is enabled",
"contextMenuDisabled": "Context menu is disabled",
"contextMenuDescription": "Right-click on input fields to access AliasVault options",
"selectLanguage": "Select Language",
"serverConfiguration": "Server Configuration",
"serverConfigurationDescription": "Configure the AliasVault server URL for self-hosted instances",
"customApiUrl": "API URL",
"customClientUrl": "Client URL",
"apiUrlHint": "The API endpoint URL (usually client URL + /api)",
"clientUrlHint": "The web interface URL of your self-hosted instance",
"autofillSettingsDescription": "Enable or disable the autofill popup on web pages",
"autofillEnabledDescription": "Autofill suggestions will appear on login forms",
"autofillDisabledDescription": "Autofill suggestions are disabled globally",
"languageSettings": "Language",
"validation": {
"apiUrlRequired": "API URL is required",
"apiUrlInvalid": "Please enter a valid API URL",
"clientUrlRequired": "Client URL is required",
"clientUrlInvalid": "Please enter a valid client URL"
},
"identityGenerator": "Identity Generator",
"identityGeneratorSettings": {
"description": "Configure the default language and gender preference for generating new identities.",
"languageSection": "Language",
"languageDescription": "Set the language that will be used when generating new identities.",
"genderSection": "Gender",
"genderDescription": "Set the gender preference for generating new identities.",
"ageRangeSection": "Age Range",
"ageRangeDescription": "Set the age range for generating new identities.",
"genderOptions": {
"random": "Random",
"male": "Male",
"female": "Female"
}
},
"unlockMethod": {
"title": "Vault Unlock Method",
"introText": "Choose how you want to unlock your vault. You can use your master password (always available) or set up a PIN code for faster access. After 3 failed PIN attempts, you'll need to use your master password.",
"password": "Master Password",
"pin": "PIN Code",
"pinDescription": "Unlock vault with PIN code",
"setupPin": "Setup PIN Code",
"enterNewPinDescription": "Enter a PIN code consisting of minimum 6 digits",
"confirmPin": "Confirm PIN",
"confirmPinDescription": "Enter your PIN again to confirm",
"invalidPinFormat": "Invalid PIN format",
"pinMismatch": "PINs do not match",
"incorrectPin": "Incorrect PIN. {{attemptsRemaining}} attempts remaining.",
"incorrectPinSingular": "Incorrect PIN. 1 attempt remaining.",
"enableSuccess": "PIN unlock enabled successfully!",
"pinLocked": "PIN unlock has been disabled. Please use your master password to unlock your vault.",
"pinSecurityWarning": "PIN unlock in the browser extension can be less secure than your master password, as PINs typically have lower entropy and may be brute-forced if your device is compromised. Use it only on devices you fully trust."
}
},
"passkeys": {
"passkey": "Passkey",
"site": "Site",
"helpText": "Passkeys are created on the website when prompted. They cannot be manually edited. To remove this passkey, you can delete it from this credential. To replace this passkey or create a new one, visit the website and follow its prompts.",
"passkeyMarkedForDeletion": "Passkey marked for deletion",
"passkeyWillBeDeleted": "This passkey will be deleted when you save this credential.",
"useBrowserPasskey": "Use Browser Passkey",
"bypass": {
"description": "How long would you like to use the browser's passkey provider for {{origin}}?",
"thisTimeOnly": "This time only",
"alwaysForSite": "Always for this site"
},
"authenticate": {
"title": "Sign in with Passkey",
"signInFor": "Sign in with passkey for",
"selectPasskey": "Select a passkey to sign in:",
"noPasskeysFound": "No passkeys found for this site"
},
"create": {
"title": "Create Passkey",
"createFor": "Create a new passkey for",
"titleLabel": "Title",
"titlePlaceholder": "Enter a name for this passkey",
"createButton": "Create Passkey",
"selectPasskeyToReplace": "Select a passkey to replace:",
"createNewPasskey": "Create New Passkey",
"replacingPasskey": "Replacing passkey: {{displayName}}",
"confirmReplace": "Confirm Replace",
"selectExistingLogin": "Add to existing login:",
"selectExistingLoginDescription": "Attach this passkey to an existing login credential for this site.",
"attachingToCredential": "Adding passkey to: {{serviceName}}",
"attachPasskey": "Add Passkey"
},
"settings": {
"passkeyProvider": "Passkey Provider",
"passkeyProviderOn": "Passkey Provider on "
}
},
"recentlyDeleted": {
"title": "Recently Deleted",
"noItems": "No deleted items",
"noItemsDescription": "Items you delete will appear here for 30 days before being permanently removed.",
"description": "These items will be permanently deleted after 30 days. You can restore them or delete them immediately.",
"restore": "Restore",
"deletePermanently": "Delete Permanently",
"emptyAll": "Empty All",
"daysRemaining_one": "{{count}} day remaining",
"daysRemaining_other": "{{count}} days remaining",
"expiringSoon": "Expiring soon",
"confirmDeleteTitle": "Delete Permanently?",
"confirmDeleteMessage": "This item will be permanently deleted and cannot be recovered.",
"confirmEmptyAllTitle": "Empty Recently Deleted?",
"confirmEmptyAllMessage": "All {{count}} items will be permanently deleted and cannot be recovered."
},
"upgrade": {
"title": "Upgrade Vault",
"subtitle": "AliasVault has updated and your vault needs to be upgraded. This should only take a few seconds.",
"versionInformation": "Version Information",
"yourVault": "Your vault version:",
"newVersion": "New available version:",
"upgrade": "Upgrade Vault",
"upgrading": "Upgrading...",
"whatsNew": "What's New",
"whatsNewDescription": "An upgrade is required to support the following changes:",
"noDescriptionAvailable": "No description available for this version.",
"alerts": {
"unableToGetVersionInfo": "Unable to get version information. Please try again.",
"selfHostedServer": "Self-Hosted Server",
"selfHostedWarning": "If you're using a self-hosted server, make sure to also update your self-hosted instance as otherwise logging in to the web client will stop working.",
"continueUpgrade": "Continue Upgrade",
"upgradeFailed": "Upgrade Failed",
"failedToApplyMigration": "Failed to apply migration ({{current}} of {{total}})"
}
},
"logout": {
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Switch accounts?",
"loginWithMobile": "Log in using Mobile App",
"unlockWithMobile": "Unlock using Mobile App",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault.",
"errors": {
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
}
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault."
},
"menu": {
"vault": "Vault",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Vault is locked",
"passwordChanged": "Your password has changed since the last time you logged in. Please login again for security reasons.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again."
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(All) Items",
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Konto wechseln?",
"loginWithMobile": "Mit mobiler App anmelden",
"unlockWithMobile": "Mit mobiler App entsperren",
"scanQrCode": "Scanne diesen QR-Code mit Deiner AliasVault-App, um Dich anzumelden und Deinen Tresor zu entsperren.",
"errors": {
"invalidCode": "Bitte gib einen gültigen 6-stelligen Sicherheits-Code ein.",
"serverError": "Der AliasVault-Server konnte nicht erreicht werden. Bitte versuche es später noch einmal oder kontaktiere den Support, falls das Problem weiterhin besteht.",
"wrongPassword": "Falsches Passwort. Bitte versuche es erneut.",
"sessionExpired": "Deine Sitzung ist abgelaufen. Bitte melde Dich erneut an.",
"mobileLoginRequestExpired": "Zeitüberschreitung für mobile Anmeldeanforderungen. Bitte lade die Seite neu und versuche es erneut."
}
"scanQrCode": "Scanne diesen QR-Code mit Deiner AliasVault-App, um Dich anzumelden und Deinen Tresor zu entsperren."
},
"menu": {
"vault": "Tresor",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Der Tresor ist gesperrt.",
"passwordChanged": "Dein Passwort hat sich seit Deiner letzten Anmeldung geändert. Bitte melden Dich aus Sicherheitsgründen erneut an.",
"syncConflictMaxRetries": "Tresor konnte nach mehreren Versuchen nicht synchronisiert werden. Bitte versuche es später erneut.",
"mergeFailed": "Fehler beim Zusammenführen der Tresoränderungen. Bitte versuchen Sie es erneut."
"mergeFailed": "Fehler beim Zusammenführen der Tresoränderungen. Bitte versuchen Sie es erneut.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "Ein unbekannter Fehler ist aufgetreten. Bitte versuche es erneut.",
@@ -197,12 +195,12 @@
"emptyFolderHint": "Dieser Ordner ist leer. Um Elemente in diesen Ordner zu verschieben, bearbeiten Sie das Element und wählen Sie diesen Ordner.",
"allItemsInFolders": "Alle Ihre Einträge sind in Ordnern organisiert. Tippen Sie auf einen Ordner oben, um Ihre Anmeldedaten anzuzeigen, oder verwenden Sie die Suche, um bestimmte Einträge zu finden.",
"deleteFolder": "Ordner löschen",
"deleteFolderKeepItems": "Delete folder only",
"deleteFolderKeepItems": "Nur Ordner löschen",
"deleteFolderKeepItemsDescription": "Items will be moved back to the main list.",
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItems": "Ordner und alle Einträge löschen",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(Alle) Elemente",
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
@@ -234,18 +232,18 @@
}
},
"itemTypes": {
"selectType": "Add New Item",
"selectType": "Neuen Eintrag hinzufügen",
"typeLabel": "Item Type",
"creating": "Wird erstellt",
"editing": "Bearbeiten",
"regenerateAlias": "Regenerate alias",
"addCustomField": "Add custom field",
"regenerateAlias": "Alias neu generieren",
"addCustomField": "Benutzerdefiniertes Feld hinzufügen",
"fieldLabel": "Feldbezeichnung",
"enterFieldName": "Feldnamen eingeben",
"fieldType": "Feldtyp",
"fieldTypes": {
"text": "Text",
"hidden": "Hidden (masked text)",
"hidden": "Versteckt (versteckter Text)",
"email": "E-Mail",
"url": "URL",
"phone": "Telefon",
@@ -263,7 +261,7 @@
"title": "Kreditkarte"
},
"note": {
"title": "Secure Note"
"title": "Sichere Notiz"
}
},
"fieldLabels": {
@@ -295,7 +293,7 @@
}
},
"attachmentUploader": {
"uploading": "Uploading...",
"uploading": "Hochladen...",
"uploadSuccess": "Files uploaded successfully.",
"deleteSuccess": "Attachment deleted successfully.",
"firefoxExpandRequired": "To upload files, use the expanded window.",
@@ -467,8 +465,8 @@
"confirmReplace": "Ersetzen bestätigen",
"selectExistingLogin": "Add to existing login:",
"selectExistingLoginDescription": "Attach this passkey to an existing login credential for this site.",
"attachingToCredential": "Adding passkey to: {{serviceName}}",
"attachPasskey": "Add Passkey"
"attachingToCredential": "Passkey zu {{serviceName}} hinzufügen",
"attachPasskey": "Passkey hinzufügen"
},
"settings": {
"passkeyProvider": "Passkey-Anbieter",
@@ -476,12 +474,12 @@
}
},
"recentlyDeleted": {
"title": "Recently Deleted",
"noItems": "No deleted items",
"noItemsDescription": "Items you delete will appear here for 30 days before being permanently removed.",
"title": "Kürzlich gelöscht",
"noItems": "Keine gelöschten Elemente",
"noItemsDescription": "Elemente, die du löscht, werden hier 30 Tage lang erscheinen, bevor sie endgültig entfernt werden.",
"description": "These items will be permanently deleted after 30 days. You can restore them or delete them immediately.",
"restore": "Restore",
"deletePermanently": "Delete Permanently",
"deletePermanently": "Dauerhaft löschen",
"emptyAll": "Empty All",
"daysRemaining_one": "{{count}} day remaining",
"daysRemaining_other": "Noch {{count}} Tage",
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Nicht synchronisierte Änderungen",
"unsyncedChangesWarning": "Sie haben nicht synchronisierte Änderungen, die verloren gehen, wenn Sie sich jetzt abmelden. Sind Sie sicher, dass Sie fortfahren möchten?",
"logoutAnyway": "Trotzdem abmelden"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "¿Cambiar de cuenta?",
"loginWithMobile": "Iniciar sesión con la aplicación móvil",
"unlockWithMobile": "Desbloquear con la aplicación móvil",
"scanQrCode": "Escanea este código QR con tu aplicación móvil de AliasVault para iniciar sesión y desbloquear tu bóveda.",
"errors": {
"invalidCode": "Por favor, introduzca un código de autenticación de 6 dígitos válido.",
"serverError": "No se pudo llegar al servidor AliasVault. Por favor, inténtelo de nuevo más tarde o póngase en contacto con el soporte si el problema persiste.",
"wrongPassword": "Contraseña incorrecta. Por favor, inténtelo de nuevo.",
"sessionExpired": "Su sesión ha caducado. Por favor, inicie sesión de nuevo.",
"mobileLoginRequestExpired": "Se ha agotado el tiempo de inicio de sesión del móvil. Por favor, vuelva a cargar la página e inténtelo de nuevo."
}
"scanQrCode": "Escanea este código QR con tu aplicación móvil de AliasVault para iniciar sesión y desbloquear tu bóveda."
},
"menu": {
"vault": "Bóveda",
@@ -106,7 +99,12 @@
"vaultIsLocked": "La bóveda está bloqueada",
"passwordChanged": "Tu contraseña ha cambiado desde la última vez que iniciaste sesión. Por favor, inicia sesión de nuevo por razones de seguridad.",
"syncConflictMaxRetries": "No se pudo sincronizar la bóveda después de múltiples intentos. Inténtalo de nuevo más tarde.",
"mergeFailed": "Error al combinar cambios en la bóveda. Por favor, inténtalo de nuevo."
"mergeFailed": "Error al combinar cambios en la bóveda. Por favor, inténtalo de nuevo.",
"invalidCode": "Por favor, introduzca un código de autenticación de 6 dígitos válido.",
"serverError": "No se pudo llegar al servidor AliasVault. Por favor, inténtelo de nuevo más tarde o póngase en contacto con el soporte si el problema persiste.",
"wrongPassword": "Contraseña incorrecta. Por favor, inténtelo de nuevo.",
"sessionExpired": "Su sesión ha caducado. Por favor, inicie sesión de nuevo.",
"mobileLoginRequestExpired": "Se ha agotado el tiempo de inicio de sesión del móvil. Por favor, vuelva a cargar la página e inténtelo de nuevo."
},
"apiErrors": {
"UNKNOWN_ERROR": "Se ha producido un error desconocido. Por favor, inténtelo de nuevo.",
@@ -202,14 +200,14 @@
"deleteFolderAndItems": "Eliminar carpeta y todos los elementos",
"deleteFolderAndItemsDescription": "{{count}} elemento(s) serán movidos a Borrados Recientemente.",
"filters": {
"all": "(Todos) Elementos",
"folders": "Carpetas",
"passkeys": "Llaves de acceso"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Ordenar por",
"oldestFirst": "Más antiguos primero",
"newestFirst": "Más nuevos primero",
"alphabetical": "Alfabéticamente (A-Z)"
},
"deleteItemTitle": "Eliminar elemento",
"deleteItemConfirm": "¿Está seguro de querer borrar este ítem?",
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Cambios no sincronizados",
"unsyncedChangesWarning": "Tienes cambios no sincronizados que se perderán si te desconectas ahora. ¿Estás seguro de que quieres continuar?",
"logoutAnyway": "Cerrar sesión de todos modos"
},
"sync": {
"offline": "Sin conexión",
"tapToRetry": "Toca para reintentar sincronizar"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Switch accounts?",
"loginWithMobile": "Log in using Mobile App",
"unlockWithMobile": "Unlock using Mobile App",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault.",
"errors": {
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
}
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault."
},
"menu": {
"vault": "Vault",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Vault is locked",
"passwordChanged": "Your password has changed since the last time you logged in. Please login again for security reasons.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again."
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(All) Items",
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Vaihdetaanko tiliä?",
"loginWithMobile": "Kirjaudu sisään mobiilisovelluksella",
"unlockWithMobile": "Avaa käyttämällä mobiilisovellusta",
"scanQrCode": "Skannaa tämä QR-koodi AliasVault-mobiilisovelluksellasi kirjautuaksesi sisään ja avataksesi holvisi.",
"errors": {
"invalidCode": "Syötä kelvollinen 6-numeroinen tunnistautumiskoodi.",
"serverError": "AliasVault-palvelimeen ei saatu yhteyttä. Yritä myöhemmin uudelleen tai ota yhteyttä tukeen, jos ongelma jatkuu.",
"wrongPassword": "Virheellinen salasana. Yritä uudelleen.",
"sessionExpired": "Istuntosi on vanhentunut. Kirjaudu sisään uudelleen.",
"mobileLoginRequestExpired": "Mobiilikirjautumispyyntö aikakatkaistiin. Lataa sivu uudelleen ja yritä uudelleen."
}
"scanQrCode": "Skannaa tämä QR-koodi AliasVault-mobiilisovelluksellasi kirjautuaksesi sisään ja avataksesi holvisi."
},
"menu": {
"vault": "Holvi",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Holvi on lukittu",
"passwordChanged": "Salasanasi on muuttunut edellisen sisäänkirjautumisen jälkeen. Kirjaudu sisään uudelleen turvallisuussyistä.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again."
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "Tapahtui tuntematon virhe. Yritä uudelleen.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(Kaikki) tiedot",
"folders": "Folders",
"passkeys": "Sala-avaimet"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Synkronoimattomat muutokset",
"unsyncedChangesWarning": "Sinulla on synkronoimattomia muutoksia, jotka menetetään, jos kirjaudut ulos nyt. Oletko varma, että haluat jatkaa?",
"logoutAnyway": "Kirjaudu ulos joka tapauksessa"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Changer de compte ?",
"loginWithMobile": "Se connecter à l'aide de l'application mobile",
"unlockWithMobile": "Déverrouiller en utilisant l'application mobile",
"scanQrCode": "Scannez ce code QR avec votre application mobile AliasVault pour vous connecter et déverrouiller votre coffre.",
"errors": {
"invalidCode": "Veuillez entrer un code d'authentification valide à 6 chiffres.",
"serverError": "Impossible d'accéder au serveur AliasVault. Veuillez réessayer plus tard ou contacter le support si le problème persiste.",
"wrongPassword": "Mot de passe incorrect, veuillez réessayer.",
"sessionExpired": "Votre session a expiré. Veuillez vous reconnecter.",
"mobileLoginRequestExpired": "La demande de connexion de l'application mobile a expiré. Veuillez recharger la page et réessayer."
}
"scanQrCode": "Scannez ce code QR avec votre application mobile AliasVault pour vous connecter et déverrouiller votre coffre."
},
"menu": {
"vault": "Coffre-fort",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Le coffre est verrouillé",
"passwordChanged": "Votre mot de passe a changé depuis la dernière fois que vous vous êtes connecté. Veuillez vous reconnecter pour des raisons de sécurité.",
"syncConflictMaxRetries": "Impossible de synchroniser le coffre après plusieurs tentatives. Veuillez réessayer plus tard.",
"mergeFailed": "Impossible de fusionner les modifications du coffre. Veuillez réessayer."
"mergeFailed": "Impossible de fusionner les modifications du coffre. Veuillez réessayer.",
"invalidCode": "Veuillez entrer un code d'authentification valide à 6 chiffres.",
"serverError": "Impossible d'accéder au serveur AliasVault. Veuillez réessayer plus tard ou contacter le support si le problème persiste.",
"wrongPassword": "Mot de passe incorrect, veuillez réessayer.",
"sessionExpired": "Votre session a expiré. Veuillez vous reconnecter.",
"mobileLoginRequestExpired": "La demande de connexion de l'application mobile a expiré. Veuillez recharger la page et réessayer."
},
"apiErrors": {
"UNKNOWN_ERROR": "Une erreur inconnue s'est produite. Merci de réessayer.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Supprimer le dossier et tous les éléments",
"deleteFolderAndItemsDescription": "{{count}} élément(s) vont être déplacés vers Récemment supprimés.",
"filters": {
"all": "(Tous) Éléments",
"folders": "Dossiers",
"passkeys": "Clés d'accès"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Changements non synchronisés",
"unsyncedChangesWarning": "Vous avez des modifications non synchronisées qui seront perdues si vous vous déconnectez maintenant. Êtes-vous sûr de vouloir continuer ?",
"logoutAnyway": "Se déconnecter quand même"
},
"sync": {
"offline": "Hors ligne",
"tapToRetry": "Appuyez pour réessayer"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "להחליף חשבונות?",
"loginWithMobile": "Log in using Mobile App",
"unlockWithMobile": "Unlock using Mobile App",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault.",
"errors": {
"invalidCode": "נא למלא קוד אימות באורך 6 ספרות.",
"serverError": "לא ניתן ליצור קשר עם השרת של AliasVault. נא לנסות שוב מאוחר יותר או ליצור קשר עם התמיכה אם הבעיה נשנית.",
"wrongPassword": "סיסמה שגויה. נא לנסות שוב.",
"sessionExpired": "תוקף ההפעלה שלך פג. נא להיכנס מחדש.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
}
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault."
},
"menu": {
"vault": "Vault",
@@ -106,7 +99,12 @@
"vaultIsLocked": "הכספת נעולה",
"passwordChanged": "הסיסמה שלך השתנתה מאז הפעם האחרונה שנכנסת למערכת. נא להיכנס שוב מטעמי אבטחת מידע.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again."
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "אירעה שגיאה לא ידועה, נא לנסות שוב.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(All) Items",
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Cambia account",
"loginWithMobile": "Accedi con l'App Mobile",
"unlockWithMobile": "Sblocca con l'App Mobile",
"scanQrCode": "Scansiona questo codice QR con l'app mobile di AliasVault per accedere e sbloccare la cassaforte.",
"errors": {
"invalidCode": "Inserisci un codice di autenticazione a 6 cifre valido.",
"serverError": "Impossibile connettersi al server di AliasVault. Riprova più tardi o contatta il supporto se il problema persiste.",
"wrongPassword": "Password non corretta. Riprova nuovamente.",
"sessionExpired": "La tua sessione è scaduta. Effettua di nuovo il login.",
"mobileLoginRequestExpired": "Richiesta di accesso mobile scaduta. Per favore ricarica la pagina e riprova."
}
"scanQrCode": "Scansiona questo codice QR con l'app mobile di AliasVault per accedere e sbloccare la cassaforte."
},
"menu": {
"vault": "Cassaforte",
@@ -106,7 +99,12 @@
"vaultIsLocked": "La cassaforte è bloccata",
"passwordChanged": "La tua password è cambiata dall'ultima volta che hai effettuato l'accesso. Effettua nuovamente l'accesso per motivi di sicurezza.",
"syncConflictMaxRetries": "Impossibile sincronizzare la cassaforte dopo più tentativi. Riprova più tardi.",
"mergeFailed": "Sincronizzazione della cassaforte non riuscita. Riprovare."
"mergeFailed": "Sincronizzazione della cassaforte non riuscita. Riprovare.",
"invalidCode": "Inserisci un codice di autenticazione a 6 cifre valido.",
"serverError": "Impossibile raggiungere il server AliasVault. Riprova più tardi o contatta il supporto se il problema persiste.",
"wrongPassword": "Password errata. Riprovare.",
"sessionExpired": "La tua sessione è scaduta. Effettua di nuovo il login.",
"mobileLoginRequestExpired": "Richiesta di accesso mobile scaduta. Ricarica la pagina e riprova."
},
"apiErrors": {
"UNKNOWN_ERROR": "Si è verificato un errore sconosciuto. Riprova.",
@@ -202,14 +200,14 @@
"deleteFolderAndItems": "Elimina cartella e tutti gli elementi",
"deleteFolderAndItemsDescription": "{{count}} oggetto(i) verrà spostato in Eliminato Recentemente.",
"filters": {
"all": "(Tutti) Elementi",
"folders": "Cartelle",
"passkeys": "Passkey"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Ordina per",
"oldestFirst": "Prima i più vecchi",
"newestFirst": "Prima i più recenti",
"alphabetical": "Alfabetico (A-Z)"
},
"deleteItemTitle": "Elimina elemento",
"deleteItemConfirm": "Sei sicuro di voler rimuovere questo elemento?",
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Modifiche non Sincronizzate",
"unsyncedChangesWarning": "Hai delle modifiche non sincronizzate che andranno perse se ti disconnetti ora. Sei sicuro di voler continuare?",
"logoutAnyway": "Esci comunque"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tocca per riprovare la sincronizzazione"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Wisselen van account?",
"loginWithMobile": "Log in via de mobiele app",
"unlockWithMobile": "Ontgrendel met mobiele app",
"scanQrCode": "Scan deze QR-code met de AliasVault mobiele app om in te loggen en je kluis te ontgrendelen.",
"errors": {
"invalidCode": "Voer een geldige 6-cijferige code in.",
"serverError": "Kon de AliasVault server niet bereiken. Probeer het later opnieuw of neem contact op met support als het probleem aanhoudt.",
"wrongPassword": "Onjuist wachtwoord. Probeer het opnieuw.",
"sessionExpired": "Je sessie is verlopen. Log opnieuw in.",
"mobileLoginRequestExpired": "Time-out van de mobiele inlogaanvraag. Herlaad de pagina en probeer opnieuw."
}
"scanQrCode": "Scan deze QR-code met de AliasVault mobiele app om in te loggen en je kluis te ontgrendelen."
},
"menu": {
"vault": "Vault",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Vault is vergrendeld",
"passwordChanged": "Je wachtwoord is veranderd sinds de laatste keer dat je bent ingelogd. Log opnieuw in.",
"syncConflictMaxRetries": "Kan de vault niet synchroniseren na meerdere pogingen. Probeer het later opnieuw.",
"mergeFailed": "Samenvoegen vault wijzigingen mislukt. Probeer het opnieuw."
"mergeFailed": "Samenvoegen vault wijzigingen mislukt. Probeer het opnieuw.",
"invalidCode": "Voer een geldige 6-cijferige code in.",
"serverError": "Kon de AliasVault server niet bereiken. Probeer het later opnieuw of neem contact op met support als het probleem aanhoudt.",
"wrongPassword": "Onjuist wachtwoord. Probeer het opnieuw.",
"sessionExpired": "Je sessie is verlopen. Log opnieuw in.",
"mobileLoginRequestExpired": "De QR-code is verlopen. Herlaad de pagina en probeer opnieuw."
},
"apiErrors": {
"UNKNOWN_ERROR": "Er is een onbekende fout opgetreden. Probeer het opnieuw.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Verwijder map en alle items",
"deleteFolderAndItemsDescription": "{{count}} item(s) zullen worden verplaatst naar recent verwijderd.",
"filters": {
"all": "(Alle) Items",
"folders": "Mappen",
"passkeys": "Passkeys"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Niet-gesynchroniseerde wijzigingen",
"unsyncedChangesWarning": "Er zijn niet gesynchroniseerde wijzigingen die verloren zullen gaan als je nu uitlogt. Weet je zeker dat je wilt doorgaan?",
"logoutAnyway": "Toch uitloggen"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Probeer sync opnieuw"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Przełącz konto",
"loginWithMobile": "Zaloguj się za pomocą aplikacji mobilnej",
"unlockWithMobile": "Odblokuj za pomocą aplikacji mobilnej",
"scanQrCode": "Zeskanuj ten kod QR za pomocą aplikacji mobilnej AliasVault, aby się zalogować i odblokować sejf.",
"errors": {
"invalidCode": "Wprowadź prawidłowy 6-cyfrowy kod uwierzytelniający.",
"serverError": "Nie można połączyć się z serwerem AliasVault. Spróbuj ponownie później lub skontaktuj się z pomocą techniczną, jeśli problem będzie się powtarzał.",
"wrongPassword": "Hasło jest nieprawidłowe. Spróbuj ponownie.",
"sessionExpired": "Twoja sesja wygasła. Prosimy o zalogowanie się ponownie.",
"mobileLoginRequestExpired": "Limit czasu logowania upłynął. Proszę odświeżyć stronę i spróbować ponownie."
}
"scanQrCode": "Zeskanuj ten kod QR za pomocą aplikacji mobilnej AliasVault, aby się zalogować i odblokować sejf."
},
"menu": {
"vault": "Sejf",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Sejf jest zablokowany",
"passwordChanged": "Twoje hasło uległo zmianie od czasu ostatniego logowania. Ze względów bezpieczeństwa prosimy o ponowne zalogowanie się.",
"syncConflictMaxRetries": "Nie można zsynchronizować sejfu po wielu próbach. Spróbuj ponownie później.",
"mergeFailed": "Nie udało się scalić zmian w sejfie. Spróbuj ponownie."
"mergeFailed": "Nie udało się scalić zmian w sejfie. Spróbuj ponownie.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "Wystąpił nieznany błąd. Spróbuj ponownie.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Usuń folder i wszystkie elementy",
"deleteFolderAndItemsDescription": "{{count}} element(ów) zostaną przeniesione do Ostatnio usunięte.",
"filters": {
"all": "(Wszystkie) pozycje",
"folders": "Foldery",
"passkeys": "Klucze dostępu"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Zmiany niesynchronizowane",
"unsyncedChangesWarning": "Masz niezsynchronizowane zmiany, które zostaną utracone, jeśli się teraz wylogujesz. Czy na pewno chcesz kontynuować?",
"logoutAnyway": "Wyloguj się mimo wszystko"
},
"sync": {
"offline": "Jesteś w trybie offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Mudar de conta?",
"loginWithMobile": "Entrar utilizado Dispositivo Móvel",
"unlockWithMobile": "Desbloquear utilizando Dispositivo Móvel",
"scanQrCode": "Escaneie este código QR com seu aplicativo AliasVault para dispositivo móvel para entrar e desbloquear seu cofre.",
"errors": {
"invalidCode": "Por favor digite o código de autenticação de 6 dígitos.",
"serverError": "Não foi possível conectar ao servidor do AliasVault. Por favor tente novamente mais tarde ou entre em contato com o suporte caso o problema persista.",
"wrongPassword": "Senha incorreta. Por favor tente novamente.",
"sessionExpired": "Sua sessão expirou. Por favor, faça login novamente.",
"mobileLoginRequestExpired": "Requisição de login pelo dispositivo móvel demorou muito. Por favor, atualize a página e tente novamente."
}
"scanQrCode": "Escaneie este código QR com seu aplicativo AliasVault para dispositivo móvel para entrar e desbloquear seu cofre."
},
"menu": {
"vault": "Cofre",
@@ -106,7 +99,12 @@
"vaultIsLocked": "O cofre está bloqueado",
"passwordChanged": "Sua senha mudou desde o último login. Por favor, realize login novamente por questões de segurança.",
"syncConflictMaxRetries": "Não foi possível sincronizar seu cofre após várias tentativas. Por favor, tente novamente mais tarde.",
"mergeFailed": "Falha ao combinar mudanças do cofre. Por favor, tente novamente."
"mergeFailed": "Falha ao combinar mudanças do cofre. Por favor, tente novamente.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "Um erro desconhecido ocorreu. Por favor, tente novamente.",
@@ -202,14 +200,14 @@
"deleteFolderAndItems": "Excluir pasta e todos os itens",
"deleteFolderAndItemsDescription": "{{count}} item(s) será(ão) movido(s) para Recentemente Excluídos.",
"filters": {
"all": "(Todos os) Itens",
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Ordenar por",
"oldestFirst": "Mais antigos primeiro",
"newestFirst": "Mais novos primeiro",
"alphabetical": "Ordem Alfabética (A-Z)"
},
"deleteItemTitle": "Excluir Item",
"deleteItemConfirm": "Tem certeza que deseja excluir este item?",
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Alterações Dessincronizadas",
"unsyncedChangesWarning": "Você tem alterações dessincronizadas que serão perdidas caso você saia da sua conta agora. Têm certeza que deseja continuar?",
"logoutAnyway": "Sair assim mesmo"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Treci la alt cont?",
"loginWithMobile": "Autentificare prin aplicația mobilă",
"unlockWithMobile": "Deblochează prin aplicația mobilă",
"scanQrCode": "Scanează acest cod QR cu aplicația mobilă AliasVault pentru a te autentifica și debloca seiful.",
"errors": {
"invalidCode": "Introdu un cod de autentificare valid din 6 cifre.",
"serverError": "Conexiunea la serverul AliasVault a eșuat. Încearcă mai târziu sau contactează asistența dacă problema persistă.",
"wrongPassword": "Parolă incorectă. Încearcă din nou.",
"sessionExpired": "Sesiunea a expirat. Autentifică-te din nou.",
"mobileLoginRequestExpired": "Cererea de autentificare mobilă a expirat. Reîncarcă pagina și încearcă din nou."
}
"scanQrCode": "Scanează acest cod QR cu aplicația mobilă AliasVault pentru a te autentifica și debloca seiful."
},
"menu": {
"vault": "Seif",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Seiful este blocat",
"passwordChanged": "Parola ta a fost schimbată de la ultima autentificare. Autentifică-te din nou din motive de securitate.",
"syncConflictMaxRetries": "Sincronizarea seifului a eșuat după mai multe încercări. Reîncearcă mai târziu.",
"mergeFailed": "Îmbinarea modificărilor seifului a eșuat. Încearcă din nou."
"mergeFailed": "Îmbinarea modificărilor seifului a eșuat. Încearcă din nou.",
"invalidCode": "Introdu un cod de autentificare valid din 6 cifre.",
"serverError": "Nu s-a putut stabili conexiunea cu serverul AliasVault. Încearcă din nou mai târziu sau contactează asistența dacă problema persistă.",
"wrongPassword": "Parolă incorectă. Încearcă din nou.",
"sessionExpired": "Sesiunea ta a expirat. Autentifică-te din nou.",
"mobileLoginRequestExpired": "Cererea de autentificare de pe dispozitivul mobil a expirat. Reîncarcă pagina și încearcă din nou."
},
"apiErrors": {
"UNKNOWN_ERROR": "A apărut o eroare necunoscută. Încearcă din nou.",
@@ -129,9 +127,9 @@
"USERNAME_TOO_LONG": "Nume prea lung: nu poate depăși 40 de caractere.",
"USERNAME_INVALID_EMAIL": "Adresă de e-mail invalidă.",
"USERNAME_INVALID_CHARACTERS": "Numele de utilizator este invalid, poate conține doar litere sau cifre.",
"VAULT_NOT_UP_TO_DATE": "Seiful nu este la zi. Sincronizează seiful și încearcă din nou.",
"VAULT_NOT_UP_TO_DATE": "Seiful tău nu este actualizat. Sincronizează seiful și încearcă din nou.",
"INTERNAL_SERVER_ERROR": "Eroare internă de server.",
"VAULT_ERROR": "Seiful local nu este la zi. Sincronizează seiful reîncărcând pagina."
"VAULT_ERROR": "Seiful local nu este actualizat. Sincronizează seiful prin reîmprospătarea paginii și încearcă din nou."
}
},
"content": {
@@ -159,7 +157,7 @@
"failedToCreateIdentity": "Eșec la crearea identității. Încearcă din nou.",
"enterEmailAndOrUsername": "Introdu adresa de e-mail și/sau numele de utilizator",
"autofillWithAliasVault": "Completare automată cu AliasVault",
"generateRandomPassword": "Generează parolă aleatorie (copiază în clipboard)",
"generateRandomPassword": "Generează o parolă aleatorie (copiază în clipboard)",
"generateNewPassword": "Generează parolă nouă",
"togglePasswordVisibility": "Comută vizibilitatea parolei",
"passwordCopiedToClipboard": "Parolă copiată în clipboard",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Șterge dosarul și toate elementele",
"deleteFolderAndItemsDescription": "{{count}} element(e) vor fi mutate la Șterse Recent.",
"filters": {
"all": "(Toate) Elementele",
"folders": "Dosare",
"passkeys": "Passkeys"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Modificări Nesincronizate",
"unsyncedChangesWarning": "Ai modificări nesincronizate care se vor pierde dacă te deconectezi acum. Sigur vrei să continui?",
"logoutAnyway": "Deconectează-te oricum"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Apasă pentru a reîncerca sincronizarea"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Переключить аккаунт?",
"loginWithMobile": "Войти с помощью мобильного приложения",
"unlockWithMobile": "Разблокировать через мобильное приложение",
"scanQrCode": "Сканируйте QR-код в приложении AliasVault, чтобы войти.",
"errors": {
"invalidCode": "Пожалуйста, введите правильный 6-значный код аутентификации.",
"serverError": "Не удалось подключиться к серверу AliasVault. Пожалуйста, повторите попытку позже или обратитесь в службу поддержки, если проблема не устранится.",
"wrongPassword": "Неверный пароль. Пожалуйста, повторите попытку.",
"sessionExpired": "Время сеанса истекло. Пожалуйста, войдите снова.",
"mobileLoginRequestExpired": "Истекло время ожидания входа. Перезагрузите страницу и повторите попытку."
}
"scanQrCode": "Сканируйте QR-код в приложении AliasVault, чтобы войти."
},
"menu": {
"vault": "Хранилище",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Хранилище заблокировано",
"passwordChanged": "С момента вашего последнего входа ваш пароль изменился. Пожалуйста, войдите еще раз в целях безопасности.",
"syncConflictMaxRetries": "Ошибка синхронизации хранилища. Повторите попытку позже.",
"mergeFailed": "Не удалось объединить изменения. Попробуйте снова."
"mergeFailed": "Не удалось объединить изменения. Попробуйте снова.",
"invalidCode": "Введите корректный 6-значный код подтверждения.",
"serverError": "Сервер AliasVault недоступен. Повторите попытку позже или свяжитесь с техподдержкой.",
"wrongPassword": "Неверный пароль. Повторите попытку.",
"sessionExpired": "Срок действия сессии истек. Войдите снова.",
"mobileLoginRequestExpired": "Срок запроса на вход истек. Обновите страницу и попробуйте снова."
},
"apiErrors": {
"UNKNOWN_ERROR": "Произошла неизвестная ошибка. Пожалуйста, попробуйте снова.",
@@ -202,14 +200,14 @@
"deleteFolderAndItems": "Удалить папку и все элементы",
"deleteFolderAndItemsDescription": "{{count}} объект(ов) будет перемещено в раздел «Недавно удалённые».",
"filters": {
"all": "(Все) Записи",
"folders": "Папки",
"passkeys": "Ключи доступа"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Сортировка",
"oldestFirst": "Сначала старые",
"newestFirst": "Сначала новые",
"alphabetical": "По алфавиту (А–Я)"
},
"deleteItemTitle": "Удалить элемент",
"deleteItemConfirm": "Вы уверены, что хотите удалить этот элемент?",
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Несинхронизированные изменения",
"unsyncedChangesWarning": "У вас есть несинхронизированные изменения, которые будут потеряны, если вы выйдете из аккаунта сейчас. Вы уверены, что хотите продолжить?",
"logoutAnyway": "Все равно выйти"
},
"sync": {
"offline": "Офлайн",
"tapToRetry": "Повторить синхронизацию"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Växla konton?",
"loginWithMobile": "Logga in med hjälp av mobilapp",
"unlockWithMobile": "Lås upp med hjälp av mobilapp",
"scanQrCode": "Skanna denna QR-kod med din AliasVault-mobilapp för att logga in och låsa upp ditt valv.",
"errors": {
"invalidCode": "Ange en giltig 6-siffrig autentiseringskod.",
"serverError": "Kunde inte nå AliasVault-servern. Försök igen senare eller kontakta support om problemet kvarstår.",
"wrongPassword": "Felaktigt lösenord. Var god försök igen.",
"sessionExpired": "Din session har löpt ut. Vänligen logga in igen.",
"mobileLoginRequestExpired": "Mobil inloggningsbegäran har löpt ut. Ladda om sidan och försök igen."
}
"scanQrCode": "Skanna denna QR-kod med din AliasVault-mobilapp för att logga in och låsa upp ditt valv."
},
"menu": {
"vault": "Valv",
@@ -74,7 +67,7 @@
"loadingAttachments": "Laddar bifogade filer...",
"settings": "Inställningar",
"recentEmails": "Senaste e-postmeddelanden",
"credentials": "Användaruppgifter",
"credentials": "Inloggningsuppgifter",
"customFields": "Anpassade fält",
"twoFactorAuthentication": "Tvåfaktorsautentisering",
"alias": "Alias",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Valvet är låst",
"passwordChanged": "Ditt lösenord har ändrats sedan du senast loggade in. Vänligen logga in igen av säkerhetsskäl.",
"syncConflictMaxRetries": "Kunde inte synkronisera valvet trots flera försök. Försök igen senare.",
"mergeFailed": "Det gick inte att sammanfoga valvförändringar. Försök igen."
"mergeFailed": "Det gick inte att sammanfoga valvförändringar. Försök igen.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "Ett okänt fel inträffade. Försök igen.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Radera mapp och alla objekt",
"deleteFolderAndItemsDescription": "{{count}} objekt kommer att flyttas till Nyligen borttagen.",
"filters": {
"all": "(Alla) objekt",
"folders": "Mappar",
"passkeys": "Passkeys"
},
"sort": {
@@ -322,8 +320,8 @@
"yesterday": "igår"
},
"apiErrors": {
"CLAIM_DOES_NOT_MATCH_USER": "Den aktuella valda e-postadressen används redan. Vänligen ändra e-postadressen genom att redigera denna uppgiftsposten.",
"CLAIM_DOES_NOT_EXIST": "Ett fel inträffade när e-posten skulle laddas. Försök att redigera och spara uppgiftsposten för att synkronisera databasen, och försök sedan igen."
"CLAIM_DOES_NOT_MATCH_USER": "Den aktuella valda e-postadressen används redan. Vänligen ändra e-postadressen genom att redigera denna post.",
"CLAIM_DOES_NOT_EXIST": "Ett fel inträffade när e-posten skulle laddas. Försök att redigera och spara posten för att synkronisera databasen, och försök sedan igen."
}
},
"settings": {
@@ -440,7 +438,7 @@
"passkeys": {
"passkey": "Passkey",
"site": "Webbplats",
"helpText": "Passkeys skapas på webbplatsen när du blir tillfrågad. De kan inte redigeras manuellt. För att radera denna passkey, kan du ta bort det från denna inloggning. För att byta ut denna passkey eller skapa en ny, besök webbplatsen och följ dess anvisningar.",
"helpText": "Passkeys skapas på webbplatsen när du blir tillfrågad. De kan inte redigeras manuellt. För att radera denna passkey, kan du ta bort det från denna posten. För att byta ut denna passkey eller skapa en ny, besök webbplatsen och följ dess anvisningar.",
"passkeyMarkedForDeletion": "Passkey markerad för borttagning",
"passkeyWillBeDeleted": "Denna passkey kommer att tas bort när du sparar dessa uppgifter.",
"useBrowserPasskey": "Använd Webbläsar Passkey",
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Osynkade ändringar",
"unsyncedChangesWarning": "Du har osynkade ändringar som kommer att gå förlorade om du loggar ut nu. Är du säker på att du vill fortsätta?",
"logoutAnyway": "Logga ut ändå"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Switch accounts?",
"loginWithMobile": "Log in using Mobile App",
"unlockWithMobile": "Unlock using Mobile App",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault.",
"errors": {
"invalidCode": "Lütfen geçerli 6 haneli doğrulama kodunu girin.",
"serverError": "AliasVault sunucusuna ulaşılamadı. Lütfen daha sonra tekrar deneyin veya sorun devam ederse destek ile iletişime geçin.",
"wrongPassword": "Parola yanlış. Lütfen yeniden deneyin.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
}
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault."
},
"menu": {
"vault": "Vault",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Vault is locked",
"passwordChanged": "Parolanız, en son giriş yaptığınızdan bu yana değişti. Güvenlik nedeniyle lütfen tekrar giriş yapın.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again."
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(All) Items",
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "Змінити обліковий запис?",
"loginWithMobile": "Увійти за допомогою мобільного додатку",
"unlockWithMobile": "Розблокувати за допомогою мобільного додатку",
"scanQrCode": "Проскануйте цей QR-код за допомогою мобільного додатка AliasVault, щоб увійти та розблокувати сховище.",
"errors": {
"invalidCode": "Будь ласка, введіть дійсний 6-значний код автентифікації.",
"serverError": "Не вдалося зв’язатися зі сервером AliasVault. Будь ласка, спробуйте пізніше або зверніться до служби підтримки, якщо проблема не зникне.",
"wrongPassword": "Невірний пароль. Будь ласка, спробуйте ще раз.",
"sessionExpired": "Час сеансу закінчився. Будь ласка, увійдіть знову.",
"mobileLoginRequestExpired": "Час очікування запиту на вхід у мобільний додаток закінчився. Перезавантажте сторінку та спробуйте ще раз."
}
"scanQrCode": "Проскануйте цей QR-код за допомогою мобільного додатка AliasVault, щоб увійти та розблокувати сховище."
},
"menu": {
"vault": "Vault",
@@ -106,7 +99,12 @@
"vaultIsLocked": "Сховище заблоковано",
"passwordChanged": "Ваш пароль змінився з моменту останнього входу. З міркувань безпеки, будь ласка, увійдіть ще раз.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again."
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "Сталася невідома помилка. Будь ласка, спробуйте ще раз.",
@@ -202,7 +200,7 @@
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"all": "(All) Items",
"folders": "Folders",
"passkeys": "Ключі доступу"
},
"sort": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -0,0 +1,521 @@
{
"auth": {
"loginTitle": "Log in to AliasVault",
"username": "Username or email",
"usernamePlaceholder": "name / name@company.com",
"passwordPlaceholder": "Enter your password",
"rememberMe": "Remember me",
"loginButton": "Log in",
"noAccount": "No account yet?",
"createVault": "Create new vault",
"twoFactorTitle": "Please enter the authentication code from your authenticator app.",
"authCode": "Authentication Code",
"authCodePlaceholder": "Enter 6-digit code",
"verify": "Verify",
"twoFactorNote": "Note: if you don't have access to your authenticator device, you can reset your 2FA with a recovery code by logging in via the website.",
"masterPassword": "Master Password",
"unlockVault": "Unlock",
"unlockWithPin": "Unlock with PIN",
"enterPinToUnlock": "Enter your PIN to unlock your vault",
"useMasterPassword": "Use Master Password",
"unlockTitle": "Unlock Your Vault",
"logoutConfirm": "Are you sure you want to logout?",
"unlockSuccessTitle": "Your vault is successfully unlocked",
"unlockSuccessDescription": "You can now use autofill in login forms in your browser.",
"closePopup": "Close this popup",
"browseVault": "Browse vault contents",
"connectingTo": "Connecting to",
"switchAccounts": "Switch accounts?",
"loginWithMobile": "Log in using Mobile App",
"unlockWithMobile": "Unlock using Mobile App",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault."
},
"menu": {
"vault": "Vault",
"emails": "Emails"
},
"common": {
"loading": "Loading...",
"notice": "Notice",
"error": "Error",
"cancel": "Cancel",
"confirm": "Confirm",
"back": "Back",
"next": "Next",
"use": "Use",
"add": "Add",
"delete": "Delete",
"undo": "Undo",
"save": "Save",
"saving": "Saving...",
"create": "Create",
"or": "Or",
"close": "Close",
"logout": "Logout",
"copied": "Copied!",
"openInNewWindow": "Open in new window",
"enabled": "Enabled",
"disabled": "Disabled",
"showPassword": "Show password",
"hidePassword": "Hide password",
"showDetails": "Show details",
"hideDetails": "Hide details",
"copyToClipboard": "Copy to clipboard",
"loadingEmails": "Loading emails...",
"loadingTotpCodes": "Loading TOTP codes...",
"attachments": "Attachments",
"loadingAttachments": "Loading attachments...",
"settings": "Settings",
"recentEmails": "Recent emails",
"credentials": "Credentials",
"customFields": "Custom Fields",
"twoFactorAuthentication": "Two-factor authentication",
"alias": "Alias",
"notes": "Notes",
"email": "Email",
"username": "Username",
"password": "Password",
"generate": "Generate",
"serviceName": "Service Name",
"loggedIn": "Logged in",
"syncingVault": "Syncing vault",
"checkingVaultUpdates": "Checking for vault updates",
"syncingUpdatedVault": "Syncing updated vault",
"loadMore": "Load more",
"offline": "Offline",
"offlineMode": "Operating in offline mode",
"pendingSync": "Syncing...",
"mergingVaultChanges": "Merging vault changes...",
"uploadingVault": "Uploading vault...",
"errors": {
"serverNotAvailable": "The AliasVault server is not available. Please try again later or contact support if the problem persists.",
"clientVersionNotSupported": "This version of the AliasVault browser extension is not supported by the server anymore. Please update your browser extension to the latest version.",
"browserExtensionOutdated": "This browser extension is outdated and cannot be used to access this vault. Please update this browser extension to continue.",
"serverVersionNotSupported": "The AliasVault server needs to be updated to a newer version in order to use this browser extension. Please contact support if you need help.",
"serverVersionTooOld": "The AliasVault server needs to be updated to a newer version in order to use this feature. Please contact the server admin if you need help.",
"unknownError": "An unknown error occurred",
"unknownErrorTryAgain": "An unknown error occurred. Please try again.",
"vaultNotAvailable": "Vault not available",
"vaultIsLocked": "Vault is locked",
"passwordChanged": "Your password has changed since the last time you logged in. Please login again for security reasons.",
"syncConflictMaxRetries": "Could not sync vault after multiple attempts. Please try again later.",
"mergeFailed": "Failed to merge vault changes. Please try again.",
"invalidCode": "Please enter a valid 6-digit authentication code.",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"wrongPassword": "Incorrect password. Please try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
},
"apiErrors": {
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
"ACCOUNT_LOCKED": "Account temporarily locked due to too many failed attempts. Please try again later.",
"ACCOUNT_BLOCKED": "Your account has been disabled. If you believe this is a mistake, please contact support.",
"USER_NOT_FOUND": "Invalid username or password. Please try again.",
"INVALID_AUTHENTICATOR_CODE": "Invalid authenticator code. Please try again.",
"INVALID_RECOVERY_CODE": "Invalid recovery code. Please try again.",
"REFRESH_TOKEN_REQUIRED": "Refresh token is required.",
"INVALID_REFRESH_TOKEN": "Invalid refresh token.",
"PUBLIC_REGISTRATION_DISABLED": "New account registration is currently disabled on this server. Please contact the administrator.",
"USERNAME_REQUIRED": "Username is required.",
"USERNAME_ALREADY_IN_USE": "Username is already in use.",
"USERNAME_AVAILABLE": "Username is available.",
"USERNAME_MISMATCH": "Username does not match the current user.",
"PASSWORD_MISMATCH": "The provided password does not match your current password.",
"ACCOUNT_SUCCESSFULLY_DELETED": "Account successfully deleted.",
"USERNAME_EMPTY_OR_WHITESPACE": "Username cannot be empty or whitespace.",
"USERNAME_TOO_SHORT": "Username too short: must be at least 3 characters long.",
"USERNAME_TOO_LONG": "Username too long: cannot be longer than 40 characters.",
"USERNAME_INVALID_EMAIL": "Invalid email address.",
"USERNAME_INVALID_CHARACTERS": "Username is invalid, can only contain letters or digits.",
"VAULT_NOT_UP_TO_DATE": "Your vault is not up-to-date. Please synchronize your vault and try again.",
"INTERNAL_SERVER_ERROR": "Internal server error.",
"VAULT_ERROR": "The local vault is not up-to-date. Please synchronize your vault by refreshing the page and try again."
}
},
"content": {
"or": "or",
"new": "New",
"vaultLocked": "AliasVault is locked.",
"creatingNewAlias": "Creating new alias...",
"noMatchesFound": "No matches found",
"searchVault": "Search vault...",
"enterServiceName": "Enter service name",
"enterEmailAddress": "Enter email address",
"enterUsername": "Enter username",
"hideFor1Hour": "Hide for 1 hour (current site)",
"hidePermanently": "Hide permanently (current site)",
"createRandomAlias": "Create random alias",
"createUsernamePassword": "Create username/password",
"randomAlias": "Random alias",
"usernamePassword": "Username/password",
"createAndSaveAlias": "Create and save alias",
"createAndSaveCredential": "Create and save credential",
"randomIdentityDescription": "Generate a random identity with a random email address accessible in AliasVault.",
"randomIdentityDescriptionDropdown": "Random identity with random email",
"manualCredentialDescription": "Specify your own email address and username.",
"manualCredentialDescriptionDropdown": "Manual username and password",
"failedToCreateIdentity": "Failed to create identity. Please try again.",
"enterEmailAndOrUsername": "Enter email and/or username",
"autofillWithAliasVault": "Autofill with AliasVault",
"generateRandomPassword": "Generate random password (copy to clipboard)",
"generateNewPassword": "Generate new password",
"togglePasswordVisibility": "Toggle password visibility",
"passwordCopiedToClipboard": "Password copied to clipboard",
"openAliasVaultToUpgrade": "Open AliasVault to upgrade",
"vaultUpgradeRequired": "Vault upgrade required.",
"dismissPopup": "Dismiss popup"
},
"items": {
"title": "Items",
"itemName": "Name",
"loginCredentials": "Login Credentials",
"cardInformation": "Card Information",
"addItem": "Add Item",
"addNewItem": "Add new item",
"saveItem": "Save Item",
"itemDetails": "Item Details",
"editItem": "Edit Item",
"untitled": "Untitled",
"newFolder": "New Folder",
"createFolder": "Create Folder",
"editFolder": "Edit Folder",
"folderName": "Folder Name",
"folderNameRequired": "Folder name is required",
"folder": "Folder",
"welcomeTitle": "Welcome to AliasVault!",
"welcomeDescription": "To use the AliasVault browser extension: navigate to a website and use the AliasVault autofill popup to create a new credential.",
"noPasskeysFound": "No passkeys have been created yet. Passkeys are created by visiting a website that offers passkeys as an authentication method.",
"noAttachmentsFound": "No items with attachments found",
"noItemsOfTypeFound": "No {{type}} items found",
"noMatchingItems": "No matching items found",
"noMatchingItemsSearch": "No items matching \"{{search}}\"",
"noMatchingItemsWithFilter": "No {{filter}} items matching \"{{search}}\"",
"clearSearch": "Clear search",
"clearFilter": "Clear filter",
"emptyFolderHint": "This folder is empty. To move items to this folder, edit the item and tap the folder icon in the name field.",
"allItemsInFolders": "All your items are organized in folders. Click a folder above to view your credentials, or use the search to find specific items.",
"deleteFolder": "Delete Folder",
"deleteFolderKeepItems": "Delete folder only",
"deleteFolderKeepItemsDescription": "Items will be moved back to the main list.",
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"filters": {
"folders": "Folders",
"passkeys": "Passkeys"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
},
"deleteItemTitle": "Delete Item",
"deleteItemConfirm": "Are you sure you want to delete this item?",
"viewHistory": "View history",
"history": "History",
"noHistoryAvailable": "No history available",
"tags": "Tags",
"changePasswordComplexity": "Change password complexity",
"passwordLength": "Password length",
"includeLowercase": "Include lowercase letters",
"includeUppercase": "Include uppercase letters",
"includeNumbers": "Include numbers",
"includeSpecialChars": "Include special characters",
"avoidAmbiguousChars": "Avoid ambiguous characters (o, 0, etc.)",
"privateEmailTitle": "Private Email",
"privateEmailAliasVaultServer": "AliasVault server",
"privateEmailDescription": "E2E encrypted, fully private.",
"publicEmailTitle": "Public Temp Email Providers",
"publicEmailDescription": "Anonymous but limited privacy. Email content is readable by anyone that knows the address.",
"validation": {
"required": "This field is required"
}
},
"itemTypes": {
"selectType": "Add New Item",
"typeLabel": "Item Type",
"creating": "Creating",
"editing": "Editing",
"regenerateAlias": "Regenerate alias",
"addCustomField": "Add custom field",
"fieldLabel": "Field Label",
"enterFieldName": "Enter field name",
"fieldType": "Field Type",
"fieldTypes": {
"text": "Text",
"hidden": "Hidden (masked text)",
"email": "Email",
"url": "URL",
"phone": "Phone",
"number": "Number",
"date": "Date",
"textArea": "Text Area"
},
"login": {
"title": "Login"
},
"alias": {
"title": "Alias"
},
"creditCard": {
"title": "Credit Card"
},
"note": {
"title": "Secure Note"
}
},
"fieldLabels": {
"login.url": "Website URL",
"login.username": "Username",
"login.password": "Password",
"alias.first_name": "First Name",
"alias.last_name": "Last Name",
"alias.gender": "Gender",
"alias.birthdate": "Birthdate",
"login.email": "Email",
"notes.content": "Notes",
"card.cardholder_name": "Cardholder Name",
"card.number": "Card Number",
"card.expiry_month": "Expiry Month",
"card.expiry_year": "Expiry Year",
"card.cvv": "CVV",
"card.pin": "PIN"
},
"totp": {
"addCode": "Add 2FA Code",
"instructions": "Enter the secret key shown by the website where you want to add two-factor authentication.",
"nameOptional": "Name (optional)",
"secretKey": "Secret Key",
"saveToViewCode": "Save to view code",
"defaultName": "Authenticator",
"errors": {
"invalidSecretKey": "Invalid secret key format."
}
},
"attachmentUploader": {
"uploading": "Uploading...",
"uploadSuccess": "Files uploaded successfully.",
"deleteSuccess": "Attachment deleted successfully.",
"firefoxExpandRequired": "To upload files, use the expanded window.",
"openExpandedWindow": "Open Expanded Window"
},
"emails": {
"title": "Emails",
"deleteEmailTitle": "Delete Email",
"deleteEmailConfirm": "Are you sure you want to permanently delete this email?",
"from": "From",
"to": "To",
"date": "Date",
"emailContent": "Email content",
"emailNotFound": "Email not found",
"noEmails": "No emails found",
"noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.",
"offlineMessage": "You are offline. Please connect to the internet to load your emails.",
"dateFormat": {
"justNow": "just now",
"minutesAgo_single": "{{count}} min ago",
"minutesAgo_plural": "{{count}} mins ago",
"hoursAgo_single": "{{count}} hr ago",
"hoursAgo_plural": "{{count}} hrs ago",
"yesterday": "yesterday"
},
"apiErrors": {
"CLAIM_DOES_NOT_MATCH_USER": "The current chosen email address is already in use. Please change the email address by editing this credential.",
"CLAIM_DOES_NOT_EXIST": "An error occurred while trying to load the emails. Please try to edit and save the credential entry to synchronize the database, then try again."
}
},
"settings": {
"serverUrl": "Server URL",
"language": "Language",
"autofillEnabled": "Enable Autofill",
"version": "Version",
"openWebApp": "Open web app",
"lock": "Lock",
"globalSettings": "Global Settings",
"autofillPopup": "Autofill popup",
"activeOnAllSites": "Active on all sites (unless disabled below)",
"disabledOnAllSites": "Disabled on all sites",
"rightClickContextMenu": "Right-click context menu",
"autofillMatching": "Autofill Matching",
"autofillMatchingMode": "Autofill matching mode",
"autofillMatchingModeDescription": "Determines which credentials are considered a match and shown as suggestions in the autofill popup for a given website.",
"autofillMatchingDefault": "URL + subdomain + name wildcard",
"autofillMatchingUrlSubdomain": "URL + subdomain",
"autofillMatchingUrlExact": "Exact URL domain only",
"siteSpecificSettings": "Site-Specific Settings",
"autofillPopupOn": "Autofill popup on: ",
"enabledForThisSite": "Enabled for this site",
"disabledForThisSite": "Disabled for this site",
"temporarilyDisabledUntil": "Temporarily disabled until ",
"resetAllSiteSettings": "Reset all site-specific settings",
"appearance": "Appearance",
"theme": "Theme",
"useDefault": "Use default",
"light": "Light",
"dark": "Dark",
"keyboardShortcuts": "Keyboard Shortcuts",
"configureKeyboardShortcuts": "Configure keyboard shortcuts",
"configure": "Configure",
"clipboardClearTimeout": "Clear clipboard after copying",
"clipboardClearTimeoutDescription": "Automatically clear the clipboard after copying sensitive data",
"clipboardClearDisabled": "Never clear",
"clipboardClear5Seconds": "Clear after 5 seconds",
"clipboardClear10Seconds": "Clear after 10 seconds",
"clipboardClear15Seconds": "Clear after 15 seconds",
"autoLockTimeout": "Auto-lock Timeout",
"autoLockTimeoutDescription": "Automatically lock the vault after a period of inactivity",
"autoLockTimeoutHelp": "The vault will only lock after the specified period of inactivity (no autofill usage or extension popup opened). The vault will always lock when the browser is closed, regardless of this setting.",
"autoLockNever": "Never",
"autoLock15Seconds": "15 seconds",
"autoLock1Minute": "1 minute",
"autoLock5Minutes": "5 minutes",
"autoLock15Minutes": "15 minutes",
"autoLock30Minutes": "30 minutes",
"autoLock1Hour": "1 hour",
"autoLock4Hours": "4 hours",
"autoLock8Hours": "8 hours",
"autoLock24Hours": "24 hours",
"versionPrefix": "Version ",
"autofillSettings": "Autofill Settings",
"clipboardSettings": "Clipboard Settings",
"contextMenuSettings": "Context Menu Settings",
"passkeySettings": "Passkey Settings",
"contextMenu": "Context Menu",
"contextMenuEnabled": "Context menu is enabled",
"contextMenuDisabled": "Context menu is disabled",
"contextMenuDescription": "Right-click on input fields to access AliasVault options",
"selectLanguage": "Select Language",
"serverConfiguration": "Server Configuration",
"serverConfigurationDescription": "Configure the AliasVault server URL for self-hosted instances",
"customApiUrl": "API URL",
"customClientUrl": "Client URL",
"apiUrlHint": "The API endpoint URL (usually client URL + /api)",
"clientUrlHint": "The web interface URL of your self-hosted instance",
"autofillSettingsDescription": "Enable or disable the autofill popup on web pages",
"autofillEnabledDescription": "Autofill suggestions will appear on login forms",
"autofillDisabledDescription": "Autofill suggestions are disabled globally",
"languageSettings": "Language",
"validation": {
"apiUrlRequired": "API URL is required",
"apiUrlInvalid": "Please enter a valid API URL",
"clientUrlRequired": "Client URL is required",
"clientUrlInvalid": "Please enter a valid client URL"
},
"identityGenerator": "Identity Generator",
"identityGeneratorSettings": {
"description": "Configure the default language and gender preference for generating new identities.",
"languageSection": "Language",
"languageDescription": "Set the language that will be used when generating new identities.",
"genderSection": "Gender",
"genderDescription": "Set the gender preference for generating new identities.",
"ageRangeSection": "Age Range",
"ageRangeDescription": "Set the age range for generating new identities.",
"genderOptions": {
"random": "Random",
"male": "Male",
"female": "Female"
}
},
"unlockMethod": {
"title": "Vault Unlock Method",
"introText": "Choose how you want to unlock your vault. You can use your master password (always available) or set up a PIN code for faster access. After 3 failed PIN attempts, you'll need to use your master password.",
"password": "Master Password",
"pin": "PIN Code",
"pinDescription": "Unlock vault with PIN code",
"setupPin": "Setup PIN Code",
"enterNewPinDescription": "Enter a PIN code consisting of minimum 6 digits",
"confirmPin": "Confirm PIN",
"confirmPinDescription": "Enter your PIN again to confirm",
"invalidPinFormat": "Invalid PIN format",
"pinMismatch": "PINs do not match",
"incorrectPin": "Incorrect PIN. {{attemptsRemaining}} attempts remaining.",
"incorrectPinSingular": "Incorrect PIN. 1 attempt remaining.",
"enableSuccess": "PIN unlock enabled successfully!",
"pinLocked": "PIN unlock has been disabled. Please use your master password to unlock your vault.",
"pinSecurityWarning": "PIN unlock in the browser extension can be less secure than your master password, as PINs typically have lower entropy and may be brute-forced if your device is compromised. Use it only on devices you fully trust."
}
},
"passkeys": {
"passkey": "Passkey",
"site": "Site",
"helpText": "Passkeys are created on the website when prompted. They cannot be manually edited. To remove this passkey, you can delete it from this credential. To replace this passkey or create a new one, visit the website and follow its prompts.",
"passkeyMarkedForDeletion": "Passkey marked for deletion",
"passkeyWillBeDeleted": "This passkey will be deleted when you save this credential.",
"useBrowserPasskey": "Use Browser Passkey",
"bypass": {
"description": "How long would you like to use the browser's passkey provider for {{origin}}?",
"thisTimeOnly": "This time only",
"alwaysForSite": "Always for this site"
},
"authenticate": {
"title": "Sign in with Passkey",
"signInFor": "Sign in with passkey for",
"selectPasskey": "Select a passkey to sign in:",
"noPasskeysFound": "No passkeys found for this site"
},
"create": {
"title": "Create Passkey",
"createFor": "Create a new passkey for",
"titleLabel": "Title",
"titlePlaceholder": "Enter a name for this passkey",
"createButton": "Create Passkey",
"selectPasskeyToReplace": "Select a passkey to replace:",
"createNewPasskey": "Create New Passkey",
"replacingPasskey": "Replacing passkey: {{displayName}}",
"confirmReplace": "Confirm Replace",
"selectExistingLogin": "Add to existing login:",
"selectExistingLoginDescription": "Attach this passkey to an existing login credential for this site.",
"attachingToCredential": "Adding passkey to: {{serviceName}}",
"attachPasskey": "Add Passkey"
},
"settings": {
"passkeyProvider": "Passkey Provider",
"passkeyProviderOn": "Passkey Provider on "
}
},
"recentlyDeleted": {
"title": "Recently Deleted",
"noItems": "No deleted items",
"noItemsDescription": "Items you delete will appear here for 30 days before being permanently removed.",
"description": "These items will be permanently deleted after 30 days. You can restore them or delete them immediately.",
"restore": "Restore",
"deletePermanently": "Delete Permanently",
"emptyAll": "Empty All",
"daysRemaining_one": "{{count}} day remaining",
"daysRemaining_other": "{{count}} days remaining",
"expiringSoon": "Expiring soon",
"confirmDeleteTitle": "Delete Permanently?",
"confirmDeleteMessage": "This item will be permanently deleted and cannot be recovered.",
"confirmEmptyAllTitle": "Empty Recently Deleted?",
"confirmEmptyAllMessage": "All {{count}} items will be permanently deleted and cannot be recovered."
},
"upgrade": {
"title": "Upgrade Vault",
"subtitle": "AliasVault has updated and your vault needs to be upgraded. This should only take a few seconds.",
"versionInformation": "Version Information",
"yourVault": "Your vault version:",
"newVersion": "New available version:",
"upgrade": "Upgrade Vault",
"upgrading": "Upgrading...",
"whatsNew": "What's New",
"whatsNewDescription": "An upgrade is required to support the following changes:",
"noDescriptionAvailable": "No description available for this version.",
"alerts": {
"unableToGetVersionInfo": "Unable to get version information. Please try again.",
"selfHostedServer": "Self-Hosted Server",
"selfHostedWarning": "If you're using a self-hosted server, make sure to also update your self-hosted instance as otherwise logging in to the web client will stop working.",
"continueUpgrade": "Continue Upgrade",
"upgradeFailed": "Upgrade Failed",
"failedToApplyMigration": "Failed to apply migration ({{current}} of {{total}})"
}
},
"logout": {
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"sync": {
"offline": "Offline",
"tapToRetry": "Tap to retry sync"
}
}

View File

@@ -28,14 +28,7 @@
"switchAccounts": "切换账户?",
"loginWithMobile": "使用移动应用登录",
"unlockWithMobile": "使用移动应用解锁",
"scanQrCode": "使用 AliasVault 移动端应用扫描该二维码,即可登录并解锁您的密码库。",
"errors": {
"invalidCode": "请输入有效的6位动态验证码。",
"serverError": "无法连接到AliasVault服务器。请稍后重试若问题依旧请联系支持人员。",
"wrongPassword": "密码不正确。请重试。",
"sessionExpired": "您的会话已过期。请重新登录。",
"mobileLoginRequestExpired": "移动端登录请求超时。请重新加载页面后重试。"
}
"scanQrCode": "使用 AliasVault 移动端应用扫描该二维码,即可登录并解锁您的密码库。"
},
"menu": {
"vault": "密码库",
@@ -106,7 +99,12 @@
"vaultIsLocked": "密码库已锁定",
"passwordChanged": "登录密码已更新,请重新登录以确保账户安全。",
"syncConflictMaxRetries": "多次尝试后仍无法同步密码库,请稍后重试。",
"mergeFailed": "合并密码库更改失败,请重试。"
"mergeFailed": "合并密码库更改失败,请重试。",
"invalidCode": "请输入有效的 6 位身份验证码。",
"serverError": "无法访问 AliasVault 服务器。请稍后重试,若问题依旧,请联系支持人员。",
"wrongPassword": "密码错误,请重试。",
"sessionExpired": "您的会话已过期。请重新登录。",
"mobileLoginRequestExpired": "移动端登录请求超时,请重新加载页面后重试。"
},
"apiErrors": {
"UNKNOWN_ERROR": "发生未知错误。请重试。",
@@ -202,14 +200,14 @@
"deleteFolderAndItems": "删除文件夹和所有项目",
"deleteFolderAndItemsDescription": "{{count}} 个项目将被移至“近期删除”。",
"filters": {
"all": "(所有)项目",
"folders": "文件夹",
"passkeys": "通行密钥"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "排序方式",
"oldestFirst": "最早在前",
"newestFirst": "最新在前",
"alphabetical": "字母顺序(A-Z"
},
"deleteItemTitle": "删除项目",
"deleteItemConfirm": "您确定要删除此项目吗?",
@@ -405,11 +403,11 @@
},
"identityGenerator": "身份生成器",
"identityGeneratorSettings": {
"description": "配置生成新身份的默认语言和性别偏好。",
"description": "配置生成新身份的默认语言和性别偏好。",
"languageSection": "语言",
"languageDescription": "设置生成新身份使用的语言。",
"languageDescription": "设置生成新身份使用的语言。",
"genderSection": "性别",
"genderDescription": "设置生成新身份的性别偏好。",
"genderDescription": "设置生成新身份的性别偏好。",
"ageRangeSection": "年龄范围",
"ageRangeDescription": "设置生成新身份的年龄范围。",
"genderOptions": {
@@ -515,5 +513,9 @@
"unsyncedChangesTitle": "未同步的更改",
"unsyncedChangesWarning": "您有更改尚未同步,若您现在退出登录,这些更改将会丢失。您确定要继续吗?",
"logoutAnyway": "仍要退出登录"
},
"sync": {
"offline": "离线",
"tapToRetry": "点击重试同步"
}
}

View File

@@ -0,0 +1,84 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">AliasVault</string>
<string name="autofill_service_description" translatable="true">AliasVault AutoFill</string>
<string name="aliasvault_icon">AliasVault icon</string>
<!-- Common strings -->
<string name="common_close">Затвори</string>
<string name="common_next">Следващ</string>
<string name="common_cancel">Отмени</string>
<string name="unknown_error">An unknown error occurred</string>
<!-- AutofillService strings -->
<string name="autofill_failed_to_retrieve">Failed to retrieve, open app</string>
<string name="autofill_no_match_found">No match found, create new?</string>
<string name="autofill_open_app">Отвори приложението</string>
<string name="autofill_vault_locked">Vault locked</string>
<!-- Biometric prompts -->
<string name="biometric_store_key_title">Store Encryption Key</string>
<string name="biometric_store_key_subtitle">Удостоверете се, за да съхраните безопасно криптиращия си ключ в хранилището на Android. Това позволява сигурен достъп до хранилището ви.</string>
<string name="biometric_unlock_vault_title">Unlock Vault</string>
<string name="biometric_unlock_vault_subtitle">Удостоверете се, за да получите достъп до хранилището ви</string>
<!-- Passkey registration -->
<string name="passkey_registration_title">Създаване на ключ за достъп</string>
<string name="create_passkey_title">Създаване на ключ за достъп</string>
<string name="create_passkey_subtitle">Register a new passkey for this website. It will be securely stored in your vault and automatically synced across your devices with AliasVault.</string>
<string name="replace_passkey">Replace Passkey</string>
<string name="passkey_display_name_label">Passkey Name</string>
<string name="passkey_display_name_hint">Enter a name for this passkey</string>
<string name="passkey_website_label">Website</string>
<string name="passkey_username_label">Username</string>
<string name="passkey_create_button">Create Passkey</string>
<string name="passkey_creating">Creating passkey…</string>
<string name="passkey_saving">Saving to vault…</string>
<string name="passkey_syncing">Syncing with server…</string>
<string name="passkey_error_title">Error</string>
<string name="passkey_error_empty_name">Please enter a name for the passkey</string>
<string name="passkey_creation_failed">Failed to create passkey</string>
<string name="passkey_retry_button">Retry</string>
<string name="passkey_info_icon">Info icon</string>
<string name="passkey_create_explanation">This creates a new passkey and stores it in your vault. It will be automatically synced across all your devices that use AliasVault.</string>
<string name="passkey_create_new_button">Create New Passkey</string>
<string name="passkey_select_to_replace">Or, replace an existing passkey:</string>
<string name="passkey_add_to_existing">Or, add passkey to an existing item:</string>
<string name="passkey_replace_explanation">This will replace the existing passkey with a new one. Please be aware that your old passkey will be overwritten and no longer accessible. If you wish to create a separate passkey instead, go back to the previous screen.</string>
<string name="passkey_merge_explanation">This will add a passkey to your existing item. Your password and other data will be preserved.</string>
<string name="passkey_replacing">Replacing passkey…</string>
<string name="add_passkey">Add Passkey</string>
<string name="add_passkey_subtitle">Adding passkey to existing item</string>
<string name="passkey_checking_connection">Checking connection…</string>
<string name="passkey_retrieving">Retrieving passkey…</string>
<string name="passkey_verifying">Verifying…</string>
<string name="passkey_authenticating">Authenticating…</string>
<!-- Vault sync error messages -->
<string name="connection_error_title">Connection Error</string>
<string name="connection_error_message">No connection to the server can be made. Please check your internet connection and try creating the passkey again.</string>
<string name="session_expired_title">Session Expired</string>
<string name="session_expired_message">Your session has expired. Please sign in again.</string>
<string name="password_changed_title">Password Changed</string>
<string name="password_changed_message">Your password has been changed. Please sign in again.</string>
<string name="version_not_supported_title">Update Required</string>
<string name="version_not_supported_message">Your app version is no longer supported. Please update to the latest version.</string>
<string name="server_unavailable_title">Server Unavailable</string>
<string name="server_unavailable_message">The server is currently unavailable. Please try again later.</string>
<string name="network_error_title">Network Error</string>
<string name="network_error_message">A network error occurred. Please check your connection and try again.</string>
<string name="server_version_not_supported_title">Server Update Required</string>
<string name="server_version_not_supported_message">The server version is outdated. Please contact your administrator to update the server.</string>
<!-- Passkey authentication and unlock error messages -->
<string name="error_unlock_method_required">Please enable biometric or PIN authentication in the main AliasVault app in order to continue</string>
<string name="error_unlock_vault_first">Please unlock vault in AliasVault app first</string>
<string name="error_vault_decrypt_failed">Failed to decrypt vault</string>
<string name="error_biometric_cancelled">Biometric authentication cancelled</string>
<string name="error_encryption_key_failed">Failed to retrieve encryption key</string>
<!-- PIN unlock -->
<string name="pin_unlock_vault">Unlock Vault</string>
<string name="pin_enter_to_unlock">Enter your PIN to unlock your vault</string>
<string name="pin_locked_max_attempts">PIN locked after too many failed attempts</string>
<string name="pin_incorrect_attempts_remaining">Incorrect PIN. %d attempts remaining</string>
<!-- PIN setup -->
<string name="pin_setup_title">Setup PIN</string>
<string name="pin_setup_description">Choose a PIN to unlock your vault</string>
<string name="pin_confirm_title">Confirm PIN</string>
<string name="pin_confirm_description">Re-enter your PIN to confirm</string>
<string name="pin_mismatch">PINs do not match. Please try again.</string>
</resources>

View File

@@ -43,8 +43,8 @@
<string name="passkey_replace_explanation">Dies wird den bestehenden Passkey durch einen neuen ersetzen. Bitte beachte, dass Dein alter Passkey überschrieben wird und nicht mehr zugänglich ist. Wenn Du stattdessen einen separaten Passkey erstellen möchtest, gehe zurück zum vorherigen Schritt.</string>
<string name="passkey_merge_explanation">This will add a passkey to your existing item. Your password and other data will be preserved.</string>
<string name="passkey_replacing">Passkey ersetzen…</string>
<string name="add_passkey">Add Passkey</string>
<string name="add_passkey_subtitle">Adding passkey to existing item</string>
<string name="add_passkey">Passkey hinzufügen</string>
<string name="add_passkey_subtitle">Passkey zu existierendem Eintrag hinzufügen</string>
<string name="passkey_checking_connection">Verbindung wird überprüft…</string>
<string name="passkey_retrieving">Passkey wird abgerufen…</string>
<string name="passkey_verifying">Verifizierung läuft…</string>

View File

@@ -0,0 +1,84 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">AliasVault</string>
<string name="autofill_service_description" translatable="true">AliasVault AutoFill</string>
<string name="aliasvault_icon">AliasVault icon</string>
<!-- Common strings -->
<string name="common_close">Close</string>
<string name="common_next">Next</string>
<string name="common_cancel">Cancel</string>
<string name="unknown_error">An unknown error occurred</string>
<!-- AutofillService strings -->
<string name="autofill_failed_to_retrieve">Failed to retrieve, open app</string>
<string name="autofill_no_match_found">No match found, create new?</string>
<string name="autofill_open_app">Open app</string>
<string name="autofill_vault_locked">Vault locked</string>
<!-- Biometric prompts -->
<string name="biometric_store_key_title">Store Encryption Key</string>
<string name="biometric_store_key_subtitle">Authenticate to securely store your encryption key in the Android Keystore. This enables secure access to your vault.</string>
<string name="biometric_unlock_vault_title">Unlock Vault</string>
<string name="biometric_unlock_vault_subtitle">Authenticate to access your vault</string>
<!-- Passkey registration -->
<string name="passkey_registration_title">Create Passkey</string>
<string name="create_passkey_title">Create New Passkey</string>
<string name="create_passkey_subtitle">Register a new passkey for this website. It will be securely stored in your vault and automatically synced across your devices with AliasVault.</string>
<string name="replace_passkey">Replace Passkey</string>
<string name="passkey_display_name_label">Passkey Name</string>
<string name="passkey_display_name_hint">Enter a name for this passkey</string>
<string name="passkey_website_label">Website</string>
<string name="passkey_username_label">Username</string>
<string name="passkey_create_button">Create Passkey</string>
<string name="passkey_creating">Creating passkey…</string>
<string name="passkey_saving">Saving to vault…</string>
<string name="passkey_syncing">Syncing with server…</string>
<string name="passkey_error_title">Error</string>
<string name="passkey_error_empty_name">Please enter a name for the passkey</string>
<string name="passkey_creation_failed">Failed to create passkey</string>
<string name="passkey_retry_button">Retry</string>
<string name="passkey_info_icon">Info icon</string>
<string name="passkey_create_explanation">This creates a new passkey and stores it in your vault. It will be automatically synced across all your devices that use AliasVault.</string>
<string name="passkey_create_new_button">Create New Passkey</string>
<string name="passkey_select_to_replace">Or, replace an existing passkey:</string>
<string name="passkey_add_to_existing">Or, add passkey to an existing item:</string>
<string name="passkey_replace_explanation">This will replace the existing passkey with a new one. Please be aware that your old passkey will be overwritten and no longer accessible. If you wish to create a separate passkey instead, go back to the previous screen.</string>
<string name="passkey_merge_explanation">This will add a passkey to your existing item. Your password and other data will be preserved.</string>
<string name="passkey_replacing">Replacing passkey…</string>
<string name="add_passkey">Add Passkey</string>
<string name="add_passkey_subtitle">Adding passkey to existing item</string>
<string name="passkey_checking_connection">Checking connection…</string>
<string name="passkey_retrieving">Retrieving passkey…</string>
<string name="passkey_verifying">Verifying…</string>
<string name="passkey_authenticating">Authenticating…</string>
<!-- Vault sync error messages -->
<string name="connection_error_title">Connection Error</string>
<string name="connection_error_message">No connection to the server can be made. Please check your internet connection and try creating the passkey again.</string>
<string name="session_expired_title">Session Expired</string>
<string name="session_expired_message">Your session has expired. Please sign in again.</string>
<string name="password_changed_title">Password Changed</string>
<string name="password_changed_message">Your password has been changed. Please sign in again.</string>
<string name="version_not_supported_title">Update Required</string>
<string name="version_not_supported_message">Your app version is no longer supported. Please update to the latest version.</string>
<string name="server_unavailable_title">Server Unavailable</string>
<string name="server_unavailable_message">The server is currently unavailable. Please try again later.</string>
<string name="network_error_title">Network Error</string>
<string name="network_error_message">A network error occurred. Please check your connection and try again.</string>
<string name="server_version_not_supported_title">Server Update Required</string>
<string name="server_version_not_supported_message">The server version is outdated. Please contact your administrator to update the server.</string>
<!-- Passkey authentication and unlock error messages -->
<string name="error_unlock_method_required">Please enable biometric or PIN authentication in the main AliasVault app in order to continue</string>
<string name="error_unlock_vault_first">Please unlock vault in AliasVault app first</string>
<string name="error_vault_decrypt_failed">Failed to decrypt vault</string>
<string name="error_biometric_cancelled">Biometric authentication cancelled</string>
<string name="error_encryption_key_failed">Failed to retrieve encryption key</string>
<!-- PIN unlock -->
<string name="pin_unlock_vault">Unlock Vault</string>
<string name="pin_enter_to_unlock">Enter your PIN to unlock your vault</string>
<string name="pin_locked_max_attempts">PIN locked after too many failed attempts</string>
<string name="pin_incorrect_attempts_remaining">Incorrect PIN. %d attempts remaining</string>
<!-- PIN setup -->
<string name="pin_setup_title">Setup PIN</string>
<string name="pin_setup_description">Choose a PIN to unlock your vault</string>
<string name="pin_confirm_title">Confirm PIN</string>
<string name="pin_confirm_description">Re-enter your PIN to confirm</string>
<string name="pin_mismatch">PINs do not match. Please try again.</string>
</resources>

View File

@@ -0,0 +1,655 @@
{
"common": {
"cancel": "Cancel",
"close": "Close",
"delete": "Delete",
"save": "Save",
"yes": "Yes",
"no": "No",
"ok": "OK",
"continue": "Continue",
"loading": "Loading",
"error": "Error",
"success": "Success",
"never": "Never",
"copied": "Copied to clipboard",
"loadMore": "Load more",
"use": "Use",
"confirm": "Confirm",
"next": "Next",
"notice": "Notice",
"enabled": "Enabled",
"disabled": "Disabled",
"twoFactorAuthentication": "Two-factor authentication",
"add": "Add",
"generate": "Generate",
"attachments": "Attachments",
"deleteItemConfirmTitle": "Delete Item",
"deleteItemConfirmDescription": "Are you sure you want to delete this item?",
"errors": {
"unknownError": "An unknown error occurred.",
"unknownErrorTryAgain": "An unknown error occurred. Please try again.",
"serverVersionTooOld": "The AliasVault server needs to be updated to a newer version in order to use this feature. Please contact the server admin if you need help."
}
},
"auth": {
"login": "Log in",
"logout": "Logout",
"username": "Username or email",
"password": "Password",
"authCode": "Authentication Code",
"unlock": "Unlock",
"unlocking": "Unlocking...",
"loggingIn": "Logging in",
"validatingCredentials": "Validating credentials",
"syncingVault": "Syncing vault",
"verifyingAuthCode": "Verifying authentication code",
"verify": "Провери",
"unlockVault": "Unlock Vault",
"unlockWithPin": "Unlock with PIN",
"enterPassword": "Enter your password to unlock your vault",
"enterPasswordPlaceholder": "Password",
"enterAuthCode": "Enter 6-digit code",
"usernamePlaceholder": "name / name@company.com",
"passwordPlaceholder": "Enter your password",
"enableBiometric": "Enable {{biometric}}?",
"biometricPrompt": "Would you like to use {{biometric}} to unlock your vault?",
"tryBiometricAgain": "Try {{biometric}} Again",
"tryPinAgain": "Try PIN Again",
"authCodeNote": "Note: if you don't have access to your authenticator device, you can reset your 2FA with a recovery code by logging in via the website.",
"errors": {
"credentialsRequired": "Username and password are required",
"invalidAuthCode": "Please enter a valid 6-digit authentication code",
"incorrectPassword": "Incorrect password. Please try again.",
"enterPassword": "Please enter your password",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"serverErrorSelfHosted": "Could not reach the API. For self-hosted instances, please verify the API endpoint is reachable by navigating to it in a browser: it should display 'OK'.",
"networkError": "Network request failed. Please check your internet connection and try again.",
"networkErrorSelfHosted": "Network request failed. Check your network connection and server availability. For self-hosted instances, please ensure you have a valid SSL certificate installed. Self-signed certificates are not supported on mobile devices for security reasons.",
"sessionExpired": "Your session has expired. Please login again.",
"httpError": "HTTP error: {{status}}"
},
"confirmLogout": "Are you sure you want to logout? You need to login again with your master password to access your vault.",
"noAccountYet": "No account yet?",
"createNewVault": "Create new vault",
"connectingTo": "Connecting to",
"loggedInAs": "Logged in as"
},
"logout": {
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"vault": {
"syncingVault": "Syncing vault",
"uploadingVaultToServer": "Uploading vault to server",
"savingChangesToVault": "Saving changes to vault",
"checkingForVaultUpdates": "Checking for vault updates",
"executingOperation": "Executing operation...",
"checkingVaultUpdates": "Checking vault updates",
"syncingUpdatedVault": "Syncing updated vault",
"mergingVault": "Merging vault changes",
"uploadingChanges": "Uploading changes",
"errors": {
"failedToGetEncryptedDatabase": "Failed to get encrypted database",
"usernameNotFound": "Username not found",
"vaultOutdated": "Your vault is outdated. Please login on the AliasVault website and follow the steps.",
"failedToSyncVault": "Failed to sync vault",
"versionNotSupported": "This version of the AliasVault mobile app is not supported by the server anymore. Please update your app to the latest version.",
"serverVersionNotSupported": "The AliasVault server needs to be updated to a newer version in order to use this mobile app. Please contact support if you need help.",
"appOutdated": "This app is outdated and cannot be used to access this (newer) vault version. Please update the AliasVault app to continue.",
"passwordChanged": "Your password has changed since the last time you logged in. Please login again for security reasons.",
"passwordChangeRequiresOnline": "Password change requires an internet connection. Please try again when online."
}
},
"passkeys": {
"passkey": "Passkey",
"helpText": "Passkeys are created on the website when prompted. They cannot be manually edited. To remove this passkey, you can delete it from this credential.",
"passkeyMarkedForDeletion": "Passkey marked for deletion",
"passkeyWillBeDeleted": "This passkey will be deleted when you save this credential."
},
"totp": {
"addCode": "Add 2FA Code",
"nameOptional": "Name (optional)",
"secretKey": "Secret Key",
"instructions": "Enter the secret key shown by the website where you want to add two-factor authentication.",
"saveToViewCode": "Save to view code",
"errors": {
"invalidSecretKey": "Invalid secret key format."
}
},
"settings": {
"title": "Settings",
"autofill": "Autofill & Passkeys",
"iosAutofillSettings": {
"headerText": "You can configure AliasVault to provide native password and passkey autofill functionality in iOS. Follow the instructions below to enable it.",
"passkeyNotice": "Passkeys are created through iOS. To store them in AliasVault, ensure Autofill below is enabled.",
"howToEnable": "How to enable Autofill & Passkeys:",
"step1": "1. Open iOS Settings via the button below",
"step2": "2. Go to \"General\"",
"step3": "3. Tap \"AutoFill & Passwords\"",
"step4": "4. Enable \"AliasVault\"",
"step5": "5. Disable other password providers (e.g. \"iCloud Passwords\") to avoid conflicts",
"openIosSettings": "Open iOS Settings",
"alreadyConfigured": "I already configured it",
"warningText": "Note: You'll need to authenticate with Face ID/Touch ID or your device passcode when using autofill."
},
"androidAutofillSettings": {
"warningTitle": "⚠️ Experimental Feature",
"warningDescription": "Autofill and passkey support for Android is currently in an experimental state.",
"warningLink": "Read more about it here",
"headerText": "You can configure AliasVault to provide native password and passkey autofill functionality in Android. Follow the instructions below to enable it.",
"passkeyNotice": "Passkeys are created through Android Credential Manager (Android 14+). To store them in AliasVault, ensure Autofill below is enabled.",
"howToEnable": "How to enable Autofill & Passkeys:",
"step1": "1. Open Android Settings via the button below, and change the \"autofill preferred service\" to \"AliasVault\"",
"openAutofillSettings": "Open Autofill Settings",
"buttonTip": "If the button above doesn't work it might be blocked because of security settings. You can manually go to Android Settings → General Management → Passwords and autofill.",
"step2": "2. Some apps, e.g. Google Chrome, may require manual configuration in their settings to allow third-party autofill apps. However, most apps should work with autofill by default.",
"alreadyConfigured": "I already configured it",
"advancedOptions": "Advanced Options",
"showSearchText": "Show search text",
"showSearchTextDescription": "Include the text AliasVault receives from Android that it uses to search for a matching credential"
},
"vaultUnlock": "Vault Unlock Method",
"autoLock": "Auto-lock Timeout",
"clipboardClear": "Clear Clipboard",
"clipboardClearDescription": "Automatically clear copied passwords and sensitive information from your clipboard after a specified time period.",
"clipboardClearAndroidWarning": "Note: some Android devices have clipboard history enabled, which may keep track of previously copied items, even after AliasVault clears the clipboard. AliasVault can only overwrite the most recent item, but older entries may remain visible in history. For security reasons, we recommend disabling any clipboard history features in your device settings.",
"clipboardClearOptions": {
"never": "Never",
"5seconds": "5 seconds",
"10seconds": "10 seconds",
"15seconds": "15 seconds",
"30seconds": "30 seconds"
},
"batteryOptimizationHelpTitle": "Enable Background Clipboard Clearing",
"batteryOptimizationActive": "Battery optimization is blocking background tasks",
"batteryOptimizationDisabled": "Background clipboard clearing enabled",
"batteryOptimizationHelpDescription": "Android's battery optimization prevents reliable clipboard clearing when the app is in the background. Disabling battery optimization for AliasVault allows precise background clipboard clearing and automatically grants necessary alarm permissions.",
"disableBatteryOptimization": "Disable battery optimization",
"identityGenerator": "Identity Generator",
"passwordGenerator": "Password Generator",
"importExport": "Import / Export",
"importSectionTitle": "Import",
"importSectionDescription": "Import your passwords from other password managers or from a previous AliasVault export.",
"importWebNote": "To import credentials from existing password managers, please login to the web app. The import feature is currently only available on the web version.",
"exportSectionTitle": "Export",
"exportSectionDescription": "Export your vault data to a CSV file. This file can be used as a back-up and can also be imported into other password managers.",
"exportCsvButton": "Export vault to CSV file",
"exporting": "Exporting...",
"exportConfirmTitle": "Export Vault",
"exportWarning": "Warning: Exporting your vault to an unencrypted file will expose all of your passwords and sensitive information in plain text. Only do this on trusted devices and ensure you:\n\n• Store the exported file in a secure location\n• Delete the file when you no longer need it\n• Never share the exported file with others\n\nAre you sure you want to continue with the export?",
"security": "Security",
"appVersion": "App version {{version}} ({{url}})",
"autoLockOptions": {
"never": "Never",
"5seconds": "5 seconds",
"30seconds": "30 seconds",
"1minute": "1 minute",
"15minutes": "15 minutes",
"30minutes": "30 minutes",
"1hour": "1 hour",
"4hours": "4 hours",
"8hours": "8 hours"
},
"language": "Language",
"languageSystemMessage": "To change the app language, configure the preferred language for AliasVault in your device settings.",
"openSettings": "Open Settings",
"vaultUnlockSettings": {
"description": "Choose how you want to unlock your vault.",
"biometrics": "Biometrics",
"faceId": "Face ID",
"touchId": "Touch ID",
"faceIdTouchId": "Face ID / Touch ID",
"biometricEnabled": "{{biometric}} is now successfully enabled",
"biometricNotAvailable": "{{biometric}} Not Available",
"biometricDisabledMessage": "{{biometric}} is disabled for AliasVault. In order to use it, please enable it in your device settings first.",
"biometricHelp": "Use biometrics to unlock your vault, which is secured by the {{keystore}}.",
"biometricUnavailableHelp": "{{biometric}} is not available. Tap to open settings and/or go to your device settings to enable and configure it.",
"pin": "PIN Code",
"pinDescription": "Use a custom PIN code to unlock your vault more quickly.",
"pinEnabled": "PIN unlock enabled successfully",
"pinDisabled": "PIN unlock has been disabled",
"passwordHelp": "Re-enter your full master password to unlock your vault. This is always enabled as fallback option.",
"keystoreIOS": "iOS Keychain",
"keystoreAndroid": "Android Keystore"
},
"autoLockSettings": {
"description": "Choose how long the app can stay in the background before requiring re-authentication. You'll need to use Face ID or enter your password to unlock the vault again."
},
"identityGeneratorSettings": {
"description": "Configure the default language and gender preference for generating new identities.",
"languageSection": "Language",
"languageDescription": "Set the language that will be used when generating new identities.",
"genderSection": "Gender",
"genderDescription": "Set the gender preference for generating new identities.",
"ageRangeSection": "Age Range",
"ageRangeDescription": "Set the age range for generating new identities.",
"genderOptions": {
"random": "Random",
"male": "Male",
"female": "Female"
}
},
"passwordGeneratorSettings": {
"description": "Configure the default settings used when generating new passwords. These settings will be used for all new passwords unless overridden for specific entries.",
"preview": "Preview"
},
"securitySettings": {
"title": "Security",
"description": "Manage your account and vault security settings.",
"changeMasterPassword": "Change Master Password",
"activeSessionsTitle": "Active Sessions",
"recentAuthLogs": "Recent Auth Logs",
"deleteAccountTitle": "Delete Account",
"changePassword": {
"headerText": "Changing your master password also changes the vault encryption keys. It is advised to periodically change your master password to keep your vaults secure.",
"currentPassword": "Current Password",
"newPassword": "New Password",
"confirmNewPassword": "Confirm New Password",
"enterCurrentPassword": "Enter current password",
"enterNewPassword": "Enter new password",
"changePassword": "Change Password",
"fillAllFields": "Please fill in all fields",
"passwordsDoNotMatch": "New passwords do not match",
"userNotAuthenticated": "User not authenticated",
"initiatingChange": "Initiating password change...",
"currentPasswordIncorrect": "Current password is not correct",
"passwordChangedSuccessfully": "Password changed successfully",
"failedToChange": "Failed to change password. Please try again."
},
"activeSessions": {
"headerText": "Below is a list of devices where your account is currently logged in or has an active session. You can log out from any of these sessions here.",
"noSessions": "No active sessions",
"revoke": "Revoke",
"revokeSession": "Revoke Session",
"revokeConfirmation": "Are you sure you want to revoke this session? This will log you out of the chosen device.",
"sessionRevoked": "Session successfully revoked",
"failedToRevoke": "Failed to revoke session",
"failedToLoad": "Failed to load active sessions",
"lastActive": "Last active",
"expires": "Expires"
},
"authLogs": {
"headerText": "Below you can find an overview of recent login attempts to your account.",
"noLogs": "No auth logs found",
"success": "Success",
"failed": "Failed",
"time": "Time",
"ipAddress": "IP Address",
"client": "Client",
"failedToLoad": "Failed to load auth logs"
},
"deleteAccount": {
"headerText": "Deleting your account will immediately and permanently delete all of your data.",
"warningText": "Warning: This action cannot be undone. All your data will be permanently deleted.",
"finalWarning": "Final warning: Enter your password to permanently delete your account.",
"warningVaults": "All encrypted vaults which includes all of your credentials will be permanently deleted",
"warningAliases": "Your email aliases will be orphaned and cannot be claimed by other users",
"warningRecovery": "Your account cannot be recovered after deletion",
"irreversibleWarning": "Account deletion is irreversible and cannot be undone. Pressing the button below will delete your account immediately and permanently.",
"enterUsername": "Enter your username to continue",
"password": "Password",
"enterPassword": "Enter password",
"deleteAccount": "Delete Account",
"confirmationMessage": "Are you absolutely sure you want to delete your account? This action cannot be undone.",
"usernameDoesNotMatch": "Username does not match",
"verifyingPassword": "Verifying password...",
"currentPasswordIncorrect": "Current password is not correct",
"initiatingDeletion": "Initiating account deletion",
"verifyingWithServer": "Verifying with server",
"deletingAccount": "Deleting account",
"accountDeleted": "Account deleted successfully",
"failedToDelete": "Failed to delete account. Please try again.",
"usernameNotFound": "Username not found. Please login again."
}
},
"qrScanner": {
"title": "QR Code Scanner",
"scanningMessage": "Scan AliasVault QR code",
"mobileLogin": {
"confirmTitle": "Confirm Login Request",
"confirmSubtitle": "Re-authenticate to approve login on another device.",
"confirmMessage": "You are about to log in on a remote device with your account. This other device will have full access to your vault. Only proceed if you trust this device.",
"successDescription": "The remote device has been successfully logged in.",
"requestExpired": "This login request has expired. Please generate a new QR code."
}
}
},
"navigation": {
"vault": "Vault",
"emails": "Emails",
"settings": "Settings"
},
"itemTypes": {
"creating": "Creating",
"editing": "Editing",
"login": {
"title": "Login"
},
"alias": {
"title": "Alias"
},
"creditCard": {
"title": "Credit Card",
"cardInformation": "Card Information"
},
"note": {
"title": "Note"
},
"addField": "Add Field",
"addCustomField": "Add Custom Field",
"customFields": "Custom Fields",
"fieldLabel": "Field Label",
"fieldType": "Field Type",
"enterFieldName": "Enter field name",
"fieldTypes": {
"text": "Text",
"hidden": "Hidden",
"email": "Email",
"url": "URL",
"phone": "Phone",
"number": "Number",
"date": "Date",
"textArea": "Text Area"
}
},
"fieldLabels": {
"login.username": "Username",
"login.password": "Password",
"login.email": "Email",
"login.url": "URL",
"alias.first_name": "First Name",
"alias.last_name": "Last Name",
"alias.gender": "Gender",
"alias.birthdate": "Birth Date",
"card.cardholder_name": "Cardholder Name",
"card.number": "Card Number",
"card.expiry_month": "Expiry Month",
"card.expiry_year": "Expiry Year",
"card.cvv": "CVV",
"card.pin": "PIN",
"notes.content": "Notes"
},
"items": {
"title": "Items",
"addItem": "Add Item",
"editItem": "Edit Item",
"deleteItem": "Delete Item",
"itemDetails": "Item Details",
"itemCreated": "Item Created",
"itemCreatedMessage": "Your new item has been added to your vault and is ready to use.",
"emailPreview": "Email Preview",
"untitled": "Untitled",
"name": "Name",
"url": "URL",
"itemName": "Name",
"serviceUrl": "Service URL",
"loginCredentials": "Login credentials",
"cardInformation": "Card Information",
"email": "Email",
"alias": "Alias",
"firstName": "First Name",
"lastName": "Last Name",
"fullName": "Full Name",
"birthDate": "Birth Date",
"birthDatePlaceholder": "YYYY-MM-DD",
"notes": "Notes",
"randomAlias": "Random Alias",
"manual": "Manual",
"enterEmailPrefix": "Enter email prefix",
"selectEmailDomain": "Select Email Domain",
"privateEmailTitle": "Private Email",
"privateEmailAliasVaultServer": "AliasVault server",
"privateEmailDescription": "E2E encrypted, fully private.",
"publicEmailTitle": "Public Temp Email Providers",
"publicEmailDescription": "Anonymous but limited privacy. Email content is readable by anyone that knows the address.",
"searchPlaceholder": "Search vault...",
"noMatchingItems": "No matching items found",
"noMatchingItemsSearch": "No items matching \"{{search}}\"",
"noMatchingItemsWithFilter": "No {{filter}} items matching \"{{search}}\"",
"noItemsFound": "No items found. Create one to get started. Tip: you can also login to the AliasVault web app to import credentials from other password managers.",
"allItemsInFolders": "All your items are organized in folders. Tap a folder above to view your credentials, or use the search to find specific items.",
"noPasskeysFound": "No passkeys have been created yet. Passkeys are created by visiting a website that offers passkeys as an authentication method.",
"noAttachmentsFound": "No items with attachments found",
"noItemsOfTypeFound": "No {{type}} items found",
"clearSearch": "Clear search",
"clearFilter": "Clear filter",
"recentEmails": "Recent emails",
"loadingEmails": "Loading emails...",
"noEmailsYet": "No emails received yet.",
"offlineEmailsMessage": "You are offline. Please connect to the internet to load your emails.",
"emailLoadError": "An error occurred while loading emails. Please try again later.",
"emailUnexpectedError": "An unexpected error occurred while loading emails. Please try again later.",
"password": "Password",
"passwordLength": "Password Length",
"changePasswordComplexity": "Password Settings",
"includeLowercase": "Lowercase (a-z)",
"includeUppercase": "Uppercase (A-Z)",
"includeNumbers": "Numbers (0-9)",
"includeSpecialChars": "Special Characters (!@#)",
"avoidAmbiguousChars": "Avoid Ambiguous Characters",
"errorLoadingItems": "Error loading items",
"vaultSyncFailed": "Vault sync failed",
"vaultSyncedSuccessfully": "Vault synced successfully",
"vaultUpToDate": "Vault is up-to-date",
"offlineMessage": "You are offline. Please connect to the internet to sync your vault.",
"switchBackToBrowser": "Switch back to your browser to continue.",
"filters": {
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Attachments"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
},
"totpCode": "TOTP Code",
"attachments": "Attachments",
"deleteAttachment": "Delete",
"fileSavedTo": "File saved to",
"previewNotSupported": "Preview not supported",
"downloadToView": "Download the file to view it",
"unsavedChanges": {
"title": "Discard Changes?",
"message": "You have unsaved changes. Are you sure you want to discard them?",
"discard": "Discard"
},
"toasts": {
"itemUpdated": "Item updated successfully",
"itemCreated": "Item created successfully",
"itemDeleted": "Item deleted successfully",
"usernameCopied": "Username copied to clipboard",
"emailCopied": "Email copied to clipboard",
"passwordCopied": "Password copied to clipboard"
},
"createNewAliasFor": "Create new alias for",
"contextMenu": {
"title": "Item Options",
"edit": "Edit",
"delete": "Delete",
"copyUsername": "Copy Username",
"copyEmail": "Copy Email",
"copyPassword": "Copy Password"
},
"viewHistory": "View history",
"history": "History",
"noHistoryAvailable": "No history available",
"deleteHistoryConfirm": "Are you sure you want to delete this history record?",
"deleteConfirm": "Are you sure you want to delete this item? This action cannot be undone.",
"folders": {
"folder": "Folder",
"newFolder": "New Folder",
"createFolder": "Create Folder",
"editFolder": "Edit Folder",
"folderName": "Folder Name",
"folderNamePlaceholder": "e.g., Work, Personal",
"folderNameRequired": "Folder name is required",
"deleteFolder": "Delete Folder",
"deleteFolderKeepItems": "Delete folder only",
"deleteFolderKeepItemsDescription": "Items will be moved back to the main list.",
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"emptyFolderHint": "This folder is empty. To move items to this folder, edit the item and select this folder.",
"noFolder": "No Folder",
"selectFolder": "Select Folder"
},
"recentlyDeleted": {
"title": "Recently Deleted",
"noItems": "No deleted items",
"noItemsDescription": "Items you delete will appear here for 30 days before being permanently removed.",
"description": "These items will be permanently deleted after 30 days. You can restore them or delete them immediately.",
"restore": "Restore",
"deletePermanently": "Delete Permanently",
"emptyAll": "Empty All",
"daysRemaining": "{{count}} day remaining",
"daysRemaining_plural": "{{count}} days remaining",
"expiringSoon": "Expiring soon",
"confirmDeleteTitle": "Delete Permanently?",
"confirmDeleteMessage": "This item will be permanently deleted and cannot be recovered.",
"confirmEmptyAllTitle": "Empty Recently Deleted?",
"confirmEmptyAllMessage": "All {{count}} items will be permanently deleted and cannot be recovered.",
"itemRestored": "Item restored",
"itemDeleted": "Item permanently deleted",
"allItemsDeleted": "All items permanently deleted"
}
},
"emails": {
"title": "Emails",
"emailDetails": "Email Details",
"subject": "Subject:",
"date": "Date:",
"from": "From:",
"to": "To:",
"attachments": "Attachments",
"deleteEmail": "Delete Email",
"deleteEmailConfirm": "Are you sure you want to delete this email? This action is permanent and cannot be undone.",
"emailNotFound": "Email not found",
"noPlainText": "This email does not contain any plain-text.",
"sizeKB": "KB",
"offlineMessage": "You are offline. Please connect to the internet to load your emails.",
"emptyMessage": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.",
"time": {
"justNow": "just now",
"minutesAgo_single": "{{count}} min ago",
"minutesAgo_plural": "{{count}} mins ago",
"hoursAgo_single": "{{count}} hr ago",
"hoursAgo_plural": "{{count}} hrs ago",
"yesterday": "yesterday"
}
},
"validation": {
"required": "This field is required",
"serviceNameRequired": "Service name is required",
"invalidDateFormat": "Date must be in YYYY-MM-DD format",
"invalidEmailFormat": "Invalid email format"
},
"apiErrors": {
"CLAIM_DOES_NOT_MATCH_USER": "The current chosen email address is already in use. Please change the email address by editing this credential.",
"CLAIM_DOES_NOT_EXIST": "An error occurred while trying to load the emails. Please try to edit and save the credential entry to synchronize the database, then try again.",
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
"ACCOUNT_LOCKED": "Account temporarily locked due to too many failed attempts. Please try again later.",
"ACCOUNT_BLOCKED": "Your account has been disabled. If you believe this is a mistake, please contact support.",
"USER_NOT_FOUND": "Invalid username or password. Please try again.",
"INVALID_AUTHENTICATOR_CODE": "Invalid authenticator code. Please try again.",
"INVALID_RECOVERY_CODE": "Invalid recovery code. Please try again.",
"REFRESH_TOKEN_REQUIRED": "Refresh token is required.",
"INVALID_REFRESH_TOKEN": "Invalid refresh token.",
"PUBLIC_REGISTRATION_DISABLED": "New account registration is currently disabled on this server. Please contact the administrator.",
"USERNAME_REQUIRED": "Username is required.",
"USERNAME_ALREADY_IN_USE": "Username is already in use.",
"USERNAME_AVAILABLE": "Username is available.",
"USERNAME_MISMATCH": "Username does not match the current user.",
"PASSWORD_MISMATCH": "The provided password does not match your current password.",
"ACCOUNT_SUCCESSFULLY_DELETED": "Account successfully deleted.",
"USERNAME_EMPTY_OR_WHITESPACE": "Username cannot be empty or whitespace.",
"USERNAME_TOO_SHORT": "Username too short: must be at least 3 characters long.",
"USERNAME_TOO_LONG": "Username too long: cannot be longer than 40 characters.",
"USERNAME_INVALID_EMAIL": "Invalid email address.",
"USERNAME_INVALID_CHARACTERS": "Username is invalid, can only contain letters or digits.",
"VAULT_NOT_UP_TO_DATE": "Your vault is not up-to-date. Please synchronize your vault and try again.",
"INTERNAL_SERVER_ERROR": "Internal server error.",
"VAULT_ERROR": "The local vault is not up-to-date. Please synchronize your vault by refreshing the page and try again."
},
"sync": {
"offline": "Offline",
"syncing": "Syncing...",
"pending": "Pending sync",
"retrySync": "Tap to retry",
"backOnline": "Back online",
"stillOffline": "Still offline",
"syncFailed": "Sync failed"
},
"app": {
"status": {
"unlockingVault": "Unlocking vault",
"decryptingVault": "Decrypting vault",
"openingVaultReadOnly": "Opening vault in read-only mode",
"retryingConnection": "Retrying connection..."
},
"offline": {
"banner": "Offline - changes will sync when online",
"backOnline": "Back online",
"stillOffline": "Still offline"
},
"alerts": {
"syncIssue": "No Connection",
"openLocalVault": "Open Local Vault",
"retrySync": "Retry Sync"
},
"navigation": {
"login": "Login",
"loginSettings": "Login Settings"
},
"notFound": {
"title": "Page not found",
"message": "This page has been moved or deleted.",
"goHome": "Go back to the start"
},
"appName": "AliasVault",
"reinitialize": {
"vaultAutoLockedMessage": "Vault auto-locked after timeout.",
"attemptingToUnlockMessage": "Attempting to unlock."
},
"loginSettings": {
"title": "API Connection",
"aliasvaultNet": "Aliasvault.net",
"selfHosted": "Self-hosted",
"customApiUrl": "Custom API URL",
"customApiUrlPlaceholder": "https://my-aliasvault-instance.com/api",
"version": "Version: {{version}}"
}
},
"upgrade": {
"title": "Upgrade Vault",
"subtitle": "AliasVault has updated and your vault needs to be upgraded. This should only take a few seconds.",
"versionInformation": "Version Information",
"yourVault": "Your vault version:",
"newVersion": "New available version:",
"upgrade": "Upgrade",
"upgrading": "Upgrading...",
"logout": "Logout",
"whatsNew": "What's New",
"whatsNewDescription": "An upgrade is required to support the following changes:",
"noDescriptionAvailable": "No description available for this version.",
"status": {
"preparingUpgrade": "Preparing upgrade...",
"vaultAlreadyUpToDate": "Vault is already up to date",
"startingDatabaseTransaction": "Starting database transaction...",
"applyingDatabaseMigrations": "Applying database migrations...",
"applyingMigration": "Applying migration {{current}} of {{total}}...",
"committingChanges": "Committing changes..."
},
"alerts": {
"unableToGetVersionInfo": "Unable to get version information. Please try again.",
"selfHostedServer": "Self-Hosted Server",
"selfHostedWarning": "If you're using a self-hosted server, make sure to also update your self-hosted instance as otherwise logging in to the web client will stop working.",
"continueUpgrade": "Continue Upgrade",
"upgradeFailed": "Upgrade Failed",
"failedToApplyMigration": "Failed to apply migration ({{current}} of {{total}})"
}
}
}

View File

@@ -436,7 +436,8 @@
"offlineMessage": "You are offline. Please connect to the internet to sync your vault.",
"switchBackToBrowser": "Switch back to your browser to continue.",
"filters": {
"all": "(All) Items",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Attachments"
},

View File

@@ -436,15 +436,16 @@
"offlineMessage": "Keine Verbindung. Bitte verbinde Dich mit dem Internet, um Deinen Tresor zu synchronisieren.",
"switchBackToBrowser": "Wechsle zurück zu Deinem Browser, um fortzufahren",
"filters": {
"all": "(Alle) Elemente",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Anhänge"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Sortieren nach",
"oldestFirst": "Älteste zuerst",
"newestFirst": "Neueste zuerst",
"alphabetical": "Alphabetisch (A-Z)"
},
"totpCode": "TOTP-Code",
"attachments": "Anhänge",

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Estás desconectado. Por favor, conéctate a Internet para sincronizar tu bóveda.",
"switchBackToBrowser": "Vuelva a su navegador para continuar.",
"filters": {
"all": "(Todos) Elementos",
"all": "Elementos",
"showFolders": "Carpetas",
"passkeys": "Llaves de acceso",
"attachments": "Archivos adjuntos"
},

View File

@@ -436,7 +436,8 @@
"offlineMessage": "You are offline. Please connect to the internet to sync your vault.",
"switchBackToBrowser": "Switch back to your browser to continue.",
"filters": {
"all": "(All) Items",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Attachments"
},

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Olet ei-verkkotilassa. Yhdistä internetiin synkronoidaksesi holvisi.",
"switchBackToBrowser": "Siirry takaisin selaimeen jatkaaksesi.",
"filters": {
"all": "(Kaikki) tiedot",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Sala-avaimet",
"attachments": "Liitteet"
},

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Vous êtes déconnecté. Veuillez vous connecter à internet pour synchroniser votre coffre.",
"switchBackToBrowser": "Passez à votre navigateur pour continuer.",
"filters": {
"all": "(Tous) Éléments",
"all": "Éléments",
"showFolders": "Dossiers",
"passkeys": "Clés d'accès",
"attachments": "Pièces jointes"
},

View File

@@ -436,7 +436,8 @@
"offlineMessage": "החיבור שלך מנותק. נא להתחבר לאינטרנט כדי לסנכרן את הכספת שלך.",
"switchBackToBrowser": "יש לחזור לדפדפן שלך כדי להמשיך.",
"filters": {
"all": "(All) Items",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "צרופות"
},

View File

@@ -436,15 +436,16 @@
"offlineMessage": "Sei offline. Collegati a internet per sincronizzare la cassaforte.",
"switchBackToBrowser": "Torna al browser per continuare.",
"filters": {
"all": "(Tutti) Elementi",
"all": "Elementi",
"showFolders": "Cartelle",
"passkeys": "Passkey",
"attachments": "Allegati"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Ordina per",
"oldestFirst": "Prima i più vecchi",
"newestFirst": "Prima i più recenti",
"alphabetical": "Alfabetico (A-Z)"
},
"totpCode": "Codice TOTP",
"attachments": "Allegati",

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Je bent offline. Maak verbinding met het internet om je vault te synchroniseren.",
"switchBackToBrowser": "Schakel terug naar je browser om door te gaan.",
"filters": {
"all": "(Alle) Items",
"all": "Items",
"showFolders": "Mappen",
"passkeys": "Passkeys",
"attachments": "Bijlagen"
},

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Jesteś offline. Połącz się z Internetem, aby zsynchronizować swój sejf.",
"switchBackToBrowser": "Wróć do przeglądarki, aby kontynuować.",
"filters": {
"all": "(Wszystkie) pozycje",
"all": "Elementy",
"showFolders": "Foldery",
"passkeys": "Klucze dostępu",
"attachments": "Załączniki"
},

View File

@@ -436,15 +436,16 @@
"offlineMessage": "Você está offline. Por favor conecte-se à internet para sincronizar seu cofre.",
"switchBackToBrowser": "Volte ao navegador para continuar.",
"filters": {
"all": "(Todos) Itens",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Anexos"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Ordenar por",
"oldestFirst": "Mais antigos primeiro",
"newestFirst": "Mais novos primeiro",
"alphabetical": "Ordem Alfabética (A-Z)"
},
"totpCode": "Código TOTP",
"attachments": "Anexos",

View File

@@ -62,11 +62,11 @@
"invalidAuthCode": "Introdu un cod de autentificare valid format din 6 cifre",
"incorrectPassword": "Parolă incorectă. Încearcă din nou.",
"enterPassword": "Introdu parola",
"serverError": "Conexiunea la serverul AliasVault a eșuat. Încearcă mai târziu sau contactați asistența dacă problema persistă.",
"serverError": "Nu s-a putut stabili conexiunea cu serverul AliasVault. Încearcă din nou mai târziu sau contactează asistența dacă problema persistă.",
"serverErrorSelfHosted": "Nu s-a putut accesa API-ul. Pentru instanțele self-hosted, verifică dacă adresa API este accesibilă dintr-un browser: ar trebui să afișeze 'OK'.",
"networkError": "Cererea de rețea a eșuat. Verifică conexiunea la internet și încearcă din nou.",
"networkErrorSelfHosted": "Solicitarea de rețea a eșuat. Verificați conexiunea și disponibilitatea serverului. Pentru instanțele self-hosted, asigurați-vă că aveți un certificat SSL valid instalat. Certificatele de tip „self-signed” nu sunt acceptate pe dispozitivele mobile din motive de securitate.",
"sessionExpired": "Sesiunea a expirat. Autentifică-te din nou.",
"sessionExpired": "Sesiunea ta a expirat. Autentifică-te din nou.",
"httpError": "Eroare HTTP: {{status}}"
},
"confirmLogout": "Sigur dorești să te deconectezi? Va trebui să te autentifici din nou cu parola principală pentru a accesa seiful.",
@@ -120,11 +120,11 @@
},
"settings": {
"title": "Setări",
"autofill": "Completare automată și chei de acces",
"autofill": "Completare automată și Passkey",
"iosAutofillSettings": {
"headerText": "Poți configura AliasVault pentru a beneficia de funcționalitatea nativă de completare automată a parolelor și a cheilor de acces în iOS. Urmează instrucțiunile de mai jos pentru a o activa.",
"passkeyNotice": "Cheile de acces sunt create prin iOS. Pentru a le stoca în AliasVault, asigură-te că funcția Completare automată este activată mai jos.",
"howToEnable": "Cum se activează completarea automată și cheile de acces:",
"headerText": "Poți configura AliasVault pentru a oferi funcționalitatea nativă de completare automată a parolelor și passkey-urilor în iOS. Urmează instrucțiunile de mai jos pentru a o activa.",
"passkeyNotice": "Passkey-urile sunt create prin iOS. Pentru a le stoca în AliasVault, asigură-te că funcția de completare automată de mai jos este activată.",
"howToEnable": "Cum se activează completarea automată și passkey-urile:",
"step1": "1. Deschide Setările iOS prin butonul de mai jos",
"step2": "2. Mergi la „General”",
"step3": "3. Apasă pe „AutoFill & Passwords”",
@@ -136,19 +136,19 @@
},
"androidAutofillSettings": {
"warningTitle": "⚠️ Funcție Experimentală",
"warningDescription": "Completarea automată și cheile de acces pentru Android sunt momentan în fază experimentală.",
"warningDescription": "Funcționalitatea de completare automată și passkey pe Android se află în prezent într-o stare experimentală.",
"warningLink": "Citește mai multe aici",
"headerText": "Poți configura AliasVault pentru a beneficia de funcționalitatea nativă de completare automată a parolelor și a cheilor de acces în Android. Urmează instrucțiunile de mai jos pentru a o activa.",
"passkeyNotice": "Cheile de acces sunt create prin Android Credential Manager (Android 14+). Pentru a le stoca în AliasVault, asigură-te că funcția de completare automată este activată.",
"howToEnable": "Cum se activează completarea automată și cheile de acces:",
"headerText": "Poți configura AliasVault pentru a oferi funcționalitatea nativă de completare automată a parolelor și passkey-urilor pe Android. Urmează instrucțiunile de mai jos pentru a o activa.",
"passkeyNotice": "Passkey-urile sunt create prin Android Credential Manager (Android 14+). Pentru a le stoca în AliasVault, asigură-te că funcția de completare automată de mai jos este activată.",
"howToEnable": "Cum se activează completarea automată și passkey-urile:",
"step1": "1. Deschide setările Android folosind butonul de mai jos și schimbă „Serviciul de completare automată” în „AliasVault",
"openAutofillSettings": "Deschide setările de completare automată",
"buttonTip": "Dacă butonul de mai sus nu funcționează, ar putea fi blocat din cauza setărilor de securitate. Poți merge manual la Setări Android → Management general → Parole și completare automată.",
"step2": "2. Unele aplicații, cum ar fi Google Chrome, pot necesita configurare manuală în setările proprii pentru a permite servicii de completare automată de la terți. Totuși, majoritatea aplicațiilor ar trebui să funcționeze implicit.",
"step2": "2. Unele aplicații, de exemplu Google Chrome, pot necesita configurare manuală în setările lor pentru a permite aplicațiilor terțe de completare automată. Totuși, majoritatea aplicațiilor ar trebui să funcționeze cu completarea automată în mod implicit.",
"alreadyConfigured": "Am configurat deja",
"advancedOptions": "Opțiuni Avansate",
"showSearchText": "Afișează textul căutat",
"showSearchTextDescription": "Include textul pe care AliasVault îl primește de la Android pentru a căuta date de autentificare corespondente"
"showSearchTextDescription": "Include textul pe care AliasVault îl primește de la Android și pe care îl folosește pentru a căuta datele de autentificare corespunzătoare"
},
"vaultUnlock": "Metodă deblocare seif",
"autoLock": "Interval auto-blocare",
@@ -164,7 +164,7 @@
},
"batteryOptimizationHelpTitle": "Activează ștergerea clipboard-ului în fundal",
"batteryOptimizationActive": "Optimizarea bateriei blochează sarcinile în fundal",
"batteryOptimizationDisabled": "Ștergerea clipboard-ului în fundal a fost activată",
"batteryOptimizationDisabled": "Ștergerea clipboard-ului în fundal este activată",
"batteryOptimizationHelpDescription": "Optimizarea bateriei Android împiedică ștergerea fiabilă a clipboard-ului când aplicația rulează în fundal. Dezactivarea optimizării bateriei pentru AliasVault permite ștergerea precisă a clipboard-ului în fundal și acordă automat permisiunile necesare.",
"disableBatteryOptimization": "Dezactivează optimizarea bateriei",
"identityGenerator": "Generator de Identitate",
@@ -311,7 +311,7 @@
"confirmTitle": "Confirmă Cererea de Autentificare",
"confirmSubtitle": "Re-autentifică-te pentru a aproba logarea pe alt dispozitiv.",
"confirmMessage": "Ești pe cale să te autentifici pe un dispozitiv la distanță. Acest dispozitiv va avea acces complet la seiful tău. Continuă doar dacă ai încredere în acel dispozitiv.",
"successDescription": "Dispozitivul la distanță a fost autentificat cu succes.",
"successDescription": "Dispozitivul de la distanță a fost autentificat cu succes.",
"requestExpired": "Cererea de autentificare a expirat. Generează un cod QR nou."
}
}
@@ -408,7 +408,7 @@
"noMatchingItems": "Nu s-au găsit elemente potrivite",
"noMatchingItemsSearch": "Nu s-au găsit elemente pentru „{{search}}”",
"noMatchingItemsWithFilter": "Niciun element {{filter}} nu se potrivește cu „{{search}}”",
"noItemsFound": "Nu s-a găsit nicio înregistrare. Creează una pentru a începe. Sfat: te poți autentifica în aplicația web AliasVault pentru a importa date de autentificare din alte managere de parole.",
"noItemsFound": "Nu s-a găsit niciun element. Creează unul pentru a începe. Sfat: te poți autentifica în aplicația web AliasVault pentru a importa date de autentificare din alte managere de parole.",
"allItemsInFolders": "Toate elementele tale sunt organizate în dosare. Apasă pe un dosar de mai sus pentru a vizualiza datele de autentificare sau folosește căutarea pentru a găsi elemente specifice.",
"noPasskeysFound": "Nu a fost creat niciun passkey încă. Passkey-urile se creează vizitând un site care oferă passkey ca metodă de autentificare.",
"noAttachmentsFound": "Nu s-au găsit elemente cu atașamente",
@@ -432,11 +432,12 @@
"errorLoadingItems": "Eroare la încărcarea elementelor",
"vaultSyncFailed": "Sincronizarea seifului a eșuat",
"vaultSyncedSuccessfully": "Seiful a fost sincronizat cu succes",
"vaultUpToDate": "Seiful este la zi",
"vaultUpToDate": "Seiful este actualizat",
"offlineMessage": "Ești offline. Conectează-te la internet pentru a sincroniza seiful.",
"switchBackToBrowser": "Revino în browser pentru a continua.",
"filters": {
"all": "(Toate) Elementele",
"all": "Elemente",
"showFolders": "Dosare",
"passkeys": "Passkeys",
"attachments": "Atașamente"
},
@@ -569,9 +570,9 @@
"USERNAME_TOO_LONG": "Numele de utilizator este prea lung: nu poate depăși 40 de caractere.",
"USERNAME_INVALID_EMAIL": "Adresă de e-mail invalidă.",
"USERNAME_INVALID_CHARACTERS": "Numele de utilizator este invalid, folosește doar litere sau cifre.",
"VAULT_NOT_UP_TO_DATE": "Seiful tău nu este la zi. Sincronizarea seifului tău este necesară înainte de a reîncerca.",
"VAULT_NOT_UP_TO_DATE": "Seiful tău nu este actualizat. Sincronizea seiful și încearcă din nou.",
"INTERNAL_SERVER_ERROR": "Eroare internă de server.",
"VAULT_ERROR": "Seiful tău local nu este la zi. Reîmprospătea pagina pentru a sincroniza seiful și reîncearcă."
"VAULT_ERROR": "Seiful local nu este actualizat. Sincronizează seiful prin reîmprospătarea paginii și încearcă din nou."
},
"sync": {
"offline": "Offline",
@@ -636,7 +637,7 @@
"noDescriptionAvailable": "Nicio descriere disponibilă pentru această versiune.",
"status": {
"preparingUpgrade": "Se pregătește actualizarea...",
"vaultAlreadyUpToDate": "Seiful este deja la zi",
"vaultAlreadyUpToDate": "Seiful este deja actualizat",
"startingDatabaseTransaction": "Se inițiază tranzacția bazei de date...",
"applyingDatabaseMigrations": "Se aplică migrările bazei de date...",
"applyingMigration": "Se aplică migrarea {{current}} din {{total}}...",

View File

@@ -436,15 +436,16 @@
"offlineMessage": "Вы не в сети. Пожалуйста, подключитесь к Интернету, чтобы синхронизировать ваше хранилище.",
"switchBackToBrowser": "Вернитесь в свой браузер, чтобы продолжить.",
"filters": {
"all": "(Все) Записи",
"all": "Записи",
"showFolders": "Папки",
"passkeys": "Ключи доступа",
"attachments": "Вложения"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "Сортировка",
"oldestFirst": "Сначала старые",
"newestFirst": "Сначала новые",
"alphabetical": "По алфавиту (А–Я)"
},
"totpCode": "TOTP код",
"attachments": "Вложения",

View File

@@ -104,9 +104,9 @@
},
"passkeys": {
"passkey": "Passkey",
"helpText": "Passkeys skapas på webbplatsen när du blir tillfrågad. De kan inte redigeras manuellt. För att radera denna passkey, tar du bort den från denna uppgiftsposten.",
"helpText": "Passkeys skapas på webbplatsen när du blir tillfrågad. De kan inte redigeras manuellt. För att radera denna passkey, tar du bort den från denna inloggningsuppgiften.",
"passkeyMarkedForDeletion": "Passkey markerad för borttagning",
"passkeyWillBeDeleted": "Denna passkey kommer att tas bort när du sparar dessa uppgifter."
"passkeyWillBeDeleted": "Denna passkey kommer att tas bort när du sparar denna inloggningsuppgift."
},
"totp": {
"addCode": "Lägg till 2FA kod",
@@ -148,7 +148,7 @@
"alreadyConfigured": "Jag har redan konfigurerat det",
"advancedOptions": "Avancerade inställningar",
"showSearchText": "Visa söktext",
"showSearchTextDescription": "Inkludera texten AliasVault tar emot från Android som den använder för att söka efter en matchande uppgiftspost"
"showSearchTextDescription": "Inkludera texten AliasVault tar emot från Android som den använder för att söka efter en matchande inloggningsuppgift"
},
"vaultUnlock": "Valvupplåsningsmetod",
"autoLock": "Timeout för automatisk låsning",
@@ -172,7 +172,7 @@
"importExport": "Importera / Exportera",
"importSectionTitle": "Importera",
"importSectionDescription": "Importera dina lösenord från andra lösenordshanterare eller från en tidigare AliasVault-export.",
"importWebNote": "Logga in i webbappen för att importera uppgiftsposter från befintliga lösenordshanterare. Importfunktionen är för närvarande endast tillgänglig på webbversionen.",
"importWebNote": "Logga in i webbappen för att importera inloggningsuppgifter från befintliga lösenordshanterare. Importfunktionen är för närvarande endast tillgänglig på webbversionen.",
"exportSectionTitle": "Exportera",
"exportSectionDescription": "Exportera dina valvdata till en CSV-fil. Denna fil kan användas som en säkerhetskopiering och kan även importeras till andra lösenordshanterare.",
"exportCsvButton": "Exportera valv till CSV-fil",
@@ -284,7 +284,7 @@
"headerText": "Borttagning av ditt konto kommer omedelbart och permanent radera alla dina data.",
"warningText": "Varning: Denna åtgärd kan inte ångras. Alla dina data kommer att raderas permanent.",
"finalWarning": "Slutgiltig varning: Ange ditt lösenord för att permanent radera ditt konto.",
"warningVaults": "Alla krypterade valv som innehåller alla dina uppgifter kommer att raderas permanent",
"warningVaults": "Alla krypterade valv som innehåller alla dina inloggningsuppgifter kommer att raderas permanent",
"warningAliases": "Dina e-postalias kommer att överges och kan inte hämtas av andra användare",
"warningRecovery": "Ditt konto kan inte återställas efter raderingen",
"irreversibleWarning": "Kontoborttagningen är oåterkallelig och kan inte ångras. Genom att trycka på knappen nedan raderas ditt konto omedelbart och permanent.",
@@ -408,8 +408,8 @@
"noMatchingItems": "Hittade inga matchande resultat",
"noMatchingItemsSearch": "Inga objekt matchar \"{{search}}\"",
"noMatchingItemsWithFilter": "Inga {{filter}} objekt som matchar \"{{search}}\"",
"noItemsFound": "Inga objekt hittades. Skapa ett för att komma igång. Tips: du kan även logga in på AliasVault webbapp för att importera uppgifter från andra lösenordshanterare.",
"allItemsInFolders": "Alla dina objekt är organiserade i mappar. Klicka på en mapp ovan för att visa dina uppgifter, eller använd sökningen för att hitta specifika objekt.",
"noItemsFound": "Inga objekt hittades. Skapa ett för att komma igång. Tips: du kan även logga in på AliasVault webbapp för att importera inloggningsuppgifter från andra lösenordshanterare.",
"allItemsInFolders": "Alla dina objekt är organiserade i mappar. Klicka på en mapp ovan för att visa dina inloggningsuppgifter, eller använd sökningen för att hitta specifika objekt.",
"noPasskeysFound": "Inga passkeys har skapats ännu. Passkeys skapas genom att besöka en webbplats som erbjuder passkeys som en autentiseringsmetod.",
"noAttachmentsFound": "Inga objekt med bifogade filer hittades",
"noItemsOfTypeFound": "Inga {{type}} objekt hittades",
@@ -436,7 +436,8 @@
"offlineMessage": "Du är offline. Anslut till internet för att synkronisera ditt valv.",
"switchBackToBrowser": "Växla tillbaka till webbläsaren för att fortsätta.",
"filters": {
"all": "(Alla) objekt",
"all": "Objekt",
"showFolders": "Mappar",
"passkeys": "Passkeys",
"attachments": "Bifogade filer"
},
@@ -547,8 +548,8 @@
"invalidEmailFormat": "Ogiltigt e-postformat"
},
"apiErrors": {
"CLAIM_DOES_NOT_MATCH_USER": "Den aktuella valda e-postadressen används redan. Vänligen ändra e-postadressen genom att redigera denna uppgiftsposten.",
"CLAIM_DOES_NOT_EXIST": "Ett fel inträffade när e-posten skulle laddas. Försök att redigera och spara uppgiftsposten för att synkronisera databasen, och försök sedan igen.",
"CLAIM_DOES_NOT_MATCH_USER": "Den aktuella valda e-postadressen används redan. Vänligen ändra e-postadressen genom att redigera denna post.",
"CLAIM_DOES_NOT_EXIST": "Ett fel inträffade när e-posten skulle laddas. Försök att redigera och spara posten för att synkronisera databasen, och försök sedan igen.",
"UNKNOWN_ERROR": "Ett okänt fel inträffade. Försök igen.",
"ACCOUNT_LOCKED": "Kontot är tillfälligt låst på grund av för många misslyckade försök. Försök igen senare.",
"ACCOUNT_BLOCKED": "Ditt konto har inaktiverats. Om du tror att detta är ett misstag, kontakta support.",

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Çevrimdışısınız. E-postalarınızı yüklemek için lütfen internet bağlantısı sağlayın.",
"switchBackToBrowser": "Tarayıcınıza geri dönerek devam edin.",
"filters": {
"all": "(All) Items",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Ekler"
},

View File

@@ -436,7 +436,8 @@
"offlineMessage": "Ви не в мережі. Приєднайтесь до Інтернету, щоб синхронізувати сховище.",
"switchBackToBrowser": "Щоб продовжити, поверніться до браузера.",
"filters": {
"all": "(All) Items",
"all": "Items",
"showFolders": "Folders",
"passkeys": "Ключі доступу",
"attachments": "Вкладення"
},

View File

@@ -0,0 +1,655 @@
{
"common": {
"cancel": "Cancel",
"close": "Close",
"delete": "Delete",
"save": "Save",
"yes": "Yes",
"no": "No",
"ok": "OK",
"continue": "Continue",
"loading": "Loading",
"error": "Error",
"success": "Success",
"never": "Never",
"copied": "Copied to clipboard",
"loadMore": "Load more",
"use": "Use",
"confirm": "Confirm",
"next": "Next",
"notice": "Notice",
"enabled": "Enabled",
"disabled": "Disabled",
"twoFactorAuthentication": "Two-factor authentication",
"add": "Add",
"generate": "Generate",
"attachments": "Attachments",
"deleteItemConfirmTitle": "Delete Item",
"deleteItemConfirmDescription": "Are you sure you want to delete this item?",
"errors": {
"unknownError": "An unknown error occurred.",
"unknownErrorTryAgain": "An unknown error occurred. Please try again.",
"serverVersionTooOld": "The AliasVault server needs to be updated to a newer version in order to use this feature. Please contact the server admin if you need help."
}
},
"auth": {
"login": "Log in",
"logout": "Logout",
"username": "Username or email",
"password": "Password",
"authCode": "Authentication Code",
"unlock": "Unlock",
"unlocking": "Unlocking...",
"loggingIn": "Logging in",
"validatingCredentials": "Validating credentials",
"syncingVault": "Syncing vault",
"verifyingAuthCode": "Verifying authentication code",
"verify": "Verify",
"unlockVault": "Unlock Vault",
"unlockWithPin": "Unlock with PIN",
"enterPassword": "Enter your password to unlock your vault",
"enterPasswordPlaceholder": "Password",
"enterAuthCode": "Enter 6-digit code",
"usernamePlaceholder": "name / name@company.com",
"passwordPlaceholder": "Enter your password",
"enableBiometric": "Enable {{biometric}}?",
"biometricPrompt": "Would you like to use {{biometric}} to unlock your vault?",
"tryBiometricAgain": "Try {{biometric}} Again",
"tryPinAgain": "Try PIN Again",
"authCodeNote": "Note: if you don't have access to your authenticator device, you can reset your 2FA with a recovery code by logging in via the website.",
"errors": {
"credentialsRequired": "Username and password are required",
"invalidAuthCode": "Please enter a valid 6-digit authentication code",
"incorrectPassword": "Incorrect password. Please try again.",
"enterPassword": "Please enter your password",
"serverError": "Could not reach AliasVault server. Please try again later or contact support if the problem persists.",
"serverErrorSelfHosted": "Could not reach the API. For self-hosted instances, please verify the API endpoint is reachable by navigating to it in a browser: it should display 'OK'.",
"networkError": "Network request failed. Please check your internet connection and try again.",
"networkErrorSelfHosted": "Network request failed. Check your network connection and server availability. For self-hosted instances, please ensure you have a valid SSL certificate installed. Self-signed certificates are not supported on mobile devices for security reasons.",
"sessionExpired": "Your session has expired. Please login again.",
"httpError": "HTTP error: {{status}}"
},
"confirmLogout": "Are you sure you want to logout? You need to login again with your master password to access your vault.",
"noAccountYet": "No account yet?",
"createNewVault": "Create new vault",
"connectingTo": "Connecting to",
"loggedInAs": "Logged in as"
},
"logout": {
"unsyncedChangesTitle": "Unsynced Changes",
"unsyncedChangesWarning": "You have unsynced changes that will be lost if you log out now. Are you sure you want to continue?",
"logoutAnyway": "Log out anyway"
},
"vault": {
"syncingVault": "Syncing vault",
"uploadingVaultToServer": "Uploading vault to server",
"savingChangesToVault": "Saving changes to vault",
"checkingForVaultUpdates": "Checking for vault updates",
"executingOperation": "Executing operation...",
"checkingVaultUpdates": "Checking vault updates",
"syncingUpdatedVault": "Syncing updated vault",
"mergingVault": "Merging vault changes",
"uploadingChanges": "Uploading changes",
"errors": {
"failedToGetEncryptedDatabase": "Failed to get encrypted database",
"usernameNotFound": "Username not found",
"vaultOutdated": "Your vault is outdated. Please login on the AliasVault website and follow the steps.",
"failedToSyncVault": "Failed to sync vault",
"versionNotSupported": "This version of the AliasVault mobile app is not supported by the server anymore. Please update your app to the latest version.",
"serverVersionNotSupported": "The AliasVault server needs to be updated to a newer version in order to use this mobile app. Please contact support if you need help.",
"appOutdated": "This app is outdated and cannot be used to access this (newer) vault version. Please update the AliasVault app to continue.",
"passwordChanged": "Your password has changed since the last time you logged in. Please login again for security reasons.",
"passwordChangeRequiresOnline": "Password change requires an internet connection. Please try again when online."
}
},
"passkeys": {
"passkey": "Passkey",
"helpText": "Passkeys are created on the website when prompted. They cannot be manually edited. To remove this passkey, you can delete it from this credential.",
"passkeyMarkedForDeletion": "Passkey marked for deletion",
"passkeyWillBeDeleted": "This passkey will be deleted when you save this credential."
},
"totp": {
"addCode": "Add 2FA Code",
"nameOptional": "Name (optional)",
"secretKey": "Secret Key",
"instructions": "Enter the secret key shown by the website where you want to add two-factor authentication.",
"saveToViewCode": "Save to view code",
"errors": {
"invalidSecretKey": "Invalid secret key format."
}
},
"settings": {
"title": "Settings",
"autofill": "Autofill & Passkeys",
"iosAutofillSettings": {
"headerText": "You can configure AliasVault to provide native password and passkey autofill functionality in iOS. Follow the instructions below to enable it.",
"passkeyNotice": "Passkeys are created through iOS. To store them in AliasVault, ensure Autofill below is enabled.",
"howToEnable": "How to enable Autofill & Passkeys:",
"step1": "1. Open iOS Settings via the button below",
"step2": "2. Go to \"General\"",
"step3": "3. Tap \"AutoFill & Passwords\"",
"step4": "4. Enable \"AliasVault\"",
"step5": "5. Disable other password providers (e.g. \"iCloud Passwords\") to avoid conflicts",
"openIosSettings": "Open iOS Settings",
"alreadyConfigured": "I already configured it",
"warningText": "Note: You'll need to authenticate with Face ID/Touch ID or your device passcode when using autofill."
},
"androidAutofillSettings": {
"warningTitle": "⚠️ Experimental Feature",
"warningDescription": "Autofill and passkey support for Android is currently in an experimental state.",
"warningLink": "Read more about it here",
"headerText": "You can configure AliasVault to provide native password and passkey autofill functionality in Android. Follow the instructions below to enable it.",
"passkeyNotice": "Passkeys are created through Android Credential Manager (Android 14+). To store them in AliasVault, ensure Autofill below is enabled.",
"howToEnable": "How to enable Autofill & Passkeys:",
"step1": "1. Open Android Settings via the button below, and change the \"autofill preferred service\" to \"AliasVault\"",
"openAutofillSettings": "Open Autofill Settings",
"buttonTip": "If the button above doesn't work it might be blocked because of security settings. You can manually go to Android Settings → General Management → Passwords and autofill.",
"step2": "2. Some apps, e.g. Google Chrome, may require manual configuration in their settings to allow third-party autofill apps. However, most apps should work with autofill by default.",
"alreadyConfigured": "I already configured it",
"advancedOptions": "Advanced Options",
"showSearchText": "Show search text",
"showSearchTextDescription": "Include the text AliasVault receives from Android that it uses to search for a matching credential"
},
"vaultUnlock": "Vault Unlock Method",
"autoLock": "Auto-lock Timeout",
"clipboardClear": "Clear Clipboard",
"clipboardClearDescription": "Automatically clear copied passwords and sensitive information from your clipboard after a specified time period.",
"clipboardClearAndroidWarning": "Note: some Android devices have clipboard history enabled, which may keep track of previously copied items, even after AliasVault clears the clipboard. AliasVault can only overwrite the most recent item, but older entries may remain visible in history. For security reasons, we recommend disabling any clipboard history features in your device settings.",
"clipboardClearOptions": {
"never": "Never",
"5seconds": "5 seconds",
"10seconds": "10 seconds",
"15seconds": "15 seconds",
"30seconds": "30 seconds"
},
"batteryOptimizationHelpTitle": "Enable Background Clipboard Clearing",
"batteryOptimizationActive": "Battery optimization is blocking background tasks",
"batteryOptimizationDisabled": "Background clipboard clearing enabled",
"batteryOptimizationHelpDescription": "Android's battery optimization prevents reliable clipboard clearing when the app is in the background. Disabling battery optimization for AliasVault allows precise background clipboard clearing and automatically grants necessary alarm permissions.",
"disableBatteryOptimization": "Disable battery optimization",
"identityGenerator": "Identity Generator",
"passwordGenerator": "Password Generator",
"importExport": "Import / Export",
"importSectionTitle": "Import",
"importSectionDescription": "Import your passwords from other password managers or from a previous AliasVault export.",
"importWebNote": "To import credentials from existing password managers, please login to the web app. The import feature is currently only available on the web version.",
"exportSectionTitle": "Export",
"exportSectionDescription": "Export your vault data to a CSV file. This file can be used as a back-up and can also be imported into other password managers.",
"exportCsvButton": "Export vault to CSV file",
"exporting": "Exporting...",
"exportConfirmTitle": "Export Vault",
"exportWarning": "Warning: Exporting your vault to an unencrypted file will expose all of your passwords and sensitive information in plain text. Only do this on trusted devices and ensure you:\n\n• Store the exported file in a secure location\n• Delete the file when you no longer need it\n• Never share the exported file with others\n\nAre you sure you want to continue with the export?",
"security": "Security",
"appVersion": "App version {{version}} ({{url}})",
"autoLockOptions": {
"never": "Never",
"5seconds": "5 seconds",
"30seconds": "30 seconds",
"1minute": "1 minute",
"15minutes": "15 minutes",
"30minutes": "30 minutes",
"1hour": "1 hour",
"4hours": "4 hours",
"8hours": "8 hours"
},
"language": "Language",
"languageSystemMessage": "To change the app language, configure the preferred language for AliasVault in your device settings.",
"openSettings": "Open Settings",
"vaultUnlockSettings": {
"description": "Choose how you want to unlock your vault.",
"biometrics": "Biometrics",
"faceId": "Face ID",
"touchId": "Touch ID",
"faceIdTouchId": "Face ID / Touch ID",
"biometricEnabled": "{{biometric}} is now successfully enabled",
"biometricNotAvailable": "{{biometric}} Not Available",
"biometricDisabledMessage": "{{biometric}} is disabled for AliasVault. In order to use it, please enable it in your device settings first.",
"biometricHelp": "Use biometrics to unlock your vault, which is secured by the {{keystore}}.",
"biometricUnavailableHelp": "{{biometric}} is not available. Tap to open settings and/or go to your device settings to enable and configure it.",
"pin": "PIN Code",
"pinDescription": "Use a custom PIN code to unlock your vault more quickly.",
"pinEnabled": "PIN unlock enabled successfully",
"pinDisabled": "PIN unlock has been disabled",
"passwordHelp": "Re-enter your full master password to unlock your vault. This is always enabled as fallback option.",
"keystoreIOS": "iOS Keychain",
"keystoreAndroid": "Android Keystore"
},
"autoLockSettings": {
"description": "Choose how long the app can stay in the background before requiring re-authentication. You'll need to use Face ID or enter your password to unlock the vault again."
},
"identityGeneratorSettings": {
"description": "Configure the default language and gender preference for generating new identities.",
"languageSection": "Language",
"languageDescription": "Set the language that will be used when generating new identities.",
"genderSection": "Gender",
"genderDescription": "Set the gender preference for generating new identities.",
"ageRangeSection": "Age Range",
"ageRangeDescription": "Set the age range for generating new identities.",
"genderOptions": {
"random": "Random",
"male": "Male",
"female": "Female"
}
},
"passwordGeneratorSettings": {
"description": "Configure the default settings used when generating new passwords. These settings will be used for all new passwords unless overridden for specific entries.",
"preview": "Preview"
},
"securitySettings": {
"title": "Security",
"description": "Manage your account and vault security settings.",
"changeMasterPassword": "Change Master Password",
"activeSessionsTitle": "Active Sessions",
"recentAuthLogs": "Recent Auth Logs",
"deleteAccountTitle": "Delete Account",
"changePassword": {
"headerText": "Changing your master password also changes the vault encryption keys. It is advised to periodically change your master password to keep your vaults secure.",
"currentPassword": "Current Password",
"newPassword": "New Password",
"confirmNewPassword": "Confirm New Password",
"enterCurrentPassword": "Enter current password",
"enterNewPassword": "Enter new password",
"changePassword": "Change Password",
"fillAllFields": "Please fill in all fields",
"passwordsDoNotMatch": "New passwords do not match",
"userNotAuthenticated": "User not authenticated",
"initiatingChange": "Initiating password change...",
"currentPasswordIncorrect": "Current password is not correct",
"passwordChangedSuccessfully": "Password changed successfully",
"failedToChange": "Failed to change password. Please try again."
},
"activeSessions": {
"headerText": "Below is a list of devices where your account is currently logged in or has an active session. You can log out from any of these sessions here.",
"noSessions": "No active sessions",
"revoke": "Revoke",
"revokeSession": "Revoke Session",
"revokeConfirmation": "Are you sure you want to revoke this session? This will log you out of the chosen device.",
"sessionRevoked": "Session successfully revoked",
"failedToRevoke": "Failed to revoke session",
"failedToLoad": "Failed to load active sessions",
"lastActive": "Last active",
"expires": "Expires"
},
"authLogs": {
"headerText": "Below you can find an overview of recent login attempts to your account.",
"noLogs": "No auth logs found",
"success": "Success",
"failed": "Failed",
"time": "Time",
"ipAddress": "IP Address",
"client": "Client",
"failedToLoad": "Failed to load auth logs"
},
"deleteAccount": {
"headerText": "Deleting your account will immediately and permanently delete all of your data.",
"warningText": "Warning: This action cannot be undone. All your data will be permanently deleted.",
"finalWarning": "Final warning: Enter your password to permanently delete your account.",
"warningVaults": "All encrypted vaults which includes all of your credentials will be permanently deleted",
"warningAliases": "Your email aliases will be orphaned and cannot be claimed by other users",
"warningRecovery": "Your account cannot be recovered after deletion",
"irreversibleWarning": "Account deletion is irreversible and cannot be undone. Pressing the button below will delete your account immediately and permanently.",
"enterUsername": "Enter your username to continue",
"password": "Password",
"enterPassword": "Enter password",
"deleteAccount": "Delete Account",
"confirmationMessage": "Are you absolutely sure you want to delete your account? This action cannot be undone.",
"usernameDoesNotMatch": "Username does not match",
"verifyingPassword": "Verifying password...",
"currentPasswordIncorrect": "Current password is not correct",
"initiatingDeletion": "Initiating account deletion",
"verifyingWithServer": "Verifying with server",
"deletingAccount": "Deleting account",
"accountDeleted": "Account deleted successfully",
"failedToDelete": "Failed to delete account. Please try again.",
"usernameNotFound": "Username not found. Please login again."
}
},
"qrScanner": {
"title": "QR Code Scanner",
"scanningMessage": "Scan AliasVault QR code",
"mobileLogin": {
"confirmTitle": "Confirm Login Request",
"confirmSubtitle": "Re-authenticate to approve login on another device.",
"confirmMessage": "You are about to log in on a remote device with your account. This other device will have full access to your vault. Only proceed if you trust this device.",
"successDescription": "The remote device has been successfully logged in.",
"requestExpired": "This login request has expired. Please generate a new QR code."
}
}
},
"navigation": {
"vault": "Vault",
"emails": "Emails",
"settings": "Settings"
},
"itemTypes": {
"creating": "Creating",
"editing": "Editing",
"login": {
"title": "Login"
},
"alias": {
"title": "Alias"
},
"creditCard": {
"title": "Credit Card",
"cardInformation": "Card Information"
},
"note": {
"title": "Note"
},
"addField": "Add Field",
"addCustomField": "Add Custom Field",
"customFields": "Custom Fields",
"fieldLabel": "Field Label",
"fieldType": "Field Type",
"enterFieldName": "Enter field name",
"fieldTypes": {
"text": "Text",
"hidden": "Hidden",
"email": "Email",
"url": "URL",
"phone": "Phone",
"number": "Number",
"date": "Date",
"textArea": "Text Area"
}
},
"fieldLabels": {
"login.username": "Username",
"login.password": "Password",
"login.email": "Email",
"login.url": "URL",
"alias.first_name": "First Name",
"alias.last_name": "Last Name",
"alias.gender": "Gender",
"alias.birthdate": "Birth Date",
"card.cardholder_name": "Cardholder Name",
"card.number": "Card Number",
"card.expiry_month": "Expiry Month",
"card.expiry_year": "Expiry Year",
"card.cvv": "CVV",
"card.pin": "PIN",
"notes.content": "Notes"
},
"items": {
"title": "Items",
"addItem": "Add Item",
"editItem": "Edit Item",
"deleteItem": "Delete Item",
"itemDetails": "Item Details",
"itemCreated": "Item Created",
"itemCreatedMessage": "Your new item has been added to your vault and is ready to use.",
"emailPreview": "Email Preview",
"untitled": "Untitled",
"name": "Name",
"url": "URL",
"itemName": "Name",
"serviceUrl": "Service URL",
"loginCredentials": "Login credentials",
"cardInformation": "Card Information",
"email": "Email",
"alias": "Alias",
"firstName": "First Name",
"lastName": "Last Name",
"fullName": "Full Name",
"birthDate": "Birth Date",
"birthDatePlaceholder": "YYYY-MM-DD",
"notes": "Notes",
"randomAlias": "Random Alias",
"manual": "Manual",
"enterEmailPrefix": "Enter email prefix",
"selectEmailDomain": "Select Email Domain",
"privateEmailTitle": "Private Email",
"privateEmailAliasVaultServer": "AliasVault server",
"privateEmailDescription": "E2E encrypted, fully private.",
"publicEmailTitle": "Public Temp Email Providers",
"publicEmailDescription": "Anonymous but limited privacy. Email content is readable by anyone that knows the address.",
"searchPlaceholder": "Search vault...",
"noMatchingItems": "No matching items found",
"noMatchingItemsSearch": "No items matching \"{{search}}\"",
"noMatchingItemsWithFilter": "No {{filter}} items matching \"{{search}}\"",
"noItemsFound": "No items found. Create one to get started. Tip: you can also login to the AliasVault web app to import credentials from other password managers.",
"allItemsInFolders": "All your items are organized in folders. Tap a folder above to view your credentials, or use the search to find specific items.",
"noPasskeysFound": "No passkeys have been created yet. Passkeys are created by visiting a website that offers passkeys as an authentication method.",
"noAttachmentsFound": "No items with attachments found",
"noItemsOfTypeFound": "No {{type}} items found",
"clearSearch": "Clear search",
"clearFilter": "Clear filter",
"recentEmails": "Recent emails",
"loadingEmails": "Loading emails...",
"noEmailsYet": "No emails received yet.",
"offlineEmailsMessage": "You are offline. Please connect to the internet to load your emails.",
"emailLoadError": "An error occurred while loading emails. Please try again later.",
"emailUnexpectedError": "An unexpected error occurred while loading emails. Please try again later.",
"password": "Password",
"passwordLength": "Password Length",
"changePasswordComplexity": "Password Settings",
"includeLowercase": "Lowercase (a-z)",
"includeUppercase": "Uppercase (A-Z)",
"includeNumbers": "Numbers (0-9)",
"includeSpecialChars": "Special Characters (!@#)",
"avoidAmbiguousChars": "Avoid Ambiguous Characters",
"errorLoadingItems": "Error loading items",
"vaultSyncFailed": "Vault sync failed",
"vaultSyncedSuccessfully": "Vault synced successfully",
"vaultUpToDate": "Vault is up-to-date",
"offlineMessage": "You are offline. Please connect to the internet to sync your vault.",
"switchBackToBrowser": "Switch back to your browser to continue.",
"filters": {
"all": "Items",
"showFolders": "Folders",
"passkeys": "Passkeys",
"attachments": "Attachments"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
},
"totpCode": "TOTP Code",
"attachments": "Attachments",
"deleteAttachment": "Delete",
"fileSavedTo": "File saved to",
"previewNotSupported": "Preview not supported",
"downloadToView": "Download the file to view it",
"unsavedChanges": {
"title": "Discard Changes?",
"message": "You have unsaved changes. Are you sure you want to discard them?",
"discard": "Discard"
},
"toasts": {
"itemUpdated": "Item updated successfully",
"itemCreated": "Item created successfully",
"itemDeleted": "Item deleted successfully",
"usernameCopied": "Username copied to clipboard",
"emailCopied": "Email copied to clipboard",
"passwordCopied": "Password copied to clipboard"
},
"createNewAliasFor": "Create new alias for",
"contextMenu": {
"title": "Item Options",
"edit": "Edit",
"delete": "Delete",
"copyUsername": "Copy Username",
"copyEmail": "Copy Email",
"copyPassword": "Copy Password"
},
"viewHistory": "View history",
"history": "History",
"noHistoryAvailable": "No history available",
"deleteHistoryConfirm": "Are you sure you want to delete this history record?",
"deleteConfirm": "Are you sure you want to delete this item? This action cannot be undone.",
"folders": {
"folder": "Folder",
"newFolder": "New Folder",
"createFolder": "Create Folder",
"editFolder": "Edit Folder",
"folderName": "Folder Name",
"folderNamePlaceholder": "e.g., Work, Personal",
"folderNameRequired": "Folder name is required",
"deleteFolder": "Delete Folder",
"deleteFolderKeepItems": "Delete folder only",
"deleteFolderKeepItemsDescription": "Items will be moved back to the main list.",
"deleteFolderAndItems": "Delete folder and all items",
"deleteFolderAndItemsDescription": "{{count}} item(s) will be moved to Recently Deleted.",
"emptyFolderHint": "This folder is empty. To move items to this folder, edit the item and select this folder.",
"noFolder": "No Folder",
"selectFolder": "Select Folder"
},
"recentlyDeleted": {
"title": "Recently Deleted",
"noItems": "No deleted items",
"noItemsDescription": "Items you delete will appear here for 30 days before being permanently removed.",
"description": "These items will be permanently deleted after 30 days. You can restore them or delete them immediately.",
"restore": "Restore",
"deletePermanently": "Delete Permanently",
"emptyAll": "Empty All",
"daysRemaining": "{{count}} day remaining",
"daysRemaining_plural": "{{count}} days remaining",
"expiringSoon": "Expiring soon",
"confirmDeleteTitle": "Delete Permanently?",
"confirmDeleteMessage": "This item will be permanently deleted and cannot be recovered.",
"confirmEmptyAllTitle": "Empty Recently Deleted?",
"confirmEmptyAllMessage": "All {{count}} items will be permanently deleted and cannot be recovered.",
"itemRestored": "Item restored",
"itemDeleted": "Item permanently deleted",
"allItemsDeleted": "All items permanently deleted"
}
},
"emails": {
"title": "Emails",
"emailDetails": "Email Details",
"subject": "Subject:",
"date": "Date:",
"from": "From:",
"to": "To:",
"attachments": "Attachments",
"deleteEmail": "Delete Email",
"deleteEmailConfirm": "Are you sure you want to delete this email? This action is permanent and cannot be undone.",
"emailNotFound": "Email not found",
"noPlainText": "This email does not contain any plain-text.",
"sizeKB": "KB",
"offlineMessage": "You are offline. Please connect to the internet to load your emails.",
"emptyMessage": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.",
"time": {
"justNow": "just now",
"minutesAgo_single": "{{count}} min ago",
"minutesAgo_plural": "{{count}} mins ago",
"hoursAgo_single": "{{count}} hr ago",
"hoursAgo_plural": "{{count}} hrs ago",
"yesterday": "yesterday"
}
},
"validation": {
"required": "This field is required",
"serviceNameRequired": "Service name is required",
"invalidDateFormat": "Date must be in YYYY-MM-DD format",
"invalidEmailFormat": "Invalid email format"
},
"apiErrors": {
"CLAIM_DOES_NOT_MATCH_USER": "The current chosen email address is already in use. Please change the email address by editing this credential.",
"CLAIM_DOES_NOT_EXIST": "An error occurred while trying to load the emails. Please try to edit and save the credential entry to synchronize the database, then try again.",
"UNKNOWN_ERROR": "An unknown error occurred. Please try again.",
"ACCOUNT_LOCKED": "Account temporarily locked due to too many failed attempts. Please try again later.",
"ACCOUNT_BLOCKED": "Your account has been disabled. If you believe this is a mistake, please contact support.",
"USER_NOT_FOUND": "Invalid username or password. Please try again.",
"INVALID_AUTHENTICATOR_CODE": "Invalid authenticator code. Please try again.",
"INVALID_RECOVERY_CODE": "Invalid recovery code. Please try again.",
"REFRESH_TOKEN_REQUIRED": "Refresh token is required.",
"INVALID_REFRESH_TOKEN": "Invalid refresh token.",
"PUBLIC_REGISTRATION_DISABLED": "New account registration is currently disabled on this server. Please contact the administrator.",
"USERNAME_REQUIRED": "Username is required.",
"USERNAME_ALREADY_IN_USE": "Username is already in use.",
"USERNAME_AVAILABLE": "Username is available.",
"USERNAME_MISMATCH": "Username does not match the current user.",
"PASSWORD_MISMATCH": "The provided password does not match your current password.",
"ACCOUNT_SUCCESSFULLY_DELETED": "Account successfully deleted.",
"USERNAME_EMPTY_OR_WHITESPACE": "Username cannot be empty or whitespace.",
"USERNAME_TOO_SHORT": "Username too short: must be at least 3 characters long.",
"USERNAME_TOO_LONG": "Username too long: cannot be longer than 40 characters.",
"USERNAME_INVALID_EMAIL": "Invalid email address.",
"USERNAME_INVALID_CHARACTERS": "Username is invalid, can only contain letters or digits.",
"VAULT_NOT_UP_TO_DATE": "Your vault is not up-to-date. Please synchronize your vault and try again.",
"INTERNAL_SERVER_ERROR": "Internal server error.",
"VAULT_ERROR": "The local vault is not up-to-date. Please synchronize your vault by refreshing the page and try again."
},
"sync": {
"offline": "Offline",
"syncing": "Syncing...",
"pending": "Pending sync",
"retrySync": "Tap to retry",
"backOnline": "Back online",
"stillOffline": "Still offline",
"syncFailed": "Sync failed"
},
"app": {
"status": {
"unlockingVault": "Unlocking vault",
"decryptingVault": "Decrypting vault",
"openingVaultReadOnly": "Opening vault in read-only mode",
"retryingConnection": "Retrying connection..."
},
"offline": {
"banner": "Offline - changes will sync when online",
"backOnline": "Back online",
"stillOffline": "Still offline"
},
"alerts": {
"syncIssue": "No Connection",
"openLocalVault": "Open Local Vault",
"retrySync": "Retry Sync"
},
"navigation": {
"login": "Login",
"loginSettings": "Login Settings"
},
"notFound": {
"title": "Page not found",
"message": "This page has been moved or deleted.",
"goHome": "Go back to the start"
},
"appName": "AliasVault",
"reinitialize": {
"vaultAutoLockedMessage": "Vault auto-locked after timeout.",
"attemptingToUnlockMessage": "Attempting to unlock."
},
"loginSettings": {
"title": "API Connection",
"aliasvaultNet": "Aliasvault.net",
"selfHosted": "Self-hosted",
"customApiUrl": "Custom API URL",
"customApiUrlPlaceholder": "https://my-aliasvault-instance.com/api",
"version": "Version: {{version}}"
}
},
"upgrade": {
"title": "Upgrade Vault",
"subtitle": "AliasVault has updated and your vault needs to be upgraded. This should only take a few seconds.",
"versionInformation": "Version Information",
"yourVault": "Your vault version:",
"newVersion": "New available version:",
"upgrade": "Upgrade",
"upgrading": "Upgrading...",
"logout": "Logout",
"whatsNew": "What's New",
"whatsNewDescription": "An upgrade is required to support the following changes:",
"noDescriptionAvailable": "No description available for this version.",
"status": {
"preparingUpgrade": "Preparing upgrade...",
"vaultAlreadyUpToDate": "Vault is already up to date",
"startingDatabaseTransaction": "Starting database transaction...",
"applyingDatabaseMigrations": "Applying database migrations...",
"applyingMigration": "Applying migration {{current}} of {{total}}...",
"committingChanges": "Committing changes..."
},
"alerts": {
"unableToGetVersionInfo": "Unable to get version information. Please try again.",
"selfHostedServer": "Self-Hosted Server",
"selfHostedWarning": "If you're using a self-hosted server, make sure to also update your self-hosted instance as otherwise logging in to the web client will stop working.",
"continueUpgrade": "Continue Upgrade",
"upgradeFailed": "Upgrade Failed",
"failedToApplyMigration": "Failed to apply migration ({{current}} of {{total}})"
}
}
}

View File

@@ -436,15 +436,16 @@
"offlineMessage": "您处于离线状态,请连接互联网以同步密码库。",
"switchBackToBrowser": "切换回浏览器以继续。",
"filters": {
"all": "(所有)项目",
"all": "项目",
"showFolders": "文件夹",
"passkeys": "通行密钥",
"attachments": "附件"
},
"sort": {
"title": "Sort by",
"oldestFirst": "Oldest first",
"newestFirst": "Newest first",
"alphabetical": "Alphabetical (A-Z)"
"title": "排序方式",
"oldestFirst": "最早在前",
"newestFirst": "最新在前",
"alphabetical": "字母顺序(A-Z"
},
"totpCode": "TOTP 验证码",
"attachments": "附件",

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -0,0 +1,75 @@
/* English localization strings for VaultUI */
"error" = "Error";
"cancel" = "Cancel";
"back" = "Back";
"next" = "Next";
"edit" = "Edit";
"website" = "Website";
"username" = "Username";
"title" = "Title";
"unknown_error" = "An unknown error occurred";
"loading_items" = "Loading items...";
"no_items_found" = "No items found";
"no_items_match" = "No existing items match your search";
"create_new_item" = "Create New Item";
"select_item" = "Select Item";
"select_text_to_insert" = "Select Text to Insert";
"choose_username" = "Choose Username";
"select_text_to_insert_message" = "Select the text to insert into the focused input field";
"choose_username_message" = "This website may require either your username or your email address to log in";
"username_prefix" = "Username: ";
"email_prefix" = "Email: ";
"password" = "Password";
"items_load_error" = "Failed to load items. Please open the AliasVault app to check for updates.";
"no_item_selected" = "No item selected.";
/* Context menu strings */
"copy_username" = "Copy Username";
"copy_password" = "Copy Password";
"copy_email" = "Copy Email";
"view_details" = "View Details";
"username_copied" = "Username copied";
"password_copied" = "Password copied";
"email_copied" = "Email copied";
/* Search bar */
"search_items" = "Search items...";
/* Passkey registration */
"create_passkey_title" = "Create New Passkey";
"create_passkey_subtitle" = "Register a new passkey for this website. It will be securely stored in your vault and automatically synced across your devices with AliasVault.";
"create_passkey_button_confirm" = "Create Passkey";
/* Passkey provider */
"passkey" = "Passkey";
"loading_passkeys" = "Loading passkeys...";
"no_passkeys_found" = "No passkeys found";
"no_passkeys_match" = "No existing passkeys match your search";
"select_passkey" = "Select Passkey";
"passkeys_load_error" = "Failed to load passkeys. Please open the AliasVault app to check for updates.";
/* Passkey replacement */
"create_new_passkey" = "Create New Passkey";
"select_passkey_to_replace" = "Or, replace an existing passkey";
"replace_passkey" = "Replace Passkey";
"replace_passkey_explanation" = "This will replace the existing passkey with a new one. Please be aware that your old passkey will be overwritten and no longer accessible. If you wish to create a separate passkey instead, go back to the previous screen.";
"create_passkey_explanation" = "This creates a new passkey and stores it in your vault. It will be automatically synced across all your devices that use AliasVault.";
/* Passkey merge with existing item */
"passkey_add_to_existing" = "Or, add passkey to an existing item";
"add_passkey" = "Add Passkey";
"merge_passkey_explanation" = "This will add a passkey to your existing item. Your password and other data will be preserved.";
/* PIN Unlock */
"unlock_vault" = "Unlock Vault";
"enter_pin_to_unlock_vault" = "Enter your PIN to unlock your vault";
"pin_locked_max_attempts" = "PIN locked after too many failed attempts";
"pin_incorrect_attempts_remaining" = "Incorrect PIN. %d attempts remaining";
/* PIN Setup */
"pin_setup_title" = "Setup PIN";
"pin_setup_subtitle" = "Choose a PIN to unlock your vault";
"pin_confirm_title" = "Confirm PIN";
"pin_confirm_subtitle" = "Re-enter your PIN to confirm";
"pin_mismatch" = "PINs do not match. Please try again.";

View File

@@ -9,11 +9,11 @@
"title" = "Titel";
"unknown_error" = "Ein unbekannter Fehler ist aufgetreten";
"loading_items" = "Loading items...";
"no_items_found" = "No items found";
"no_items_match" = "No existing items match your search";
"create_new_item" = "Create New Item";
"select_item" = "Select Item";
"loading_items" = "Einträge werden geladen...";
"no_items_found" = "Keine Einträge gefunden";
"no_items_match" = "Keine existierenden Einträge entsprechen deiner Suche";
"create_new_item" = "Neuen Eintrag erstellen";
"select_item" = "Eintrag auswählen";
"select_text_to_insert" = "Text zum Einfügen auswählen";
"choose_username" = "Wähle Deinen Benutzernamen";
"select_text_to_insert_message" = "Text zum Einfügen in das fokussierte Eingabefeld auswählen";
@@ -22,7 +22,7 @@
"email_prefix" = "E-Mail-Adresse: ";
"password" = "Passwort";
"items_load_error" = "Failed to load items. Please open the AliasVault app to check for updates.";
"no_item_selected" = "No item selected.";
"no_item_selected" = "Kein Eintrag ausgewählt.";
/* Context menu strings */
"copy_username" = "Benutzername kopieren";
@@ -34,7 +34,7 @@
"email_copied" = "E-Mail-Adresse kopiert";
/* Search bar */
"search_items" = "Search items...";
"search_items" = "Einträge durchsuchen...";
/* Passkey registration */
"create_passkey_title" = "Neuen Passkey erstellen";
@@ -57,9 +57,9 @@
"create_passkey_explanation" = "Dies erzeugt einen neuen Passkey und speichert ihn in Deinem Tresor. Er wird automatisch auf allen Geräten synchronisiert, die AliasVault verwenden.";
/* Passkey merge with existing item */
"passkey_add_to_existing" = "Or, add passkey to an existing item";
"add_passkey" = "Add Passkey";
"merge_passkey_explanation" = "This will add a passkey to your existing item. Your password and other data will be preserved.";
"passkey_add_to_existing" = "Oder füge den Passkey einem existierenden Eintrag hinzu";
"add_passkey" = "Passkey hinzufügen";
"merge_passkey_explanation" = "Dies wird einem existierenden Eintrag einen Passkey hinzufügen. Dein Passwort und andere Daten werden beibehalten.";
/* PIN Unlock */
"unlock_vault" = "Tresor entsperren";

View File

@@ -0,0 +1,75 @@
/* English localization strings for VaultUI */
"error" = "Error";
"cancel" = "Cancel";
"back" = "Back";
"next" = "Next";
"edit" = "Edit";
"website" = "Website";
"username" = "Username";
"title" = "Title";
"unknown_error" = "An unknown error occurred";
"loading_items" = "Loading items...";
"no_items_found" = "No items found";
"no_items_match" = "No existing items match your search";
"create_new_item" = "Create New Item";
"select_item" = "Select Item";
"select_text_to_insert" = "Select Text to Insert";
"choose_username" = "Choose Username";
"select_text_to_insert_message" = "Select the text to insert into the focused input field";
"choose_username_message" = "This website may require either your username or your email address to log in";
"username_prefix" = "Username: ";
"email_prefix" = "Email: ";
"password" = "Password";
"items_load_error" = "Failed to load items. Please open the AliasVault app to check for updates.";
"no_item_selected" = "No item selected.";
/* Context menu strings */
"copy_username" = "Copy Username";
"copy_password" = "Copy Password";
"copy_email" = "Copy Email";
"view_details" = "View Details";
"username_copied" = "Username copied";
"password_copied" = "Password copied";
"email_copied" = "Email copied";
/* Search bar */
"search_items" = "Search items...";
/* Passkey registration */
"create_passkey_title" = "Create New Passkey";
"create_passkey_subtitle" = "Register a new passkey for this website. It will be securely stored in your vault and automatically synced across your devices with AliasVault.";
"create_passkey_button_confirm" = "Create Passkey";
/* Passkey provider */
"passkey" = "Passkey";
"loading_passkeys" = "Loading passkeys...";
"no_passkeys_found" = "No passkeys found";
"no_passkeys_match" = "No existing passkeys match your search";
"select_passkey" = "Select Passkey";
"passkeys_load_error" = "Failed to load passkeys. Please open the AliasVault app to check for updates.";
/* Passkey replacement */
"create_new_passkey" = "Create New Passkey";
"select_passkey_to_replace" = "Or, replace an existing passkey";
"replace_passkey" = "Replace Passkey";
"replace_passkey_explanation" = "This will replace the existing passkey with a new one. Please be aware that your old passkey will be overwritten and no longer accessible. If you wish to create a separate passkey instead, go back to the previous screen.";
"create_passkey_explanation" = "This creates a new passkey and stores it in your vault. It will be automatically synced across all your devices that use AliasVault.";
/* Passkey merge with existing item */
"passkey_add_to_existing" = "Or, add passkey to an existing item";
"add_passkey" = "Add Passkey";
"merge_passkey_explanation" = "This will add a passkey to your existing item. Your password and other data will be preserved.";
/* PIN Unlock */
"unlock_vault" = "Unlock Vault";
"enter_pin_to_unlock_vault" = "Enter your PIN to unlock your vault";
"pin_locked_max_attempts" = "PIN locked after too many failed attempts";
"pin_incorrect_attempts_remaining" = "Incorrect PIN. %d attempts remaining";
/* PIN Setup */
"pin_setup_title" = "Setup PIN";
"pin_setup_subtitle" = "Choose a PIN to unlock your vault";
"pin_confirm_title" = "Confirm PIN";
"pin_confirm_subtitle" = "Re-enter your PIN to confirm";
"pin_mismatch" = "PINs do not match. Please try again.";

View File

@@ -0,0 +1,191 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="REFRESH_TOKEN_REQUIRED" xml:space="preserve">
<value>Refresh token is required.</value>
</data>
<data name="ACCOUNT_BLOCKED" xml:space="preserve">
<value>Your account has been disabled. If you believe this is a mistake, please contact support.</value>
</data>
<data name="INVALID_REFRESH_TOKEN" xml:space="preserve">
<value>Invalid refresh token</value>
</data>
<data name="PUBLIC_REGISTRATION_DISABLED" xml:space="preserve">
<value>New account registration is currently disabled on this server. Please contact the administrator.</value>
</data>
<data name="USER_NOT_FOUND" xml:space="preserve">
<value>Invalid username or password. Please try again.</value>
</data>
<data name="USERNAME_REQUIRED" xml:space="preserve">
<value>Username is required.</value>
</data>
<data name="USERNAME_ALREADY_IN_USE" xml:space="preserve">
<value>Username is already in use.</value>
</data>
<data name="USERNAME_AVAILABLE" xml:space="preserve">
<value>Username is available.</value>
</data>
<data name="USERNAME_MISMATCH" xml:space="preserve">
<value>Username does not match the current user.</value>
</data>
<data name="PASSWORD_MISMATCH" xml:space="preserve">
<value>The provided password does not match your current password.</value>
</data>
<data name="ACCOUNT_SUCCESSFULLY_DELETED" xml:space="preserve">
<value>Account successfully deleted.</value>
</data>
<data name="USERNAME_EMPTY_OR_WHITESPACE" xml:space="preserve">
<value>Username cannot be empty or whitespace.</value>
</data>
<data name="USERNAME_TOO_SHORT" xml:space="preserve">
<value>Username too short: must be at least 3 characters long.</value>
</data>
<data name="USERNAME_TOO_LONG" xml:space="preserve">
<value>Username too long: cannot be longer than 40 characters.</value>
</data>
<data name="USERNAME_INVALID_EMAIL" xml:space="preserve">
<value>Invalid email address.</value>
</data>
<data name="USERNAME_INVALID_CHARACTERS" xml:space="preserve">
<value>Username is invalid, can only contain letters or digits.</value>
</data>
<data name="PENDING_MIGRATIONS" xml:space="preserve">
<value>There are pending migrations. Please run 'dotnet ef database update' to apply them.</value>
</data>
<data name="INTERNAL_SERVER_ERROR" xml:space="preserve">
<value>Internal server error</value>
</data>
<data name="VAULT_ERROR" xml:space="preserve">
<value>The local vault is not up-to-date. Please synchronize your vault by refreshing the page and try again.</value>
</data>
<data name="UNKNOWN_ERROR" xml:space="preserve">
<value>An unknown error occurred. Please try again.</value>
</data>
<data name="INVALID_AUTHENTICATOR_CODE" xml:space="preserve">
<value>Invalid authenticator code. Please try again.</value>
</data>
<data name="INVALID_RECOVERY_CODE" xml:space="preserve">
<value>Invalid recovery code. Please try again.</value>
</data>
<data name="VAULT_NOT_UP_TO_DATE" xml:space="preserve">
<value>Your vault is not up-to-date. Please synchronize your vault and try again.</value>
</data>
<data name="ACCOUNT_LOCKED" xml:space="preserve">
<value>You have entered an incorrect password too many times and your account has now been locked out. You can try again in 30 minutes.</value>
</data>
</root>

View File

@@ -171,7 +171,7 @@
<value>Eroare internă de server</value>
</data>
<data name="VAULT_ERROR" xml:space="preserve">
<value>Seiful local nu este actualizat. Sincronizează-l reîmprospătând pagina și încearcă din nou.</value>
<value>Seiful local nu este actualizat. Sincronizează seiful prin reîmprospătarea paginii și încearcă din nou.</value>
</data>
<data name="UNKNOWN_ERROR" xml:space="preserve">
<value>A apărut o eroare necunoscută. Încearcă din nou.</value>

View File

@@ -123,7 +123,7 @@
<value>Ditt konto har inaktiverats. Om du tror att detta är ett misstag, kontakta support.</value>
</data>
<data name="INVALID_REFRESH_TOKEN" xml:space="preserve">
<value>Invalid refresh token</value>
<value>Ogiltig uppdaterings token</value>
</data>
<data name="PUBLIC_REGISTRATION_DISABLED" xml:space="preserve">
<value>Registrering av nytt konto är för närvarande inaktiverat på denna server. Kontakta administratören.</value>
@@ -165,7 +165,7 @@
<value>Användarnamnet är ogiltigt, kan endast innehålla bokstäver eller siffror.</value>
</data>
<data name="PENDING_MIGRATIONS" xml:space="preserve">
<value>There are pending migrations. Please run 'dotnet ef database update' to apply them.</value>
<value>Det finns väntande migreringar. Vänligen kör 'dotnet ef databasuppdatering' för att tillämpa dem.</value>
</data>
<data name="INTERNAL_SERVER_ERROR" xml:space="preserve">
<value>Internt serverfel</value>
@@ -186,6 +186,6 @@
<value>Ditt valv är inte uppdaterat. Synkronisera ditt valv och försök igen.</value>
</data>
<data name="ACCOUNT_LOCKED" xml:space="preserve">
<value>You have entered an incorrect password too many times and your account has now been locked out. You can try again in 30 minutes.</value>
<value>Du har angett ett felaktigt lösenord för många gånger och ditt konto har nu blivit låst. Du kan försöka igen om 30 minuter.</value>
</data>
</root>

View File

@@ -0,0 +1,191 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="REFRESH_TOKEN_REQUIRED" xml:space="preserve">
<value>Refresh token is required.</value>
</data>
<data name="ACCOUNT_BLOCKED" xml:space="preserve">
<value>Your account has been disabled. If you believe this is a mistake, please contact support.</value>
</data>
<data name="INVALID_REFRESH_TOKEN" xml:space="preserve">
<value>Invalid refresh token</value>
</data>
<data name="PUBLIC_REGISTRATION_DISABLED" xml:space="preserve">
<value>New account registration is currently disabled on this server. Please contact the administrator.</value>
</data>
<data name="USER_NOT_FOUND" xml:space="preserve">
<value>Invalid username or password. Please try again.</value>
</data>
<data name="USERNAME_REQUIRED" xml:space="preserve">
<value>Username is required.</value>
</data>
<data name="USERNAME_ALREADY_IN_USE" xml:space="preserve">
<value>Username is already in use.</value>
</data>
<data name="USERNAME_AVAILABLE" xml:space="preserve">
<value>Username is available.</value>
</data>
<data name="USERNAME_MISMATCH" xml:space="preserve">
<value>Username does not match the current user.</value>
</data>
<data name="PASSWORD_MISMATCH" xml:space="preserve">
<value>The provided password does not match your current password.</value>
</data>
<data name="ACCOUNT_SUCCESSFULLY_DELETED" xml:space="preserve">
<value>Account successfully deleted.</value>
</data>
<data name="USERNAME_EMPTY_OR_WHITESPACE" xml:space="preserve">
<value>Username cannot be empty or whitespace.</value>
</data>
<data name="USERNAME_TOO_SHORT" xml:space="preserve">
<value>Username too short: must be at least 3 characters long.</value>
</data>
<data name="USERNAME_TOO_LONG" xml:space="preserve">
<value>Username too long: cannot be longer than 40 characters.</value>
</data>
<data name="USERNAME_INVALID_EMAIL" xml:space="preserve">
<value>Invalid email address.</value>
</data>
<data name="USERNAME_INVALID_CHARACTERS" xml:space="preserve">
<value>Username is invalid, can only contain letters or digits.</value>
</data>
<data name="PENDING_MIGRATIONS" xml:space="preserve">
<value>There are pending migrations. Please run 'dotnet ef database update' to apply them.</value>
</data>
<data name="INTERNAL_SERVER_ERROR" xml:space="preserve">
<value>Internal server error</value>
</data>
<data name="VAULT_ERROR" xml:space="preserve">
<value>The local vault is not up-to-date. Please synchronize your vault by refreshing the page and try again.</value>
</data>
<data name="UNKNOWN_ERROR" xml:space="preserve">
<value>An unknown error occurred. Please try again.</value>
</data>
<data name="INVALID_AUTHENTICATOR_CODE" xml:space="preserve">
<value>Invalid authenticator code. Please try again.</value>
</data>
<data name="INVALID_RECOVERY_CODE" xml:space="preserve">
<value>Invalid recovery code. Please try again.</value>
</data>
<data name="VAULT_NOT_UP_TO_DATE" xml:space="preserve">
<value>Your vault is not up-to-date. Please synchronize your vault and try again.</value>
</data>
<data name="ACCOUNT_LOCKED" xml:space="preserve">
<value>You have entered an incorrect password too many times and your account has now been locked out. You can try again in 30 minutes.</value>
</data>
</root>

View File

@@ -0,0 +1,177 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<!-- Page titles -->
<data name="PageTitle" xml:space="preserve">
<value>Log in to AliasVault</value>
<comment>Main login page title</comment>
</data>
<data name="TwoFactorAuthenticationTitle" xml:space="preserve">
<value>Two-factor authentication</value>
<comment>Title for 2FA step</comment>
</data>
<data name="RecoveryCodeVerificationTitle" xml:space="preserve">
<value>Recovery code verification</value>
<comment>Title for recovery code step</comment>
</data>
<!-- Form labels -->
<data name="UsernameOrEmailLabel" xml:space="preserve">
<value>Your username or email</value>
<comment>Label for username/email input field</comment>
</data>
<data name="PasswordLabel" xml:space="preserve">
<value>Your password</value>
<comment>Label for password input field</comment>
</data>
<data name="AuthenticatorCodeLabel" xml:space="preserve">
<value>Authenticator code</value>
<comment>Label for 2FA code input field</comment>
</data>
<data name="RecoveryCodeLabel" xml:space="preserve">
<value>Recovery Code</value>
<comment>Label for recovery code input field</comment>
</data>
<data name="RememberMeLabel" xml:space="preserve">
<value>Remember me</value>
<comment>Label for remember me checkbox</comment>
</data>
<data name="RememberMachineLabel" xml:space="preserve">
<value>Remember this machine</value>
<comment>Label for remember machine checkbox</comment>
</data>
<!-- Buttons -->
<data name="LoginButton" xml:space="preserve">
<value>Log in</value>
<comment>Login button text</comment>
</data>
<!-- Links -->
<data name="LostPasswordLink" xml:space="preserve">
<value>Lost Password?</value>
<comment>Link text for password recovery</comment>
</data>
<data name="CreateNewVaultLink" xml:space="preserve">
<value>Create new vault</value>
<comment>Link text for creating a new vault</comment>
</data>
<data name="LoginWithRecoveryCodeLink" xml:space="preserve">
<value>Log in with a recovery code instead.</value>
<comment>Link text for logging in with recovery code</comment>
</data>
<data name="LoginWithAuthenticatorLink" xml:space="preserve">
<value>Log in with an authenticator code instead.</value>
<comment>Link text for logging in with authenticator</comment>
</data>
<data name="MobileDeviceLink" xml:space="preserve">
<value>Log in using Mobile App</value>
<comment>Link text for mobile device login</comment>
</data>
<!-- Descriptions and help text -->
<data name="TwoFactorAuthenticationDescription" xml:space="preserve">
<value>Your login is protected with an authenticator app. Enter your authenticator code below.</value>
<comment>Description for 2FA step</comment>
</data>
<data name="RecoveryCodeDescription" xml:space="preserve">
<value>You have requested to log in with a recovery code. A recovery code is a one-time code that can be used to log in to your account. Note that if you don't manually disable 2FA after login, you will be asked for an authenticator code again at the next login.</value>
<comment>Description for recovery code step</comment>
</data>
<data name="NoAccountYetText" xml:space="preserve">
<value>No account yet?</value>
<comment>Text before registration link</comment>
</data>
<data name="DontHaveAuthenticatorText" xml:space="preserve">
<value>Don't have access to your authenticator device?</value>
<comment>Question text about not having access to authenticator</comment>
</data>
<data name="RegainedAccessText" xml:space="preserve">
<value>Regained access to your authenticator device?</value>
<comment>Question text about regaining access to authenticator</comment>
</data>
<!-- Loading and status messages -->
<data name="LoggingInMessage" xml:space="preserve">
<value>Logging in...</value>
<comment>Loading message during login process</comment>
</data>
<data name="VerifyingTwoFactorCodeMessage" xml:space="preserve">
<value>Verifying 2FA code...</value>
<comment>Loading message during 2FA verification</comment>
</data>
<data name="VerifyingRecoveryCodeMessage" xml:space="preserve">
<value>Verifying recovery code...</value>
<comment>Loading message during recovery code verification</comment>
</data>
<!-- Error messages -->
<data name="LoginErrorMessage" xml:space="preserve">
<value>An error occurred while processing the login request. Try again (later).</value>
<comment>Generic login error message</comment>
</data>
<data name="LoginRequestErrorMessage" xml:space="preserve">
<value>An error occurred while processing the login request.</value>
<comment>Login request processing error message</comment>
</data>
<!-- Placeholders -->
<data name="UsernamePlaceholder" xml:space="preserve">
<value>name / name@company.com</value>
<comment>Placeholder text for username input</comment>
</data>
<data name="PasswordPlaceholder" xml:space="preserve">
<value>••••••••</value>
<comment>Placeholder text for password input</comment>
</data>
</root>

View File

@@ -0,0 +1,177 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<!-- Page titles -->
<data name="PageTitle" xml:space="preserve">
<value>Log in to AliasVault</value>
<comment>Main login page title</comment>
</data>
<data name="TwoFactorAuthenticationTitle" xml:space="preserve">
<value>Two-factor authentication</value>
<comment>Title for 2FA step</comment>
</data>
<data name="RecoveryCodeVerificationTitle" xml:space="preserve">
<value>Recovery code verification</value>
<comment>Title for recovery code step</comment>
</data>
<!-- Form labels -->
<data name="UsernameOrEmailLabel" xml:space="preserve">
<value>Your username or email</value>
<comment>Label for username/email input field</comment>
</data>
<data name="PasswordLabel" xml:space="preserve">
<value>Your password</value>
<comment>Label for password input field</comment>
</data>
<data name="AuthenticatorCodeLabel" xml:space="preserve">
<value>Authenticator code</value>
<comment>Label for 2FA code input field</comment>
</data>
<data name="RecoveryCodeLabel" xml:space="preserve">
<value>Recovery Code</value>
<comment>Label for recovery code input field</comment>
</data>
<data name="RememberMeLabel" xml:space="preserve">
<value>Remember me</value>
<comment>Label for remember me checkbox</comment>
</data>
<data name="RememberMachineLabel" xml:space="preserve">
<value>Remember this machine</value>
<comment>Label for remember machine checkbox</comment>
</data>
<!-- Buttons -->
<data name="LoginButton" xml:space="preserve">
<value>Log in</value>
<comment>Login button text</comment>
</data>
<!-- Links -->
<data name="LostPasswordLink" xml:space="preserve">
<value>Lost Password?</value>
<comment>Link text for password recovery</comment>
</data>
<data name="CreateNewVaultLink" xml:space="preserve">
<value>Create new vault</value>
<comment>Link text for creating a new vault</comment>
</data>
<data name="LoginWithRecoveryCodeLink" xml:space="preserve">
<value>Log in with a recovery code instead.</value>
<comment>Link text for logging in with recovery code</comment>
</data>
<data name="LoginWithAuthenticatorLink" xml:space="preserve">
<value>Log in with an authenticator code instead.</value>
<comment>Link text for logging in with authenticator</comment>
</data>
<data name="MobileDeviceLink" xml:space="preserve">
<value>Log in using Mobile App</value>
<comment>Link text for mobile device login</comment>
</data>
<!-- Descriptions and help text -->
<data name="TwoFactorAuthenticationDescription" xml:space="preserve">
<value>Your login is protected with an authenticator app. Enter your authenticator code below.</value>
<comment>Description for 2FA step</comment>
</data>
<data name="RecoveryCodeDescription" xml:space="preserve">
<value>You have requested to log in with a recovery code. A recovery code is a one-time code that can be used to log in to your account. Note that if you don't manually disable 2FA after login, you will be asked for an authenticator code again at the next login.</value>
<comment>Description for recovery code step</comment>
</data>
<data name="NoAccountYetText" xml:space="preserve">
<value>No account yet?</value>
<comment>Text before registration link</comment>
</data>
<data name="DontHaveAuthenticatorText" xml:space="preserve">
<value>Don't have access to your authenticator device?</value>
<comment>Question text about not having access to authenticator</comment>
</data>
<data name="RegainedAccessText" xml:space="preserve">
<value>Regained access to your authenticator device?</value>
<comment>Question text about regaining access to authenticator</comment>
</data>
<!-- Loading and status messages -->
<data name="LoggingInMessage" xml:space="preserve">
<value>Logging in...</value>
<comment>Loading message during login process</comment>
</data>
<data name="VerifyingTwoFactorCodeMessage" xml:space="preserve">
<value>Verifying 2FA code...</value>
<comment>Loading message during 2FA verification</comment>
</data>
<data name="VerifyingRecoveryCodeMessage" xml:space="preserve">
<value>Verifying recovery code...</value>
<comment>Loading message during recovery code verification</comment>
</data>
<!-- Error messages -->
<data name="LoginErrorMessage" xml:space="preserve">
<value>An error occurred while processing the login request. Try again (later).</value>
<comment>Generic login error message</comment>
</data>
<data name="LoginRequestErrorMessage" xml:space="preserve">
<value>An error occurred while processing the login request.</value>
<comment>Login request processing error message</comment>
</data>
<!-- Placeholders -->
<data name="UsernamePlaceholder" xml:space="preserve">
<value>name / name@company.com</value>
<comment>Placeholder text for username input</comment>
</data>
<data name="PasswordPlaceholder" xml:space="preserve">
<value>••••••••</value>
<comment>Placeholder text for password input</comment>
</data>
</root>

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<!-- Page title -->
<data name="PageTitle" xml:space="preserve">
<value>Create a new AliasVault account</value>
<comment>Main registration page title</comment>
</data>
<!-- Form labels -->
<data name="UsernameOrEmailLabel" xml:space="preserve">
<value>Your username or email</value>
<comment>Label for username/email input field</comment>
</data>
<data name="PasswordLabel" xml:space="preserve">
<value>Your password</value>
<comment>Label for password input field</comment>
</data>
<data name="ConfirmPasswordLabel" xml:space="preserve">
<value>Confirm password</value>
<comment>Label for password confirmation input field</comment>
</data>
<!-- Terms and conditions -->
<data name="AcceptTermsLabel" xml:space="preserve">
<value>I accept the</value>
<comment>Text before terms and conditions link</comment>
</data>
<data name="TermsAndConditionsLink" xml:space="preserve">
<value>Terms and Conditions</value>
<comment>Link text for terms and conditions</comment>
</data>
<!-- Buttons -->
<data name="CreateAccountButton" xml:space="preserve">
<value>Create account</value>
<comment>Create account button text</comment>
</data>
<!-- Links -->
<data name="AlreadyRegisteredText" xml:space="preserve">
<value>Already registered?</value>
<comment>Text before login link</comment>
</data>
<data name="LoginHereLink" xml:space="preserve">
<value>Login here</value>
<comment>Link text for login page</comment>
</data>
<!-- Loading and status messages -->
<data name="CreatingAccountMessage" xml:space="preserve">
<value>Creating account...</value>
<comment>Loading message during account creation</comment>
</data>
<data name="RegistrationErrorMessage" xml:space="preserve">
<value>An error occurred during registration.</value>
<comment>Generic registration error message</comment>
</data>
<!-- Placeholders -->
<data name="UsernamePlaceholder" xml:space="preserve">
<value>name / name@company.com</value>
<comment>Placeholder text for username input</comment>
</data>
<data name="PasswordPlaceholder" xml:space="preserve">
<value>••••••••</value>
<comment>Placeholder text for password input</comment>
</data>
</root>

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<!-- Page title -->
<data name="PageTitle" xml:space="preserve">
<value>Create a new AliasVault account</value>
<comment>Main registration page title</comment>
</data>
<!-- Form labels -->
<data name="UsernameOrEmailLabel" xml:space="preserve">
<value>Your username or email</value>
<comment>Label for username/email input field</comment>
</data>
<data name="PasswordLabel" xml:space="preserve">
<value>Your password</value>
<comment>Label for password input field</comment>
</data>
<data name="ConfirmPasswordLabel" xml:space="preserve">
<value>Confirm password</value>
<comment>Label for password confirmation input field</comment>
</data>
<!-- Terms and conditions -->
<data name="AcceptTermsLabel" xml:space="preserve">
<value>I accept the</value>
<comment>Text before terms and conditions link</comment>
</data>
<data name="TermsAndConditionsLink" xml:space="preserve">
<value>Terms and Conditions</value>
<comment>Link text for terms and conditions</comment>
</data>
<!-- Buttons -->
<data name="CreateAccountButton" xml:space="preserve">
<value>Create account</value>
<comment>Create account button text</comment>
</data>
<!-- Links -->
<data name="AlreadyRegisteredText" xml:space="preserve">
<value>Already registered?</value>
<comment>Text before login link</comment>
</data>
<data name="LoginHereLink" xml:space="preserve">
<value>Login here</value>
<comment>Link text for login page</comment>
</data>
<!-- Loading and status messages -->
<data name="CreatingAccountMessage" xml:space="preserve">
<value>Creating account...</value>
<comment>Loading message during account creation</comment>
</data>
<data name="RegistrationErrorMessage" xml:space="preserve">
<value>An error occurred during registration.</value>
<comment>Generic registration error message</comment>
</data>
<!-- Placeholders -->
<data name="UsernamePlaceholder" xml:space="preserve">
<value>name / name@company.com</value>
<comment>Placeholder text for username input</comment>
</data>
<data name="PasswordPlaceholder" xml:space="preserve">
<value>••••••••</value>
<comment>Placeholder text for password input</comment>
</data>
</root>

View File

@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<data name="WelcomeMessage">
<value>Great! Now, let's set up your master password for AliasVault.</value>
<comment>Assistant welcome message for password setup step</comment>
</data>
<data name="ImportantNote">
<value>Important: This master password will be used to encrypt your vault. It should be a long, complex string that you can remember. If you forget this password, your data will be permanently inaccessible.</value>
<comment>Important warning about master password</comment>
</data>
<data name="SecurityPoint1">
<value>Your master password never leaves your device</value>
<comment>First security point about password privacy</comment>
</data>
<data name="SecurityPoint2">
<value>The server has no access to your unencrypted data</value>
<comment>Second security point about server access</comment>
</data>
<data name="SecurityPoint3">
<value>Even the server admin cannot restore your access if you forget this password</value>
<comment>Third security point about password recovery</comment>
</data>
<data name="MasterPasswordLabel">
<value>Master Password</value>
<comment>Label for master password field</comment>
</data>
<data name="MasterPasswordPlaceholder">
<value>Enter your master password</value>
<comment>Placeholder for master password field</comment>
</data>
<data name="ConfirmMasterPasswordLabel">
<value>Confirm Master Password</value>
<comment>Label for confirm password field</comment>
</data>
<data name="ConfirmMasterPasswordPlaceholder">
<value>Confirm your master password</value>
<comment>Placeholder for confirm password field</comment>
</data>
<data name="ValidatingPasswordMessage">
<value>Validating password...</value>
<comment>Message shown while validating password</comment>
</data>
<data name="PasswordValidAndStrongMessage">
<value>Password is valid and strong!</value>
<comment>Success message for valid password</comment>
</data>
<data name="PasswordTooShortError">
<value>Master password must be at least 10 characters long.</value>
<comment>Error message for password too short</comment>
</data>
<data name="ConfirmPasswordPrompt">
<value>Confirm your password by entering it again.</value>
<comment>Prompt to confirm password</comment>
</data>
<data name="PasswordsMismatchError">
<value>Passwords do not match.</value>
<comment>Error message when passwords don't match</comment>
</data>
</root>

View File

@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<data name="WelcomeMessage">
<value>Great! Now, let's set up your master password for AliasVault.</value>
<comment>Assistant welcome message for password setup step</comment>
</data>
<data name="ImportantNote">
<value>Important: This master password will be used to encrypt your vault. It should be a long, complex string that you can remember. If you forget this password, your data will be permanently inaccessible.</value>
<comment>Important warning about master password</comment>
</data>
<data name="SecurityPoint1">
<value>Your master password never leaves your device</value>
<comment>First security point about password privacy</comment>
</data>
<data name="SecurityPoint2">
<value>The server has no access to your unencrypted data</value>
<comment>Second security point about server access</comment>
</data>
<data name="SecurityPoint3">
<value>Even the server admin cannot restore your access if you forget this password</value>
<comment>Third security point about password recovery</comment>
</data>
<data name="MasterPasswordLabel">
<value>Master Password</value>
<comment>Label for master password field</comment>
</data>
<data name="MasterPasswordPlaceholder">
<value>Enter your master password</value>
<comment>Placeholder for master password field</comment>
</data>
<data name="ConfirmMasterPasswordLabel">
<value>Confirm Master Password</value>
<comment>Label for confirm password field</comment>
</data>
<data name="ConfirmMasterPasswordPlaceholder">
<value>Confirm your master password</value>
<comment>Placeholder for confirm password field</comment>
</data>
<data name="ValidatingPasswordMessage">
<value>Validating password...</value>
<comment>Message shown while validating password</comment>
</data>
<data name="PasswordValidAndStrongMessage">
<value>Password is valid and strong!</value>
<comment>Success message for valid password</comment>
</data>
<data name="PasswordTooShortError">
<value>Master password must be at least 10 characters long.</value>
<comment>Error message for password too short</comment>
</data>
<data name="ConfirmPasswordPrompt">
<value>Confirm your password by entering it again.</value>
<comment>Prompt to confirm password</comment>
</data>
<data name="PasswordsMismatchError">
<value>Passwords do not match.</value>
<comment>Error message when passwords don't match</comment>
</data>
</root>

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<!-- Instructions -->
<data name="PleaseReadAndAgree">
<value>Please read and agree to the following terms and conditions before proceeding.</value>
<comment>Instructions to read and agree to terms</comment>
</data>
<!-- Terms and Conditions title -->
<data name="TermsAndConditionsTitle">
<value>Terms and Conditions</value>
<comment>Title for the terms and conditions section</comment>
</data>
<!-- Terms content -->
<data name="TermsContent">
<value>AliasVault is designed to enhance your online security and protect your privacy. With AliasVault, you can create unique identities and email aliases for your various online accounts, helping you maintain control over your personal information and reduce the risk of identity theft.
By using AliasVault, you agree to the following terms:
1. You will not use AliasVault for any illegal purposes, including but not limited to fraud, identity theft, or impersonating real individuals.
2. You are responsible for maintaining the confidentiality of your account and any aliases created through AliasVault.
3. AliasVault reserves the right to terminate your account if we suspect any misuse or violation of these terms.
4. You understand that while AliasVault enhances your privacy, no system is completely foolproof, and you use the service at your own risk.</value>
<comment>Full terms and conditions content</comment>
</data>
<!-- Agreement checkbox -->
<data name="AgreementCheckboxLabel">
<value>I have read and agree to the Terms and Conditions</value>
<comment>Label for the agreement checkbox</comment>
</data>
</root>

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<!-- Instructions -->
<data name="PleaseReadAndAgree">
<value>Please read and agree to the following terms and conditions before proceeding.</value>
<comment>Instructions to read and agree to terms</comment>
</data>
<!-- Terms and Conditions title -->
<data name="TermsAndConditionsTitle">
<value>Terms and Conditions</value>
<comment>Title for the terms and conditions section</comment>
</data>
<!-- Terms content -->
<data name="TermsContent">
<value>AliasVault is designed to enhance your online security and protect your privacy. With AliasVault, you can create unique identities and email aliases for your various online accounts, helping you maintain control over your personal information and reduce the risk of identity theft.
By using AliasVault, you agree to the following terms:
1. You will not use AliasVault for any illegal purposes, including but not limited to fraud, identity theft, or impersonating real individuals.
2. You are responsible for maintaining the confidentiality of your account and any aliases created through AliasVault.
3. AliasVault reserves the right to terminate your account if we suspect any misuse or violation of these terms.
4. You understand that while AliasVault enhances your privacy, no system is completely foolproof, and you use the service at your own risk.</value>
<comment>Full terms and conditions content</comment>
</data>
<!-- Agreement checkbox -->
<data name="AgreementCheckboxLabel">
<value>I have read and agree to the Terms and Conditions</value>
<comment>Label for the agreement checkbox</comment>
</data>
</root>

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<!-- Assistant messages -->
<data name="GreatNowLetsSetupUsername">
<value>Great! Now, let's set up your username for AliasVault.</value>
<comment>Assistant message about setting up username</comment>
</data>
<data name="EnterUsernameInstructions">
<value>Please enter a username you'd like to use. This can be your email address or any unique name you prefer.</value>
<comment>Instructions for entering username</comment>
</data>
<data name="RememberUsernameNote">
<value>Remember: This is what you'll use to log in later, so make sure it's something you'll remember!</value>
<comment>Important note about remembering username</comment>
</data>
<!-- Form labels -->
<data name="UsernameLabel">
<value>Username</value>
<comment>Label for username input field</comment>
</data>
<data name="UsernamePlaceholder">
<value>Enter your desired username or email</value>
<comment>Placeholder text for username input</comment>
</data>
<!-- Validation messages -->
<data name="ValidatingUsernameMessage">
<value>Validating username...</value>
<comment>Message shown while validating username</comment>
</data>
<data name="UsernameAvailableMessage">
<value>Username is available!</value>
<comment>Message shown when username is available</comment>
</data>
<data name="UsernameRequiredError">
<value>Username is required.</value>
<comment>Error message when username is empty</comment>
</data>
<data name="ServerCommunicationError">
<value>An error occurred during communication with the AliasVault server.</value>
<comment>Error message for server communication issues</comment>
</data>
<!-- Alt text -->
<data name="AssistantAvatarAlt">
<value>AliasVault Assistant</value>
<comment>Alt text for assistant avatar image</comment>
</data>
</root>

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<!-- Assistant messages -->
<data name="GreatNowLetsSetupUsername">
<value>Great! Now, let's set up your username for AliasVault.</value>
<comment>Assistant message about setting up username</comment>
</data>
<data name="EnterUsernameInstructions">
<value>Please enter a username you'd like to use. This can be your email address or any unique name you prefer.</value>
<comment>Instructions for entering username</comment>
</data>
<data name="RememberUsernameNote">
<value>Remember: This is what you'll use to log in later, so make sure it's something you'll remember!</value>
<comment>Important note about remembering username</comment>
</data>
<!-- Form labels -->
<data name="UsernameLabel">
<value>Username</value>
<comment>Label for username input field</comment>
</data>
<data name="UsernamePlaceholder">
<value>Enter your desired username or email</value>
<comment>Placeholder text for username input</comment>
</data>
<!-- Validation messages -->
<data name="ValidatingUsernameMessage">
<value>Validating username...</value>
<comment>Message shown while validating username</comment>
</data>
<data name="UsernameAvailableMessage">
<value>Username is available!</value>
<comment>Message shown when username is available</comment>
</data>
<data name="UsernameRequiredError">
<value>Username is required.</value>
<comment>Error message when username is empty</comment>
</data>
<data name="ServerCommunicationError">
<value>An error occurred during communication with the AliasVault server.</value>
<comment>Error message for server communication issues</comment>
</data>
<!-- Alt text -->
<data name="AssistantAvatarAlt">
<value>AliasVault Assistant</value>
<comment>Alt text for assistant avatar image</comment>
</data>
</root>

View File

@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<!-- Login Field Labels -->
<data name="FieldLabel_login_username" xml:space="preserve">
<value>Username</value>
<comment>Label for username field</comment>
</data>
<data name="FieldLabel_login_password" xml:space="preserve">
<value>Password</value>
<comment>Label for password field</comment>
</data>
<data name="FieldLabel_login_email" xml:space="preserve">
<value>Email</value>
<comment>Label for email field</comment>
</data>
<data name="FieldLabel_login_url" xml:space="preserve">
<value>Website</value>
<comment>Label for URL field</comment>
</data>
<!-- Alias Field Labels -->
<data name="FieldLabel_alias_first_name" xml:space="preserve">
<value>First Name</value>
<comment>Label for first name field</comment>
</data>
<data name="FieldLabel_alias_last_name" xml:space="preserve">
<value>Last Name</value>
<comment>Label for last name field</comment>
</data>
<data name="FieldLabel_alias_gender" xml:space="preserve">
<value>Gender</value>
<comment>Label for gender field</comment>
</data>
<data name="FieldLabel_alias_birthdate" xml:space="preserve">
<value>Birth Date</value>
<comment>Label for birthdate field</comment>
</data>
<!-- Card Field Labels -->
<data name="FieldLabel_card_number" xml:space="preserve">
<value>Card Number</value>
<comment>Label for card number field</comment>
</data>
<data name="FieldLabel_card_cardholder_name" xml:space="preserve">
<value>Cardholder Name</value>
<comment>Label for cardholder name field</comment>
</data>
<data name="FieldLabel_card_expiry_month" xml:space="preserve">
<value>Expiry Month</value>
<comment>Label for expiry month field</comment>
</data>
<data name="FieldLabel_card_expiry_year" xml:space="preserve">
<value>Expiry Year</value>
<comment>Label for expiry year field</comment>
</data>
<data name="FieldLabel_card_cvv" xml:space="preserve">
<value>CVV</value>
<comment>Label for CVV field</comment>
</data>
<data name="FieldLabel_card_pin" xml:space="preserve">
<value>PIN</value>
<comment>Label for PIN field</comment>
</data>
<!-- Notes Field Labels -->
<data name="FieldLabel_notes_content" xml:space="preserve">
<value>Notes</value>
<comment>Label for notes content field</comment>
</data>
<!-- History -->
<data name="ViewHistory" xml:space="preserve">
<value>View history</value>
<comment>Tooltip for history icon button</comment>
</data>
</root>

View File

@@ -94,23 +94,23 @@
</data>
<!-- Card Field Labels -->
<data name="FieldLabel_card_number" xml:space="preserve">
<value>Card Number</value>
<value>Kartennummer</value>
<comment>Label for card number field</comment>
</data>
<data name="FieldLabel_card_cardholder_name" xml:space="preserve">
<value>Cardholder Name</value>
<value>Name des Karteninhabers</value>
<comment>Label for cardholder name field</comment>
</data>
<data name="FieldLabel_card_expiry_month" xml:space="preserve">
<value>Expiry Month</value>
<value>Ablaufmonat</value>
<comment>Label for expiry month field</comment>
</data>
<data name="FieldLabel_card_expiry_year" xml:space="preserve">
<value>Expiry Year</value>
<value>Ablaufjahr</value>
<comment>Label for expiry year field</comment>
</data>
<data name="FieldLabel_card_cvv" xml:space="preserve">
<value>CVV</value>
<value>Sicherheitscode</value>
<comment>Label for CVV field</comment>
</data>
<data name="FieldLabel_card_pin" xml:space="preserve">
@@ -124,7 +124,7 @@
</data>
<!-- History -->
<data name="ViewHistory" xml:space="preserve">
<value>View history</value>
<value>Historie ansehen</value>
<comment>Tooltip for history icon button</comment>
</data>
</root>

View File

@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<!-- Login Field Labels -->
<data name="FieldLabel_login_username" xml:space="preserve">
<value>Username</value>
<comment>Label for username field</comment>
</data>
<data name="FieldLabel_login_password" xml:space="preserve">
<value>Password</value>
<comment>Label for password field</comment>
</data>
<data name="FieldLabel_login_email" xml:space="preserve">
<value>Email</value>
<comment>Label for email field</comment>
</data>
<data name="FieldLabel_login_url" xml:space="preserve">
<value>Website</value>
<comment>Label for URL field</comment>
</data>
<!-- Alias Field Labels -->
<data name="FieldLabel_alias_first_name" xml:space="preserve">
<value>First Name</value>
<comment>Label for first name field</comment>
</data>
<data name="FieldLabel_alias_last_name" xml:space="preserve">
<value>Last Name</value>
<comment>Label for last name field</comment>
</data>
<data name="FieldLabel_alias_gender" xml:space="preserve">
<value>Gender</value>
<comment>Label for gender field</comment>
</data>
<data name="FieldLabel_alias_birthdate" xml:space="preserve">
<value>Birth Date</value>
<comment>Label for birthdate field</comment>
</data>
<!-- Card Field Labels -->
<data name="FieldLabel_card_number" xml:space="preserve">
<value>Card Number</value>
<comment>Label for card number field</comment>
</data>
<data name="FieldLabel_card_cardholder_name" xml:space="preserve">
<value>Cardholder Name</value>
<comment>Label for cardholder name field</comment>
</data>
<data name="FieldLabel_card_expiry_month" xml:space="preserve">
<value>Expiry Month</value>
<comment>Label for expiry month field</comment>
</data>
<data name="FieldLabel_card_expiry_year" xml:space="preserve">
<value>Expiry Year</value>
<comment>Label for expiry year field</comment>
</data>
<data name="FieldLabel_card_cvv" xml:space="preserve">
<value>CVV</value>
<comment>Label for CVV field</comment>
</data>
<data name="FieldLabel_card_pin" xml:space="preserve">
<value>PIN</value>
<comment>Label for PIN field</comment>
</data>
<!-- Notes Field Labels -->
<data name="FieldLabel_notes_content" xml:space="preserve">
<value>Notes</value>
<comment>Label for notes content field</comment>
</data>
<!-- History -->
<data name="ViewHistory" xml:space="preserve">
<value>View history</value>
<comment>Tooltip for history icon button</comment>
</data>
</root>

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="HistoryTitle" xml:space="preserve">
<value>History</value>
<comment>Title for the field history modal</comment>
</data>
<data name="NoHistoryAvailable" xml:space="preserve">
<value>No history available</value>
<comment>Message shown when no history records exist</comment>
</data>
<data name="DeleteConfirm" xml:space="preserve">
<value>Are you sure?</value>
<comment>Delete confirmation text</comment>
</data>
</root>

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="HistoryTitle" xml:space="preserve">
<value>History</value>
<comment>Title for the field history modal</comment>
</data>
<data name="NoHistoryAvailable" xml:space="preserve">
<value>No history available</value>
<comment>Message shown when no history records exist</comment>
</data>
<data name="DeleteConfirm" xml:space="preserve">
<value>Are you sure?</value>
<comment>Delete confirmation text</comment>
</data>
</root>

View File

@@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="DeleteFolderTitle" xml:space="preserve">
<value>Delete Folder</value>
<comment>Title for delete folder modal</comment>
</data>
<data name="DeleteFolderDescription" xml:space="preserve">
<value>How would you like to delete the folder "{0}"?</value>
<comment>Description for delete folder modal. {0} is the folder name.</comment>
</data>
<data name="DeleteFolderOnlyTitle" xml:space="preserve">
<value>Delete folder only</value>
<comment>Title for delete folder only option</comment>
</data>
<data name="DeleteFolderOnlyDescription" xml:space="preserve">
<value>Items in this folder will be moved to root</value>
<comment>Description for delete folder only option</comment>
</data>
<data name="DeleteFolderAndContentsTitle" xml:space="preserve">
<value>Delete folder and contents</value>
<comment>Title for delete folder and contents option</comment>
</data>
<data name="DeleteFolderAndContentsDescription" xml:space="preserve">
<value>Move {0} item(s) to trash</value>
<comment>Description for delete folder and contents option. {0} is item count.</comment>
</data>
<data name="CancelButton" xml:space="preserve">
<value>Cancel</value>
<comment>Cancel button text</comment>
</data>
</root>

View File

@@ -59,23 +59,23 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="DeleteFolderTitle" xml:space="preserve">
<value>Delete Folder</value>
<value>Ordner löschen</value>
<comment>Title for delete folder modal</comment>
</data>
<data name="DeleteFolderDescription" xml:space="preserve">
<value>How would you like to delete the folder "{0}"?</value>
<value>Ordner "{0}" löschen?</value>
<comment>Description for delete folder modal. {0} is the folder name.</comment>
</data>
<data name="DeleteFolderOnlyTitle" xml:space="preserve">
<value>Delete folder only</value>
<value>Nur Ordner löschen</value>
<comment>Title for delete folder only option</comment>
</data>
<data name="DeleteFolderOnlyDescription" xml:space="preserve">
<value>Items in this folder will be moved to root</value>
<value>Einträge in diesem Ordner werden in den Root verschoben</value>
<comment>Description for delete folder only option</comment>
</data>
<data name="DeleteFolderAndContentsTitle" xml:space="preserve">
<value>Delete folder and contents</value>
<value>Ordner und alle Einträge löschen</value>
<comment>Title for delete folder and contents option</comment>
</data>
<data name="DeleteFolderAndContentsDescription" xml:space="preserve">

View File

@@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="DeleteFolderTitle" xml:space="preserve">
<value>Delete Folder</value>
<comment>Title for delete folder modal</comment>
</data>
<data name="DeleteFolderDescription" xml:space="preserve">
<value>How would you like to delete the folder "{0}"?</value>
<comment>Description for delete folder modal. {0} is the folder name.</comment>
</data>
<data name="DeleteFolderOnlyTitle" xml:space="preserve">
<value>Delete folder only</value>
<comment>Title for delete folder only option</comment>
</data>
<data name="DeleteFolderOnlyDescription" xml:space="preserve">
<value>Items in this folder will be moved to root</value>
<comment>Description for delete folder only option</comment>
</data>
<data name="DeleteFolderAndContentsTitle" xml:space="preserve">
<value>Delete folder and contents</value>
<comment>Title for delete folder and contents option</comment>
</data>
<data name="DeleteFolderAndContentsDescription" xml:space="preserve">
<value>Move {0} item(s) to trash</value>
<comment>Description for delete folder and contents option. {0} is item count.</comment>
</data>
<data name="CancelButton" xml:space="preserve">
<value>Cancel</value>
<comment>Cancel button text</comment>
</data>
</root>

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="CreateFolderTitle" xml:space="preserve">
<value>Create Folder</value>
<comment>Title for create folder modal</comment>
</data>
<data name="EditFolderTitle" xml:space="preserve">
<value>Edit Folder</value>
<comment>Title for edit folder modal</comment>
</data>
<data name="FolderNameLabel" xml:space="preserve">
<value>Folder Name</value>
<comment>Label for folder name input</comment>
</data>
<data name="FolderNamePlaceholder" xml:space="preserve">
<value>Enter folder name</value>
<comment>Placeholder for folder name input</comment>
</data>
<data name="FolderNameRequired" xml:space="preserve">
<value>Folder name is required</value>
<comment>Error message when folder name is empty</comment>
</data>
<data name="CreateButton" xml:space="preserve">
<value>Create</value>
<comment>Create button text</comment>
</data>
<data name="SaveButton" xml:space="preserve">
<value>Save</value>
<comment>Save button text</comment>
</data>
<data name="CancelButton" xml:space="preserve">
<value>Cancel</value>
<comment>Cancel button text</comment>
</data>
</root>

View File

@@ -63,19 +63,19 @@
<comment>Title for create folder modal</comment>
</data>
<data name="EditFolderTitle" xml:space="preserve">
<value>Edit Folder</value>
<value>Ordner bearbeiten</value>
<comment>Title for edit folder modal</comment>
</data>
<data name="FolderNameLabel" xml:space="preserve">
<value>Folder Name</value>
<value>Ordnername</value>
<comment>Label for folder name input</comment>
</data>
<data name="FolderNamePlaceholder" xml:space="preserve">
<value>Enter folder name</value>
<value>Ordnernamen eingeben</value>
<comment>Placeholder for folder name input</comment>
</data>
<data name="FolderNameRequired" xml:space="preserve">
<value>Folder name is required</value>
<value>Ordnername ist erforderlich</value>
<comment>Error message when folder name is empty</comment>
</data>
<data name="CreateButton" xml:space="preserve">

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="CreateFolderTitle" xml:space="preserve">
<value>Create Folder</value>
<comment>Title for create folder modal</comment>
</data>
<data name="EditFolderTitle" xml:space="preserve">
<value>Edit Folder</value>
<comment>Title for edit folder modal</comment>
</data>
<data name="FolderNameLabel" xml:space="preserve">
<value>Folder Name</value>
<comment>Label for folder name input</comment>
</data>
<data name="FolderNamePlaceholder" xml:space="preserve">
<value>Enter folder name</value>
<comment>Placeholder for folder name input</comment>
</data>
<data name="FolderNameRequired" xml:space="preserve">
<value>Folder name is required</value>
<comment>Error message when folder name is empty</comment>
</data>
<data name="CreateButton" xml:space="preserve">
<value>Create</value>
<comment>Create button text</comment>
</data>
<data name="SaveButton" xml:space="preserve">
<value>Save</value>
<comment>Save button text</comment>
</data>
<data name="CancelButton" xml:space="preserve">
<value>Cancel</value>
<comment>Cancel button text</comment>
</data>
</root>

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="xml:space" use="preserve" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="ClearClipboardButton" xml:space="preserve">
<value>Clear Clipboard</value>
<comment>Button text to manually clear clipboard immediately</comment>
</data>
</root>

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="xml:space" use="preserve" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="ClearClipboardButton" xml:space="preserve">
<value>Clear Clipboard</value>
<comment>Button text to manually clear clipboard immediately</comment>
</data>
</root>

View File

@@ -0,0 +1,109 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="TwoFactorAuthenticationTitle" xml:space="preserve">
<value>Two-factor authentication</value>
<comment>Section title for 2FA codes</comment>
</data>
<data name="AddTotpCodeDescription" xml:space="preserve">
<value>Add a two-factor authenticator code</value>
<comment>Description for adding TOTP codes</comment>
</data>
<data name="AddTotpCodeModalTitle" xml:space="preserve">
<value>Add 2FA TOTP Code</value>
<comment>Modal title for adding TOTP code</comment>
</data>
<data name="CloseFormButton" xml:space="preserve">
<value>Close form</value>
<comment>Button to close the add TOTP form</comment>
</data>
<data name="TotpInstructions" xml:space="preserve">
<value>If the website offers or requires 2FA for your account, copy the secret key or QR code URI and paste it below.</value>
<comment>Instructions for adding TOTP codes</comment>
</data>
<data name="NameOptionalLabel" xml:space="preserve">
<value>Name (optional)</value>
<comment>Label for optional name field</comment>
</data>
<data name="SecretKeyLabel" xml:space="preserve">
<value>Secret Key</value>
<comment>Label for secret key field</comment>
</data>
<data name="SecretKeyPlaceholder" xml:space="preserve">
<value>Enter secret key (manual entry)</value>
<comment>Placeholder text for secret key input</comment>
</data>
<data name="SaveButton" xml:space="preserve">
<value>Save</value>
<comment>Save button text</comment>
</data>
<data name="SaveToViewCodeMessage" xml:space="preserve">
<value>Save to view code</value>
<comment>Message shown for unsaved TOTP codes</comment>
</data>
<data name="DeleteTotpCodeConfirmation" xml:space="preserve">
<value>Are you sure you want to delete this TOTP code?</value>
<comment>Confirmation message for deleting TOTP code</comment>
</data>
<data name="DeleteTotpCodeTitle" xml:space="preserve">
<value>Delete TOTP code</value>
<comment>Title for delete TOTP code action</comment>
</data>
</root>

View File

@@ -0,0 +1,109 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="TwoFactorAuthenticationTitle" xml:space="preserve">
<value>Two-factor authentication</value>
<comment>Section title for 2FA codes</comment>
</data>
<data name="AddTotpCodeDescription" xml:space="preserve">
<value>Add a two-factor authenticator code</value>
<comment>Description for adding TOTP codes</comment>
</data>
<data name="AddTotpCodeModalTitle" xml:space="preserve">
<value>Add 2FA TOTP Code</value>
<comment>Modal title for adding TOTP code</comment>
</data>
<data name="CloseFormButton" xml:space="preserve">
<value>Close form</value>
<comment>Button to close the add TOTP form</comment>
</data>
<data name="TotpInstructions" xml:space="preserve">
<value>If the website offers or requires 2FA for your account, copy the secret key or QR code URI and paste it below.</value>
<comment>Instructions for adding TOTP codes</comment>
</data>
<data name="NameOptionalLabel" xml:space="preserve">
<value>Name (optional)</value>
<comment>Label for optional name field</comment>
</data>
<data name="SecretKeyLabel" xml:space="preserve">
<value>Secret Key</value>
<comment>Label for secret key field</comment>
</data>
<data name="SecretKeyPlaceholder" xml:space="preserve">
<value>Enter secret key (manual entry)</value>
<comment>Placeholder text for secret key input</comment>
</data>
<data name="SaveButton" xml:space="preserve">
<value>Save</value>
<comment>Save button text</comment>
</data>
<data name="SaveToViewCodeMessage" xml:space="preserve">
<value>Save to view code</value>
<comment>Message shown for unsaved TOTP codes</comment>
</data>
<data name="DeleteTotpCodeConfirmation" xml:space="preserve">
<value>Are you sure you want to delete this TOTP code?</value>
<comment>Confirmation message for deleting TOTP code</comment>
</data>
<data name="DeleteTotpCodeTitle" xml:space="preserve">
<value>Delete TOTP code</value>
<comment>Title for delete TOTP code action</comment>
</data>
</root>

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="TwoFactorAuthenticationTitle" xml:space="preserve">
<value>Two-factor authentication</value>
<comment>Section title for 2FA codes</comment>
</data>
<data name="NoTotpCodesMessage" xml:space="preserve">
<value>No two-factor authenticator codes available</value>
<comment>Message shown when no TOTP codes are configured</comment>
</data>
<data name="CopiedMessage" xml:space="preserve">
<value>Copied!</value>
<comment>Feedback message when TOTP code is copied to clipboard</comment>
</data>
</root>

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="TwoFactorAuthenticationTitle" xml:space="preserve">
<value>Two-factor authentication</value>
<comment>Section title for 2FA codes</comment>
</data>
<data name="NoTotpCodesMessage" xml:space="preserve">
<value>No two-factor authenticator codes available</value>
<comment>Message shown when no TOTP codes are configured</comment>
</data>
<data name="CopiedMessage" xml:space="preserve">
<value>Copied!</value>
<comment>Feedback message when TOTP code is copied to clipboard</comment>
</data>
</root>

View File

@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="FromLabel" xml:space="preserve">
<value>From:</value>
<comment>Email sender field label</comment>
</data>
<data name="ToLabel" xml:space="preserve">
<value>To:</value>
<comment>Email recipient field label</comment>
</data>
<data name="DateLabel" xml:space="preserve">
<value>Date:</value>
<comment>Email date field label</comment>
</data>
<data name="ActionsLabel" xml:space="preserve">
<value>Actions:</value>
<comment>Email actions section label</comment>
</data>
<data name="DeleteButton" xml:space="preserve">
<value>Delete</value>
<comment>Delete email button text</comment>
</data>
<data name="AttachmentsLabel" xml:space="preserve">
<value>Attachments:</value>
<comment>Email attachments section header</comment>
</data>
<data name="CloseButton" xml:space="preserve">
<value>Close</value>
<comment>Close modal button text</comment>
</data>
<data name="DeleteEmailTitle" xml:space="preserve">
<value>Delete Email</value>
<comment>Delete email confirmation dialog title</comment>
</data>
<data name="DeleteEmailConfirmation" xml:space="preserve">
<value>Are you sure you want to delete this email? This action cannot be undone.</value>
<comment>Delete email confirmation message</comment>
</data>
<data name="EmailDeletedSuccess" xml:space="preserve">
<value>Email deleted successfully</value>
<comment>Success message when email is deleted</comment>
</data>
<data name="EmailDeleteFailed" xml:space="preserve">
<value>Failed to delete email</value>
<comment>Error message when email deletion fails</comment>
</data>
<data name="GenericError" xml:space="preserve">
<value>An error occurred</value>
<comment>Generic error message</comment>
</data>
<data name="NoEmailBody" xml:space="preserve">
<value>[This email has no body.]</value>
<comment>Message shown when email has no content</comment>
</data>
<data name="AttachmentDownloadFailed" xml:space="preserve">
<value>Failed to download attachment</value>
<comment>Error message when attachment download fails</comment>
</data>
<data name="AttachmentDownloadError" xml:space="preserve">
<value>Error downloading attachment</value>
<comment>Error message for attachment download error</comment>
</data>
</root>

View File

@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="FromLabel" xml:space="preserve">
<value>From:</value>
<comment>Email sender field label</comment>
</data>
<data name="ToLabel" xml:space="preserve">
<value>To:</value>
<comment>Email recipient field label</comment>
</data>
<data name="DateLabel" xml:space="preserve">
<value>Date:</value>
<comment>Email date field label</comment>
</data>
<data name="ActionsLabel" xml:space="preserve">
<value>Actions:</value>
<comment>Email actions section label</comment>
</data>
<data name="DeleteButton" xml:space="preserve">
<value>Delete</value>
<comment>Delete email button text</comment>
</data>
<data name="AttachmentsLabel" xml:space="preserve">
<value>Attachments:</value>
<comment>Email attachments section header</comment>
</data>
<data name="CloseButton" xml:space="preserve">
<value>Close</value>
<comment>Close modal button text</comment>
</data>
<data name="DeleteEmailTitle" xml:space="preserve">
<value>Delete Email</value>
<comment>Delete email confirmation dialog title</comment>
</data>
<data name="DeleteEmailConfirmation" xml:space="preserve">
<value>Are you sure you want to delete this email? This action cannot be undone.</value>
<comment>Delete email confirmation message</comment>
</data>
<data name="EmailDeletedSuccess" xml:space="preserve">
<value>Email deleted successfully</value>
<comment>Success message when email is deleted</comment>
</data>
<data name="EmailDeleteFailed" xml:space="preserve">
<value>Failed to delete email</value>
<comment>Error message when email deletion fails</comment>
</data>
<data name="GenericError" xml:space="preserve">
<value>An error occurred</value>
<comment>Generic error message</comment>
</data>
<data name="NoEmailBody" xml:space="preserve">
<value>[This email has no body.]</value>
<comment>Message shown when email has no content</comment>
</data>
<data name="AttachmentDownloadFailed" xml:space="preserve">
<value>Failed to download attachment</value>
<comment>Error message when attachment download fails</comment>
</data>
<data name="AttachmentDownloadError" xml:space="preserve">
<value>Error downloading attachment</value>
<comment>Error message for attachment download error</comment>
</data>
</root>

View File

@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="FromLabel" xml:space="preserve">
<value>From:</value>
<comment>Email sender field label</comment>
</data>
<data name="ToLabel" xml:space="preserve">
<value>To:</value>
<comment>Email recipient field label</comment>
</data>
<data name="DateLabel" xml:space="preserve">
<value>Date:</value>
<comment>Email date field label</comment>
</data>
<data name="ItemLabel" xml:space="preserve">
<value>Item:</value>
<comment>Email item field label</comment>
</data>
<data name="NoneValue" xml:space="preserve">
<value>None</value>
<comment>No item assigned value</comment>
</data>
<data name="AttachmentsLabel" xml:space="preserve">
<value>Attachments:</value>
<comment>Email attachments section header</comment>
</data>
<data name="SelectEmailMessage" xml:space="preserve">
<value>Select an email to view its contents</value>
<comment>Empty state message when no email is selected</comment>
</data>
<data name="DeleteEmailTitle" xml:space="preserve">
<value>Delete Email</value>
<comment>Delete email confirmation dialog title</comment>
</data>
<data name="DeleteEmailConfirmation" xml:space="preserve">
<value>Are you sure you want to delete this email? This action cannot be undone.</value>
<comment>Delete email confirmation message</comment>
</data>
<data name="EmailDeletedSuccess" xml:space="preserve">
<value>Email deleted successfully</value>
<comment>Success message when email is deleted</comment>
</data>
<data name="EmailDeleteFailed" xml:space="preserve">
<value>Failed to delete email</value>
<comment>Error message when email deletion fails</comment>
</data>
<data name="GenericError" xml:space="preserve">
<value>An error occurred</value>
<comment>Generic error message</comment>
</data>
<data name="NoEmailBody" xml:space="preserve">
<value>[This email has no body.]</value>
<comment>Message shown when email has no content</comment>
</data>
<data name="AttachmentDownloadFailed" xml:space="preserve">
<value>Failed to download attachment</value>
<comment>Error message when attachment download fails</comment>
</data>
<data name="AttachmentDownloadError" xml:space="preserve">
<value>Error downloading attachment</value>
<comment>Error message for attachment download error</comment>
</data>
</root>

View File

@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="FromLabel" xml:space="preserve">
<value>From:</value>
<comment>Email sender field label</comment>
</data>
<data name="ToLabel" xml:space="preserve">
<value>To:</value>
<comment>Email recipient field label</comment>
</data>
<data name="DateLabel" xml:space="preserve">
<value>Date:</value>
<comment>Email date field label</comment>
</data>
<data name="ItemLabel" xml:space="preserve">
<value>Item:</value>
<comment>Email item field label</comment>
</data>
<data name="NoneValue" xml:space="preserve">
<value>None</value>
<comment>No item assigned value</comment>
</data>
<data name="AttachmentsLabel" xml:space="preserve">
<value>Attachments:</value>
<comment>Email attachments section header</comment>
</data>
<data name="SelectEmailMessage" xml:space="preserve">
<value>Select an email to view its contents</value>
<comment>Empty state message when no email is selected</comment>
</data>
<data name="DeleteEmailTitle" xml:space="preserve">
<value>Delete Email</value>
<comment>Delete email confirmation dialog title</comment>
</data>
<data name="DeleteEmailConfirmation" xml:space="preserve">
<value>Are you sure you want to delete this email? This action cannot be undone.</value>
<comment>Delete email confirmation message</comment>
</data>
<data name="EmailDeletedSuccess" xml:space="preserve">
<value>Email deleted successfully</value>
<comment>Success message when email is deleted</comment>
</data>
<data name="EmailDeleteFailed" xml:space="preserve">
<value>Failed to delete email</value>
<comment>Error message when email deletion fails</comment>
</data>
<data name="GenericError" xml:space="preserve">
<value>An error occurred</value>
<comment>Generic error message</comment>
</data>
<data name="NoEmailBody" xml:space="preserve">
<value>[This email has no body.]</value>
<comment>Message shown when email has no content</comment>
</data>
<data name="AttachmentDownloadFailed" xml:space="preserve">
<value>Failed to download attachment</value>
<comment>Error message when attachment download fails</comment>
</data>
<data name="AttachmentDownloadError" xml:space="preserve">
<value>Error downloading attachment</value>
<comment>Error message for attachment download error</comment>
</data>
</root>

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="NewEmailTooltip" xml:space="preserve">
<value>New email</value>
<comment>Tooltip text for new email indicator</comment>
</data>
</root>

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="NewEmailTooltip" xml:space="preserve">
<value>New email</value>
<comment>Tooltip text for new email indicator</comment>
</data>
</root>

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="EmailSectionTitle" xml:space="preserve">
<value>Email</value>
<comment>Section title for email panel</comment>
</data>
<data name="AutoRefreshEnabledTooltip" xml:space="preserve">
<value>Auto-refresh enabled</value>
<comment>Tooltip for auto-refresh indicator</comment>
</data>
<data name="SubjectColumn" xml:space="preserve">
<value>Subject</value>
<comment>Table column header for email subject</comment>
</data>
<data name="DateColumn" xml:space="preserve">
<value>Date</value>
<comment>Table column header for email date</comment>
</data>
<data name="NoEmailsReceivedMessage" xml:space="preserve">
<value>No emails received (yet).</value>
<comment>Message when no emails are available</comment>
</data>
<data name="EmailAddressInUseError" xml:space="preserve">
<value>The current chosen email address is already in use. Please change the email address by editing this credential.</value>
<comment>Error message when email address is already in use</comment>
</data>
<data name="EmailLoadError" xml:space="preserve">
<value>An error occurred while trying to load the emails. Please try to edit and save the credential entry to synchronize the database, then try again.</value>
<comment>Error message when email loading fails</comment>
</data>
<data name="LoadMoreButton" xml:space="preserve">
<value>Load more</value>
<comment>Button text to load more emails</comment>
</data>
</root>

View File

@@ -79,11 +79,11 @@
<comment>Message when no emails are available</comment>
</data>
<data name="EmailAddressInUseError" xml:space="preserve">
<value>Den aktuella valda e-postadressen används redan. Vänligen ändra e-postadressen genom att redigera denna uppgiftsposten.</value>
<value>Den aktuella valda e-postadressen används redan. Vänligen ändra e-postadressen genom att redigera denna posten.</value>
<comment>Error message when email address is already in use</comment>
</data>
<data name="EmailLoadError" xml:space="preserve">
<value>Ett fel inträffade när e-posten skulle laddas. Försök att redigera och spara uppgiftsposten för att synkronisera databasen, och försök sedan igen.</value>
<value>Ett fel inträffade när e-posten skulle laddas. Försök att redigera och spara posten för att synkronisera databasen, och försök sedan igen.</value>
<comment>Error message when email loading fails</comment>
</data>
<data name="LoadMoreButton" xml:space="preserve">

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="EmailSectionTitle" xml:space="preserve">
<value>Email</value>
<comment>Section title for email panel</comment>
</data>
<data name="AutoRefreshEnabledTooltip" xml:space="preserve">
<value>Auto-refresh enabled</value>
<comment>Tooltip for auto-refresh indicator</comment>
</data>
<data name="SubjectColumn" xml:space="preserve">
<value>Subject</value>
<comment>Table column header for email subject</comment>
</data>
<data name="DateColumn" xml:space="preserve">
<value>Date</value>
<comment>Table column header for email date</comment>
</data>
<data name="NoEmailsReceivedMessage" xml:space="preserve">
<value>No emails received (yet).</value>
<comment>Message when no emails are available</comment>
</data>
<data name="EmailAddressInUseError" xml:space="preserve">
<value>The current chosen email address is already in use. Please change the email address by editing this credential.</value>
<comment>Error message when email address is already in use</comment>
</data>
<data name="EmailLoadError" xml:space="preserve">
<value>An error occurred while trying to load the emails. Please try to edit and save the credential entry to synchronize the database, then try again.</value>
<comment>Error message when email loading fails</comment>
</data>
<data name="LoadMoreButton" xml:space="preserve">
<value>Load more</value>
<comment>Button text to load more emails</comment>
</data>
</root>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<data name="FieldLabelPlaceholder">
<value>Field label</value>
<comment>Placeholder text for field label input</comment>
</data>
<data name="EditLabel">
<value>Edit label</value>
<comment>Tooltip for edit label button</comment>
</data>
<data name="DeleteField">
<value>Delete field</value>
<comment>Tooltip for delete field button</comment>
</data>
</root>

View File

@@ -20,15 +20,15 @@
</xsd:element>
</xsd:schema>
<data name="FieldLabelPlaceholder">
<value>Field label</value>
<value>Feldbeschriftung</value>
<comment>Placeholder text for field label input</comment>
</data>
<data name="EditLabel">
<value>Edit label</value>
<value>Bezeichnung bearbeiten</value>
<comment>Tooltip for edit label button</comment>
</data>
<data name="DeleteField">
<value>Delete field</value>
<value>Feld löschen</value>
<comment>Tooltip for delete field button</comment>
</data>
</root>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<data name="FieldLabelPlaceholder">
<value>Field label</value>
<comment>Placeholder text for field label input</comment>
</data>
<data name="EditLabel">
<value>Edit label</value>
<comment>Tooltip for edit label button</comment>
</data>
<data name="DeleteField">
<value>Delete field</value>
<comment>Tooltip for delete field button</comment>
</data>
</root>

View File

@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Alias" xml:space="preserve">
<value>Alias</value>
<comment>Label for alias mode toggle</comment>
</data>
<data name="PrivateEmailTitle" xml:space="preserve">
<value>Private Email</value>
<comment>Title for private email domains section</comment>
</data>
<data name="PrivateEmailDescription" xml:space="preserve">
<value>E2E encrypted, fully private.</value>
<comment>Description of private email domains</comment>
</data>
<data name="PublicEmailTitle" xml:space="preserve">
<value>Public Temp Email Providers</value>
<comment>Title for public email domains section</comment>
</data>
<data name="PublicEmailDescription" xml:space="preserve">
<value>Anonymous but limited privacy. Email content is readable by anyone that knows the address.</value>
<comment>Description of public email domains</comment>
</data>
<data name="PrivateEmailAliasVaultServer" xml:space="preserve">
<value>AliasVault server</value>
<comment>Subtitle for private email domains section</comment>
</data>
</root>

View File

@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"/>
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string"/>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
<xsd:attribute ref="xml:space"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1"/>
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Alias" xml:space="preserve">
<value>Alias</value>
<comment>Label for alias mode toggle</comment>
</data>
<data name="PrivateEmailTitle" xml:space="preserve">
<value>Private Email</value>
<comment>Title for private email domains section</comment>
</data>
<data name="PrivateEmailDescription" xml:space="preserve">
<value>E2E encrypted, fully private.</value>
<comment>Description of private email domains</comment>
</data>
<data name="PublicEmailTitle" xml:space="preserve">
<value>Public Temp Email Providers</value>
<comment>Title for public email domains section</comment>
</data>
<data name="PublicEmailDescription" xml:space="preserve">
<value>Anonymous but limited privacy. Email content is readable by anyone that knows the address.</value>
<comment>Description of public email domains</comment>
</data>
<data name="PrivateEmailAliasVaultServer" xml:space="preserve">
<value>AliasVault server</value>
<comment>Subtitle for private email domains section</comment>
</data>
</root>

View File

@@ -0,0 +1,155 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<!-- Section options -->
<data name="TwoFactorAuthentication">
<value>Two-Factor Authentication</value>
<comment>Option to add 2FA section</comment>
</data>
<data name="Attachments">
<value>Attachments</value>
<comment>Option to add attachments section</comment>
</data>
<data name="AddCustomField">
<value>Add Custom Field</value>
<comment>Option to add a custom field</comment>
</data>
<!-- Field labels -->
<data name="FieldLoginUsername">
<value>Username</value>
<comment>Username field label</comment>
</data>
<data name="FieldLoginPassword">
<value>Password</value>
<comment>Password field label</comment>
</data>
<data name="FieldLoginEmail">
<value>Email</value>
<comment>Email field label</comment>
</data>
<data name="FieldLoginUrl">
<value>URL</value>
<comment>URL field label</comment>
</data>
<data name="FieldAliasFirstName">
<value>First Name</value>
<comment>First name field label</comment>
</data>
<data name="FieldAliasLastName">
<value>Last Name</value>
<comment>Last name field label</comment>
</data>
<data name="FieldAliasGender">
<value>Gender</value>
<comment>Gender field label</comment>
</data>
<data name="FieldAliasBirthdate">
<value>Birth Date</value>
<comment>Birth date field label</comment>
</data>
<data name="FieldCardNumber">
<value>Card Number</value>
<comment>Card number field label</comment>
</data>
<data name="FieldCardCardholderName">
<value>Cardholder Name</value>
<comment>Cardholder name field label</comment>
</data>
<data name="FieldCardExpiryMonth">
<value>Expiry Month</value>
<comment>Expiry month field label</comment>
</data>
<data name="FieldCardExpiryYear">
<value>Expiry Year</value>
<comment>Expiry year field label</comment>
</data>
<data name="FieldCardCvv">
<value>CVV</value>
<comment>CVV field label</comment>
</data>
<data name="FieldCardPin">
<value>PIN</value>
<comment>PIN field label</comment>
</data>
<data name="FieldNotesContent">
<value>Notes</value>
<comment>Notes field label</comment>
</data>
<!-- Custom field modal -->
<data name="FieldLabel">
<value>Field Label</value>
<comment>Label for field label input</comment>
</data>
<data name="EnterFieldName">
<value>Enter field name</value>
<comment>Placeholder for field name input</comment>
</data>
<data name="FieldType">
<value>Field Type</value>
<comment>Label for field type selector</comment>
</data>
<data name="FieldTypeText">
<value>Text</value>
<comment>Text field type option</comment>
</data>
<data name="FieldTypeHidden">
<value>Hidden</value>
<comment>Hidden field type option</comment>
</data>
<data name="FieldTypeEmail">
<value>Email</value>
<comment>Email field type option</comment>
</data>
<data name="FieldTypeUrl">
<value>URL</value>
<comment>URL field type option</comment>
</data>
<data name="FieldTypePhone">
<value>Phone</value>
<comment>Phone field type option</comment>
</data>
<data name="FieldTypeNumber">
<value>Number</value>
<comment>Number field type option</comment>
</data>
<data name="FieldTypeDate">
<value>Date</value>
<comment>Date field type option</comment>
</data>
<data name="FieldTypeTextArea">
<value>Text Area</value>
<comment>Text area field type option</comment>
</data>
<!-- Buttons -->
<data name="Add">
<value>Add</value>
<comment>Add button text</comment>
</data>
<data name="Cancel">
<value>Cancel</value>
<comment>Cancel button text</comment>
</data>
<!-- Default field label -->
<data name="DefaultFieldLabel">
<value>Field {0}</value>
<comment>Default label for custom field, {0} is the field number</comment>
</data>
</root>

View File

@@ -29,7 +29,7 @@
<comment>Option to add attachments section</comment>
</data>
<data name="AddCustomField">
<value>Add Custom Field</value>
<value>Benutzerdefiniertes Feld hinzufügen</value>
<comment>Option to add a custom field</comment>
</data>
<!-- Field labels -->
@@ -66,23 +66,23 @@
<comment>Birth date field label</comment>
</data>
<data name="FieldCardNumber">
<value>Card Number</value>
<value>Kartennummer</value>
<comment>Card number field label</comment>
</data>
<data name="FieldCardCardholderName">
<value>Cardholder Name</value>
<value>Name des Karteninhabers</value>
<comment>Cardholder name field label</comment>
</data>
<data name="FieldCardExpiryMonth">
<value>Expiry Month</value>
<value>Ablaufmonat</value>
<comment>Expiry month field label</comment>
</data>
<data name="FieldCardExpiryYear">
<value>Expiry Year</value>
<value>Ablaufjahr</value>
<comment>Expiry year field label</comment>
</data>
<data name="FieldCardCvv">
<value>CVV</value>
<value>Sicherheitscode</value>
<comment>CVV field label</comment>
</data>
<data name="FieldCardPin">
@@ -95,15 +95,15 @@
</data>
<!-- Custom field modal -->
<data name="FieldLabel">
<value>Field Label</value>
<value>Feldbezeichnung</value>
<comment>Label for field label input</comment>
</data>
<data name="EnterFieldName">
<value>Enter field name</value>
<value>Feldnamen eingeben</value>
<comment>Placeholder for field name input</comment>
</data>
<data name="FieldType">
<value>Field Type</value>
<value>Feldtyp</value>
<comment>Label for field type selector</comment>
</data>
<data name="FieldTypeText">
@@ -111,7 +111,7 @@
<comment>Text field type option</comment>
</data>
<data name="FieldTypeHidden">
<value>Hidden</value>
<value>Versteckt</value>
<comment>Hidden field type option</comment>
</data>
<data name="FieldTypeEmail">
@@ -123,11 +123,11 @@
<comment>URL field type option</comment>
</data>
<data name="FieldTypePhone">
<value>Phone</value>
<value>Telefon</value>
<comment>Phone field type option</comment>
</data>
<data name="FieldTypeNumber">
<value>Number</value>
<value>Nummer</value>
<comment>Number field type option</comment>
</data>
<data name="FieldTypeDate">
@@ -135,12 +135,12 @@
<comment>Date field type option</comment>
</data>
<data name="FieldTypeTextArea">
<value>Text Area</value>
<value>Mehrzeiliger Text</value>
<comment>Text area field type option</comment>
</data>
<!-- Buttons -->
<data name="Add">
<value>Add</value>
<value>Hinzufügen</value>
<comment>Add button text</comment>
</data>
<data name="Cancel">
@@ -149,7 +149,7 @@
</data>
<!-- Default field label -->
<data name="DefaultFieldLabel">
<value>Field {0}</value>
<value>Feld {0}</value>
<comment>Default label for custom field, {0} is the field number</comment>
</data>
</root>

View File

@@ -0,0 +1,155 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<!-- Section options -->
<data name="TwoFactorAuthentication">
<value>Two-Factor Authentication</value>
<comment>Option to add 2FA section</comment>
</data>
<data name="Attachments">
<value>Attachments</value>
<comment>Option to add attachments section</comment>
</data>
<data name="AddCustomField">
<value>Add Custom Field</value>
<comment>Option to add a custom field</comment>
</data>
<!-- Field labels -->
<data name="FieldLoginUsername">
<value>Username</value>
<comment>Username field label</comment>
</data>
<data name="FieldLoginPassword">
<value>Password</value>
<comment>Password field label</comment>
</data>
<data name="FieldLoginEmail">
<value>Email</value>
<comment>Email field label</comment>
</data>
<data name="FieldLoginUrl">
<value>URL</value>
<comment>URL field label</comment>
</data>
<data name="FieldAliasFirstName">
<value>First Name</value>
<comment>First name field label</comment>
</data>
<data name="FieldAliasLastName">
<value>Last Name</value>
<comment>Last name field label</comment>
</data>
<data name="FieldAliasGender">
<value>Gender</value>
<comment>Gender field label</comment>
</data>
<data name="FieldAliasBirthdate">
<value>Birth Date</value>
<comment>Birth date field label</comment>
</data>
<data name="FieldCardNumber">
<value>Card Number</value>
<comment>Card number field label</comment>
</data>
<data name="FieldCardCardholderName">
<value>Cardholder Name</value>
<comment>Cardholder name field label</comment>
</data>
<data name="FieldCardExpiryMonth">
<value>Expiry Month</value>
<comment>Expiry month field label</comment>
</data>
<data name="FieldCardExpiryYear">
<value>Expiry Year</value>
<comment>Expiry year field label</comment>
</data>
<data name="FieldCardCvv">
<value>CVV</value>
<comment>CVV field label</comment>
</data>
<data name="FieldCardPin">
<value>PIN</value>
<comment>PIN field label</comment>
</data>
<data name="FieldNotesContent">
<value>Notes</value>
<comment>Notes field label</comment>
</data>
<!-- Custom field modal -->
<data name="FieldLabel">
<value>Field Label</value>
<comment>Label for field label input</comment>
</data>
<data name="EnterFieldName">
<value>Enter field name</value>
<comment>Placeholder for field name input</comment>
</data>
<data name="FieldType">
<value>Field Type</value>
<comment>Label for field type selector</comment>
</data>
<data name="FieldTypeText">
<value>Text</value>
<comment>Text field type option</comment>
</data>
<data name="FieldTypeHidden">
<value>Hidden</value>
<comment>Hidden field type option</comment>
</data>
<data name="FieldTypeEmail">
<value>Email</value>
<comment>Email field type option</comment>
</data>
<data name="FieldTypeUrl">
<value>URL</value>
<comment>URL field type option</comment>
</data>
<data name="FieldTypePhone">
<value>Phone</value>
<comment>Phone field type option</comment>
</data>
<data name="FieldTypeNumber">
<value>Number</value>
<comment>Number field type option</comment>
</data>
<data name="FieldTypeDate">
<value>Date</value>
<comment>Date field type option</comment>
</data>
<data name="FieldTypeTextArea">
<value>Text Area</value>
<comment>Text area field type option</comment>
</data>
<!-- Buttons -->
<data name="Add">
<value>Add</value>
<comment>Add button text</comment>
</data>
<data name="Cancel">
<value>Cancel</value>
<comment>Cancel button text</comment>
</data>
<!-- Default field label -->
<data name="DefaultFieldLabel">
<value>Field {0}</value>
<comment>Default label for custom field, {0} is the field number</comment>
</data>
</root>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<data name="NoFolder">
<value>No folder</value>
<comment>Text shown when no folder is selected</comment>
</data>
<data name="SelectFolderTitle">
<value>Select Folder</value>
<comment>Title of the folder selection modal</comment>
</data>
<data name="NoFoldersAvailable">
<value>No folders available. Create a folder from the vault home page.</value>
<comment>Message shown when no folders exist</comment>
</data>
</root>

View File

@@ -20,7 +20,7 @@
</xsd:element>
</xsd:schema>
<data name="NoFolder">
<value>No folder</value>
<value>Kein Ordner</value>
<comment>Text shown when no folder is selected</comment>
</data>
<data name="SelectFolderTitle">
@@ -28,7 +28,7 @@
<comment>Title of the folder selection modal</comment>
</data>
<data name="NoFoldersAvailable">
<value>No folders available. Create a folder from the vault home page.</value>
<value>Kein Ordner verfügbar. Erstelle einen Ordner auf der Startseite.</value>
<comment>Message shown when no folders exist</comment>
</data>
</root>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"/>
<xsd:element name="comment" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
<xsd:attribute name="type" type="xsd:string"/>
<xsd:attribute name="mimetype" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<data name="NoFolder">
<value>No folder</value>
<comment>Text shown when no folder is selected</comment>
</data>
<data name="SelectFolderTitle">
<value>Select Folder</value>
<comment>Title of the folder selection modal</comment>
</data>
<data name="NoFoldersAvailable">
<value>No folders available. Create a folder from the vault home page.</value>
<comment>Message shown when no folders exist</comment>
</data>
</root>

Some files were not shown because too many files have changed in this diff Show More