import 'package:flutter_secure_storage/flutter_secure_storage.dart'; /// Classe pour gérer le stockage sécurisé dans l'application. /// Utilise FlutterSecureStorage pour stocker, lire et supprimer des données sensibles. class SecureStorage { // Instance de FlutterSecureStorage pour gérer le stockage sécurisé final FlutterSecureStorage _storage = const FlutterSecureStorage(); /// Écrit une valeur dans le stockage sécurisé avec la clé spécifiée. Future write(String key, String value) async { print("Écriture dans le stockage sécurisé : clé = $key, valeur = $value"); await _storage.write(key: key, value: value); print("Écriture réussie pour la clé : $key"); } /// Lit une valeur depuis le stockage sécurisé en fonction de la clé spécifiée. Future read(String key) async { print("Lecture dans le stockage sécurisé pour la clé : $key"); final value = await _storage.read(key: key); print("Valeur lue pour la clé $key : $value"); return value; } /// Supprime une entrée dans le stockage sécurisé pour la clé spécifiée. Future delete(String key) async { print("Suppression dans le stockage sécurisé pour la clé : $key"); await _storage.delete(key: key); print("Suppression réussie pour la clé : $key"); } /// Sauvegarde l'identifiant utilisateur dans le stockage sécurisé. Future saveUserId(String userId) async { print("Sauvegarde de l'userId dans le stockage sécurisé : $userId"); await write('user_id', userId); print("Sauvegarde réussie de l'userId."); } /// Récupère l'identifiant utilisateur depuis le stockage sécurisé. Future getUserId() async { print("Récupération de l'userId depuis le stockage sécurisé."); return await read('user_id'); } /// Sauvegarde le nom d'utilisateur dans le stockage sécurisé. Future saveUserName(String userName) async { print("Sauvegarde du userName dans le stockage sécurisé : $userName"); await write('user_name', userName); print("Sauvegarde réussie du userName."); } /// Récupère le nom d'utilisateur depuis le stockage sécurisé. Future getUserName() async { print("Récupération du userName depuis le stockage sécurisé."); return await read('user_name'); } /// Sauvegarde le prénom de l'utilisateur dans le stockage sécurisé. Future saveUserLastName(String userLastName) async { print("Sauvegarde du userLastName dans le stockage sécurisé : $userLastName"); await write('user_last_name', userLastName); print("Sauvegarde réussie du userLastName."); } /// Récupère le prénom de l'utilisateur depuis le stockage sécurisé. Future getUserLastName() async { print("Récupération du userLastName depuis le stockage sécurisé."); return await read('user_last_name'); } /// Supprime toutes les informations utilisateur du stockage sécurisé. Future deleteUserInfo() async { print("Suppression des informations utilisateur (userId, userName, userLastName)."); await delete('user_id'); await delete('user_name'); await delete('user_last_name'); print("Suppression réussie des informations utilisateur."); } }