import 'package:hive_flutter/hive_flutter.dart'; import 'package:geosector_app/core/data/models/user_model.dart'; import 'package:geosector_app/core/data/models/amicale_model.dart'; import 'package:geosector_app/core/data/models/client_model.dart'; import 'package:geosector_app/core/data/models/operation_model.dart'; import 'package:geosector_app/core/data/models/sector_model.dart'; import 'package:geosector_app/core/data/models/passage_model.dart'; import 'package:geosector_app/core/data/models/membre_model.dart'; import 'package:geosector_app/core/data/models/user_sector_model.dart'; import 'package:geosector_app/core/data/models/region_model.dart'; import 'package:geosector_app/core/data/models/pending_request.dart'; import 'package:geosector_app/chat/models/room.dart'; import 'package:geosector_app/chat/models/message.dart'; class HiveAdapters { /// Enregistre tous les TypeAdapters nécessaires static void registerAll() { // Modèles principaux if (!Hive.isAdapterRegistered(0)) { Hive.registerAdapter(UserModelAdapter()); } if (!Hive.isAdapterRegistered(1)) { Hive.registerAdapter(OperationModelAdapter()); } if (!Hive.isAdapterRegistered(3)) { Hive.registerAdapter(SectorModelAdapter()); } if (!Hive.isAdapterRegistered(4)) { Hive.registerAdapter(PassageModelAdapter()); } if (!Hive.isAdapterRegistered(5)) { Hive.registerAdapter(MembreModelAdapter()); } if (!Hive.isAdapterRegistered(6)) { Hive.registerAdapter(UserSectorModelAdapter()); } if (!Hive.isAdapterRegistered(7)) { Hive.registerAdapter(RegionModelAdapter()); } if (!Hive.isAdapterRegistered(10)) { Hive.registerAdapter(ClientModelAdapter()); } if (!Hive.isAdapterRegistered(11)) { Hive.registerAdapter(AmicaleModelAdapter()); } // Chat adapters - TypeIds 50-51 if (!Hive.isAdapterRegistered(50)) { Hive.registerAdapter(RoomAdapter()); } if (!Hive.isAdapterRegistered(51)) { Hive.registerAdapter(MessageAdapter()); } // Queue offline adapter - TypeId 100 if (!Hive.isAdapterRegistered(100)) { Hive.registerAdapter(PendingRequestAdapter()); } } }