You've already forked immich
mirror of
https://github.com/immich-app/immich.git
synced 2025-07-17 09:27:45 +02:00
feat(mobile): preserve mobile album info on upload (#11965)
* curating assets with albums to upload * sorting for background backup * background upload works * transform fields string array to javascript array * send json array * generate sql * refactor upload callback * remove albums info from upload payload * mechanism to create album on album selection * album creation * Sync to upload album * Remove unused service * unify name changes * Add mechanism to sync uploaded assets to albums * Put add to album operation after updating the UI state * clean up * background album sync * add to album in background context * remove add to album in callback * refactor * refactor * refactor * fix: make sure all selected albums are selected for building upload candidate * clean up * add manual sync button * lint * revert server changes * pr feedback * revert time filtering * const * sync album on manual upload * linting * pr feedback and proper time filtering * wording
This commit is contained in:
19
mobile/lib/models/backup/backup_candidate.model.dart
Normal file
19
mobile/lib/models/backup/backup_candidate.model.dart
Normal file
@ -0,0 +1,19 @@
|
||||
import 'package:photo_manager/photo_manager.dart';
|
||||
|
||||
class BackupCandidate {
|
||||
BackupCandidate({required this.asset, required this.albumNames});
|
||||
|
||||
AssetEntity asset;
|
||||
List<String> albumNames;
|
||||
|
||||
@override
|
||||
int get hashCode => asset.hashCode;
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
if (other is! BackupCandidate) {
|
||||
return false;
|
||||
}
|
||||
return asset == other.asset;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user