Commit Graph

848 Commits

Author SHA1 Message Date
Leendert de Borst
120b8c825b Fix VaultExportService.cs build warning (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
6624c432a7 Update launchSettings.json (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
631e5369a5 Add settings mutate endpoint for browser extension e2e tests (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
db9d8e3ead Fix race condition on vault import with multiple folders (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
38b0c866a6 Add 413 error handling to AliasVault.Client (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
b40ea721bd Make server max accepted upload size configurable (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
de07764e91 Update accepted extensions 2026-04-25 00:24:04 +02:00
Leendert de Borst
52ee530519 Update vault attachment uploader to accept files up to 10MB (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
c8e1626967 Update AliasVault.Client client-side local import filesize limit for 50MB to 1GB (#1786) 2026-04-25 00:24:04 +02:00
Leendert de Borst
3577b00280 Update tests for creditcard details import (#1959) 2026-04-24 15:24:34 +02:00
Leendert de Borst
1756d3978c Refactor (#1959) 2026-04-24 15:24:34 +02:00
Leendert de Borst
e529b9bfe5 Update translations (#1959) 2026-04-24 15:24:34 +02:00
Leendert de Borst
14bd5d5caf Add .zip extension to ProtonPass import card (#1959) 2026-04-24 15:24:34 +02:00
Leendert de Borst
83487f0183 Add Proton Pass zip import unit tests (#1959) 2026-04-24 15:24:34 +02:00
Leendert de Borst
df6ab49af7 Add Proton Pass zip archive import scaffolding (#1959) 2026-04-24 15:24:34 +02:00
Leendert de Borst
e2574358ac Merge pull request #1954 from aliasvault/1947-add-bitwarden-zip-archive-import-support 2026-04-24 11:16:09 +02:00
dependabot[bot]
a53215efc0 Bump the nuget group with 1 update
Bumps Microsoft.AspNetCore.DataProtection from 10.0.6 to 10.0.7

---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.DataProtection
  dependency-version: 10.0.7
  dependency-type: direct:production
  dependency-group: nuget
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-23 17:19:21 +02:00
Leendert de Borst
23b7507bce Update import duplicate check to check full folder paths and smarter notes check (#1947) 2026-04-23 08:49:30 +02:00
Leendert de Borst
e08966c897 Add bitwarden .zip extension to import, refactor import service valid extension check (#1947) 2026-04-22 23:41:04 +02:00
Leendert de Borst
c147025f70 Include TestData .zip files (#1947) 2026-04-22 23:14:59 +02:00
Leendert de Borst
c3e0f8410a Add Bitwarden .zip import scaffolding (#1947) 2026-04-22 23:02:01 +02:00
Leendert de Borst
f2d446cad7 Only show .zip warning for importers that don't explicitly support .zip (#1947) 2026-04-22 22:03:18 +02:00
Leendert de Borst
f1ee13824b Tweak .1pux default vaults to promote to root (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
81368f2169 Update BaseImporter.cs (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
8dccd2541c Update translations (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
eb38aa57a5 Add .1pux import unit test (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
7fd7e1172b Refactor accepted extensions from string to array (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
c811cc7a0e Add .1pux importer logic scaffolding (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
893b18d717 Show supported file formats in ImportServiceCard.razor (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
a7664b9498 Add BaseArchiveImporter.cs scaffolding (#1937) 2026-04-21 20:34:25 +02:00
Leendert de Borst
5be63dd71d Update tests (#1940) 2026-04-19 22:06:30 +02:00
Leendert de Borst
1fec6f4a5b Add account registration limit per 24 hours setting (#1940) 2026-04-19 22:06:30 +02:00
Leendert de Borst
e7251775eb Remove browser extension autofill disable flag for admin panel (#1935) 2026-04-19 11:56:20 +02:00
Leendert de Borst
e6e4dbb6d6 Add unique app instance ID for Android (#1930) 2026-04-19 11:04:04 +02:00
Arnaud Dartois
6b75ccd2d1 (feat) implement reject rcp to for external domain (#1910)
* (feat) : Add RCPT-stage domain rejection to reduce SMTP open-relay false positives

* (docs) add comments in .env

* (tests) add unit tests for RCPT TO

* (docs) : update installation documentation with information about  RCPT TO process.

* (docs) : add missing header parameter

* error SA1508: A closing brace should not be preceded by a blank line

* (fix) SA1615 - fix stylecop rules

* Fix TU

* revert

* revert

* revert
2026-04-18 20:56:52 +02:00
dependabot[bot]
9cc3e4f49a Bump the nuget group with 1 update
Bumps MailKit from 4.15.1 to 4.16.0

---
updated-dependencies:
- dependency-name: MailKit
  dependency-version: 4.16.0
  dependency-type: direct:production
  dependency-group: nuget
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-18 08:45:19 +02:00
Leendert de Borst
172613fab3 Add application/octect-stream as general filetype to support import custom extensions in mobile (#1923) 2026-04-17 15:23:28 +02:00
Leendert de Borst
cc52b5edf9 Update email domain chooser style in AliasVault.Client 2026-04-17 12:17:05 +02:00
Leendert de Borst
84042eeba0 Update NuGet packages (#1913) 2026-04-15 18:58:13 +02:00
Leendert de Borst
fe8d3c9b9a Update dotnet NuGet packages from 10.0.2 to 10.0.6 (#1913) 2026-04-15 18:58:13 +02:00
Leendert de Borst
c6c0806dcf New Crowdin updates (#1902)
* New translations en.json (Danish)
Update translations from Crowdin [ci skip]

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

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

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

* New translations en.json (Polish)
Update translations from Crowdin [ci skip]
2026-04-13 21:14:27 +02:00
Arnaud Dartois
ce96b2e85a Add option to configure SMTP advertised hostname for self-hosted setups (#1877)
* feat(smtp): make advertised hostname configurable for PTR/banner alignment

* test(integration): align SMTP TestHostBuilder with AdvertisedHostnameConfiguration and IConfiguration

* test(import): expect Dashlane notes newline per Environment.NewLine

* docs: document SMTP advertised hostname and PTR/banner alignment

* restore original .vscode folder content

* Use env-only SMTP advertised hostname in tests and service

* revert

* remove unused reference

* remove unused methods

* Use aliasvault when SMTP advertised hostname is empty

* Update SMTP advertised hostname docs

* Update install.sh SMTP advertised hostname prompt

* Update .env.example

* Update docs

---------

Co-authored-by: Arnaud Dartois <opensource.fork@tordais.cc>
Co-authored-by: Leendert de Borst <ldeborst@xivisoft.com>
2026-04-13 14:03:54 +02:00
Leendert de Borst
89da85d635 Bump target version to 0.29.0-alpha 2026-04-12 13:02:15 +02:00
Leendert de Borst
5b1791ef55 New translations setup.en.resx (German) (#1901)
Update translations from Crowdin [ci skip]
2026-04-11 20:11:51 +02:00
Leendert de Borst
d47d5d0f2c New Crowdin updates (#1887)
* 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 home.en.resx (French)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations folderselector.en.resx (Czech)
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 deletefoldermodal.en.resx (Dutch)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations home.en.resx (Danish)
Update translations from Crowdin [ci skip]
2026-04-11 17:18:28 +02:00
Leendert de Borst
a0fd7b5ed1 Fix bug in web app emails page responsive pager not switching pages (#1894) 2026-04-10 15:14:08 +02:00
Leendert de Borst
fd52b71c36 Update KeepassXC import test (#1885) 2026-04-09 21:44:26 +02:00
Leendert de Borst
ac4f27c65c Merge pull request #1874 from aliasvault/1695-feature-request-folders-inside-folder-subfolders
Add subfolder support to all apps
2026-04-08 23:30:18 +02:00
Leendert de Borst
0007f047e1 New Crowdin updates (#1875)
* 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 (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 (Romanian)
Update translations from Crowdin [ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.json (German)
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]
2026-04-08 23:14:43 +02:00
Leendert de Borst
ca6b02423e Update mobile app CSV export structure (#1695) 2026-04-08 22:44:50 +02:00