import 'dart:convert'; import 'package:comunic/models/login_tokens.dart'; import 'package:shared_preferences/shared_preferences.dart'; /// Accounts credentials helper /// /// Stores current account tokens /// /// @author Pierre HUBERT class AccountCredentialsHelper { /// Checkout whether current user is signed in or not Future signedIn() async { return await get() != null; } /// Set new login tokens Future set(LoginTokens tokens) async { SharedPreferences prefs = await SharedPreferences.getInstance(); await prefs.setString( "login_tokens", tokens == null ? "null" : tokens.toString()); } /// Get current [LoginTokens]. Returns null if none or in case of failure Future get() async { try { SharedPreferences prefs = await SharedPreferences.getInstance(); final string = prefs.getString("login_tokens"); if (string == null || string == "null") return null; return LoginTokens.fromJSON(jsonDecode(string)); } on Exception catch (e) { print(e.toString()); return null; } } }