register method
Registers a new user account.
Sends a POST /user/register request with user information.
user should contain email, password, and any additional registration fields.
Returns the created UserModel with JWT token.
Throws DioError on failure.
Implementation
Future<UserModel> register(UserModel user) async {
final response = await client.dio.post('/user/register', data: user.toRegisterJson());
return UserModel.fromJson(response.data as Map<String, dynamic>);
}