1
0
mirror of https://github.com/immich-app/immich.git synced 2025-08-08 23:07:06 +02:00

fix(mobile): search page (#13833)

* fix(mobile): search page minor problems

* fix: flashing between search

* restore search size

* remove print statement

* linting
This commit is contained in:
Alex
2024-10-30 14:27:13 -05:00
committed by GitHub
parent 9d75c5b999
commit 318ab756cb
5 changed files with 141 additions and 111 deletions

View File

@ -1,8 +1,10 @@
import 'package:flutter/material.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:immich_mobile/extensions/string_extensions.dart';
import 'package:immich_mobile/interfaces/asset.interface.dart';
import 'package:immich_mobile/models/search/search_filter.model.dart';
import 'package:immich_mobile/entities/asset.entity.dart';
import 'package:immich_mobile/models/search/search_result.model.dart';
import 'package:immich_mobile/providers/api.provider.dart';
import 'package:immich_mobile/repositories/asset.repository.dart';
import 'package:immich_mobile/services/api.service.dart';
@ -44,7 +46,7 @@ class SearchService {
}
}
Future<List<Asset>?> search(SearchFilter filter, int page) async {
Future<SearchResult?> search(SearchFilter filter, int page) async {
try {
SearchResponseDto? response;
AssetTypeEnum? type;
@ -103,8 +105,12 @@ class SearchService {
return null;
}
return _assetRepository
.getAllByRemoteId(response.assets.items.map((e) => e.id));
return SearchResult(
assets: await _assetRepository.getAllByRemoteId(
response.assets.items.map((e) => e.id),
),
nextPage: response.assets.nextPage?.toInt(),
);
} catch (error, stackTrace) {
_log.severe("Failed to search for assets", error, stackTrace);
}