import 'package:dio/dio.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:smart_attendance_app/data/api/dio_client.dart'; import 'package:smart_attendance_app/domain/models/user.dart'; final authApiProvider = Provider((ref) { return AuthApi(ref.read(dioProvider)); }); class AuthApi { final Dio _dio; const AuthApi(this._dio); Future login(String email, String password, {String? deviceUuid}) async { final response = await _dio.post>( '/auth/login', data: { 'email': email, 'password': password, if (deviceUuid != null) 'device_uuid': deviceUuid, }, ); return TokenResponse.fromJson(response.data!); } Future getProfile() async { final response = await _dio.get>('/auth/me'); return UserProfile.fromJson(response.data!); } Future logout() async { await _dio.post('/auth/logout'); } }