/// Use Case: Changer le mot de passe library change_password; import 'package:injectable/injectable.dart'; import '../repositories/profile_repository.dart'; /// Change le mot de passe de l'utilisateur via Keycloak /// Endpoint: POST /api/auth/change-password @injectable class ChangePassword { final IProfileRepository _repository; ChangePassword(this._repository); /// Exécute le use case /// [id] : Identifiant du membre /// [oldPassword] : Ancien mot de passe (validation) /// [newPassword] : Nouveau mot de passe /// Lève une exception si l'ancien mot de passe est incorrect Future call(String id, String oldPassword, String newPassword) async { return _repository.changePassword(id, oldPassword, newPassword); } }