Yimaru-Mobile/StudioProjects/yimaru_app/lib/services/authentication_service.dart

33 lines
1.0 KiB
Dart

import 'package:yimaru_app/app/app.locator.dart';
import 'package:yimaru_app/models/user_model.dart';
import 'package:yimaru_app/services/secure_storage_service.dart';
class AuthenticationService {
final _secureService = locator<SecureStorageService>();
Future<bool> userLoggedIn() async {
if (await _secureService.getString('userId') != null) {
return true;
}
return false;
}
Future<void> saveUserData(Map<String, dynamic> data) async {
await _secureService.setInt('userId', data['userId']);
await _secureService.setString('accessToken', data['accessToken']);
await _secureService.setString('refreshToken', data['refreshToken']);
}
Future<UserModel> getUser() async {
UserModel user = UserModel(
userId: await _secureService.getInt('userId'),
accessToken: await _secureService.getString('accessToken'),
refreshToken: await _secureService.getString('refreshToken'));
return user;
}
Future<void> logOut() async {
await _secureService.clear();
}
}