auth_service.dart 836 B

1234567891011121314151617181920212223242526272829303132333435
  1. // ignore_for_file: non_constant_identifier_names
  2. import 'package:get/get.dart';
  3. import 'package:get_storage/get_storage.dart';
  4. class AuthService extends GetxService {
  5. static AuthService get to => Get.find();
  6. final box = GetStorage();
  7. /// Mocks a login process
  8. final _token = ''.obs;
  9. String get token => box.read('token') ?? _token.value;
  10. final isLoggedIn = false.obs;
  11. bool get isLoggedInValue => box.read('auth') ?? isLoggedIn.value;
  12. void login(newToken) {
  13. isLoggedIn.value = true;
  14. _token.value = newToken;
  15. box.write('auth', true);
  16. box.write('token', newToken);
  17. }
  18. void logout(String logoutURL) {
  19. isLoggedIn.value = false;
  20. box.write('auth', false);
  21. _token.value = '';
  22. box.write('token', '');
  23. Get.offAllNamed(logoutURL);
  24. }
  25. }
  26. final authService = Get.put(AuthService());