1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30import 'package:algoliasearch/algoliasearch_lite.dart';
import '../env/env.dart';
import '../models/search_result.dart';
class AlgoliaSearch {
AlgoliaSearch._();
static final SearchClient _client = SearchClient(
appId: Env.algoliaApplicationId,
apiKey: Env.algoliaSearchOnlyApiKey,
);
static Future<SearchResponse> query(String queryString, {String? version}) =>
_client.searchIndex(
request: SearchForHits(
indexName: Env.algoliaSearchIndex,
query: queryString,
facetFilters: ['version:${version ?? Env.supportedVersions.last}'],
attributesToRetrieve: SearchResult.attributesToRetrieve,
attributesToSnippet: SearchResult.attributesToSnippet,
snippetEllipsisText: SearchResult.snippetEllipsisText,
page: 0,
hitsPerPage: 20,
),
);
static dispose() => _client.dispose();
}