import 'package:flutter/material.dart'; import '../services/auth_service.dart'; class AuthProvider extends ChangeNotifier { final AuthService _authService = AuthService(); bool _isLoading = false; bool get isLoading => _isLoading; Map? userData; // ================= LOGIN ================= Future login({ required String email, required String password, }) async { try { _isLoading = true; notifyListeners(); await _authService.login(email: email, password: password); userData = await _authService.getUserData(); _isLoading = false; notifyListeners(); return null; } catch (e) { _isLoading = false; notifyListeners(); return e.toString(); } } // ================= REGISTER ================= Future register({ required String name, required String email, required String password, }) async { try { _isLoading = true; notifyListeners(); await _authService.register(name: name, email: email, password: password); userData = await _authService.getUserData(); _isLoading = false; notifyListeners(); return null; } catch (e) { _isLoading = false; notifyListeners(); return e.toString(); } } // ================= LOAD USER ================= Future loadUser() async { userData = await _authService.getUserData(); notifyListeners(); } // ================= LOGOUT ================= Future logout() async { await _authService.logout(); userData = null; notifyListeners(); } }