/// Use Case: Mettre à jour le profil utilisateur
library update_profile;

import 'package:injectable/injectable.dart';
import '../../../members/data/models/membre_complete_model.dart';
import '../repositories/profile_repository.dart';

/// Met à jour les informations du profil utilisateur
@injectable
class UpdateProfile {
  final IProfileRepository _repository;

  UpdateProfile(this._repository);

  /// Exécute le use case
  /// [id] : Identifiant du membre
  /// [membre] : Modèle avec les données mises à jour
  /// Retourne le profil mis à jour
  Future<MembreCompletModel> call(String id, MembreCompletModel membre) async {
    return _repository.updateProfile(id, membre);
  }
}
