39 lines
858 B
Dart
39 lines
858 B
Dart
class UserResponse {
|
|
final String id;
|
|
final String username;
|
|
final String? avatarUrl;
|
|
final String? bio;
|
|
|
|
const UserResponse({
|
|
required this.id,
|
|
required this.username,
|
|
this.avatarUrl,
|
|
this.bio,
|
|
});
|
|
|
|
factory UserResponse.fromJson(Map<String, dynamic> json) {
|
|
return UserResponse(
|
|
id: json['id'] as String,
|
|
username: json['username'] as String,
|
|
avatarUrl: json['avatar_url'] as String?,
|
|
bio: json['bio'] as String?,
|
|
);
|
|
}
|
|
}
|
|
|
|
class UserUpdateRequest {
|
|
final String? username;
|
|
final String? avatarUrl;
|
|
final String? bio;
|
|
|
|
const UserUpdateRequest({this.username, this.avatarUrl, this.bio});
|
|
|
|
Map<String, dynamic> toJson() {
|
|
return {
|
|
if (username != null) 'username': username,
|
|
if (avatarUrl != null) 'avatar_url': avatarUrl,
|
|
if (bio != null) 'bio': bio,
|
|
};
|
|
}
|
|
}
|