File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Flutter CI
2+
3+ on :
4+ push :
5+ branches : [main]
6+ pull_request :
7+ branches : [main]
8+
9+ jobs :
10+ verify :
11+ runs-on : ubuntu-latest
12+ steps :
13+ - name : Check out repository
14+ uses : actions/checkout@v4
15+
16+ - name : Set up Flutter
17+ uses : subosito/flutter-action@v2
18+ with :
19+ channel : stable
20+ cache : true
21+
22+ - name : Install dependencies
23+ run : flutter pub get
24+
25+ - name : Analyze
26+ run : flutter analyze
27+
28+ - name : Test
29+ run : flutter test
Original file line number Diff line number Diff line change @@ -17,4 +17,8 @@ class SecureStorageService {
1717 Future <String ?> read ({required String key}) async {
1818 return await _storage.read (key: key);
1919 }
20+
21+ Future <void > delete ({required String key}) async {
22+ await _storage.delete (key: key);
23+ }
2024}
Original file line number Diff line number Diff line change @@ -38,6 +38,10 @@ class AuthRemoteDatasource {
3838 }
3939 }
4040
41+ Future <void > logout () async {
42+ await client.service.delete (key: 'token' );
43+ }
44+
4145 Future <String > register (RegisterRequest request) async {
4246 final response = await client.post (
4347 Uri .parse (ApiEndpoints .register),
Original file line number Diff line number Diff line change @@ -16,7 +16,7 @@ class AuthRepositoryImpl implements AuthRepository {
1616
1717 @override
1818 Future <void > logout () {
19- throw UnimplementedError ();
19+ return remoteDatasource. logout ();
2020 }
2121
2222 @override
Original file line number Diff line number Diff line change @@ -56,6 +56,7 @@ class AuthProvider extends ChangeNotifier {
5656
5757 Future <void > login (LoginRequest request) async {
5858 _loginError = null ;
59+ _currentUserError = null ;
5960 try {
6061 _isLoggingIn = true ;
6162 notifyListeners ();
@@ -70,6 +71,7 @@ class AuthProvider extends ChangeNotifier {
7071
7172 Future <void > register (RegisterRequest request) async {
7273 _registerError = null ;
74+ _currentUserError = null ;
7375 try {
7476 _isRegistering = true ;
7577 notifyListeners ();
@@ -98,6 +100,14 @@ class AuthProvider extends ChangeNotifier {
98100
99101 Future <void > getCurrentUser () async {
100102 _currentUserError = null ;
103+ final token = await SecureStorageService ().read (key: 'token' );
104+ if (token == null || token.isEmpty) {
105+ _currentUser = null ;
106+ _isLoading = false ;
107+ notifyListeners ();
108+ return ;
109+ }
110+
101111 try {
102112 _isLoading = true ;
103113 notifyListeners ();
You can’t perform that action at this time.
0 commit comments