build method
Implementation
@override
Future<AuthState> build() async {
final client = ref.read(prodobitClientProvider);
// Initialize the auth service
await client.auth.initialize();
// Check if user is already authenticated
final isAuth = await client.auth.isAuthenticated();
if (isAuth) {
try {
final user = await client.auth.getCurrentUser();
final tenantId = client.auth.getCurrentTenantId();
return AuthState.authenticated(user, tenantId);
} on Exception {
// Token might be invalid, clear auth
await client.auth.logout();
}
}
return const AuthState.unauthenticated();
}