LittlefishAuthManager class

Constructors

LittlefishAuthManager()
factory

Properties

activeBusinessCredential ↔ AuthBusinessCredential?
getter/setter pair
analyticsService → AnalyticsService
no setter
authenticationResult ↔ AuthResult?
getter/setter pair
authService → AuthService
no setter
baseSession → AuthUserSession?
The base (auth) user's session, delegated to LittlefishSessionManager. Null until first sign-in.
no setter
baseUrl String?
getter/setter pair
configService → ConfigService
no setter
core ↔ LittleFishCore
getter/setter pair
currentSession → AuthUserSession?
no setter
currentSessionToken String
no setter
defaultPinLength int
no setter
hashCode int
The hash code for this object.
no setterinherited
isAuthenticated bool
no setter
isBaseUserAdmin bool
Whether the base (Firebase-authenticated) user has admin privileges. Delegated to LittlefishSessionManager. Returns false if no base session exists yet.
no setter
isBaseUserOwner bool
Whether the base (Firebase-authenticated) user is the business owner.. Delegated to LittlefishSessionManager. Returns false if no base session exists yet.
no setter
isReady bool
no setter
linkedBusinessCredentials List<AuthBusinessCredential>
no setter
logger → LoggerService
no setter
microUrl String?
getter/setter pair
monitoringService → MonitoringService<dynamic, MonitoringHttpMetric, MonitoringTrace>
no setter
pinService PinService
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
secureStorageClient ↔ SecureStorageClient<SecureStorageSettings>?
getter/setter pair
sessionManager LittlefishSessionManager
no setter
sessionTokensEnabled bool
Whether session tokens are enabled via LaunchDarkly. When disabled, session creation is skipped and no session token is attached to HTTP requests.
no setter
settings → AuthSettings
no setter
user → AuthUser?
no setter

Methods

authenticateBusinessCredentials() Future<bool>
authStateChanges() Stream<AuthUser?>
Stream for listening to auth user changes
getActiveSessions() List<AuthUserSession>
Returns all in-memory sessions. Delegates to LittlefishSessionManager.
getBusinessRoles() Future<List<AuthBusinessRoleDto>>
getBusinessRolesAsBaseUser() Future<List<AuthBusinessRoleDto>>
Fetches business roles using the base (admin) user's session token.
getBusinessUsers() Future<List<BusinessUser>>
getBusinessUsersAsBaseUser() Future<List<BusinessUser>>
Fetches business users using the base (admin) user's session token.
getUserRoles() Future<List<AuthUserRoleDto>>
getUserRolesAsBaseUser() Future<List<AuthUserRoleDto>>
Fetches user roles using the base (admin) user's session token.
getUserToken() Future<String?>
initialise({required String baseUrl}) Future<void>
isPinSet({required String businessId, required String userId}) Future<PinStatusResponse>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
rehydrateSessionIfNeeded() Future<void>
Rehydrates AuthUser.session from sessionManager.activeSession when the user is authenticated but session was lost (warm restore).
requestPinOtp({required String userId}) Future<OtpRequestResult>
Requests an OTP for admin PIN reset (delegated to PinService.requestPinOtp).
resetUserPin({required String newPin, required String businessId, required String userId}) Future<ResetPinResult>
sendEmailVerification({required String email}) Future<bool>
sendPasswordResetEmail({required String email}) Future<bool>
sendSignInLinkToEmail({required String email}) Future<bool>
sessionStateChanges() Stream<AuthUserSession?>
Stream for listening to active session changes
setUserPin({required String newPin, required String businessId, required String userId}) Future<CreatePinResult>
signInWithApple() Future<AuthUser>
signInWithCustomToken({required String token}) Future<AuthUser>
signInWithEmailAndPassword({required String email, required String password, String? merchantId, String? pin}) Future<AuthUser>
signInWithFacebook() Future<AuthUser>
signInWithGithub() Future<AuthUser>
signInWithGoogle() Future<AuthUser>
signInWithMicrosoft() Future<AuthUser>
signInWithOAuthProvider({required String providerId, required String providerToken}) Future<AuthUser>
signInWithPhoneNumber({required String phoneNumber, required String password, String? pin}) Future<AuthUser>
signInWithRedirect({required String providerId}) Future<AuthUser>
signInWithTwitter() Future<AuthUser>
signInWithYahoo() Future<AuthUser>
signOut({String? mid}) Future<bool>
signUpWithEmailAndPassword({required String email, required String password, String? merchantId, bool createSession = false}) Future<AuthUser>
Creates a new user via the underlying auth provider.
switchUser({required String userId, String? merchantId, String? businessId, bool refresh = false, bool setBaseSession = false, String? pin}) Future<AuthUserSession>
Switches the current user session. Used to switch users without a full sign-out/sign-in flow. Fetches or creates a session for the target userId and sets it as active. If refresh is true, all existing sessions for the user will be deleted before creating a new one. merchantId and businessId can be provided to scope the session to a specific context. Requires session tokens to be enabled. pin Optional PIN for session creation when PIN verification is required.
toString() String
A string representation of this object.
inherited
updateUserPin({required String currentPin, required String newPin, required String businessId, required String userId}) Future<ChangePinResult>
validateCachedLogin() Future<bool>
verifyPasswordResetCode({required String code}) Future<bool>
verifyPinOtp({required String userId, required String otpCode}) Future<OtpVerifyResult>
Verifies an OTP code for admin PIN reset (delegated to PinService.verifyPinOtp).
verifyUsernamePassword({required String username, required String password}) Future<bool>
verifyUserPin({required String pin, required String businessId, required String userId}) Future<VerifyPinResult>

Operators

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

Static Properties

instance LittlefishAuthManager
final