Collection:move use named params

This commit is contained in:
Neeraj Gupta 2024-02-22 16:25:24 +05:30
parent 21c733b812
commit dac1847ffd
4 changed files with 25 additions and 17 deletions

View file

@ -1372,10 +1372,10 @@ class CollectionsService {
}
Future<void> move(
int toCollectionID,
int fromCollectionID,
List<EnteFile> files,
) async {
List<EnteFile> files, {
required int toCollectionID,
required int fromCollectionID,
}) async {
_validateMoveRequest(toCollectionID, fromCollectionID, files);
files.removeWhere((element) => element.uploadedFileID == null);
if (files.isEmpty) {

View file

@ -57,21 +57,25 @@ extension HiddenService on CollectionsService {
Future<Collection> clubAllDefaultHiddenToOne(
List<Collection> allDefaultHidden,
) async {
final Collection result = allDefaultHidden.first;
for (Collection defaultHidden in allDefaultHidden) {
// select first collection as default hidden where all files will be clubbed
final Collection defaultHidden = allDefaultHidden.first;
for (Collection hidden in allDefaultHidden) {
try {
if (defaultHidden.id == result.id) {
if (hidden.id == defaultHidden.id) {
continue;
}
final filesInCollection = (await FilesDB.instance.getFilesInCollection(
defaultHidden.id,
hidden.id,
galleryLoadStartTime,
galleryLoadEndTime,
))
.files;
await move(result.id, defaultHidden.id, filesInCollection);
await CollectionsService.instance.trashEmptyCollection(defaultHidden);
await move(
filesInCollection,
toCollectionID: defaultHidden.id,
fromCollectionID: hidden.id,
);
await CollectionsService.instance.trashEmptyCollection(hidden);
} catch (e, s) {
_logger.severe(
"One iteration of clubbing all default hidden failed",
@ -82,7 +86,7 @@ extension HiddenService on CollectionsService {
}
}
return result;
return defaultHidden;
}
// getUncategorizedCollection will return the uncategorized collection
@ -137,7 +141,11 @@ extension HiddenService on CollectionsService {
_logger.finest('file already part of hidden collection');
continue;
}
await move(defaultHiddenCollection.id, entry.key, entry.value);
await move(
entry.value,
toCollectionID: defaultHiddenCollection.id,
fromCollectionID: entry.key,
);
}
Bus.instance.fire(
LocalPhotosUpdatedEvent(

View file

@ -558,9 +558,9 @@ class CollectionActions {
);
} else {
await collectionsService.move(
entry.key,
collection.id,
entry.value,
toCollectionID: entry.key,
fromCollectionID: collection.id,
);
}
}

View file

@ -398,9 +398,9 @@ class AlbumVerticalListWidget extends StatelessWidget {
try {
final int fromCollectionID = selectedFiles!.files.first.collectionID!;
await CollectionsService.instance.move(
toCollectionID,
fromCollectionID,
selectedFiles!.files.toList(),
toCollectionID: toCollectionID,
fromCollectionID: fromCollectionID,
);
await dialog.hide();
unawaited(RemoteSyncService.instance.sync(silently: true));