mirror of
https://github.com/immich-app/immich.git
synced 2024-12-21 01:39:59 +02:00
22 lines
640 B
Dart
22 lines
640 B
Dart
|
import 'dart:convert';
|
||
|
|
||
|
import 'package:auto_route/auto_route.dart';
|
||
|
import 'package:immich_mobile/shared/services/network.service.dart';
|
||
|
|
||
|
class AuthGuard extends AutoRouteGuard {
|
||
|
final NetworkService _networkService = NetworkService();
|
||
|
|
||
|
@override
|
||
|
void onNavigation(NavigationResolver resolver, StackRouter router) async {
|
||
|
try {
|
||
|
var res = await _networkService.postRequest(url: 'auth/validateToken');
|
||
|
var jsonReponse = jsonDecode(res.toString());
|
||
|
if (jsonReponse['authStatus']) {
|
||
|
resolver.next(true);
|
||
|
}
|
||
|
} catch (e) {
|
||
|
router.removeUntil((route) => route.name == "LoginRoute");
|
||
|
}
|
||
|
}
|
||
|
}
|