import '../../marianumconnect_query.dart'; import 'user_search_response.dart'; /// Searches active users (students, teachers, staff) via the MarianumConnect /// mobile API. Returns each match's Nextcloud username plus role, so the Talk /// search can start a direct chat and label results without hitting Nextcloud. class UserSearch extends MarianumConnectQuery { UserSearch({super.dio}); Future run(String query) => guard(() async { final response = await dio.get>( endpoint('users/search'), queryParameters: {'q': query}, ); final list = response.data! .map((e) => McUserSearchResult.fromJson(e as Map)) .toList(); return UserSearchResponse(result: list); }); }