Compare commits

..

22 Commits

Author SHA1 Message Date
Leendert de Borst
410f7fcf41 New translations mobilelogin.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:33 +00:00
Leendert de Borst
e8ca9f2c34 New translations mobilelogin.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:32 +00:00
Leendert de Borst
0a8e1947bb New translations mobileunlockmodal.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:31 +00:00
Leendert de Borst
5204249db6 New translations en.json (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:30 +00:00
Leendert de Borst
430741a569 New translations general.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:29 +00:00
Leendert de Borst
4d807840a6 New translations unlock.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:28 +00:00
Leendert de Borst
68e699710a New translations en.json (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:26 +00:00
Leendert de Borst
7d8ad8ac73 New translations strings.xml (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 07:12:25 +00:00
Leendert de Borst
3eb6a78772 New translations strings.xml (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 06:00:23 +00:00
Leendert de Borst
e0c3ea0918 New translations passwordstep.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2026-01-01 06:00:21 +00:00
Leendert de Borst
7c52c7ed47 New translations en.json (French)
Update translations from Crowdin [ci skip]
2025-12-31 16:25:49 +00:00
Leendert de Borst
472d957f3f Update changelogs for new build number 2025-12-31 12:13:27 +01:00
Leendert de Borst
44951e79ec Create release-checklist.md 2025-12-31 11:48:49 +01:00
Leendert de Borst
b2e28dced6 New Crowdin updates (#1443)
* New translations strings.xml (French)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations strings.xml (Dutch)
Update translations from Crowdin [ci skip]
2025-12-31 11:13:58 +01:00
dependabot[bot]
07a7dc7de3 Bump qs in /apps/mobile-app in the npm_and_yarn group across 1 directory
Bumps the npm_and_yarn group with 1 update in the /apps/mobile-app directory: [qs](https://github.com/ljharb/qs).


Updates `qs` from 6.13.0 to 6.14.1
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.13.0...v6.14.1)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-31 10:13:08 +00:00
Leendert de Borst
6fdef88c4f Adjust exportable flags for passkey authentication Android activities 2025-12-31 11:02:12 +01:00
dependabot[bot]
e6087db660 Bump uri in /docs in the bundler group across 1 directory
Bumps the bundler group with 1 update in the /docs directory: [uri](https://github.com/ruby/uri).


Updates `uri` from 1.0.3 to 1.0.4
- [Release notes](https://github.com/ruby/uri/releases)
- [Commits](https://github.com/ruby/uri/compare/v1.0.3...v1.0.4)

---
updated-dependencies:
- dependency-name: uri
  dependency-version: 1.0.4
  dependency-type: indirect
  dependency-group: bundler
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-31 09:57:10 +00:00
Leendert de Borst
93fb1960d3 Update project.pbxproj objectVersion 2025-12-30 21:22:12 +01:00
Leendert de Borst
425b4d5152 Create print-latest-changelogs.sh 2025-12-30 20:48:25 +01:00
Leendert de Borst
c8cf64cbbc Update release.yml 2025-12-30 20:19:11 +01:00
Leendert de Borst
75df6900a3 Create git-versioning-strategy.md 2025-12-30 20:04:26 +01:00
Leendert de Borst
413dc5fd0a Add 0.25.3 changelogs 2025-12-30 20:04:25 +01:00
23 changed files with 115 additions and 115 deletions

View File

@@ -1 +1 @@
25
26

View File

@@ -1 +1 @@
3
0

View File

@@ -1 +1 @@
-alpha

View File

@@ -1 +1 @@
0.25.3
0.26.0-alpha

View File

@@ -2,7 +2,7 @@
"name": "aliasvault-browser-extension",
"description": "AliasVault Browser Extension",
"private": true,
"version": "0.25.3",
"version": "0.26.0",
"type": "module",
"scripts": {
"dev:chrome": "wxt -b chrome",

View File

@@ -463,7 +463,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -476,7 +476,7 @@
"@executable_path/../../../../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.14;
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
OTHER_LDFLAGS = (
"-framework",
SafariServices,
@@ -495,7 +495,7 @@
buildSettings = {
CODE_SIGN_ENTITLEMENTS = "AliasVault Extension/AliasVault_Extension.entitlements";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -508,7 +508,7 @@
"@executable_path/../../../../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.14;
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
OTHER_LDFLAGS = (
"-framework",
SafariServices,
@@ -532,7 +532,7 @@
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -547,7 +547,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.14;
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
OTHER_LDFLAGS = (
"-framework",
SafariServices,
@@ -571,7 +571,7 @@
CODE_SIGN_ENTITLEMENTS = AliasVault/AliasVault.entitlements;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_HARDENED_RUNTIME = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -586,7 +586,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.14;
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
OTHER_LDFLAGS = (
"-framework",
SafariServices,

View File

@@ -31,7 +31,7 @@
"loggedIn": "已登录",
"loginWithMobile": "使用移动应用登录",
"unlockWithMobile": "使用移动应用解锁",
"scanQrCode": "Scan this QR code with your AliasVault mobile app to log in and unlock your vault.",
"scanQrCode": "使用 AliasVault 移动端应用扫描该二维码,即可登录并解锁您的密码库。",
"errors": {
"invalidCode": "请输入有效的6位动态验证码。",
"serverError": "无法连接到AliasVault服务器。请稍后重试若问题依旧请联系支持人员。",
@@ -39,7 +39,7 @@
"accountLocked": "由于多次尝试失败,账户已暂时锁定。",
"networkError": "网络错误。请检查您的连接后重试。",
"sessionExpired": "您的会话已过期。请重新登录。",
"mobileLoginRequestExpired": "Mobile login request timed out. Please reload the page and try again."
"mobileLoginRequestExpired": "移动端登录请求超时。请重新加载页面后重试。"
}
},
"menu": {
@@ -243,7 +243,7 @@
},
"totp": {
"addCode": "添加两步验证码",
"instructions": "Enter the secret key shown by the website where you want to add two-factor authentication.",
"instructions": "输入要添加两步验证的网站显示的密钥。",
"nameOptional": "名称(可选)",
"secretKey": "密钥",
"saveToViewCode": "保存以查看验证码",
@@ -346,14 +346,14 @@
"contextMenuDescription": "右键点击输入字段即可访问 AliasVault 选项",
"selectLanguage": "选择语言",
"serverConfiguration": "服务器配置",
"serverConfigurationDescription": "Configure the AliasVault server URL for self-hosted instances",
"serverConfigurationDescription": "为自托管实例配置 AliasVault 服务器 URL",
"customApiUrl": "API URL",
"customClientUrl": "客户端 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",
"apiUrlHint": "API 端点 URL通常为客户端 URL + /api",
"clientUrlHint": "您自托管实例的 Web 界面 URL",
"autofillSettingsDescription": "启用或禁用网页上的自动填充弹出窗口",
"autofillEnabledDescription": "自动填充建议将显示在登录表单上",
"autofillDisabledDescription": "自动填充建议已全局禁用",
"languageSettings": "语言",
"validation": {
"apiUrlRequired": "API URL 为必填项",
@@ -363,33 +363,33 @@
},
"unlockMethod": {
"title": "密码库解锁方式",
"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.",
"introText": "选择您解锁密码库的方式。您可以使用主密码(始终可用),也可以设置 PIN 码以便快捷访问。PIN 码输入错误 3 次后,您需要使用主密码。",
"password": "主密码",
"pin": "PIN 码",
"pinDescription": "使用 PIN 码解锁密码库",
"setupPin": "设置 PIN 码",
"enterNewPinDescription": "Enter a PIN code consisting of minimum 6 digits",
"enterNewPinDescription": "请输入至少 6 位数的 PIN 码",
"confirmPin": "确认 PIN",
"confirmPinDescription": "再次输入您的 PIN 以确认",
"invalidPinFormat": "PIN 格式无效",
"pinMismatch": "PIN 不一致",
"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."
"incorrectPin": "PIN 码错误,剩余 {{attemptsRemaining}} 次尝试。",
"incorrectPinSingular": "PIN 码错误,剩余 1 次尝试。",
"enableSuccess": "PIN 码解锁已成功启用!",
"pinLocked": "PIN 码解锁已禁用,请使用您的主密码解锁您的密码库。",
"pinSecurityWarning": "浏览器扩展中的 PIN 码解锁可能不如您的主密码安全,因为 PIN 码的熵值通常较低,若您的设备遭到入侵,则可能被暴力破解。请仅在您完全信任的设备上使用该方式。"
}
},
"passkeys": {
"passkey": "通行密钥",
"site": "网站",
"displayName": "名称",
"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.",
"helpText": "通行密钥会在网站提示时自动生成,无法手动编辑。要移除此通行密钥,您可以在此凭据中进行删除。要替换或创建新的通行密钥,请访问网站并按照其提示操作。",
"passkeyMarkedForDeletion": "通行密钥已标记为删除",
"passkeyWillBeDeleted": "This passkey will be deleted when you save this credential.",
"passkeyWillBeDeleted": "保存此凭据后,此通行密钥将被删除。",
"bypass": {
"title": "使用浏览器通行密钥",
"description": "How long would you like to use the browser's passkey provider for {{origin}}?",
"description": "对于 {{origin}},您希望使用浏览器的密码提供程序多长时间?",
"thisTimeOnly": "仅一次",
"alwaysForSite": "始终为此网站"
},

View File

@@ -6,7 +6,7 @@ export class AppInfo {
/**
* The current extension version. This should be updated with each release of the extension.
*/
public static readonly VERSION = '0.25.3';
public static readonly VERSION = '0.26.0-alpha';
/**
* The API version to send to the server (base semver without stage suffixes).

View File

@@ -20,7 +20,7 @@ export default defineConfig({
return {
name: "AliasVault",
description: "AliasVault Browser AutoFill Extension. Keeping your personal information private.",
version: "0.25.3",
version: "0.26.0",
content_security_policy: {
extension_pages: "script-src 'self' 'wasm-unsafe-eval'; object-src 'self';"
},

View File

@@ -93,8 +93,8 @@ android {
applicationId 'net.aliasvault.app'
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 2503901
versionName "0.25.3"
versionCode 2600100
versionName "0.26.0-alpha"
}
signingConfigs {
debug {

View File

@@ -36,19 +36,19 @@
<string name="passkey_creation_failed">创建通行密钥失败</string>
<string name="passkey_retry_button">重试</string>
<string name="passkey_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_explanation">这将创建一个新的通行密钥并将其存储在您的密码库中。它将自动同步到您所有使用 AliasVault 的设备。</string>
<string name="passkey_create_new_button">创建新通行密钥</string>
<string name="passkey_select_to_replace">或者替换现有的通行密钥:</string>
<string name="passkey_replace_button">替换通行密钥</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_replace_explanation">这将用新的通行密钥替换现有通行密钥。请注意,您的旧通行密钥将被覆盖且无法再访问。若您希望单独创建一个通行密钥,请返回到上一屏幕。</string>
<string name="passkey_replacing">正在替换通行密钥…</string>
<string name="passkey_checking_connection">检查连接中…</string>
<string name="passkey_retrieving">Retrieving passkey</string>
<string name="passkey_verifying">Verifying</string>
<string name="passkey_authenticating">Authenticating</string>
<string name="passkey_retrieving">正在检索通行密钥</string>
<string name="passkey_verifying">验证中</string>
<string name="passkey_authenticating">认证中</string>
<!-- Vault sync error messages -->
<string name="connection_error_title">连接错误</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="connection_error_message">无法连接到服务器。请检查您的互联网连接,然后重试创建通行密钥。</string>
<string name="session_expired_title">会话已过期</string>
<string name="session_expired_message">您的会话已过期,请重新登录。</string>
<string name="password_changed_title">密码已更改</string>
@@ -58,12 +58,12 @@
<string name="server_unavailable_title">服务器不可用</string>
<string name="server_unavailable_message">服务器目前不可用,请稍后重试。</string>
<string name="network_error_title">网络错误</string>
<string name="network_error_message">A network error occurred. Please check your connection and try again.</string>
<string name="network_error_message">网络发生错误,请检查您的连接后重试。</string>
<string name="server_version_not_supported_title">服务器需要更新</string>
<string name="server_version_not_supported_message">The server version is outdated. Please contact your administrator to update the server.</string>
<string name="server_version_not_supported_message">服务器版本过旧,请联系您的管理员更新服务器。</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_unlock_method_required">请在 AliasVault 主应用中启用生物识别或 PIN 码认证以继续</string>
<string name="error_unlock_vault_first">请先在 AliasVault 应用中解锁密码库</string>
<string name="error_vault_decrypt_failed">解密密码库失败</string>
<string name="error_biometric_cancelled">已取消生物识别认证</string>
<string name="error_encryption_key_failed">检索加密密钥失败</string>

View File

@@ -2,7 +2,7 @@
"expo": {
"name": "AliasVault",
"slug": "AliasVault",
"version": "0.25.3",
"version": "0.26.0-alpha",
"orientation": "portrait",
"icon": "./assets/images/icon.png",
"scheme": "aliasvault",

View File

@@ -272,11 +272,11 @@
"importSectionDescription": "Importez vos mots de passe depuis d'autres gestionnaires de mots de passe ou depuis un précédent export AliasVault.",
"importWebNote": "Pour importer des informations didentification à partir des gestionnaires de mots de passe existants, veuillez vous connecter à lapplication Web. La fonction dimportation nest actuellement disponible que sur la version web.",
"exportSectionTitle": "Exporter",
"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?",
"exportSectionDescription": "Exporter les données de votre coffre vers un fichier CSV. Ce fichier peut être utilisé comme une sauvegarde et peut également être importé dans d'autres gestionnaires de mots de passe.",
"exportCsvButton": "Exporter le coffre vers un fichier CSV",
"exporting": "Exportation en cours...",
"exportConfirmTitle": "Exporter le coffre",
"exportWarning": "Attention : L'exportation de votre coffre-fort vers un fichier non chiffré exposera tous vos mots de passe et informations sensibles en texte clair. Effectuez cette opération uniquement sur un appareil de confiance et veillez à : \n• Stocker le fichier exporté dans un emplacement sécurisé \n• Supprimer le fichier dès que vous n'en avez plus besoin \n• Ne jamais partager le fichier exporté avec d'autres personnes \n\nÊtes-vous sûr de vouloir poursuivre l'exportation ?",
"security": "Sécurité",
"appVersion": "Version de l'application {{version}} ({{url}})",
"autoLockOptions": {
@@ -295,29 +295,29 @@
"openSettings": "Ouvrir les paramètres",
"vaultUnlockSettings": {
"description": "Choisissez comment vous souhaitez déverrouiller votre coffre-fort.",
"biometrics": "Biometrics",
"faceId": "Face ID",
"touchId": "Touch ID",
"biometrics": "Biométrie",
"faceId": "Identification faciale (Face ID)",
"touchId": "Empreinte digitale",
"faceIdTouchId": "Face ID / Touch ID",
"biometricEnabled": "{{biometric}} est désormais activé avec succès",
"biometricNotAvailable": "{{biometric}} non disponible",
"biometricDisabledMessage": "{{biometric}} est désactivé pour AliasVault. Pour l'utiliser, veuillez d'abord l'activer dans les paramètres de votre appareil.",
"biometricHelp": "Use biometrics to unlock your vault, which is secured by the {{keystore}}.",
"biometricHelp": "Utilisez la biométrie pour déverrouiller votre coffre, qui est sécurisé par l {{keystore}}.",
"biometricUnavailableHelp": "{{biometric}} n'est pas disponible. Appuyez pour ouvrir les paramètres et/ou allez dans les paramètres de votre appareil pour l'activer et le configurer.",
"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",
"setupPin": "Setup PIN",
"enterNewPin": "Enter New PIN",
"enterNewPinDescription": "Choose a PIN to unlock your vault",
"confirmPin": "Confirm PIN",
"confirmPinDescription": "Re-enter your PIN to confirm",
"pinMismatch": "PINs do not match. Please try again.",
"pinLocked": "PIN locked after too many failed attempts. Please use your master password.",
"pin": "Code PIN",
"pinDescription": "Utilisez un code PIN personnalisé pour déverrouiller votre coffre plus rapidement.",
"pinEnabled": "Déverrouillage par code PIN activé avec succès",
"pinDisabled": "Déverrouillage par code PIN désactivé",
"setupPin": "Configurer le code PIN",
"enterNewPin": "Entrer le nouveau code PIN",
"enterNewPinDescription": "Entrez votre code PIN pour déverrouiller votre coffre",
"confirmPin": "Confirmer le code PIN",
"confirmPinDescription": "Entrez à nouveau votre code PIN pour confirmer",
"pinMismatch": "Les codes PIN ne correspondent pas. Veuillez réessayer.",
"pinLocked": "Code PIN verrouillé après trop de tentatives infructueuses. Veuillez utiliser votre mot de passe principal.",
"passwordHelp": "Saisissez à nouveau votre mot de passe maître complet pour déverrouiller votre coffre. Ceci est toujours activé comme option de repli.",
"keystoreIOS": "Trousseau iOS",
"keystoreAndroid": "Android Keystore"
"keystoreAndroid": "KeyStore Android"
},
"autoLockSettings": {
"description": "Choisissez combien de temps l'application peut rester en arrière-plan avant de nécessiter une ré-authentification. Vous devrez utiliser Face ID ou saisir votre mot de passe pour déverrouiller le coffre à nouveau."
@@ -328,8 +328,8 @@
"languageDescription": "Définissez la langue qui sera utilisée pour générer de nouvelles identités.",
"genderSection": "Genre",
"genderDescription": "Définissez la préférence de genre pour la génération de nouvelles identités.",
"ageRangeSection": "Age Range",
"ageRangeDescription": "Set the age range for generating new identities.",
"ageRangeSection": "Tranches d'âges",
"ageRangeDescription": "Définir la tranche d'âge pour la génération de nouvelles identités.",
"genderOptions": {
"random": "Aléatoire",
"male": "Homme",
@@ -337,7 +337,7 @@
}
},
"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.",
"description": "Configurez les paramètres par défaut utilisés lors de la génération de nouveaux mots de passe. Ces paramètres seront appliqués à tous les nouveaux mots de passe, sauf si vous les modifiez pour des entrées spécifiques.",
"preview": "Aperçu"
},
"securitySettings": {
@@ -383,10 +383,10 @@
"time": "Heure",
"ipAddress": "Adresse IP",
"client": "Client",
"failedToLoad": "Failed to load auth logs"
"failedToLoad": "Impossible de charger les journaux d'authentification"
},
"deleteAccount": {
"headerText": "Deleting your account will immediately and permanently delete all of your data.",
"headerText": "La suppression de votre compte supprimera immédiatement et définitivement toutes vos données.",
"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",

View File

@@ -75,7 +75,7 @@
"vault": {
"syncingVault": "正在同步密码库",
"uploadingVaultToServer": "正在向服务器上传密码库",
"savingChangesToVault": "正在保存密码库",
"savingChangesToVault": "正在保存密码库的更改",
"checkingForVaultUpdates": "检查密码库更新中",
"executingOperation": "执行操作中…",
"checkingVaultUpdates": "检查密码库更新",
@@ -210,7 +210,7 @@
"addCode": "添加两步验证码",
"nameOptional": "名称(可选)",
"secretKey": "密钥",
"instructions": "Enter the secret key shown by the website where you want to add two-factor authentication.",
"instructions": "输入要添加两步验证的网站显示的密钥。",
"saveToViewCode": "保存以查看验证码",
"errors": {
"invalidSecretKey": "密钥格式无效。"
@@ -418,12 +418,12 @@
"cameraPermissionMessage": "请允许访问相机以扫描二维码。",
"mobileLogin": {
"confirmTitle": "确认登录请求",
"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.",
"confirmSubtitle": "重新认证以批准在另一台设备上登录。",
"confirmMessage": "您即将使用您的账户在远程设备上登录。该设备将拥有对您密码库的完全访问权限。请仅在您信任该设备的情况下继续。",
"successDescription": "远程设备已成功登录。",
"requestExpired": "此登录请求已过期,请生成新的二维码。",
"authenticationFailed": "认证失败,请重试。",
"noAuthMethodEnabled": "Biometric or PIN unlock needs to be enabled to unlock with mobile"
"noAuthMethodEnabled": "需要启用生物识别或 PIN 码解锁才能使用移动设备解锁"
}
}
},

View File

@@ -1299,7 +1299,7 @@
CODE_SIGN_ENTITLEMENTS = AliasVault/AliasVault.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_BITCODE = NO;
GCC_PREPROCESSOR_DEFINITIONS = (
@@ -1314,7 +1314,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -1340,7 +1340,7 @@
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = AliasVault/AliasVault.entitlements;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
INFOPLIST_FILE = AliasVault/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = AliasVault;
@@ -1350,7 +1350,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -1501,7 +1501,7 @@
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -1537,7 +1537,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -1571,7 +1571,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1628,7 +1628,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1681,7 +1681,7 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1734,7 +1734,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1783,7 +1783,7 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -1818,7 +1818,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -1851,7 +1851,7 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1904,7 +1904,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1953,7 +1953,7 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -2005,7 +2005,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -2056,7 +2056,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_ENTITLEMENTS = autofill/autofill.entitlements;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -2072,7 +2072,7 @@
"@executable_path/../../Frameworks",
);
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG";
@@ -2101,7 +2101,7 @@
CODE_SIGN_ENTITLEMENTS = autofill/autofill.entitlements;
CODE_SIGN_STYLE = Automatic;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 2503901;
CURRENT_PROJECT_VERSION = 2600100;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 8PHW4HN3F7;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -2117,7 +2117,7 @@
"@executable_path/../../Frameworks",
);
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MARKETING_VERSION = 0.25.3;
MARKETING_VERSION = 0.26.0;
MTL_FAST_MATH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE";
PRODUCT_BUNDLE_IDENTIFIER = net.aliasvault.app.autofill;

View File

@@ -8,7 +8,7 @@ export class AppInfo {
/**
* The current mobile app version. This should be updated with each release of the mobile app.
*/
public static readonly VERSION = '0.25.3';
public static readonly VERSION = '0.26.0-alpha';
/**
* The API version to send to the server (base semver without stage suffixes).

View File

@@ -20,11 +20,11 @@
</xsd:element>
</xsd:schema>
<data name="WelcomeMessage">
<value>太好了!现在,我们AliasVault设置您的主密码。</value>
<value>很好!现在,我们来设置您的 AliasVault 主密码。</value>
<comment>Assistant welcome message for password setup step</comment>
</data>
<data name="ImportantNote">
<value>重要提示:此主密码将用于加密您的密码库。它应该是一个您能记住的长而复杂的字符串。如果您忘记了这个密码,您的数据将永久无法访问。</value>
<value>重要须知:此主密码将用于加密您的密码库。它应该是一个您能记住的长而复杂的字符串。如果您忘记了这个密码,您的数据将永久无法访问。</value>
<comment>Important warning about master password</comment>
</data>
<data name="SecurityPoint1">
@@ -36,7 +36,7 @@
<comment>Second security point about server access</comment>
</data>
<data name="SecurityPoint3">
<value>如果您忘记了这个密码,即使是AliasVault官方团队也不能恢复您的访问权限</value>
<value>您忘记了密码,即使服务器管理员也无法恢复您的访问权限</value>
<comment>Third security point about password recovery</comment>
</data>
<data name="MasterPasswordLabel">
@@ -60,11 +60,11 @@
<comment>Message shown while validating password</comment>
</data>
<data name="PasswordValidAndStrongMessage">
<value>密码有效且强度足够</value>
<value>密码有效且强度</value>
<comment>Success message for valid password</comment>
</data>
<data name="PasswordTooShortError">
<value>主密码长度必须至少为10个字符。</value>
<value>主密码长度必须至少为 10 个字符。</value>
<comment>Error message for password too short</comment>
</data>
<data name="ConfirmPasswordPrompt">

View File

@@ -59,6 +59,6 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="ErrorTimeout" xml:space="preserve">
<value>Mobile login request timed out. Please reload the page and try again.</value>
<value>移动端登录请求超时,请重新加载页面后重试。</value>
</data>
</root>

View File

@@ -67,11 +67,11 @@
<comment>Modal title for mobile unlock feature</comment>
</data>
<data name="ScanQrCodeDescription" xml:space="preserve">
<value>Scan this QR code with your AliasVault mobile app to login.</value>
<value>使用 AliasVault 移动端应用扫描该二维码,即可登录。</value>
<comment>Description instructing user to scan QR code</comment>
</data>
<data name="ScanQrCodeToUnlock" xml:space="preserve">
<value>Scan this QR code with your AliasVault mobile app to unlock your vault.</value>
<value>使用 AliasVault 移动端应用扫描该二维码,即可解锁您的密码库。</value>
<comment>Description instructing user to scan QR code to unlock</comment>
</data>
</root>

View File

@@ -67,7 +67,7 @@
<comment>Modal title for mobile unlock feature</comment>
</data>
<data name="ScanQrCodeDescription" xml:space="preserve">
<value>Scan this QR code with your AliasVault mobile app to login and unlock your vault.</value>
<value>使用 AliasVault 移动端应用扫描该二维码,即可登录并解锁您的密码库。</value>
<comment>Description instructing user to scan QR code</comment>
</data>
</root>

View File

@@ -63,7 +63,7 @@
<comment>Message shown while WebAuthn authentication is in progress</comment>
</data>
<data name="QuickUnlockDescription" xml:space="preserve">
<value>Quickly unlock your vault using your passkey. Or login with your password as a fallback.</value>
<value>使用通行密钥快速解锁您的密码库。或者使用密码作为备用方式登录。</value>
<comment>Description explaining WebAuthn unlock options</comment>
</data>
<data name="UnlockWithWebAuthn" xml:space="preserve">

View File

@@ -107,7 +107,7 @@
<comment>Label for alias generation age range setting</comment>
</data>
<data name="AliasGenerationAgeRangeDescription">
<value>Set the default age range for generating new identities. This affects the birthdate assigned to the generated identity.</value>
<value>设置生成新身份的默认年龄范围。这将影响分配给已生成身份的出生日期。</value>
<comment>Description for alias generation age range setting</comment>
</data>
<!-- Clipboard Settings Section -->

View File

@@ -25,17 +25,17 @@ public static class AppInfo
/// <summary>
/// Gets the minor version number.
/// </summary>
public const int VersionMinor = 25;
public const int VersionMinor = 26;
/// <summary>
/// Gets the patch version number.
/// </summary>
public const int VersionPatch = 3;
public const int VersionPatch = 0;
/// <summary>
/// Gets the version stage (e.g., "", "-alpha", "-beta", "-rc").
/// </summary>
public const string VersionStage = "";
public const string VersionStage = "-alpha";
/// <summary>
/// Gets the minimum supported AliasVault client version. Normally the minimum client version is the same