immich/mobile/lib/repositories
JobiJoba 8733d1e554
feat(mobile): add bulk download functionality (#18878)
* feat(mobile): add bulk download functionality and update UI messages

- Added `downloadAll` method to `IDownloadRepository` and its implementation in `DownloadRepository` to handle multiple asset downloads.
- Implemented `downloadAllAsset` in `DownloadStateNotifier` to trigger bulk downloads.
- Updated `DownloadService` to create download tasks for all selected assets.
- Enhanced UI with new download success and failure messages in `en.json`.
- Added download button to `ControlBottomAppBar` and integrated download functionality in `MultiselectGrid`.

* translations use i18n method t()

* Update mobile/lib/services/download.service.dart

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>

* fix(mobile): update download logic in DownloadService

- Changed the download method to utilize downloadAll for handling multiple tasks.
- Simplified remoteId check by removing unnecessary condition.

* sort i18n keys

* remove the download signature from interface and logic as we use the downloadAll now

---------

Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
2025-06-04 09:49:43 -05:00
..
activity_api.repository.dart refactor: user entity (#16655) 2025-03-12 08:56:56 -05:00
album.repository.dart refactor(mobile): remove int user id (#16814) 2025-03-18 11:05:37 -05:00
album_api.repository.dart refactor: user entity (#16655) 2025-03-12 08:56:56 -05:00
album_media.repository.dart fix(mobile): photo_manager ignore filters (#18742) 2025-06-02 09:43:59 -05:00
api.repository.dart refactor(mobile): DB repository for asset, backup, sync service (#12953) 2024-09-30 21:37:30 +07:00
asset.repository.dart fix(mobile): don't show locked asset in local album view (#18536) 2025-05-23 10:20:49 -05:00
asset_api.repository.dart feat: locked view mobile (#18316) 2025-05-20 13:35:22 +00:00
asset_media.repository.dart refactor(mobile): remove int user id (#16814) 2025-03-18 11:05:37 -05:00
auth.repository.dart feat(mobile): remote asset & exif sync (#18756) 2025-06-03 11:01:50 -05:00
auth_api.repository.dart feat: locked view mobile (#18316) 2025-05-20 13:35:22 +00:00
backup.repository.dart refactor(mobile): backup provider (#16360) 2025-02-27 09:56:23 -06:00
biometric.repository.dart feat: locked view mobile (#18316) 2025-05-20 13:35:22 +00:00
database.repository.dart chore(mobile): refactor authentication (#14322) 2024-11-26 12:43:44 -06:00
download.repository.dart feat(mobile): add bulk download functionality (#18878) 2025-06-04 09:49:43 -05:00
etag.repository.dart refactor(mobile): remove int user id (#16814) 2025-03-18 11:05:37 -05:00
file_media.repository.dart fix(mobile): Fix minor issues with downloading assets (#13609) 2024-10-20 12:56:02 -05:00
folder_api.repository.dart feat(mobile): Folder View for mobile (#15047) 2025-03-06 17:27:43 +00:00
local_files_manager.repository.dart fix(mobile): auto trash using MANAGE_MEDIA (#17828) 2025-04-24 19:09:50 -05:00
network.repository.dart feat(mobile): Auto switching server URLs (#14437) 2024-12-05 09:11:48 -06:00
partner.repository.dart refactor: user entity (#16655) 2025-03-12 08:56:56 -05:00
partner_api.repository.dart refactor: user entity (#16655) 2025-03-12 08:56:56 -05:00
permission.repository.dart feat(mobile): Auto switching server URLs (#14437) 2024-12-05 09:11:48 -06:00
person_api.repository.dart refactor(mobile): DB repository for asset, backup, sync service (#12953) 2024-09-30 21:37:30 +07:00
secure_storage.repository.dart feat: locked view mobile (#18316) 2025-05-20 13:35:22 +00:00
share_handler.repository.dart feat(mobile): share to mechanism (#15229) 2025-01-16 21:20:44 -06:00
timeline.repository.dart fix(mobile): Showing videos of partner in search page quick links (#18855) 2025-06-02 09:35:18 -05:00
upload.repository.dart feat(mobile): share to mechanism (#15229) 2025-01-16 21:20:44 -06:00