Commit Graph

310 Commits

Author SHA1 Message Date
Leendert de Borst
ee853b830b Recreate migrations (#1404) 2025-12-13 12:20:03 +01:00
Leendert de Borst
aca686e934 Remove nickname field, tweak UI, update migrations (#1404) 2025-12-13 11:19:23 +01:00
Leendert de Borst
8d6f862291 Update migrations and move email field to login category instead of alias (#1404) 2025-12-12 21:27:34 +01:00
Leendert de Borst
e36cf3ee34 Update migration to not migrate minDate birthdate field values (#1404) 2025-12-12 10:33:23 +01:00
Leendert de Borst
b154d08c24 Update Docker build and GitHub actions to always build core libs (#1404) 2025-12-11 14:46:31 +01:00
Leendert de Borst
4fc2ce20cf Add fixed SrpIdentity column to allow username changes (#1429) 2025-12-11 13:35:16 +01:00
Leendert de Borst
f42828ebd1 Move shared to core folder (#1404) 2025-12-11 09:19:03 +01:00
Leendert de Borst
84434abe3a Merge branch 'main' into 1404-update-datamodel-to-use-fields-based-approach 2025-12-10 17:04:20 +00:00
Leendert de Borst
65977c1544 Add DeletedAt to Item entity (#1404) 2025-12-05 22:36:15 +01:00
Leendert de Borst
14591f55a1 Add field history scaffolding with implementation for password field (#1404) 2025-12-04 15:35:54 +01:00
Leendert de Borst
20c9f08616 Tweak migration to prevent double records (#1404) 2025-12-03 19:27:16 +01:00
Leendert de Borst
7f898a2073 Recreate migrations with updated system field definition structure (#1404) 2025-12-03 19:10:06 +01:00
Leendert de Borst
3d4c148059 Add tags migration (#1404) 2025-12-02 22:22:56 +01:00
Leendert de Borst
fe21811242 Add shared model compilation to csharp, swift and kotlin for FieldKey enum (#1404) 2025-12-02 15:11:40 +01:00
Leendert de Borst
985ee2469e Cleanup FieldKey const (#1404) 2025-12-02 14:37:07 +01:00
Leendert de Borst
d9a6dfab03 New Crowdin updates (#1397)
* New translations en.json (Polish)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

* New translations en.json (Russian)
Update translations from Crowdin [ci skip]
2025-11-28 18:26:11 +01:00
Leendert de Borst
4e0db87bc3 Update password generator with non-ambigious char improvement (#1398) 2025-11-27 10:10:24 +01:00
Leendert de Borst
5c160e79ed Add field based data model migration (#1404) 2025-11-26 23:53:13 +01:00
Leendert de Borst
0930ae03cd Remove loading animation from web app generate random alias button (#1402) 2025-11-26 22:37:44 +00:00
Leendert de Borst
aa630984e3 New Crowdin updates (#1396)
* New translations en.json (German)
Update translations from Crowdin [ci skip]

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

* New translations en.json (German)
Update translations from Crowdin [ci skip]
2025-11-24 19:49:39 +01:00
Leendert de Borst
d7ec6583f0 New Crowdin updates (#1380)
* New translations en.json (German)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations mobilelogin.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 (Dutch)
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 general.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 sharedresources.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 (Portuguese, Brazilian)
Update translations from Crowdin [ci skip]

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

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

* New translations general.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 (Portuguese, Brazilian)
Update translations from Crowdin [ci skip]

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

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

* New translations mobilelogin.en.resx (Chinese Simplified)
Update translations from Crowdin [ci skip]
2025-11-24 17:59:25 +01:00
Leendert de Borst
85e33a9fcd Use current UI language as default identity generator language (#1383) 2025-11-22 21:33:31 +00:00
Leendert de Borst
51dc4d2844 Add langcode definitions to identitty-generator languages (#1383) 2025-11-22 21:33:31 +00:00
Leendert de Borst
b1d12af7dd Add german identity generator option (#1383) 2025-11-22 21:33:31 +00:00
Leendert de Borst
72254f38ff Refactor identity-generator (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
274cb70d4b Expose supported identity language options via identity-generator shared lib (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
a30e68e0f8 Update General.razor (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
fe0678f217 Update identity-generator lib (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
aab69ab1b4 Add identity generator age setting to AliasVault.Client (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
02575d7366 Add AgeRange options (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
b218ebf407 Add DefaultIdentityAgeRange settings param (#1379) 2025-11-22 04:46:58 +00:00
Leendert de Borst
aab7b475cc New Crowdin updates (#1356)
* New translations strings.xml (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 (Dutch)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

* New translations localizable.strings (Russian)
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 apierrors.en.resx (Chinese Simplified)
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 apierrors.en.resx (French)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations home.en.resx (Chinese Simplified)
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 (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 (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 unlock.en.resx (German)
Update translations from Crowdin [ci skip]

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

* New translations unlock.en.resx (Russian)
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 topmenu.en.resx (Chinese Simplified)
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 sharedresources.en.resx (French)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations sharedresources.en.resx (Finnish)
Update translations from Crowdin [ci skip]
2025-11-21 06:45:06 +01:00
Leendert de Borst
da496b31a1 Update default email domain logic (#1371) 2025-11-21 06:45:05 +01:00
Leendert de Borst
0da8661d6c Update EditEmailFormRow.razor (#1371) 2025-11-21 06:45:05 +01:00
Leendert de Borst
4d613175ed Update env variables and refactor metadata storage (#1371) 2025-11-21 06:45:05 +01:00
Leendert de Borst
c3be660c1e Update AAGUID docs 2025-11-20 16:33:57 +01:00
Leendert de Borst
986c028d82 Merge pull request #1366 from aliasvault/1347-feature-request-unlock-vault-with-mobile-device
Add "unlock with mobile" option to web app and browser extension
2025-11-20 05:11:25 +00:00
Leendert de Borst
07b6097d31 Update tests (#1347) 2025-11-19 11:25:03 +01:00
dependabot[bot]
9016a4b0b8 Bump the npm_and_yarn group across 3 directories with 2 updates
Bumps the npm_and_yarn group with 2 updates in the /apps/mobile-app directory: [js-yaml](https://github.com/nodeca/js-yaml) and [glob](https://github.com/isaacs/node-glob).
Bumps the npm_and_yarn group with 1 update in the /apps/server/AliasVault.Admin directory: [glob](https://github.com/isaacs/node-glob).
Bumps the npm_and_yarn group with 1 update in the /apps/server/AliasVault.Client directory: [glob](https://github.com/isaacs/node-glob).


Updates `js-yaml` from 3.14.1 to 3.14.2
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2)

Updates `glob` from 10.4.5 to 10.5.0
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.4.5...v10.5.0)

Updates `glob` from 10.4.1 to 10.5.0
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.4.5...v10.5.0)

Updates `glob` from 10.4.1 to 10.5.0
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/node-glob/compare/v10.4.5...v10.5.0)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 3.14.2
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: glob
  dependency-version: 10.5.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: glob
  dependency-version: 10.5.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: glob
  dependency-version: 10.5.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-19 09:51:14 +00:00
Leendert de Borst
bdfea51319 UX flow tweaks (#1347) 2025-11-18 23:05:45 +01:00
Leendert de Borst
d562b183c5 Update web app translations (#1347) 2025-11-18 22:10:33 +01:00
Leendert de Borst
4d74504882 Refactor MobileLogin models to use class structure instead of record for readability (#1347) 2025-11-18 21:18:38 +01:00
Leendert de Borst
29c7644b53 Tweak app scheme to shorthand aliasvault (#1347) 2025-11-18 21:01:14 +01:00
Leendert de Borst
42524d1412 Add mobile unlock modal to web app allowing use from both login and unlock screens (#1347) 2025-11-18 13:34:31 +01:00
Leendert de Borst
ec8cb7836a Add mobile login option to browser extension unlock page too (#1347) 2025-11-18 11:20:19 +01:00
Leendert de Borst
32fe2156f1 Refactor web app MobileLoginUtility flow, add helper model (#1347) 2025-11-17 23:44:33 +01:00
Leendert de Borst
076060e7f3 Remove redundant fields from MobileLoginRecord structure (#1347) 2025-11-17 23:15:37 +01:00
Leendert de Borst
bcd1353cf7 Add mobile login requests to admin dashboard, update migration (#1347) 2025-11-17 21:08:11 +01:00
Leendert de Borst
0db3e2dbf4 Refactor mobile unlock to mobile login naming, update migrations (#1347) 2025-11-17 18:24:45 +01:00
Leendert de Borst
7923c16c51 Tweak login UI and translations (#1347) 2025-11-17 17:03:14 +01:00