diff --git a/apps/lib/features/users/data/users_api.dart b/apps/lib/features/users/data/users_api.dart index 0d5cf50..414fd52 100644 --- a/apps/lib/features/users/data/users_api.dart +++ b/apps/lib/features/users/data/users_api.dart @@ -1,12 +1,33 @@ import 'package:social_app/core/api/i_api_client.dart'; import 'models/user_response.dart'; +class UserBasicInfo { + final String id; + final String username; + final String? avatarUrl; + + UserBasicInfo({required this.id, required this.username, this.avatarUrl}); + + factory UserBasicInfo.fromJson(Map json) { + return UserBasicInfo( + id: json['id'] as String, + username: json['username'] as String, + avatarUrl: json['avatar_url'] as String?, + ); + } +} + class UsersApi { final IApiClient _client; static const _prefix = '/api/v1/users'; UsersApi(this._client); + Future getById(String userId) async { + final response = await _client.get('$_prefix/$userId'); + return UserBasicInfo.fromJson(response.data); + } + Future getMe() async { final response = await _client.get('$_prefix/me'); return UserResponse.fromJson(response.data);