import "../models/materiel_item.dart";
import "api_client.dart";

/// Appels liés au catalogue matériel.
class MaterielService {
  MaterielService._();

  /// Récupère le catalogue (matériels disponibles du campus de l'utilisateur).
  static Future<List<MaterielItem>> getCatalogue() async {
    final reponse = await ApiClient.get("/materiels");
    final data = (reponse as Map<String, dynamic>)["data"] as List<dynamic>;
    return data.map((json) => MaterielItem.fromJson(json as Map<String, dynamic>)).toList();
  }

  /// Récupère le détail d'un matériel, notamment les accessoires du kit.
  static Future<MaterielItem> getDetail(int id) async {
    final reponse = await ApiClient.get("/materiels/$id");
    final data = (reponse as Map<String, dynamic>)["data"] as Map<String, dynamic>;
    return MaterielItem.fromJson(data);
  }
}
