queryArtists method
Query artist information
Implementation
Future<List<Map<String, dynamic>>> queryArtists(
{QueryOptions? options}) async {
try {
// Check permissions first
final permissionResult =
await _checkPermissionsUseCase.call(MediaType.audio);
if (!permissionResult.isGranted) {
throw MediaErrorFactory.permissionDenied(
missingPermissions: permissionResult.missingPermissions ?? [],
status: permissionResult.status,
message: 'Audio permissions not granted: ${permissionResult.message}',
);
}
return await _repository.queryArtists(options: options);
} catch (e) {
if (e is MediaError) {
rethrow;
}
throw MediaErrorFactory.queryError(
queryType: 'artist',
message: 'Failed to query artists: ${e.toString()}',
);
}
}