diff --git a/mobile/lib/services/search_service.dart b/mobile/lib/services/search_service.dart index e55684ed9b..50dcc1f0c7 100644 --- a/mobile/lib/services/search_service.dart +++ b/mobile/lib/services/search_service.dart @@ -1,4 +1,3 @@ -import "dart:convert"; import "dart:math"; import "package:flutter/cupertino.dart"; @@ -33,13 +32,14 @@ import "package:photos/services/location_service.dart"; import "package:photos/services/machine_learning/face_ml/face_filtering/face_filtering_constants.dart"; import "package:photos/services/machine_learning/face_ml/person/person_service.dart"; import 'package:photos/services/machine_learning/semantic_search/semantic_search_service.dart'; -import "package:photos/services/remote_assets_service.dart"; +import "package:photos/services/magic_cache_service.dart"; import "package:photos/states/location_screen_state.dart"; import "package:photos/ui/viewer/location/add_location_sheet.dart"; import "package:photos/ui/viewer/location/location_screen.dart"; import "package:photos/ui/viewer/people/cluster_page.dart"; import "package:photos/ui/viewer/people/people_page.dart"; import 'package:photos/utils/date_time_util.dart'; +import "package:photos/utils/local_settings.dart"; import "package:photos/utils/navigation_util.dart"; import 'package:tuple/tuple.dart'; @@ -49,9 +49,9 @@ class SearchService { final _logger = Logger((SearchService).toString()); final _collectionService = CollectionsService.instance; static const _maximumResultsLimit = 20; - static const _kMagicPromptsDataUrl = "https://discover.ente.io/v1.json"; + // static const _kMagicPromptsDataUrl = "https://discover.ente.io/v1.json"; - var magicPromptsData = []; + // var magicPromptsData = []; SearchService._privateConstructor(); @@ -64,17 +64,17 @@ class SearchService { _cachedHiddenFilesFuture = null; }); if (flagService.internalUser) { - _loadMagicPrompts(); + // _loadMagicPrompts(); } } - Future _loadMagicPrompts() async { - final file = await RemoteAssetsService.instance - .getAsset(_kMagicPromptsDataUrl, refetch: true); + // Future _loadMagicPrompts() async { + // final file = await RemoteAssetsService.instance + // .getAsset(_kMagicPromptsDataUrl, refetch: true); - final json = jsonDecode(await file.readAsString()); - magicPromptsData = json["prompts"]; - } + // final json = jsonDecode(await file.readAsString()); + // magicPromptsData = json["prompts"]; + // } Set ignoreCollections() { return CollectionsService.instance.getHiddenCollectionIds(); @@ -192,26 +192,12 @@ class SearchService { } Future> getMagicSectionResutls() async { - if (!SemanticSearchService.instance.isMagicSearchEnabledAndReady()) { + if (LocalSettings.instance.hasEnabledMagicSearch() && + flagService.internalUser) { + return MagicCacheService.instance.getMagicGenericSearchResult(); + } else { return []; } - final searchResuts = []; - for (Map magicPrompt in magicPromptsData) { - final files = await SemanticSearchService.instance.getMatchingFiles( - magicPrompt["prompt"], - scoreThreshold: magicPrompt["minimumScore"], - ); - if (files.isNotEmpty) { - searchResuts.add( - GenericSearchResult( - ResultType.magic, - magicPrompt["title"], - files, - ), - ); - } - } - return searchResuts; } Future> getRandomMomentsSearchResults(