Files
social-app/apps/lib/features/users/data/users_api.dart
T

29 lines
842 B
Dart
Raw Normal View History

import 'package:social_app/core/api/api_client.dart';
import 'models/user_response.dart';
class UsersApi {
final ApiClient _client;
static const _prefix = '/api/v1/users';
UsersApi(this._client);
Future<UserResponse> getMe() async {
final response = await _client.get('$_prefix/me');
return UserResponse.fromJson(response.data);
}
Future<UserResponse> updateMe(UserUpdateRequest request) async {
final response = await _client.patch('$_prefix/me', data: request.toJson());
return UserResponse.fromJson(response.data);
}
Future<List<UserResponse>> searchUsers(String query) async {
final response = await _client.post(
'$_prefix/search',
data: {'query': query},
);
final List<dynamic> data = response.data;
return data.map((json) => UserResponse.fromJson(json)).toList();
}
}