2025-03-25 22:01:16 +05:30
|
|
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
2024-06-05 12:08:44 -04:00
|
|
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
|
|
|
|
import 'package:shelfsdk/audiobookshelf_api.dart';
|
2024-08-23 04:21:46 -04:00
|
|
|
import 'package:vaani/api/api_provider.dart';
|
|
|
|
|
import 'package:vaani/settings/api_settings_provider.dart';
|
2024-06-05 12:08:44 -04:00
|
|
|
|
|
|
|
|
part 'search_result_provider.g.dart';
|
|
|
|
|
|
|
|
|
|
/// The provider for the search result.
|
|
|
|
|
@riverpod
|
|
|
|
|
FutureOr<LibrarySearchResponse?> searchResult(
|
2025-03-25 22:01:16 +05:30
|
|
|
Ref ref,
|
2024-06-05 12:08:44 -04:00
|
|
|
String query, {
|
|
|
|
|
int limit = 25,
|
|
|
|
|
}) async {
|
|
|
|
|
final api = ref.watch(authenticatedApiProvider);
|
|
|
|
|
final apiSettings = ref.watch(apiSettingsProvider);
|
|
|
|
|
|
|
|
|
|
return await api.libraries.search(
|
|
|
|
|
libraryId: apiSettings.activeLibraryId!,
|
|
|
|
|
query: query,
|
|
|
|
|
limit: limit,
|
|
|
|
|
);
|
|
|
|
|
}
|