723 Commits

Author SHA1 Message Date
Leendert de Borst
dc9d2ddc4d Bump version to 0.26.4 2026-02-16 19:20:50 +01:00
Leendert de Borst
804cb2a9de Add public key verification to mobile unlock flow (#1717) 2026-02-16 18:42:47 +01:00
Leendert de Borst
fa612dac3a New Crowdin updates (#1682)
* New translations changepassword.en.resx (Danish)
Update translations from Crowdin [ci skip]

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

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

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

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

* New translations mobilelogin.en.resx (Danish)
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 importexport.en.resx (French)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations passwordconfirmationmodal.en.resx (Danish)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations passwordconfirmationmodal.en.resx (Persian)
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 importexport.en.resx (French)
Update translations from Crowdin [ci skip]

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

* New translations importexport.en.resx (Polish)
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 (Bulgarian)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations passwordconfirmationmodal.en.resx (Danish)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.json (Polish)
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 (Bulgarian)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations passwordconfirmationmodal.en.resx (Korean)
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 (Russian)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations passwordconfirmationmodal.en.resx (Swedish)
Update translations from Crowdin [ci skip]
2026-02-16 18:24:28 +01:00
Leendert de Borst
8f95af34bc Add additional error detection to blazor WASM boot 2026-02-16 12:59:19 +01:00
Leendert de Borst
4fd6378aab Add minify to web app index.html to save space (#1712) 2026-02-16 12:13:04 +01:00
Leendert de Borst
9e4b75e723 Reduce web app start screen margins for mobile displays (#1709) 2026-02-15 20:15:59 +01:00
Leendert de Borst
15a4fd5c65 Merge branch 'main' of https://github.com/aliasvault/aliasvault
* 'main' of https://github.com/aliasvault/aliasvault:
  Update UserManagementTests.cs (#1705)
  Allow mobile to scroll in admin tables, update users table structure (#1705)
2026-02-14 22:40:56 +01:00
Leendert de Borst
a44a5283f8 Update index.template.html (#1680) 2026-02-14 22:40:51 +01:00
Leendert de Borst
bdf128ed47 Update UserManagementTests.cs (#1705) 2026-02-14 22:40:01 +01:00
Leendert de Borst
9e459fc664 Allow mobile to scroll in admin tables, update users table structure (#1705) 2026-02-14 22:40:01 +01:00
Leendert de Borst
d7b580d995 Increase max password generator length to 256 chars in web app (#1701) 2026-02-14 21:50:33 +01:00
Leendert de Borst
a102548bc0 Update logout to clear all local settings in browser extension (#1694) 2026-02-14 21:23:55 +01:00
Leendert de Borst
dd7c65f958 Add save login credential scaffolding to browser extension (#1694) 2026-02-14 21:23:55 +01:00
Leendert de Borst
ba744b8e93 Add single token revoke method to API to fix mobile unlock flow (#1683) 2026-02-13 13:09:10 +01:00
Leendert de Borst
d06e91ce4c Add password confirm to vault export, refactor vault reset to use same logic (#1687) 2026-02-13 11:18:41 +01:00
Leendert de Borst
f39e761634 Remove Blazor.WebAssembly.DynamicCulture in favor of .net 10 built-in multi locale 2026-02-11 23:42:40 +01:00
Leendert de Borst
f4d3f5a6f3 Add automatic reload to web app when detecting outdated local client side files (#1681) 2026-02-11 23:16:02 +01:00
Leendert de Borst
5589ca66e6 Add danish language to all apps (#1677) 2026-02-11 22:02:01 +01:00
Leendert de Borst
7ef18dfe1b New Crowdin updates (#1671)
* New translations en.json (Swedish)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations resetvaultsection.en.resx (Danish)
Update translations from Crowdin [ci skip]
2026-02-11 21:36:24 +01:00
Leendert de Borst
767361334a Add danish language to identity generator (#1676) 2026-02-11 21:23:52 +01:00
Leendert de Borst
e87434cc13 Merge pull request #1354 from aliasvault/1353-upgrade-from-net-9-to-net-10-admin-api-and-web-app-services
Upgrade hosted server apps from .NET 9 to .NET 10
2026-02-11 21:23:33 +01:00
Leendert de Borst
5cb22c40d7 Update ClientPlaywrightTest.cs 2026-02-11 21:10:54 +01:00
Leendert de Borst
7cd62a5bcd Update tests 2026-02-11 20:38:01 +01:00
Leendert de Borst
6079a6004f Update ApiTests.cs 2026-02-11 20:11:17 +01:00
Leendert de Borst
7b354b47ad Add drag-and-drop reorder to aliasvault.client custom fields (#1673) 2026-02-11 17:19:54 +01:00
Leendert de Borst
4718e36912 Merge branch 'main' into 1353-upgrade-from-net-9-to-net-10-admin-api-and-web-app-services
* main:
  Bump faraday in /docs in the bundler group across 1 directory
  Update project.pbxproj
  Add 0.26.3 release notes
  New Crowdin updates (#1669)
  Update .net e2e playwright test navigation wait
  Update .net e2e playwright test navigation wait
  Improve password autotype robustness to work on more websites (#1667)
  Add single hostname support to credential matcher logic (#1667)
  New Crowdin updates (#1579)
  Show folder for search results in mobile app (#1665)
  Fix translations in iOS credential selection long press context menu (#1659)
  Add Android app obtainium download badge
  Add Swedish language option to all apps (#1653)
  Update browser extension auth to properly differentiate between network errors and auth errors (#1644)
  Update import UI and enpass SVG
  Add Enpass import option (#1643)
  Bump webpack
  Add Microsoft Edge import option (#1640)
  Add French, Swedish and Urdu languages to identity generator (#1645)
2026-02-11 17:04:59 +01:00
Leendert de Borst
d40781a209 New Crowdin updates (#1669) 2026-02-09 20:06:06 +01:00
Leendert de Borst
fa9c863388 Update .net e2e playwright test navigation wait 2026-02-09 19:46:07 +01:00
Leendert de Borst
bbc86b693d Update .net e2e playwright test navigation wait 2026-02-09 19:24:02 +01:00
Leendert de Borst
fbb359c18d 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]
2026-02-09 13:54:59 +01:00
Leendert de Borst
5d7af1d123 Add Swedish language option to all apps (#1653) 2026-02-07 20:38:54 +01:00
Leendert de Borst
eaa1cc377a Update import UI and enpass SVG 2026-02-07 17:41:52 +01:00
Leendert de Borst
c292a04ba7 Add Enpass import option (#1643) 2026-02-07 16:53:20 +01:00
Leendert de Borst
fbf43cf09c Add Microsoft Edge import option (#1640) 2026-02-07 16:20:41 +01:00
Leendert de Borst
276a8f1aa8 Add French, Swedish and Urdu languages to identity generator (#1645) 2026-02-07 15:51:23 +01:00
Leendert de Borst
8e35b2f895 Update test infrastructure to use built-in Kestrel test methods (#1353) 2026-02-07 15:23:24 +01:00
Leendert de Borst
b4bdd2dc0e Remove duplicate dotnet webassembly hot reload, now shipped as part of core (#1353) 2026-02-06 12:55:02 +01:00
Leendert de Borst
9e05576e73 Update Docker image buildplatform tags (#1353) 2026-02-06 12:24:46 +01:00
Leendert de Borst
443a850ee1 Merge branch 'main' into 1353-upgrade-from-net-9-to-net-10-admin-api-and-web-app-services
* main: (100 commits)
  Update import flow to prevent UI reset and apply favicon reuse (#1583)
  Add SMTP TLS instructions to self-hosted docs
  Add install.sh restart [container] option (#1635)
  Improve browser extension autofill trigger to work on more websites (#1620)
  Fix Logo parsing in React Native to support string/base64 matching (#1622)
  Tweak iOS and Android password unlock flow to not let incorrect passwords overwrite persisted encryption key
  Tweak browser extension and mobile app unlock wrong password error
  Tweak TotpCodes add/close button style (#1629)
  Add StickyActionBar to web app in order to always show submit/cancel buttons in Item AddEdit.razor (#1629)
  Update all-in-one Docker container config to use 127.0.0.1 instead of localhost refernces (#1627)
  Add ignore_port option to Rust credential matcher for Android specifically (#1625)
  Update isntall docs and troubleshooting steps
  Move all error translations to common.errors.* in browser extension
  Add null checks to attachment viewer/uploader in web app to prevent exceptions
  Update docs (#112)
  Add AntiForgeryTokenMIddleware to admin to prevent HTTP 400 errors and instead do a clean redirect (#112)
  Add certificates dir bind mount to docker-compose for SMTP TLS (#112)
  Update SmtpServer with configurable certificates dir for Docker bind mount (#112)
  Add AppErrorCodes handling to mobile apps (#1619)
  Add AppErrorCodes handling to browser extension (#1619)
  ...
2026-02-06 12:23:11 +01:00
Leendert de Borst
0e6d5bf0c0 Update import flow to prevent UI reset and apply favicon reuse (#1583) 2026-02-06 09:42:10 +00:00
Leendert de Borst
e31d4739fc Tweak TotpCodes add/close button style (#1629) 2026-02-05 09:15:29 +00:00
Leendert de Borst
1db8ac788e Add StickyActionBar to web app in order to always show submit/cancel buttons in Item AddEdit.razor (#1629) 2026-02-05 09:15:29 +00:00
Leendert de Borst
6dc9b638da Add null checks to attachment viewer/uploader in web app to prevent exceptions 2026-02-04 21:07:45 +01:00
Leendert de Borst
8f1c563bc6 Add AntiForgeryTokenMIddleware to admin to prevent HTTP 400 errors and instead do a clean redirect (#112) 2026-02-04 19:09:39 +00:00
Leendert de Borst
d83978994f Update SmtpServer with configurable certificates dir for Docker bind mount (#112) 2026-02-04 19:09:39 +00:00
Leendert de Borst
42320518d7 Update test offline mode simulation (#1617) 2026-02-04 12:26:42 +00:00
Leendert de Borst
7e433fe80a Update credential tests 2026-02-04 11:50:10 +01:00
Leendert de Borst
cd9bd81a0a Update CreateNewIdentityWidget to use Login as default to match other platforms (#1606) 2026-02-04 08:42:11 +00:00
Leendert de Borst
a9ca3ffcba Update Auth.razor 2026-02-04 09:11:22 +01:00
dependabot[bot]
22a8c78a4d Bump the nuget group with 1 update
Bumps HtmlSanitizer from 9.0.889 to 9.0.892

---
updated-dependencies:
- dependency-name: HtmlSanitizer
  dependency-version: 9.0.892
  dependency-type: direct:production
  dependency-group: nuget
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-03 21:38:10 +00:00