Files
rasadyar_application/lib/infrastructure/service/auth_service.dart

34 lines
1.0 KiB
Dart
Raw Normal View History

import 'package:rasadyar_app/presentation/routes/app_pages.dart';
import 'package:rasadyar_auth/data/models/local/module/module_model.dart';
2025-05-17 17:07:44 +03:30
import 'package:rasadyar_auth/data/services/token_storage_service.dart';
import 'package:rasadyar_core/core.dart';
2025-05-18 09:32:43 +03:30
import 'package:rasadyar_inspection/inspection.dart';
import 'package:rasadyar_livestock/presentation/routes/app_pages.dart';
2025-05-17 17:07:44 +03:30
class AuthService extends GetxService {
2025-05-18 09:32:43 +03:30
var tokenService = Get.find<TokenStorageService>();
2025-05-17 17:07:44 +03:30
RxBool accessRes = false.obs;
RxBool refAccessRes = false.obs;
2025-05-18 09:57:10 +03:30
2025-05-17 17:07:44 +03:30
@override
void onInit() {
super.onInit();
ever(tokenService.accessToken, (callback) {
accessRes.value = (callback != null);
});
ever(tokenService.refreshToken, (callback) {
refAccessRes.value = (callback != null);
});
everAll([accessRes, refAccessRes], (_) {
if (accessRes.value && refAccessRes.value) {
var targetPage = getTargetPage(tokenService.appModule.value);
Get.offAllNamed(targetPage);
2025-05-17 17:07:44 +03:30
}
});
}
2025-05-17 17:07:44 +03:30
}