CoffeeAuthRequest<T extends CoffeeModel> class

CoffeeAuthRequest handles authentication-related HTTP requests.

This class provides methods to perform sign-in, password change, and user data retrieval operations using HTTP requests.

Example:

final authRequest = CoffeeAuthRequest(
  baseEndpoint: 'https://api.example.com',
  httpClient: http.Client(),
  fromJson: (json) => User.fromJson(json),
);

Constructors

CoffeeAuthRequest({required String baseEndpoint, required Client httpClient, required T fromJson(Map<String, dynamic>)})
Creates an instance of CoffeeAuthRequest.

Properties

currentUser ↔ T?
getter/setter pair
currentUserLock bool
getter/setter pair
fromJson → T Function(Map<String, dynamic>)
final
hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
social CoffeeSocialRequest
Provides a CoffeeSocialRequest instance to handle social authentication requests.
no setter

Methods

authenticateUser(String token, T user) → void
Authenticates the user by setting the JWT token and logged-in user data.
changePassword(String newPassword) Future<T>
Changes the password of the current user.
getAuthInfo() Future<T?>
Retrieves authentication information of the user.
getCurrentUser() Future<T?>
Retrieve the current logged-in user data.
getStorageValue(String key) Future
Retrieve a value from the storage, based on a key and the logged-in user.
isLoggedIn() Future<bool>
This method checks if a token exists and if the current user data is available, indicating that a user is logged in.
logout() → void
Logs out the current user.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
refreshCurrentUser() Future<T?>
Refreshes the current logged-in user data.
setStorageValue(String key, dynamic value) Future<void>
Set a value in the storage, associated with a key and the logged-in user.
setUserPropertyByPath(String propertyPath, dynamic newValue) Future<void>
Sets a property value for the current user by a given path within their JSON data.
signInWithCode(String url, String code) Future<T>
Authenticates a user using a code.
signInWithLoginPassword({required String login, required String password}) Future<T>
Authenticates a user using login and password.
toString() String
A string representation of this object.
inherited
withQueryParameter(String key, String value) CoffeeAuthRequest<T>
Chains a query parameter to the request made by the getCurrentUser method.

Operators

operator ==(Object other) bool
The equality operator.
inherited